{"version":3,"file":"main.770f2cef8b794e1b.js","mappings":"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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;;;;;;;;;AC19IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA","sources":["./src/AppPreBootstrap.ts","./src/account/auth/zero-refresh-token.service.ts","./src/app/admin/users/impersonation.service.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/shared/app-shared.module.ts","./src/app/shared/common/app-common.module.ts","./src/app/shared/common/auth/app-auth.service.ts","./src/app/shared/common/auth/auth-route-guard.ts","./src/app/shared/common/entityHistory/entity-change-detail-modal.component.ts","./src/app/shared/common/entityHistory/entity-change-detail-modal.component.html","./src/app/shared/common/entityHistory/entity-type-history-modal.component.ts","./src/app/shared/common/entityHistory/entity-type-history-modal.component.html","./src/app/shared/common/input-types/InputTypeConsts.ts","./src/app/shared/common/input-types/checkbox-input-type/checkbox-input-type.component.ts","./src/app/shared/common/input-types/checkbox-input-type/checkbox-input-type.component.html","./src/app/shared/common/input-types/combobox-input-type/combobox-input-type.component.ts","./src/app/shared/common/input-types/combobox-input-type/combobox-input-type.component.html","./src/app/shared/common/input-types/input-type-component-base.ts","./src/app/shared/common/input-types/multiple-select-combobox-input-type/multiple-select-combobox-input-type.component.ts","./src/app/shared/common/input-types/multiple-select-combobox-input-type/multiple-select-combobox-input-type.component.html","./src/app/shared/common/input-types/multiselect-combobox/filter-check-list-item-filter-pipe.ts","./src/app/shared/common/input-types/multiselect-combobox/multiselect-combobox.component.ts","./src/app/shared/common/input-types/multiselect-combobox/multiselect-combobox.component.html","./src/app/shared/common/input-types/multiselect-combobox/outside-click.directive.ts","./src/app/shared/common/input-types/select-combobox/select-combobox.component.ts","./src/app/shared/common/input-types/select-combobox/select-combobox.component.html","./src/app/shared/common/input-types/single-line-string-input-type/single-line-string-input-type.component.ts","./src/app/shared/common/input-types/single-line-string-input-type/single-line-string-input-type.component.html","./src/app/shared/common/key-value-list-manager/key-value-list-manager.component.ts","./src/app/shared/common/key-value-list-manager/key-value-list-manager.component.html","./src/app/shared/common/localization/app-localization.service.ts","./src/app/shared/common/lookup/common-lookup-modal.component.ts","./src/app/shared/common/lookup/common-lookup-modal.component.html","./src/app/shared/common/password-input-with-show-button/password-input-with-show-button.component.ts","./src/app/shared/common/password-input-with-show-button/password-input-with-show-button.component.html","./src/app/shared/common/pipes/order-by-pipe.ts","./src/app/shared/common/pipes/shipment-status-pipe.ts","./src/app/shared/common/pipes/shippability-status-pipe.ts","./src/app/shared/common/pipes/trade-class.pipe.ts","./src/app/shared/common/pipes/unit-of-measure.pipe.ts","./src/app/shared/common/session-timeout/session-timeout-modal-component.ts","./src/app/shared/common/session-timeout/session-timeout-modal.component.html","./src/app/shared/common/session-timeout/session-timeout.component.ts","./src/app/shared/common/sub-header/sub-header.component.ts","./src/app/shared/common/sub-header/sub-header.component.html","./src/app/shared/common/sub-header/subheader.module.ts","./src/app/shared/common/timing/date-helpers.ts","./src/app/shared/common/timing/date-picker-initial-value.directive.ts","./src/app/shared/common/timing/date-range-picker-initial-value.directive.ts","./src/app/shared/common/timing/date-time-helpers.ts","./src/app/shared/common/timing/date-time.service.ts","./src/app/shared/common/timing/timezone-combo.component.ts","./src/app/shared/layout/chat/ChatFriendDto.ts","./src/app/shared/layout/chat/chat-bar.component.ts","./src/app/shared/layout/chat/chat-bar.component.html","./src/app/shared/layout/chat/chat-friend-list-item.component.ts","./src/app/shared/layout/chat/chat-friend-list-item.component.html","./src/app/shared/layout/chat/chat-message.component.ts","./src/app/shared/layout/chat/chat-message.component.html","./src/app/shared/layout/chat/chat-signalr.service.ts","./src/app/shared/layout/create-new-user-delegation-modal.component.ts","./src/app/shared/layout/create-new-user-delegation-modal.component.html","./src/app/shared/layout/footer.component.ts","./src/app/shared/layout/footer.component.html","./src/app/shared/layout/header-search-input/header-search-input-data-factory.service.ts","./src/app/shared/layout/header-search-input/header-search-input.component.ts","./src/app/shared/layout/header-search-input/header-search-input.component.html","./src/app/shared/layout/link-account-modal.component.ts","./src/app/shared/layout/link-account-modal.component.html","./src/app/shared/layout/linked-account.service.ts","./src/app/shared/layout/linked-accounts-modal.component.ts","./src/app/shared/layout/linked-accounts-modal.component.html","./src/app/shared/layout/nav/app-menu-item.ts","./src/app/shared/layout/nav/app-menu.ts","./src/app/shared/layout/nav/app-navigation.service.ts","./src/app/shared/layout/nav/menu-search-bar/menu-search-bar.component.ts","./src/app/shared/layout/nav/menu-search-bar/menu-search-bar.component.html","./src/app/shared/layout/nav/side-bar-menu.component.ts","./src/app/shared/layout/nav/side-bar-menu.component.html","./src/app/shared/layout/nav/top-bar-menu.component.ts","./src/app/shared/layout/nav/top-bar-menu.component.html","./src/app/shared/layout/notifications/UserNotificationHelper.ts","./src/app/shared/layout/notifications/detail-modal/notification-detail-modal.component.ts","./src/app/shared/layout/notifications/detail-modal/notification-detail-modal.component.html","./src/app/shared/layout/notifications/header-notifications.component.ts","./src/app/shared/layout/notifications/header-notifications.component.html","./src/app/shared/layout/notifications/notification-settings-modal.component.ts","./src/app/shared/layout/notifications/notification-settings-modal.component.html","./src/app/shared/layout/notifications/notifications.component.ts","./src/app/shared/layout/notifications/notifications.component.html","./src/app/shared/layout/profile/change-password-modal.component.ts","./src/app/shared/layout/profile/change-password-modal.component.html","./src/app/shared/layout/profile/change-profile-picture-modal.component.ts","./src/app/shared/layout/profile/change-profile-picture-modal.component.html","./src/app/shared/layout/profile/change-profile-picture-modal.module.ts","./src/app/shared/layout/profile/my-settings-modal.component.ts","./src/app/shared/layout/profile/my-settings-modal.component.html","./src/app/shared/layout/profile/sms-verification-modal.component.ts","./src/app/shared/layout/profile/sms-verification-modal.component.html","./src/app/shared/layout/scroll-top.component.ts","./src/app/shared/layout/scroll-top.component.html","./src/app/shared/layout/theme-selection/theme-selection-panel.component.ts","./src/app/shared/layout/theme-selection/theme-selection-panel.component.html","./src/app/shared/layout/themes/ThemeHelper.ts","./src/app/shared/layout/themes/default/DefaultThemeAssetContributor.ts","./src/app/shared/layout/themes/default/default-brand.component.ts","./src/app/shared/layout/themes/default/default-brand.component.html","./src/app/shared/layout/themes/default/default-layout.component.ts","./src/app/shared/layout/themes/default/default-layout.component.html","./src/app/shared/layout/themes/default/default-logo.component.ts","./src/app/shared/layout/themes/default/default-logo.component.html","./src/app/shared/layout/themes/theme10/Theme10ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme10/theme10-brand.component.ts","./src/app/shared/layout/themes/theme10/theme10-brand.component.html","./src/app/shared/layout/themes/theme10/theme10-layout.component.ts","./src/app/shared/layout/themes/theme10/theme10-layout.component.html","./src/app/shared/layout/themes/theme11/Theme11ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme11/theme11-brand.component.ts","./src/app/shared/layout/themes/theme11/theme11-brand.component.html","./src/app/shared/layout/themes/theme11/theme11-layout.component.ts","./src/app/shared/layout/themes/theme11/theme11-layout.component.html","./src/app/shared/layout/themes/theme12/Theme12ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme12/theme12-brand.component.ts","./src/app/shared/layout/themes/theme12/theme12-brand.component.html","./src/app/shared/layout/themes/theme12/theme12-layout.component.ts","./src/app/shared/layout/themes/theme12/theme12-layout.component.html","./src/app/shared/layout/themes/theme13/Theme13ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme13/theme13-brand.component.ts","./src/app/shared/layout/themes/theme13/theme13-brand.component.html","./src/app/shared/layout/themes/theme13/theme13-layout.component.ts","./src/app/shared/layout/themes/theme13/theme13-layout.component.html","./src/app/shared/layout/themes/theme2/Theme2ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme2/theme2-brand.component.ts","./src/app/shared/layout/themes/theme2/theme2-brand.component.html","./src/app/shared/layout/themes/theme2/theme2-layout.component.ts","./src/app/shared/layout/themes/theme2/theme2-layout.component.html","./src/app/shared/layout/themes/theme3/Theme3ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme3/theme3-brand.component.ts","./src/app/shared/layout/themes/theme3/theme3-brand.component.html","./src/app/shared/layout/themes/theme3/theme3-layout.component.ts","./src/app/shared/layout/themes/theme3/theme3-layout.component.html","./src/app/shared/layout/themes/theme4/Theme4ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme4/theme4-brand.component.ts","./src/app/shared/layout/themes/theme4/theme4-brand.component.html","./src/app/shared/layout/themes/theme4/theme4-layout.component.ts","./src/app/shared/layout/themes/theme4/theme4-layout.component.html","./src/app/shared/layout/themes/theme5/Theme5ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme5/theme5-brand.component.ts","./src/app/shared/layout/themes/theme5/theme5-brand.component.html","./src/app/shared/layout/themes/theme5/theme5-layout.component.ts","./src/app/shared/layout/themes/theme5/theme5-layout.component.html","./src/app/shared/layout/themes/theme6/Theme6ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme6/theme6-brand.component.ts","./src/app/shared/layout/themes/theme6/theme6-brand.component.html","./src/app/shared/layout/themes/theme6/theme6-layout.component.ts","./src/app/shared/layout/themes/theme6/theme6-layout.component.html","./src/app/shared/layout/themes/theme7/Theme7ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme7/theme7-brand.component.ts","./src/app/shared/layout/themes/theme7/theme7-brand.component.html","./src/app/shared/layout/themes/theme7/theme7-layout.component.ts","./src/app/shared/layout/themes/theme7/theme7-layout.component.html","./src/app/shared/layout/themes/theme8/Theme8ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme8/theme8-brand.component.ts","./src/app/shared/layout/themes/theme8/theme8-brand.component.html","./src/app/shared/layout/themes/theme8/theme8-layout.component.ts","./src/app/shared/layout/themes/theme8/theme8-layout.component.html","./src/app/shared/layout/themes/theme9/Theme9ThemeAssetContributor.ts","./src/app/shared/layout/themes/theme9/theme9-brand.component.ts","./src/app/shared/layout/themes/theme9/theme9-brand.component.html","./src/app/shared/layout/themes/theme9/theme9-layout.component.ts","./src/app/shared/layout/themes/theme9/theme9-layout.component.html","./src/app/shared/layout/themes/themes-layout-base.component.ts","./src/app/shared/layout/toggle-dark-mode/toggle-dark-mode.component.ts","./src/app/shared/layout/toggle-dark-mode/toggle-dark-mode.component.html","./src/app/shared/layout/topbar/active-delegated-users-combo.component.ts","./src/app/shared/layout/topbar/chat-toggle-button.component.ts","./src/app/shared/layout/topbar/chat-toggle-button.component.html","./src/app/shared/layout/topbar/language-switch-dropdown.component.ts","./src/app/shared/layout/topbar/language-switch-dropdown.component.html","./src/app/shared/layout/topbar/quick-theme-selection.component.ts","./src/app/shared/layout/topbar/quick-theme-selection.component.html","./src/app/shared/layout/topbar/subscription-notification-bar.component.ts","./src/app/shared/layout/topbar/subscription-notification-bar.component.html","./src/app/shared/layout/topbar/user-menu.component.ts","./src/app/shared/layout/topbar/user-menu.component.html","./src/app/shared/layout/user-delegations-modal.component.ts","./src/app/shared/layout/user-delegations-modal.component.html","./src/app/shared/ngx-spinner-text.service.ts","./src/app/shared/warehouse/warehouse-time-zone-async.pipe.ts","./src/app/shared/warehouse/warehouse-time-zone.service.ts","./src/assets/metronic/app/kt/_utils/DomHelpers.ts","./src/assets/metronic/app/kt/_utils/ElementAnimateUtil.ts","./src/assets/metronic/app/kt/_utils/EventHandlerUtil.ts","./src/assets/metronic/app/kt/_utils/_DOMEventHandlerUtil.ts","./src/assets/metronic/app/kt/_utils/_DataUtil.ts","./src/assets/metronic/app/kt/_utils/_ElementStyleUtil.ts","./src/assets/metronic/app/kt/_utils/_TypesHelpers.ts","./src/assets/metronic/app/kt/_utils/index.ts","./src/assets/metronic/app/kt/components/MenuComponent.ts","./src/assets/metronic/app/kt/components/SearchComponent.ts","./src/assets/metronic/app/kt/components/_CookieComponent.ts","./src/assets/metronic/app/kt/components/_DrawerComponent.ts","./src/assets/metronic/app/kt/components/_FeedbackComponent.ts","./src/assets/metronic/app/kt/components/_ImageInputComponent.ts","./src/assets/metronic/app/kt/components/_PasswordMeterComponent.ts","./src/assets/metronic/app/kt/components/_PlaceComponent.ts","./src/assets/metronic/app/kt/components/_ScrollComponent.ts","./src/assets/metronic/app/kt/components/_ScrollTopComponent.ts","./src/assets/metronic/app/kt/components/_StepperComponent.ts","./src/assets/metronic/app/kt/components/_StickyComponent.ts","./src/assets/metronic/app/kt/components/_ToggleComponent.ts","./src/assets/metronic/app/kt/components/index.ts","./src/assets/ngx-bootstrap/ngx-bootstrap-datepicker-config.service.ts","./src/assets/ngx-bootstrap/ngx-bootstrap-locale-mapping.service.ts","./src/environments/environment.ts","./src/hmr.ts","./src/main.ts","./src/polyfills.ts","./src/root-routing.module.ts","./src/root.component.ts","./src/root.module.ts","./src/shared/AppConsts.ts","./src/shared/animations/routerTransition.ts","./src/shared/caching/cache-map.ts","./src/shared/common/app-component-base.ts","./src/shared/common/appBsModal/app-bs-modal.directive.ts","./src/shared/common/appBsModal/app-bs-modal.module.ts","./src/shared/common/common.module.ts","./src/shared/common/nav/app-url.service.ts","./src/shared/common/pipes/feature-checker.pipe.ts","./src/shared/common/pipes/localize.pipe.ts","./src/shared/common/pipes/permission-all.pipe.ts","./src/shared/common/pipes/permission-any.pipe.ts","./src/shared/common/pipes/permission.pipe.ts","./src/shared/common/session/app-session.service.ts","./src/shared/common/session/cookie-consent.service.ts","./src/shared/common/ui/app-ui-customization.service.ts","./src/shared/helpers/DomHelper.ts","./src/shared/helpers/DynamicResourcesHelper.ts","./src/shared/helpers/FormattedStringValueExtracter.ts","./src/shared/helpers/PrimengTableHelper.ts","./src/shared/helpers/SignalRHelper.ts","./src/shared/helpers/SubdomainTenancyNameFinder.ts","./src/shared/helpers/ThemeAssetContributorFactory.ts","./src/shared/helpers/UrlHelper.ts","./src/shared/helpers/XmlHttpRequestHelper.ts","./src/shared/locale-mapping.service.ts","./src/shared/service-proxies/caching/cache-interceptor.service.ts","./src/shared/service-proxies/service-proxies.ts","./src/shared/service-proxies/service-proxy.module.ts","./src/shared/service-proxies/zero-template-http-configuration.service.ts","./src/shared/utils/array-to-tree-converter.service.ts","./src/shared/utils/auto-focus.directive.ts","./src/shared/utils/busy-if.directive.ts","./src/shared/utils/button-busy.directive.ts","./src/shared/utils/date-time/date-picker-as-date-time.directive.ts","./src/shared/utils/date-time/date-picker-luxon-modifier.directive.ts","./src/shared/utils/date-time/date-range-picker-luxon-modifier.directive.ts","./src/shared/utils/date-time/inline-date-picker-custom-classes.directive.ts","./src/shared/utils/date-time/inline-date-picker-on-shown.ts","./src/shared/utils/date-time/inline-date-picker-view-changed.directive.ts","./src/shared/utils/file-download.service.ts","./src/shared/utils/format-time-zone.pipe.ts","./src/shared/utils/friend-profile-picture.component.ts","./src/shared/utils/highlight-text.directive.ts","./src/shared/utils/local-storage.service.ts","./src/shared/utils/luxon-diff.pipe.ts","./src/shared/utils/luxon-duration-humanize.pipe.ts","./src/shared/utils/luxon-duration-localized.pipe.ts","./src/shared/utils/luxon-format.pipe.ts","./src/shared/utils/luxon-from-now.pipe.ts","./src/shared/utils/name-value-pair.ts","./src/shared/utils/null-value.directive.ts","./src/shared/utils/script-loader.service.ts","./src/shared/utils/style-loader.service.ts","./src/shared/utils/tree-data-helper.service.ts","./src/shared/utils/utils.module.ts","./src/shared/utils/validation-messages.component.ts","./src/shared/utils/validation/equal-validator.directive.ts","./src/shared/utils/validation/password-complexity-validator.directive.ts","./node_modules/@angular/common/locales|lazy|/^/.*/.mjs$/|groupOptions: {}|namespace object","./node_modules/ngx-bootstrap/chronos/esm2020/i18n|lazy|/^/.*/.mjs$/|groupOptions: {}|namespace object"],"sourcesContent":["import { CompilerOptions, NgModuleRef, Type } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\nimport { AppAuthService } from '@app/shared/common/auth/app-auth.service';\nimport { AppConsts } from '@shared/AppConsts';\nimport { SubdomainTenancyNameFinder } from '@shared/helpers/SubdomainTenancyNameFinder';\nimport { UrlHelper } from './shared/helpers/UrlHelper';\nimport { XmlHttpRequestHelper } from '@shared/helpers/XmlHttpRequestHelper';\nimport { DynamicResourcesHelper } from '@shared/helpers/DynamicResourcesHelper';\nimport { environment } from './environments/environment';\nimport { LocaleMappingService } from '@shared/locale-mapping.service';\nimport { LocalStorageService } from '@shared/utils/local-storage.service';\nimport { merge as _merge } from 'lodash-es';\nimport { DateTime, Settings } from 'luxon';\nimport {\n AccountServiceProxy,\n IsTenantAvailableInput,\n IsTenantAvailableOutput,\n TenantAvailabilityState,\n} from '@shared/service-proxies/service-proxies';\nimport { Injector } from '@angular/core';\n\nexport class AppPreBootstrap {\n static run(appRootUrl: string, injector: Injector, callback: () => void, resolve: any, reject: any): void {\n AppPreBootstrap.getApplicationConfig(appRootUrl, injector, () => {\n if (UrlHelper.isInstallUrl(location.href)) {\n AppPreBootstrap.loadAssetsForInstallPage(callback);\n return;\n }\n\n const queryStringObj = UrlHelper.getQueryParameters();\n\n if (queryStringObj.redirect && queryStringObj.redirect === 'TenantRegistration') {\n if (queryStringObj.forceNewRegistration) {\n new AppAuthService().logout();\n }\n\n location.href = AppConsts.appBaseUrl + '/account/select-edition';\n } else if (queryStringObj.impersonationToken) {\n if (queryStringObj.userDelegationId) {\n AppPreBootstrap.delegatedImpersonatedAuthenticate(\n queryStringObj.userDelegationId,\n queryStringObj.impersonationToken,\n queryStringObj.tenantId,\n () => {\n AppPreBootstrap.getUserConfiguration(callback);\n }\n );\n } else {\n AppPreBootstrap.impersonatedAuthenticate(\n queryStringObj.impersonationToken,\n queryStringObj.tenantId,\n () => {\n AppPreBootstrap.getUserConfiguration(callback);\n }\n );\n }\n } else if (queryStringObj.switchAccountToken) {\n AppPreBootstrap.linkedAccountAuthenticate(\n queryStringObj.switchAccountToken,\n queryStringObj.tenantId,\n () => {\n AppPreBootstrap.getUserConfiguration(callback);\n }\n );\n } else {\n AppPreBootstrap.getUserConfiguration(callback);\n }\n });\n }\n\n static bootstrap(\n moduleType: Type,\n compilerOptions?: CompilerOptions | CompilerOptions[]\n ): Promise> {\n return platformBrowserDynamic().bootstrapModule(moduleType, compilerOptions);\n }\n\n private static getApplicationConfig(appRootUrl: string, injector: Injector, callback: () => void) {\n let type = 'GET';\n let url = appRootUrl + 'assets/' + environment.appConfig;\n let customHeaders = [\n {\n name: abp.multiTenancy.tenantIdCookieName,\n value: abp.multiTenancy.getTenantIdCookie() + '',\n },\n ];\n\n XmlHttpRequestHelper.ajax(type, url, customHeaders, null, (result) => {\n const subdomainTenancyNameFinder = new SubdomainTenancyNameFinder();\n const tenancyName = subdomainTenancyNameFinder.getCurrentTenancyNameOrNull(result.appBaseUrl);\n\n AppConsts.localeMappings = result.localeMappings;\n\n AppConsts.appBaseUrlFormat = result.appBaseUrl;\n AppConsts.remoteServiceBaseUrlFormat = result.remoteServiceBaseUrl;\n\n if (tenancyName == null) {\n AppConsts.appBaseUrl = result.appBaseUrl.replace(AppConsts.tenancyNamePlaceHolderInUrl + '.', '');\n AppConsts.remoteServiceBaseUrl = result.remoteServiceBaseUrl.replace(\n AppConsts.tenancyNamePlaceHolderInUrl + '.',\n ''\n );\n\n callback();\n } else {\n AppConsts.appBaseUrl = result.appBaseUrl.replace(AppConsts.tenancyNamePlaceHolderInUrl, tenancyName);\n AppConsts.remoteServiceBaseUrl = result.remoteServiceBaseUrl.replace(\n AppConsts.tenancyNamePlaceHolderInUrl,\n tenancyName\n );\n\n if (!subdomainTenancyNameFinder.urlHasTenancyNamePlaceholder(result.remoteServiceBaseUrl)) {\n let accountServiceProxy: AccountServiceProxy = injector.get(AccountServiceProxy);\n let input = new IsTenantAvailableInput();\n input.tenancyName = tenancyName;\n\n accountServiceProxy.isTenantAvailable(input).subscribe((result: IsTenantAvailableOutput) => {\n if (result.state === TenantAvailabilityState.Available) {\n abp.multiTenancy.setTenantIdCookie(result.tenantId);\n }\n\n callback();\n });\n } else {\n callback();\n }\n }\n });\n }\n\n private static getCurrentClockProvider(currentProviderName: string): abp.timing.IClockProvider {\n if (currentProviderName === 'unspecifiedClockProvider') {\n return abp.timing.unspecifiedClockProvider;\n }\n\n if (currentProviderName === 'utcClockProvider') {\n return abp.timing.utcClockProvider;\n }\n\n return abp.timing.localClockProvider;\n }\n\n private static getRequetHeadersWithDefaultValues() {\n const cookieLangValue = abp.utils.getCookieValue('Abp.Localization.CultureName');\n\n let requestHeaders = {\n '.AspNetCore.Culture': 'c=' + cookieLangValue + '|uic=' + cookieLangValue,\n [abp.multiTenancy.tenantIdCookieName]: abp.multiTenancy.getTenantIdCookie(),\n };\n\n if (!cookieLangValue) {\n delete requestHeaders['.AspNetCore.Culture'];\n }\n\n return requestHeaders;\n }\n\n private static impersonatedAuthenticate(impersonationToken: string, tenantId: number, callback: () => void): void {\n abp.multiTenancy.setTenantIdCookie(tenantId);\n let requestHeaders = AppPreBootstrap.getRequetHeadersWithDefaultValues();\n\n XmlHttpRequestHelper.ajax(\n 'POST',\n AppConsts.remoteServiceBaseUrl +\n '/api/TokenAuth/ImpersonatedAuthenticate?impersonationToken=' +\n impersonationToken,\n requestHeaders,\n null,\n (response) => {\n let result = response.result;\n abp.auth.setToken(result.accessToken);\n AppPreBootstrap.setEncryptedTokenCookie(result.encryptedAccessToken, () => {\n callback();\n location.search = '';\n });\n }\n );\n }\n\n private static delegatedImpersonatedAuthenticate(\n userDelegationId: number,\n impersonationToken: string,\n tenantId: number,\n callback: () => void\n ): void {\n abp.multiTenancy.setTenantIdCookie(tenantId);\n let requestHeaders = AppPreBootstrap.getRequetHeadersWithDefaultValues();\n\n XmlHttpRequestHelper.ajax(\n 'POST',\n AppConsts.remoteServiceBaseUrl +\n '/api/TokenAuth/DelegatedImpersonatedAuthenticate?userDelegationId=' +\n userDelegationId +\n '&impersonationToken=' +\n impersonationToken,\n requestHeaders,\n null,\n (response) => {\n let result = response.result;\n abp.auth.setToken(result.accessToken);\n AppPreBootstrap.setEncryptedTokenCookie(result.encryptedAccessToken, () => {\n callback();\n location.search = '';\n });\n }\n );\n }\n\n private static linkedAccountAuthenticate(switchAccountToken: string, tenantId: number, callback: () => void): void {\n abp.multiTenancy.setTenantIdCookie(tenantId);\n let requestHeaders = AppPreBootstrap.getRequetHeadersWithDefaultValues();\n\n XmlHttpRequestHelper.ajax(\n 'POST',\n AppConsts.remoteServiceBaseUrl +\n '/api/TokenAuth/LinkedAccountAuthenticate?switchAccountToken=' +\n switchAccountToken,\n requestHeaders,\n null,\n (response) => {\n let result = response.result;\n abp.auth.setToken(result.accessToken);\n AppPreBootstrap.setEncryptedTokenCookie(result.encryptedAccessToken, () => {\n callback();\n location.search = '';\n });\n }\n );\n }\n\n private static getUserConfiguration(callback: () => void): any {\n const token = abp.auth.getToken();\n\n let requestHeaders = AppPreBootstrap.getRequetHeadersWithDefaultValues();\n\n if (token) {\n requestHeaders['Authorization'] = 'Bearer ' + token;\n }\n\n return XmlHttpRequestHelper.ajax(\n 'GET',\n AppConsts.remoteServiceBaseUrl + '/AbpUserConfiguration/GetAll',\n requestHeaders,\n null,\n (response) => {\n let result = response.result;\n\n _merge(abp, result);\n\n abp.clock.provider = this.getCurrentClockProvider(result.clock.provider);\n\n AppPreBootstrap.configureLuxon();\n\n abp.event.trigger('abp.dynamicScriptsInitialized');\n\n AppConsts.recaptchaSiteKey = abp.setting.get('Recaptcha.SiteKey');\n AppConsts.subscriptionExpireNootifyDayCount = parseInt(\n abp.setting.get('App.TenantManagement.SubscriptionExpireNotifyDayCount')\n );\n\n DynamicResourcesHelper.loadResources(callback);\n }\n );\n }\n\n private static configureLuxon() {\n let luxonLocale = new LocaleMappingService().map('luxon', abp.localization.currentLanguage.name);\n\n DateTime.local().setLocale(luxonLocale);\n DateTime.utc().setLocale(luxonLocale);\n Settings.defaultLocale = luxonLocale;\n\n if (abp.clock.provider.supportsMultipleTimezone) {\n Settings.defaultZone = abp.timing.timeZoneInfo.iana.timeZoneId;\n }\n\n DateTime.prototype.toJSON = function () {\n if (!abp.clock.provider.supportsMultipleTimezone) {\n let localDate = this.setLocale('en');\n return localDate.toString();\n }\n\n let date = this.setLocale('en').setZone(abp.timing.timeZoneInfo.iana.timeZoneId) as DateTime;\n return date.toISO();\n };\n }\n\n private static setEncryptedTokenCookie(encryptedToken: string, callback: () => void) {\n new LocalStorageService().setItem(\n AppConsts.authorization.encrptedAuthTokenName,\n {\n token: encryptedToken,\n expireDate: new Date(new Date().getTime() + 365 * 86400000), //1 year\n },\n callback\n );\n }\n\n private static loadAssetsForInstallPage(callback) {\n abp.setting.values['App.UiManagement.Theme'] = 'default';\n abp.setting.values['default.App.UiManagement.ThemeColor'] = 'default';\n\n DynamicResourcesHelper.loadResources(callback);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { TokenService, RefreshTokenService } from 'abp-ng2-module';\nimport { TokenAuthServiceProxy, RefreshTokenResult } from '@shared/service-proxies/service-proxies';\nimport { Observable, Subject, of } from 'rxjs';\nimport { AppConsts } from '@shared/AppConsts';\nimport { LocalStorageService } from '@shared/utils/local-storage.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ZeroRefreshTokenService implements RefreshTokenService {\n constructor(\n private _tokenAuthService: TokenAuthServiceProxy,\n private _tokenService: TokenService,\n private _localStorageService: LocalStorageService\n ) {}\n\n tryAuthWithRefreshToken(): Observable {\n let refreshTokenObservable = new Subject();\n\n let token = this._tokenService.getRefreshToken();\n if (!token || token.trim() === '') {\n return of(false);\n }\n\n this._tokenAuthService.refreshToken(token).subscribe(\n (tokenResult: RefreshTokenResult) => {\n if (tokenResult && tokenResult.accessToken) {\n let tokenExpireDate = new Date(new Date().getTime() + 1000 * tokenResult.expireInSeconds);\n this._tokenService.setToken(tokenResult.accessToken, tokenExpireDate);\n\n this._localStorageService.setItem(AppConsts.authorization.encrptedAuthTokenName, {\n token: tokenResult.encryptedAccessToken,\n expireDate: tokenExpireDate,\n });\n\n refreshTokenObservable.next(true);\n } else {\n refreshTokenObservable.next(false);\n }\n },\n (error: any) => {\n refreshTokenObservable.next(false);\n }\n );\n return refreshTokenObservable;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppAuthService } from '@app/shared/common/auth/app-auth.service';\nimport { AppUrlService } from '@shared/common/nav/app-url.service';\nimport {\n AccountServiceProxy,\n ImpersonateUserInput,\n ImpersonateTenantInput,\n ImpersonateOutput,\n DelegatedImpersonateInput,\n} from '@shared/service-proxies/service-proxies';\n\n@Injectable()\nexport class ImpersonationService {\n constructor(\n private _accountService: AccountServiceProxy,\n private _appUrlService: AppUrlService,\n private _authService: AppAuthService\n ) {}\n\n impersonateTenant(userId: number, tenantId?: number): void {\n const input = new ImpersonateTenantInput();\n input.userId = userId;\n input.tenantId = tenantId;\n\n this._accountService.impersonateTenant(input).subscribe((result: ImpersonateOutput) => {\n let targetUrl =\n this.getAppRootUrl(result) +\n '?impersonationToken=' +\n result.impersonationToken;\n if (input.tenantId) {\n targetUrl = targetUrl + '&tenantId=' + input.tenantId;\n }\n\n this._authService.logout(true, targetUrl);\n });\n }\n\n impersonateUser(userId: number, tenantId: number): void {\n const input = new ImpersonateUserInput();\n input.userId = userId;\n input.tenantId = tenantId;\n\n this._accountService.impersonateUser(input).subscribe((result: ImpersonateOutput) => {\n let targetUrl =\n this.getAppRootUrl(result) +\n '?impersonationToken=' +\n result.impersonationToken;\n if (input.tenantId) {\n targetUrl = targetUrl + '&tenantId=' + input.tenantId;\n }\n\n this._authService.logout(true, targetUrl);\n });\n }\n\n delegatedImpersonate(userDelegationId: number, tenantId?: number): void {\n const input = new DelegatedImpersonateInput();\n input.userDelegationId = userDelegationId;\n\n this._accountService.delegatedImpersonate(input).subscribe((result: ImpersonateOutput) => {\n let targetUrl =\n this.getAppRootUrl(result) +\n '?impersonationToken=' +\n result.impersonationToken;\n targetUrl = targetUrl + '&userDelegationId=' + userDelegationId;\n if (tenantId) {\n targetUrl = targetUrl + '&tenantId=' + tenantId;\n }\n\n this._authService.logout(true, targetUrl);\n });\n }\n\n backToImpersonator(): void {\n this._accountService.backToImpersonator().subscribe((result: ImpersonateOutput) => {\n let targetUrl =\n this.getAppRootUrl(result) +\n '?impersonationToken=' +\n result.impersonationToken;\n if (abp.session.impersonatorTenantId) {\n targetUrl = targetUrl + '&tenantId=' + abp.session.impersonatorTenantId;\n }\n\n this._authService.logout(true, targetUrl);\n });\n }\n\n getAppRootUrl(result: ImpersonateOutput): string{\n return this._appUrlService.getAppRootUrlOfTenant(result.tenancyName) + 'index.html';\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NavigationEnd, RouteConfigLoadEnd, RouteConfigLoadStart, Router, RouterModule } from '@angular/router';\nimport { AppComponent } from './app.component';\nimport { AppRouteGuard } from './shared/common/auth/auth-route-guard';\nimport { NotificationsComponent } from './shared/layout/notifications/notifications.component';\nimport { NgxSpinnerService } from 'ngx-spinner';\n\n@NgModule({\n imports: [\n RouterModule.forChild([\n {\n path: 'app',\n component: AppComponent,\n canActivate: [AppRouteGuard],\n canActivateChild: [AppRouteGuard],\n children: [\n {\n path: '',\n children: [\n { path: 'notifications', component: NotificationsComponent },\n { path: '', redirectTo: '/app/main/dashboard', pathMatch: 'full' },\n ],\n },\n {\n path: 'main',\n loadChildren: () => import('app/main/main.module').then((m) => m.MainModule), //Lazy load main module\n data: { preload: true },\n },\n {\n path: 'admin',\n loadChildren: () => import('app/admin/admin.module').then((m) => m.AdminModule), //Lazy load admin module\n data: { preload: true },\n canLoad: [AppRouteGuard],\n },\n {\n path: '**',\n redirectTo: 'notifications',\n },\n ],\n },\n ]),\n ],\n exports: [RouterModule],\n})\nexport class AppRoutingModule {\n constructor(private router: Router, private spinnerService: NgxSpinnerService) {\n router.events.subscribe((event) => {\n if (event instanceof RouteConfigLoadStart) {\n spinnerService.show();\n }\n\n if (event instanceof RouteConfigLoadEnd) {\n spinnerService.hide();\n }\n\n if (event instanceof NavigationEnd) {\n document.querySelector('meta[property=og\\\\:url').setAttribute('content', window.location.href);\n }\n });\n }\n}\n","import { Component, Injector, OnInit, ViewChild } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { UrlHelper } from '@shared/helpers/UrlHelper';\nimport { SubscriptionStartType } from '@shared/service-proxies/service-proxies';\nimport { ChatSignalrService } from 'app/shared/layout/chat/chat-signalr.service';\nimport { AppComponentBase } from 'shared/common/app-component-base';\nimport { SignalRHelper } from 'shared/helpers/SignalRHelper';\nimport { LinkedAccountsModalComponent } from '@app/shared/layout/linked-accounts-modal.component';\nimport { UserDelegationsModalComponent } from '@app/shared/layout/user-delegations-modal.component';\nimport { ChangePasswordModalComponent } from '@app/shared/layout/profile/change-password-modal.component';\nimport { ChangeProfilePictureModalComponent } from '@app/shared/layout/profile/change-profile-picture-modal.component';\nimport { MySettingsModalComponent } from '@app/shared/layout/profile/my-settings-modal.component';\nimport { NotificationSettingsModalComponent } from '@app/shared/layout/notifications/notification-settings-modal.component';\nimport { UserNotificationHelper } from '@app/shared/layout/notifications/UserNotificationHelper';\nimport { DateTimeService } from './shared/common/timing/date-time.service';\nimport { NotificationDetailModalComponent } from './shared/layout/notifications/detail-modal/notification-detail-modal.component';\n\nimport {\n ToggleComponent,\n ScrollTopComponent,\n DrawerComponent,\n StickyComponent,\n MenuComponent,\n ScrollComponent,\n} from '@metronic/app/kt/components';\n\n@Component({\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.less'],\n})\nexport class AppComponent extends AppComponentBase implements OnInit {\n @ViewChild('linkedAccountsModal') linkedAccountsModal: LinkedAccountsModalComponent;\n @ViewChild('userDelegationsModal', { static: true }) userDelegationsModal: UserDelegationsModalComponent;\n @ViewChild('changePasswordModal', { static: true }) changePasswordModal: ChangePasswordModalComponent;\n @ViewChild('changeProfilePictureModal', { static: true })\n changeProfilePictureModal: ChangeProfilePictureModalComponent;\n @ViewChild('mySettingsModal', { static: true }) mySettingsModal: MySettingsModalComponent;\n @ViewChild('notificationSettingsModal', { static: true })\n notificationSettingsModal: NotificationSettingsModalComponent;\n @ViewChild('chatBarComponent') chatBarComponent;\n @ViewChild('notificationDetailModal', { static: true })\n notificationDetailModal: NotificationDetailModalComponent;\n\n subscriptionStartType = SubscriptionStartType;\n theme: string;\n installationMode = true;\n isQuickThemeSelectEnabled: boolean = this.setting.getBoolean('App.UserManagement.IsQuickThemeSelectEnabled');\n IsSessionTimeOutEnabled: boolean =\n this.setting.getBoolean('App.UserManagement.SessionTimeOut.IsEnabled') && this.appSession.userId != null;\n\n public constructor(\n injector: Injector,\n private _chatSignalrService: ChatSignalrService,\n private _userNotificationHelper: UserNotificationHelper,\n private _dateTimeService: DateTimeService\n ) {\n super(injector);\n }\n\n ngOnInit(): void {\n this._userNotificationHelper.settingsModal = this.notificationSettingsModal;\n this._userNotificationHelper.detailModal = this.notificationDetailModal;\n\n this.theme = abp.setting.get('App.UiManagement.Theme').toLocaleLowerCase();\n this.installationMode = UrlHelper.isInstallUrl(location.href);\n\n this.registerModalOpenEvents();\n\n if (this.appSession.application) {\n SignalRHelper.initSignalR(() => {\n this._chatSignalrService.init();\n });\n }\n\n this.pluginsInitialization();\n }\n\n pluginsInitialized(): boolean {\n let menuItems = document.querySelectorAll('[data-kt-menu=\"true\"]');\n for (let i = 0; i < menuItems.length; i++) {\n let el = menuItems[i];\n const menuItem = el as HTMLElement;\n let menuInstance = MenuComponent.getInstance(menuItem);\n if (menuInstance) {\n return true;\n }\n }\n\n return false;\n }\n\n pluginsInitialization() {\n setTimeout(() => {\n if (this.pluginsInitialized()) {\n return;\n }\n\n ToggleComponent.bootstrap();\n ScrollTopComponent.bootstrap();\n DrawerComponent.bootstrap();\n StickyComponent.bootstrap();\n MenuComponent.bootstrap();\n ScrollComponent.bootstrap();\n }, 200);\n }\n\n subscriptionStatusBarVisible(): boolean {\n return (\n this.appSession.tenantId > 0 &&\n (this.appSession.tenant.isInTrialPeriod || this.subscriptionIsExpiringSoon())\n );\n }\n\n subscriptionIsExpiringSoon(): boolean {\n if (this.appSession.tenant?.subscriptionEndDateUtc) {\n let today = this._dateTimeService.getUTCDate();\n let daysFromNow = this._dateTimeService.plusDays(today, AppConsts.subscriptionExpireNootifyDayCount);\n return daysFromNow >= this.appSession.tenant.subscriptionEndDateUtc;\n }\n\n return false;\n }\n\n registerModalOpenEvents(): void {\n this.subscribeToEvent('app.show.linkedAccountsModal', () => {\n this.linkedAccountsModal.show();\n });\n\n this.subscribeToEvent('app.show.userDelegationsModal', () => {\n this.userDelegationsModal.show();\n });\n\n this.subscribeToEvent('app.show.changePasswordModal', () => {\n this.changePasswordModal.show();\n });\n\n this.subscribeToEvent('app.show.changeProfilePictureModal', () => {\n this.changeProfilePictureModal.show();\n });\n\n this.subscribeToEvent('app.show.mySettingsModal', () => {\n this.mySettingsModal.show();\n });\n }\n\n getRecentlyLinkedUsers(): void {\n abp.event.trigger('app.getRecentlyLinkedUsers');\n }\n\n onMySettingsModalSaved(): void {\n abp.event.trigger('app.onMySettingsModalSaved');\n }\n}\n","
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClientJsonpModule, HttpClientModule } from '@angular/common/http';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ChatSignalrService } from '@app/shared/layout/chat/chat-signalr.service';\r\nimport { CreateNewUserDelegationModalComponent } from '@app/shared/layout/create-new-user-delegation-modal.component';\r\nimport { LinkAccountModalComponent } from '@app/shared/layout/link-account-modal.component';\r\nimport { LinkedAccountsModalComponent } from '@app/shared/layout/linked-accounts-modal.component';\r\nimport { ChangePasswordModalComponent } from '@app/shared/layout/profile/change-password-modal.component';\r\nimport { MySettingsModalComponent } from '@app/shared/layout/profile/my-settings-modal.component';\r\nimport { SmsVerificationModalComponent } from '@app/shared/layout/profile/sms-verification-modal.component';\r\nimport { UserDelegationsModalComponent } from '@app/shared/layout/user-delegations-modal.component';\r\nimport { ServiceProxyModule } from '@shared/service-proxies/service-proxy.module';\r\nimport { UtilsModule } from '@shared/utils/utils.module';\r\nimport { TextMaskModule } from 'angular2-text-mask';\r\nimport { FileUploadModule } from 'ng2-file-upload';\r\nimport { BsDatepickerModule } from 'ngx-bootstrap/datepicker';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { PopoverModule } from 'ngx-bootstrap/popover';\r\nimport { TabsModule } from 'ngx-bootstrap/tabs';\r\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\r\nimport { ImageCropperModule } from 'ngx-image-cropper';\r\nimport { FileUploadModule as PrimeNgFileUploadModule } from 'primeng/fileupload';\r\nimport { PaginatorModule } from 'primeng/paginator';\r\nimport { ProgressBarModule } from 'primeng/progressbar';\r\nimport { TableModule } from 'primeng/table';\r\nimport { ImpersonationService } from './admin/users/impersonation.service';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { AppCommonModule } from './shared/common/app-common.module';\r\nimport { ChatBarComponent } from './shared/layout/chat/chat-bar.component';\r\nimport { ChatFriendListItemComponent } from './shared/layout/chat/chat-friend-list-item.component';\r\nimport { ChatMessageComponent } from './shared/layout/chat/chat-message.component';\r\nimport { FooterComponent } from './shared/layout/footer.component';\r\nimport { LinkedAccountService } from './shared/layout/linked-account.service';\r\nimport { SideBarMenuComponent } from './shared/layout/nav/side-bar-menu.component';\r\nimport { TopBarMenuComponent } from './shared/layout/nav/top-bar-menu.component';\r\nimport { HeaderNotificationsComponent } from './shared/layout/notifications/header-notifications.component';\r\nimport { NotificationSettingsModalComponent } from './shared/layout/notifications/notification-settings-modal.component';\r\nimport { NotificationsComponent } from './shared/layout/notifications/notifications.component';\r\nimport { UserNotificationHelper } from './shared/layout/notifications/UserNotificationHelper';\r\nimport { ThemeSelectionPanelComponent } from './shared/layout/theme-selection/theme-selection-panel.component';\r\nimport { DefaultBrandComponent } from './shared/layout/themes/default/default-brand.component';\r\nimport { DefaultLayoutComponent } from './shared/layout/themes/default/default-layout.component';\r\nimport { Theme10BrandComponent } from './shared/layout/themes/theme10/theme10-brand.component';\r\nimport { Theme10LayoutComponent } from './shared/layout/themes/theme10/theme10-layout.component';\r\nimport { Theme11BrandComponent } from './shared/layout/themes/theme11/theme11-brand.component';\r\nimport { Theme11LayoutComponent } from './shared/layout/themes/theme11/theme11-layout.component';\r\nimport { Theme12BrandComponent } from './shared/layout/themes/theme12/theme12-brand.component';\r\nimport { Theme12LayoutComponent } from './shared/layout/themes/theme12/theme12-layout.component';\r\nimport { Theme13BrandComponent } from './shared/layout/themes/theme13/theme13-brand.component';\r\nimport { Theme13LayoutComponent } from './shared/layout/themes/theme13/theme13-layout.component';\r\nimport { Theme2BrandComponent } from './shared/layout/themes/theme2/theme2-brand.component';\r\nimport { Theme2LayoutComponent } from './shared/layout/themes/theme2/theme2-layout.component';\r\nimport { Theme3BrandComponent } from './shared/layout/themes/theme3/theme3-brand.component';\r\nimport { Theme3LayoutComponent } from './shared/layout/themes/theme3/theme3-layout.component';\r\nimport { Theme4BrandComponent } from './shared/layout/themes/theme4/theme4-brand.component';\r\nimport { Theme4LayoutComponent } from './shared/layout/themes/theme4/theme4-layout.component';\r\nimport { Theme5BrandComponent } from './shared/layout/themes/theme5/theme5-brand.component';\r\nimport { Theme5LayoutComponent } from './shared/layout/themes/theme5/theme5-layout.component';\r\nimport { Theme6BrandComponent } from './shared/layout/themes/theme6/theme6-brand.component';\r\nimport { Theme6LayoutComponent } from './shared/layout/themes/theme6/theme6-layout.component';\r\nimport { Theme7BrandComponent } from './shared/layout/themes/theme7/theme7-brand.component';\r\nimport { Theme7LayoutComponent } from './shared/layout/themes/theme7/theme7-layout.component';\r\nimport { Theme8BrandComponent } from './shared/layout/themes/theme8/theme8-brand.component';\r\nimport { Theme8LayoutComponent } from './shared/layout/themes/theme8/theme8-layout.component';\r\nimport { Theme9BrandComponent } from './shared/layout/themes/theme9/theme9-brand.component';\r\nimport { Theme9LayoutComponent } from './shared/layout/themes/theme9/theme9-layout.component';\r\nimport { ActiveDelegatedUsersComboComponent } from './shared/layout/topbar/active-delegated-users-combo.component';\r\nimport { ChatToggleButtonComponent } from './shared/layout/topbar/chat-toggle-button.component';\r\nimport { LanguageSwitchDropdownComponent } from './shared/layout/topbar/language-switch-dropdown.component';\r\nimport { QuickThemeSelectionComponent } from './shared/layout/topbar/quick-theme-selection.component';\r\nimport { SubscriptionNotificationBarComponent } from './shared/layout/topbar/subscription-notification-bar.component';\r\nimport { UserMenuComponent } from './shared/layout/topbar/user-menu.component';\r\n\r\nimport { DefaultLogoComponent } from './shared/layout/themes/default/default-logo.component';\r\n\r\n// Metronic\r\nimport {\r\n PerfectScrollbarConfigInterface, PerfectScrollbarModule,\r\n PERFECT_SCROLLBAR_CONFIG\r\n} from 'ngx-perfect-scrollbar';\r\nconst DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {\r\n // suppressScrollX: true\r\n};\r\n\r\nimport { AppBsModalModule } from '@shared/common/appBsModal/app-bs-modal.module';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { SessionTimeoutModalComponent } from './shared/common/session-timeout/session-timeout-modal-component';\r\nimport { SessionTimeoutComponent } from './shared/common/session-timeout/session-timeout.component';\r\nimport { SubheaderModule } from './shared/common/sub-header/subheader.module';\r\nimport { HeaderSearchInputComponent } from './shared/layout/header-search-input/header-search-input.component';\r\nimport { MenuSearchBarComponent } from './shared/layout/nav/menu-search-bar/menu-search-bar.component';\r\nimport { NotificationDetailModalComponent } from './shared/layout/notifications/detail-modal/notification-detail-modal.component';\r\nimport { ChangeProfilePictureModalModule } from './shared/layout/profile/change-profile-picture-modal.module';\r\nimport { ScrollTopComponent } from './shared/layout/scroll-top.component';\r\nimport { ToggleDarkModeComponent } from './shared/layout/toggle-dark-mode/toggle-dark-mode.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n DefaultLayoutComponent,\r\n Theme2LayoutComponent,\r\n Theme3LayoutComponent,\r\n Theme4LayoutComponent,\r\n Theme5LayoutComponent,\r\n Theme6LayoutComponent,\r\n Theme7LayoutComponent,\r\n Theme8LayoutComponent,\r\n Theme9LayoutComponent,\r\n Theme10LayoutComponent,\r\n Theme11LayoutComponent,\r\n Theme12LayoutComponent,\r\n Theme13LayoutComponent,\r\n HeaderNotificationsComponent,\r\n SideBarMenuComponent,\r\n TopBarMenuComponent,\r\n FooterComponent,\r\n ScrollTopComponent,\r\n LinkedAccountsModalComponent,\r\n UserDelegationsModalComponent,\r\n CreateNewUserDelegationModalComponent,\r\n LinkAccountModalComponent,\r\n ChangePasswordModalComponent,\r\n MySettingsModalComponent,\r\n SmsVerificationModalComponent,\r\n NotificationsComponent,\r\n ChatBarComponent,\r\n ThemeSelectionPanelComponent,\r\n ChatFriendListItemComponent,\r\n NotificationSettingsModalComponent,\r\n ChatMessageComponent,\r\n QuickThemeSelectionComponent,\r\n LanguageSwitchDropdownComponent,\r\n ChatToggleButtonComponent,\r\n SubscriptionNotificationBarComponent,\r\n UserMenuComponent,\r\n HeaderSearchInputComponent,\r\n DefaultBrandComponent,\r\n Theme2BrandComponent,\r\n Theme3BrandComponent,\r\n Theme4BrandComponent,\r\n Theme5BrandComponent,\r\n Theme6BrandComponent,\r\n Theme7BrandComponent,\r\n Theme8BrandComponent,\r\n Theme9BrandComponent,\r\n Theme10BrandComponent,\r\n Theme11BrandComponent,\r\n Theme12BrandComponent,\r\n Theme13BrandComponent,\r\n SessionTimeoutModalComponent,\r\n SessionTimeoutComponent,\r\n MenuSearchBarComponent,\r\n ActiveDelegatedUsersComboComponent,\r\n DefaultLogoComponent,\r\n ToggleDarkModeComponent,\r\n NotificationDetailModalComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n HttpClientJsonpModule,\r\n ModalModule.forRoot(),\r\n TooltipModule.forRoot(),\r\n TabsModule.forRoot(),\r\n BsDropdownModule.forRoot(),\r\n PopoverModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n FileUploadModule,\r\n AppRoutingModule,\r\n UtilsModule,\r\n AppCommonModule.forRoot(),\r\n ServiceProxyModule,\r\n TableModule,\r\n PaginatorModule,\r\n PrimeNgFileUploadModule,\r\n ProgressBarModule,\r\n PerfectScrollbarModule,\r\n TextMaskModule,\r\n ImageCropperModule,\r\n AutoCompleteModule,\r\n NgxSpinnerModule,\r\n AppBsModalModule,\r\n SubheaderModule,\r\n ChangeProfilePictureModalModule\r\n ],\r\n providers: [\r\n ImpersonationService,\r\n LinkedAccountService,\r\n UserNotificationHelper,\r\n ChatSignalrService,\r\n {\r\n provide: PERFECT_SCROLLBAR_CONFIG,\r\n useValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG,\r\n },\r\n ]\r\n})\r\nexport class AppModule {}\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClientJsonpModule, HttpClientModule } from '@angular/common/http';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AppRoutingModule } from '@app/app-routing.module';\r\nimport { AppBsModalModule } from '@shared/common/appBsModal/app-bs-modal.module';\r\nimport { ServiceProxyModule } from '@shared/service-proxies/service-proxy.module';\r\nimport { UtilsModule } from '@shared/utils/utils.module';\r\nimport { TextMaskModule } from 'angular2-text-mask';\r\nimport { FileUploadModule } from 'ng2-file-upload';\r\nimport { BsDatepickerModule } from 'ngx-bootstrap/datepicker';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { PopoverModule } from 'ngx-bootstrap/popover';\r\nimport { TabsModule } from 'ngx-bootstrap/tabs';\r\nimport { ImageCropperModule } from 'ngx-image-cropper';\r\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { PaginatorModule } from 'primeng/paginator';\r\nimport { ProgressBarModule } from 'primeng/progressbar';\r\nimport { TableModule } from 'primeng/table';\r\nimport { AppCommonModule } from './common/app-common.module';\r\nimport { ThemesLayoutBaseComponent } from './layout/themes/themes-layout-base.component';\r\nimport { WarehouseTimeZoneAsyncPipe } from './warehouse/warehouse-time-zone-async.pipe';\r\nimport { WarehouseTimeZoneService } from './warehouse/warehouse-time-zone.service';\r\n;\r\n\r\nconst imports = [\r\n CommonModule,\r\n FormsModule,\r\n HttpClientModule,\r\n HttpClientJsonpModule,\r\n ModalModule,\r\n TabsModule,\r\n BsDropdownModule,\r\n PopoverModule,\r\n BsDatepickerModule,\r\n AppCommonModule,\r\n FileUploadModule,\r\n AppRoutingModule,\r\n UtilsModule,\r\n ServiceProxyModule,\r\n TableModule,\r\n PaginatorModule,\r\n ProgressBarModule,\r\n PerfectScrollbarModule,\r\n TextMaskModule,\r\n ImageCropperModule,\r\n AutoCompleteModule,\r\n NgxSpinnerModule,\r\n AppBsModalModule,\r\n];\r\n\r\n@NgModule({\r\n imports: [...imports],\r\n exports: [\r\n ...imports,\r\n WarehouseTimeZoneAsyncPipe,\r\n ],\r\n providers: [WarehouseTimeZoneService],\r\n declarations: [\r\n ThemesLayoutBaseComponent,\r\n WarehouseTimeZoneAsyncPipe,\r\n ],\r\n})\r\nexport class AppSharedModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { AppLocalizationService } from '@app/shared/common/localization/app-localization.service';\r\nimport { AppNavigationService } from '@app/shared/layout/nav/app-navigation.service';\r\nimport { AppBsModalModule } from '@shared/common/appBsModal/app-bs-modal.module';\r\nimport { GetConcurrentCommonModule } from '@shared/common/common.module';\r\nimport { UtilsModule } from '@shared/utils/utils.module';\r\nimport { CountoModule } from 'angular2-counto';\r\nimport { NgxBootstrapDatePickerConfigService } from 'assets/ngx-bootstrap/ngx-bootstrap-datepicker-config.service';\r\nimport {\r\n BsDatepickerConfig, BsDatepickerModule, BsDaterangepickerConfig,\r\n BsLocaleService\r\n} from 'ngx-bootstrap/datepicker';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { TabsModule } from 'ngx-bootstrap/tabs';\r\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { PaginatorModule } from 'primeng/paginator';\r\nimport { TableModule } from 'primeng/table';\r\nimport { AppAuthService } from './auth/app-auth.service';\r\nimport { AppRouteGuard } from './auth/auth-route-guard';\r\nimport { EntityChangeDetailModalComponent } from './entityHistory/entity-change-detail-modal.component';\r\nimport { EntityTypeHistoryModalComponent } from './entityHistory/entity-type-history-modal.component';\r\nimport { CheckboxInputTypeComponent } from './input-types/checkbox-input-type/checkbox-input-type.component';\r\nimport { ComboboxInputTypeComponent } from './input-types/combobox-input-type/combobox-input-type.component';\r\nimport { MultipleSelectComboboxInputTypeComponent } from './input-types/multiple-select-combobox-input-type/multiple-select-combobox-input-type.component';\r\nimport { FilterCheckListItemPipe } from './input-types/multiselect-combobox/filter-check-list-item-filter-pipe';\r\nimport { MultiselectComboboxComponent } from './input-types/multiselect-combobox/multiselect-combobox.component';\r\nimport { OutsideClickDirective } from './input-types/multiselect-combobox/outside-click.directive';\r\nimport { SelectComboboxComponent } from './input-types/select-combobox/select-combobox.component';\r\nimport { SingleLineStringInputTypeComponent } from './input-types/single-line-string-input-type/single-line-string-input-type.component';\r\nimport { KeyValueListManagerComponent } from './key-value-list-manager/key-value-list-manager.component';\r\nimport { CommonLookupModalComponent } from './lookup/common-lookup-modal.component';\r\nimport { PasswordInputWithShowButtonComponent } from './password-input-with-show-button/password-input-with-show-button.component';\r\nimport { ShipmentStatusPipe } from './pipes/shipment-status-pipe';\r\nimport { DatePickerInitialValueSetterDirective } from './timing/date-picker-initial-value.directive';\r\nimport { DateRangePickerInitialValueSetterDirective } from './timing/date-range-picker-initial-value.directive';\r\nimport { DateTimeService } from './timing/date-time.service';\r\nimport { TimeZoneComboComponent } from './timing/timezone-combo.component';\r\nimport { TradeClassPipe } from './pipes/trade-class.pipe';\r\nimport { ShippabilityStatusPipe } from './pipes/shippability-status-pipe';\r\nimport { OrderByPipe } from './pipes/order-by-pipe';\r\nimport { UnitOfMeasurePipe } from './pipes/unit-of-measure.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n ModalModule.forRoot(),\r\n UtilsModule,\r\n GetConcurrentCommonModule,\r\n TableModule,\r\n PaginatorModule,\r\n TabsModule.forRoot(),\r\n BsDropdownModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n PerfectScrollbarModule,\r\n CountoModule,\r\n AppBsModalModule,\r\n AutoCompleteModule,\r\n ],\r\n declarations: [\r\n TimeZoneComboComponent,\r\n CommonLookupModalComponent,\r\n EntityTypeHistoryModalComponent,\r\n EntityChangeDetailModalComponent,\r\n DateRangePickerInitialValueSetterDirective,\r\n DatePickerInitialValueSetterDirective,\r\n SingleLineStringInputTypeComponent,\r\n ComboboxInputTypeComponent,\r\n CheckboxInputTypeComponent,\r\n MultipleSelectComboboxInputTypeComponent,\r\n SelectComboboxComponent,\r\n PasswordInputWithShowButtonComponent,\r\n KeyValueListManagerComponent,\r\n MultiselectComboboxComponent,\r\n ShipmentStatusPipe,\r\n ShippabilityStatusPipe,\r\n TradeClassPipe,\r\n OutsideClickDirective,\r\n FilterCheckListItemPipe,\r\n OrderByPipe,\r\n UnitOfMeasurePipe,\r\n ],\r\n exports: [\r\n TimeZoneComboComponent,\r\n CommonLookupModalComponent,\r\n EntityTypeHistoryModalComponent,\r\n EntityChangeDetailModalComponent,\r\n DateRangePickerInitialValueSetterDirective,\r\n DatePickerInitialValueSetterDirective,\r\n PasswordInputWithShowButtonComponent,\r\n KeyValueListManagerComponent,\r\n MultiselectComboboxComponent,\r\n SelectComboboxComponent,\r\n ShipmentStatusPipe,\r\n ShippabilityStatusPipe,\r\n TradeClassPipe,\r\n OutsideClickDirective,\r\n FilterCheckListItemPipe,\r\n OrderByPipe,\r\n UnitOfMeasurePipe,\r\n ],\r\n providers: [\r\n DateTimeService,\r\n AppLocalizationService,\r\n AppNavigationService,\r\n { provide: BsDatepickerConfig, useFactory: NgxBootstrapDatePickerConfigService.getDatepickerConfig },\r\n { provide: BsDaterangepickerConfig, useFactory: NgxBootstrapDatePickerConfigService.getDaterangepickerConfig },\r\n { provide: BsLocaleService, useFactory: NgxBootstrapDatePickerConfigService.getDatepickerLocale },\r\n ]\r\n})\r\nexport class AppCommonModule {\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: AppCommonModule,\r\n providers: [AppAuthService, AppRouteGuard],\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { XmlHttpRequestHelper } from '@shared/helpers/XmlHttpRequestHelper';\nimport { LocalStorageService } from '@shared/utils/local-storage.service';\n\n@Injectable()\nexport class AppAuthService {\n logout(reload?: boolean, returnUrl?: string): void {\n let customHeaders = {\n [abp.multiTenancy.tenantIdCookieName]: abp.multiTenancy.getTenantIdCookie(),\n Authorization: 'Bearer ' + abp.auth.getToken(),\n };\n\n XmlHttpRequestHelper.ajax(\n 'GET',\n AppConsts.remoteServiceBaseUrl + '/api/TokenAuth/LogOut',\n customHeaders,\n null,\n () => {\n abp.auth.clearToken();\n abp.auth.clearRefreshToken();\n new LocalStorageService().removeItem(AppConsts.authorization.encrptedAuthTokenName, () => {\n if (reload !== false) {\n if (returnUrl) {\n location.href = returnUrl;\n } else {\n location.href = '';\n }\n }\n });\n }\n );\n }\n}\n","import { PermissionCheckerService, RefreshTokenService } from 'abp-ng2-module';\r\nimport { Injectable } from '@angular/core';\r\nimport {\r\n ActivatedRouteSnapshot,\r\n CanActivate,\r\n CanActivateChild,\r\n CanLoad,\r\n Router,\r\n RouterStateSnapshot,\r\n} from '@angular/router';\r\nimport { AppSessionService } from '@shared/common/session/app-session.service';\r\nimport { UrlHelper } from '@shared/helpers/UrlHelper';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { of, Subject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class AppRouteGuard implements CanActivate, CanActivateChild, CanLoad {\r\n constructor(\r\n private _permissionChecker: PermissionCheckerService,\r\n private _router: Router,\r\n private _sessionService: AppSessionService,\r\n private _refreshTokenService: RefreshTokenService\r\n ) {}\r\n\r\n canActivateInternal(data: any, state: RouterStateSnapshot): Observable {\r\n if (UrlHelper.isInstallUrl(location.href)) {\r\n return of(true);\r\n }\r\n\r\n if (!this._sessionService.user) {\r\n let sessionObservable = new Subject();\r\n\r\n this._refreshTokenService.tryAuthWithRefreshToken().subscribe(\r\n (autResult: boolean) => {\r\n if (autResult) {\r\n sessionObservable.next(true);\r\n sessionObservable.complete();\r\n location.reload();\r\n } else {\r\n sessionObservable.next(false);\r\n sessionObservable.complete();\r\n this._router.navigate(['/account/login']);\r\n }\r\n },\r\n (error) => {\r\n sessionObservable.next(false);\r\n sessionObservable.complete();\r\n this._router.navigate(['/account/login']);\r\n }\r\n );\r\n return sessionObservable;\r\n }\r\n\r\n if (!data || !data['permission']) {\r\n return of(true);\r\n }\r\n\r\n if (this._permissionChecker.isGranted(data['permission'])) {\r\n return of(true);\r\n }\r\n\r\n this._router.navigate([this.selectBestRoute()]);\r\n return of(false);\r\n }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\r\n return this.canActivateInternal(route.data, state);\r\n }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\r\n return this.canActivate(route, state);\r\n }\r\n\r\n canLoad(route: any): Observable | Promise | boolean {\r\n return this.canActivateInternal(route.data, null);\r\n }\r\n\r\n selectBestRoute(): string {\r\n if (!this._sessionService.user) {\r\n return '/account/login';\r\n }\r\n\r\n if (this._permissionChecker.isGranted('Pages.Administration.Host.Dashboard')) {\r\n return '/app/admin/hostDashboard';\r\n }\r\n\r\n if (this._permissionChecker.isGranted('Pages.Tenant.Dashboard')) {\r\n return '/app/main/dashboard';\r\n }\r\n\r\n if (this._permissionChecker.isGranted('Pages.Tenants')) {\r\n return '/app/admin/organizations';\r\n }\r\n\r\n if (this._permissionChecker.isGranted('Pages.Tenant.InventoryOwnerShipments')) {\r\n return '/app/admin/orders';\r\n }\r\n\r\n if (this._permissionChecker.isGranted('Pages.Tenant.CarrierShipments')) {\r\n return '/app/admin/carrier-orders';\r\n }\r\n\r\n if (this._permissionChecker.isGranted('Pages.Administration.Users')) {\r\n return '/app/admin/users';\r\n }\r\n\r\n return '/app/notifications';\r\n }\r\n}\r\n","import { Component, Injector, ViewChild } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport {\n AuditLogServiceProxy,\n EntityChangeListDto,\n EntityPropertyChangeDto,\n} from '@shared/service-proxies/service-proxies';\nimport { DateTime } from 'luxon';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { DateTimeService } from '../timing/date-time.service';\n\n@Component({\n selector: 'entityChangeDetailModal',\n templateUrl: './entity-change-detail-modal.component.html',\n})\nexport class EntityChangeDetailModalComponent extends AppComponentBase {\n @ViewChild('entityChangeDetailModal', { static: true }) modal: ModalDirective;\n\n active = false;\n entityPropertyChanges: EntityPropertyChangeDto[];\n entityChange: EntityChangeListDto;\n\n constructor(\n injector: Injector,\n private _auditLogService: AuditLogServiceProxy,\n private _dateTimeService: DateTimeService\n ) {\n super(injector);\n }\n\n getPropertyChangeValue(propertyChangeValue, propertyTypeFullName) {\n if (!propertyChangeValue) {\n return propertyChangeValue;\n }\n propertyChangeValue = propertyChangeValue.replace(/^['\"]+/g, '').replace(/['\"]+$/g, '');\n if (this.isDate(propertyChangeValue, propertyTypeFullName)) {\n return this._dateTimeService.formatDate(\n this._dateTimeService.fromISODateString(propertyChangeValue),\n 'yyyy-LL-dd HH:mm:ss'\n );\n }\n\n if (propertyChangeValue === 'null') {\n return '';\n }\n\n return propertyChangeValue;\n }\n\n isDate(date, propertyTypeFullName): boolean {\n return propertyTypeFullName.includes('DateTime') && !isNaN(Date.parse(date).valueOf());\n }\n\n show(record: EntityChangeListDto): void {\n const self = this;\n self.active = true;\n self.entityChange = record;\n\n this._auditLogService.getEntityPropertyChanges(record.id).subscribe((result) => {\n self.entityPropertyChanges = result;\n });\n\n self.modal.show();\n }\n\n close(): void {\n this.active = false;\n this.modal.hide();\n }\n}\n","\n
\n
\n
\n

\n {{ 'Detail' | localize }} - {{ entityChange.entityTypeFullName | localize }}\n
\n \n

\n \n
\n
\n
\n \n
\n

\n {{ propertyChange.propertyName }}\n

\n
\n \n \n
\n \n
\n
\n
\n {{ 'OriginalValue' | localize }}\n
\n
\n {{\n getPropertyChangeValue(\n propertyChange.originalValue,\n propertyChange.propertyTypeFullName\n )\n }}\n
\n
\n
\n
{{ 'NewValue' | localize }}
\n
\n {{\n getPropertyChangeValue(\n propertyChange.newValue,\n propertyChange.propertyTypeFullName\n )\n }}\n
\n
\n
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n\n","import { Component, Injector, ViewChild } from '@angular/core';\nimport { EntityChangeDetailModalComponent } from './entity-change-detail-modal.component';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { AuditLogServiceProxy, EntityChangeListDto } from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { LazyLoadEvent } from 'primeng/api';\nimport { Paginator } from 'primeng/paginator';\nimport { Table } from 'primeng/table';\nimport { finalize } from 'rxjs/operators';\n\nexport interface IEntityTypeHistoryModalOptions {\n entityTypeFullName: string;\n entityTypeDescription: string;\n entityId: string;\n}\n\n@Component({\n selector: 'entityTypeHistoryModal',\n templateUrl: './entity-type-history-modal.component.html',\n})\nexport class EntityTypeHistoryModalComponent extends AppComponentBase {\n @ViewChild('entityChangeDetailModal', { static: true }) entityChangeDetailModal: EntityChangeDetailModalComponent;\n @ViewChild('modal', { static: true }) modal: ModalDirective;\n @ViewChild('dataTable', { static: true }) dataTable: Table;\n @ViewChild('paginator', { static: true }) paginator: Paginator;\n\n options: IEntityTypeHistoryModalOptions;\n isShown = false;\n isInitialized = false;\n filterText = '';\n tenantId?: number;\n entityHistoryEnabled: false;\n\n constructor(injector: Injector, private _auditLogService: AuditLogServiceProxy) {\n super(injector);\n }\n\n show(options: IEntityTypeHistoryModalOptions): void {\n this.options = options;\n this.modal.show();\n }\n\n refreshTable(): void {\n this.paginator.changePage(this.paginator.getPage());\n }\n\n close(): void {\n this.modal.hide();\n }\n\n shown(): void {\n this.isShown = true;\n this.getRecordsIfNeeds(null);\n }\n\n getRecordsIfNeeds(event?: LazyLoadEvent): void {\n if (!this.isShown) {\n return;\n }\n\n this.getRecords(event);\n this.isInitialized = true;\n }\n\n getRecords(event?: LazyLoadEvent): void {\n this.primengTableHelper.showLoadingIndicator();\n\n this._auditLogService\n .getEntityTypeChanges(\n this.options.entityTypeFullName,\n this.options.entityId,\n this.primengTableHelper.getSorting(this.dataTable),\n this.primengTableHelper.getMaxResultCount(this.paginator, event),\n this.primengTableHelper.getSkipCount(this.paginator, event)\n )\n .pipe(finalize(() => this.primengTableHelper.hideLoadingIndicator()))\n .subscribe((result) => {\n this.primengTableHelper.totalRecordsCount = result.totalCount;\n this.primengTableHelper.records = result.items;\n this.primengTableHelper.hideLoadingIndicator();\n });\n }\n\n showEntityChangeDetails(record: EntityChangeListDto): void {\n this.entityChangeDetailModal.show(record);\n }\n}\n","\n
\n
\n
\n

\n {{\n ('ChangeLogs' | localize) +\n ':' +\n (options.entityTypeFullName | localize) +\n '(' +\n options.entityTypeDescription +\n ')'\n }}\n

\n \n
\n
\n \n
\n \n \n \n \n {{ 'Select' | localize }}\n \n \n {{ 'Action' | localize }}\n \n \n {{ 'UserName' | localize }}\n \n \n {{ 'Time' | localize }}\n \n \n \n \n \n \n \n \n \n \n \n {{ 'Action' | localize }}\n {{ record.changeTypeName }}\n \n \n {{ 'UserName' | localize }}\n {{ record.userName }}\n \n \n {{ 'Time' | localize }}\n {{ record.changeTime | luxonFormat: 'F' }}\n \n \n \n \n
\n {{ 'NoData' | localize }}\n
\n
\n \n
\n
\n \n
\n\n
\n \n
\n
\n
\n\n\n","import { InjectionToken } from '@angular/core';\n\nexport const SelectedValuesOptions = new InjectionToken('selectedValues');\nexport const AllValuesOptions = new InjectionToken('allValues');\nexport const ComponentInstanceOptions = new InjectionToken('componentInstance');\n","import { Component, OnInit, Injector } from '@angular/core';\nimport { InputTypeComponentBase } from '../input-type-component-base';\n\n@Component({\n selector: 'app-checkbox-input-type',\n templateUrl: './checkbox-input-type.component.html',\n styleUrls: ['./checkbox-input-type.component.css'],\n})\nexport class CheckboxInputTypeComponent extends InputTypeComponentBase implements OnInit {\n checked: boolean;\n\n constructor(injector: Injector) {\n super(injector);\n }\n\n ngOnInit() {\n this.checked = this.selectedValues && this.selectedValues[0] && this.selectedValues[0] === 'true';\n }\n\n getSelectedValues(): string[] {\n return [this.checked.toString()];\n }\n}\n","
\n \n
\n","import { Component, OnInit, Injector } from '@angular/core';\nimport { InputTypeComponentBase } from '../input-type-component-base';\n\n@Component({\n selector: 'app-combobox-input-type',\n templateUrl: './combobox-input-type.component.html',\n styleUrls: ['./combobox-input-type.component.css'],\n})\nexport class ComboboxInputTypeComponent extends InputTypeComponentBase implements OnInit {\n selectedValue: string;\n\n constructor(injector: Injector) {\n super(injector);\n }\n\n ngOnInit() {\n this.selectedValue = this.selectedValues[0];\n }\n\n getSelectedValues(): string[] {\n if (!this.selectedValue) {\n return [];\n }\n return [this.selectedValue];\n }\n}\n","\n","import { AppComponentBase } from '@shared/common/app-component-base';\nimport { Injector } from '@angular/core';\nimport { SelectedValuesOptions, AllValuesOptions, ComponentInstanceOptions } from './InputTypeConsts';\n\nexport abstract class InputTypeComponentBase extends AppComponentBase {\n selectedValues: string[];\n allValues: string[];\n\n constructor(injector: Injector) {\n super(injector);\n this.selectedValues = injector.get(SelectedValuesOptions);\n this.allValues = injector.get(AllValuesOptions);\n (injector.get(ComponentInstanceOptions) as any)(this);\n }\n\n abstract getSelectedValues(): string[];\n}\n","import { Component, OnInit, Injector } from '@angular/core';\r\nimport { InputTypeComponentBase } from '../input-type-component-base';\r\n\r\n@Component({\r\n selector: 'app-multiple-select-input-type',\r\n templateUrl: './multiple-select-combobox-input-type.component.html',\r\n})\r\nexport class MultipleSelectComboboxInputTypeComponent extends InputTypeComponentBase implements OnInit {\r\n filteredValues: string[];\r\n\r\n constructor(injector: Injector) {\r\n super(injector);\r\n }\r\n\r\n ngOnInit() {\r\n this.filteredValues = this.allValues;\r\n }\r\n\r\n getSelectedValues(): string[] {\r\n if (!this.selectedValues) {\r\n return [];\r\n }\r\n return this.selectedValues;\r\n }\r\n\r\n filter(event) {\r\n this.filteredValues = this.allValues.filter((item) => item.toLowerCase().includes(event.query.toLowerCase()));\r\n }\r\n}\r\n","\r\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { CheckListItem } from './CheckListItem';\n\n@Pipe({\n name: 'filterCheckListItem'\n})\nexport class FilterCheckListItemPipe implements PipeTransform {\n\n transform(values: CheckListItem[], filterText): any[] {\n return filterText != undefined && filterText.length > 0 ? values.filter(v => v.label.toLocaleLowerCase().indexOf(filterText.toLocaleLowerCase()) >= 0) : values;\n }\n\n}","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\r\nimport { CheckListGroup } from './CheckListGroup';\r\nimport { CheckListItem } from './CheckListItem';\r\n\r\n@Component({\r\n selector: 'multiselect-combobox',\r\n templateUrl: './multiselect-combobox.component.html',\r\n styleUrls: ['./multiselect-combobox.component.less'],\r\n})\r\nexport class MultiselectComboboxComponent implements OnChanges {\r\n @Input() name: string;\r\n @Input() label: string;\r\n @Input() unselectedOptionLabel: string = 'Select Items';\r\n @Input() data: CheckListGroup[];\r\n @Output() dataChange = new EventEmitter();\r\n\r\n selectedItems: CheckListItem[] = new Array();\r\n isOpened = false;\r\n filterText = '';\r\n\r\n ngOnChanges({ data }: SimpleChanges) {\r\n setTimeout(() => this.updateSelected(), 1);\r\n }\r\n\r\n onChange() {\r\n this.updateSelected();\r\n this.dataChange.emit(this.data);\r\n }\r\n\r\n updateSelected() {\r\n this.selectedItems = new Array();\r\n this.data.forEach(i => {\r\n this.selectedItems = this.selectedItems.concat(i.items.filter((i) => i.checked));\r\n });\r\n }\r\n\r\n onOutsideClick() {\r\n this.isOpened = false;\r\n }\r\n\r\n processOpen() {\r\n if (!this.isOpened) {\r\n this.isOpened = true;\r\n this.filterText = '';\r\n\r\n setTimeout(() => {\r\n document.getElementById(this.name + 'search').focus();\r\n });\r\n }\r\n }\r\n\r\n clear() {\r\n this.data.forEach(g => g.items.forEach(i => i.checked = false));\r\n this.updateSelected();\r\n this.dataChange.emit(this.data);\r\n }\r\n}\r\n","
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
0\">\r\n {{this.selectedItems[0].label}}\r\n 1\">+{{this.selectedItems.length - 1}}\r\n
\r\n\r\n
\r\n {{ unselectedOptionLabel }}\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n 0\">{{ group.label }}\r\n \r\n
\r\n
\r\n\r\n Clear All\r\n
\r\n
\r\n \r\n
\r\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Output,\n} from '@angular/core';\n\n@Directive({\n selector: '[outsideClick]',\n})\nexport class OutsideClickDirective {\n @Output() outsideClick = new EventEmitter();\n\n constructor(private elementRef: ElementRef) {}\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(e: Event) {\n this.handleOutsideClick(e.target as HTMLElement);\n }\n\n private handleOutsideClick(targetElement: HTMLElement) {\n if (!targetElement) {\n return;\n }\n\n if (!this.elementRef.nativeElement.contains(targetElement)) {\n this.outsideClick.emit();\n }\n }\n}\n","import { Component, EventEmitter, forwardRef, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { ControlValueAccessor, FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { noop } from 'lodash';\r\nimport { BehaviorSubject, combineLatest } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged, filter, map, pluck, startWith } from 'rxjs/operators';\r\nimport { SelectComboboxItem } from './select-combobox-item.model';\r\n\r\n@Component({\r\n selector: 'app-select-combobox',\r\n templateUrl: './select-combobox.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => SelectComboboxComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class SelectComboboxComponent implements ControlValueAccessor, OnChanges, OnInit, OnDestroy {\r\n @Input() placeholder: string;\r\n @Input() disableToggling = false;\r\n @Input() multiple = false;\r\n\r\n @Input() items: SelectComboboxItem[];\r\n @Input() createItem?: SelectComboboxItem;\r\n @Output() addNewClick = new EventEmitter();\r\n\r\n readonly filterTextCtrl = new FormControl();\r\n\r\n isOpened = false;\r\n isDisabled = false;\r\n\r\n onChanged: (selectedItems: any) => void = noop;\r\n onTouched: () => void = noop;\r\n\r\n private readonly _childItems$ = new BehaviorSubject([]);\r\n private readonly _selectedValue$ = new BehaviorSubject<{ emitEvent: boolean; value: any }>({ emitEvent: false, value: undefined });\r\n\r\n private readonly _filterText$ = this.filterTextCtrl.valueChanges.pipe(\r\n startWith(undefined),\r\n map(filterText => filterText?.trim()?.toLowerCase() || undefined),\r\n debounceTime(200),\r\n distinctUntilChanged(),\r\n );\r\n\r\n // eslint-disable-next-line @typescript-eslint/member-ordering\r\n readonly selectedValue$ = this._selectedValue$.pipe(\r\n pluck('value'),\r\n distinctUntilChanged(),\r\n );\r\n\r\n // eslint-disable-next-line @typescript-eslint/member-ordering\r\n readonly selectedItem$ = combineLatest([this._childItems$, this.selectedValue$]).pipe(\r\n map(([childItems, selectedValue]) => {\r\n if (!this.multiple) {\r\n return selectedValue && childItems.find(item => item.value === selectedValue);\r\n } else {\r\n return selectedValue?.length ? childItems.filter(item => selectedValue.includes(item.value)) : [];\r\n }\r\n }),\r\n distinctUntilChanged(),\r\n );\r\n\r\n // eslint-disable-next-line @typescript-eslint/member-ordering\r\n readonly displayedItems$ = combineLatest([this._childItems$, this._filterText$, this.selectedItem$]).pipe(\r\n map(([childItems, filterText, selectedItem]) => {\r\n const filteredItems = filterText\r\n ? childItems.filter(item => item.label && item.label.toLowerCase().includes(filterText))\r\n : childItems;\r\n\r\n return filteredItems.map(item => ({ ...item, isSelected: this.isItemSelected(selectedItem, item) }));\r\n })\r\n );\r\n\r\n readonly itemsTrackBy = (item: SelectComboboxItem) => item.value;\r\n\r\n ngOnInit() {\r\n this._selectedValue$\r\n .pipe(filter(({ emitEvent }) => emitEvent))\r\n .subscribe(({ value }) => {\r\n if (!this.multiple) {\r\n this.closeDropdown();\r\n }\r\n this.onTouched();\r\n this.onChanged(value);\r\n });\r\n }\r\n\r\n ngOnChanges({ items }: SimpleChanges): void {\r\n if (items) {\r\n this._childItems$.next(this.items || []);\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._childItems$.complete();\r\n this._selectedValue$.complete();\r\n }\r\n\r\n addNewItem() {\r\n this.addNewClick.emit(this.createItem);\r\n this.closeDropdown();\r\n }\r\n\r\n toggleItem(item: SelectComboboxItem) {\r\n const value = this.getValueOnItemClick(item);\r\n\r\n this._selectedValue$.next({\r\n emitEvent: true,\r\n value: value,\r\n });\r\n }\r\n\r\n closeDropdown() {\r\n this.isOpened = false;\r\n }\r\n\r\n openDropdown() {\r\n if (this.isDisabled) {\r\n return;\r\n }\r\n\r\n this.onTouched();\r\n\r\n if (!this.isOpened) {\r\n this.isOpened = true;\r\n }\r\n }\r\n\r\n onFilterTextBlur() {\r\n this.onTouched();\r\n }\r\n\r\n writeValue(value: any): void {\r\n this._selectedValue$.next({ emitEvent: false, value });\r\n }\r\n\r\n registerOnChange(onChanged: (value: any) => void): void {\r\n this.onChanged = onChanged || noop;\r\n }\r\n\r\n registerOnTouched(onTouched: () => void): void {\r\n this.onTouched = onTouched || noop;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this.isDisabled = isDisabled;\r\n\r\n if (isDisabled) {\r\n this.filterTextCtrl.disable();\r\n this.isOpened = false;\r\n } else {\r\n this.filterTextCtrl.enable();\r\n }\r\n }\r\n\r\n private getValueOnItemClick(item: SelectComboboxItem) {\r\n if (!this.multiple) {\r\n const previousValue = this._selectedValue$.value?.value;\r\n\r\n return !this.disableToggling && previousValue === item.value\r\n ? undefined\r\n : item.value;\r\n } else {\r\n const previousValues = this._selectedValue$.value?.value;\r\n\r\n if (previousValues.includes(item.value)) {\r\n return previousValues.filter(pv => pv !== item.value);\r\n } else {\r\n return [...previousValues, item.value];\r\n }\r\n }\r\n }\r\n\r\n private isItemSelected(selectedItem: SelectComboboxItem | SelectComboboxItem[], item: SelectComboboxItem): boolean {\r\n if (!this.multiple) {\r\n return selectedItem === item;\r\n } else {\r\n return (selectedItem as SelectComboboxItem[]).includes(item);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{item.label}}\r\n\r\n \r\n
\r\n
\r\n
\r\n {{selectedItem.label}}\r\n
\r\n\r\n \r\n {{ placeholder }}\r\n \r\n
\r\n  \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n {{'SelectComboboxGeneric_NoMatches' | localize: filterTextCtrl.value}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Injector } from '@angular/core';\nimport { InputTypeComponentBase } from '../input-type-component-base';\n\n@Component({\n selector: 'app-single-line-string-input-type',\n templateUrl: './single-line-string-input-type.component.html',\n styleUrls: ['./single-line-string-input-type.component.css'],\n})\nexport class SingleLineStringInputTypeComponent extends InputTypeComponentBase implements OnInit {\n selectedValue: string;\n\n constructor(injector: Injector) {\n super(injector);\n }\n\n getSelectedValues(): string[] {\n if (!this.selectedValue) {\n return [];\n }\n return [this.selectedValue];\n }\n\n ngOnInit(): void {\n this.selectedValue = this.selectedValues[0];\n }\n}\n","\n","import { Component, Injector, Input } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { findIndex as _findIndex, remove as _remove } from 'lodash-es';\n\n@Component({\n selector: 'key-value-list-manager',\n templateUrl: './key-value-list-manager.component.html',\n styleUrls: ['./key-value-list-manager.component.css'],\n})\nexport class KeyValueListManagerComponent extends AppComponentBase {\n @Input() header: string;\n @Input() keyPlaceHolder: string;\n @Input() valuePlaceHolder: string;\n @Input() items: { key: string; value: string }[];\n\n addOrEditKey = '';\n addOrEditValue = '';\n\n isEdit = false;\n\n constructor(injector: Injector) {\n super(injector);\n if (!this.items) {\n this.items = [];\n }\n\n if (!this.keyPlaceHolder) {\n this.l('Key');\n }\n\n if (!this.valuePlaceHolder) {\n this.l('Value');\n }\n }\n\n onKeyChange() {\n let itemIndex = _findIndex(this.items, (item) => item.key === this.addOrEditKey);\n this.isEdit = itemIndex !== -1;\n if (this.isEdit) {\n this.addOrEditValue = this.items[itemIndex].value;\n }\n }\n\n openItemEdit(keyValueItem: { key: string; value: string }) {\n this.addOrEditKey = keyValueItem.key;\n this.addOrEditValue = keyValueItem.value;\n\n this.isEdit = true;\n }\n\n removeItem(keyValueItem: { key: string; value: string }) {\n _remove(this.items, (item) => item.key === keyValueItem.key);\n this.onKeyChange();\n }\n\n addOrEdit() {\n if (!this.addOrEditKey || !this.addOrEditValue) {\n return;\n }\n\n let newItem = {\n key: this.addOrEditKey,\n value: this.addOrEditValue,\n };\n\n let indexOfItemInArray = _findIndex(this.items, (item) => item.key === newItem.key);\n if (indexOfItemInArray !== -1) {\n //edit\n this.items.splice(indexOfItemInArray, 1, newItem);\n } else {\n this.items.push(newItem);\n }\n\n this.addOrEditKey = '';\n this.addOrEditValue = '';\n }\n\n getItems(): { key: string; value: string }[] {\n return this.items;\n }\n}\n","
\n \n
\n \n \n \n
\n
\n \n \"{{ keyValueItem.key }}\" : \"{{ keyValueItem.value }}\"\n\n \n\n \n
\n
\n\n","import { LocalizationService } from 'abp-ng2-module';\nimport { Injectable } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\n\n@Injectable()\nexport class AppLocalizationService extends LocalizationService {\n l(key: string, ...args: any[]): string {\n args.unshift(key);\n args.unshift(AppConsts.localization.defaultLocalizationSourceName);\n return this.ls.apply(this, args);\n }\n\n ls(sourcename: string, key: string, ...args: any[]): string {\n let localizedText = this.localize(key, sourcename);\n\n if (!localizedText) {\n localizedText = key;\n }\n\n if (!args || !args.length) {\n return localizedText;\n }\n\n args.unshift(localizedText);\n return abp.utils.formatString.apply(this, args);\n }\n}\n","import { Component, EventEmitter, Injector, Output, ViewChild } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { NameValueDto, PagedResultDtoOfNameValueDto } from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { LazyLoadEvent } from 'primeng/api';\nimport { Paginator } from 'primeng/paginator';\nimport { Table } from 'primeng/table';\nimport { Observable } from 'rxjs';\nimport { merge as _merge } from 'lodash-es';\nimport { finalize } from 'rxjs/operators';\n\nexport interface ICommonLookupModalOptions {\n title?: string;\n isFilterEnabled?: boolean;\n dataSource: (\n skipCount: number,\n maxResultCount: number,\n filter: string,\n tenantId?: number,\n excludeCurrentUser?: boolean\n ) => Observable;\n canSelect?: (item: NameValueDto) => boolean | Observable;\n loadOnStartup?: boolean;\n pageSize?: number;\n}\n\n//For more modal options http://valor-software.com/ngx-bootstrap/#/modals#modal-directive\n\n@Component({\n selector: 'commonLookupModal',\n templateUrl: './common-lookup-modal.component.html',\n})\nexport class CommonLookupModalComponent extends AppComponentBase {\n static defaultOptions: ICommonLookupModalOptions = {\n dataSource: undefined,\n canSelect: () => true,\n loadOnStartup: true,\n isFilterEnabled: true,\n pageSize: AppConsts.grid.defaultPageSize,\n };\n\n @Output() itemSelected: EventEmitter = new EventEmitter();\n\n @ViewChild('modal', { static: true }) modal: ModalDirective;\n @ViewChild('dataTable', { static: true }) dataTable: Table;\n @ViewChild('paginator', { static: true }) paginator: Paginator;\n\n options: ICommonLookupModalOptions = _merge({});\n\n isShown = false;\n isInitialized = false;\n filterText = '';\n excludeCurrentUser = true;\n tenantId?: number;\n\n constructor(injector: Injector) {\n super(injector);\n }\n\n configure(options: ICommonLookupModalOptions): void {\n this.options = _merge(\n {},\n CommonLookupModalComponent.defaultOptions,\n { title: this.l('SelectAnItem') },\n options\n );\n }\n\n show(): void {\n if (!this.options) {\n throw Error(\n 'Should call CommonLookupModalComponent.configure once before CommonLookupModalComponent.show!'\n );\n }\n\n this.modal.show();\n }\n\n refreshTable(): void {\n this.paginator.changePage(this.paginator.getPage());\n }\n\n close(): void {\n this.modal.hide();\n }\n\n shown(): void {\n this.isShown = true;\n this.getRecordsIfNeeds(null);\n }\n\n getRecordsIfNeeds(event?: LazyLoadEvent): void {\n if (!this.isShown) {\n return;\n }\n\n if (!this.options.loadOnStartup && !this.isInitialized) {\n return;\n }\n\n this.getRecords(event);\n this.isInitialized = true;\n }\n\n getRecords(event?: LazyLoadEvent): void {\n const maxResultCount = this.primengTableHelper.getMaxResultCount(this.paginator, event);\n const skipCount = this.primengTableHelper.getSkipCount(this.paginator, event);\n if (this.primengTableHelper.shouldResetPaging(event)) {\n this.paginator.changePage(0);\n\n if (this.primengTableHelper.records && this.primengTableHelper.records.length > 0) {\n return;\n }\n }\n\n this.primengTableHelper.showLoadingIndicator();\n\n this.options\n .dataSource(skipCount, maxResultCount, this.filterText, this.tenantId, this.excludeCurrentUser)\n .pipe(finalize(() => this.primengTableHelper.hideLoadingIndicator()))\n .subscribe((result) => {\n this.primengTableHelper.totalRecordsCount = result.totalCount;\n this.primengTableHelper.records = result.items;\n this.primengTableHelper.hideLoadingIndicator();\n });\n }\n\n selectItem(item: NameValueDto) {\n const boolOrPromise = this.options.canSelect(item);\n if (!boolOrPromise) {\n return;\n }\n\n if (boolOrPromise === true) {\n this.itemSelected.emit(item);\n this.close();\n return;\n }\n\n //assume as observable\n (boolOrPromise as Observable).subscribe((result) => {\n if (result) {\n this.itemSelected.emit(item);\n this.close();\n }\n });\n }\n}\n","\n
\n
\n
\n

\n {{ options.title }}\n

\n \n
\n
\n
\n
\n \n
\n \n
\n
\n\n \n
\n \n \n \n \n {{ 'Select' | localize }}\n \n \n {{ 'Name' | localize }}\n \n \n \n \n \n \n \n \n \n \n \n {{ 'Name' | localize }}\n {{ record.name }}\n \n \n \n \n
\n {{ 'NoData' | localize }}\n
\n
\n \n
\n
\n \n
\n
\n\n
\n \n
\n
\n
\n\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'password-input-with-show-button',\n templateUrl: './password-input-with-show-button.component.html',\n})\nexport class PasswordInputWithShowButtonComponent {\n @Input() data: string;\n @Output() dataChange = new EventEmitter();\n isVisible = false;\n\n toggleVisibility(): void {\n this.isVisible = !this.isVisible;\n }\n\n onChange() {\n this.dataChange.emit(this.data);\n }\n}\n","
\n \n
\n \n
\n
\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { Many, orderBy } from 'lodash';\r\n\r\n@Pipe({\r\n name: 'orderBy'\r\n})\r\nexport class OrderByPipe implements PipeTransform {\r\n transform(array: any, sortBy: string, order?: Many): any[] {\r\n const sortOrder = order ? order : 'asc'; // setting default ascending order\r\n\r\n return orderBy(array, [sortBy], sortOrder);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ShipmentStatus } from '@shared/service-proxies/service-proxies';\r\n\r\n@Pipe({ name: 'shipmentStatus' })\r\nexport class ShipmentStatusPipe implements PipeTransform {\r\n\r\n transform(status: number): string {\r\n if (status === undefined || status === null) {\r\n return '';\r\n }\r\n\r\n switch (status) {\r\n case ShipmentStatus.Expected: return 'Expected';\r\n case ShipmentStatus.Loaded: return 'Loaded';\r\n case ShipmentStatus.Transfer: return 'Transfer';\r\n case ShipmentStatus.Receiving: return 'Receiving';\r\n case ShipmentStatus.Loading: return 'Loading';\r\n case ShipmentStatus.InProcess: return 'In Process';\r\n case ShipmentStatus.Suspended: return 'Suspended';\r\n case ShipmentStatus.Ready: return 'Ready';\r\n case ShipmentStatus.Staged: return 'Staged';\r\n case ShipmentStatus.CheckedIn: return 'Checked In';\r\n case ShipmentStatus.Closed: return 'Closed';\r\n case ShipmentStatus.Complete: return 'Complete';\r\n case ShipmentStatus.Cancelled: return 'Cancelled';\r\n default: return 'Unknown';\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ShippabilityStatus } from '@shared/service-proxies/service-proxies';\r\n\r\nexport function transformShippabilityStatusToString(status: number): string {\r\n if (status === undefined) {\r\n return '-';\r\n }\r\n\r\n switch (status) {\r\n case ShippabilityStatus.AvailableForOrder: return 'Available for Orders';\r\n case ShippabilityStatus.Hold: return 'Hold';\r\n case ShippabilityStatus.InProcess: return 'In Process';\r\n case ShippabilityStatus.InspectDamagedExpired: return 'Inspect / Damaged / Expired';\r\n case ShippabilityStatus.PickedStaged: return 'Picked / Staged';\r\n default: return 'Unknown';\r\n }\r\n}\r\n\r\n@Pipe({ name: 'shippabilityStatus' })\r\nexport class ShippabilityStatusPipe implements PipeTransform {\r\n\r\n transform(status: number): string {\r\n return transformShippabilityStatusToString(status);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ShipmentType, TradeClass } from '@shared/service-proxies/service-proxies';\r\n\r\ntype TradeClassMap = { [key in keyof typeof TradeClass]: string };\r\n\r\nconst TRADE_CLASSES_MAP: TradeClassMap = {\r\n 0: 'Import',\r\n 1: 'Export',\r\n 2: 'Domestic',\r\n 'Unknown': 'Unknown',\r\n 'Import': 'Import',\r\n 'Export': 'Export',\r\n 'Domestic': 'Domestic',\r\n} as const;\r\n\r\nexport function listTradeClasses(): TradeClass[] {\r\n // Due to map containing mappings from number and from string\r\n // need to filter out numbers\r\n return Object.keys(TRADE_CLASSES_MAP).filter(x => Number.isNaN(Number(x))) as unknown as TradeClass[];\r\n}\r\n\r\nexport function tradeClassToString(tradeClass: TradeClass) {\r\n return TRADE_CLASSES_MAP[tradeClass];\r\n}\r\n\r\nexport function getTradeClassesForShipmentType(shipmentType: ShipmentType): TradeClass[] {\r\n switch (shipmentType) {\r\n case ShipmentType.Inbound:\r\n return [TradeClass.Import, TradeClass.Domestic];\r\n break;\r\n case ShipmentType.Outbound:\r\n return [TradeClass.Export, TradeClass.Domestic];\r\n break;\r\n default: {\r\n // Ensure no other type exists\r\n const exhaustiveCheck: never = shipmentType;\r\n throw new Error(exhaustiveCheck);\r\n }\r\n }\r\n}\r\n\r\n@Pipe({ name: 'tradeClass' })\r\nexport class TradeClassPipe implements PipeTransform {\r\n transform(tradeClass: TradeClass): unknown {\r\n return tradeClassToString(tradeClass);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { flow, partial } from 'lodash-es';\r\n\r\nconst UnitOfMeasures = ['CS', 'EA', 'PA', 'DR', 'PZ', 'BG', 'CO', 'TO'] as const;\r\n\r\nexport type UnitOfMeasure = typeof UnitOfMeasures[number];\r\n\r\ntype UnitOfMeasureMap = { [key in UnitOfMeasure]: string; };\r\n\r\nconst UNIT_OF_MEASURE_MAP: UnitOfMeasureMap = {\r\n 'CS': 'Case',\r\n 'EA': 'Each',\r\n 'PA': 'Pallet',\r\n 'DR': 'Drum',\r\n 'PZ': 'Pail',\r\n 'BG': 'Bag',\r\n 'CO': 'Combo',\r\n 'TO': 'Tote'\r\n};\r\n\r\nfunction uomToString(unitOfMeasure: string) {\r\n return UNIT_OF_MEASURE_MAP[unitOfMeasure];\r\n}\r\n\r\nfunction quantifyUom(quantity: number, formattedUom: string) {\r\n return Math.abs(quantity) === 1 ? formattedUom : formattedUom + 's';\r\n}\r\n\r\nexport function formatUnitOfMeasure(unitOfMeasure: string, quantity: number) {\r\n const quantify = partial(quantifyUom, quantity || 0);\r\n const pipeline = flow(uomToString, quantify);\r\n\r\n return pipeline(unitOfMeasure);\r\n}\r\n\r\n@Pipe({ name: 'uom' })\r\nexport class UnitOfMeasurePipe implements PipeTransform {\r\n transform(unitOfMeasure: string, quantity: number): string {\r\n return formatUnitOfMeasure(unitOfMeasure, quantity);\r\n }\r\n}\r\n","import { Component, Injector, ViewChild, OnDestroy } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { timer, Subscription } from 'rxjs';\nimport { AppAuthService } from '../auth/app-auth.service';\nimport { SessionServiceProxy } from '@shared/service-proxies/service-proxies';\nimport { UrlHelper } from '@shared/helpers/UrlHelper';\n\n@Component({\n selector: 'session-timeout-modal',\n templateUrl: './session-timeout-modal.component.html',\n})\nexport class SessionTimeoutModalComponent extends AppComponentBase implements OnDestroy {\n @ViewChild('modal', { static: true }) modal: ModalDirective;\n\n timeOutSecond = parseInt(this.s('App.UserManagement.SessionTimeOut.ShowTimeOutNotificationSecond')); // show inactivity modal when TimeOutSecond passed\n currentSecond: number;\n progresbarWidth = '100%';\n private subscription: Subscription;\n\n constructor(\n injector: Injector,\n private _appAuthService: AppAuthService,\n private _sessionService: SessionServiceProxy\n ) {\n super(injector);\n }\n\n ngOnDestroy(): void {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n\n start(): void {\n this.currentSecond = this.timeOutSecond;\n this.subscription = timer(0, 1000).subscribe(() => {\n this.changeNotifyContent();\n });\n this.modal.show();\n }\n\n stop(): void {\n this.currentSecond = this.timeOutSecond;\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n this.modal.hide();\n }\n\n private done(): void {\n this.stop();\n\n let isSessionLockScreenEnabled = abp.setting.getBoolean(\n 'App.UserManagement.SessionTimeOut.ShowLockScreenWhenTimedOut'\n );\n if (isSessionLockScreenEnabled) {\n this.redirectToLockScreen();\n } else {\n this._appAuthService.logout(true);\n }\n }\n\n private changeNotifyContent(): void {\n this.currentSecond--;\n if (this.currentSecond <= 0) {\n this.progresbarWidth = '0%';\n this.done();\n } else {\n this.progresbarWidth = (this.currentSecond / this.timeOutSecond) * 100 + '%';\n }\n }\n\n private redirectToLockScreen(): void {\n this._sessionService.getCurrentLoginInformations().subscribe(\n (info) => {\n if (info) {\n abp.utils.setCookieValue(\n 'userInfo',\n JSON.stringify({\n userName: info.user.userName,\n profilePictureId: info.user.profilePictureId,\n tenant: info.tenant ? info.tenant.tenancyName : 'Host',\n }),\n null,\n abp.appPath\n );\n\n const path = window.location.pathname;\n const returnUrl = encodeURI(path);\n\n this._appAuthService.logout(true, '/account/session-locked?returnUrl=' + returnUrl);\n } else {\n this._appAuthService.logout(true);\n }\n },\n () => {\n this._appAuthService.logout(true);\n }\n );\n }\n}\n","\n
\n
\n
\n
\n {{ 'YourSessionIsAboutToExpire' | localize }}\n
\n \n
\n
\n

{{ l('SessionExpireRedirectingInXSecond', currentSecond) }}

\n
\n \n {{ currentSecond }}\n
\n
\n
\n
\n \n\n","import { Component, Injector, ViewChild, AfterViewInit, OnDestroy } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { SessionTimeoutModalComponent } from './session-timeout-modal-component';\nimport { timer, fromEvent, Subject, Subscription } from 'rxjs';\nimport { takeUntil, debounceTime } from 'rxjs/operators';\nimport { LocalStorageService } from '@shared/utils/local-storage.service';\n\n@Component({\n selector: 'session-timeout',\n template: '',\n})\nexport class SessionTimeoutComponent extends AppComponentBase implements AfterViewInit, OnDestroy {\n @ViewChild(SessionTimeoutModalComponent)\n private sessionTimeOutModal: SessionTimeoutModalComponent;\n\n destroy$ = new Subject();\n\n private timeOutSecond = parseInt(this.s('App.UserManagement.SessionTimeOut.TimeOutSecond')); // show inactivity modal when TimeOutSecond passed\n private lastActivityTimeStorageKey = 'Abp.SessionTimeOut.UserLastActivityTime';\n\n private IsUserActive = true;\n private notifierIsOpened = false;\n private subscriptions: Subscription[] = [];\n\n constructor(injector: Injector, private _localStorageService: LocalStorageService) {\n super(injector);\n }\n\n ngAfterViewInit() {\n this.bindActions();\n this.writeToStorage(); // initialize store\n this.subscriptions.push(\n timer(1000, 1000).subscribe(() => {\n this.control();\n })\n );\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.subscriptions.forEach((subscription) => subscription.unsubscribe());\n }\n\n private bindActions(): void {\n this.subscriptions.push(\n fromEvent(window, 'mousemove')\n .pipe(takeUntil(this.destroy$), debounceTime(350))\n .subscribe(() => {\n this.setUserActivity();\n })\n );\n\n this.subscriptions.push(\n fromEvent(window, 'mousedown')\n .pipe(takeUntil(this.destroy$), debounceTime(350))\n .subscribe(() => {\n this.setUserActivity();\n })\n );\n\n this.subscriptions.push(\n fromEvent(window, 'click')\n .pipe(takeUntil(this.destroy$), debounceTime(350))\n .subscribe(() => {\n this.setUserActivity();\n })\n );\n\n this.subscriptions.push(\n fromEvent(window, 'scroll')\n .pipe(takeUntil(this.destroy$), debounceTime(350))\n .subscribe(() => {\n this.setUserActivity();\n })\n );\n\n this.subscriptions.push(\n fromEvent(window, 'keypress')\n .pipe(takeUntil(this.destroy$), debounceTime(350))\n .subscribe(() => {\n this.setUserActivity();\n })\n );\n }\n\n private setUserActivity(): void {\n this.IsUserActive = true;\n }\n\n private control(): void {\n this.writeToStorage();\n this.controlStorage();\n }\n\n private writeToStorage(): void {\n if (this.IsUserActive) {\n if (localStorage) {\n this._localStorageService.setItem(this.lastActivityTimeStorageKey, Date.now().toString());\n } else {\n abp.utils.setCookieValue(this.lastActivityTimeStorageKey, Date.now().toString());\n }\n }\n this.IsUserActive = false;\n }\n\n private controlStorage(): void {\n if (localStorage) {\n this._localStorageService.getItem(this.lastActivityTimeStorageKey, (err, data) => {\n if (data) {\n let lastActivityTime = parseInt(data);\n this.controlValue(lastActivityTime);\n }\n });\n } else {\n let lastActivityTime = parseInt(abp.utils.getCookieValue(this.lastActivityTimeStorageKey));\n this.controlValue(lastActivityTime);\n }\n }\n private controlValue(lastActivityTime) {\n if (Date.now() - lastActivityTime <= this.timeOutSecond * 1000) {\n if (this.notifierIsOpened) {\n this.sessionTimeOutModal.stop();\n this.notifierIsOpened = false;\n }\n return;\n }\n\n if (!this.notifierIsOpened) {\n this.sessionTimeOutModal.start();\n this.notifierIsOpened = true;\n }\n }\n}\n","import { Component, Injector, Input } from '@angular/core';\nimport { NavigationExtras, Router } from '@angular/router';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nexport class BreadcrumbItem {\n text: string;\n routerLink?: string;\n navigationExtras?: NavigationExtras;\n\n constructor(text: string, routerLink?: string, navigationExtras?: NavigationExtras) {\n this.text = text;\n this.routerLink = routerLink;\n this.navigationExtras = navigationExtras;\n }\n\n isLink(): boolean {\n return !!this.routerLink;\n }\n}\n\n@Component({\n selector: 'sub-header',\n templateUrl: './sub-header.component.html',\n})\nexport class SubHeaderComponent extends AppComponentBase {\n @Input() title: string;\n @Input() description: string;\n @Input() breadcrumbs: BreadcrumbItem[];\n\n constructor(private _router: Router, injector: Injector) {\n super(injector);\n }\n\n goToBreadcrumb(breadcrumb: BreadcrumbItem): void {\n if (!breadcrumb.routerLink) {\n return;\n }\n\n if (breadcrumb.navigationExtras) {\n this._router.navigate([breadcrumb.routerLink], breadcrumb.navigationExtras);\n } else {\n this._router.navigate([breadcrumb.routerLink]);\n }\n }\n}\n","
\n
\n
\n \n {{ title }}\n \n \n {{ title }}\n \n \n {{ title }}\n \n \n {{ title }}\n \n \n {{ title }}\n \n \n {{ title }}\n \n
\n
\n {{ description }}\n
\n 0\"\n class=\"subheader-separator subheader-separator-ver mt-2 mb-2 me-4 bg-gray-200\"\n >
\n 0\"\n class=\"breadcrumb breadcrumb-transparent breadcrumb-dot fw-bold p-0 my-2 fs-sm\"\n >\n
  • \n \n {{ breadcrumbItem.text }}\n \n {{ breadcrumbItem.text }}\n
  • \n \n
    \n
    \n \n
    \n \n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SubHeaderComponent } from './sub-header.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [SubHeaderComponent],\n exports: [SubHeaderComponent],\n})\nexport class SubheaderModule {}\n","import { DateTime } from 'luxon';\r\n\r\n/**\r\n * Removes offset from JS date.\r\n * For example if provided date time is 2023-03-14T13:08:29+02:00,\r\n * the returned value is 2023-03-14T13:08:29+00:00\r\n *\r\n * @export\r\n * @param {Date} date Input local date time.\r\n * @return {DateTime} UTC date time.\r\n */\r\nexport function removeJSDateLocalOffset(date: Date): DateTime {\r\n return DateTime.fromJSDate(date).toUTC().minus({ minutes: date.getTimezoneOffset() });\r\n}\r\n","import { AfterViewInit, Directive, ElementRef, EventEmitter, Injector, Input, Output } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\n@Directive({\n selector: '[datePickerInitialValue]',\n})\nexport class DatePickerInitialValueSetterDirective implements AfterViewInit {\n @Input() ngModel;\n hostElement: ElementRef;\n\n constructor(injector: Injector, private _element: ElementRef) {\n this.hostElement = _element;\n }\n\n ngAfterViewInit(): void {\n if (this.ngModel) {\n setTimeout(() => {\n (this.hostElement.nativeElement as any).value = this.ngModel.toFormat('D');\n });\n }\n }\n}\n","import { AfterViewInit, Directive, ElementRef, EventEmitter, Injector, Input, Output } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { DateTime } from 'luxon';\nimport { DateTimeService } from './date-time.service';\n\n@Directive({\n selector: '[dateRangePickerInitialValue]',\n})\nexport class DateRangePickerInitialValueSetterDirective implements AfterViewInit {\n @Input() ngModel;\n hostElement: ElementRef;\n\n constructor(injector: Injector, private _element: ElementRef, private _dateTimeService: DateTimeService) {\n this.hostElement = _element;\n }\n\n ngAfterViewInit(): void {\n if (this.ngModel && this.ngModel[0] && this.ngModel[1]) {\n setTimeout(() => {\n let value =\n this._dateTimeService.formatDate(this.ngModel[0], 'F') +\n ' - ' +\n this._dateTimeService.formatDate(this.ngModel[1], 'F');\n (this.hostElement.nativeElement as any).value = value;\n });\n }\n }\n}\n","import { DateTime } from 'luxon';\r\n\r\n/**\r\n * Removes offset from date time.\r\n * For example if provided date time is 2023-03-14T13:08:29+02:00,\r\n * the returned value is 2023-03-14T13:08:29+00:00\r\n *\r\n * @export\r\n * @param {DateTime} dateTime Input local date time.\r\n * @return {DateTime} UTC date time.\r\n */\r\nexport function removeDateTimeLocalOffset(dateTime: DateTime): DateTime {\r\n return dateTime.toUTC().plus({ minutes: dateTime.offset });\r\n}\r\n\r\n/**\r\n * Changes offset from date time without changing time.\r\n * For example if provided date time is 2023-03-14T13:08:29+00:00,\r\n * with timezone, that gives offset of -05:00\r\n * the returned value is 2023-03-14T13:08:29-05:00\r\n *\r\n * @export\r\n * @param {DateTime} dateTime Input date time.\r\n * @param {string} timezone Input timezone.\r\n * @return {DateTime} Date time in specified time zone with offset applied.\r\n */\r\nexport function changeDateTimeTimeZoneOffset(dateTime: DateTime, timezone: string): DateTime {\r\n const localDateTime = dateTime.setZone(timezone);\r\n return localDateTime.minus({ minutes: localDateTime.offset });\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AppLocalizationService } from '@app/shared/common/localization/app-localization.service';\r\nimport { DateTime } from 'luxon';\r\n\r\n@Injectable()\r\nexport class DateTimeService {\r\n constructor(private _appLocalizationService: AppLocalizationService) { }\r\n\r\n createDateRangePickerOptions(): any {\r\n let options = {\r\n locale: {\r\n format: 'L',\r\n applyLabel: this._appLocalizationService.l('Apply'),\r\n cancelLabel: this._appLocalizationService.l('Cancel'),\r\n customRangeLabel: this._appLocalizationService.l('CustomRange'),\r\n },\r\n min: this.fromISODateString('2015-05-01'),\r\n minDate: this.fromISODateString('2015-05-01'),\r\n max: this.getDate(),\r\n maxDate: this.getDate(),\r\n opens: 'left',\r\n ranges: {},\r\n };\r\n\r\n options.ranges[this._appLocalizationService.l('Today')] = [this.getStartOfDay(), this.getEndOfDay()];\r\n options.ranges[this._appLocalizationService.l('Yesterday')] = [\r\n this.minusDays(this.getStartOfDay(), 1),\r\n this.minusDays(this.getEndOfDay(), 1),\r\n ];\r\n options.ranges[this._appLocalizationService.l('Last7Days')] = [\r\n this.minusDays(this.getStartOfDay(), 6),\r\n this.getEndOfDay(),\r\n ];\r\n options.ranges[this._appLocalizationService.l('Last30Days')] = [\r\n this.minusDays(this.getStartOfDay(), 29),\r\n this.getEndOfDay(),\r\n ];\r\n options.ranges[this._appLocalizationService.l('ThisMonth')] = [\r\n this.getDate().startOf('month'),\r\n this.getDate().endOf('month'),\r\n ];\r\n options.ranges[this._appLocalizationService.l('LastMonth')] = [\r\n this.getDate().startOf('month').minus({ months: 1 }),\r\n this.getDate().endOf('month').minus({ months: 1 }),\r\n ];\r\n\r\n return options;\r\n }\r\n\r\n getDate(): DateTime {\r\n if (abp.clock.provider.supportsMultipleTimezone) {\r\n return DateTime.local().setZone(abp.timing.timeZoneInfo.iana.timeZoneId);\r\n } else {\r\n return DateTime.local();\r\n }\r\n }\r\n\r\n clampDate(date: DateTime, minDate: DateTime, maxDate: DateTime) {\r\n return this.maxDate(this.minDate(date, minDate), maxDate);\r\n }\r\n\r\n minDate(date: DateTime, minDate: DateTime) {\r\n return date < minDate ? minDate : date;\r\n }\r\n\r\n maxDate(date: DateTime, maxDate: DateTime) {\r\n return date > maxDate ? maxDate : date;\r\n }\r\n\r\n getUTCDate(): DateTime {\r\n return DateTime.utc();\r\n }\r\n\r\n getYear(): number {\r\n return this.getDate().year;\r\n }\r\n\r\n getStartOfDay(): DateTime {\r\n return this.getDate().startOf('day');\r\n }\r\n\r\n getStartOfWeek(): DateTime {\r\n return this.getDate().startOf('week');\r\n }\r\n\r\n getStartOfDayForDate(date: DateTime | Date): DateTime {\r\n if (!date) {\r\n return date as DateTime;\r\n }\r\n\r\n if (date instanceof Date) {\r\n return this.getStartOfDayForDate(this.fromJSDate(date));\r\n }\r\n\r\n return date.startOf('day');\r\n }\r\n\r\n getStartOfDayMinusDays(daysFromNow: number): DateTime {\r\n let date = this.getDate();\r\n let newDate = this.minusDays(date, daysFromNow);\r\n return this.getStartOfDayForDate(newDate);\r\n }\r\n\r\n getEndOfDay(): DateTime {\r\n return this.getDate().endOf('day');\r\n }\r\n\r\n getEndOfDayForDate(date: DateTime | Date): DateTime {\r\n if (!date) {\r\n return date as DateTime;\r\n }\r\n\r\n if (date instanceof Date) {\r\n return this.getEndOfDayForDate(this.fromJSDate(date));\r\n }\r\n\r\n return date.endOf('day');\r\n }\r\n\r\n getEndOfDayPlusDays(daysFromNow: number): DateTime {\r\n let date = this.getDate();\r\n let newDate = this.plusDays(date, daysFromNow);\r\n return this.getEndOfDayForDate(newDate);\r\n }\r\n\r\n getEndOfDayMinusDays(daysFromNow: number): DateTime {\r\n let date = this.getDate();\r\n let newDate = this.minusDays(date, daysFromNow);\r\n return this.getEndOfDayForDate(newDate);\r\n }\r\n\r\n plusDays(date: DateTime | Date, dayCount: number): DateTime {\r\n if (date instanceof Date) {\r\n return this.plusDays(this.fromJSDate(date), dayCount);\r\n }\r\n\r\n return date.plus({ days: dayCount });\r\n }\r\n\r\n plusSeconds(date: DateTime, seconds: number) {\r\n if (!date) {\r\n return date;\r\n }\r\n\r\n if (date instanceof Date) {\r\n return this.plusSeconds(this.fromJSDate(date), seconds);\r\n }\r\n\r\n return date.plus({ seconds: seconds });\r\n }\r\n\r\n minusDays(date: DateTime, dayCount: number): DateTime {\r\n return date.minus({ days: dayCount });\r\n }\r\n\r\n fromISODateString(date: string): DateTime {\r\n return DateTime.fromISO(date);\r\n }\r\n\r\n formatISODateString(dateText: string, format: string): string {\r\n let date = this.fromISODateString(dateText);\r\n return date.toFormat(format);\r\n }\r\n\r\n formatJSDate(jsDate: Date, format: string): string {\r\n let date = DateTime.fromJSDate(jsDate);\r\n return date.toFormat(format);\r\n }\r\n\r\n formatDate(date: DateTime | Date, format: string): string {\r\n if (date instanceof Date) {\r\n return this.formatDate(this.fromJSDate(date), format);\r\n }\r\n\r\n return date.toFormat(format);\r\n }\r\n\r\n getDiffInSeconds(maxDate: DateTime | Date, minDate: DateTime | Date) {\r\n if (maxDate instanceof Date && minDate instanceof Date) {\r\n return this.getDiffInSeconds(this.fromJSDate(maxDate), this.fromJSDate(minDate));\r\n }\r\n\r\n return (maxDate as DateTime).diff(minDate as DateTime, 'seconds');\r\n }\r\n\r\n createJSDate(year: number, month: number, day: number): Date {\r\n return this.createDate(year, month, day).toJSDate();\r\n }\r\n\r\n createDate(year: number, month: number, day: number): DateTime {\r\n if (abp.clock.provider.supportsMultipleTimezone) {\r\n return DateTime.utc(year, month + 1, day);\r\n } else {\r\n return DateTime.local(year, month + 1, day);\r\n }\r\n }\r\n\r\n createUtcDate(year: number, month: number, day: number): DateTime {\r\n return DateTime.utc(year, month + 1, day);\r\n }\r\n\r\n toUtcDate(date: DateTime | Date): DateTime {\r\n if (date instanceof Date) {\r\n return this.createUtcDate(date.getFullYear(), date.getMonth(), date.getDate());\r\n }\r\n\r\n return (date as DateTime).toUTC();\r\n }\r\n\r\n fromJSDate(date: Date): DateTime {\r\n return DateTime.fromJSDate(date);\r\n }\r\n\r\n fromNow(date: DateTime | Date): string {\r\n if (date instanceof Date) {\r\n return this.fromNow(this.fromJSDate(date));\r\n }\r\n\r\n return date.toRelative();\r\n }\r\n\r\n getTimezoneOffset(ianaTimezoneId: string): number {\r\n var hourAndMinuteOffset = DateTime.fromJSDate(new Date(), { zone: ianaTimezoneId }).toFormat('ZZ');\r\n var multiplier = hourAndMinuteOffset[0] == '-' ? -1 : +1;\r\n var hourParts = hourAndMinuteOffset.replace('-', '').replace('+', '').split(':');\r\n var hourOffset = hourParts[0];\r\n var minuteOffset = hourParts[1];\r\n return multiplier * (parseInt(hourOffset) * 60 + parseInt(minuteOffset));\r\n }\r\n\r\n // only changes timezone of given date without changing the date itself\r\n changeTimeZone(date: Date, ianaTimezoneId: string): Date {\r\n var utcDateString = new Date(date.getTime() - (date.getTimezoneOffset() * 60000)).toISOString();\r\n var currentTimezoneString = DateTime.fromJSDate(new Date(), { zone: ianaTimezoneId }).toFormat('ZZ');\r\n var dateStringWithoutTimezome = utcDateString.substring(0, utcDateString.length - 1) + currentTimezoneString;\r\n return DateTime.fromISO(dateStringWithoutTimezome).toJSDate();\r\n }\r\n\r\n removeOffset(dateTime: DateTime): DateTime {\r\n return dateTime.toUTC().plus({ minutes: dateTime.offset });\r\n }\r\n}\r\n","import {\n Component,\n ElementRef,\n EventEmitter,\n Injector,\n Input,\n OnInit,\n Output,\n ViewChild,\n forwardRef,\n} from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { SettingScopes, NameValueDto, TimingServiceProxy } from '@shared/service-proxies/service-proxies';\nimport { ControlValueAccessor, FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'timezone-combo',\n template: `\n \n `,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TimeZoneComboComponent),\n multi: true,\n },\n ],\n})\nexport class TimeZoneComboComponent extends AppComponentBase implements OnInit, ControlValueAccessor {\n @Input() defaultTimezoneScope: SettingScopes;\n\n timeZones: NameValueDto[] = [];\n selectedTimeZone = new FormControl('');\n\n constructor(private _timingService: TimingServiceProxy, injector: Injector) {\n super(injector);\n }\n\n onTouched: any = () => {};\n\n ngOnInit(): void {\n let self = this;\n self._timingService.getTimezones(self.defaultTimezoneScope).subscribe((result) => {\n self.timeZones = result.items;\n });\n }\n\n writeValue(obj: any): void {\n if (this.selectedTimeZone) {\n this.selectedTimeZone.setValue(obj);\n }\n }\n\n registerOnChange(fn: any): void {\n this.selectedTimeZone.valueChanges.subscribe(fn);\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n if (isDisabled) {\n this.selectedTimeZone.disable();\n } else {\n this.selectedTimeZone.enable();\n }\n }\n}\n","import { ChatMessageDto, FriendDto } from '@shared/service-proxies/service-proxies';\n\nexport class ChatFriendDto extends FriendDto {\n messages: ChatMessageDto[];\n allPreviousMessagesLoaded = false;\n messagesLoaded = false;\n}\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Injector,\n OnInit,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation,\n NgZone,\n HostBinding,\n ElementRef,\n HostListener,\n} from '@angular/core';\nimport { CommonLookupModalComponent } from '@app/shared/common/lookup/common-lookup-modal.component';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { DomHelper } from '@shared/helpers/DomHelper';\nimport { HttpClient } from '@angular/common/http';\nimport { FileUpload } from 'primeng/fileupload';\nimport { finalize } from 'rxjs/operators';\nimport {\n BlockUserInput,\n ChatSide,\n ChatServiceProxy,\n CommonLookupServiceProxy,\n CreateFriendshipRequestByUserNameInput,\n CreateFriendshipRequestInput,\n FindUsersInput,\n FriendDto,\n FriendshipState,\n FriendshipServiceProxy,\n MarkAllUnreadMessagesOfUserAsReadInput,\n NameValueDto,\n ProfileServiceProxy,\n UnblockUserInput,\n UserLoginInfoDto,\n ChatMessageReadState,\n ChatMessageDto,\n} from '@shared/service-proxies/service-proxies';\nimport { LocalStorageService } from '@shared/utils/local-storage.service';\nimport { filter as _filter, map as _map, forEach as _forEach, min as _min, reduce as _reduce } from 'lodash-es';\nimport { DateTime } from 'luxon';\nimport { ChatFriendDto } from './ChatFriendDto';\nimport { ChatSignalrService } from './chat-signalr.service';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\nimport { DrawerComponent, ScrollComponent } from '@metronic/app/kt/components';\n\n@Component({\n templateUrl: './chat-bar.component.html',\n selector: 'chat-bar',\n styleUrls: ['./chat-bar.component.less'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class ChatBarComponent extends AppComponentBase implements OnInit, AfterViewInit {\n @Output() onProgress: EventEmitter = new EventEmitter();\n @Input() userLookupModal: CommonLookupModalComponent;\n @HostBinding('attr.ktOffcanvas')\n @HostBinding('style.overflow')\n @ViewChild('ChatMessage', { static: true })\n chatMessageInput: ElementRef;\n @ViewChild('chatScrollBar', { static: true }) chatScrollBar;\n @ViewChild('chatImageUpload', { static: false }) chatImageUpload: FileUpload;\n @ViewChild('chatFileUpload', { static: false }) chatFileUpload: FileUpload;\n\n public progress = 0;\n styleOverflow: any = 'hidden';\n friendDtoState: typeof FriendshipState = FriendshipState;\n uploadUrl: string;\n isFileSelected = false;\n friends: ChatFriendDto[];\n currentUser: UserLoginInfoDto = this.appSession.user;\n profilePicture = AppConsts.appBaseUrl + '/assets/common/images/default-profile-picture.png';\n chatMessage = '';\n chatDrawer: DrawerComponent;\n tenantToTenantChatAllowed = false;\n tenantToHostChatAllowed = false;\n interTenantChatAllowed = false;\n sendingMessage = false;\n loadingPreviousUserMessages = false;\n userNameFilter = '';\n serverClientTimeDifference = 0;\n isMultiTenancyEnabled: boolean = this.multiTenancy.isEnabled;\n appChatSide: typeof ChatSide = ChatSide;\n appChatMessageReadState: typeof ChatMessageReadState = ChatMessageReadState;\n\n _isOpen: boolean;\n _pinned = false;\n _selectedUser: ChatFriendDto = new ChatFriendDto();\n\n constructor(\n private el: ElementRef,\n injector: Injector,\n private _friendshipService: FriendshipServiceProxy,\n private _chatService: ChatServiceProxy,\n private _commonLookupService: CommonLookupServiceProxy,\n private _localStorageService: LocalStorageService,\n private _chatSignalrService: ChatSignalrService,\n private _profileService: ProfileServiceProxy,\n private _httpClient: HttpClient,\n private _dateTimeService: DateTimeService,\n public _zone: NgZone\n ) {\n super(injector);\n this.uploadUrl = AppConsts.remoteServiceBaseUrl + '/Chat/UploadFile';\n }\n\n get chatUserSearchHint(): string {\n return this.l('ChatUserSearch_Hint');\n }\n\n get selectedUser(): ChatFriendDto {\n return this._selectedUser;\n }\n\n get isOpen(): boolean {\n return this._isOpen;\n }\n\n get pinned(): boolean {\n return this._pinned;\n }\n\n set isOpen(newValue: boolean) {\n if (newValue === this._isOpen) {\n return;\n }\n\n this._localStorageService.setItem('app.chat.isOpen', newValue);\n this._isOpen = newValue;\n\n if (newValue) {\n this.markAllUnreadMessagesOfUserAsRead(this.selectedUser);\n }\n }\n\n set pinned(newValue: boolean) {\n if (newValue === this._pinned) {\n return;\n }\n\n this._pinned = newValue;\n this._localStorageService.setItem('app.chat.pinned', newValue);\n }\n\n set selectedUser(newValue: ChatFriendDto) {\n if (newValue === this._selectedUser) {\n return;\n }\n\n this._selectedUser = newValue;\n\n //NOTE: this is a fix for localForage is not able to store user with messages array filled\n if (newValue.messages) {\n newValue.messages = [];\n newValue.messagesLoaded = false;\n }\n this._localStorageService.setItem('app.chat.selectedUser', newValue);\n }\n\n @HostListener('mouseleave') mouseleave() {\n if (!this.pinned && this.chatDrawer) {\n this.chatDrawer.hide();\n }\n }\n\n shareCurrentLink() {\n this.chatMessage = '[link]{\"message\":\"' + window.location.href + '\"}';\n this.sendMessage();\n }\n\n uploadImage(data: { files: File }): void {\n const formData: FormData = new FormData();\n const file = data.files[0];\n formData.append('file', file, file.name);\n\n this._httpClient\n .post(this.uploadUrl, formData)\n .pipe(finalize(() => this.chatImageUpload.clear()))\n .subscribe((response) => {\n this.chatMessage =\n '[image]{\"id\":\"' +\n response.result.id +\n '\", \"name\":\"' +\n response.result.name +\n '\", \"contentType\":\"' +\n response.result.contentType +\n '\"}';\n this.sendMessage();\n\n this.isFileSelected = false;\n this.progress = 0;\n });\n }\n\n uploadFile(data: { files: File }): void {\n const formData: FormData = new FormData();\n const file = data.files[0];\n formData.append('file', file, file.name);\n\n this._httpClient\n .post(this.uploadUrl, formData)\n .pipe(finalize(() => this.chatFileUpload.clear()))\n .subscribe((response) => {\n this.chatMessage =\n '[file]{\"id\":\"' +\n response.result.id +\n '\", \"name\":\"' +\n response.result.name +\n '\", \"contentType\":\"' +\n response.result.contentType +\n '\"}';\n this.sendMessage();\n\n this.isFileSelected = false;\n this.progress = 0;\n });\n }\n\n onBeforeSend(event): void {\n this.isFileSelected = true;\n event.xhr.upload.addEventListener(\n 'progress',\n (e: ProgressEvent) => {\n if (e.lengthComputable) {\n this.progress = Math.round((e.loaded * 100) / e.total);\n }\n\n this.onProgress.emit({ originalEvent: e, progress: this.progress });\n },\n false\n );\n }\n\n ngOnInit(): void {\n this.init();\n }\n\n getShownUserName(tenanycName: string, userName: string): string {\n if (!this.isMultiTenancyEnabled) {\n return userName;\n }\n\n return (tenanycName ? tenanycName : '.') + '\\\\' + userName;\n }\n\n getProfilePicture(): void {\n this._profileService.getProfilePicture().subscribe((result) => {\n if (result && result.profilePicture) {\n this.profilePicture = 'data:image/jpeg;base64,' + result.profilePicture;\n }\n });\n }\n\n block(user: FriendDto): void {\n const blockUserInput = new BlockUserInput();\n blockUserInput.tenantId = user.friendTenantId;\n blockUserInput.userId = user.friendUserId;\n\n this._friendshipService.blockUser(blockUserInput).subscribe(() => {\n this.notify.info(this.l('UserBlocked'));\n });\n }\n\n unblock(user: FriendDto): void {\n const unblockUserInput = new UnblockUserInput();\n unblockUserInput.tenantId = user.friendTenantId;\n unblockUserInput.userId = user.friendUserId;\n\n this._friendshipService.unblockUser(unblockUserInput).subscribe(() => {\n this.notify.info(this.l('UserUnblocked'));\n });\n }\n\n removeFriendUI(user: FriendDto): void {\n this.friends = this.friends.filter((item) => {\n if (item.friendUserId === user.friendUserId && item.friendTenantId === user.friendTenantId) {\n return false;\n }\n return true;\n });\n\n this.quickSideBarBackClick();\n }\n\n remove(user: FriendDto): void {\n this.message.confirm(this.l('AreYouSureToRemoveFromFriends'), null, (isConfirmed) => {\n if (isConfirmed) {\n this._friendshipService\n .removeFriend(user.friendUserId, user.friendTenantId ? user.friendTenantId : undefined)\n .subscribe(() => {\n this.removeFriendUI(user);\n this.notify.info(this.l('FriendRemoved'));\n });\n }\n });\n }\n\n markAllUnreadMessagesOfUserAsRead(user: ChatFriendDto): void {\n if (!user || !this.isOpen) {\n return;\n }\n\n const unreadMessages = _filter(user.messages, (m) => m.readState === ChatMessageReadState.Unread);\n const unreadMessageIds = _map(unreadMessages, 'id');\n\n if (!unreadMessageIds.length) {\n return;\n }\n\n const input = new MarkAllUnreadMessagesOfUserAsReadInput();\n input.tenantId = user.friendTenantId;\n input.userId = user.friendUserId;\n\n this._chatService.markAllUnreadMessagesOfUserAsRead(input).subscribe(() => {\n _forEach(user.messages, (message) => {\n if (unreadMessageIds.indexOf(message.id) >= 0) {\n message.readState = ChatMessageReadState.Read;\n }\n });\n });\n }\n\n loadPreviousMesssagesOfSelectedUser(): void {\n this._zone.run(() => {\n this.loadMessages(this.selectedUser, null);\n });\n }\n\n loadMessages(user: ChatFriendDto, callback: any): void {\n this.loadingPreviousUserMessages = true;\n\n let minMessageId;\n if (user.messages && user.messages.length) {\n minMessageId = _min(_map(user.messages, (m) => m.id));\n }\n\n this._chatService\n .getUserChatMessages(user.friendTenantId ? user.friendTenantId : undefined, user.friendUserId, minMessageId)\n .subscribe((result) => {\n if (!user.messages) {\n user.messages = [];\n }\n\n user.messages = result.items.concat(user.messages);\n\n this.markAllUnreadMessagesOfUserAsRead(user);\n\n if (!result.items.length) {\n user.allPreviousMessagesLoaded = true;\n }\n\n this.loadingPreviousUserMessages = false;\n if (callback) {\n callback();\n }\n });\n }\n\n openSearchModal(userName: string, tenantId?: number): void {\n this.userLookupModal.filterText = userName;\n this.userLookupModal.show();\n }\n\n addFriendSelected(item: NameValueDto): void {\n const userId = item.value;\n const input = new CreateFriendshipRequestInput();\n input.userId = parseInt(userId);\n input.tenantId = this.appSession.tenant ? this.appSession.tenant.id : null;\n\n this._friendshipService.createFriendshipRequest(input).subscribe(() => {\n this.userNameFilter = '';\n });\n }\n\n search(): void {\n const input = new CreateFriendshipRequestByUserNameInput();\n\n if (this.userNameFilter.indexOf('\\\\') === -1) {\n input.userName = this.userNameFilter;\n } else {\n const tenancyAndUserNames = this.userNameFilter.split('\\\\');\n input.tenancyName = tenancyAndUserNames[0];\n input.userName = tenancyAndUserNames[1];\n }\n\n if (!input.tenancyName || !this.interTenantChatAllowed) {\n const tenantId = this.appSession.tenant ? this.appSession.tenant.id : null;\n this.openSearchModal(input.userName, tenantId);\n } else {\n this._friendshipService.createFriendshipRequestByUserName(input).subscribe(() => {\n this.userNameFilter = '';\n });\n }\n }\n\n getFriendOrNull(userId: number, tenantId?: number): ChatFriendDto {\n const friends = _filter(\n this.friends,\n (friend) => friend.friendUserId === userId && friend.friendTenantId === tenantId\n );\n if (friends.length) {\n return friends[0];\n }\n\n return null;\n }\n\n getFilteredFriends(state: FriendshipState, userNameFilter: string): FriendDto[] {\n const foundFriends = _filter(\n this.friends,\n (friend) =>\n friend.state === state &&\n this.getShownUserName(friend.friendTenancyName, friend.friendUserName)\n .toLocaleLowerCase()\n .indexOf(userNameFilter.toLocaleLowerCase()) >= 0\n );\n\n return foundFriends;\n }\n\n getFilteredFriendsCount(state: FriendshipState): number {\n return _filter(this.friends, (friend) => friend.state === state).length;\n }\n\n getUserNameByChatSide(chatSide: ChatSide): string {\n return chatSide === ChatSide.Sender ? this.currentUser.userName : this.selectedUser.friendUserName;\n }\n\n getFixedMessageTime(messageTime: DateTime): DateTime {\n if (typeof messageTime === 'string') {\n messageTime = this._dateTimeService.fromISODateString(messageTime);\n }\n\n return this._dateTimeService.plusSeconds(messageTime, -1 * this.serverClientTimeDifference);\n }\n\n getFriendsAndSettings(callback: any): void {\n this._chatService.getUserChatFriendsWithSettings().subscribe((result) => {\n this.friends = result.friends as ChatFriendDto[];\n this.serverClientTimeDifference = this._dateTimeService.getDiffInSeconds(\n this._dateTimeService.getDate(),\n result.serverTime\n );\n\n this.triggerUnreadMessageCountChangeEvent();\n callback();\n });\n }\n\n scrollToBottom(): void {\n setTimeout(() => {\n let height = ScrollComponent.getInstance(\n document.querySelector('#kt_drawer_chat_messenger_body')\n ).getHeight();\n let heightInt = parseInt(height.replace('px', ''));\n document.getElementById('kt_drawer_chat_messenger_body').scrollTop = heightInt;\n });\n }\n\n loadLastState(): void {\n const self = this;\n self._localStorageService.getItem('app.chat.isOpen', (err, isOpen) => {\n self.isOpen = isOpen;\n\n self._localStorageService.getItem('app.chat.pinned', (err, pinned) => {\n self.pinned = pinned;\n });\n\n if (isOpen) {\n this.chatDrawer.show();\n self._localStorageService.getItem('app.chat.selectedUser', (err, selectedUser) => {\n if (selectedUser && selectedUser.friendUserId) {\n self.selectFriend(selectedUser);\n }\n });\n }\n });\n }\n\n selectFriend(friend: ChatFriendDto): void {\n const chatUser = this.getFriendOrNull(friend.friendUserId, friend.friendTenantId);\n this.selectedUser = chatUser;\n\n if (!chatUser) {\n return;\n }\n\n this.chatMessage = '';\n\n if (!chatUser.messagesLoaded) {\n this.loadMessages(chatUser, () => {\n chatUser.messagesLoaded = true;\n this.scrollToBottom();\n });\n } else {\n this.markAllUnreadMessagesOfUserAsRead(this.selectedUser);\n this.scrollToBottom();\n }\n\n window.dispatchEvent(new Event('resize'));\n }\n\n sendMessage(event?: any): void {\n if (event) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n if (!this.chatMessage) {\n return;\n }\n\n this.sendingMessage = true;\n const tenancyName = this.appSession.tenant ? this.appSession.tenant.tenancyName : null;\n this._chatSignalrService.sendMessage(\n {\n tenantId: this.selectedUser.friendTenantId,\n userId: this.selectedUser.friendUserId,\n message: this.chatMessage,\n tenancyName: tenancyName,\n userName: this.appSession.user.userName,\n profilePictureId: this.appSession.user.profilePictureId,\n },\n () => {\n this.chatMessage = '';\n this.sendingMessage = false;\n }\n );\n }\n\n reversePinned(): void {\n this.pinned = !this.pinned;\n }\n\n quickSideBarBackClick(): void {\n this.selectedUser = new ChatFriendDto();\n }\n\n ngAfterViewInit(): void {\n this.chatDrawer = new DrawerComponent(document.getElementById('kt_drawer_chat'), {\n overlay: true,\n baseClass: 'drawer',\n overlayClass: 'drawer-overlay',\n direction: 'end',\n });\n\n setTimeout(() => {\n this.chatDrawer.on('kt.drawer.after.hidden', (e: Event) => {\n this.isOpen = false;\n });\n }, 100);\n\n this.chatDrawer.on('kt.drawer.shown', (e: Event) => {\n this.isOpen = true;\n });\n\n this.userLookupModal.configure({\n title: this.l('SelectAUser'),\n dataSource: (skipCount: number, maxResultCount: number, filter: string, tenantId?: number, excludeCurrentUser?: boolean) => {\n const input = new FindUsersInput();\n input.filter = filter;\n input.maxResultCount = maxResultCount;\n input.skipCount = skipCount;\n input.tenantId = tenantId;\n input.excludeCurrentUser = excludeCurrentUser;\n return this._commonLookupService.findUsers(input);\n },\n });\n }\n\n triggerUnreadMessageCountChangeEvent(): void {\n let totalUnreadMessageCount = 0;\n\n if (this.friends) {\n totalUnreadMessageCount = _reduce(this.friends, (memo, friend) => memo + friend.unreadMessageCount, 0);\n }\n\n abp.event.trigger('app.chat.unreadMessageCountChanged', totalUnreadMessageCount);\n }\n\n registerEvents(): void {\n const self = this;\n\n function onMessageReceived(message) {\n const user = self.getFriendOrNull(message.targetUserId, message.targetTenantId);\n if (!user) {\n return;\n }\n\n user.messages = user.messages || [];\n user.messages.push(message);\n\n if (message.side === ChatSide.Receiver) {\n user.unreadMessageCount += 1;\n message.readState = ChatMessageReadState.Unread;\n self.triggerUnreadMessageCountChangeEvent();\n\n if (\n self.isOpen &&\n self.selectedUser !== null &&\n user.friendTenantId === self.selectedUser.friendTenantId &&\n user.friendUserId === self.selectedUser.friendUserId\n ) {\n self.markAllUnreadMessagesOfUserAsRead(user);\n } else {\n self.notify.info(\n abp.utils.formatString(\n '{0}: {1}',\n user.friendUserName,\n abp.utils.truncateString(message.message, 100)\n ),\n null,\n {\n onclick() {\n if (document.body.className.indexOf('offcanvas-on') < 0) {\n self.showChatPanel();\n self.isOpen = true;\n }\n\n self.selectFriend(user);\n self.pinned = true;\n },\n }\n );\n }\n }\n\n self.scrollToBottom();\n }\n\n this.subscribeToEvent('app.chat.messageReceived', (message) => {\n self._zone.run(() => {\n onMessageReceived(message);\n });\n });\n\n function onFriendshipRequestReceived(data, isOwnRequest) {\n if (!isOwnRequest) {\n abp.notify.info(self.l('UserSendYouAFriendshipRequest', data.friendUserName));\n }\n\n if (\n !_filter(\n self.friends,\n (f) => f.friendUserId === data.friendUserId && f.friendTenantId === data.friendTenantId\n ).length\n ) {\n self.friends.push(data);\n }\n }\n\n this.subscribeToEvent('app.chat.friendshipRequestReceived', (data, isOwnRequest) => {\n self._zone.run(() => {\n onFriendshipRequestReceived(data, isOwnRequest);\n });\n });\n\n function onUserConnectionStateChanged(data) {\n const user = self.getFriendOrNull(data.friend.userId, data.friend.tenantId);\n if (!user) {\n return;\n }\n\n user.isOnline = data.isConnected;\n }\n\n this.subscribeToEvent('app.chat.userConnectionStateChanged', (data) => {\n self._zone.run(() => {\n onUserConnectionStateChanged(data);\n });\n });\n\n function onUserStateChanged(data) {\n const user = self.getFriendOrNull(data.friend.userId, data.friend.tenantId);\n if (!user) {\n return;\n }\n\n user.state = data.state;\n }\n\n this.subscribeToEvent('app.chat.userStateChanged', (data) => {\n self._zone.run(() => {\n onUserStateChanged(data);\n });\n });\n\n function onAllUnreadMessagesOfUserRead(data) {\n const user = self.getFriendOrNull(data.friend.userId, data.friend.tenantId);\n if (!user) {\n return;\n }\n\n user.unreadMessageCount = 0;\n self.triggerUnreadMessageCountChangeEvent();\n }\n\n this.subscribeToEvent('app.chat.allUnreadMessagesOfUserRead', (data) => {\n self._zone.run(() => {\n onAllUnreadMessagesOfUserRead(data);\n });\n });\n\n function onReadStateChange(data) {\n const user = self.getFriendOrNull(data.friend.userId, data.friend.tenantId);\n if (!user) {\n return;\n }\n\n _forEach(user.messages, (message) => {\n message.receiverReadState = ChatMessageReadState.Read;\n });\n }\n\n this.subscribeToEvent('app.chat.readStateChange', (data) => {\n self._zone.run(() => {\n onReadStateChange(data);\n });\n });\n\n function onConnected() {\n self.getFriendsAndSettings(() => {\n DomHelper.waitUntilElementIsReady('#kt_drawer_chat', () => {\n self.loadLastState();\n });\n });\n }\n\n this.subscribeToEvent('app.chat.connected', () => {\n self._zone.run(() => {\n onConnected();\n });\n });\n }\n\n getReadStateHtml(message: ChatMessageDto): string {\n let readStateClass = message.receiverReadState === ChatMessageReadState.Read ? ' text-primary' : ' text-muted';\n return message.side === ChatSide.Sender\n ? ''\n : '';\n }\n\n showChatPanel(): void {\n document.body.setAttribute('data-kt-drawer-chat', 'on');\n document.body.setAttribute('data-kt-drawer', 'on');\n document.getElementById('kt_drawer_chat').className += ' drawer-on';\n }\n\n init(): void {\n this.registerEvents();\n this.getProfilePicture();\n\n this.tenantToTenantChatAllowed = this.feature.isEnabled('App.ChatFeature.TenantToTenant');\n this.tenantToHostChatAllowed = this.feature.isEnabled('App.ChatFeature.TenantToHost');\n this.interTenantChatAllowed =\n this.feature.isEnabled('App.ChatFeature.TenantToTenant') ||\n this.feature.isEnabled('App.ChatFeature.TenantToHost') ||\n !this.appSession.tenant;\n }\n}\n","\n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n \n \n \n
    \n \n

    \n {{ 'YouDontHaveAnyFriend' | localize }}\n

    \n
    \n
    \n
    \n {{ 'BlockedUsers' | localize }}\n
    \n \n
    \n \n
    \n

    \n {{ 'YouDontHaveAnyBlockedFriend' | localize }}\n

    \n
    \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{ getShownUserName(selectedUser.friendTenancyName, selectedUser.friendUserName) }}\n \n
    \n \n \n {{ 'Online' | localize }}\n \n \n \n {{ 'Offline' | localize }}\n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \"Pic\"\n
    \n
    \n \n {{ currentUser.userName }}\n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n {{ selectedUser.friendUserName }}\n \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n\n","import { AbpMultiTenancyService } from 'abp-ng2-module';\nimport { Component, EventEmitter, Injector, Input, Output } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { ChatFriendDto } from './ChatFriendDto';\n\n@Component({\n templateUrl: './chat-friend-list-item.component.html',\n selector: 'chat-friend-list-item',\n})\nexport class ChatFriendListItemComponent {\n @Input() friend: ChatFriendDto;\n @Output() selectChatFriend: EventEmitter = new EventEmitter();\n\n remoteServiceUrl: string = AppConsts.remoteServiceBaseUrl;\n appPath: string = AppConsts.appBaseUrl;\n multiTenancy: AbpMultiTenancyService;\n\n constructor(injector: Injector) {\n this.multiTenancy = injector.get(AbpMultiTenancyService);\n }\n\n getShownUserName(tenanycName: string, userName: string): string {\n if (!this.multiTenancy.isEnabled) {\n return userName;\n }\n return (tenanycName ? tenanycName : '.') + '\\\\' + userName;\n }\n\n getRemoteImageUrl(profilePictureId: string, userId: number, tenantId?: number): string {\n return (\n this.remoteServiceUrl +\n '/Profile/GetFriendProfilePictureById?id=' +\n profilePictureId +\n '&userId=' +\n userId +\n '&tenantId=' +\n tenantId\n );\n }\n}\n","
    \n
    \n \n\n
    \n
    \n
    \n
    \n {{ friend.friendUserName }}\n
    \n \n {{ friend.friendTenancyName }}\n \n Host\n
    \n
    \n
    \n
    \n \n {{ friend.unreadMessageCount }}\n \n \n {{ friend.unreadMessageCount }}\n \n
    ","import { Component, Input, OnInit } from '@angular/core';\nimport { ChatMessageDto, ChatServiceProxy } from '@shared/service-proxies/service-proxies';\nimport { AppConsts } from 'shared/AppConsts';\nimport { LocalStorageService } from '@shared/utils/local-storage.service';\n\n@Component({\n selector: 'chat-message',\n templateUrl: './chat-message.component.html',\n})\nexport class ChatMessageComponent implements OnInit {\n @Input()\n message: ChatMessageDto;\n\n chatMessage: string;\n chatMessageType: string;\n fileName: string;\n fileContentType: string;\n\n constructor(private _chatService: ChatServiceProxy, private _localStorageService: LocalStorageService) {}\n\n ngOnInit(): void {\n this.setChatMessageType();\n }\n\n private setChatMessageType(): void {\n const self = this;\n this._localStorageService.getItem(AppConsts.authorization.encrptedAuthTokenName, function (err, value) {\n let encryptedAuthToken = value?.token;\n if (self.message.message.startsWith('[image]')) {\n self.chatMessageType = 'image';\n\n let image = JSON.parse(self.message.message.substring('[image]'.length));\n self.chatMessage =\n AppConsts.remoteServiceBaseUrl +\n '/Chat/GetUploadedObject?fileId=' +\n image.id +\n '&fileName=' +\n image.name +\n '&contentType=' +\n image.contentType +\n '&' +\n AppConsts.authorization.encrptedAuthTokenName +\n '=' +\n encodeURIComponent(encryptedAuthToken);\n } else if (self.message.message.startsWith('[file]')) {\n self.chatMessageType = 'file';\n\n let file = JSON.parse(self.message.message.substring('[file]'.length));\n self.chatMessage =\n AppConsts.remoteServiceBaseUrl +\n '/Chat/GetUploadedObject?fileId=' +\n file.id +\n '&fileName=' +\n file.name +\n '&contentType=' +\n file.contentType +\n '&' +\n AppConsts.authorization.encrptedAuthTokenName +\n '=' +\n encodeURIComponent(encryptedAuthToken);\n\n self.fileName = file.name;\n } else if (self.message.message.startsWith('[link]')) {\n self.chatMessageType = 'link';\n let linkMessage = JSON.parse(self.message.message.substring('[link]'.length));\n self.chatMessage = linkMessage.message == null ? '' : linkMessage.message;\n } else {\n self.chatMessageType = 'text';\n self.chatMessage = self.message.message;\n }\n });\n }\n}\n","\n \n\n\n \n {{ fileName }}\n \n\n\n \n {{ chatMessage }}\n\n\n","import { Injectable, Injector, NgZone } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { HubConnection } from '@microsoft/signalr';\n\n@Injectable()\nexport class ChatSignalrService extends AppComponentBase {\n chatHub: HubConnection;\n isChatConnected = false;\n\n constructor(injector: Injector, public _zone: NgZone) {\n super(injector);\n }\n\n configureConnection(connection): void {\n // Set the common hub\n this.chatHub = connection;\n\n // Reconnect loop\n let reconnectTime = 5000;\n let tries = 1;\n let maxTries = 8;\n function start() {\n return new Promise(function (resolve, reject) {\n if (tries > maxTries) {\n reject();\n } else {\n connection\n .start()\n .then(resolve)\n .then(() => {\n reconnectTime = 5000;\n tries = 1;\n })\n .catch(() => {\n setTimeout(() => {\n start().then(resolve);\n }, reconnectTime);\n reconnectTime *= 2;\n tries += 1;\n });\n }\n });\n }\n\n // Reconnect if hub disconnects\n connection.onclose((e) => {\n this.isChatConnected = false;\n\n if (e) {\n abp.log.debug('Chat connection closed with error: ' + e);\n } else {\n abp.log.debug('Chat disconnected');\n }\n\n start().then(() => {\n this.isChatConnected = true;\n });\n });\n\n // Register to get notifications\n this.registerChatEvents(connection);\n }\n\n registerChatEvents(connection): void {\n connection.on('getChatMessage', (message) => {\n abp.event.trigger('app.chat.messageReceived', message);\n });\n\n connection.on('getAllFriends', (friends) => {\n abp.event.trigger('abp.chat.friendListChanged', friends);\n });\n\n connection.on('getFriendshipRequest', (friendData, isOwnRequest) => {\n abp.event.trigger('app.chat.friendshipRequestReceived', friendData, isOwnRequest);\n });\n\n connection.on('getUserConnectNotification', (friend, isConnected) => {\n abp.event.trigger('app.chat.userConnectionStateChanged', {\n friend: friend,\n isConnected: isConnected,\n });\n });\n\n connection.on('getUserStateChange', (friend, state) => {\n abp.event.trigger('app.chat.userStateChanged', {\n friend: friend,\n state: state,\n });\n });\n\n connection.on('getallUnreadMessagesOfUserRead', (friend) => {\n abp.event.trigger('app.chat.allUnreadMessagesOfUserRead', {\n friend: friend,\n });\n });\n\n connection.on('getReadStateChange', (friend) => {\n abp.event.trigger('app.chat.readStateChange', {\n friend: friend,\n });\n });\n }\n\n sendMessage(messageData, callback): void {\n if (!this.isChatConnected) {\n if (callback) {\n callback();\n }\n\n abp.notify.warn(this.l('ChatIsNotConnectedWarning'));\n return;\n }\n\n this.chatHub\n .invoke('sendMessage', messageData)\n .then((result) => {\n if (result) {\n abp.notify.warn(result);\n }\n\n if (callback) {\n callback();\n }\n })\n .catch((error) => {\n abp.log.error(error);\n\n if (callback) {\n callback();\n }\n });\n }\n\n init(): void {\n this._zone.runOutsideAngular(() => {\n abp.signalr.connect();\n abp.signalr\n .startConnection(abp.appPath + 'signalr-chat', (connection) => {\n this.configureConnection(connection);\n })\n .then(() => {\n abp.event.trigger('app.chat.connected');\n this.isChatConnected = true;\n });\n });\n }\n}\n","import { Component, EventEmitter, Injector, Output, ViewChild } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport {\n CreateUserDelegationDto,\n NameValueDto,\n FindUsersInput,\n CommonLookupServiceProxy,\n UserDelegationServiceProxy,\n} from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { CommonLookupModalComponent } from '@app/shared/common/lookup/common-lookup-modal.component';\nimport { finalize } from 'rxjs/operators';\nimport { DateTime } from 'luxon';\nimport { DateTimeService } from '../common/timing/date-time.service';\n\n@Component({\n selector: 'createNewUserDelegation',\n templateUrl: './create-new-user-delegation-modal.component.html',\n})\nexport class CreateNewUserDelegationModalComponent extends AppComponentBase {\n @ViewChild('userDelegationModal', { static: true }) modal: ModalDirective;\n @ViewChild('userLookupModal', { static: true }) userLookupModal: CommonLookupModalComponent;\n @Output() modalSave: EventEmitter = new EventEmitter();\n\n active = false;\n saving = false;\n selectedUsername = '';\n\n userDelegation: CreateUserDelegationDto = new CreateUserDelegationDto();\n\n constructor(\n injector: Injector,\n private _userDelegationService: UserDelegationServiceProxy,\n private _commonLookupService: CommonLookupServiceProxy,\n private _dateTimeService: DateTimeService\n ) {\n super(injector);\n }\n\n show(): void {\n this.active = true;\n this.userDelegation = new CreateUserDelegationDto();\n\n this.userLookupModal.configure({\n title: this.l('SelectAUser'),\n dataSource: (skipCount: number, maxResultCount: number, filter: string, tenantId?: number) => {\n let input = new FindUsersInput();\n input.filter = filter;\n input.excludeCurrentUser = true;\n input.maxResultCount = maxResultCount;\n input.skipCount = skipCount;\n input.tenantId = tenantId;\n return this._commonLookupService.findUsers(input);\n },\n });\n\n this.modal.show();\n }\n\n showCommonLookupModal(): void {\n this.userLookupModal.show();\n }\n\n userSelected(user: NameValueDto): void {\n this.userDelegation.targetUserId = parseInt(user.value);\n this.selectedUsername = user.name;\n }\n\n save(): void {\n this.saving = true;\n\n let input = new CreateUserDelegationDto();\n input.targetUserId = this.userDelegation.targetUserId;\n input.startTime = this._dateTimeService.getStartOfDayForDate(this.userDelegation.startTime);\n input.endTime = this._dateTimeService.getEndOfDayForDate(this.userDelegation.endTime);\n\n this._userDelegationService\n .delegateNewUser(input)\n .pipe(\n finalize(() => {\n this.saving = false;\n })\n )\n .subscribe(() => {\n this.notify.info(this.l('SavedSuccessfully'));\n this.close();\n this.modalSave.emit(null);\n });\n }\n\n close(): void {\n this.active = false;\n this.selectedUsername = '';\n this.modal.hide();\n }\n}\n","\n
    \n
    \n
    \n
    \n
    \n {{ 'DelegateNewUser' | localize }}\n
    \n \n
    \n
    \n
    \n \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n \n {{ 'Cancel' | localize }}\n \n \n \n {{ 'Save' | localize }}\n \n
    \n
    \n
    \n
    \n\n\n","import { Component, Injector, OnInit, Input } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { AppConsts } from '@shared/AppConsts';\nimport { ThemeAssetContributorFactory } from '@shared/helpers/ThemeAssetContributorFactory';\n\n@Component({\n templateUrl: './footer.component.html',\n selector: 'footer-bar',\n})\nexport class FooterComponent extends AppComponentBase implements OnInit {\n @Input() useBottomDiv = true;\n\n releaseDate: string;\n webAppGuiVersion: string;\n footerStyle = 'footer py-4 d-flex flex-lg-column';\n\n constructor(injector: Injector) {\n super(injector);\n }\n\n ngOnInit(): void {\n this.releaseDate = this.appSession.application.releaseDate.toFormat('yyyyLLdd');\n this.webAppGuiVersion = AppConsts.WebAppGuiVersion;\n\n let themeAssetContributor = ThemeAssetContributorFactory.getCurrent();\n if (themeAssetContributor) {\n this.footerStyle = themeAssetContributor.getFooterStyle();\n }\n }\n}\n","
    \n
    \n
    \n GetConcurrent\n \n {{ appSession.tenant.edition.displayName }}\n \n | API: v{{ appSession.application.version }} | Client: v{{ webAppGuiVersion }} [{{ releaseDate }}]\n \n
    \n
      \n \n
    \n
    \n
    ","\r\nimport { Injectable } from '@angular/core';\r\nimport { SearchInfoDtoOfGuid, SearchInfoDtoOfInt64, SearchOutputDto, ShipmentSearchInfo, ShipmentType } from '@shared/service-proxies/service-proxies';\r\nimport { PermissionCheckerService } from 'abp-ng2-module';\r\n\r\nexport interface HeaderSearchInputData {\r\n searchText: string;\r\n groups: SearchGroupModel[];\r\n}\r\n\r\ninterface SearchGroupModel {\r\n name: string;\r\n items: SearchGroupItemModel[];\r\n}\r\n\r\ninterface SearchGroupItemModel {\r\n name: string;\r\n icon: string;\r\n url?: any[];\r\n}\r\n\r\n@Injectable()\r\nexport class HeaderSearchInputDataFactoryService {\r\n constructor(private _permissionCheckerService: PermissionCheckerService) { }\r\n\r\n mapOutput(searchOutput: SearchOutputDto, searchText: string): HeaderSearchInputData {\r\n const groups: SearchGroupModel[] = [];\r\n\r\n if (searchOutput.shipments.length) {\r\n groups.push({\r\n name: 'Shipments',\r\n items: searchOutput.shipments.map(shipment => this.mapShipment(shipment)),\r\n });\r\n }\r\n\r\n if (searchOutput.orders.length) {\r\n groups.push({\r\n name: 'Orders',\r\n items: searchOutput.orders.map(order => this.mapOrder(order)),\r\n });\r\n }\r\n\r\n if (searchOutput.inventories.length) {\r\n groups.push({\r\n name: 'Items',\r\n items: searchOutput.inventories.map(item => this.mapItem(item)),\r\n });\r\n }\r\n\r\n return {\r\n searchText,\r\n groups,\r\n };\r\n }\r\n\r\n private mapItem(item: SearchInfoDtoOfGuid) {\r\n return {\r\n name: item.name,\r\n icon: 'icon-Property-3tag',\r\n };\r\n }\r\n\r\n private mapOrder(order: SearchInfoDtoOfInt64) {\r\n return {\r\n id: order.id,\r\n name: order.name,\r\n icon: 'icon-Property-3clipboard-list',\r\n url: this.mapOrderUrl(order),\r\n };\r\n }\r\n\r\n private mapShipment(shipment: ShipmentSearchInfo) {\r\n return {\r\n id: shipment.id,\r\n name: shipment.name,\r\n icon: this.mapShipmentIcon(shipment),\r\n url: this.mapShipmentUrl(shipment),\r\n };\r\n }\r\n\r\n private mapShipmentIcon(shipment: ShipmentSearchInfo) {\r\n switch (shipment.type) {\r\n case ShipmentType.Inbound: return 'icon-Property-3arrow-down-left';\r\n case ShipmentType.Outbound: return 'icon-Property-3arrow-up-left';\r\n default: {\r\n // Ensure no other type exists\r\n const exhaustiveCheck: never = shipment.type;\r\n throw new Error(exhaustiveCheck);\r\n }\r\n }\r\n }\r\n\r\n private mapOrderUrl(order: SearchInfoDtoOfInt64): any[] {\r\n if (this._permissionCheckerService.isGranted('Pages.Tenant.CarrierShipments')) {\r\n return ['/app/admin/carrier-orders', order.id];\r\n } else if (this._permissionCheckerService.isGranted('Pages.Tenant.InventoryOwnerShipments')) {\r\n return ['/app/admin/orders', order.id];\r\n } else {\r\n return undefined;\r\n }\r\n }\r\n\r\n private mapShipmentUrl(shipment: ShipmentSearchInfo): any[] {\r\n if (this._permissionCheckerService.isGranted('Pages.Tenant.CarrierShipments')) {\r\n return ['/app/admin/carrier-shipments', shipment.id];\r\n } else if (this._permissionCheckerService.isGranted('Pages.Tenant.InventoryOwnerShipments')) {\r\n return ['/app/admin/shipments', shipment.id];\r\n } else {\r\n return undefined;\r\n }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { SearchServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { of } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged, map, switchMap, tap } from 'rxjs/operators';\r\nimport { HeaderSearchInputDataFactoryService } from './header-search-input-data-factory.service';\r\n\r\n@Component({\r\n selector: 'header-search-input',\r\n templateUrl: './header-search-input.component.html',\r\n styleUrls: ['./header-search-input.component.less'],\r\n providers: [HeaderSearchInputDataFactoryService],\r\n})\r\nexport class HeaderSearchInputComponent {\r\n readonly filterTextControl = new FormControl();\r\n\r\n readonly searchResults$ = this.filterTextControl.valueChanges.pipe(\r\n map(searchText => searchText?.trim()),\r\n distinctUntilChanged(),\r\n debounceTime(500),\r\n switchMap(searchText => this.search(searchText)),\r\n );\r\n\r\n isOpened: boolean;\r\n\r\n constructor(\r\n private _headerSearchInputDataFactory: HeaderSearchInputDataFactoryService,\r\n private _spinnerService: NgxSpinnerService,\r\n private _searchServiceProxy: SearchServiceProxy,\r\n ) { }\r\n\r\n openMenu() {\r\n this.isOpened = true;\r\n }\r\n\r\n hideMenu() {\r\n this.isOpened = false;\r\n }\r\n\r\n private search(searchText: string) {\r\n if (searchText == null || !searchText.length) {\r\n return of(undefined);\r\n }\r\n\r\n this._spinnerService.show('search-input-loading');\r\n\r\n return this._searchServiceProxy.search(searchText).pipe(\r\n map(searchOutput => this._headerSearchInputDataFactory.mapOutput(searchOutput, searchText)),\r\n tap({ complete: () => this._spinnerService.hide('search-input-loading') }),\r\n );\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    0\">\r\n {{ group.name | localize }}\r\n
    \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n Sorry, we didn't find any matches for \"{{data.searchText}}\"\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, ElementRef, EventEmitter, Injector, Output, ViewChild } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { LinkToUserInput, UserLinkServiceProxy } from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { finalize } from 'rxjs/operators';\n\n@Component({\n selector: 'linkAccountModal',\n templateUrl: './link-account-modal.component.html',\n})\nexport class LinkAccountModalComponent extends AppComponentBase {\n @ViewChild('linkAccountModal', { static: true }) modal: ModalDirective;\n\n @Output() modalSave: EventEmitter = new EventEmitter();\n\n active = false;\n saving = false;\n\n linkUser: LinkToUserInput = new LinkToUserInput();\n\n constructor(injector: Injector, private _userLinkService: UserLinkServiceProxy) {\n super(injector);\n }\n\n show(): void {\n this.active = true;\n this.linkUser = new LinkToUserInput();\n this.linkUser.tenancyName = this.appSession.tenancyName;\n this.modal.show();\n }\n\n onShown(): void {\n document.getElementById('TenancyName').focus();\n }\n\n save(): void {\n this.saving = true;\n this._userLinkService\n .linkToUser(this.linkUser)\n .pipe(\n finalize(() => {\n this.saving = false;\n })\n )\n .subscribe(() => {\n this.notify.info(this.l('SavedSuccessfully'));\n this.close();\n this.modalSave.emit(null);\n });\n }\n\n close(): void {\n this.active = false;\n this.modal.hide();\n }\n}\n","\n
    \n
    \n
    \n
    \n
    \n {{ 'LinkNewAccount' | localize }}\n
    \n \n
    \n\n
    \n
    \n \n \n
    \n\n
    \n \n \n \n
    \n\n
    \n \n \n \n
    \n
    \n\n
    \n \n {{ 'Cancel' | localize }}\n \n \n \n {{ 'Save' | localize }}\n \n
    \n
    \n
    \n
    \n\n","import { Injectable } from '@angular/core';\nimport { AppAuthService } from '@app/shared/common/auth/app-auth.service';\nimport { AppUrlService } from '@shared/common/nav/app-url.service';\nimport {\n AccountServiceProxy,\n SwitchToLinkedAccountInput,\n SwitchToLinkedAccountOutput,\n} from '@shared/service-proxies/service-proxies';\n\n@Injectable()\nexport class LinkedAccountService {\n constructor(\n private _accountService: AccountServiceProxy,\n private _appUrlService: AppUrlService,\n private _authService: AppAuthService\n ) {}\n\n switchToAccount(userId: number, tenantId?: number): void {\n const input = new SwitchToLinkedAccountInput();\n input.targetUserId = userId;\n input.targetTenantId = tenantId;\n\n this._accountService.switchToLinkedAccount(input).subscribe((result: SwitchToLinkedAccountOutput) => {\n let targetUrl =\n this._appUrlService.getAppRootUrlOfTenant(result.tenancyName) +\n '?switchAccountToken=' +\n result.switchAccountToken;\n if (input.targetTenantId) {\n targetUrl = targetUrl + '&tenantId=' + input.targetTenantId;\n }\n\n this._authService.logout(true, targetUrl);\n });\n }\n}\n","import { AbpMultiTenancyService } from 'abp-ng2-module';\nimport { Component, EventEmitter, Injector, Output, ViewChild } from '@angular/core';\nimport { LinkedAccountService } from '@app/shared/layout/linked-account.service';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { LinkedUserDto, UnlinkUserInput, UserLinkServiceProxy } from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { LazyLoadEvent } from 'primeng/api';\nimport { Paginator } from 'primeng/paginator';\nimport { Table } from 'primeng/table';\nimport { LinkAccountModalComponent } from './link-account-modal.component';\nimport { finalize } from 'rxjs/operators';\n\n@Component({\n selector: 'linkedAccountsModal',\n templateUrl: './linked-accounts-modal.component.html',\n})\nexport class LinkedAccountsModalComponent extends AppComponentBase {\n @ViewChild('linkedAccountsModal', { static: true }) modal: ModalDirective;\n @ViewChild('linkAccountModal', { static: true }) linkAccountModal: LinkAccountModalComponent;\n @ViewChild('dataTable', { static: true }) dataTable: Table;\n @ViewChild('paginator', { static: true }) paginator: Paginator;\n\n @Output() modalClose: EventEmitter = new EventEmitter();\n\n constructor(\n injector: Injector,\n private abpMultiTenancyService: AbpMultiTenancyService,\n private _userLinkService: UserLinkServiceProxy,\n private _linkedAccountService: LinkedAccountService\n ) {\n super(injector);\n }\n\n getLinkedUsers(event?: LazyLoadEvent) {\n this.primengTableHelper.showLoadingIndicator();\n\n this._userLinkService\n .getLinkedUsers(\n this.primengTableHelper.getMaxResultCount(this.paginator, event),\n this.primengTableHelper.getSkipCount(this.paginator, event),\n this.primengTableHelper.getSorting(this.dataTable)\n )\n .pipe(finalize(() => this.primengTableHelper.hideLoadingIndicator()))\n .subscribe((result) => {\n this.primengTableHelper.totalRecordsCount = result.totalCount;\n this.primengTableHelper.records = result.items;\n this.primengTableHelper.hideLoadingIndicator();\n });\n }\n\n getShownLinkedUserName(linkedUser: LinkedUserDto): string {\n if (!this.abpMultiTenancyService.isEnabled) {\n return linkedUser.username;\n }\n\n return (linkedUser.tenantId ? linkedUser.tenancyName : '.') + '\\\\' + linkedUser.username;\n }\n\n deleteLinkedUser(linkedUser: LinkedUserDto): void {\n this.message.confirm(\n this.l('LinkedUserDeleteWarningMessage', linkedUser.username),\n this.l('AreYouSure'),\n (isConfirmed) => {\n if (isConfirmed) {\n const unlinkUserInput = new UnlinkUserInput();\n unlinkUserInput.userId = linkedUser.id;\n unlinkUserInput.tenantId = linkedUser.tenantId;\n\n this._userLinkService.unlinkUser(unlinkUserInput).subscribe(() => {\n this.reloadPage();\n this.notify.success(this.l('SuccessfullyUnlinked'));\n });\n }\n }\n );\n }\n\n reloadPage(): void {\n this.paginator.changePage(this.paginator.getPage());\n }\n\n manageLinkedAccounts(): void {\n this.linkAccountModal.show();\n }\n\n switchToUser(linkedUser: LinkedUserDto): void {\n this._linkedAccountService.switchToAccount(linkedUser.id, linkedUser.tenantId);\n }\n\n show(): void {\n this.modal.show();\n }\n\n close(): void {\n this.modal.hide();\n this.modalClose.emit(null);\n }\n}\n","\n
    \n
    \n
    \n

    \n {{ 'LinkedAccounts' | localize }}\n

    \n \n
    \n
    \n \n
    \n \n \n \n \n {{ 'Actions' | localize }}\n \n \n {{ 'UserName' | localize }}\n \n \n \n {{ 'Delete' | localize }}\n \n \n \n \n \n \n \n \n \n {{ 'UserName' | localize }}\n {{ getShownLinkedUserName(record) }}\n \n \n \n \n \n \n \n \n \n
    \n {{ 'NoData' | localize }}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n\n\n","export class AppMenuItem {\n name = '';\n permissionName = '';\n icon = '';\n route = '';\n routeTemplates = [];\n items: AppMenuItem[];\n external: boolean;\n requiresAuthentication: boolean;\n featureDependency: any;\n parameters: {};\n\n constructor(\n name: string,\n permissionName: string,\n icon: string,\n route: string,\n routeTemplates?: string[],\n items?: AppMenuItem[],\n external?: boolean,\n parameters?: Object,\n featureDependency?: any,\n requiresAuthentication?: boolean\n ) {\n this.name = name;\n this.permissionName = permissionName;\n this.icon = icon;\n this.route = route;\n this.routeTemplates = routeTemplates;\n this.external = external;\n this.parameters = parameters;\n this.featureDependency = featureDependency;\n\n if (items === undefined) {\n this.items = [];\n } else {\n this.items = items;\n }\n\n if (this.permissionName) {\n this.requiresAuthentication = true;\n } else {\n this.requiresAuthentication = requiresAuthentication ? requiresAuthentication : false;\n }\n }\n\n hasFeatureDependency(): boolean {\n return this.featureDependency !== undefined;\n }\n\n featureDependencySatisfied(): boolean {\n if (this.featureDependency) {\n return this.featureDependency();\n }\n\n return false;\n }\n}\n","import { AppMenuItem } from './app-menu-item';\n\nexport class AppMenu {\n name = '';\n displayName = '';\n items: AppMenuItem[];\n\n constructor(name: string, displayName: string, items: AppMenuItem[]) {\n this.name = name;\n this.displayName = displayName;\n this.items = items;\n }\n}\n","import { AppSessionService } from '@shared/common/session/app-session.service';\r\nimport { PermissionCheckerService } from 'abp-ng2-module';\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { AppMenu } from './app-menu';\r\nimport { AppMenuItem } from './app-menu-item';\r\n\r\n@Injectable()\r\nexport class AppNavigationService {\r\n constructor(\r\n private _permissionCheckerService: PermissionCheckerService,\r\n private _appSessionService: AppSessionService\r\n ) {}\r\n\r\n getMenu(): AppMenu {\r\n return new AppMenu('MainMenu', 'MainMenu', [\r\n new AppMenuItem(\r\n 'Dashboard',\r\n 'Pages.Administration.Host.Dashboard',\r\n 'flaticon-line-graph',\r\n '/app/admin/hostDashboard'\r\n ),\r\n new AppMenuItem('Dashboard', 'Pages.Tenant.Dashboard', 'flaticon-line-graph', '/app/main/dashboard'),\r\n new AppMenuItem('Organizations', 'Pages.Tenants', 'flaticon-list-3', '/app/admin/organizations'),\r\n new AppMenuItem('Editions', 'Pages.Editions', 'flaticon-app', '/app/admin/editions'),\r\n new AppMenuItem('Orders', 'Pages.Tenant.InventoryOwnerShipments', 'icon-Property-3truck', '/app/admin/orders'),\r\n new AppMenuItem('Orders', 'Pages.Tenant.CarrierShipments', 'icon-Property-3truck', '/app/admin/carrier-orders'),\r\n new AppMenuItem('Appointments', 'Pages.Tenant.InventoryOwnerAppointments', 'icon-Property-3calendar', '/app/admin/appointments'),\r\n new AppMenuItem('Appointments', 'Pages.Tenant.CarrierAppointments', 'icon-Property-3calendar', '/app/admin/carrier-appointments'),\r\n new AppMenuItem(\r\n 'Inventory',\r\n 'Pages.Tenant.InventoryOwnerInventory',\r\n 'icon-Property-3tag',\r\n '',\r\n [],\r\n [\r\n new AppMenuItem(\r\n 'Inventory Summary',\r\n 'Pages.Tenant.InventoryOwnerInventory',\r\n 'icon-Property-3tag',\r\n '/app/admin/inventories/summary'\r\n ),\r\n new AppMenuItem(\r\n 'Inventory Detail',\r\n 'Pages.Tenant.InventoryOwnerInventory',\r\n 'icon-Property-3tag',\r\n '/app/admin/inventories/detail'\r\n ),\r\n // new AppMenuItem(\r\n // 'Item Activity History',\r\n // 'Pages.Tenant.InventoryOwnerInventory',\r\n // 'icon-Property-3tag',\r\n // '/app/admin/inventories/item-activity-history'\r\n // ),\r\n new AppMenuItem(\r\n 'Item Activity History',\r\n 'Pages.Tenant.InventoryOwnerInventory',\r\n 'icon-Property-3tag',\r\n '/app/admin/inventories/inventory-activity-history'\r\n )\r\n ]\r\n ),\r\n\r\n new AppMenuItem('Order Line Warnings', 'Pages.Tenant.InventoryOwnerInventory', 'icon-Property-3tag', '/app/admin/order-line-warnings'),\r\n new AppMenuItem('ItemMaster', 'Pages.Tenant.InventoryOwnerInventory', 'icon-Property-3tag', '/app/admin/items'),\r\n new AppMenuItem(\r\n 'AdminSettings',\r\n '',\r\n 'icon-Property-3cog',\r\n '',\r\n [],\r\n [\r\n // new AppMenuItem(\r\n // 'OrganizationUnits',\r\n // 'Pages.Administration.OrganizationUnits',\r\n // 'flaticon-map',\r\n // '/app/admin/organization-units'\r\n // ),\r\n //new AppMenuItem('Roles', 'Pages.Administration.Roles', 'flaticon-suitcase', '/app/admin/roles'),\r\n new AppMenuItem('Members', 'Pages.Administration.Users', 'icon-Property-3users', '/app/admin/users'),\r\n new AppMenuItem(\r\n 'Languages',\r\n 'Pages.Administration.Languages',\r\n 'flaticon-tabs',\r\n '/app/admin/languages',\r\n ['/app/admin/languages/{name}/texts']\r\n ),\r\n new AppMenuItem(\r\n 'AuditLogs',\r\n 'Pages.Administration.AuditLogs',\r\n 'flaticon-folder-1',\r\n '/app/admin/auditLogs'\r\n ),\r\n new AppMenuItem(\r\n 'Maintenance',\r\n 'Pages.Administration.Host.Maintenance',\r\n 'flaticon-lock',\r\n '/app/admin/maintenance'\r\n ),\r\n // new AppMenuItem(\r\n // 'Subscription',\r\n // 'Pages.Administration.Tenant.SubscriptionManagement',\r\n // 'flaticon-refresh',\r\n // '/app/admin/subscription-management'\r\n // ),\r\n // new AppMenuItem(\r\n // 'VisualSettings',\r\n // 'Pages.Administration.UiCustomization',\r\n // 'flaticon-medical',\r\n // '/app/admin/ui-customization'\r\n // ),\r\n // new AppMenuItem(\r\n // 'WebhookSubscriptions',\r\n // 'Pages.Administration.WebhookSubscription',\r\n // 'flaticon2-world',\r\n // '/app/admin/webhook-subscriptions'\r\n // ),\r\n // new AppMenuItem(\r\n // 'DynamicProperties',\r\n // 'Pages.Administration.DynamicProperties',\r\n // 'flaticon-interface-8',\r\n // '/app/admin/dynamic-property'\r\n // ),\r\n new AppMenuItem(\r\n 'Settings',\r\n 'Pages.Administration.Host.Settings',\r\n 'flaticon-settings',\r\n '/app/admin/hostSettings'\r\n ),\r\n new AppMenuItem(\r\n 'Settings',\r\n 'Pages.Administration.Tenant.Settings',\r\n 'flaticon-settings',\r\n '/app/admin/tenantSettings'\r\n ),\r\n // new AppMenuItem(\r\n // 'Notifications',\r\n // '',\r\n // 'flaticon-alarm',\r\n // '',\r\n // [],\r\n // [\r\n // new AppMenuItem(\r\n // 'Inbox',\r\n // '',\r\n // 'flaticon-mail-1',\r\n // '/app/notifications'\r\n // ),\r\n // new AppMenuItem(\r\n // 'MassNotifications',\r\n // 'Pages.Administration.MassNotification',\r\n // 'flaticon-paper-plane',\r\n // '/app/admin/mass-notifications'\r\n // )\r\n // ]\r\n // )\r\n ]\r\n ),\r\n // new AppMenuItem(\r\n // 'DemoUiComponents',\r\n // 'Pages.DemoUiComponents',\r\n // 'flaticon-shapes',\r\n // '/app/admin/demo-ui-components'\r\n // ),\r\n ]);\r\n }\r\n\r\n checkChildMenuItemPermission(menuItem): boolean {\r\n for (let i = 0; i < menuItem.items.length; i++) {\r\n let subMenuItem = menuItem.items[i];\r\n\r\n if (subMenuItem.permissionName === '' || subMenuItem.permissionName === null) {\r\n if (subMenuItem.route) {\r\n return true;\r\n }\r\n } else if (this._permissionCheckerService.isGranted(subMenuItem.permissionName)) {\r\n return true;\r\n }\r\n\r\n if (subMenuItem.items && subMenuItem.items.length) {\r\n let isAnyChildItemActive = this.checkChildMenuItemPermission(subMenuItem);\r\n if (isAnyChildItemActive) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n showMenuItem(menuItem: AppMenuItem): boolean {\r\n if (\r\n menuItem.permissionName === 'Pages.Administration.Tenant.SubscriptionManagement' &&\r\n this._appSessionService.tenant &&\r\n !this._appSessionService.tenant.edition\r\n ) {\r\n return false;\r\n }\r\n\r\n let hideMenuItem = false;\r\n\r\n if (menuItem.requiresAuthentication && !this._appSessionService.user) {\r\n hideMenuItem = true;\r\n }\r\n\r\n if (menuItem.permissionName && !this._permissionCheckerService.isGranted(menuItem.permissionName)) {\r\n hideMenuItem = true;\r\n }\r\n\r\n if (this._appSessionService.tenant || !abp.multiTenancy.ignoreFeatureCheckForHostUsers) {\r\n if (menuItem.hasFeatureDependency() && !menuItem.featureDependencySatisfied()) {\r\n hideMenuItem = true;\r\n }\r\n }\r\n\r\n if (!hideMenuItem && menuItem.items && menuItem.items.length) {\r\n return this.checkChildMenuItemPermission(menuItem);\r\n }\r\n\r\n return !hideMenuItem;\r\n }\r\n\r\n /**\r\n * Returns all menu items recursively\r\n */\r\n getAllMenuItems(): AppMenuItem[] {\r\n let menu = this.getMenu();\r\n let allMenuItems: AppMenuItem[] = [];\r\n menu.items.forEach((menuItem) => {\r\n allMenuItems = allMenuItems.concat(this.getAllMenuItemsRecursive(menuItem));\r\n });\r\n\r\n return allMenuItems;\r\n }\r\n\r\n private getAllMenuItemsRecursive(menuItem: AppMenuItem): AppMenuItem[] {\r\n if (!menuItem.items) {\r\n return [menuItem];\r\n }\r\n\r\n let menuItems = [menuItem];\r\n menuItem.items.forEach((subMenu) => {\r\n menuItems = menuItems.concat(this.getAllMenuItemsRecursive(subMenu));\r\n });\r\n\r\n return menuItems;\r\n }\r\n}\r\n","import { Component, Injector } from '@angular/core';\nimport { NameValuePair } from '@shared/utils/name-value-pair';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { AppNavigationService } from '../app-navigation.service';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'menu-search-bar',\n templateUrl: './menu-search-bar.component.html',\n styleUrls: ['./menu-search-bar.component.css'],\n})\nexport class MenuSearchBarComponent extends AppComponentBase {\n allMenuItems: any[];\n\n searchMenuResults: NameValuePair[];\n\n isMenuSearchActive = false;\n\n selected: '';\n\n constructor(injector: Injector, private _appNavigationService: AppNavigationService, private router: Router) {\n super(injector);\n this.initializeMenuSearch();\n }\n\n showMenuItem(menuItem): boolean {\n return this._appNavigationService.showMenuItem(menuItem);\n }\n\n searchMenuItem(event) {\n this.searchMenuResults = this.allMenuItems\n .filter(\n (item) =>\n item.name.toLowerCase().includes(event.query.toLowerCase()) ||\n item.route.toLowerCase().includes(event.query.toLowerCase())\n )\n .map(\n (menuItem) =>\n new NameValuePair({\n name: menuItem.name,\n value: menuItem.route,\n })\n );\n }\n\n selectMenuItem(event) {\n if (event && event.value) {\n this.router.navigate([event.value]).then((navigated) => {\n this.selected = '';\n });\n }\n }\n\n private getAllMenuItems() {\n return this._appNavigationService\n .getAllMenuItems()\n .filter((item) => this.showMenuItem(item) && item.route)\n .map((menuItem) => ({\n name: this.l(menuItem.name),\n route: menuItem.route,\n }));\n }\n\n private initializeMenuSearch() {\n this.isMenuSearchActive = false;\n let themeSettings = this.currentTheme.baseSettings;\n\n if (themeSettings && themeSettings.menu && themeSettings.menu.searchActive) {\n this.allMenuItems = this.getAllMenuItems();\n this.isMenuSearchActive = true;\n }\n }\n}\n","\n","import { PermissionCheckerService } from 'abp-ng2-module';\nimport {\n Injector,\n ElementRef,\n Component,\n OnInit,\n ViewEncapsulation,\n Renderer2,\n AfterViewInit,\n Input,\n} from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { AppMenu } from './app-menu';\nimport { AppNavigationService } from './app-navigation.service';\nimport { NavigationEnd, NavigationCancel, Router } from '@angular/router';\nimport { filter } from 'rxjs/operators';\nimport { FormattedStringValueExtracter } from '@shared/helpers/FormattedStringValueExtracter';\nimport * as objectPath from 'object-path';\nimport { AppMenuItem } from './app-menu-item';\nimport { MenuComponent, DrawerComponent, ToggleComponent, ScrollComponent } from '@metronic/app/kt/components';\n\n@Component({\n templateUrl: './side-bar-menu.component.html',\n selector: 'side-bar-menu',\n encapsulation: ViewEncapsulation.None,\n})\nexport class SideBarMenuComponent extends AppComponentBase implements OnInit, AfterViewInit {\n @Input() iconMenu = false;\n\n menu: AppMenu = null;\n currentRouteUrl = '';\n insideTm: any;\n outsideTm: any;\n\n constructor(\n injector: Injector,\n private el: ElementRef,\n private router: Router,\n public permission: PermissionCheckerService,\n private _appNavigationService: AppNavigationService,\n private render: Renderer2\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.menu = this._appNavigationService.getMenu();\n\n this.currentRouteUrl = this.router.url.split(/[?#]/)[0];\n\n this.router.events\n .pipe(filter((event) => event instanceof NavigationEnd))\n .subscribe((event) => (this.currentRouteUrl = this.router.url.split(/[?#]/)[0]));\n\n this.router.events\n .pipe(filter((event) => event instanceof NavigationEnd || event instanceof NavigationCancel))\n .subscribe((event) => {\n this.reinitializeMenu();\n });\n }\n\n ngAfterViewInit(): void {\n this.scrollToCurrentMenuElement();\n }\n\n reinitializeMenu(): void {\n this.menu = this._appNavigationService.getMenu();\n this.currentRouteUrl = this.router.url.split(/[?#]/)[0];\n\n setTimeout(() => {\n MenuComponent.reinitialization();\n DrawerComponent.reinitialization();\n ToggleComponent.reinitialization();\n ScrollComponent.reinitialization();\n }, 50);\n }\n\n showMenuItem(menuItem): boolean {\n return this._appNavigationService.showMenuItem(menuItem);\n }\n\n isMenuItemIsActive(item): boolean {\n if (item.items.length) {\n return this.isMenuRootItemIsActive(item);\n }\n\n if (!item.route) {\n return false;\n }\n\n let urlTree = this.router.parseUrl(this.currentRouteUrl.replace(/\\/$/, ''));\n let urlString = '/' + urlTree.root.children.primary.segments.map((segment) => segment.path).join('/');\n let exactMatch = urlString === item.route.replace(/\\/$/, '');\n if (!exactMatch && item.routeTemplates) {\n for (let i = 0; i < item.routeTemplates.length; i++) {\n let result = new FormattedStringValueExtracter().Extract(urlString, item.routeTemplates[i]);\n if (result.IsMatch) {\n return true;\n }\n }\n }\n return exactMatch;\n }\n\n isMenuRootItemIsActive(item): boolean {\n let result = false;\n\n for (const subItem of item.items) {\n result = this.isMenuItemIsActive(subItem);\n if (result) {\n return true;\n }\n }\n\n return false;\n }\n\n scrollToCurrentMenuElement(): void {\n const path = location.pathname;\n const menuItem = document.querySelector('a[href=\\'' + path + '\\']');\n if (menuItem) {\n menuItem.scrollIntoView({ block: 'center' });\n }\n }\n\n getItemCssClasses(item: AppMenuItem, parentItem: AppMenuItem) {\n let classes = 'menu-item';\n\n if (item.items.length) {\n if (!this.iconMenu) {\n classes += ' menu-accordion';\n } else {\n if (parentItem == null) {\n classes += ' menu-dropdown';\n } else {\n classes += ' menu-accordion';\n }\n }\n }\n\n // custom class for menu item\n const customClass = objectPath.get(item, 'custom-class');\n if (customClass) {\n classes += ' ' + customClass;\n }\n\n if (this.iconMenu && parentItem == null) {\n classes += ' pb-3';\n }\n\n if (!this.iconMenu && this.isMenuItemIsActive(item)) {\n classes += ' show';\n }\n\n return classes;\n }\n\n getSubMenuItemCssClass(item: AppMenuItem, parentItem: AppMenuItem): string {\n let classes = 'menu-sub';\n\n if (!this.iconMenu) {\n classes += ' menu-sub-accordion';\n } else {\n if (parentItem == null) {\n classes += ' menu-sub-dropdown px-1 py-4';\n } else {\n classes += ' menu-sub-accordion';\n }\n }\n\n return classes;\n }\n}\n","\n \n \n \n \n\n\n\n\n\n \n \n \n\n\n\n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n
    \n
    \n \n \n \n
    \n
    \n \n
    \n\n\n \n \n \n \n \n\n \n \n {{ item.name | localize }}\n \n\n \n \n \n \n \n {{ item.name | localize }}\n \n \n {{ item.badge.value }}\n \n \n \n \n\n \n \n\n\n","import { PermissionCheckerService } from 'abp-ng2-module';\nimport { Component, Injector, OnInit, ViewEncapsulation } from '@angular/core';\nimport { NavigationEnd, NavigationCancel, Router } from '@angular/router';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { AppMenu } from './app-menu';\nimport { AppNavigationService } from './app-navigation.service';\nimport * as objectPath from 'object-path';\nimport { filter } from 'rxjs/operators';\nimport { ThemeAssetContributorFactory } from '@shared/helpers/ThemeAssetContributorFactory';\nimport { MenuComponent, DrawerComponent, ToggleComponent, ScrollComponent } from '@metronic/app/kt/components';\n\n@Component({\n templateUrl: './top-bar-menu.component.html',\n selector: 'top-bar-menu',\n encapsulation: ViewEncapsulation.None,\n})\nexport class TopBarMenuComponent extends AppComponentBase implements OnInit {\n menu: AppMenu = null;\n currentRouteUrl: any = '';\n menuDepth: 0;\n menuWrapperStyle = '';\n\n constructor(\n injector: Injector,\n private router: Router,\n public permission: PermissionCheckerService,\n private _appNavigationService: AppNavigationService\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.menu = this._appNavigationService.getMenu();\n this.currentRouteUrl = this.router.url;\n this.menuWrapperStyle = ThemeAssetContributorFactory.getCurrent().getMenuWrapperStyle();\n\n this.router.events.pipe(filter((event) => event instanceof NavigationEnd)).subscribe((event) => {\n this.currentRouteUrl = this.router.url;\n });\n\n this.router.events\n .pipe(filter((event) => event instanceof NavigationEnd || event instanceof NavigationCancel))\n .subscribe((event) => {\n this.reinitializeMenu();\n });\n }\n\n reinitializeMenu(): void {\n setTimeout(() => {\n MenuComponent.reinitialization();\n DrawerComponent.reinitialization();\n ToggleComponent.reinitialization();\n ScrollComponent.reinitialization();\n }, 50);\n }\n\n showMenuItem(menuItem): boolean {\n return this._appNavigationService.showMenuItem(menuItem);\n }\n\n getItemCssClasses(item, parentItem, depth) {\n let cssClasses = 'menu-item';\n\n if (objectPath.get(item, 'icon-only')) {\n cssClasses += ' menu-item-icon-only';\n }\n\n return cssClasses;\n }\n\n getAnchorItemCssClasses(item, parentItem): string {\n let cssClasses = 'menu-link without-sub';\n\n return cssClasses;\n }\n\n getSubmenuCssClasses(item, parentItem, depth): string {\n return 'menu-sub menu-sub-lg-down-accordion menu-sub-lg-dropdown menu-rounded-0 py-lg-4 w-lg-225px';\n }\n\n isMenuItemIsActive(item): boolean {\n if (item.items.length) {\n return this.isMenuRootItemIsActive(item);\n }\n\n if (!item.route) {\n return false;\n }\n\n return this.currentRouteUrl.replace(/\\/$/, '') === item.route.replace(/\\/$/, '');\n }\n\n isMenuRootItemIsActive(item): boolean {\n if (item.items) {\n for (const subItem of item.items) {\n if (this.isMenuItemIsActive(subItem)) {\n return true;\n }\n }\n }\n\n return false;\n }\n\n getItemAttrSubmenuToggle(menuItem, parentItem, depth) {\n if (depth && depth >= 1) {\n return 'hover';\n } else {\n return 'click';\n }\n }\n\n isMobileDevice(): any {\n return KTUtil.isMobileDevice();\n }\n}\n","\n\n
    \n \n
    \n \n \n \n
    \n \n
    \n\n\n\n\n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n \n \n \n \n\n \n \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n\n\n\n \n \n\n \n \n {{ item.name | localize }}\n \n\n","import { Injectable, Injector } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport {\n EntityDtoOfGuid,\n NotificationServiceProxy,\n SetNotificationAsReadOutput,\n} from '@shared/service-proxies/service-proxies';\nimport { DateTime } from 'luxon';\nimport * as Push from 'push.js'; // if using ES6\nimport { NotificationSettingsModalComponent } from './notification-settings-modal.component';\nimport { AppConsts } from '@shared/AppConsts';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\nimport { NotificationDetailModalComponent } from './detail-modal/notification-detail-modal.component';\n\nexport interface IFormattedUserNotification {\n userNotificationId: string;\n text: string;\n time: string;\n creationTime: DateTime;\n icon: string;\n state: String;\n data: any;\n url: string;\n isUnread: boolean;\n severity: abp.notifications.severity;\n iconFontClass: string;\n isHtml: boolean;\n fullMessage: string;\n}\n\n@Injectable()\nexport class UserNotificationHelper extends AppComponentBase {\n settingsModal: NotificationSettingsModalComponent;\n detailModal: NotificationDetailModalComponent;\n\n constructor(\n injector: Injector,\n private _notificationService: NotificationServiceProxy,\n private _dateTimeService: DateTimeService\n ) {\n super(injector);\n }\n\n getUrl(userNotification: abp.notifications.IUserNotification): string {\n switch (userNotification.notification.notificationName) {\n case 'App.NewUserRegistered':\n return '/app/admin/users?filterText=' + userNotification.notification.data.properties.emailAddress;\n case 'App.NewTenantRegistered':\n return '/app/admin/institutions?filterText=' + userNotification.notification.data.properties.tenancyName;\n case 'App.GdprDataPrepared':\n return (\n AppConsts.remoteServiceBaseUrl +\n '/File/DownloadBinaryFile?id=' +\n userNotification.notification.data.properties.binaryObjectId +\n '&contentType=application/zip&fileName=collectedData.zip'\n );\n case 'App.DownloadInvalidImportUsers':\n return (\n AppConsts.remoteServiceBaseUrl +\n '/File/DownloadTempFile?fileToken=' +\n userNotification.notification.data.properties.fileToken +\n '&fileType=' +\n userNotification.notification.data.properties.fileType +\n '&fileName=' +\n userNotification.notification.data.properties.fileName\n );\n //Add your custom notification names to navigate to a URL when user clicks to a notification.\n }\n\n //No url for this notification\n return '';\n }\n\n /* PUBLIC functions ******************************************/\n\n getUiIconBySeverity(severity: abp.notifications.severity): string {\n switch (severity) {\n case abp.notifications.severity.SUCCESS:\n return 'fas fa-check-circle';\n case abp.notifications.severity.WARN:\n return 'fas fa-exclamation-triangle';\n case abp.notifications.severity.ERROR:\n return 'fas fa-exclamation-circle';\n case abp.notifications.severity.FATAL:\n return 'fas fa-bomb';\n case abp.notifications.severity.INFO:\n default:\n return 'fas fa-info-circle';\n }\n }\n\n getIconFontClassBySeverity(severity: abp.notifications.severity): string {\n switch (severity) {\n case abp.notifications.severity.SUCCESS:\n return ' text-success';\n case abp.notifications.severity.WARN:\n return ' text-warning';\n case abp.notifications.severity.ERROR:\n return ' text-danger';\n case abp.notifications.severity.FATAL:\n return ' text-danger';\n case abp.notifications.severity.INFO:\n default:\n return ' text-info';\n }\n }\n\n format(userNotification: abp.notifications.IUserNotification, truncateText?: boolean): IFormattedUserNotification {\n let formatted: IFormattedUserNotification = {\n userNotificationId: userNotification.id,\n text: abp.notifications.getFormattedMessageFromUserNotification(userNotification),\n time: this._dateTimeService.formatDate(userNotification.notification.creationTime, 'yyyy-LL-dd HH:mm:ss'),\n creationTime: userNotification.notification.creationTime as any,\n icon: this.getUiIconBySeverity(userNotification.notification.severity),\n state: abp.notifications.getUserNotificationStateAsString(userNotification.state),\n data: userNotification.notification.data,\n url: this.getUrl(userNotification),\n isUnread: userNotification.state === abp.notifications.userNotificationState.UNREAD,\n severity: userNotification.notification.severity,\n iconFontClass: this.getIconFontClassBySeverity(userNotification.notification.severity),\n isHtml: this.isHTMLMessage(userNotification.notification.data.properties.Message),\n fullMessage: userNotification.notification.data.properties.Message\n };\n\n if (truncateText || truncateText === undefined) {\n formatted.text = abp.utils.truncateStringWithPostfix(formatted.text, 100);\n }\n\n return formatted;\n }\n\n isHTMLMessage(message): boolean {\n let doc = new DOMParser().parseFromString(message, \"text/html\");\n return [].slice.call(doc.body.childNodes).some(node => node.nodeType === 1);\n }\n\n show(userNotification: abp.notifications.IUserNotification): void {\n let url = this.getUrl(userNotification);\n //Application notification\n abp.notifications.showUiNotifyForUserNotification(userNotification, {\n didOpen: (toast) => {\n toast.addEventListener('click', () => {\n //Take action when user clicks to live toastr notification\n if (url) {\n location.href = url;\n }\n });\n },\n });\n if (Push.default.Permission.has()) {\n //Desktop notification\n Push.default.create('GetConcurrent', {\n body: this.format(userNotification).text,\n icon: abp.appPath + 'assets/common/images/app-logo-on-dark-sm.svg',\n timeout: 6000,\n onClick: function () {\n window.focus();\n this.close();\n },\n });\n }\n }\n\n setAllAsRead(callback?: () => void): void {\n this._notificationService.setAllNotificationsAsRead().subscribe(() => {\n abp.event.trigger('app.notifications.refresh');\n if (callback) {\n callback();\n }\n });\n }\n\n setAsRead(userNotificationId: string, callback?: (userNotificationId: string) => void): void {\n const input = new EntityDtoOfGuid();\n input.id = userNotificationId;\n this._notificationService.setNotificationAsRead(input).subscribe((result: SetNotificationAsReadOutput) => {\n abp.event.trigger('app.notifications.read', userNotificationId, result.success);\n if (callback) {\n callback(userNotificationId);\n }\n });\n }\n\n openSettingsModal(): void {\n this.settingsModal.show();\n }\n\n openDetailModal(content: string, isHtml: boolean) {\n this.detailModal.show(content, isHtml);\n }\n}\n","import { Component, Injector, OnInit, ViewChild } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\n\n@Component({\n selector: 'notification-detail-modal',\n templateUrl: './notification-detail-modal.component.html',\n})\nexport class NotificationDetailModalComponent extends AppComponentBase {\n @ViewChild('messageDetailModal', { static: true }) modal: ModalDirective;\n\n content: string;\n isHtml: boolean;\n\n constructor(injector: Injector) {\n super(injector);\n }\n\n show(text: string, isHtml: boolean) {\n this.content = text;\n this.isHtml = isHtml;\n this.modal.show();\n }\n\n close() {\n this.content = '';\n this.isHtml = false;\n this.modal.hide();\n }\n}\n","
    \n
    \n
    \n
    \n
    \n\n
    \n {{content}}\n
    \n
    \n
    \n
    ","import { Component, Injector, Input, NgZone, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { AppComponentBase } from '@shared/common/app-component-base';\r\nimport { UrlHelper } from '@shared/helpers/UrlHelper';\r\nimport { NotificationServiceProxy, UserNotification } from '@shared/service-proxies/service-proxies';\r\nimport { forEach as _forEach } from 'lodash-es';\r\nimport { IFormattedUserNotification, UserNotificationHelper } from './UserNotificationHelper';\r\n\r\n@Component({\r\n templateUrl: './header-notifications.component.html',\r\n selector: 'header-notifications',\r\n styleUrls: ['./header-notifications.component.less'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class HeaderNotificationsComponent extends AppComponentBase implements OnInit {\r\n @Input() customStyle = 'd-flex align-items-center justify-content-center cursor-pointer position-relative w-30px h-30px w-md-40px h-md-40px header-notifications__bell-icon-wrapper';\r\n @Input() iconStyle = 'flaticon-alert-2 unread-notification fs-4';\r\n\r\n notifications: IFormattedUserNotification[] = [];\r\n unreadNotificationCount = 0;\r\n\r\n constructor(\r\n injector: Injector,\r\n private _notificationService: NotificationServiceProxy,\r\n private _userNotificationHelper: UserNotificationHelper,\r\n public _zone: NgZone\r\n ) {\r\n super(injector);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.loadNotifications();\r\n this.registerToEvents();\r\n }\r\n\r\n loadNotifications(): void {\r\n if (UrlHelper.isInstallUrl(location.href)) {\r\n return;\r\n }\r\n\r\n this._notificationService.getUserNotifications(undefined, undefined, undefined, 3, 0).subscribe((result) => {\r\n this.unreadNotificationCount = result.unreadCount;\r\n this.notifications = [];\r\n _forEach(result.items, (item: UserNotification) => {\r\n this.notifications.push(this._userNotificationHelper.format(item));\r\n });\r\n });\r\n }\r\n\r\n registerToEvents() {\r\n let self = this;\r\n\r\n function onNotificationReceived(userNotification) {\r\n self._userNotificationHelper.show(userNotification);\r\n self.loadNotifications();\r\n }\r\n\r\n this.subscribeToEvent('abp.notifications.received', (userNotification) => {\r\n self._zone.run(() => {\r\n onNotificationReceived(userNotification);\r\n });\r\n });\r\n\r\n function onNotificationsRefresh() {\r\n self.loadNotifications();\r\n }\r\n\r\n this.subscribeToEvent('app.notifications.refresh', () => {\r\n self._zone.run(() => {\r\n onNotificationsRefresh();\r\n });\r\n });\r\n\r\n function onNotificationsRead(userNotificationId, success) {\r\n for (let i = 0; i < self.notifications.length; i++) {\r\n if (self.notifications[i].userNotificationId === userNotificationId) {\r\n self.notifications[i].state = 'READ';\r\n self.notifications[i].isUnread = false;\r\n }\r\n }\r\n\r\n if (success) {\r\n self.unreadNotificationCount -= 1;\r\n }\r\n }\r\n\r\n this.subscribeToEvent('app.notifications.read', (userNotificationId, success) => {\r\n self._zone.run(() => {\r\n onNotificationsRead(userNotificationId, success);\r\n });\r\n });\r\n }\r\n\r\n setAllNotificationsAsRead(): void {\r\n this._userNotificationHelper.setAllAsRead();\r\n }\r\n\r\n openNotificationSettingsModal(): void {\r\n this._userNotificationHelper.openSettingsModal();\r\n }\r\n\r\n setNotificationAsRead(userNotification: IFormattedUserNotification): void {\r\n if (userNotification.state !== 'READ') {\r\n this._userNotificationHelper.setAsRead(userNotification.userNotificationId);\r\n }\r\n }\r\n\r\n gotoUrl(url): void {\r\n if (url) {\r\n location.href = url;\r\n }\r\n }\r\n\r\n showMessageDetailModal(message: string): void {\r\n this._userNotificationHelper.openDetailModal(message, true);\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n

    \r\n \r\n {{ 'Notifications' | localize }}\r\n \r\n {{ unreadNotificationCount }} {{ 'New' | localize }}\r\n \r\n \r\n \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n {{ notification.text }}\r\n \r\n\r\n \r\n\r\n
    \r\n \r\n {{ notification.creationTime | luxonFromNow }}\r\n \r\n \r\n {{ 'SetAsRead' | localize }}\r\n \r\n
    \r\n
    \r\n\r\n \r\n {{ 'ThereAreNoNotifications' | localize }}\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, Injector, ViewChild } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport {\n GetNotificationSettingsOutput,\n NotificationServiceProxy,\n NotificationSubscriptionDto,\n UpdateNotificationSettingsInput,\n} from '@shared/service-proxies/service-proxies';\nimport { map as _map } from 'lodash-es';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { finalize } from 'rxjs/operators';\n\n@Component({\n selector: 'notificationSettingsModal',\n templateUrl: './notification-settings-modal.component.html',\n})\nexport class NotificationSettingsModalComponent extends AppComponentBase {\n @ViewChild('modal', { static: true }) modal: ModalDirective;\n\n saving = false;\n\n settings: GetNotificationSettingsOutput;\n\n constructor(injector: Injector, private _notificationService: NotificationServiceProxy) {\n super(injector);\n }\n\n show() {\n this.getSettings(() => {\n this.modal.show();\n });\n }\n\n save(): void {\n const input = new UpdateNotificationSettingsInput();\n input.receiveNotifications = this.settings.receiveNotifications;\n input.notifications = _map(this.settings.notifications, (n) => {\n let subscription = new NotificationSubscriptionDto();\n subscription.name = n.name;\n subscription.isSubscribed = n.isSubscribed;\n return subscription;\n });\n\n this.saving = true;\n this._notificationService\n .updateNotificationSettings(input)\n .pipe(finalize(() => (this.saving = false)))\n .subscribe(() => {\n this.notify.info(this.l('SavedSuccessfully'));\n this.close();\n });\n }\n\n close(): void {\n this.modal.hide();\n }\n\n private getSettings(callback: () => void) {\n this._notificationService.getNotificationSettings().subscribe((result: GetNotificationSettingsOutput) => {\n this.settings = result;\n callback();\n });\n }\n}\n","\n
    \n
    \n
    \n
    \n
    \n {{ 'NotificationSettings' | localize }}\n
    \n \n
    \n
    \n

    {{ 'ReceiveNotifications' | localize }}

    \n \n

    {{ 'NotificationTypes' | localize }}

    \n

    \n {{ 'ReceiveNotifications_DisableInfo' | localize }}\n

    \n \n
    \n
    \n \n {{ 'Cancel' | localize }}\n \n \n \n {{ 'Save' | localize }}\n \n
    \n
    \n
    \n
    \n\n","import { Component, Injector, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { appModuleAnimation } from '@shared/animations/routerTransition';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport {\n NotificationServiceProxy,\n UserNotification,\n UserNotificationState,\n} from '@shared/service-proxies/service-proxies';\nimport { DateTime } from 'luxon';\nimport { LazyLoadEvent } from 'primeng/api';\nimport { Paginator } from 'primeng/paginator';\nimport { Table } from 'primeng/table';\nimport { IFormattedUserNotification, UserNotificationHelper } from './UserNotificationHelper';\nimport { finalize } from 'rxjs/operators';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\n\n@Component({\n templateUrl: './notifications.component.html',\n styleUrls: ['./notifications.component.less'],\n encapsulation: ViewEncapsulation.None,\n animations: [appModuleAnimation()],\n})\nexport class NotificationsComponent extends AppComponentBase {\n @ViewChild('dataTable', { static: true }) dataTable: Table;\n @ViewChild('paginator', { static: true }) paginator: Paginator;\n\n readStateFilter = 'ALL';\n dateRange: DateTime[] = [this._dateTimeService.getStartOfDay(), this._dateTimeService.getEndOfDay()];\n loading = false;\n\n constructor(\n injector: Injector,\n private _notificationService: NotificationServiceProxy,\n private _userNotificationHelper: UserNotificationHelper,\n private _dateTimeService: DateTimeService\n ) {\n super(injector);\n }\n\n reloadPage(): void {\n this.paginator.changePage(this.paginator.getPage());\n }\n\n setAsRead(record: any): void {\n this.setNotificationAsRead(record, () => {\n this.reloadPage();\n });\n }\n\n isRead(record: any): boolean {\n return record.formattedNotification.state === 'READ';\n }\n\n fromNow(date: DateTime): string {\n return this._dateTimeService.fromNow(date);\n }\n\n formatRecord(record: any): IFormattedUserNotification {\n return this._userNotificationHelper.format(record, false);\n }\n\n formatNotification(record: any): string {\n const formattedRecord = this.formatRecord(record);\n return abp.utils.truncateStringWithPostfix(formattedRecord.text, 120);\n }\n\n formatNotifications(records: any[]): any[] {\n const formattedRecords = [];\n for (const record of records) {\n record.formattedNotification = this.formatRecord(record);\n formattedRecords.push(record);\n }\n return formattedRecords;\n }\n\n truncateString(text: any, length: number): string {\n return abp.utils.truncateStringWithPostfix(text, length);\n }\n\n getNotifications(event?: LazyLoadEvent): void {\n if (this.primengTableHelper.shouldResetPaging(event)) {\n this.paginator.changePage(0);\n\n if (this.primengTableHelper.records && this.primengTableHelper.records.length > 0) {\n return;\n }\n }\n\n this.primengTableHelper.showLoadingIndicator();\n\n this._notificationService\n .getUserNotifications(\n this.readStateFilter === 'ALL' ? undefined : UserNotificationState.Unread,\n this._dateTimeService.getStartOfDayForDate(this.dateRange[0]),\n this._dateTimeService.getEndOfDayForDate(this.dateRange[1]),\n this.primengTableHelper.getMaxResultCount(this.paginator, event),\n this.primengTableHelper.getSkipCount(this.paginator, event)\n )\n .pipe(finalize(() => this.primengTableHelper.hideLoadingIndicator()))\n .subscribe((result) => {\n this.primengTableHelper.totalRecordsCount = result.totalCount;\n this.primengTableHelper.records = this.formatNotifications(result.items);\n this.primengTableHelper.hideLoadingIndicator();\n });\n }\n\n setAllNotificationsAsRead(): void {\n this._userNotificationHelper.setAllAsRead(() => {\n this.getNotifications();\n });\n }\n\n openNotificationSettingsModal(): void {\n this._userNotificationHelper.openSettingsModal();\n }\n\n setNotificationAsRead(userNotification: UserNotification, callback: () => void): void {\n this._userNotificationHelper.setAsRead(userNotification.id, () => {\n if (callback) {\n callback();\n }\n });\n }\n\n deleteNotification(userNotification: UserNotification): void {\n this.message.confirm(this.l('NotificationDeleteWarningMessage'), this.l('AreYouSure'), (isConfirmed) => {\n if (isConfirmed) {\n this._notificationService.deleteNotification(userNotification.id).subscribe(() => {\n this.reloadPage();\n this.notify.success(this.l('SuccessfullyDeleted'));\n });\n }\n });\n }\n\n deleteNotifications() {\n this.message.confirm(this.l('DeleteListedNotificationsWarningMessage'), this.l('AreYouSure'), (isConfirmed) => {\n if (isConfirmed) {\n this._notificationService\n .deleteAllUserNotifications(\n this.readStateFilter === 'ALL' ? undefined : UserNotificationState.Unread,\n this._dateTimeService.getStartOfDayForDate(this.dateRange[0]),\n this._dateTimeService.getEndOfDayForDate(this.dateRange[1]).endOf('day')\n )\n .subscribe(() => {\n this.reloadPage();\n this.notify.success(this.l('SuccessfullyDeleted'));\n });\n }\n });\n }\n\n public getRowClass(formattedRecord: IFormattedUserNotification): string {\n return formattedRecord.state === 'READ' ? 'notification-read' : '';\n }\n\n getNotificationTextBySeverity(severity: abp.notifications.severity): string {\n switch (severity) {\n case abp.notifications.severity.SUCCESS:\n return this.l('Success');\n case abp.notifications.severity.WARN:\n return this.l('Warning');\n case abp.notifications.severity.ERROR:\n return this.l('Error');\n case abp.notifications.severity.FATAL:\n return this.l('Fatal');\n case abp.notifications.severity.INFO:\n default:\n return this.l('Info');\n }\n }\n\n showMessageDetailModal(message: string): void {\n this._userNotificationHelper.openDetailModal(message, true);\n }\n}\n","
    \n
    \n \n \n
    \n
    \n
    \n {{ 'Notifications' | localize}}\n
    \n \n
    \n \n \n
    \n
    \n\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n \n \n \n {{ 'Actions' | localize }}\n \n {{ 'Severity' | localize }}\n \n {{ 'Notification' | localize }}\n \n \n {{ 'CreationTime' | localize }}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{ 'Notification' | localize }}\n \n {{ truncateString(record.formattedNotification.text, 120) }}\n \n \n {{ truncateString(record.formattedNotification.text, 120) }}\n \n\n \n {{'ShowHTMLData' | localize}}\n \n \n \n \n {{ fromNow(record.notification.creationTime) }}\n \n \n \n \n \n
    \n {{ 'NoData' | localize }}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n","import { Component, ElementRef, Injector, ViewChild } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport {\n ChangePasswordInput,\n PasswordComplexitySetting,\n ProfileServiceProxy,\n} from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { finalize } from 'rxjs/operators';\n\n@Component({\n selector: 'changePasswordModal',\n templateUrl: './change-password-modal.component.html',\n styleUrls: ['./change-password-modal.component.less'],\n})\nexport class ChangePasswordModalComponent extends AppComponentBase {\n @ViewChild('currentPasswordInput', { static: true }) currentPasswordInput: ElementRef;\n @ViewChild('changePasswordModal', { static: true }) modal: ModalDirective;\n\n passwordComplexitySetting: PasswordComplexitySetting = new PasswordComplexitySetting();\n currentPassword: string;\n password: string;\n confirmPassword: string;\n\n saving = false;\n active = false;\n\n constructor(injector: Injector, private _profileService: ProfileServiceProxy) {\n super(injector);\n }\n\n show(): void {\n this.active = true;\n this.currentPassword = '';\n this.password = '';\n this.confirmPassword = '';\n\n this._profileService.getPasswordComplexitySetting().subscribe((result) => {\n this.passwordComplexitySetting = result.setting;\n this.modal.show();\n });\n }\n\n onShown(): void {\n document.getElementById('CurrentPassword').focus();\n }\n\n close(): void {\n this.active = false;\n this.modal.hide();\n }\n\n save(): void {\n let input = new ChangePasswordInput();\n input.currentPassword = this.currentPassword;\n input.newPassword = this.password;\n\n this.saving = true;\n this._profileService\n .changePassword(input)\n .pipe(\n finalize(() => {\n this.saving = false;\n })\n )\n .subscribe(() => {\n this.notify.info(this.l('YourPasswordHasChangedSuccessfully'));\n this.close();\n });\n }\n}\n","\n
    \n
    \n
    \n
    \n
    \n {{ 'ChangePassword' | localize }}\n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n \n
    \n
    \n
      \n
    • \n {{ 'PasswordComplexity_RequireDigit_Hint' | localize }}\n
    • \n
    • \n {{ 'PasswordComplexity_RequireLowercase_Hint' | localize }}\n
    • \n
    • \n {{ 'PasswordComplexity_RequireUppercase_Hint' | localize }}\n
    • \n
    • \n {{ 'PasswordComplexity_RequireNonAlphanumeric_Hint' | localize }}\n
    • \n
    • \n {{\n 'PasswordComplexity_RequiredLength_Hint'\n | localize: passwordComplexitySetting.requiredLength\n }}\n
    • \n
    \n
    \n
    \n \n \n
    \n
    \n
      \n
    • \n {{ 'PasswordComplexity_RequireDigit_Hint' | localize }}\n
    • \n
    • \n {{ 'PasswordComplexity_RequireLowercase_Hint' | localize }}\n
    • \n
    • \n {{ 'PasswordComplexity_RequireUppercase_Hint' | localize }}\n
    • \n
    • \n {{ 'PasswordComplexity_RequireNonAlphanumeric_Hint' | localize }}\n
    • \n
    • \n {{\n 'PasswordComplexity_RequiredLength_Hint'\n | localize: passwordComplexitySetting.requiredLength\n }}\n
    • \n
    • {{ 'PasswordsDontMatch' | localize }}
    • \n
    \n
    \n
    \n
    \n \n {{ 'Cancel' | localize }}\n \n \n \n {{ 'Save' | localize }}\n \n
    \n
    \n
    \n
    \n\n","import { IAjaxResponse, TokenService } from 'abp-ng2-module';\nimport { Component, ElementRef, EventEmitter, Injector, Output, ViewChild } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { ProfileServiceProxy, UpdateProfilePictureInput } from '@shared/service-proxies/service-proxies';\nimport { FileUploader, FileUploaderOptions, FileItem } from 'ng2-file-upload';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { finalize } from 'rxjs/operators';\nimport { ImageCroppedEvent, base64ToFile } from 'ngx-image-cropper';\n\n@Component({\n selector: 'changeProfilePictureModal',\n templateUrl: './change-profile-picture-modal.component.html',\n})\nexport class ChangeProfilePictureModalComponent extends AppComponentBase {\n @ViewChild('changeProfilePictureModal', { static: true }) modal: ModalDirective;\n @ViewChild('uploadProfilePictureInputLabel') uploadProfilePictureInputLabel: ElementRef;\n\n @Output() modalSave: EventEmitter = new EventEmitter();\n\n public active = false;\n public uploader: FileUploader;\n public temporaryPictureUrl: string;\n public saving = false;\n public maxProfilPictureBytesUserFriendlyValue = 5;\n public useGravatarProfilePicture = false;\n\n imageChangedEvent: any = '';\n userId: number = null;\n\n private _uploaderOptions: FileUploaderOptions = {};\n\n constructor(injector: Injector, private _profileService: ProfileServiceProxy, private _tokenService: TokenService) {\n super(injector);\n }\n\n initializeModal(): void {\n this.active = true;\n this.temporaryPictureUrl = '';\n this.useGravatarProfilePicture = this.setting.getBoolean('App.UserManagement.UseGravatarProfilePicture');\n if (!this.canUseGravatar()) {\n this.useGravatarProfilePicture = false;\n }\n this.initFileUploader();\n }\n\n show(userId?: number): void {\n this.initializeModal();\n this.modal.show();\n this.userId = userId;\n }\n\n close(): void {\n this.active = false;\n this.imageChangedEvent = '';\n this.uploader.clearQueue();\n this.modal.hide();\n }\n\n fileChangeEvent(event: any): void {\n if (event.target.files[0].size > 5242880) {\n //5MB\n this.message.warn(this.l('ProfilePicture_Warn_SizeLimit', this.maxProfilPictureBytesUserFriendlyValue));\n return;\n }\n\n this.uploadProfilePictureInputLabel.nativeElement.innerText = event.target.files[0].name;\n\n this.imageChangedEvent = event;\n }\n\n imageCroppedFile(event: ImageCroppedEvent) {\n this.uploader.clearQueue();\n this.uploader.addToQueue([base64ToFile(event.base64)]);\n }\n\n initFileUploader(): void {\n this.uploader = new FileUploader({ url: AppConsts.remoteServiceBaseUrl + '/Profile/UploadProfilePicture' });\n this._uploaderOptions.autoUpload = false;\n this._uploaderOptions.authToken = 'Bearer ' + this._tokenService.getToken();\n this._uploaderOptions.removeAfterUpload = true;\n this.uploader.onAfterAddingFile = (file) => {\n file.withCredentials = false;\n };\n\n this.uploader.onBuildItemForm = (fileItem: FileItem, form: any) => {\n form.append('FileType', fileItem.file.type);\n form.append('FileName', 'ProfilePicture');\n form.append('FileToken', this.guid());\n };\n\n this.uploader.onSuccessItem = (item, response, status) => {\n const resp = JSON.parse(response);\n if (resp.success) {\n this.updateProfilePicture(resp.result.fileToken);\n } else {\n this.message.error(resp.error.message);\n }\n };\n\n this.uploader.setOptions(this._uploaderOptions);\n }\n\n updateProfilePicture(fileToken: string): void {\n const input = new UpdateProfilePictureInput();\n input.fileToken = fileToken;\n input.x = 0;\n input.y = 0;\n input.width = 0;\n input.height = 0;\n\n if (this.userId) {\n input.userId = this.userId;\n }\n\n this.saving = true;\n this._profileService\n .updateProfilePicture(input)\n .pipe(\n finalize(() => {\n this.saving = false;\n })\n )\n .subscribe(() => {\n abp.setting.values['App.UserManagement.UseGravatarProfilePicture'] =\n this.useGravatarProfilePicture.toString();\n abp.event.trigger('profilePictureChanged');\n this.modalSave.emit(this.userId);\n this.close();\n });\n }\n\n updateProfilePictureToUseGravatar(): void {\n const input = new UpdateProfilePictureInput();\n input.useGravatarProfilePicture = this.useGravatarProfilePicture;\n\n this.saving = true;\n this._profileService\n .updateProfilePicture(input)\n .pipe(\n finalize(() => {\n this.saving = false;\n })\n )\n .subscribe(() => {\n abp.setting.values['App.UserManagement.UseGravatarProfilePicture'] =\n this.useGravatarProfilePicture.toString();\n abp.event.trigger('profilePictureChanged');\n this.close();\n });\n }\n\n guid(): string {\n function s4() {\n return Math.floor((1 + Math.random()) * 0x10000)\n .toString(16)\n .substring(1);\n }\n\n return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4();\n }\n\n save(): void {\n if (this.useGravatarProfilePicture) {\n this.updateProfilePictureToUseGravatar();\n } else {\n this.uploader.uploadAll();\n }\n }\n\n canUseGravatar(): boolean {\n return this.setting.getBoolean('App.UserManagement.AllowUsingGravatarProfilePicture');\n }\n}\n","\n
    \n
    \n
    \n
    \n
    \n {{ 'ChangeProfilePicture' | localize }}\n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n {{ 'ChooseAFile' | localize }}\n \n
    \n \n {{ 'ProfilePicture_Change_Info' | localize: maxProfilPictureBytesUserFriendlyValue }}\n \n
    \n
    \n \n
    \n
    \n \n {{ 'Cancel' | localize }}\n \n \n \n {{ 'Save' | localize }}\n \n
    \n
    \n
    \n
    \n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AppSharedModule } from '@app/shared/app-shared.module';\nimport { ChangeProfilePictureModalComponent } from './change-profile-picture-modal.component';\n\n@NgModule({\n imports: [CommonModule, AppSharedModule],\n declarations: [ChangeProfilePictureModalComponent],\n exports: [ChangeProfilePictureModalComponent],\n})\nexport class ChangeProfilePictureModalModule {}\n\n","import { Component, EventEmitter, Injector, Output, ViewChild, OnInit } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport {\n CurrentUserProfileEditDto,\n SettingScopes,\n ProfileServiceProxy,\n UpdateGoogleAuthenticatorKeyOutput,\n SendVerificationSmsInputDto,\n} from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { SmsVerificationModalComponent } from './sms-verification-modal.component';\nimport { finalize } from 'rxjs/operators';\n\n@Component({\n selector: 'mySettingsModal',\n templateUrl: './my-settings-modal.component.html',\n})\nexport class MySettingsModalComponent extends AppComponentBase implements OnInit {\n @ViewChild('mySettingsModal', { static: true }) modal: ModalDirective;\n @ViewChild('smsVerificationModal') smsVerificationModal: SmsVerificationModalComponent;\n @Output() modalSave: EventEmitter = new EventEmitter();\n\n public active = false;\n public saving = false;\n public isGoogleAuthenticatorEnabled = false;\n public isPhoneNumberConfirmed: boolean;\n public smsEnabled: boolean;\n public user: CurrentUserProfileEditDto;\n public showTimezoneSelection: boolean = abp.clock.provider.supportsMultipleTimezone;\n public canChangeUserName: boolean;\n public defaultTimezoneScope: SettingScopes = SettingScopes.User;\n public savedPhoneNumber: string;\n public newPhoneNumber: string;\n\n isMultiTenancyEnabled: boolean = this.multiTenancy.isEnabled;\n isTwoFactorLoginEnabledForApplication = false;\n\n private _initialTimezone: string = undefined;\n\n constructor(injector: Injector, private _profileService: ProfileServiceProxy) {\n super(injector);\n }\n\n ngOnInit(): void {\n this.isTwoFactorLoginEnabledForApplication = abp.setting.getBoolean(\n 'Abp.Zero.UserManagement.TwoFactorLogin.IsEnabled'\n );\n }\n\n show(): void {\n this.active = true;\n this._profileService.getCurrentUserProfileForEdit().subscribe((result) => {\n this.smsEnabled = this.setting.getBoolean('App.UserManagement.SmsVerificationEnabled');\n this.user = result;\n this._initialTimezone = result.timezone;\n this.canChangeUserName = this.user.userName !== AppConsts.userManagement.defaultAdminUserName;\n this.modal.show();\n this.isGoogleAuthenticatorEnabled = result.isGoogleAuthenticatorEnabled;\n this.isPhoneNumberConfirmed = result.isPhoneNumberConfirmed;\n this.savedPhoneNumber = result.phoneNumber;\n });\n }\n\n updateQrCodeSetupImageUrl(): void {\n this._profileService.updateGoogleAuthenticatorKey().subscribe((result: UpdateGoogleAuthenticatorKeyOutput) => {\n this.user.qrCodeSetupImageUrl = result.qrCodeSetupImageUrl;\n this.isGoogleAuthenticatorEnabled = true;\n });\n }\n\n disableGoogleAuthenticator(): void {\n this._profileService.disableGoogleAuthenticator().subscribe(() => {\n this.isGoogleAuthenticatorEnabled = false;\n });\n }\n\n smsVerify(): void {\n let input = new SendVerificationSmsInputDto();\n input.phoneNumber = this.user.phoneNumber;\n this._profileService.sendVerificationSms(input).subscribe(() => {\n this.smsVerificationModal.show();\n });\n }\n\n changePhoneNumberToVerified(): void {\n this.isPhoneNumberConfirmed = true;\n this.savedPhoneNumber = this.user.phoneNumber;\n }\n\n onShown(): void {\n document.getElementById('Name').focus();\n }\n\n close(): void {\n this.active = false;\n this.modal.hide();\n }\n\n save(): void {\n this.saving = true;\n this._profileService\n .updateCurrentUserProfile(this.user)\n .pipe(\n finalize(() => {\n this.saving = false;\n })\n )\n .subscribe(() => {\n this.appSession.user.name = this.user.name;\n this.appSession.user.surname = this.user.surname;\n this.appSession.user.userName = this.user.userName;\n this.appSession.user.emailAddress = this.user.emailAddress;\n this.notify.info(this.l('SavedSuccessfully'));\n this.close();\n this.modalSave.emit(null);\n\n if (abp.clock.provider.supportsMultipleTimezone && this._initialTimezone !== this.user.timezone) {\n this.message.info(this.l('TimeZoneSettingChangedRefreshPageNotification')).then(() => {\n window.location.reload();\n });\n }\n });\n }\n}\n","\n
    \n
    \n
    \n
    \n
    \n {{ 'MySettings' | localize }}\n
    \n \n
    \n
    \n \n \n
    \n \n \n \n
    \n\n
    \n \n \n \n
    \n\n
    \n \n \n \n
    \n
    \n
    \n \n
    \n \n\n \n \n \n {{ 'Verify' | localize }}\n \n \n\n \n \n \n \n
    \n
    \n
    \n
    \n\n
    \n \n \n \n {{ 'CanNotChangeAdminUserName' | localize }}\n \n \n
    \n\n
    \n \n \n
    \n \n \n
    \n

    Google Authenticator

    \n\n
    \n
    \n {{ 'ScanQrCodeWithYourMobileApp' | localize }}\n
    \n
    \n \n
    \n \n {{ 'GoogleAuthenticatorReferrerLink' | localize }}:\n \n Google Authenticator\n \n \n
    \n\n
    \n \n
    \n\n
    \n \n
    \n
    \n \n \n
    \n
    \n \n {{ 'Cancel' | localize }}\n \n \n \n {{ 'Save' | localize }}\n \n
    \n \n
    \n \n\n\n","import { Component, ElementRef, EventEmitter, Injector, Output, ViewChild, Input } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { ProfileServiceProxy, VerifySmsCodeInputDto } from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { finalize } from 'rxjs/operators';\n\n@Component({\n selector: 'smsVerificationModal',\n templateUrl: './sms-verification-modal.component.html',\n})\nexport class SmsVerificationModalComponent extends AppComponentBase {\n @ViewChild('nameInput', { static: true }) nameInput: ElementRef;\n @ViewChild('smsVerificationModal', { static: true }) modal: ModalDirective;\n\n @Input() newPhoneNumber: string;\n\n @Output() modalSave: EventEmitter = new EventEmitter();\n\n public active = false;\n public saving = false;\n public verifyCodeInput: VerifySmsCodeInputDto = new VerifySmsCodeInputDto();\n\n constructor(injector: Injector, private _profileService: ProfileServiceProxy) {\n super(injector);\n }\n\n show(): void {\n this.active = true;\n this.modal.show();\n }\n\n close(): void {\n this.active = false;\n this.modal.hide();\n }\n\n save(): void {\n this.saving = true;\n this.verifyCodeInput.phoneNumber = this.newPhoneNumber;\n this._profileService\n .verifySmsCode(this.verifyCodeInput)\n .pipe(\n finalize(() => {\n this.saving = false;\n })\n )\n .subscribe(() => {\n this.close();\n this.modalSave.emit();\n });\n }\n}\n","\n
    \n
    \n
    \n
    \n
    \n {{ 'VerifyYourCode' | localize }}\n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n\n
    \n \n \n {{ 'Verify' | localize }}\n \n
    \n
    \n
    \n
    \n\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'kt-scroll-top',\n templateUrl: './scroll-top.component.html',\n})\nexport class ScrollTopComponent {\n\n}\n","
    \n \n \n \n \n \n \n \n \n
    \n","import { Component, Injector, ViewEncapsulation, ElementRef, HostBinding, OnInit } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { UiCustomizationSettingsServiceProxy } from '@shared/service-proxies/service-proxies';\n\n@Component({\n templateUrl: './theme-selection-panel.component.html',\n selector: 'theme-selection-panel',\n styleUrls: ['./theme-selection-panel.less'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class ThemeSelectionPanelComponent extends AppComponentBase implements OnInit {\n currentThemeName = '';\n\n constructor(injector: Injector, private _uiCustomizationService: UiCustomizationSettingsServiceProxy) {\n super(injector);\n }\n\n ngOnInit() {\n this.currentThemeName = this.currentTheme.baseSettings.theme;\n }\n\n getLocalizedThemeName(str: string): string {\n return this.l('Theme_' + abp.utils.toPascalCase(str));\n }\n\n changeTheme(themeName: string) {\n this._uiCustomizationService.changeThemeWithDefaultValues(themeName).subscribe(() => {\n window.location.reload();\n });\n }\n}\n","\n\n
    \n
    \n

    \n {{ 'SelectATheme' | localize }}\n

    \n
    \n \n
    \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n\n\n","export class ThemeHelper {\n public static getTheme(): string {\n return abp.setting.get('App.UiManagement.Theme');\n }\n\n public static darkMode(): boolean {\n return abp.setting.get(ThemeHelper.getTheme() + '.App.UiManagement.DarkMode')?.toLowerCase() === 'true';\n }\n}\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\n\nexport class DefaultThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [\n ];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return 'header-menu-wrapper header-menu-wrapper-left';\n }\n\n public getSubheaderStyle(): string {\n return 'text-dark fw-bold my-1 me-5';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject, OnInit } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './default-brand.component.html',\n selector: 'default-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class DefaultBrandComponent extends AppComponentBase {\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n}\n","\n \n\n","import { Injector, Component, OnInit, Inject } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { appModuleAnimation } from '@shared/animations/routerTransition';\nimport { ThemesLayoutBaseComponent } from '@app/shared/layout/themes/themes-layout-base.component';\nimport { UrlHelper } from '@shared/helpers/UrlHelper';\nimport { AppConsts } from '@shared/AppConsts';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\n\n@Component({\n templateUrl: './default-layout.component.html',\n selector: 'default-layout',\n animations: [appModuleAnimation()],\n})\nexport class DefaultLayoutComponent extends ThemesLayoutBaseComponent implements OnInit {\n\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(\n injector: Injector,\n _dateTimeService: DateTimeService,\n @Inject(DOCUMENT) private document: Document) {\n super(injector, _dateTimeService);\n }\n\n ngOnInit() {\n this.installationMode = UrlHelper.isInstallUrl(location.href);\n if (this.currentTheme.baseSettings.menu.defaultMinimizedAside){\n this.document.body.setAttribute('data-kt-aside-minimize', 'on');\n }\n }\n}\n","
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Injector, Component, ViewEncapsulation, Inject, Input, OnInit } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { DOCUMENT } from '@angular/common';\nimport * as KTUtil from '@metronic/app/kt/_utils';\n\n@Component({\n templateUrl: './default-logo.component.html',\n selector: 'default-logo',\n encapsulation: ViewEncapsulation.None,\n})\nexport class DefaultLogoComponent extends AppComponentBase implements OnInit {\n @Input() customHrefClass = '';\n @Input() skin = null;\n\n defaultLogo = '';\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n\n ngOnInit(): void {\n this.setLogoUrl();\n }\n\n onResize() {\n this.setLogoUrl();\n }\n\n setLogoUrl(): void{\n let skinName = this.currentTheme.baseSettings.menu.asideSkin;\n if (KTUtil.isMobileDevice()) {\n skinName = this.currentTheme.baseSettings.layout.darkMode ? 'dark' : 'light';\n }\n\n this.defaultLogo = AppConsts.appBaseUrl + '/assets/common/images/app-logo-on-' + skinName + '.svg';\n }\n}\n","\n \n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n
    \n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n\n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\n\nexport class Theme11ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [''];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return '';\n }\n\n public getSubheaderStyle(): string {\n return 'text-dark fw-bold my-1 me-5 ms-5';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column ';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject } from '@angular/core';\n\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme11-brand.component.html',\n selector: 'theme11-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme11BrandComponent extends AppComponentBase {\n skin = this.appSession.theme.baseSettings.layout.darkMode ? 'dark' : 'light';\n defaultLogo = AppConsts.appBaseUrl + '/assets/common/images/app-logo-on-' + this.skin + '.svg';\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n}\n","
    \n \"logo\"\n \n
    \n
    \n \n
    \n
    \n \n \n \n \n \n \n \n
    \n \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n\n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n \n \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\n\nexport class Theme12ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [\n ];\n }\n\n public getAdditionalBodyStyle(): string {\n return 'page-bg';\n }\n\n public getMenuWrapperStyle(): string {\n return 'header-menu-wrapper header-menu-wrapper-left';\n }\n\n public getSubheaderStyle(): string {\n return 'd-flex text-gray-900 fw-bolder my-1 fs-3';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme12-brand.component.html',\n selector: 'theme12-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme12BrandComponent extends AppComponentBase {\n skin = this.appSession.theme.baseSettings.layout.darkMode ? 'dark' : 'light';\n defaultLogo = AppConsts.appBaseUrl + '/assets/common/images/app-logo-on-' + this.skin + '.svg';\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n}\n","
    \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\n\nexport class Theme13ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [\n ];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return 'header-menu-wrapper header-menu-wrapper-left';\n }\n\n public getSubheaderStyle(): string {\n return 'text-dark fw-bold my-1 me-5';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject, Input } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme13-brand.component.html',\n selector: 'theme13-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme13BrandComponent extends AppComponentBase {\n @Input() anchorClass = '';\n @Input() imageClass = 'h-25px logo';\n\n defaultLogo = AppConsts.appBaseUrl +\n '/assets/common/images/app-logo-on-dark.svg';\n\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n\n triggerAsideToggleClickEvent(): void {\n abp.event.trigger('app.kt_aside_toggler.onClick');\n }\n}\n","\n \n \n
    \n \n \n
    \n
    \n \n \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\nimport { AppConsts } from '@shared/AppConsts';\n\nexport class Theme2ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [AppConsts.appBaseUrl + '/assets/fonts/fonts-asap-condensed.min.css'];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return 'header-menu-wrapper header-menu-wrapper-left';\n }\n\n public getSubheaderStyle(): string {\n return 'text-white fw-bold my-2 me-5';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject } from '@angular/core';\n\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme2-brand.component.html',\n selector: 'theme2-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme2BrandComponent extends AppComponentBase {\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n skin = this.currentTheme.baseSettings.layout.darkMode ? 'dark' : 'light';\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n}\n","
    \n \n\n \n
    \n \n
    \n \n\n \n \n \n \n \n \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\nimport { AppConsts } from '@shared/AppConsts';\n\nexport class Theme3ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [AppConsts.appBaseUrl + '/assets/fonts/fonts-montserrat.min.css'];\n }\n\n public getAdditionalBodyStyle(): string {\n return 'aside-secondary-enabled';\n }\n\n public getMenuWrapperStyle(): string {\n return '';\n }\n\n public getSubheaderStyle(): string {\n return 'subheader-title text-dark fw-bold my-1 me-3';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject, Input, OnInit } from '@angular/core';\n\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme3-brand.component.html',\n selector: 'theme3-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme3BrandComponent extends AppComponentBase implements OnInit {\n @Input() logoSize = '';\n\n defaultLogo = '';\n skin = this.currentTheme.baseSettings.layout.darkMode ? 'dark' : 'light';\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n\n ngOnInit(): void {\n this.defaultLogo =\n AppConsts.appBaseUrl +\n '/assets/common/images/app-logo-on-' + this.skin +\n (this.logoSize ? '-' + this.logoSize : '') +\n '.svg';\n }\n\n clickTopbarToggle(): void {\n this.document.body.classList.toggle('topbar-mobile-on');\n }\n\n clickLeftAsideHideToggle(): void {\n this.document.body.classList.toggle('header-menu-wrapper-on');\n }\n}\n","
    \n \"logo\"\n \n
    \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n
    \n \n
    \n
    \n \n \n \n \n \n \n\n \n \n \n
    \n
    \n
    \n \n \n \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\nimport { AppConsts } from '@shared/AppConsts';\n\nexport class Theme4ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [AppConsts.appBaseUrl + '/assets/fonts/fonts-montserrat.min.css'];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return 'header-menu-wrapper header-menu-wrapper-left';\n }\n\n public getSubheaderStyle(): string {\n return 'text-dark fw-bold my-1 me-5';\n }\n\n public getFooterStyle(): string {\n return 'footer bg-white py-4 d-flex flex-lg-column mt-5';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject, Input } from '@angular/core';\n\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme4-brand.component.html',\n selector: 'theme4-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme4BrandComponent extends AppComponentBase {\n @Input() skin = 'dark';\n\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n}\n","
    \n \n \n \n
    \n \n \n \n
    \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n \n
    \n \n
    \n \n \n \n \n \n \n \n \n \n
    \n
    \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n \n
    \n \n \n \n \n \n \n \n \n
    \n \n
    \n \n
    \n \n \n \n \n
    \n \n \n
    \n \n \n \n \n \n \n \n \n \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\nimport { AppConsts } from '@shared/AppConsts';\n\nexport class Theme5ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [AppConsts.appBaseUrl + '/assets/fonts/fonts-asap-condensed.min.css'];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return '';\n }\n\n public getSubheaderStyle(): string {\n return 'subheader-title text-dark fw-bold my-1 me-3';\n }\n\n public getFooterStyle(): string {\n return 'footer pt-10 pb-5 d-flex flex-column flex-md-row flex-stack';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject, OnInit } from '@angular/core';\n\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme5-brand.component.html',\n selector: 'theme5-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme5BrandComponent extends AppComponentBase implements OnInit {\n defaultLogo = '';\n skin = this.currentTheme.baseSettings.layout.darkMode ? 'dark' : 'light';\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n\n ngOnInit(): void {\n this.defaultLogo =\n AppConsts.appBaseUrl +\n '/assets/common/images/app-logo-on-' + this.skin + '.svg';\n }\n\n}\n","
    \n \n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n\n \n
    \n
    \n
    \n\n
    \n \n
    \n \n \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\nimport { AppConsts } from '@shared/AppConsts';\n\nexport class Theme6ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [AppConsts.appBaseUrl + '/assets/fonts/fonts-montserrat.min.css'];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return 'header-menu-wrapper header-menu-wrapper-left py-lg-2';\n }\n\n public getSubheaderStyle(): string {\n return 'text-dark fw-bold my-1 me-5';\n }\n\n public getFooterStyle(): string {\n return 'footer py-5 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject, Input, OnInit } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme6-brand.component.html',\n selector: 'theme6-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme6BrandComponent extends AppComponentBase implements OnInit {\n @Input() anchorClass = 'd-flex align-items-center';\n @Input() skin = 'dark';\n\n defaultLogo = '';\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n\n ngOnInit(): void {\n this.defaultLogo = AppConsts.appBaseUrl + '/assets/common/images/app-logo-on-' + this.skin + '-sm.svg';\n }\n}\n","
    \n \"logo\"\n \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n
    \n
    \n\n
    \n \n \n \n \n \n \n \n \n\n \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n \n \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\nimport { AppConsts } from '@shared/AppConsts';\n\nexport class Theme7ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [AppConsts.appBaseUrl + '/assets/fonts/fonts-montserrat.min.css'];\n }\n\n public getAdditionalBodyStyle(): string {\n return 'aside-secondary-enabled';\n }\n\n public getMenuWrapperStyle(): string {\n return '';\n }\n\n public getSubheaderStyle(): string {\n return 'text-dark fw-bold my-1 me-5';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme7-brand.component.html',\n selector: 'theme7-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme7BrandComponent extends AppComponentBase {\n skin = this.appSession.theme.baseSettings.layout.darkMode ? 'dark' : 'light';\n defaultLogo = AppConsts.appBaseUrl + '/assets/common/images/app-logo-on-' + this.skin + '-sm.svg';\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n}\n","
    \n \"logo\"\n \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n
    \n \n
    \n \n \n \n \n \n \n \n \n
    \n \n \n \n \n
    \n \n
    \n
    \n \n \n \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\nimport { AppConsts } from '@shared/AppConsts';\n\nexport class Theme8ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [AppConsts.appBaseUrl + '/assets/fonts/fonts-asap-condensed.min.css'];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return 'header-menu-wrapper header-menu-wrapper-left';\n }\n\n public getSubheaderStyle(): string {\n return 'text-dark fw-bold my-2 me-5';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject } from '@angular/core';\n\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\n\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme8-brand.component.html',\n selector: 'theme8-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme8BrandComponent extends AppComponentBase {\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n}\n","
    \n \n \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n \n \n \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n\n","import { IThemeAssetContributor } from '../ThemeAssetContributor';\nimport { AppConsts } from '@shared/AppConsts';\n\nexport class Theme9ThemeAssetContributor implements IThemeAssetContributor {\n public getAssetUrls(): string[] {\n return [AppConsts.appBaseUrl + '/assets/fonts/fonts-montserrat.min.css'];\n }\n\n public getAdditionalBodyStyle(): string {\n return '';\n }\n\n public getMenuWrapperStyle(): string {\n return 'header-menu-wrapper header-menu-wrapper-left';\n }\n\n public getSubheaderStyle(): string {\n return 'text-dark fw-bold my-1 me-5';\n }\n\n public getFooterStyle(): string {\n return 'footer py-4 d-flex flex-lg-column';\n }\n}\n","import { Injector, Component, ViewEncapsulation, Inject } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n templateUrl: './theme9-brand.component.html',\n selector: 'theme9-brand',\n encapsulation: ViewEncapsulation.None,\n})\nexport class Theme9BrandComponent extends AppComponentBase {\n skin = this.appSession.theme.baseSettings.layout.darkMode ? 'dark' : 'light';\n defaultLogo = AppConsts.appBaseUrl + '/assets/common/images/app-logo-on-' + this.skin + '-sm.svg';\n remoteServiceBaseUrl: string = AppConsts.remoteServiceBaseUrl;\n\n constructor(injector: Injector, @Inject(DOCUMENT) private document: Document) {\n super(injector);\n }\n}\n","
    \n \"Logo\"\n \n
    \n \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n \n
    \n \n
    \n \n \n \n \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n\n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n\n","import { Component, Injector, Inject } from '@angular/core';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport {\n TenantLoginInfoDto,\n EditionPaymentType,\n SubscriptionStartType,\n SubscriptionPaymentType,\n} from '@shared/service-proxies/service-proxies';\n\n@Component({ template: '' })\nexport class ThemesLayoutBaseComponent extends AppComponentBase {\n tenant: TenantLoginInfoDto = new TenantLoginInfoDto();\n subscriptionStartType = SubscriptionStartType;\n editionPaymentType: typeof EditionPaymentType = EditionPaymentType;\n installationMode = true;\n\n defaultLogo =\n AppConsts.appBaseUrl +\n '/assets/common/images/app-logo-on-' +\n this.currentTheme.baseSettings.menu.asideSkin +\n '.svg';\n\n constructor(injector: Injector, private _dateTimeService: DateTimeService) {\n super(injector);\n }\n\n subscriptionStatusBarVisible(): boolean {\n return (\n this.appSession.tenantId > 0 &&\n this.appSession.tenant.subscriptionPaymentType !== SubscriptionPaymentType.RecurringAutomatic &&\n (this.appSession.tenant.isInTrialPeriod || this.subscriptionIsExpiringSoon())\n );\n }\n\n subscriptionIsExpiringSoon(): boolean {\n if (this.appSession.tenant?.subscriptionEndDateUtc) {\n let today = this._dateTimeService.getUTCDate();\n let daysFromNow = this._dateTimeService.plusDays(today, AppConsts.subscriptionExpireNootifyDayCount);\n return daysFromNow >= this.appSession.tenant.subscriptionEndDateUtc;\n }\n\n return false;\n }\n\n getSubscriptionExpiringDayCount(): number {\n if (!this.appSession.tenant.subscriptionEndDateUtc) {\n return 0;\n }\n\n let todayUTC = this._dateTimeService.getUTCDate();\n let duration = this.appSession.tenant.subscriptionEndDateUtc.diff(todayUTC, 'days');\n return Math.round(duration.days);\n }\n\n getTrialSubscriptionNotification(): string {\n return this.l(\n 'TrialSubscriptionNotification',\n `${this.appSession.tenant.edition.displayName}`,\n `
    ${this.l('ClickHere')}`\n );\n }\n\n getExpireNotification(localizationKey: string): string {\n return this.l(localizationKey, this.getSubscriptionExpiringDayCount());\n }\n\n isMobileDevice(): boolean {\n return KTUtil.isMobileDevice();\n }\n\n isDarkModeActive(): boolean {\n return this.appSession.theme.baseSettings.layout.darkMode;\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { UiCustomizationSettingsServiceProxy } from '@shared/service-proxies/service-proxies';\n\n@Component({\n selector: 'toggle-dark-mode',\n templateUrl: './toggle-dark-mode.component.html'\n})\nexport class ToggleDarkModeComponent {\n @Input() isDarkModeActive = false;\n @Input() customStyle = 'btn btn-icon btn-icon-muted btn-active-light btn-active-color-primary w-30px h-30px w-md-40px h-md-40px';\n\n constructor(private _uiCustomizationAppService: UiCustomizationSettingsServiceProxy) {\n\n }\n\n toggleDarkMode(isDarkModeActive: boolean): void {\n this._uiCustomizationAppService.changeDarkModeOfCurrentTheme(isDarkModeActive).subscribe(() => {\n window.location.reload();\n });\n }\n}\n","","import { Component, Injector, OnInit, forwardRef, HostBinding, Input } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { UserDelegationServiceProxy, UserDelegationDto } from '@shared/service-proxies/service-proxies';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ImpersonationService } from '@app/admin/users/impersonation.service';\n\n@Component({\n selector: 'active-delegated-users-combo',\n template: `\n
    \n
    \n \n \n \n {{ delegation.username }} ({{\n 'ExpiresAt' | localize: (delegation.endTime | luxonFormat: 'F')\n }})\n \n \n
    \n
    \n `,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ActiveDelegatedUsersComboComponent),\n multi: true,\n },\n ],\n})\nexport class ActiveDelegatedUsersComboComponent extends AppComponentBase implements OnInit {\n @HostBinding('style.display') public display = 'flex';\n @Input() customStyle = 'btn btn-clean btn-lg me-1 mt-2';\n\n delegations: UserDelegationDto[] = [];\n selectedUserDelegationId = 0;\n currentSelectedUserDelegationId = 0;\n\n constructor(\n private _userDelegationService: UserDelegationServiceProxy,\n private _impersonationService: ImpersonationService,\n injector: Injector\n ) {\n super(injector);\n }\n\n ngOnInit(): void {\n this._userDelegationService.getActiveUserDelegations().subscribe((result) => {\n this.delegations = result;\n });\n }\n\n switchToDelegatedUser($event): void {\n let username = $event.target.selectedOptions[0].getAttribute('data-username');\n\n this.message.confirm(\n this.l('SwitchToDelegatedUserWarningMessage', username),\n this.l('AreYouSure'),\n (isConfirmed) => {\n if (isConfirmed) {\n this.currentSelectedUserDelegationId = this.selectedUserDelegationId;\n this._impersonationService.delegatedImpersonate(\n this.selectedUserDelegationId,\n this.appSession.tenantId\n );\n } else {\n this.selectedUserDelegationId = this.currentSelectedUserDelegationId;\n }\n }\n );\n }\n}\n","import { Component, Injector, OnInit, Input } from '@angular/core';\nimport { ThemesLayoutBaseComponent } from '../themes/themes-layout-base.component';\nimport { AbpSessionService } from 'abp-ng2-module';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\n\n@Component({\n selector: 'chat-toggle-button',\n templateUrl: './chat-toggle-button.component.html',\n})\nexport class ChatToggleButtonComponent extends ThemesLayoutBaseComponent implements OnInit {\n @Input() customStyle = 'btn btn-icon btn-active-light-primary position-relative w-30px h-30px w-md-40px h-md-40px me-2';\n @Input() iconStyle = 'flaticon-chat-2 fs-4';\n\n unreadChatMessageCount = 0;\n chatConnected = false;\n isHost = false;\n\n public constructor(\n injector: Injector,\n private _abpSessionService: AbpSessionService,\n _dateTimeService: DateTimeService\n ) {\n super(injector, _dateTimeService);\n }\n\n ngOnInit(): void {\n this.registerToEvents();\n this.isHost = !this._abpSessionService.tenantId;\n }\n\n registerToEvents() {\n this.subscribeToEvent('app.chat.unreadMessageCountChanged', (messageCount) => {\n this.unreadChatMessageCount = messageCount;\n });\n\n this.subscribeToEvent('app.chat.connected', () => {\n this.chatConnected = true;\n });\n }\n}\n","\n \n\n\n \n\n","import { Component, Injector, OnInit, Input } from '@angular/core';\nimport { ThemesLayoutBaseComponent } from '../themes/themes-layout-base.component';\nimport { ChangeUserLanguageDto, ProfileServiceProxy } from '@shared/service-proxies/service-proxies';\nimport { filter as _filter } from 'lodash-es';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\n\n@Component({\n selector: 'language-switch-dropdown',\n templateUrl: './language-switch-dropdown.component.html',\n})\nexport class LanguageSwitchDropdownComponent extends ThemesLayoutBaseComponent implements OnInit {\n @Input() isDropup = false;\n @Input() customStyle = 'btn btn-icon btn-active-light-primary position-relative w-30px h-30px w-md-40px h-md-40px me-2';\n\n languages: abp.localization.ILanguageInfo[];\n currentLanguage: abp.localization.ILanguageInfo;\n\n public constructor(\n injector: Injector,\n private _profileServiceProxy: ProfileServiceProxy,\n _dateTimeService: DateTimeService\n ) {\n super(injector, _dateTimeService);\n }\n\n ngOnInit(): void {\n this.languages = _filter(this.localization.languages, (l) => l.isDisabled === false);\n this.currentLanguage = this.localization.currentLanguage;\n }\n\n changeLanguage(languageName: string): void {\n const input = new ChangeUserLanguageDto();\n input.languageName = languageName;\n \n this._profileServiceProxy.changeLanguage(input).subscribe(() => {\n abp.utils.setCookieValue(\n 'Abp.Localization.CultureName',\n languageName,\n new Date(new Date().getTime() + 5 * 365 * 86400000), //5 year\n abp.appPath\n );\n\n window.location.reload();\n });\n }\n}\n","
    1\">\n
    \n \n
    \n
    \n","import { Component, Injector, Input } from '@angular/core';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\nimport { ThemesLayoutBaseComponent } from '../themes/themes-layout-base.component';\n\n@Component({\n selector: 'quick-theme-selection',\n templateUrl: './quick-theme-selection.component.html',\n})\nexport class QuickThemeSelectionComponent extends ThemesLayoutBaseComponent {\n @Input() customStyle = 'btn btn-icon btn-active-light-primary w-30px h-30px w-md-40px h-md-40px';\n @Input() iconStyle = 'flaticon-interface-7 fs-4';\n\n isQuickThemeSelectEnabled: boolean = this.setting.getBoolean('App.UserManagement.IsQuickThemeSelectEnabled');\n\n public constructor(injector: Injector, _dateTimeService: DateTimeService) {\n super(injector, _dateTimeService);\n }\n}\n","
    \n
    \n \n
    \n
    \n","import { Component, Injector, Input } from '@angular/core';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\nimport { ThemesLayoutBaseComponent } from '../themes/themes-layout-base.component';\n\n@Component({\n selector: 'subscription-notification-bar',\n templateUrl: './subscription-notification-bar.component.html',\n})\nexport class SubscriptionNotificationBarComponent extends ThemesLayoutBaseComponent {\n\n @Input() customStyle = 'btn btn-icon btn-active-light-primary position-relative w-30px h-30px w-md-40px h-md-40px me-2';\n\n public constructor(injector: Injector, _dateTimeService: DateTimeService) {\n super(injector, _dateTimeService);\n }\n}\n","\n","import { Component, Injector, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ImpersonationService } from '@app/admin/users/impersonation.service';\r\nimport { AppAuthService } from '@app/shared/common/auth/app-auth.service';\r\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\r\nimport { LinkedAccountService } from '@app/shared/layout/linked-account.service';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { LinkedUserDto, ProfileServiceProxy, UserLinkServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { AbpMultiTenancyService, AbpSessionService } from 'abp-ng2-module';\r\nimport { ThemesLayoutBaseComponent } from '../themes/themes-layout-base.component';\r\n\r\n@Component({\r\n selector: 'user-menu',\r\n templateUrl: './user-menu.component.html',\r\n})\r\nexport class UserMenuComponent extends ThemesLayoutBaseComponent implements OnInit {\r\n @Input() iconOnly = false;\r\n\r\n @Input() togglerCssClass = 'user-toggle position-relative w-auto h-30px h-md-40px';\r\n @Input() textCssClass = '';\r\n @Input() symbolCssClass = 'symbol symbol-lg-30px symbol-20px rounded-circle overflow-hidden';\r\n @Input() symbolTextCssClass = 'symbol-label fs-2 fw-bold bg-success text-inverse-success';\r\n\r\n usernameFirstLetters = '';\r\n\r\n profilePicture = AppConsts.appBaseUrl + '/assets/common/images/default-profile-picture.png';\r\n shownLoginName = '';\r\n tenancyName = '';\r\n userName = '';\r\n fullName = '';\r\n emailAddress = '';\r\n\r\n recentlyLinkedUsers: LinkedUserDto[];\r\n isImpersonatedLogin = false;\r\n isMultiTenancyEnabled = false;\r\n\r\n mQuickUserOffcanvas: any;\r\n\r\n public constructor(\r\n injector: Injector,\r\n private _router: Router,\r\n private _linkedAccountService: LinkedAccountService,\r\n private _abpMultiTenancyService: AbpMultiTenancyService,\r\n private _profileServiceProxy: ProfileServiceProxy,\r\n private _userLinkServiceProxy: UserLinkServiceProxy,\r\n private _authService: AppAuthService,\r\n private _impersonationService: ImpersonationService,\r\n private _abpSessionService: AbpSessionService,\r\n _dateTimeService: DateTimeService\r\n ) {\r\n super(injector, _dateTimeService);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.isImpersonatedLogin = this._abpSessionService.impersonatorUserId > 0;\r\n this.isMultiTenancyEnabled = this._abpMultiTenancyService.isEnabled;\r\n this.setCurrentLoginInformations();\r\n this.getProfilePicture();\r\n this.getRecentlyLinkedUsers();\r\n this.registerToEvents();\r\n }\r\n\r\n setCurrentLoginInformations(): void {\r\n this.shownLoginName = this.appSession.getShownLoginName();\r\n this.tenancyName = this.appSession.tenant?.name || this.appSession.tenancyName;\r\n this.userName = this.appSession.user.userName;\r\n\r\n const nameParts = [this.appSession.user.name, this.appSession.user.surname]\r\n .map(x => x?.trim())\r\n .filter(x => x);\r\n\r\n this.fullName = nameParts.join(' ');\r\n\r\n if (nameParts.length > 1) {\r\n this.usernameFirstLetters = nameParts.slice(0, 2).map(x => x.substring(0, 1)).join('').toUpperCase();\r\n } else if (nameParts.length > 0) {\r\n this.usernameFirstLetters = nameParts[0].substring(0, 1).toUpperCase();\r\n } else {\r\n this.usernameFirstLetters = this.appSession.user.userName.substring(0, 1).toUpperCase();\r\n }\r\n\r\n this.emailAddress = this.appSession.user.emailAddress;\r\n }\r\n\r\n getShownUserName(linkedUser: LinkedUserDto): string {\r\n if (!this._abpMultiTenancyService.isEnabled) {\r\n return linkedUser.username;\r\n }\r\n\r\n return (linkedUser.tenantId ? linkedUser.tenancyName : '.') + '\\\\' + linkedUser.username;\r\n }\r\n\r\n getProfilePicture(): void {\r\n this._profileServiceProxy.getProfilePicture().subscribe((result) => {\r\n if (result && result.profilePicture) {\r\n this.profilePicture = 'data:image/jpeg;base64,' + result.profilePicture;\r\n }\r\n });\r\n }\r\n\r\n getRecentlyLinkedUsers(): void {\r\n this._userLinkServiceProxy.getRecentlyUsedLinkedUsers().subscribe((result) => {\r\n this.recentlyLinkedUsers = result.items;\r\n });\r\n }\r\n\r\n showLoginAttempts(): void {\r\n this._router.navigate(['/app/admin/login-attempts']);\r\n }\r\n\r\n showLinkedAccounts(): void {\r\n abp.event.trigger('app.show.linkedAccountsModal');\r\n }\r\n\r\n showUserDelegations(): void {\r\n abp.event.trigger('app.show.userDelegationsModal');\r\n }\r\n\r\n changePassword(): void {\r\n abp.event.trigger('app.show.changePasswordModal');\r\n }\r\n\r\n changeProfilePicture(): void {\r\n abp.event.trigger('app.show.changeProfilePictureModal');\r\n }\r\n\r\n changeMySettings(): void {\r\n abp.event.trigger('app.show.mySettingsModal');\r\n }\r\n\r\n registerToEvents() {\r\n this.subscribeToEvent('profilePictureChanged', () => {\r\n this.getProfilePicture();\r\n });\r\n\r\n this.subscribeToEvent('app.getRecentlyLinkedUsers', () => {\r\n this.getRecentlyLinkedUsers();\r\n });\r\n\r\n this.subscribeToEvent('app.onMySettingsModalSaved', () => {\r\n this.onMySettingsModalSaved();\r\n });\r\n }\r\n\r\n logout(): void {\r\n this._authService.logout();\r\n }\r\n\r\n onMySettingsModalSaved(): void {\r\n this.shownLoginName = this.appSession.getShownLoginName();\r\n }\r\n\r\n backToMyAccount(): void {\r\n this._impersonationService.backToImpersonator();\r\n }\r\n\r\n switchToLinkedUser(linkedUser: LinkedUserDto): void {\r\n this._linkedAccountService.switchToAccount(linkedUser.id, linkedUser.tenantId);\r\n }\r\n\r\n downloadCollectedData(): void {\r\n this._profileServiceProxy.prepareCollectedData().subscribe(() => {\r\n this.message.success(this.l('GdprDataPrepareStartedNotification'));\r\n });\r\n }\r\n}\r\n","\r\n","import { Component, EventEmitter, Injector, Output, ViewChild } from '@angular/core';\nimport { AppComponentBase } from '@shared/common/app-component-base';\nimport { UserDelegationServiceProxy, UserDelegationDto } from '@shared/service-proxies/service-proxies';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { LazyLoadEvent } from 'primeng/api';\nimport { Paginator } from 'primeng/paginator';\nimport { Table } from 'primeng/table';\nimport { CreateNewUserDelegationModalComponent } from './create-new-user-delegation-modal.component';\nimport { finalize } from 'rxjs/operators';\n\n@Component({\n selector: 'userDelegationsModal',\n templateUrl: './user-delegations-modal.component.html',\n})\nexport class UserDelegationsModalComponent extends AppComponentBase {\n @ViewChild('userDelegationsModal', { static: true }) modal: ModalDirective;\n @ViewChild('createNewUserDelegation', { static: true })\n createNewUserDelegation: CreateNewUserDelegationModalComponent;\n @ViewChild('dataTable', { static: true }) dataTable: Table;\n @ViewChild('paginator', { static: true }) paginator: Paginator;\n\n @Output() modalClose: EventEmitter = new EventEmitter();\n\n constructor(injector: Injector, private _userDelegationService: UserDelegationServiceProxy) {\n super(injector);\n }\n\n getUserDelegations(event?: LazyLoadEvent) {\n this.primengTableHelper.showLoadingIndicator();\n\n this._userDelegationService\n .getDelegatedUsers(\n this.primengTableHelper.getMaxResultCount(this.paginator, event),\n this.primengTableHelper.getSkipCount(this.paginator, event),\n this.primengTableHelper.getSorting(this.dataTable)\n )\n .pipe(finalize(() => this.primengTableHelper.hideLoadingIndicator()))\n .subscribe((result) => {\n this.primengTableHelper.totalRecordsCount = result.totalCount;\n this.primengTableHelper.records = result.items;\n this.primengTableHelper.hideLoadingIndicator();\n });\n }\n\n deleteUserDelegation(userDelegation: UserDelegationDto): void {\n this.message.confirm(\n this.l('UserDelegationDeleteWarningMessage', userDelegation.username),\n this.l('AreYouSure'),\n (isConfirmed) => {\n if (isConfirmed) {\n this._userDelegationService.removeDelegation(userDelegation.id).subscribe(() => {\n this.reloadPage();\n this.notify.success(this.l('SuccessfullyDeleted'));\n });\n }\n }\n );\n }\n\n reloadPage(): void {\n this.paginator.changePage(this.paginator.getPage());\n }\n\n manageUserDelegations(): void {\n this.createNewUserDelegation.show();\n }\n\n show(): void {\n this.modal.show();\n }\n\n onShown(): void {\n this.getUserDelegations(null);\n }\n\n close(): void {\n this.modal.hide();\n this.modalClose.emit(null);\n }\n}\n","\n
    \n
    \n
    \n

    \n {{ 'UserDelegations' | localize }}\n

    \n \n
    \n
    \n \n
    \n \n \n \n \n {{ 'UserName' | localize }}\n \n \n \n {{ 'StartTime' | localize }}\n \n \n {{ 'EndTime' | localize }}\n \n \n \n \n \n \n \n {{ 'UserName' | localize }}\n {{ record.username }}\n \n \n {{ 'StartTime' | localize }}\n {{ record.startTime | luxonFormat: 'F\t' }}\n \n \n {{ 'EndTime' | localize }}\n {{ record.endTime | luxonFormat: 'F\t' }}\n \n \n \n \n \n \n \n \n \n
    \n {{ 'NoData' | localize }}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n\n\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NgxSpinnerTextService {\n private currentText = '';\n\n public getText(): string {\n return this.currentText;\n }\n\n public setText(text: string): void {\n this.currentText = text;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DateTime } from 'luxon';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { WarehouseTimeZoneService } from './warehouse-time-zone.service';\r\n\r\n@Pipe({\r\n name: 'warehouseTimeZoneAsync',\r\n pure: false,\r\n})\r\nexport class WarehouseTimeZoneAsyncPipe implements PipeTransform {\r\n\r\n constructor(private readonly _warehouseTimeZoneService: WarehouseTimeZoneService) {\r\n }\r\n\r\n transform(value: DateTime, warehouseId: number): Observable {\r\n return this._warehouseTimeZoneService.getTimeZone$(warehouseId).pipe(map(timeZone => value?.setZone(timeZone)));\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { WarehouseServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { Observable } from 'rxjs';\r\nimport { map, shareReplay } from 'rxjs/operators';\r\n\r\nexport interface WarehouseTimeZoneInfo {\r\n warehouseId: number;\r\n timeZone: string | undefined;\r\n}\r\n\r\n@Injectable()\r\nexport class WarehouseTimeZoneService {\r\n\r\n readonly timeZones$: Observable;\r\n\r\n constructor(warehouseService: WarehouseServiceProxy) {\r\n this.timeZones$ = warehouseService.getAll().pipe(\r\n map(({ items }) => items.map(item => ({ warehouseId: item.id, timeZone: item.timeZone }))),\r\n shareReplay({ refCount: false, bufferSize: 1 }),\r\n );\r\n }\r\n\r\n getTimeZone$(warehouseId: number) {\r\n return this.timeZones$.pipe(map(items => items.find(x => x.warehouseId === warehouseId)?.timeZone));\r\n }\r\n}\r\n","import { OffsetModel } from './models/OffsetModel';\nimport { ViewPortModel } from './models/ViewPortModel';\nimport { ElementStyleUtil } from './_ElementStyleUtil';\nimport { DataUtil } from './_DataUtil';\nimport { ElementAnimateUtil } from './ElementAnimateUtil';\nimport { getObjectPropertyValueByKey, toJSON } from './_TypesHelpers';\n\nfunction getCSS(el: HTMLElement, styleProp: string) {\n const defaultView = (el.ownerDocument || document).defaultView;\n\n if (!defaultView) {\n return '';\n }\n\n // sanitize property name to css notation\n // (hyphen separated words eg. font-Size)\n styleProp = styleProp.replace(/([A-Z])/g, '-$1').toLowerCase();\n\n return defaultView.getComputedStyle(el, null).getPropertyValue(styleProp);\n}\n\nfunction getCSSVariableValue(variableName: string) {\n let hex = getComputedStyle(document.documentElement).getPropertyValue(\n variableName\n );\n if (hex && hex.length > 0) {\n hex = hex.trim();\n }\n\n return hex;\n}\n\nfunction getElementActualCss(el: HTMLElement, prop: any, cache: boolean) {\n let css = '';\n\n if (!el.getAttribute('kt-hidden-' + prop) || cache === false) {\n let value;\n\n // the element is hidden so:\n // making the el block so we can meassure its height but still be hidden\n css = el.style.cssText;\n el.style.cssText =\n 'position: absolute; visibility: hidden; display: block;';\n\n if (prop === 'width') {\n value = el.offsetWidth;\n } else if (prop === 'height') {\n value = el.offsetHeight;\n }\n\n el.style.cssText = css;\n\n // store it in cache\n if (value !== undefined) {\n el.setAttribute('kt-hidden-' + prop, value.toString());\n return parseFloat(value.toString());\n }\n return 0;\n } else {\n // store it in cache\n const attributeValue = el.getAttribute('kt-hidden-' + prop);\n if (attributeValue || attributeValue === '0') {\n return parseFloat(attributeValue);\n }\n }\n return 0;\n}\n\nfunction getElementActualHeight(el: HTMLElement) {\n return getElementActualCss(el, 'height', false);\n}\n\nfunction getElementActualWidth(el: HTMLElement, cache?: boolean) {\n return getElementActualCss(el, 'width', false);\n}\n\nfunction getElementIndex(element: HTMLElement) {\n if (element.parentNode) {\n const c = element.parentNode.children;\n for (let i = 0; i < c.length; i++) {\n if (c[i] === element) return i;\n }\n }\n return -1;\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Element/matches\nfunction getElementMatches(element: HTMLElement, selector: string) {\n const p = Element.prototype;\n const f = p.matches || p.webkitMatchesSelector;\n\n if (element && element.tagName) {\n return f.call(element, selector);\n } else {\n return false;\n }\n}\n\nfunction getElementOffset(el: HTMLElement): OffsetModel {\n // Return zeros for disconnected and hidden (display: none) elements (gh-2310)\n // Support: IE <=11 only\n // Running getBoundingClientRect on a\n // disconnected node in IE throws an error\n if (!el.getClientRects().length) {\n return { top: 0, left: 0 };\n }\n\n // Get document-relative position by adding viewport scroll to viewport-relative gBCR\n const rect = el.getBoundingClientRect();\n const win = el.ownerDocument.defaultView;\n if (win) {\n return {\n top: rect.top + win.pageYOffset,\n left: rect.left + win.pageXOffset,\n };\n }\n\n return rect;\n}\n\nfunction getElementParents(element: Element, selector: string) {\n // Element.matches() polyfill\n if (!Element.prototype.matches) {\n Element.prototype.matches = function (s) {\n const matches = (document || this.ownerDocument).querySelectorAll(s);\n let i = matches.length;\n while (--i >= 0 && matches.item(i) !== this) {}\n return i > -1;\n };\n }\n\n // Set up a parent array\n const parents = [];\n\n let el: Element | null = element;\n\n // Push each parent element to the array\n for (; el && el !== document.body; el = el.parentElement) {\n if (selector) {\n if (el.matches(selector)) {\n parents.push(el);\n }\n continue;\n }\n parents.push(el);\n }\n\n // Return our parent array\n return parents;\n}\n\nfunction getHighestZindex(el: HTMLElement) {\n let bufferNode: Node | null = el as Node;\n let buffer = el;\n while (bufferNode && bufferNode !== document) {\n // Ignore z-index if position is set to a value where z-index is ignored by the browser\n // This makes behavior of this function consistent across browsers\n // WebKit always returns auto if the element is positioned\n const position = buffer.style.getPropertyValue('position');\n if (\n position === 'absolute' ||\n position === 'relative' ||\n position === 'fixed'\n ) {\n // IE returns 0 when zIndex is not specified\n // other browsers return a string\n // we ignore the case of nested elements with an explicit value of 0\n //
    \n const value = parseInt(buffer.style.getPropertyValue('z-index'));\n if (!isNaN(value) && value !== 0) {\n return value;\n }\n }\n\n bufferNode = bufferNode.parentNode;\n buffer = bufferNode as HTMLElement;\n }\n return null;\n}\n\nfunction getScrollTop(): number {\n return (document.scrollingElement || document.documentElement).scrollTop;\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth\nfunction getViewPort(): ViewPortModel {\n return {\n width: window.innerWidth,\n height: window.innerHeight,\n };\n}\n\nfunction insertAfterElement(el: HTMLElement, referenceNode: HTMLElement) {\n return referenceNode.parentNode?.insertBefore(el, referenceNode.nextSibling);\n}\n\nfunction isElementHasClasses(\n element: HTMLElement,\n classesStr: string\n): boolean {\n const classes = classesStr.split(' ');\n for (let i = 0; i < classes.length; i++) {\n if (!element.classList.contains(classes[i])) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction isVisibleElement(element: HTMLElement): boolean {\n return !(element.offsetWidth === 0 && element.offsetHeight === 0);\n}\n\n// Throttle function: Input as function which needs to be throttled and delay is the time interval in milliseconds\nfunction throttle(timer: number | undefined, func: Function, delay?: number) {\n // If setTimeout is already scheduled, no need to do anything\n if (timer) {\n return;\n }\n\n // Schedule a setTimeout after delay seconds\n timer = window.setTimeout(function () {\n func();\n\n // Once setTimeout function execution is finished, timerId = undefined so that in
    \n // the next scroll event function execution can be scheduled by the setTimeout\n timer = undefined;\n }, delay);\n}\n\nfunction getElementChildren(\n element: HTMLElement,\n selector: string\n): Array | null {\n if (!element || !element.childNodes) {\n return null;\n }\n\n const result: Array = [];\n for (let i = 0; i < element.childNodes.length; i++) {\n const child = element.childNodes[i];\n // child.nodeType == 1 => Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference\n if (\n child.nodeType === 1 &&\n getElementMatches(child as HTMLElement, selector)\n ) {\n result.push(child as HTMLElement);\n }\n }\n\n return result;\n}\n\nfunction getElementChild(\n element: HTMLElement,\n selector: string\n): HTMLElement | null {\n const children = getElementChildren(element, selector);\n return children ? children[0] : null;\n}\n\nfunction isMobileDevice(): boolean {\n let test = getViewPort().width < +getBreakpoint('lg') ? true : false;\n\n if (test === false) {\n // For use within normal web clients\n test = navigator.userAgent.match(/iPad/i) != null;\n }\n\n return test;\n}\n\nfunction slide(el: HTMLElement, dir: string, speed: number, callback: any) {\n if (\n !el ||\n (dir === 'up' && isVisibleElement(el) === false) ||\n (dir === 'down' && isVisibleElement(el) === true)\n ) {\n return;\n }\n\n speed = speed ? speed : 600;\n let calcHeight = getElementActualHeight(el);\n let calcPaddingTop: number = 0;\n let calcPaddingBottom: number = 0;\n\n if (\n ElementStyleUtil.get(el, 'padding-top') &&\n DataUtil.get(el, 'slide-padding-top') !== true\n ) {\n DataUtil.set(\n el,\n 'slide-padding-top',\n ElementStyleUtil.get(el, 'padding-top')\n );\n }\n\n if (\n ElementStyleUtil.get(el, 'padding-bottom') &&\n DataUtil.has(el, 'slide-padding-bottom') !== true\n ) {\n DataUtil.set(\n el,\n 'slide-padding-bottom',\n ElementStyleUtil.get(el, 'padding-bottom')\n );\n }\n\n if (DataUtil.has(el, 'slide-padding-top')) {\n calcPaddingTop = parseInt(DataUtil.get(el, 'slide-padding-top'));\n }\n\n if (DataUtil.has(el, 'slide-padding-bottom')) {\n calcPaddingBottom = parseInt(DataUtil.get(el, 'slide-padding-bottom'));\n }\n\n if (dir === 'up') {\n // up\n el.style.cssText = 'display: block; overflow: hidden;';\n\n if (calcPaddingTop) {\n ElementAnimateUtil.animate(\n 0,\n calcPaddingTop,\n speed,\n function (value: number) {\n el.style.paddingTop = calcPaddingTop - value + 'px';\n }\n );\n }\n\n if (calcPaddingBottom) {\n ElementAnimateUtil.animate(\n 0,\n calcPaddingBottom,\n speed,\n function (value: number) {\n el.style.paddingBottom = calcPaddingBottom - value + 'px';\n }\n );\n }\n\n ElementAnimateUtil.animate(\n 0,\n calcHeight || 0,\n speed,\n function (value: number) {\n el.style.height = (calcHeight || 0) - value + 'px';\n },\n function () {\n el.style.height = '';\n el.style.display = 'none';\n\n if (typeof callback === 'function') {\n callback();\n }\n }\n );\n } else if (dir === 'down') {\n // down\n el.style.cssText = 'display: block; overflow: hidden;';\n\n if (calcPaddingTop) {\n ElementAnimateUtil.animate(\n 0,\n calcPaddingTop,\n speed,\n function (value: number) {\n //\n el.style.paddingTop = value + 'px';\n },\n function () {\n el.style.paddingTop = '';\n }\n );\n }\n\n if (calcPaddingBottom) {\n ElementAnimateUtil.animate(\n 0,\n calcPaddingBottom,\n speed,\n function (value: number) {\n el.style.paddingBottom = value + 'px';\n },\n function () {\n el.style.paddingBottom = '';\n }\n );\n }\n\n ElementAnimateUtil.animate(\n 0,\n calcHeight || 0,\n speed,\n function (value: number) {\n el.style.height = value + 'px';\n },\n function () {\n el.style.height = '';\n el.style.display = '';\n el.style.overflow = '';\n\n if (typeof callback === 'function') {\n callback();\n }\n }\n );\n }\n}\n\nfunction slideUp(el: HTMLElement, speed: number, callback: any) {\n slide(el, 'up', speed, callback);\n}\n\nfunction slideDown(el: HTMLElement, speed: number, callback: any) {\n slide(el, 'down', speed, callback);\n}\n\nfunction getBreakpoint(breakpoint: string) {\n let value: number | string = getCSSVariableValue('--bs-' + breakpoint);\n if (value) {\n value = parseInt(value.trim());\n }\n\n return value;\n}\n\nfunction getAttributeValueByBreakpoint(incomingAttr: string): string | JSON {\n let value = toJSON(incomingAttr);\n if (typeof value !== 'object') {\n return incomingAttr;\n }\n\n const width = getViewPort().width;\n let resultKey;\n let resultBreakpoint = -1;\n let breakpoint;\n\n for (let key in value) {\n if (key === 'default') {\n breakpoint = 0;\n } else {\n breakpoint = getBreakpoint(key) ? +getBreakpoint(key) : parseInt(key);\n }\n\n if (breakpoint <= width && breakpoint > resultBreakpoint) {\n resultKey = key;\n resultBreakpoint = breakpoint;\n }\n }\n\n return resultKey ? getObjectPropertyValueByKey(value, resultKey) : value;\n}\n\nfunction colorLighten(color: string, amount: number) {\n const addLight = (_color: string, _amount: number) => {\n const cc = parseInt(_color, 16) + _amount;\n const cNum = cc > 255 ? 255 : cc;\n const c =\n cNum.toString(16).length > 1\n ? cNum.toString(16)\n : `0${cNum.toString(16)}`;\n return c;\n };\n\n color = color.indexOf('#') >= 0 ? color.substring(1, color.length) : color;\n amount = parseInt(((255 * amount) / 100).toString());\n return (color = `#${addLight(color.substring(0, 2), amount)}${addLight(\n color.substring(2, 4),\n amount\n )}${addLight(color.substring(4, 6), amount)}`);\n}\n\nfunction colorDarken(color: string, amount: number) {\n const subtractLight = (_color: string, _amount: number) => {\n const cc = parseInt(color, 16) - amount;\n const cNum = cc < 0 ? 0 : cc;\n const c =\n cNum.toString(16).length > 1\n ? cNum.toString(16)\n : `0${cNum.toString(16)}`;\n return c;\n };\n\n color = color.indexOf('#') >= 0 ? color.substring(1, color.length) : color;\n amount = parseInt(((255 * amount) / 100).toString());\n\n return (color = `#${subtractLight(\n color.substring(0, 2),\n amount\n )}${subtractLight(color.substring(2, 4), amount)}${subtractLight(\n color.substring(4, 6),\n amount\n )}`);\n}\n\nexport {\n getBreakpoint,\n getCSS,\n getCSSVariableValue,\n getElementActualCss,\n getElementActualHeight,\n getElementActualWidth,\n getElementIndex,\n getElementMatches,\n getElementOffset,\n getElementParents,\n getHighestZindex,\n getScrollTop,\n getViewPort,\n insertAfterElement,\n isElementHasClasses,\n isVisibleElement,\n throttle,\n getElementChildren,\n getElementChild,\n isMobileDevice,\n slide,\n slideUp,\n slideDown,\n getAttributeValueByBreakpoint,\n colorLighten,\n colorDarken,\n};\n","import {DOMEventHandlerUtil} from './_DOMEventHandlerUtil'\nimport {ElementStyleUtil} from './_ElementStyleUtil'\nimport {getElementOffset} from './DomHelpers'\n\nexport class ElementAnimateUtil {\n public static animate(\n from: number,\n to: number,\n duration: number,\n update: Function,\n complete?: Function\n ) {\n /**\n * TinyAnimate.easings\n * Adapted from jQuery Easing\n */\n const easings = {\n linear: function (t: number, b: number, c: number, d: number) {\n return (c * t) / d + b\n },\n }\n\n // Create mock done() function if necessary\n if (!complete) {\n complete = function () {}\n }\n\n // Animation loop\n // let canceled = false;\n const change = to - from\n\n function loop(timestamp: number) {\n var time = (timestamp || +new Date()) - start\n\n if (time >= 0) {\n update(easings.linear(time, from, change, duration))\n }\n if (time >= 0 && time >= duration) {\n update(to)\n if (complete) {\n complete()\n }\n } else {\n window.requestAnimationFrame(loop)\n }\n }\n\n update(from)\n\n // Start animation loop\n const start =\n window.performance && window.performance.now ? window.performance.now() : +new Date()\n\n window.requestAnimationFrame(loop)\n }\n\n public static animateClass(\n element: HTMLElement,\n animationName: string,\n callBack?: Function\n ): void {\n const animateClasses = animationName.split(' ')\n animateClasses.forEach((cssClass) => element.classList.add(cssClass))\n DOMEventHandlerUtil.one(element, 'animationend', function () {\n animateClasses.forEach((cssClass) => element.classList.remove(cssClass))\n })\n\n if (callBack) {\n DOMEventHandlerUtil.one(element, 'animationend', callBack)\n }\n }\n\n public static transitionEnd(element: HTMLElement, callBack: Function) {\n DOMEventHandlerUtil.one(element, 'transitionend', callBack)\n }\n\n public static animationEnd(element: HTMLElement, callBack: Function) {\n DOMEventHandlerUtil.one(element, 'animationend', callBack)\n }\n\n public static animationDelay(element: HTMLElement, value: string) {\n ElementStyleUtil.set(element, 'animation-delay', value)\n }\n\n public static animationDuration(element: HTMLElement, value: string) {\n ElementStyleUtil.set(element, 'animation-duration', value)\n }\n\n public static scrollTo(element: HTMLElement | null, offset: number, duration: number = 500) {\n let targetPos = element ? getElementOffset(element).top : 0\n let scrollPos =\n window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0\n\n if (offset) {\n scrollPos += offset\n targetPos = targetPos - offset\n }\n\n const from = scrollPos\n const to = targetPos\n\n ElementAnimateUtil.animate(from, to, duration, function (value: number) {\n document.documentElement.scrollTop = value\n // document.body.parentNode.scrollTop = value;\n document.body.scrollTop = value\n }) //, easing, done\n }\n public static scrollTop(offset: number, duration: number) {\n ElementAnimateUtil.scrollTo(null, offset, duration)\n }\n}\n","import {DataUtil} from './_DataUtil'\nimport {getUniqueIdWithPrefix} from './_TypesHelpers'\n\nexport interface EventMeta {\n name: string\n callback: Function\n one: boolean\n fired: boolean\n}\n\nexport class EventHandlerUtil {\n static store: Map> = new Map()\n\n private static setEventMetasByName(name: string, metas: Map): void {\n EventHandlerUtil.store.set(name, metas)\n }\n\n private static getEventMetasByName(name: string): Map | undefined {\n return EventHandlerUtil.store.get(name)\n }\n\n private static setEventMetaByNameAndHandlerId(\n name: string,\n handlerId: string,\n meta: EventMeta\n ): void {\n let metas = EventHandlerUtil.getEventMetasByName(name)\n if (!metas) {\n metas = new Map()\n }\n\n metas.set(handlerId, meta)\n EventHandlerUtil.setEventMetasByName(name, metas)\n }\n\n private static getEventsMetaByHandlerId(name: string, handlerId: string): EventMeta | undefined {\n const metas = EventHandlerUtil.store.get(name)\n if (!metas) {\n return\n }\n\n return metas.get(handlerId)\n }\n\n private static setFiredByNameAndHandlerId(name: string, handerId: string, fired: boolean): void {\n const meta = EventHandlerUtil.getEventsMetaByHandlerId(name, handerId)\n if (!meta) {\n return\n }\n\n meta.fired = fired\n EventHandlerUtil.setEventMetaByNameAndHandlerId(name, handerId, meta)\n }\n\n private static addEvent(\n element: HTMLElement,\n name: string,\n callback: Function,\n one: boolean = false\n ) {\n const handlerId = getUniqueIdWithPrefix('event')\n DataUtil.set(element, name, handlerId)\n const meta: EventMeta = {\n name: name,\n callback: callback,\n one: one,\n fired: false,\n }\n\n EventHandlerUtil.setEventMetaByNameAndHandlerId(name, handlerId, meta)\n }\n\n private static removeEvent(element: HTMLElement, name: string) {\n const handlerId = DataUtil.get(element, name)\n if (!handlerId) {\n return\n }\n\n const metas = EventHandlerUtil.getEventMetasByName(name)\n if (!metas) {\n return\n }\n\n metas.delete(handlerId)\n EventHandlerUtil.setEventMetasByName(name, metas)\n }\n\n public static trigger(element: HTMLElement, name: string, e?: Event) {\n if (DataUtil.has(element, name)) {\n const handlerId = DataUtil.get(element, name)\n if (!handlerId) {\n return undefined\n }\n\n const handler = EventHandlerUtil.getEventsMetaByHandlerId(name, handlerId)\n if (handler) {\n if (handler.name === name) {\n if (handler.one === true) {\n if (handler.fired === false) {\n EventHandlerUtil.setFiredByNameAndHandlerId(name, handlerId, true)\n return handler.callback.call(this, e)\n }\n } else {\n return handler.callback.call(this, e)\n }\n }\n }\n }\n\n return null\n }\n\n public static on = function (element: HTMLElement, name: string, callBack: Function): void {\n EventHandlerUtil.addEvent(element, name, callBack, false)\n }\n\n public static one(element: HTMLElement, name: string, callBack: Function): void {\n EventHandlerUtil.addEvent(element, name, callBack, true)\n }\n\n public static off(element: HTMLElement, name: string): void {\n EventHandlerUtil.removeEvent(element, name)\n }\n}\n","import {getUniqueIdWithPrefix} from './_TypesHelpers'\n\nexport class DOMEventHandlerUtil {\n public static store = new Map()\n\n public static on(\n element: HTMLElement,\n selector: string,\n eventName: string,\n callBack: any\n ): string {\n const eventId = getUniqueIdWithPrefix('DOMEvent')\n DOMEventHandlerUtil.store.set(eventId, (e: Event) => {\n const targets = element.querySelectorAll(selector)\n let target: HTMLElement | null = e.target as HTMLElement\n while (target && target !== element) {\n for (let i = 0; i < targets.length; i++) {\n if (target === targets[i]) {\n callBack.call(target, e)\n }\n }\n\n if (target.parentElement) {\n target = target.parentElement\n } else {\n target = null\n }\n }\n })\n element.addEventListener(eventName, DOMEventHandlerUtil.store.get(eventId))\n return eventId\n }\n\n public static off(element: HTMLElement, eventName: string, eventId: string): void {\n const funcFromStore = DOMEventHandlerUtil.store.get(eventId)\n if (!funcFromStore) {\n return\n }\n\n element.removeEventListener(eventName, funcFromStore)\n DOMEventHandlerUtil.store.delete(eventId)\n }\n\n public static one(element: HTMLElement, eventName: string, callBack: Function): void {\n element.addEventListener(eventName, function calee(e) {\n // remove event\n if (e.target && e.target.removeEventListener) {\n e.target.removeEventListener(e.type, calee)\n }\n\n if (element && e && e.currentTarget) {\n // if (element && element.removeEventListener && e && e.currentTarget) {\n e.currentTarget.removeEventListener(e.type, calee)\n }\n\n // call hander\n return callBack(e)\n })\n }\n}\n","export class DataUtil {\n static store: Map> = new Map()\n\n public static set(instance: HTMLElement | undefined, key: string, data: any): void {\n if (!instance) {\n return\n }\n\n const instanceData = DataUtil.store.get(instance)\n if (!instanceData) {\n const newMap = new Map().set(key, data)\n DataUtil.store.set(instance, newMap)\n return\n }\n\n instanceData.set(key, data)\n }\n\n public static get(instance: HTMLElement, key: string): any | undefined {\n const instanceData = DataUtil.store.get(instance)\n if (!instanceData) {\n return\n }\n\n return instanceData.get(key)\n }\n\n public static remove(instance: HTMLElement, key: string): void {\n const instanceData = DataUtil.store.get(instance)\n if (!instanceData) {\n return\n }\n\n instanceData.delete(key)\n }\n\n public static has(instance: HTMLElement, key: string): boolean {\n const instanceData = DataUtil.store.get(instance)\n if (instanceData) {\n return instanceData.has(key)\n }\n\n return false\n }\n\n public static getAllInstancesByKey(key: string) {\n const result: any[] = []\n DataUtil.store.forEach((val) => {\n val.forEach((v, k) => {\n if (k === key) {\n result.push(v)\n }\n })\n })\n return result\n }\n}\n","export class ElementStyleUtil {\n public static set(element: HTMLElement, property: string, value?: any, important?: boolean) {\n if (important) {\n element.style.setProperty(property, value, 'important')\n } else {\n element.style.setProperty(property, value)\n }\n }\n\n public static get(element: HTMLElement, attributeName: string) {\n return element.style.getPropertyValue(attributeName)\n }\n\n public static remove(element: HTMLElement, attibuteName: string) {\n element.style.removeProperty(attibuteName)\n }\n}\n","function getObjectPropertyValueByKey(obj: any, key: string): any | undefined {\n const map = new Map(Object.entries(obj))\n if (obj.hasOwnProperty(key) && map) {\n return map.get(key)\n }\n}\n\n/**\n * Generates unique ID for give prefix.\n * @param {string} prefix Prefix for generated ID\n * @returns {boolean}\n */\nfunction getUniqueIdWithPrefix(prefix: string | undefined): string {\n const result = Math.floor(Math.random() * new Date().getTime()).toString()\n if (!prefix) {\n return result\n }\n\n return `${prefix}${result}`\n}\n\n/* eslint-disable no-useless-escape */\nfunction stringSnakeToCamel(str: string): string {\n return str.replace(/(\\-\\w)/g, function (m) {\n return m[1].toUpperCase()\n })\n}\n\nfunction toJSON(value: string | JSON): JSON | undefined {\n if (typeof value !== 'string') {\n return value\n }\n\n if (!value) {\n return undefined\n }\n\n // (\"'\" => \"\\\"\");\n const result = value\n .toString()\n .split('')\n .map((el) => (el !== \"'\" ? el : '\"'))\n .join('')\n var jsonStr = result.replace(/(\\w+:)|(\\w+ :)/g, function (matched) {\n return '\"' + matched.substring(0, matched.length - 1) + '\":'\n })\n try {\n return JSON.parse(jsonStr)\n } catch {\n return undefined\n }\n}\n\nexport {getObjectPropertyValueByKey, getUniqueIdWithPrefix, stringSnakeToCamel, toJSON}\n","// Types\nexport * from './models/OffsetModel'\nexport * from './models/ViewPortModel'\n// Helpers\nexport * from './DomHelpers'\nexport * from './_TypesHelpers'\n// Basic\nexport * from './_DataUtil'\nexport * from './_DOMEventHandlerUtil'\nexport * from './_ElementStyleUtil'\nexport * from './ElementAnimateUtil'\nexport * from './EventHandlerUtil'\n","import {createPopper, VirtualElement} from '@popperjs/core'\nimport {DataUtil, DOMEventHandlerUtil, ElementStyleUtil, EventHandlerUtil, getAttributeValueByBreakpoint, getElementChild, getElementParents, getHighestZindex, getUniqueIdWithPrefix, insertAfterElement, slideDown, slideUp, throttle,} from '../_utils/index'\n\nexport interface MenuOptions {\n dropdown: {\n hoverTimeout: number\n zindex: number\n }\n accordion: {\n slideSpeed: number\n expand: boolean\n }\n}\n\nconst defaultMenuOptions: MenuOptions = {\n dropdown: {\n hoverTimeout: 200,\n zindex: 105,\n },\n accordion: {\n slideSpeed: 250,\n expand: false,\n },\n}\n\ntype PopperPlacement =\n | 'right'\n | 'auto'\n | 'auto-start'\n | 'auto-end'\n | 'top'\n | 'bottom'\n | 'left'\n | 'top-start'\n | 'top-end'\n | 'bottom-start'\n | 'bottom-end'\n | 'right-start'\n | 'right-end'\n | 'left-start'\n | 'left-end'\n | undefined\n\nclass MenuComponent {\n element: HTMLElement\n options: MenuOptions\n instanceUid: string\n triggerElement: HTMLElement | null = null\n\n constructor(_element: HTMLElement, options: MenuOptions) {\n this.element = _element\n this.options = Object.assign(defaultMenuOptions, options)\n this.instanceUid = getUniqueIdWithPrefix('menu')\n // this.element.setAttribute('data-kt-menu', 'true')\n this._setTriggerElement()\n this._update()\n DataUtil.set(this.element, 'menu', this)\n return this\n }\n\n // Set external trigger element\n private _setTriggerElement = () => {\n const target = document.querySelector(\n `[data-kt-menu-target=\"#${this.element.getAttribute('id')}\"`\n )\n\n if (target) {\n this.triggerElement = target as HTMLElement\n } else if (this.element.closest('[data-kt-menu-trigger]')) {\n this.triggerElement = this.element.closest('[data-kt-menu-trigger]') as HTMLElement\n } else if (\n this.element.parentNode &&\n getElementChild(this.element.parentNode as HTMLElement, '[data-kt-menu-trigger]')\n ) {\n const child = getElementChild(\n this.element.parentNode as HTMLElement,\n '[data-kt-menu-trigger]'\n )\n if (child) {\n this.triggerElement = child\n }\n }\n\n if (this.triggerElement) {\n DataUtil.set(this.triggerElement, 'menu', this)\n }\n }\n\n // Test if menu has external trigger element\n private _isTriggerElement = (item: HTMLElement) => {\n return this.triggerElement === item\n }\n\n // Get item option(through html attributes)\n private _getItemOption = (item: HTMLElement, name: string) => {\n let value = null\n if (item && item.hasAttribute('data-kt-menu-' + name)) {\n const attr = item.getAttribute('data-kt-menu-' + name) || ''\n value = getAttributeValueByBreakpoint(attr)\n if (value !== null && String(value) === 'true') {\n value = true\n } else if (value !== null && String(value) === 'false') {\n value = false\n }\n }\n return value\n }\n\n // Get item element\n private _getItemElement = (_element: HTMLElement) => {\n // Element is the external trigger element\n if (this._isTriggerElement(_element)) {\n return _element\n }\n\n // Element has item toggler attribute\n if (_element.hasAttribute('data-kt-menu-trigger')) {\n return _element\n }\n\n // Element has item DOM reference in it's data storage\n const itemElement = DataUtil.get(_element, 'item')\n if (itemElement) {\n return itemElement\n }\n\n // Item is parent of element\n const item = _element.closest('.menu-item[data-kt-menu-trigger]')\n if (item) {\n return item\n }\n\n // Element's parent has item DOM reference in it's data storage\n const sub = _element.closest('.menu-sub')\n if (sub) {\n const subItem = DataUtil.get(sub as HTMLElement, 'item')\n if (subItem) {\n return subItem\n }\n }\n }\n\n // Get item parent element\n private _getItemParentElement = (item: HTMLElement) => {\n const sub = item.closest('.menu-sub')\n if (!sub) {\n return null\n }\n\n const subItem = DataUtil.get(sub as HTMLElement, 'item')\n if (subItem) {\n return subItem\n }\n\n const parentItem = sub.closest('.menu-item[data-kt-menu-trigger]')\n if (sub && parentItem) {\n return parentItem\n }\n\n return null\n }\n\n // Get item parent elements\n private _getItemParentElements = (item: HTMLElement) => {\n const parents = []\n let parent\n let i = 0\n let buffer = item\n\n do {\n parent = this._getItemParentElement(buffer)\n if (parent) {\n parents.push(parent)\n buffer = parent\n }\n\n i++\n } while (parent !== null && i < 20)\n\n if (this.triggerElement) {\n parents.unshift(this.triggerElement)\n }\n\n return parents\n }\n\n // Prepare popper config for dropdown(see: https://popper.js.org/docs/v2/)\n private _getDropdownPopperConfig = (item: HTMLElement) => {\n // Placement\n const placementOption = this._getItemOption(item, 'placement')\n let placement: PopperPlacement = 'right'\n if (placementOption) {\n placement = placementOption as PopperPlacement\n }\n\n // Flip\n const flipValue = this._getItemOption(item, 'flip')\n const flip = flipValue ? flipValue.toString().split(',') : []\n\n // Offset\n const offsetValue = this._getItemOption(item, 'offset')\n const offset = offsetValue ? offsetValue.toString().split(',') : []\n\n // Strategy\n const strategy: 'absolute' | 'fixed' | undefined =\n this._getItemOption(item, 'overflow') === true ? 'absolute' : 'fixed'\n\n var altAxis = this._getItemOption(item, 'flip') !== false;\n\n return {\n placement: placement,\n strategy: strategy,\n modifiers: [{\n name: 'offset',\n options: {\n offset: offset\n }\n }, {\n name: 'preventOverflow',\n options: {\n altAxis: altAxis\n }\n }, {\n name: 'flip',\n options: {\n flipVariations: false\n }\n }]\n };\n }\n\n // Get item child element\n private _getItemChildElement = (item: HTMLElement) => {\n let selector = item\n\n const subItem = DataUtil.get(item, 'sub')\n if (subItem) {\n selector = subItem\n }\n\n if (selector) {\n //element = selector.querySelector('.show.menu-item[data-kt-menu-trigger]');\n const element = selector.querySelector('.menu-item[data-kt-menu-trigger]')\n if (element) {\n return element\n }\n }\n return null\n }\n\n // Get item child elements\n private _getItemChildElements = (item: HTMLElement) => {\n const children = []\n let child\n let i = 0\n let buffer = item\n do {\n child = this._getItemChildElement(buffer)\n if (child) {\n children.push(child)\n buffer = child as HTMLElement\n }\n\n i++\n } while (child !== null && i < 20)\n\n return children\n }\n\n // Get item sub element\n private _getItemSubElement = (item: HTMLElement) => {\n if (!item) {\n return null\n }\n\n if (this._isTriggerElement(item)) {\n return this.element\n }\n\n if (item.classList.contains('menu-sub')) {\n return item\n } else if (DataUtil.has(item, 'sub')) {\n return DataUtil.get(item, 'sub')\n } else {\n return getElementChild(item, '.menu-sub')\n }\n }\n\n private _getCss = (el: HTMLElement, styleProp: string) => {\n const defaultView = (el.ownerDocument || document).defaultView\n if (!defaultView) {\n return ''\n }\n\n // sanitize property name to css notation\n // (hyphen separated words eg. font-Size)\n styleProp = styleProp.replace(/([A-Z])/g, '-$1').toLowerCase()\n\n return defaultView.getComputedStyle(el, null).getPropertyValue(styleProp)\n }\n\n // Get item sub type\n private _getItemSubType = (element: HTMLElement) => {\n const sub = this._getItemSubElement(element)\n if (sub && parseInt(this._getCss(sub, 'z-index')) > 0) {\n return 'dropdown'\n } else {\n return 'accordion'\n }\n }\n\n // Test if item's sub is shown\n private _isItemSubShown = (item: HTMLElement) => {\n let sub = this._getItemSubElement(item)\n if (sub) {\n if (this._getItemSubType(item) === 'dropdown') {\n return sub.classList.contains('show') && sub.hasAttribute('data-popper-placement')\n } else {\n return item.classList.contains('show')\n }\n }\n\n return false\n }\n\n // Test if item dropdown is permanent\n private _isItemDropdownPermanent = (item: HTMLElement) => {\n return this._getItemOption(item, 'permanent') === true\n }\n\n // Test if item's parent is shown\n private _isItemParentShown = (item: HTMLElement) => {\n return getElementParents(item, '.menu-item.show').length > 0\n }\n\n // Test of it is item sub element\n private _isItemSubElement = (item: HTMLElement) => {\n return item.classList.contains('menu-sub')\n }\n\n // Test if item has sub\n private _hasItemSub = (item: HTMLElement) => {\n return item.classList.contains('menu-item') && item.hasAttribute('data-kt-menu-trigger')\n }\n\n // Get link element\n private _getItemLinkElement = (item: HTMLElement) => {\n return getElementChild(item, '.menu-link')\n }\n\n // Get toggle element\n private _getItemToggleElement = (item: HTMLElement) => {\n if (this.triggerElement) {\n return this.triggerElement\n }\n\n return this._getItemLinkElement(item)\n }\n\n // Show item dropdown\n private _showDropdown = (item: HTMLElement) => {\n if (EventHandlerUtil.trigger(this.element, 'kt.menu.dropdown.show') === false) {\n return\n }\n\n // Hide all currently shown dropdowns except current one\n MenuComponent.hideDropdowns(item)\n\n // const toggle = this._isTriggerElement(item) ? item : this._getItemLinkElement(item);\n const sub = this._getItemSubElement(item)\n const width = this._getItemOption(item, 'width')\n const height = this._getItemOption(item, 'height')\n\n let zindex = this.options.dropdown.zindex\n const parentZindex = getHighestZindex(item) // update\n // Apply a new z-index if dropdown's toggle element or it's parent has greater z-index // update\n if (parentZindex !== null && parentZindex >= zindex) {\n zindex = parentZindex + 1\n }\n\n if (zindex) {\n ElementStyleUtil.set(sub, 'z-index', zindex)\n }\n\n if (width) {\n ElementStyleUtil.set(sub, 'width', width)\n }\n\n if (height) {\n ElementStyleUtil.set(sub, 'height', height)\n }\n\n this.initDropdownPopper(item, sub)\n\n item.classList.add('show')\n item.classList.add('menu-dropdown')\n sub.classList.add('show')\n\n // Append the sub the the root of the menu\n if (this._getItemOption(item, 'overflow') === true) {\n document.body.appendChild(sub)\n DataUtil.set(item, 'sub', sub)\n DataUtil.set(sub, 'item', item)\n DataUtil.set(sub, 'menu', this)\n } else {\n DataUtil.set(sub, 'item', item)\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.menu.dropdown.shown')\n }\n\n // Init dropdown popper(new)\n private initDropdownPopper = (item: HTMLElement, sub: HTMLElement) => {\n // Setup popper instance\n let reference\n const attach = this._getItemOption(item, 'attach') as string\n\n if (attach) {\n if (attach === 'parent') {\n reference = item.parentNode\n } else {\n reference = document.querySelector(attach)\n }\n } else {\n reference = item\n }\n\n if (reference) {\n const popper = createPopper(\n reference as Element | VirtualElement,\n sub,\n this._getDropdownPopperConfig(item)\n )\n DataUtil.set(item, 'popper', popper)\n }\n }\n\n // Hide item dropdown\n private _hideDropdown = (item: HTMLElement) => {\n if (EventHandlerUtil.trigger(this.element, 'kt.menu.dropdown.hide') === false) {\n return\n }\n\n const sub = this._getItemSubElement(item)\n ElementStyleUtil.set(sub, 'z-index', '')\n ElementStyleUtil.set(sub, 'width', '')\n ElementStyleUtil.set(sub, 'height', '')\n item.classList.remove('show')\n item.classList.remove('menu-dropdown')\n sub.classList.remove('show')\n\n // Append the sub back to it's parent\n if (this._getItemOption(item, 'overflow') === true) {\n if (item.classList.contains('menu-item')) {\n item.appendChild(sub)\n } else {\n insertAfterElement(this.element, item)\n }\n\n DataUtil.remove(item, 'sub')\n DataUtil.remove(sub, 'item')\n DataUtil.remove(sub, 'menu')\n }\n\n if (DataUtil.has(item, 'popper') === true) {\n DataUtil.get(item, 'popper').destroy()\n DataUtil.remove(item, 'popper')\n }\n\n // Destroy popper(new)\n this.destroyDropdownPopper(item)\n EventHandlerUtil.trigger(this.element, 'kt.menu.dropdown.hidden')\n }\n\n // Destroy dropdown popper(new)\n private destroyDropdownPopper = (item: HTMLElement) => {\n if (DataUtil.has(item, 'popper') === true) {\n DataUtil.get(item, 'popper').destroy()\n DataUtil.remove(item, 'popper')\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.menu.dropdown.hidden')\n }\n\n private _showAccordion = (item: HTMLElement) => {\n if (EventHandlerUtil.trigger(this.element, 'kt.menu.accordion.show') === false) {\n return\n }\n\n if (this.options.accordion.expand === false) {\n this._hideAccordions(item)\n }\n\n if (DataUtil.has(item, 'popper') === true) {\n this._hideDropdown(item)\n }\n\n item.classList.add('hover') // updateWW\n item.classList.add('showing')\n\n const subElement = this._getItemSubElement(item)\n if (subElement) {\n const sub = subElement as HTMLElement\n slideDown(sub, this.options.accordion.slideSpeed, () => {\n item.classList.remove('showing')\n item.classList.add('show')\n sub.classList.add('show')\n EventHandlerUtil.trigger(this.element, 'kt.menu.accordion.shown')\n })\n }\n }\n\n private _hideAccordion = (item: HTMLElement) => {\n if (EventHandlerUtil.trigger(this.element, 'kt.menu.accordion.hide') === false) {\n return\n }\n\n const sub = this._getItemSubElement(item)\n item.classList.add('hiding')\n\n if (sub) {\n slideUp(sub, this.options.accordion.slideSpeed, () => {\n item.classList.remove('hiding')\n item.classList.remove('show')\n sub.classList.remove('show')\n item.classList.remove('hover') // update\n EventHandlerUtil.trigger(this.element, 'kt.menu.accordion.hidden')\n })\n }\n }\n\n // Hide all shown accordions of item\n private _hideAccordions = (item: HTMLElement) => {\n const itemsToHide = this.element.querySelectorAll('.show[data-kt-menu-trigger]')\n if (itemsToHide && itemsToHide.length > 0) {\n for (var i = 0, len = itemsToHide.length; i < len; i++) {\n const itemToHide = itemsToHide[i] as HTMLElement\n\n if (\n this._getItemSubType(itemToHide) === 'accordion' &&\n itemToHide !== item &&\n item.contains(itemToHide) === false &&\n itemToHide.contains(item) === false\n ) {\n this._hideAccordion(itemToHide)\n }\n }\n }\n }\n\n // Event Handlers\n // Reset item state classes if item sub type changed\n private _reset = (item: HTMLElement) => {\n if (this._hasItemSub(item) === false) {\n return\n }\n\n const sub = this._getItemSubElement(item)\n\n // Reset sub state if sub type is changed during the window resize\n if (DataUtil.has(item, 'type') && DataUtil.get(item, 'type') !== this._getItemSubType(item)) {\n // updated\n item.classList.remove('hover')\n item.classList.remove('show')\n item.classList.remove('show')\n if (sub && sub.removeClass) {\n sub.removeClass(sub, 'show')\n }\n } // updated\n }\n\n // TODO: not done\n private _destroy = () => {}\n\n // Update all item state classes if item sub type changed\n private _update = () => {\n const items = this.element.querySelectorAll('.menu-item[data-kt-menu-trigger]')\n items.forEach((el) => this._reset(el as HTMLElement))\n }\n\n // Hide item sub\n private _hide = (item: HTMLElement) => {\n if (!item) {\n return\n }\n\n if (this._isItemSubShown(item) === false) {\n return\n }\n\n if (this._getItemSubType(item) === 'dropdown') {\n this._hideDropdown(item)\n } else if (this._getItemSubType(item) === 'accordion') {\n this._hideAccordion(item)\n }\n }\n\n // Show item sub\n private _show = (item: HTMLElement) => {\n if (!item) {\n return\n }\n\n if (this._isItemSubShown(item) === true) {\n return\n }\n\n if (this._getItemSubType(item) === 'dropdown') {\n this._showDropdown(item) // // show current dropdown\n } else if (this._getItemSubType(item) === 'accordion') {\n this._showAccordion(item)\n }\n\n // Remember last submenu type\n\n DataUtil.set(item, 'type', this._getItemSubType(item)) // updated\n }\n\n // Toggle item sub\n private _toggle = (item: HTMLElement) => {\n if (!item) {\n return\n }\n\n if (this._isItemSubShown(item) === true) {\n this._hide(item)\n } else {\n this._show(item)\n }\n }\n\n // Mouseout handle\n private _mouseout = (element: HTMLElement, e: MouseEvent) => {\n const item = this._getItemElement(element)\n if (!item) {\n return\n }\n\n if (this._getItemOption(item, 'trigger') !== 'hover') {\n return\n }\n\n const timeout = setTimeout(() => {\n if (DataUtil.get(item, 'hover') === '1') {\n this._hide(item)\n }\n }, this.options.dropdown.hoverTimeout)\n\n DataUtil.set(item, 'hover', '1')\n DataUtil.set(item, 'timeout', timeout)\n }\n\n // Mouseover handle\n private _mouseover = (element: HTMLElement, e: MouseEvent) => {\n const item = this._getItemElement(element)\n if (!item) {\n return\n }\n\n if (this._getItemOption(item, 'trigger') !== 'hover') {\n return\n }\n\n if (DataUtil.get(item, 'hover') === '1') {\n clearTimeout(DataUtil.get(item, 'timeout'))\n DataUtil.remove(item, 'hover')\n DataUtil.remove(item, 'timeout')\n }\n\n this._show(item)\n }\n\n // Dismiss handler\n private _dismiss = (element: HTMLElement, e: Event) => {\n const item = this._getItemElement(element)\n const items = this._getItemChildElements(item)\n //if ( item !== null && _getItemOption(item, 'trigger') === 'click' && _getItemSubType(item) === 'dropdown' ) {\n const itemSubType = this._getItemSubType(item)\n if (item !== null && itemSubType === 'dropdown') {\n this._hide(item) // hide items dropdown\n\n // Hide all child elements as well\n if (items.length > 0) {\n for (let i = 0, len = items.length; i < len; i++) {\n //if ( _getItemOption(item, 'trigger') === 'click' && _getItemSubType(item) === 'dropdown' ) {\n if (items[i] !== null && this._getItemSubType(items[i] as HTMLElement) === 'dropdown') {\n this._hide(items[i] as HTMLElement)\n }\n }\n }\n }\n }\n\n // Link handler\n private _link = (element: HTMLElement, e: Event) => {\n if (EventHandlerUtil.trigger(this.element, 'kt.menu.link.click') === false) {\n return\n }\n\n // Dismiss all shown dropdowns\n MenuComponent.hideDropdowns(undefined)\n EventHandlerUtil.trigger(this.element, 'kt.menu.link.clicked')\n }\n\n private _click = (element: HTMLElement, e: Event) => {\n e.preventDefault()\n const item = this._getItemElement(element)\n if (this._getItemOption(item, 'trigger') !== 'click') {\n return\n }\n\n if (this._getItemOption(item, 'toggle') === false) {\n this._show(item)\n } else {\n this._toggle(item)\n }\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n public click = (element: HTMLElement, e: Event) => {\n return this._click(element, e)\n }\n\n public link = (element: HTMLElement, e: Event) => {\n return this._link(element, e)\n }\n\n public dismiss = (element: HTMLElement, e: Event) => {\n return this._dismiss(element, e)\n }\n\n public mouseover = (element: HTMLElement, e: Event) => {\n return this._mouseover(element, e as MouseEvent)\n }\n\n public mouseout = (element: HTMLElement, e: Event) => {\n return this._mouseout(element, e as MouseEvent)\n }\n\n // General Methods\n public getItemTriggerType = (item: HTMLElement) => {\n return this._getItemOption(item, 'trigger')\n }\n\n public getItemSubType = (element: HTMLElement) => {\n return this._getItemSubType(element)\n }\n\n public show = (item: HTMLElement) => {\n return this._show(item)\n }\n\n public hide = (item: HTMLElement) => {\n return this._hide(item)\n }\n\n public reset = (item: HTMLElement) => {\n return this._reset(item)\n }\n\n public update = () => {\n return this._update()\n }\n\n public getElement = () => {\n return this.element\n }\n\n public getItemLinkElement = (item: HTMLElement) => {\n return this._getItemLinkElement(item)\n }\n\n public getItemToggleElement = (item: HTMLElement) => {\n return this._getItemToggleElement(item)\n }\n\n public getItemSubElement = (item: HTMLElement) => {\n return this._getItemSubElement(item)\n }\n\n public getItemParentElements = (item: HTMLElement) => {\n return this._getItemParentElements(item)\n }\n\n public isItemSubShown = (item: HTMLElement) => {\n return this._isItemSubShown(item)\n }\n\n public isItemParentShown = (item: HTMLElement) => {\n return this._isItemParentShown(item)\n }\n\n public getTriggerElement = () => {\n return this.triggerElement\n }\n\n public isItemDropdownPermanent = (item: HTMLElement) => {\n return this._isItemDropdownPermanent(item)\n }\n\n // Accordion Mode Methods\n public hideAccordions = (item: HTMLElement) => {\n return this._hideAccordions(item)\n }\n\n // Event API\n public on = (name: string, handler: any) => {\n return EventHandlerUtil.on(this.element, name, handler)\n }\n\n public one = (name: string, handler: any) => {\n return EventHandlerUtil.one(this.element, name, handler)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n // public static methods\n // Get KTMenu instance by element\n public static getInstance = (element: HTMLElement) => {\n // Element has menu DOM reference in it's DATA storage\n const elementMenu = DataUtil.get(element, 'menu')\n if (elementMenu) {\n return elementMenu\n }\n\n // Element has .menu parent\n const menu = element.closest('.menu')\n if (menu) {\n const menuData = DataUtil.get(menu as HTMLElement, 'menu')\n if (menuData) {\n return menuData\n }\n }\n\n // Element has a parent with DOM reference to .menu in it's DATA storage\n if (element.classList.contains('menu-link')) {\n const sub = element.closest('.menu-sub')\n if (sub) {\n const subMenu = DataUtil.get(sub as HTMLElement, 'menu')\n if (subMenu) {\n return subMenu\n }\n }\n }\n\n return null\n }\n\n // Hide all dropdowns and skip one if provided\n public static hideDropdowns = (skip: HTMLElement | undefined) => {\n const items = document.querySelectorAll('.show.menu-dropdown[data-kt-menu-trigger]')\n\n if (items && items.length > 0) {\n for (let i = 0, len = items.length; i < len; i++) {\n const item = items[i]\n const menu = MenuComponent.getInstance(item as HTMLElement)\n\n if (menu && menu.getItemSubType(item) === 'dropdown') {\n if (skip) {\n if (\n menu.getItemSubElement(item).contains(skip) === false &&\n item.contains(skip) === false &&\n item !== skip\n ) {\n menu.hide(item)\n }\n } else {\n menu.hide(item)\n }\n }\n }\n }\n }\n\n public static updateDropdowns = () => {\n const items = document.querySelectorAll('.show.menu-dropdown[data-kt-menu-trigger]')\n if (items && items.length > 0) {\n for (var i = 0, len = items.length; i < len; i++) {\n var item = items[i]\n\n if (DataUtil.has(item as HTMLElement, 'popper')) {\n DataUtil.get(item as HTMLElement, 'popper').forceUpdate()\n }\n }\n }\n }\n\n // Global handlers\n public static createInstances = (selector: string) => {\n // Initialize menus\n document.querySelectorAll(selector).forEach((el) => {\n const menuItem = el as HTMLElement\n let menuInstance = MenuComponent.getInstance(menuItem)\n if (!menuInstance) {\n menuInstance = new MenuComponent(el as HTMLElement, defaultMenuOptions)\n }\n })\n }\n\n public static initGlobalHandlers = () => {\n // Dropdown handler\n document.addEventListener('click', (e) => {\n const menuItems = document.querySelectorAll('.show.menu-dropdown[data-kt-menu-trigger]')\n if (menuItems && menuItems.length > 0) {\n for (let i = 0; i < menuItems.length; i++) {\n const item = menuItems[i] as HTMLElement\n const menuObj = MenuComponent.getInstance(item) as MenuComponent\n if (menuObj && menuObj.getItemSubType(item) === 'dropdown') {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const menu = menuObj.getElement()\n const sub = menuObj.getItemSubElement(item) as HTMLElement\n if (item === e.target || item.contains(e.target as HTMLElement)) {\n continue\n }\n\n if (sub && (sub === e.target || sub.contains(e.target as HTMLElement))) {\n continue\n }\n menuObj.hide(item)\n }\n }\n }\n })\n\n // Sub toggle handler\n DOMEventHandlerUtil.on(\n document.body,\n '.menu-item[data-kt-menu-trigger] > .menu-link, [data-kt-menu-trigger]:not(.menu-item):not([data-kt-menu-trigger=\"auto\"])',\n 'click',\n function (this: HTMLElement, e: Event) {\n const menu = MenuComponent.getInstance(this) as MenuComponent\n if (menu) {\n return menu.click(this, e)\n }\n }\n )\n\n // // Link handler\n DOMEventHandlerUtil.on(\n document.body,\n '.menu-item:not([data-kt-menu-trigger]) > .menu-link',\n 'click',\n function (this: HTMLElement, e: Event) {\n e.stopPropagation()\n const menu = MenuComponent.getInstance(this)\n if (menu && menu.link) {\n return menu.link(this, e)\n }\n }\n )\n\n // Dismiss handler\n DOMEventHandlerUtil.on(\n document.body,\n '[data-kt-menu-dismiss=\"true\"]',\n 'click',\n function (this: HTMLElement, e: Event) {\n const menu = MenuComponent.getInstance(this) as MenuComponent\n if (menu) {\n return menu.dismiss(this, e)\n }\n }\n )\n\n // Mouseover handler\n DOMEventHandlerUtil.on(\n document.body,\n '[data-kt-menu-trigger], .menu-sub',\n 'mouseover',\n function (this: HTMLElement, e: Event) {\n const menu = MenuComponent.getInstance(this) as MenuComponent\n if (menu && menu.getItemSubType(this) === 'dropdown') {\n return menu.mouseover(this, e)\n }\n }\n )\n\n // Mouseout handler\n DOMEventHandlerUtil.on(\n document.body,\n '[data-kt-menu-trigger], .menu-sub',\n 'mouseout',\n function (this: HTMLElement, e: Event) {\n const menu = MenuComponent.getInstance(this) as MenuComponent\n if (menu && menu.getItemSubType(this) === 'dropdown') {\n return menu.mouseout(this, e)\n }\n }\n )\n\n // Resize handler\n window.addEventListener('resize', () => {\n let timer\n throttle(\n timer,\n () => {\n // Locate and update Drawer instances on window resize\n const elements = document.querySelectorAll('[data-kt-menu=\"true\"]')\n elements.forEach((el) => {\n const menu = MenuComponent.getInstance(el as HTMLElement)\n if (menu) {\n menu.update()\n }\n })\n },\n 200\n )\n })\n }\n\n public static bootstrap = () => {\n MenuComponent.initGlobalHandlers()\n MenuComponent.createInstances('[data-kt-menu=\"true\"]')\n }\n\n public static reinitialization = () => {\n MenuComponent.createInstances('[data-kt-menu=\"true\"]')\n }\n\n public static createInsance = (\n selector: string,\n options: MenuOptions = defaultMenuOptions\n ): MenuComponent | undefined => {\n const element = document.body.querySelector(selector)\n if (!element) {\n return\n }\n const item = element as HTMLElement\n let menu = MenuComponent.getInstance(item)\n if (!menu) {\n menu = new MenuComponent(item, options)\n }\n return menu\n }\n}\n\nexport {MenuComponent, defaultMenuOptions}\n","import {\n EventHandlerUtil,\n DataUtil,\n getBreakpoint,\n getAttributeValueByBreakpoint,\n stringSnakeToCamel,\n getObjectPropertyValueByKey,\n getViewPort,\n isVisibleElement,\n throttle,\n} from '../_utils/index'\n\nimport {MenuComponent, defaultMenuOptions} from './MenuComponent'\n\nexport interface ISearchOptions {\n minLength: number // Miniam text lenght to query search\n keypress: boolean // Enable search on keypress\n enter: boolean // Enable search on enter key press\n layout: 'menu' | 'inline' // Use 'menu' or 'inline' layout options to display search results\n responsive?: number // Pass integer value or bootstrap compatible breakpoint key(sm,md,lg,xl,xxl) to enable reponsive form mode for device width below the breakpoint value\n showOnFocus: boolean // Always show menu on input focus\n}\n\nexport interface ISearchQueries {\n componentName: string\n instanseQuery: string\n attrQuery: string\n}\n\nconst defaultSearchOptions: ISearchOptions = {\n minLength: 2, // Miniam text lenght to query search\n keypress: true, // Enable search on keypress\n enter: true, // Enable search on enter key press\n layout: 'menu', // Use 'menu' or 'inline' layout options to display search results\n showOnFocus: true, // Always show menu on input focus\n}\n\nconst defaultSearchQueires: ISearchQueries = {\n componentName: 'search',\n instanseQuery: '[data-kt-search]',\n attrQuery: 'data-kt-search-',\n}\n\nclass SearchComponent {\n element: HTMLElement\n contentElement: HTMLElement\n formElement: HTMLFormElement\n inputElement: HTMLInputElement\n spinnerElement: HTMLElement\n clearElement: HTMLElement\n toggleElement: HTMLElement\n submitElement: HTMLElement\n toolbarElement: HTMLElement\n resultsElement: HTMLElement\n suggestionElement: HTMLElement\n emptyElement: HTMLElement\n layout: any\n\n options: ISearchOptions\n queries: ISearchQueries\n\n processing: boolean = false\n menuObject: MenuComponent | undefined\n\n constructor(_element: HTMLElement, _options: ISearchOptions, _queries: ISearchQueries) {\n // Variables\n this.options = Object.assign(defaultSearchOptions, _options)\n this.queries = _queries\n\n // Elements\n this.element = _element\n this.contentElement = this._getElement('content') as HTMLElement\n this.formElement = this._getElement('form') as HTMLFormElement\n this.inputElement = this._getElement('input') as HTMLInputElement\n this.spinnerElement = this._getElement('spinner') as HTMLElement\n this.clearElement = this._getElement('clear') as HTMLElement\n this.toggleElement = this._getElement('toggle') as HTMLElement\n this.submitElement = this._getElement('submit') as HTMLElement\n this.toolbarElement = this._getElement('toolbar') as HTMLElement\n\n this.resultsElement = this._getElement('results') as HTMLElement\n this.suggestionElement = this._getElement('suggestion') as HTMLElement\n this.emptyElement = this._getElement('empty') as HTMLElement\n\n // Layout\n this.layout = this.getOption('layout')\n if (this.layout === 'menu') {\n this.menuObject = new MenuComponent(this.contentElement, defaultMenuOptions)\n }\n\n // Update\n this.update()\n\n // Event Handlers\n this.handlers()\n\n DataUtil.set(this.element, this.queries.componentName, this)\n }\n\n private _getElement = (name: string) => {\n return this.element.querySelector('[data-kt-search-element=\"' + name + '\"]')\n }\n\n // Get option\n private getOption = (name: string) => {\n const attr = this.element.getAttribute(`${this.queries.attrQuery}${name}`)\n if (attr) {\n let value = getAttributeValueByBreakpoint(attr)\n\n if (value !== null && String(value) === 'true') {\n return true\n } else if (value !== null && String(value) === 'false') {\n return false\n }\n\n return value\n } else {\n const optionName = stringSnakeToCamel(name)\n\n const option = getObjectPropertyValueByKey(this.options, optionName)\n if (option) {\n return getAttributeValueByBreakpoint(option)\n } else {\n return null\n }\n }\n }\n\n // Check if responsive form mode is enabled\n private getResponsiveFormMode = () => {\n const responsive = this.getOption('responsive') as string\n const width = getViewPort().width\n\n if (!responsive) {\n return null\n }\n\n const breakpoint = getBreakpoint(responsive)\n let breakPointNum = -1\n if (!breakpoint) {\n breakPointNum = parseInt(responsive)\n } else {\n breakPointNum = +breakpoint\n }\n\n if (width < breakPointNum) {\n return 'on'\n } else {\n return 'off'\n }\n }\n\n // Focus\n private focus = () => {\n this.element.classList.add('focus')\n\n if (\n this.getOption('show-on-focus') === true ||\n this.inputElement.value.length >= this.options.minLength\n ) {\n this.show()\n }\n }\n\n // Blur\n private blur = () => {\n this.element.classList.remove('focus')\n }\n\n // Enter\n private enter = (e: KeyboardEvent) => {\n const key = e.charCode || e.keyCode || 0\n\n if (key === 13) {\n e.preventDefault()\n\n this.search()\n }\n }\n\n // Input\n private input = () => {\n if (this.getOption('min-length')) {\n const minLength = parseInt(this.getOption('min-length') as string)\n\n if (this.inputElement.value.length >= minLength) {\n this.search()\n } else if (this.inputElement.value.length === 0) {\n this.clear()\n }\n }\n }\n\n private handlers(): void {\n // Focus\n this.inputElement.addEventListener('focus', this.focus)\n\n // Blur\n this.inputElement.addEventListener('blur', this.blur)\n\n // Keypress\n if (this.getOption('keypress') === true) {\n this.inputElement.addEventListener('input', this.input)\n }\n\n // Submit\n if (this.submitElement) {\n this.submitElement.addEventListener('click', this.search)\n }\n\n // Enter\n if (this.getOption('enter') === true) {\n this.inputElement.addEventListener('keypress', this.enter)\n }\n\n // Clear\n if (this.clearElement) {\n this.clearElement.addEventListener('click', this.clear)\n }\n\n // Menu\n if (this.menuObject) {\n // Toggle menu\n if (this.toggleElement) {\n this.toggleElement.addEventListener('click', this.show)\n\n this.menuObject.on('kt.menu.dropdown.show', function () {\n // @ts-ignore\n if (isVisibleElement(this.toggleElement)) {\n // @ts-ignore\n this.toggleElement.classList.add('active')\n // @ts-ignore\n this.toggleElement.classList.add('show')\n }\n })\n\n this.menuObject.on('kt.menu.dropdown.hide', function () {\n // @ts-ignore\n if (isVisibleElement(this.toggleElement)) {\n // @ts-ignore\n this.toggleElement.classList.remove('active')\n // @ts-ignore\n this.toggleElement.classList.remove('show')\n }\n })\n }\n\n this.menuObject.on('kt.menu.dropdown.shown', function () {\n // @ts-ignore\n this.inputElement.focus()\n })\n }\n\n // Window resize handling\n window.addEventListener('resize', () => {\n let timer\n\n throttle(\n timer,\n () => {\n this.update()\n },\n 200\n )\n })\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n // Update\n public update = () => {\n // Handle responsive form\n if (this.layout === 'menu') {\n let responsiveFormMode = this.getResponsiveFormMode()\n\n if (responsiveFormMode === 'on' && this.contentElement.contains(this.formElement) === false) {\n this.contentElement.prepend(this.formElement)\n this.formElement.classList.remove('d-none')\n } else if (\n responsiveFormMode === 'off' &&\n this.contentElement.contains(this.formElement) === true\n ) {\n this.element.prepend(this.formElement)\n this.formElement.classList.add('d-none')\n }\n }\n }\n\n // Show menu\n public show = () => {\n if (this.menuObject) {\n this.update()\n\n this.menuObject.show(this.element)\n }\n }\n\n // Hide menu\n public hide = () => {\n if (this.menuObject) {\n this.update()\n\n this.menuObject.hide(this.element)\n }\n }\n\n // Search\n public search = () => {\n if (this.processing === false) {\n // Show search spinner\n if (this.spinnerElement) {\n this.spinnerElement.classList.remove('d-none')\n }\n\n // Hide search clear button\n if (this.clearElement) {\n this.clearElement.classList.add('d-none')\n }\n\n // Hide search toolbar\n if (this.toolbarElement) {\n this.toolbarElement.classList.add('d-none')\n }\n\n // Focus input\n this.inputElement.focus()\n\n this.processing = true\n EventHandlerUtil.trigger(this.element, 'kt.search.process')\n }\n }\n\n // Complete\n public complete = () => {\n if (this.spinnerElement) {\n this.spinnerElement.classList.add('d-none')\n }\n\n // Show search toolbar\n if (this.clearElement) {\n this.clearElement.classList.remove('d-none')\n }\n\n if (this.inputElement.value.length === 0) {\n this.clear()\n }\n\n // Focus input\n this.inputElement.focus()\n\n this.show()\n\n this.processing = false\n }\n\n // Clear\n public clear = () => {\n if (EventHandlerUtil.trigger(this.element, 'kt.search.clear') === false) {\n return\n }\n\n // Clear and focus input\n this.inputElement.value = ''\n this.inputElement.focus()\n\n // Hide clear icon\n if (this.clearElement) {\n this.clearElement.classList.add('d-none')\n }\n\n // Show search toolbar\n if (this.toolbarElement) {\n this.toolbarElement.classList.remove('d-none')\n }\n\n // Hide menu\n if (this.getOption('show-on-focus') === false) {\n this.hide()\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.search.cleared')\n }\n\n public isProcessing = () => {\n return this.processing\n }\n\n public getQuery = () => {\n return this.inputElement.value\n }\n\n public getMenu = () => {\n return this.menuObject\n }\n\n public getFormElement = () => {\n return this.formElement\n }\n\n public getInputElement(): HTMLInputElement {\n return this.inputElement\n }\n\n public getContentElement(): HTMLElement {\n return this.contentElement\n }\n\n public getElement(): HTMLElement {\n return this.element\n }\n\n // Event API\n public on = (name: string, handler: Function) => {\n return EventHandlerUtil.on(this.element, name, handler)\n }\n\n public one = (name: string, handler: Function) => {\n return EventHandlerUtil.one(this.element, name, handler)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n // Static methods\n public static getInstance = (\n el: HTMLElement,\n componentName: string = defaultSearchQueires.componentName\n ) => {\n const Search = DataUtil.get(el, componentName)\n if (Search) {\n return Search\n }\n\n return null\n }\n\n public static createInstances = (\n selector: string = defaultSearchQueires.instanseQuery,\n options: ISearchOptions = defaultSearchOptions,\n queries: ISearchQueries = defaultSearchQueires\n ) => {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((el) => {\n const item = el as HTMLElement\n let Search = SearchComponent.getInstance(item)\n if (!Search) {\n Search = new SearchComponent(item, options, queries)\n }\n })\n }\n\n public static createInsance = (\n selector: string = defaultSearchQueires.instanseQuery,\n options: ISearchOptions = defaultSearchOptions,\n queries: ISearchQueries = defaultSearchQueires\n ): SearchComponent | undefined => {\n const element = document.body.querySelector(selector)\n if (!element) {\n return\n }\n const item = element as HTMLElement\n let Search = SearchComponent.getInstance(item)\n if (!Search) {\n Search = new SearchComponent(item, options, queries)\n }\n return Search\n }\n\n public static bootstrap = (selector: string = defaultSearchQueires.instanseQuery) => {\n SearchComponent.createInstances(selector)\n }\n\n public static reinitialization = (selector: string = defaultSearchQueires.instanseQuery) => {\n SearchComponent.createInstances(selector)\n }\n}\nexport {SearchComponent, defaultSearchOptions, defaultSearchQueires}\n","/* eslint-disable no-useless-escape */\n// DOCS: https://javascript.info/cookie\nexport class CookieComponent {\n /**\n * Returns the cookie with the given name, or undefined if not found\n *\n * @param {string} name - cookie name\n * @returns string | null\n */\n public static get(name: string): string | undefined {\n let matches = document.cookie.match(\n new RegExp('(?:^|; )' + name.replace(/([\\.$?*|{}\\(\\)\\[\\]\\\\\\/\\+^])/g, '\\\\$1') + '=([^;]*)')\n )\n return matches ? decodeURIComponent(matches[1]) : undefined\n }\n\n /**\n * Please note that a cookie value is encoded,\n * so getCookie uses a built-in decodeURIComponent function to decode it.\n *\n * @param {string} name - cookie name\n * @param {string | number | boolean} value - cookie value\n * @param {any} cookieOptions - cookie options\n * @returns void\n */\n public static set(name: string, value: string | number | boolean, cookieOptions: any): void {\n const options = {\n path: '/',\n // add other defaults here if necessary\n ...cookieOptions,\n }\n\n if (options.expires instanceof Date) {\n options.expires = options.expires.toUTCString()\n }\n\n let updatedCookie = encodeURIComponent(name) + '=' + encodeURIComponent(value)\n\n for (let optionKey in options) {\n updatedCookie += '; ' + optionKey\n let optionValue = options[optionKey]\n if (optionValue !== true) {\n updatedCookie += '=' + optionValue\n }\n }\n\n document.cookie = updatedCookie\n }\n\n /**\n * To delete a cookie, we can call it with a negative expiration date\n *\n * @param {string} name\n */\n public static delete(name: string): void {\n CookieComponent.set(name, '', {\n 'max-age': -1,\n })\n }\n}\n","import {\n DataUtil,\n EventHandlerUtil,\n getUniqueIdWithPrefix,\n getObjectPropertyValueByKey,\n stringSnakeToCamel,\n getAttributeValueByBreakpoint,\n throttle,\n getCSS,\n DOMEventHandlerUtil,\n ElementStyleUtil,\n} from '../_utils/index'\n\nexport interface DrawerOptions {\n overlay: boolean\n baseClass: string\n overlayClass: string\n direction: string\n}\n\nconst defaultDrawerOptions: DrawerOptions = {\n overlay: true,\n baseClass: 'drawer',\n overlayClass: 'drawer-overlay',\n direction: 'end',\n}\n\nclass DrawerComponent {\n element: HTMLElement\n overlayElement: HTMLElement | null = null\n toggleElement: HTMLElement | null = null\n options: DrawerOptions\n instanceUid: string\n name: string = ''\n shown: boolean = false\n lastWidth: number = 0\n closeElement: HTMLElement | null = null\n\n constructor(_element: HTMLElement, options: DrawerOptions) {\n this.element = _element\n this.options = Object.assign(defaultDrawerOptions, options)\n this.instanceUid = getUniqueIdWithPrefix('drawer')\n this.overlayElement = null\n this.name = this.element.getAttribute('data-kt-drawer-name') || ''\n this.shown = false\n this.toggleElement = null\n // Event Handlers\n this._handlers()\n // Update Instance\n this._update()\n // Bind Instance\n DataUtil.set(this.element, 'drawer', this)\n }\n\n private _handlers = () => {\n const togglers = this._getOption('toggle') as string\n const closers = this._getOption('close') as string\n\n if (togglers !== null && togglers.length > 0) {\n DOMEventHandlerUtil.on(document.body, togglers, 'click', (e: Event) => {\n e.preventDefault()\n this.toggleElement = document.getElementById(togglers)\n this._toggle()\n })\n }\n\n if (closers !== null && closers.length > 0) {\n DOMEventHandlerUtil.on(document.body, closers, 'click', (e: Event) => {\n e.preventDefault()\n this.closeElement = document.getElementById(closers)\n\n this._hide()\n })\n }\n }\n\n private _update = () => {\n const width = String(this._getOption('width'))\n const direction = String(this._getOption('direction'))\n\n // Reset state\n const hasBaseClass = this.element.classList.contains(`${this.options.baseClass}-on`)\n const bodyCanvasAttr = String(document.body.getAttribute(`data-kt-drawer-${this.name}-`))\n\n if (hasBaseClass === true && bodyCanvasAttr === 'on') {\n this.shown = true\n } else {\n this.shown = false\n }\n\n // Activate/deactivate\n if (this._getOption('activate') === true) {\n this.element.classList.add(this.options.baseClass)\n this.element.classList.add(`${this.options.baseClass}-${direction}`)\n ElementStyleUtil.set(this.element, 'width', width, true)\n\n this.lastWidth = parseInt(width)\n } else {\n ElementStyleUtil.set(this.element, 'width', '')\n this.element.classList.remove(this.options.baseClass)\n this.element.classList.remove(`${this.options.baseClass}-${direction}`)\n this._hide()\n }\n }\n\n private _getOption = (name: string) => {\n const attr = this.element.getAttribute(`data-kt-drawer-${name}`)\n if (attr) {\n let value = getAttributeValueByBreakpoint(attr)\n if (value !== null && String(value) === 'true') {\n return true\n } else {\n if (value !== null && String(value) === 'false') {\n return false\n }\n }\n\n return value\n } else {\n const optionName = stringSnakeToCamel(name)\n const option = getObjectPropertyValueByKey(this.options, optionName)\n if (option) {\n return getAttributeValueByBreakpoint(option)\n } else {\n return null\n }\n }\n }\n\n private _toggle = () => {\n if (EventHandlerUtil.trigger(this.element, 'kt.drawer.toggle') === false) {\n return\n }\n\n if (this.shown) {\n this._hide()\n } else {\n this._show()\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.drawer.toggled')\n }\n\n private _hide = () => {\n if (EventHandlerUtil.trigger(this.element, 'kt.drawer.hide') === false) {\n return\n }\n\n this.shown = false\n this._deleteOverlay()\n document.body.removeAttribute(`data-kt-drawer-${this.name}`)\n document.body.removeAttribute(`data-kt-drawer`)\n this.element.classList.remove(`${this.options.baseClass}-on`)\n if (this.toggleElement != null) {\n this.toggleElement.classList.remove('active')\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.drawer.after.hidden')\n }\n\n private _show = () => {\n if (EventHandlerUtil.trigger(this.element, 'kt.drawer.show') === false) {\n return\n }\n\n this.shown = true\n this._createOverlay()\n document.body.setAttribute(`data-kt-drawer-${this.name}`, 'on')\n document.body.setAttribute('data-kt-drawer', 'on')\n this.element.classList.add(`${this.options.baseClass}-on`)\n if (this.toggleElement !== null) {\n this.toggleElement.classList.add('active')\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.drawer.shown')\n }\n\n private _createOverlay = () => {\n if (this._getOption('overlay') === true) {\n this.overlayElement = document.createElement('DIV')\n const elementZIndex = getCSS(this.element, 'z-index')\n if (elementZIndex) {\n const overlayZindex = parseInt(elementZIndex) - 1\n ElementStyleUtil.set(this.overlayElement, 'z-index', overlayZindex) // update\n }\n document.body.append(this.overlayElement)\n const overlayClassOption = this._getOption('overlay-class')\n if (overlayClassOption) {\n this.overlayElement.classList.add(overlayClassOption.toString())\n }\n this.overlayElement.addEventListener('click', (e) => {\n e.preventDefault()\n this._hide()\n })\n }\n }\n\n private _deleteOverlay = () => {\n if (this.overlayElement !== null && this.overlayElement.parentNode) {\n this.overlayElement.parentNode.removeChild(this.overlayElement)\n }\n }\n\n private _getDirection = () => {\n return String(this._getOption('direction')) === 'left' ? 'left' : 'right'\n }\n\n private _getWidth = () => {\n let width = this._getOption('width')\n if (width && width === 'auto') {\n width = getCSS(this.element, 'width')\n }\n\n return width\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n public toggle = () => {\n this._toggle()\n }\n\n public show = () => {\n this._show()\n }\n\n public hide = () => {\n this._hide()\n }\n\n public isShown = () => {\n return this.shown\n }\n\n public update = () => {\n this._update()\n }\n\n public goElement = () => {\n return this.element\n }\n\n // Event API\n public on = (name: string, handler: Function) => {\n return EventHandlerUtil.on(this.element, name, handler)\n }\n\n public one = (name: string, handler: Function) => {\n return EventHandlerUtil.one(this.element, name, handler)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n public trigger = (name: string, event: Event) => {\n return EventHandlerUtil.trigger(this.element, name, event)\n }\n\n // Static methods\n public static hasInstace = (element: HTMLElement): boolean => {\n return DataUtil.has(element, 'drawer')\n }\n\n public static getInstance = (element: HTMLElement) => {\n return DataUtil.get(element, 'drawer')\n }\n\n public static hideAll = () => {\n const oldInstances = DataUtil.getAllInstancesByKey('drawer')\n oldInstances.forEach((dr) => {\n dr.hide()\n })\n }\n\n public static updateAll = () => {\n const oldInstances = DataUtil.getAllInstancesByKey('drawer')\n oldInstances.forEach((dr) => {\n dr.update()\n })\n }\n\n // Create Instances\n public static createInstances(selector: string): void {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((element) => {\n const item = element as HTMLElement\n let drawer = DrawerComponent.getInstance(item)\n if (!drawer) {\n drawer = new DrawerComponent(item, defaultDrawerOptions)\n }\n drawer.hide()\n })\n }\n\n // Dismiss instances\n public static handleDismiss = () => {\n // External drawer toggle handler\n DOMEventHandlerUtil.on(document.body, '[data-kt-drawer-dismiss=\"true\"]', 'click', () => {\n /* @ts-ignore */\n const element = this.closest('[data-kt-drawer=\"true\"]')\n if (element) {\n const drawer = DrawerComponent.getInstance(element)\n if (drawer && drawer.isShown()) {\n drawer.hide()\n }\n }\n })\n }\n\n // Global Initialization\n public static initGlobalHandlers(): void {\n // Window Resize Handling\n window.addEventListener('resize', function () {\n let timer: number | undefined\n throttle(\n timer,\n () => {\n // Locate and update Drawer instances on window resize\n const elements = document.body.querySelectorAll('[data-kt-drawer=\"true\"]')\n elements.forEach((el) => {\n const item = el as HTMLElement\n const instance = DrawerComponent.getInstance(item)\n if (instance) {\n instance.update()\n }\n })\n },\n 200\n )\n })\n }\n\n public static bootstrap = () => {\n DrawerComponent.createInstances('[data-kt-drawer=\"true\"]')\n DrawerComponent.initGlobalHandlers()\n DrawerComponent.handleDismiss()\n }\n\n public static reinitialization = () => {\n DrawerComponent.createInstances('[data-kt-drawer=\"true\"]')\n DrawerComponent.hideAll()\n DrawerComponent.updateAll()\n DrawerComponent.handleDismiss()\n }\n}\n\nexport {DrawerComponent, defaultDrawerOptions}\n","import {\n DataUtil,\n ElementStyleUtil,\n EventHandlerUtil,\n getUniqueIdWithPrefix,\n getAttributeValueByBreakpoint,\n} from '../_utils/index'\n\nexport interface FeedbackOptions {\n width?: number\n placement?: string\n content?: string\n type?: string\n}\n\nconst defaultFeedbackOptions: FeedbackOptions = {\n width: 100,\n placement: 'top-center',\n content: '',\n type: 'popup',\n}\n\nclass FeedbackComponent {\n element: HTMLElement\n options: FeedbackOptions\n instanceUid: string\n shown: boolean\n\n constructor(_element: HTMLElement, options: FeedbackOptions) {\n this.element = _element\n this.options = Object.assign(defaultFeedbackOptions, options)\n this.instanceUid = getUniqueIdWithPrefix('feedback')\n this.shown = false\n\n // Event handlers\n this._handlers() // will add in the show popup\n DataUtil.set(this.element, 'feedback', this)\n }\n\n private _handlers = () => {\n this.element.addEventListener('click', (e: Event) => {\n e.preventDefault()\n this._go()\n })\n }\n\n private _go = () => {}\n\n private showPopup = () => {\n this.element = document.createElement('DIV')\n\n this.element.classList.add('feedback feedback-popup')\n this.element.innerHTML = this.options.content || ''\n\n if (this.options.placement === 'top-center') {\n this.setPopupTopCenterPosition()\n }\n\n document.body.appendChild(this.element)\n this.element.classList.add('feedback-shown')\n this.shown = true\n }\n\n private setPopupTopCenterPosition = () => {\n const width = getAttributeValueByBreakpoint(this.options.width?.toString() || '0')\n const height = ElementStyleUtil.get(this.element, 'height')\n this.element.classList.add('feedback-top-center')\n ElementStyleUtil.set(this.element, 'width', width)\n ElementStyleUtil.set(this.element, 'left', '50%')\n ElementStyleUtil.set(this.element, 'top', '-' + height)\n }\n\n private hidePopup = () => {\n this.element.remove()\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n public show = () => {\n if (EventHandlerUtil.trigger(this.element, 'kt.feedback.show') === false) {\n return\n }\n\n if (this.options.type === 'popup') {\n this.showPopup()\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.feedback.shown')\n\n return this\n }\n\n public hide = () => {\n if (EventHandlerUtil.trigger(this.element, 'kt.feedback.hide') === false) {\n return\n }\n\n if (this.options.type === 'popup') {\n this.hidePopup()\n }\n\n this.shown = false\n EventHandlerUtil.trigger(this.element, 'kt.feedback.hidden')\n return this\n }\n\n public isShown = () => {\n return this.isShown\n }\n\n public getElement = () => {\n return this.element\n }\n\n // Event API\n public on = (name: string, handler: Function) => {\n return EventHandlerUtil.on(this.element, name, handler)\n }\n\n public one = (name: string, handler: Function) => {\n return EventHandlerUtil.one(this.element, name, handler)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n public trigger = (name: string, event: Event) => {\n return EventHandlerUtil.trigger(this.element, name, event)\n }\n\n // Create Instances\n public static createInstances(selector: string) {\n throw new Error('not implemented')\n }\n\n // Static methods\n public static hasInstace(element: HTMLElement) {\n throw new Error('not implemented')\n }\n\n public static getInstance(element: HTMLElement) {\n throw new Error('not implemented')\n }\n\n public static bootstrap(attr: string = '[data-Feedback]') {\n throw new Error('not implemented')\n }\n}\n\nexport {FeedbackComponent, defaultFeedbackOptions}\n","import {EventHandlerUtil, DataUtil, getUniqueIdWithPrefix, getCSS} from '../_utils/index'\n\nexport interface IImageInputOptions {}\n\nexport interface IImageInputQueries {\n componentName: string\n instanseQuery: string\n inputQuery: string\n wrapperQuery: string\n cancelQuery: string\n removeQuery: string\n hiddenQuery: string\n}\n\nconst defaultImageInputOptions = {}\n\nconst defaultImageInputQueires: IImageInputQueries = {\n componentName: 'image-input',\n instanseQuery: '[data-kt-image-input]',\n inputQuery: 'input[type=\"file\"]',\n wrapperQuery: '.image-input-wrapper',\n cancelQuery: '[data-kt-image-input-action=\"cancel\"]',\n removeQuery: '[data-kt-image-input-action=\"remove\"]',\n hiddenQuery: 'input[type=\"hidden\"]',\n}\n\nclass ImageInputComponent {\n element: HTMLElement\n inputElement: HTMLInputElement | null\n wrapperElement: HTMLElement | null\n cancelElement: HTMLElement | null\n removeElement: HTMLElement | null\n hiddenElement: HTMLInputElement | null\n src: string = ''\n options: IImageInputOptions\n queries: IImageInputQueries\n uid: string\n value: string = ''\n\n constructor(_element: HTMLElement, _options: IImageInputOptions, _queries: IImageInputQueries) {\n // Variables\n this.options = Object.assign(defaultImageInputOptions, _options)\n this.queries = _queries\n this.uid = getUniqueIdWithPrefix(this.queries.componentName)\n\n // Elements\n this.element = _element\n this.inputElement = this.element.querySelector(this.queries.inputQuery)\n this.wrapperElement = this.element.querySelector(this.queries.wrapperQuery)\n this.cancelElement = this.element.querySelector(this.queries.cancelQuery)\n this.removeElement = this.element.querySelector(this.queries.removeQuery)\n this.hiddenElement = this.element.querySelector(this.queries.hiddenQuery)\n if (this.wrapperElement) {\n this.src = getCSS(this.wrapperElement, 'backgroundImage')\n }\n\n // Event Handlers\n this.handlers()\n\n DataUtil.set(this.element, this.queries.componentName, this)\n }\n\n private handlers(): void {\n this.element.addEventListener('change', this._change)\n if (this.cancelElement) {\n this.cancelElement.addEventListener('click', this._cancel)\n }\n\n if (this.removeElement) {\n this.removeElement.addEventListener('click', this._cancel)\n }\n }\n\n // Event Handlers\n private _change = (e: Event) => {\n e.preventDefault()\n\n if (this.inputElement !== null && this.inputElement.files && this.inputElement.files[0]) {\n // Fire change event\n if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.change', e) === false) {\n return\n }\n\n const reader = new FileReader()\n\n reader.onload = (e: ProgressEvent) => {\n if (this.wrapperElement && e.target) {\n this.wrapperElement.style.setProperty('background-image', `url('${e.target.result}')`)\n }\n }\n\n reader.readAsDataURL(this.inputElement.files[0])\n this.element.classList.add('image-input-changed')\n this.element.classList.remove('image-input-empty')\n\n // Fire removed event\n EventHandlerUtil.trigger(this.element, 'kt.imageinput.changed', e)\n }\n }\n\n private _cancel = (e: Event) => {\n e.preventDefault()\n\n // Fire cancel event\n if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.cancel', e) === false) {\n return\n }\n\n this.element.classList.remove('image-input-changed')\n this.element.classList.remove('image-input-empty')\n this.element.style.setProperty('background-image', this.src)\n if (this.inputElement) {\n this.inputElement.value = ''\n }\n\n if (this.hiddenElement !== null) {\n this.hiddenElement.value = '0'\n }\n\n // Fire canceled event\n EventHandlerUtil.trigger(this.element, 'kt.imageinput.canceled', e)\n }\n\n private _remove = (e: Event) => {\n e.preventDefault()\n\n // Fire remove event\n if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.remove', e) === false) {\n return\n }\n\n this.element.classList.remove('image-input-changed')\n this.element.classList.add('image-input-empty')\n if (this.wrapperElement) {\n this.wrapperElement.style.setProperty('background-image', 'none')\n }\n\n if (this.inputElement) {\n this.inputElement.value = ''\n }\n\n if (this.hiddenElement !== null) {\n this.hiddenElement.value = '1'\n }\n\n // Fire removed event\n EventHandlerUtil.trigger(this.element, 'kt.imageinput.removed', e)\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n public getInputElement(): HTMLInputElement | null {\n return this.inputElement\n }\n\n public getElement(): HTMLElement {\n return this.element\n }\n\n // Event API\n public on = (name: string, handler: Function) => {\n return EventHandlerUtil.on(this.element, name, handler)\n }\n\n public one = (name: string, handler: Function) => {\n return EventHandlerUtil.one(this.element, name, handler)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n public trigger = (name: string, event: Event) => {\n return EventHandlerUtil.trigger(this.element, name, event)\n }\n\n // Static methods\n public static getInstance = (\n el: HTMLElement,\n componentName: string = defaultImageInputQueires.componentName\n ) => {\n const ImageInput = DataUtil.get(el, componentName)\n if (ImageInput) {\n return ImageInput\n }\n\n return null\n }\n\n public static createInstances = (\n selector: string = defaultImageInputQueires.instanseQuery,\n options: IImageInputOptions = defaultImageInputOptions,\n queries: IImageInputQueries = defaultImageInputQueires\n ) => {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((el) => {\n const item = el as HTMLElement\n let ImageInput = ImageInputComponent.getInstance(item)\n if (!ImageInput) {\n ImageInput = new ImageInputComponent(item, options, queries)\n }\n })\n }\n\n public static createInsance = (\n selector: string = defaultImageInputQueires.instanseQuery,\n options: IImageInputOptions = defaultImageInputOptions,\n queries: IImageInputQueries = defaultImageInputQueires\n ): ImageInputComponent | undefined => {\n const element = document.body.querySelector(selector)\n if (!element) {\n return\n }\n const item = element as HTMLElement\n let ImageInput = ImageInputComponent.getInstance(item)\n if (!ImageInput) {\n ImageInput = new ImageInputComponent(item, options, queries)\n }\n return ImageInput\n }\n\n public static bootstrap = (selector: string = defaultImageInputQueires.instanseQuery) => {\n ImageInputComponent.createInstances(selector)\n }\n\n public static reinitialization = (selector: string = defaultImageInputQueires.instanseQuery) => {\n ImageInputComponent.createInstances(selector)\n }\n}\nexport {ImageInputComponent, defaultImageInputOptions, defaultImageInputQueires}\n","/* eslint-disable array-callback-return */\n/* eslint-disable no-useless-escape */\nimport {DataUtil} from '../_utils/index'\n\nexport interface IPasswordMeterOptions {\n minLength: number\n checkUppercase: boolean\n checkLowercase: boolean\n checkDigit: boolean\n checkChar: boolean\n scoreHighlightClass: string\n}\n\nexport interface IPasswordMeterQueries {\n componentName: string\n instanseQuery: string\n inputQuery: string\n visibilityQuery: string\n highlightQuery: string\n}\n\nconst defaultPasswordMeterOptions = {\n minLength: 8,\n checkUppercase: true,\n checkLowercase: true,\n checkDigit: true,\n checkChar: true,\n scoreHighlightClass: 'active',\n}\n\nconst defaultPasswordMeterQueires: IPasswordMeterQueries = {\n componentName: 'password-meter',\n instanseQuery: '[data-kt-password-meter]',\n inputQuery: 'input[type]',\n visibilityQuery: '[data-kt-password-meter-control=\"visibility\"]',\n highlightQuery: '[data-kt-password-meter-control=\"highlight\"]',\n}\n\nclass PasswordMeterComponent {\n element: HTMLElement\n inputElement: HTMLInputElement | null\n visibilityElement: HTMLElement | null\n highlightElement: HTMLElement | null\n options: IPasswordMeterOptions\n queries: IPasswordMeterQueries\n score: number\n checkSteps: number\n\n constructor(\n _element: HTMLElement,\n _options: IPasswordMeterOptions,\n _queries: IPasswordMeterQueries\n ) {\n this.element = _element\n this.options = Object.assign(defaultPasswordMeterOptions, _options)\n this.queries = _queries\n this.score = 0\n this.checkSteps = 5\n\n // Elements\n this.inputElement = this.element.querySelector(this.queries.inputQuery)\n this.visibilityElement = this.element.querySelector(this.queries.visibilityQuery)\n this.highlightElement = this.element.querySelector(this.queries.highlightQuery)\n\n // Event Handlers\n this.handlers()\n\n DataUtil.set(this.element, this.queries.componentName, this)\n }\n\n private handlers(): void {\n if (this.inputElement) {\n this.inputElement.addEventListener('input', () => {\n this.check()\n })\n }\n\n if (this.visibilityElement) {\n this.visibilityElement.addEventListener('click', () => {\n this.visitbility()\n })\n }\n }\n\n private visitbility() {\n if (this.visibilityElement && this.inputElement) {\n const visibleIcon = this.visibilityElement.querySelector(\n 'i:not(.d-none), .svg-icon:not(.d-none)'\n )\n\n const hiddenIcon = this.visibilityElement.querySelector('i.d-none, .svg-icon.d-none')\n\n const typeAttr = this.inputElement.getAttribute('type') || ''\n\n if (typeAttr === 'password') {\n this.inputElement.setAttribute('type', 'text')\n } else {\n this.inputElement.setAttribute('type', 'password')\n }\n\n visibleIcon?.classList.add('d-none')\n hiddenIcon?.classList.remove('d-none')\n\n this.inputElement.focus()\n }\n }\n\n private checkScore(): number {\n return 0\n }\n\n private checkLength(): boolean {\n if (this.inputElement) {\n return this.inputElement.value.length >= this.options.minLength // 20 score\n }\n\n return false\n }\n\n private checkLowerCase(): boolean {\n const val = this.inputElement ? this.inputElement.value : ''\n return /[a-z]/.test(val) // 20 score\n }\n\n private checkUppercase(): boolean {\n const val = this.inputElement ? this.inputElement.value : ''\n return /[A-Z]/.test(val) // 20 score\n }\n\n private checkDigit(): boolean {\n const val = this.inputElement ? this.inputElement.value : ''\n return /[0-9]/.test(val) // 20 score\n }\n\n private checkChar(): boolean {\n const val = this.inputElement ? this.inputElement.value : ''\n return /[~`!#$%\\^&*+=\\-\\[\\]\\\\';,/{}|\\\\\":<>\\?]/g.test(val) // 20 score\n }\n\n private getCheckScore(): number {\n let count = 1\n if (this.options.checkUppercase) {\n count++\n }\n\n if (this.options.checkLowercase) {\n count++\n }\n\n if (this.options.checkDigit) {\n count++\n }\n\n if (this.options.checkChar) {\n count++\n }\n\n this.checkSteps = count\n return 100 / this.checkSteps\n }\n\n private highlight() {\n const items = this.highlightElement\n ? [].slice.call(this.highlightElement.querySelectorAll('div'))\n : []\n const total = items.length\n let index = 0\n const checkScore = this.getCheckScore()\n const score = this.getScore()\n\n items.map((item: HTMLElement) => {\n index++\n if (checkScore * index * (this.checkSteps / total) <= score) {\n item.classList.add('active')\n } else {\n item.classList.remove('active')\n }\n })\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n public reset = () => {\n this.score = 0\n this.highlight()\n }\n\n public getScore() {\n return this.score\n }\n\n public check() {\n let score = 0\n const checkScore = this.checkScore()\n if (this.checkLength()) {\n score = score + checkScore\n }\n\n if (this.options.checkUppercase && this.checkLowerCase()) {\n score = score + checkScore\n }\n\n if (this.options.checkLowercase && this.checkUppercase()) {\n score = score + checkScore\n }\n\n if (this.options.checkDigit && this.checkDigit()) {\n score = score + checkScore\n }\n\n if (this.options.checkChar && this.checkChar()) {\n score = score + checkScore\n }\n\n this.score = score\n this.highlight()\n }\n\n // Static methods\n public static getInstance = (\n el: HTMLElement,\n componentName: string = defaultPasswordMeterQueires.componentName\n ) => {\n const passwordMeter = DataUtil.get(el, componentName)\n if (passwordMeter) {\n return passwordMeter\n }\n\n return null\n }\n\n public static createInstances = (\n selector: string = defaultPasswordMeterQueires.instanseQuery,\n options: IPasswordMeterOptions = defaultPasswordMeterOptions,\n queries: IPasswordMeterQueries = defaultPasswordMeterQueires\n ) => {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((el) => {\n const item = el as HTMLElement\n let passwordMeter = PasswordMeterComponent.getInstance(item)\n if (!passwordMeter) {\n passwordMeter = new PasswordMeterComponent(item, options, queries)\n }\n })\n }\n\n public static createInsance = (\n selector: string = defaultPasswordMeterQueires.instanseQuery,\n options: IPasswordMeterOptions = defaultPasswordMeterOptions,\n queries: IPasswordMeterQueries = defaultPasswordMeterQueires\n ): PasswordMeterComponent | undefined => {\n const element = document.body.querySelector(selector)\n if (!element) {\n return\n }\n const item = element as HTMLElement\n let passwordMeter = PasswordMeterComponent.getInstance(item)\n if (!passwordMeter) {\n passwordMeter = new PasswordMeterComponent(item, options, queries)\n }\n return passwordMeter\n }\n\n public static bootstrap = (selector: string = defaultPasswordMeterQueires.instanseQuery) => {\n PasswordMeterComponent.createInstances(selector)\n }\n\n public static reinitialization = (\n selector: string = defaultPasswordMeterQueires.instanseQuery\n ) => {\n PasswordMeterComponent.createInstances(selector)\n }\n}\nexport {PasswordMeterComponent, defaultPasswordMeterOptions, defaultPasswordMeterQueires}\n","import {\n DataUtil,\n getAttributeValueByBreakpoint,\n stringSnakeToCamel,\n getObjectPropertyValueByKey,\n EventHandlerUtil,\n throttle,\n} from '../_utils/index'\n\nexport interface IPlaceOptions {\n mode: string\n}\n\nexport interface IPlaceQueries {\n componentName: string\n instanseQuery: string\n attrQuery: string\n}\n\nconst defaultPlaceOptions: IPlaceOptions = {\n mode: 'append',\n}\n\nconst defaultPlaceQueires: IPlaceQueries = {\n componentName: 'place',\n instanseQuery: '[data-kt-place=\"true\"]',\n attrQuery: 'data-kt-place-',\n}\n\nclass PlaceComponent {\n element: HTMLElement\n options: IPlaceOptions\n queries: IPlaceQueries\n\n constructor(_element: HTMLElement, _options: IPlaceOptions, _queries: IPlaceQueries) {\n this.element = _element\n this.options = Object.assign(defaultPlaceOptions, _options)\n this.queries = _queries\n\n // Initial update\n this.update()\n\n DataUtil.set(this.element, this.queries.componentName, this)\n }\n\n private getOption(name: string) {\n const attr = this.element.getAttribute(`${this.queries.attrQuery}${name}`)\n if (attr) {\n let value = getAttributeValueByBreakpoint(attr)\n if (attr != null && String(value) === 'true') {\n return true\n } else if (value !== null && String(value) === 'false') {\n return false\n }\n return value\n } else {\n const optionName = stringSnakeToCamel(name)\n const option = getObjectPropertyValueByKey(this.options, optionName)\n if (option) {\n return getAttributeValueByBreakpoint(option)\n } else {\n return null\n }\n }\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n public update = () => {\n const parentSelector = this.getOption('parent')?.toString()\n const mode = this.getOption('mode')\n const parentElement = parentSelector ? document.querySelector(parentSelector) : null\n\n if (parentElement && this.element.parentNode !== parentElement) {\n if (mode === 'prepend') {\n parentElement.prepend(this.element)\n } else if (mode === 'append') {\n parentElement.append(this.element)\n }\n }\n }\n\n // Event API\n public on = (name: string, handler: Function) => {\n return EventHandlerUtil.on(this.element, name, handler)\n }\n\n public one = (name: string, handler: Function) => {\n return EventHandlerUtil.one(this.element, name, handler)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n public trigger = (name: string, event: Event) => {\n return EventHandlerUtil.trigger(this.element, name, event)\n }\n\n // Static methods\n public static getInstance = (\n el: HTMLElement,\n componentName: string = defaultPlaceQueires.componentName\n ): PlaceComponent | null => {\n const place = DataUtil.get(el, componentName)\n if (place) {\n return place as PlaceComponent\n }\n\n return null\n }\n\n public static createInstances = (\n selector: string = defaultPlaceQueires.instanseQuery,\n options: IPlaceOptions = defaultPlaceOptions,\n queries: IPlaceQueries = defaultPlaceQueires\n ) => {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((el) => {\n const item = el as HTMLElement\n let place = PlaceComponent.getInstance(item)\n if (!place) {\n place = new PlaceComponent(item, options, queries)\n }\n })\n }\n\n public static createInsance = (\n selector: string = defaultPlaceQueires.instanseQuery,\n options: IPlaceOptions = defaultPlaceOptions,\n queries: IPlaceQueries = defaultPlaceQueires\n ): PlaceComponent | undefined => {\n const element = document.body.querySelector(selector)\n if (!element) {\n return\n }\n const item = element as HTMLElement\n let place = PlaceComponent.getInstance(item)\n if (!place) {\n place = new PlaceComponent(item, options, queries)\n }\n return place\n }\n\n public static bootstrap = (selector: string = defaultPlaceQueires.instanseQuery) => {\n PlaceComponent.createInstances(selector)\n }\n\n public static reinitialization = (selector: string = defaultPlaceQueires.instanseQuery) => {\n PlaceComponent.createInstances(selector)\n }\n}\n\n// Window resize handler\nwindow.addEventListener('resize', function () {\n let timer\n\n throttle(\n timer,\n () => {\n // Locate and update Offcanvas instances on window resize\n const elements = document.querySelectorAll(defaultPlaceQueires.instanseQuery)\n elements.forEach((el) => {\n const place = PlaceComponent.getInstance(el as HTMLElement)\n if (place) {\n place.update()\n }\n })\n },\n 200\n )\n})\n\nexport {PlaceComponent, defaultPlaceOptions, defaultPlaceQueires}\n","import {\n DataUtil,\n getObjectPropertyValueByKey,\n stringSnakeToCamel,\n getAttributeValueByBreakpoint,\n getViewPort,\n isVisibleElement,\n throttle,\n getCSS,\n ElementStyleUtil,\n} from '../_utils/index';\nimport { CookieComponent } from './_CookieComponent';\n\nexport interface ScrollOptions {\n saveState?: boolean;\n}\n\nconst defaultScrollOptions: ScrollOptions = {\n saveState: true,\n};\n\nclass ScrollComponent {\n element: HTMLElement;\n options: ScrollOptions;\n id: string;\n\n constructor(_element: HTMLElement, options: ScrollOptions) {\n this.element = _element;\n this.options = Object.assign(defaultScrollOptions, options);\n this.id = this.element.getAttribute('id') || '';\n this.update();\n // this.element.setAttribute('data-kt-scrolltop', 'true')\n DataUtil.set(this.element, 'scroll', this);\n }\n\n private getOption = (name: string) => {\n if (this.element.hasAttribute('data-kt-scroll-' + name) === true) {\n const attr = this.element.getAttribute('data-kt-scroll-' + name) || '';\n let value: string | JSON | boolean = getAttributeValueByBreakpoint(attr);\n if (value !== null && String(value) === 'true') {\n value = true;\n } else if (value !== null && String(value) === 'false') {\n value = false;\n }\n\n return value;\n } else {\n const optionName = stringSnakeToCamel(name);\n const option = getObjectPropertyValueByKey(this.options, optionName);\n if (option) {\n return getAttributeValueByBreakpoint(option);\n } else {\n return null;\n }\n }\n };\n\n private getHeightType = () => {\n if (this.getOption('height')) {\n return 'height';\n }\n if (this.getOption('min-height')) {\n return 'min-height';\n }\n if (this.getOption('max-height')) {\n return 'max-height';\n }\n return '';\n };\n\n private getAutoHeight = () => {\n let height: number | string = getViewPort().height;\n const dependencies = this.getOption('dependencies');\n const wrappers = this.getOption('wrappers');\n const offset = this.getOption('offset');\n\n // Height dependencies\n if (dependencies !== null) {\n const elements = document.querySelectorAll(dependencies as string);\n if (elements && elements.length > 0) {\n for (let i = 0, len = elements.length; i < len; i++) {\n const element = elements[i] as HTMLElement;\n if (isVisibleElement(element) === false) {\n continue;\n }\n\n height = height - parseInt(getCSS(element, 'height'));\n height = height - parseInt(getCSS(element, 'margin-top'));\n height = height - parseInt(getCSS(element, 'margin-bottom'));\n\n const borderTop = getCSS(element, 'border-top');\n if (borderTop) {\n height = height - parseInt(borderTop);\n }\n\n const borderBottom = getCSS(element, 'border-bottom');\n if (borderBottom) {\n height = height - parseInt(borderBottom);\n }\n }\n }\n }\n\n // Wrappers\n if (wrappers !== null) {\n var elements = document.querySelectorAll(wrappers as string);\n if (elements && elements.length > 0) {\n for (let i = 0, len = elements.length; i < len; i++) {\n const element = elements[i] as HTMLElement;\n\n if (!isVisibleElement(element)) {\n continue;\n }\n\n height = height - parseInt(getCSS(element, 'margin-top'));\n height = height - parseInt(getCSS(element, 'margin-bottom'));\n height = height - parseInt(getCSS(element, 'padding-top'));\n height = height - parseInt(getCSS(element, 'padding-bottom'));\n\n const borderTop = getCSS(element, 'border-top');\n if (borderTop) {\n height = height - parseInt(borderTop);\n }\n\n const borderBottom = getCSS(element, 'border-bottom');\n if (borderBottom) {\n height = height - parseInt(borderBottom);\n }\n }\n }\n }\n\n // Custom offset\n if (offset !== null) {\n height = height - parseInt(offset as string);\n }\n\n height = height - parseInt(getCSS(this.element, 'margin-top'));\n height = height - parseInt(getCSS(this.element, 'margin-bottom'));\n\n const borderTop = getCSS(this.element, 'border-top');\n if (borderTop) {\n height = height - parseInt(borderTop);\n }\n\n const borderBottom = getCSS(this.element, 'border-bottom');\n if (borderBottom) {\n height = height - parseInt(borderBottom);\n }\n\n height = String(height) + 'px';\n\n return height;\n };\n\n private setupHeight = () => {\n let height = this.getHeight();\n let heightType = this.getHeightType() as string;\n\n // Set height\n if (height !== null && height.length > 0) {\n ElementStyleUtil.set(this.element, heightType, height);\n } else {\n ElementStyleUtil.set(this.element, heightType, '');\n }\n };\n\n private setupState = () => {\n if (this.getOption('save-state') === true && this.id) {\n const cookie = CookieComponent.get(this.id + 'st');\n if (cookie) {\n var pos = parseInt(cookie);\n\n if (pos > 0) {\n this.element.scrollTop = pos;\n }\n }\n }\n };\n\n private setupScrollHandler = () => {\n if (this.getOption('save-state') === true && this.id) {\n this.element.addEventListener('scroll', this.scrollHandler);\n } else {\n this.element.removeEventListener('scroll', this.scrollHandler);\n }\n };\n\n private scrollHandler = () => {\n const cookieId = this.id + 'st';\n CookieComponent.set(cookieId, this.element.scrollTop, {});\n };\n\n private destroyScrollHandler = () => {\n this.element.removeEventListener('scroll', this.scrollHandler);\n };\n\n private resetHeight = () => {\n const heghtType = this.getHeightType();\n if (heghtType) {\n ElementStyleUtil.set(this.element, heghtType, '');\n }\n };\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n public update = () => {\n // Activate/deactivate\n if (\n this.getOption('activate') === true ||\n !this.element.hasAttribute('data-kt-scroll-activate')\n ) {\n this.setupHeight();\n this.setupScrollHandler();\n this.setupState();\n } else {\n this.resetHeight();\n this.destroyScrollHandler();\n }\n };\n\n public getHeight = () => {\n const heightType = this.getHeightType();\n const height = this.getOption(heightType || '');\n if (height instanceof Function) {\n return height.call(height);\n } else if (\n height !== null &&\n typeof height === 'string' &&\n height.toLowerCase() === 'auto'\n ) {\n return this.getAutoHeight();\n } else {\n return height;\n }\n };\n\n public getElement = () => {\n return this.element;\n };\n\n // Static methods\n public static hasInstace(element: HTMLElement) {\n return DataUtil.has(element, 'scroll');\n }\n\n public static getInstance(element: HTMLElement) {\n if (element !== null && ScrollComponent.hasInstace(element)) {\n return DataUtil.get(element, 'scroll');\n }\n }\n\n // Create Instances\n public static createInstances(selector: string) {\n const elements = document.body.querySelectorAll(selector);\n elements.forEach((element: Element) => {\n const item = element as HTMLElement;\n let scroll = ScrollComponent.getInstance(item);\n if (!scroll) {\n scroll = new ScrollComponent(item, defaultScrollOptions);\n }\n });\n }\n\n public static destroyAll(attr: string = '[data-kt-scroll=\"true\"]') {}\n\n public static bootstrap(attr: string = '[data-kt-scroll=\"true\"]') {\n ScrollComponent.createInstances(attr);\n ScrollComponent.resize();\n }\n\n public static createInstance = (\n element: HTMLElement,\n options: ScrollOptions = defaultScrollOptions\n ): ScrollComponent | undefined => {\n let scroll = ScrollComponent.getInstance(element);\n if (!scroll) {\n scroll = new ScrollComponent(element, options);\n }\n return scroll;\n };\n\n public static reinitialization(attr: string = '[data-kt-scroll=\"true\"]') {\n ScrollComponent.createInstances(attr);\n }\n\n public static resize() {\n // Window Resize Handling\n window.addEventListener('resize', function () {\n let timer;\n throttle(\n timer,\n () => {\n // Locate and update Drawer instances on window resize\n const elements = document.body.querySelectorAll(\n '[data-kt-scroll=\"true\"]'\n );\n elements.forEach((element: Element) => {\n const instance = ScrollComponent.getInstance(\n element as HTMLElement\n );\n if (instance) {\n instance.update();\n }\n });\n },\n 200\n );\n });\n }\n}\n\nexport { ScrollComponent, defaultScrollOptions };\n","import {\n getScrollTop,\n getAttributeValueByBreakpoint,\n throttle,\n getObjectPropertyValueByKey,\n stringSnakeToCamel,\n getUniqueIdWithPrefix,\n DataUtil,\n ElementAnimateUtil,\n} from '../_utils/index'\n\nexport interface IScrollTopOptions {\n offset: number\n speed: number\n}\n\nconst defaultScrollTopOptions: IScrollTopOptions = {\n offset: 200,\n speed: 600,\n}\n\nclass ScrollTopComponent {\n element: HTMLElement\n options: IScrollTopOptions\n instanceUid: string\n\n constructor(_element: HTMLElement, options: IScrollTopOptions) {\n this.element = _element\n this.options = Object.assign(defaultScrollTopOptions, options)\n this.instanceUid = getUniqueIdWithPrefix('scrolltop')\n\n // Event Handlers\n this._handlers()\n\n // Bind Instance\n DataUtil.set(this.element, 'scrolltop', this)\n }\n\n private _handlers = () => {\n let timer: number\n window.addEventListener('scroll', () => {\n throttle(timer, () => {\n this._scroll()\n })\n })\n\n this.element.addEventListener('click', (e: Event) => {\n e.preventDefault()\n this._go()\n })\n }\n\n private _scroll = () => {\n const offset = parseInt(this._getOption('offset') as string)\n const pos = getScrollTop() // current vertical position\n if (pos > offset) {\n if (!document.body.hasAttribute('data-kt-scrolltop')) {\n document.body.setAttribute('data-kt-scrolltop', 'on')\n }\n } else {\n if (document.body.hasAttribute('data-kt-scrolltop')) {\n document.body.removeAttribute('data-kt-scrolltop')\n }\n }\n }\n\n private _go = () => {\n const speed = parseInt(this._getOption('speed') as string)\n ElementAnimateUtil.scrollTop(0, speed)\n }\n\n private _getOption = (name: string) => {\n const attr = this.element.getAttribute(`data-kt-scrolltop-${name}`)\n if (attr) {\n const value = getAttributeValueByBreakpoint(attr)\n return value !== null && String(value) === 'true'\n }\n\n const optionName = stringSnakeToCamel(name)\n const option = getObjectPropertyValueByKey(this.options, optionName)\n if (option) {\n return getAttributeValueByBreakpoint(option)\n }\n\n return null\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n\n // Plugin API\n public go = () => {\n return this._go()\n }\n\n public getElement = () => {\n return this.element\n }\n\n // Static methods\n public static getInstance = (el: HTMLElement) => {\n const scrollTop = DataUtil.get(el, 'scrolltop')\n if (scrollTop) {\n return scrollTop\n }\n\n return null\n }\n\n public static createInstances = (selector: string) => {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((el) => {\n const item = el as HTMLElement\n let scrollTop = ScrollTopComponent.getInstance(item)\n if (!scrollTop) {\n scrollTop = new ScrollTopComponent(item, defaultScrollTopOptions)\n }\n })\n }\n\n public static createInsance = (\n selector: string,\n options: IScrollTopOptions = defaultScrollTopOptions\n ): ScrollTopComponent | undefined => {\n const element = document.body.querySelector(selector)\n if (!element) {\n return\n }\n const item = element as HTMLElement\n let scrollTop = ScrollTopComponent.getInstance(item)\n if (!scrollTop) {\n scrollTop = new ScrollTopComponent(item, options)\n }\n return scrollTop\n }\n\n public static bootstrap = () => {\n ScrollTopComponent.createInstances('[data-kt-scrolltop=\"true\"]')\n }\n\n public static reinitialization = () => {\n ScrollTopComponent.createInstances('[data-kt-scrolltop=\"true\"]')\n }\n\n public static goTop = () => {\n ElementAnimateUtil.scrollTop(0, defaultScrollTopOptions.speed)\n }\n}\nexport {ScrollTopComponent, defaultScrollTopOptions}\n","import {\n getElementIndex,\n getUniqueIdWithPrefix,\n ElementAnimateUtil,\n EventHandlerUtil,\n DataUtil,\n DOMEventHandlerUtil,\n ElementStyleUtil,\n} from '../_utils/index'\n\nexport interface IStepperOptions {\n startIndex: number\n animation: boolean\n animationSpeed: string\n animationNextClass: string\n animationPreviousClass: string\n}\n\nconst defaultStepperOptions: IStepperOptions = {\n startIndex: 1,\n animation: false,\n animationSpeed: '0.3s',\n animationNextClass: 'animate__animated animate__slideInRight animate__fast',\n animationPreviousClass: 'animate__animated animate__slideInLeft animate__fast',\n}\n\nclass StepperComponent {\n element: HTMLElement\n options: IStepperOptions\n instanceUid: string\n steps: NodeListOf\n btnNext: HTMLElement | null\n btnPrev: HTMLElement | null\n btnSubmit: HTMLElement | null\n totatStepsNumber: number = 0\n passedStepIndex: number = 0\n currentStepIndex: number = 1\n\n constructor(_element: HTMLElement, options: IStepperOptions) {\n this.element = _element\n this.options = Object.assign(defaultStepperOptions, options)\n this.instanceUid = getUniqueIdWithPrefix('stepper')\n\n // Elements\n this.steps = this.element.querySelectorAll('[data-kt-stepper-element=\"nav\"]')\n this.btnNext = this.element.querySelector('[data-kt-stepper-action=\"next\"]')\n this.btnPrev = this.element.querySelector('[data-kt-stepper-action=\"previous\"]')\n this.btnSubmit = this.element.querySelector('[data-kt-stepper-action=\"submit\"]')\n\n // Variables\n this.totatStepsNumber = this.steps?.length | 0\n this.passedStepIndex = 0\n this.currentStepIndex = 1\n\n // Set Current Step\n if (this.options.startIndex > 1) {\n this._goTo(this.options.startIndex)\n }\n\n // Event Handlers\n this.initHandlers()\n\n // Bind Instance\n DataUtil.set(this.element, 'stepper', this)\n }\n\n private _goTo = (index: number) => {\n EventHandlerUtil.trigger(this.element, 'kt.stepper.change')\n // Skip if this step is already shown\n if (index === this.currentStepIndex || index > this.totatStepsNumber || index < 0) {\n return\n }\n\n // Validate step number\n index = parseInt(index.toString())\n // Set current step\n this.passedStepIndex = this.currentStepIndex\n this.currentStepIndex = index\n\n // Refresh elements\n this.refreshUI()\n\n EventHandlerUtil.trigger(this.element, 'kt.stepper.changed')\n }\n\n private initHandlers = () => {\n this.btnNext?.addEventListener('click', (e: Event) => {\n e.preventDefault()\n\n EventHandlerUtil.trigger(this.element, 'kt.stepper.next', e)\n })\n\n this.btnPrev?.addEventListener('click', (e: Event) => {\n e.preventDefault()\n\n EventHandlerUtil.trigger(this.element, 'kt.stepper.previous', e)\n })\n\n DOMEventHandlerUtil.on(this.element, '[data-kt-stepper-action=\"step\"]', 'click', (e: Event) => {\n e.preventDefault()\n\n if (this.steps && this.steps.length > 0) {\n for (let i = 0; i < this.steps.length; i++) {\n if ((this.steps[i] as HTMLElement) === this.element) {\n let index = i + 1\n\n const stepDirection = this._getStepDirection(index)\n EventHandlerUtil.trigger(this.element, `stepper.${stepDirection}`, e)\n return\n }\n }\n }\n })\n }\n\n private _getStepDirection = (index: number) => {\n return index > this.currentStepIndex ? 'next' : 'previous'\n }\n\n private getStepContent = (index: number) => {\n const content = this.element.querySelectorAll('[data-kt-stepper-element=\"content\"]')\n if (!content) {\n return false\n }\n\n if (content[index - 1]) {\n return content[index - 1]\n }\n\n return false\n }\n\n private getLastStepIndex = () => {\n return this.totatStepsNumber\n }\n\n private getTotalStepsNumber = () => {\n return this.totatStepsNumber\n }\n\n private refreshUI = () => {\n let state = ''\n\n if (this.isLastStep()) {\n state = 'last'\n } else if (this.isFirstStep()) {\n state = 'first'\n } else {\n state = 'between'\n }\n\n // Set state class\n this.element.classList.remove('last')\n this.element.classList.remove('first')\n this.element.classList.remove('between')\n\n this.element.classList.add(state)\n\n // Step Items\n const elements = this.element.querySelectorAll(\n '[data-kt-stepper-element=\"nav\"], [data-kt-stepper-element=\"content\"], [data-kt-stepper-element=\"info\"]'\n )\n\n if (!elements || elements.length <= 0) {\n return\n }\n\n for (var i = 0, len = elements.length; i < len; i++) {\n var element = elements[i] as HTMLElement\n var index = getElementIndex(element) + 1\n\n element.classList.remove('current')\n element.classList.remove('completed')\n element.classList.remove('pending')\n\n if (index === this.currentStepIndex) {\n element.classList.add('current')\n\n if (\n this.options.animation !== false &&\n element.getAttribute('data-kt-stepper-element') === 'content'\n ) {\n ElementStyleUtil.set(element, 'animationDuration', this.options.animationSpeed)\n\n const animation =\n this._getStepDirection(this.passedStepIndex) === 'previous'\n ? this.options.animationPreviousClass\n : this.options.animationNextClass\n ElementAnimateUtil.animateClass(element, animation)\n }\n } else {\n if (index < this.currentStepIndex) {\n element.classList.add('completed')\n } else {\n element.classList.add('pending')\n }\n }\n }\n }\n\n private isLastStep = () => {\n return this.currentStepIndex === this.totatStepsNumber\n }\n\n private isFirstStep = () => {\n return this.currentStepIndex === 1\n }\n\n private isBetweenStep = () => {\n return this.isLastStep() === false && this.isFirstStep() === false\n }\n\n // ///////////////////////\n // // ** Public API ** //\n // ///////////////////////\n\n // // Plugin API\n public goto = (index: number) => {\n return this._goTo(index)\n }\n\n public goNext = () => {\n return this.goto(this.getNextStepIndex())\n }\n\n public goPrev = () => {\n return this.goto(this.getPrevStepIndex())\n }\n\n public goFirst = () => {\n return this.goto(1)\n }\n\n public goLast = () => {\n return this.goto(this.getLastStepIndex())\n }\n\n public getCurrentStepIndex = () => {\n return this.currentStepIndex\n }\n\n public getNextStepIndex = () => {\n if (this.totatStepsNumber >= this.currentStepIndex + 1) {\n return this.currentStepIndex + 1\n } else {\n return this.totatStepsNumber\n }\n }\n\n public getPassedStepIndex = () => {\n return this.passedStepIndex\n }\n\n public getPrevStepIndex = () => {\n if (this.currentStepIndex - 1 > 1) {\n return this.currentStepIndex - 1\n } else {\n return 1\n }\n }\n\n public getElement = (index: number) => {\n return this.element\n }\n\n // Event API\n public on = (name: string, handler: Function) => {\n return EventHandlerUtil.on(this.element, name, handler)\n }\n\n public one = (name: string, handler: Function) => {\n return EventHandlerUtil.one(this.element, name, handler)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n public destroy = () => {\n console.log('destroy stepper')\n }\n\n public trigger = (name: string, event: Event) => {\n return EventHandlerUtil.trigger(this.element, name, event)\n }\n\n // Static methods\n public static hasInstace(element: HTMLElement): boolean {\n return DataUtil.has(element, 'stepper')\n }\n\n public static getInstance(element: HTMLElement): StepperComponent | null {\n if (element !== null && StepperComponent.hasInstace(element)) {\n return DataUtil.get(element, 'stepper')\n }\n return null\n }\n\n // Create Instances\n public static createInstances(selector: string): void {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((element) => {\n const item = element as HTMLElement\n let stepper = StepperComponent.getInstance(item)\n if (!stepper) {\n stepper = new StepperComponent(item, defaultStepperOptions)\n }\n })\n }\n\n public static createInsance = (\n element: HTMLElement,\n options: IStepperOptions = defaultStepperOptions\n ): StepperComponent | null => {\n if (!element) {\n return null\n }\n let stepper = StepperComponent.getInstance(element)\n if (!stepper) {\n stepper = new StepperComponent(element, options)\n }\n return stepper\n }\n\n public static bootstrap(attr: string = '[data-kt-stepper]') {\n StepperComponent.createInstances(attr)\n }\n}\n\nexport {StepperComponent, defaultStepperOptions}\n","import {\n getElementOffset,\n getScrollTop,\n getAttributeValueByBreakpoint,\n getUniqueIdWithPrefix,\n getObjectPropertyValueByKey,\n stringSnakeToCamel,\n getCSS,\n DataUtil,\n ElementAnimateUtil,\n ElementStyleUtil,\n EventHandlerUtil,\n} from '../_utils/index'\n\nexport interface StickyOptions {\n offset: number\n reverse: boolean\n animation: boolean\n animationSpeed: string\n animationClass: string\n}\n\nconst defaultStickyOptions: StickyOptions = {\n offset: 200,\n reverse: false,\n animation: true,\n animationSpeed: '0.3s',\n animationClass: 'animation-slide-in-down',\n}\n\nclass StickyComponent {\n element: HTMLElement\n options: StickyOptions\n instanceUid: string\n instanceName: string | null = ''\n attributeName: string\n eventTriggerState: boolean\n lastScrollTop: number\n\n constructor(_element: HTMLElement, options: StickyOptions) {\n this.element = _element\n this.options = Object.assign(defaultStickyOptions, options)\n this.instanceUid = getUniqueIdWithPrefix('sticky')\n this.instanceName = this.element.getAttribute('data-kt-sticky-name')\n this.attributeName = 'data-kt-sticky-' + this.instanceName\n this.eventTriggerState = true\n this.lastScrollTop = 0\n\n // Event Handlers\n window.addEventListener('scroll', this.scroll)\n\n // Initial Launch\n this.scroll()\n\n DataUtil.set(this.element, 'sticky', this)\n }\n\n private scroll = () => {\n let offset = this.getOption('offset')\n let reverse = this.getOption('reverse')\n\n // Exit if false\n if (offset === false) {\n return\n }\n\n let offsetNum = 0\n if (typeof offset === 'string') {\n offsetNum = parseInt(offset)\n }\n\n const st = getScrollTop()\n\n // Reverse scroll mode\n if (reverse === true) {\n // Release on reverse scroll mode\n if (st > offsetNum && this.lastScrollTop < st) {\n if (document.body.hasAttribute(this.attributeName) === false) {\n this.enable()\n document.body.setAttribute(this.attributeName, 'on')\n }\n\n if (this.eventTriggerState === true) {\n EventHandlerUtil.trigger(this.element, 'kt.sticky.on')\n EventHandlerUtil.trigger(this.element, 'kt.sticky.change')\n\n this.eventTriggerState = false\n }\n } else {\n // Back scroll mode\n if (document.body.hasAttribute(this.attributeName)) {\n this.disable()\n document.body.removeAttribute(this.attributeName)\n }\n\n if (this.eventTriggerState === false) {\n EventHandlerUtil.trigger(this.element, 'kt.sticky.off')\n EventHandlerUtil.trigger(this.element, 'kt.sticky.change')\n\n this.eventTriggerState = true\n }\n }\n\n this.lastScrollTop = st\n return\n }\n\n // Classic scroll mode\n if (st > offsetNum) {\n if (document.body.hasAttribute(this.attributeName) === false) {\n this.enable()\n document.body.setAttribute(this.attributeName, 'on')\n }\n\n if (this.eventTriggerState === true) {\n EventHandlerUtil.trigger(this.element, 'kt.sticky.on')\n EventHandlerUtil.trigger(this.element, 'kt.sticky.change')\n this.eventTriggerState = false\n }\n } else {\n // back scroll mode\n if (document.body.hasAttribute(this.attributeName) === true) {\n this.disable()\n document.body.removeAttribute(this.attributeName)\n }\n\n if (this.eventTriggerState === false) {\n EventHandlerUtil.trigger(this.element, 'kt.sticky.off')\n EventHandlerUtil.trigger(this.element, 'kt.sticky.change')\n this.eventTriggerState = true\n }\n }\n }\n\n private getOption = (name: string) => {\n const dataStickyAttr = 'data-kt-sticky-' + name\n if (this.element.hasAttribute(dataStickyAttr) === true) {\n const attrValueInStr = this.element.getAttribute(dataStickyAttr)\n const attrValue = getAttributeValueByBreakpoint(attrValueInStr || '')\n if (attrValue !== null && String(attrValue) === 'true') {\n return true\n } else if (attrValue !== null && String(attrValue) === 'false') {\n return false\n }\n\n return attrValue\n } else {\n const optionName = stringSnakeToCamel(name)\n const option = getObjectPropertyValueByKey(this.options, optionName)\n if (option) {\n return getAttributeValueByBreakpoint(option)\n }\n }\n }\n\n private disable = () => {\n ElementStyleUtil.remove(this.element, 'top')\n ElementStyleUtil.remove(this.element, 'width')\n ElementStyleUtil.remove(this.element, 'left')\n ElementStyleUtil.remove(this.element, 'right')\n ElementStyleUtil.remove(this.element, 'z-index')\n ElementStyleUtil.remove(this.element, 'position')\n }\n\n private enable = (update: boolean = false) => {\n const top = this.getOption('top')\n const left = this.getOption('left')\n // const right = this.getOption(\"right\");\n let width = this.getOption('width')\n const zindex = this.getOption('zindex')\n\n if (update !== true && this.getOption('animation') === true) {\n ElementStyleUtil.set(this.element, 'animationDuration', this.getOption('animationSpeed'))\n ElementAnimateUtil.animateClass(this.element, 'animation ' + this.getOption('animationClass'))\n }\n\n if (zindex !== null) {\n ElementStyleUtil.set(this.element, 'z-index', zindex)\n ElementStyleUtil.set(this.element, 'position', 'fixed')\n }\n\n if (top !== null) {\n ElementStyleUtil.set(this.element, 'top', top)\n }\n\n if (width !== null && width !== undefined) {\n const widthTarget = getObjectPropertyValueByKey(width, 'target')\n if (widthTarget) {\n const targetElement = document.querySelector(widthTarget)\n if (targetElement) {\n width = getCSS(targetElement, 'width')\n }\n }\n ElementStyleUtil.set(this.element, 'width', width)\n }\n\n if (left !== null) {\n if (String(left).toLowerCase() === 'auto') {\n var offsetLeft = getElementOffset(this.element).left\n\n if (offsetLeft > 0) {\n ElementStyleUtil.set(this.element, 'left', String(offsetLeft) + 'px')\n }\n }\n }\n }\n\n public update = () => {\n if (document.body.hasAttribute(this.attributeName) === true) {\n this.disable()\n document.body.removeAttribute(this.attributeName)\n this.enable(true)\n document.body.setAttribute(this.attributeName, 'on')\n }\n }\n\n // Event API\n public on = (name: string, callBack: Function) => {\n return EventHandlerUtil.on(this.element, name, callBack)\n }\n\n public one = (name: string, callback: Function) => {\n return EventHandlerUtil.one(this.element, name, callback)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n public trigger = (name: string) => {\n return EventHandlerUtil.trigger(this.element, name)\n }\n\n // Static methods\n public static hasInstace(element: HTMLElement) {\n return DataUtil.has(element, 'sticky')\n }\n\n public static getInstance(element: HTMLElement) {\n if (element !== null && StickyComponent.hasInstace(element)) {\n return DataUtil.get(element, 'sticky')\n }\n }\n\n // Create Instances\n public static createInstances(selector: string) {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((element) => {\n const item = element as HTMLElement\n let sticky = StickyComponent.getInstance(item)\n if (!sticky) {\n sticky = new StickyComponent(item, defaultStickyOptions)\n }\n })\n }\n\n public static createInsance = (\n selector: string,\n options: StickyOptions = defaultStickyOptions\n ): StickyComponent | undefined => {\n const element = document.body.querySelector(selector)\n if (!element) {\n return\n }\n const item = element as HTMLElement\n let sticky = StickyComponent.getInstance(item)\n if (!sticky) {\n sticky = new StickyComponent(item, options)\n }\n return sticky\n }\n\n public static bootstrap(attr: string = '[data-kt-sticky=\"true\"]') {\n StickyComponent.createInstances(attr)\n }\n\n public static reInitialization(attr: string = '[data-kt-sticky=\"true\"]') {\n StickyComponent.createInstances(attr)\n }\n}\n\nexport {StickyComponent, defaultStickyOptions}\n","import {DataUtil, getUniqueIdWithPrefix, EventHandlerUtil} from '../_utils/index'\n// Helpers\nimport {CookieComponent} from './_CookieComponent'\n\nexport interface ToggleOptions {\n saveState: boolean\n targetState?: string\n toggleState?: string\n targetToggleMode?: string\n}\n\nconst defaultToggleOptions: ToggleOptions = {\n saveState: false,\n}\n\nclass ToggleComponent {\n element: HTMLElement\n instanceUid: string\n options: ToggleOptions\n state: string = ''\n target: HTMLElement | null = null\n attribute: string = ''\n\n constructor(_element: HTMLElement, options: ToggleOptions) {\n this.options = Object.assign(defaultToggleOptions, options)\n this.instanceUid = getUniqueIdWithPrefix('toggle')\n this.element = _element\n\n const elementTargetAttr = this.element.getAttribute('data-kt-toggle-target')\n if (elementTargetAttr) {\n this.target = document.querySelector(elementTargetAttr)\n }\n const elementToggleAttr = this.element.getAttribute('data-kt-toggle-state')\n this.state = elementToggleAttr || ''\n this.attribute = 'data-kt-' + this.element.getAttribute('data-kt-toggle-name')\n\n // Event Handlers\n this._handlers()\n\n // Update Instance\n // Bind Instance\n DataUtil.set(this.element, 'toggle', this)\n }\n\n private _handlers = () => {\n this.element.addEventListener('click', (e: Event) => {\n e.preventDefault()\n this._toggle()\n })\n }\n\n // Event handlers\n private _toggle = () => {\n // Trigger \"after.toggle\" event\n EventHandlerUtil.trigger(this.element, 'kt.toggle.change')\n\n if (this._isEnabled()) {\n this._disable()\n } else {\n this._enable()\n }\n\n // Trigger \"before.toggle\" event\n EventHandlerUtil.trigger(this.element, 'kt.toggle.changed')\n return this\n }\n\n private _enable = () => {\n if (this._isEnabled()) {\n return\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.toggle.enable')\n this.target?.setAttribute(this.attribute, 'on')\n if (this.state.length > 0) {\n this.element.classList.add(this.state)\n }\n\n if (this.options.saveState) {\n CookieComponent.set(this.attribute, 'on', {})\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.toggle.enabled')\n return this\n }\n\n private _disable = () => {\n if (!this._isEnabled()) {\n return false\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.toggle.disable')\n this.target?.removeAttribute(this.attribute)\n\n if (this.state.length > 0) {\n this.element.classList.remove(this.state)\n }\n\n if (this.options.saveState) {\n CookieComponent.delete(this.attribute)\n }\n\n EventHandlerUtil.trigger(this.element, 'kt.toggle.disabled')\n return this\n }\n\n private _isEnabled = () => {\n if (!this.target) {\n return false\n }\n\n return String(this.target.getAttribute(this.attribute)).toLowerCase() === 'on'\n }\n\n ///////////////////////\n // ** Public API ** //\n ///////////////////////\n\n // Plugin API\n // Plugin API\n public toggle = () => {\n return this._toggle()\n }\n\n public enable = () => {\n return this._enable()\n }\n\n public disable = () => {\n return this._disable()\n }\n\n public isEnabled = () => {\n return this._isEnabled()\n }\n\n public goElement = () => {\n return this.element\n }\n\n // Event API\n public on = (name: string, handler: Function) => {\n return EventHandlerUtil.on(this.element, name, handler)\n }\n\n public one = (name: string, handler: Function) => {\n return EventHandlerUtil.one(this.element, name, handler)\n }\n\n public off = (name: string) => {\n return EventHandlerUtil.off(this.element, name)\n }\n\n public trigger = (name: string, event?: Event) => {\n return EventHandlerUtil.trigger(this.element, name, event)\n }\n\n // Static methods\n public static getInstance = (el: HTMLElement) => {\n const toggleElement = DataUtil.get(el, 'toggle')\n if (toggleElement) {\n return toggleElement\n }\n\n return null\n }\n\n public static createInstances = (selector: string) => {\n const elements = document.body.querySelectorAll(selector)\n elements.forEach((el) => {\n const item = el as HTMLElement\n let toggleElement = ToggleComponent.getInstance(item)\n if (!toggleElement) {\n toggleElement = new ToggleComponent(item, defaultToggleOptions)\n }\n })\n }\n\n public static createInsance = (\n selector: string,\n options: ToggleOptions = defaultToggleOptions\n ): ToggleComponent | undefined => {\n const element = document.body.querySelector(selector)\n if (!element) {\n return\n }\n const item = element as HTMLElement\n let toggle = ToggleComponent.getInstance(item)\n if (!toggle) {\n toggle = new ToggleComponent(item, options)\n }\n return toggle\n }\n\n public static reinitialization = () => {\n ToggleComponent.createInstances('[data-kt-toggle]')\n }\n\n public static bootstrap = () => {\n ToggleComponent.createInstances('[data-kt-toggle]')\n }\n}\n\nexport {ToggleComponent, defaultToggleOptions}\n","export * from './_CookieComponent'\nexport * from './_DrawerComponent'\nexport * from './_FeedbackComponent'\nexport * from './_ImageInputComponent'\nexport * from './_ScrollComponent'\nexport * from './_ScrollTopComponent'\nexport * from './_StepperComponent'\nexport * from './_StickyComponent'\nexport * from './_ToggleComponent'\n// export * from './_DialerComponent';\nexport * from './_PasswordMeterComponent'\nexport * from './_PlaceComponent'\nexport * from './MenuComponent'\nexport * from './SearchComponent'\n","import { BsDatepickerConfig, BsDaterangepickerConfig, BsLocaleService } from 'ngx-bootstrap/datepicker';\nimport { NgxBootstrapLocaleMappingService } from 'assets/ngx-bootstrap/ngx-bootstrap-locale-mapping.service';\nimport { defineLocale } from 'ngx-bootstrap/chronos';\nimport { ThemeHelper } from '@app/shared/layout/themes/ThemeHelper';\n\nexport class NgxBootstrapDatePickerConfigService {\n\n static getDaterangepickerConfig(): BsDaterangepickerConfig {\n return Object.assign(new BsDaterangepickerConfig(), {\n containerClass: 'theme-' + NgxBootstrapDatePickerConfigService.getTheme()\n });\n }\n\n static getDatepickerConfig(): BsDatepickerConfig {\n return Object.assign(new BsDatepickerConfig(), {\n containerClass: 'theme-' + NgxBootstrapDatePickerConfigService.getTheme()\n });\n }\n\n static getTheme(): string {\n return ThemeHelper.getTheme();\n }\n\n static getDatepickerLocale(): BsLocaleService {\n let localeService = new BsLocaleService();\n localeService.use(abp.localization.currentLanguage.name);\n return localeService;\n }\n\n static registerNgxBootstrapDatePickerLocales(): Promise {\n if (abp.localization.currentLanguage.name === 'en') {\n return Promise.resolve(true);\n }\n\n let supportedLocale = new NgxBootstrapLocaleMappingService().map(abp.localization.currentLanguage.name).toLowerCase();\n let moduleLocaleName = new NgxBootstrapLocaleMappingService().getModuleName(abp.localization.currentLanguage.name);\n\n return new Promise((resolve, reject) => {\n import(`/node_modules/ngx-bootstrap/chronos/esm2020/i18n/${supportedLocale}.mjs`)\n .then(module => {\n defineLocale(abp.localization.currentLanguage.name.toLowerCase(), module[`${moduleLocaleName}Locale`]);\n resolve(true);\n }, reject);\n });\n }\n}\n","export class NgxBootstrapLocaleMappingService {\n map(locale: string): string {\n const cultureMap = {\n 'zh-Hans': 'zh-cn',\n 'es-MX': 'es',\n 'vi': 'en-gb',\n 'ta': 'en-gb'\n // Add more here\n };\n\n if (locale === 'en' || locale.startsWith('en-')) {\n return 'en-gb';\n }\n\n if (cultureMap[locale]) {\n return cultureMap[locale];\n }\n\n return locale;\n }\n\n getModuleName(locale: string): string {\n const moduleNameMap = {\n 'zh-Hans': 'zhCn',\n 'es-MX': 'es',\n 'pt-BR': 'ptBr',\n 'vi': 'enGb',\n 'ta': 'enGb'\n // Add more here\n };\n\n if (locale === 'en' || locale.startsWith('en-')) {\n return 'enGb';\n }\n\n if (moduleNameMap[locale]) {\n return moduleNameMap[locale];\n }\n\n return locale;\n }\n}\n","// The file contents for the current environment will overwrite these during build.\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\n// The list of which env maps to which file can be found in `angular-cli.json`.\n\nexport const environment = {\n production: false,\n hmr: false,\n appConfig: 'appconfig.json',\n};\n","import { ApplicationRef, NgModuleRef } from '@angular/core';\nimport { createNewHosts } from '@angularclass/hmr';\n\nexport const hmrBootstrap = (module: any, bootstrap: () => Promise>) => {\n let ngModule: NgModuleRef;\n module.hot.accept();\n bootstrap().then((mod) => (ngModule = mod));\n module.hot.dispose(() => {\n const appRef: ApplicationRef = ngModule.injector.get(ApplicationRef);\n const elements = appRef.components.map((c) => c.location.nativeElement);\n const makeVisible = createNewHosts(elements);\n ngModule.destroy();\n makeVisible();\n });\n};\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\nimport { environment } from './environments/environment';\r\nimport { hmrBootstrap } from './hmr';\r\nimport './polyfills.ts';\r\nimport { RootModule } from './root.module';\r\nimport { LicenseManager } from 'ag-grid-enterprise';\r\n\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\nLicenseManager.setLicenseKey('Using_this_AG_Grid_Enterprise_key_( AG-045611 )_in_excess_of_the_licence_granted_is_not_permitted___Please_report_misuse_to_( legal@ag-grid.com )___For_help_with_changing_this_key_please_contact_( info@ag-grid.com )___( Concurrent Labs, LLC )_is_granted_a_( Multiple Applications )_Developer_License_for_( 2 )_Front-End_JavaScript_developers___All_Front-End_JavaScript_developers_need_to_be_licensed_in_addition_to_the_ones_working_with_AG_Grid_Enterprise___This_key_has_been_granted_a_Deployment_License_Add-on_for_( 1 )_Production_Environment___This_key_works_with_AG_Grid_Enterprise_versions_released_before_( 24 July 2024 )____[v2]_MTcyMTc3NTYwMDAwMA==56cdc322af0b4a3201c878133108978e');\r\n\r\nconst bootstrap = () => platformBrowserDynamic().bootstrapModule(RootModule);\r\n\r\n/* \"Hot Module Replacement\" is enabled as described on\r\n * https://medium.com/@beeman/tutorial-enable-hrm-in-angular-cli-apps-1b0d13b80130#.sa87zkloh\r\n */\r\n\r\nif (environment.hmr) {\r\n if (module['hot']) {\r\n hmrBootstrap(module, bootstrap); //HMR enabled bootstrap\r\n } else {\r\n console.error('HMR is not enabled for webpack-dev-server!');\r\n console.log('Are you using the --hmr flag for ng serve?');\r\n }\r\n} else {\r\n bootstrap(); //Regular bootstrap\r\n}\r\n","// This file includes polyfills needed by Angular 2 and is loaded before\n// the app. You can add your own extra polyfills to this file.\nimport 'core-js/es/array';\nimport 'core-js/es/date';\nimport 'core-js/es/function';\nimport 'core-js/es/map';\nimport 'core-js/es/math';\nimport 'core-js/es/number';\nimport 'core-js/es/object';\nimport 'core-js/es/parse-float';\nimport 'core-js/es/parse-int';\nimport 'core-js/es/reflect';\nimport 'core-js/es/regexp';\nimport 'core-js/es/set';\nimport 'core-js/es/string';\nimport 'core-js/es/symbol';\nimport 'core-js/es/reflect';\nimport { finalize } from 'rxjs/operators';\nimport 'zone.js';\n","import { NgModule } from '@angular/core';\nimport { NavigationEnd, Router, RouterModule, Routes } from '@angular/router';\nimport { AppUiCustomizationService } from '@shared/common/ui/app-ui-customization.service';\n\nconst routes: Routes = [\n { path: '', redirectTo: '/app/main/dashboard', pathMatch: 'full' },\n {\n path: 'account',\n loadChildren: () => import('account/account.module').then((m) => m.AccountModule), //Lazy load account module\n data: { preload: true },\n },\n { path: '**', redirectTo: '/app/main/dashboard' },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule],\n providers: [],\n})\nexport class RootRoutingModule {\n constructor(private router: Router, private _uiCustomizationService: AppUiCustomizationService) {\n router.events.subscribe((event: NavigationEnd) => {\n setTimeout(() => {\n this.toggleBodyCssClass(event.url);\n }, 0);\n });\n }\n\n toggleBodyCssClass(url: string): void {\n if (url) {\n if (url === '/') {\n if (abp.session.userId > 0) {\n this.setAppModuleBodyClassInternal();\n } else {\n this.setAccountModuleBodyClassInternal();\n }\n }\n\n if (url.indexOf('/account/') >= 0) {\n this.setAccountModuleBodyClassInternal();\n } else {\n this.setAppModuleBodyClassInternal();\n }\n }\n }\n\n setAppModuleBodyClassInternal(): void {\n let currentBodyClass = document.body.className;\n let classesToRemember = '';\n\n if (currentBodyClass.indexOf('brand-minimize') >= 0) {\n classesToRemember += ' brand-minimize ';\n }\n\n if (currentBodyClass.indexOf('aside-left-minimize') >= 0) {\n classesToRemember += ' aside-left-minimize';\n }\n\n if (currentBodyClass.indexOf('brand-hide') >= 0) {\n classesToRemember += ' brand-hide';\n }\n\n if (currentBodyClass.indexOf('aside-left-hide') >= 0) {\n classesToRemember += ' aside-left-hide';\n }\n\n if (currentBodyClass.indexOf('swal2-toast-shown') >= 0) {\n classesToRemember += ' swal2-toast-shown';\n }\n\n document.body.className = this._uiCustomizationService.getAppModuleBodyClass() + ' ' + classesToRemember;\n }\n\n setAccountModuleBodyClassInternal(): void {\n let currentBodyClass = document.body.className;\n let classesToRemember = '';\n\n if (currentBodyClass.indexOf('swal2-toast-shown') >= 0) {\n classesToRemember += ' swal2-toast-shown';\n }\n\n document.body.className = this._uiCustomizationService.getAccountModuleBodyClass() + ' ' + classesToRemember;\n }\n\n getSetting(key: string): string {\n return abp.setting.get(key);\n }\n}\n","import { Component } from '@angular/core';\nimport { NgxSpinnerTextService } from '@app/shared/ngx-spinner-text.service';\n\n@Component({\n selector: 'app-root',\n template: `\n \n \n

    {{ getSpinnerText() }}

    \n
    \n `,\n})\nexport class RootComponent {\n ngxSpinnerText: NgxSpinnerTextService;\n\n constructor(_ngxSpinnerText: NgxSpinnerTextService) {\n this.ngxSpinnerText = _ngxSpinnerText;\n }\n\n getSpinnerText(): string {\n return this.ngxSpinnerText.getText();\n }\n}\n","import { PlatformLocation, registerLocaleData } from '@angular/common';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { APP_INITIALIZER, DEFAULT_CURRENCY_CODE, Injector, LOCALE_ID, NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppAuthService } from '@app/shared/common/auth/app-auth.service';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { GetConcurrentCommonModule } from '@shared/common/common.module';\r\nimport { AppSessionService } from '@shared/common/session/app-session.service';\r\nimport { AppUiCustomizationService } from '@shared/common/ui/app-ui-customization.service';\r\nimport { UrlHelper } from '@shared/helpers/UrlHelper';\r\nimport {\r\n API_BASE_URL,\r\n UiCustomizationSettingsDto,\r\n ThemeSettingsDto,\r\n ThemeMenuSettingsDto,\r\n ThemeLayoutSettingsDto,\r\n ThemeHeaderSettingsDto,\r\n ThemeSubHeaderSettingsDto,\r\n ThemeFooterSettingsDto,\r\n ApplicationInfoDto,\r\n} from '@shared/service-proxies/service-proxies';\r\nimport { ServiceProxyModule } from '@shared/service-proxies/service-proxy.module';\r\nimport * as localForage from 'localforage';\r\nimport { AppPreBootstrap } from './AppPreBootstrap';\r\nimport { AppModule } from './app/app.module';\r\nimport { RootRoutingModule } from './root-routing.module';\r\nimport { RootComponent } from './root.component';\r\nimport { DomHelper } from '@shared/helpers/DomHelper';\r\nimport { CookieConsentService } from '@shared/common/session/cookie-consent.service';\r\nimport { NgxBootstrapDatePickerConfigService } from 'assets/ngx-bootstrap/ngx-bootstrap-datepicker-config.service';\r\nimport { LocaleMappingService } from '@shared/locale-mapping.service';\r\nimport { NgxSpinnerModule, NgxSpinnerService } from 'ngx-spinner';\r\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\r\n//import { LicenseManager } from '@ag-grid-enterprise/core';\r\n\r\nexport function appInitializerFactory(injector: Injector, platformLocation: PlatformLocation) {\r\n return () => {\r\n let spinnerService = injector.get(NgxSpinnerService);\r\n\r\n spinnerService.show();\r\n //LicenseManager.setLicenseKey('Using_this_AG_Grid_Enterprise_key_( AG-045611 )_in_excess_of_the_licence_granted_is_not_permitted___Please_report_misuse_to_( legal@ag-grid.com )___For_help_with_changing_this_key_please_contact_( info@ag-grid.com )___( Concurrent Labs, LLC )_is_granted_a_( Multiple Applications )_Developer_License_for_( 2 )_Front-End_JavaScript_developers___All_Front-End_JavaScript_developers_need_to_be_licensed_in_addition_to_the_ones_working_with_AG_Grid_Enterprise___This_key_has_been_granted_a_Deployment_License_Add-on_for_( 1 )_Production_Environment___This_key_works_with_AG_Grid_Enterprise_versions_released_before_( 24 July 2024 )____[v2]_MTcyMTc3NTYwMDAwMA==56cdc322af0b4a3201c878133108978e');\r\n\r\n return new Promise((resolve, reject) => {\r\n AppConsts.appBaseHref = getBaseHref(platformLocation);\r\n let appBaseUrl = getDocumentOrigin() + AppConsts.appBaseHref;\r\n\r\n initializeLocalForage();\r\n\r\n AppPreBootstrap.run(\r\n appBaseUrl,\r\n injector,\r\n () => {\r\n handleLogoutRequest(injector.get(AppAuthService));\r\n\r\n if (UrlHelper.isInstallUrl(location.href)) {\r\n doConfigurationForInstallPage(injector);\r\n spinnerService.hide();\r\n resolve(true);\r\n } else {\r\n let appSessionService: AppSessionService = injector.get(AppSessionService);\r\n appSessionService.init().then(\r\n (result) => {\r\n initializeAppCssClasses(injector, result);\r\n initializeTenantResources(injector);\r\n initializeCookieConsent(injector);\r\n registerLocales(resolve, reject, spinnerService);\r\n },\r\n (err) => {\r\n spinnerService.hide();\r\n reject(err);\r\n }\r\n );\r\n }\r\n },\r\n resolve,\r\n reject\r\n );\r\n });\r\n };\r\n}\r\n\r\nfunction initializeLocalForage() {\r\n localForage.config({\r\n driver: localForage.LOCALSTORAGE,\r\n name: 'GetConcurrent',\r\n version: 1.0,\r\n storeName: 'abpzerotemplate_local_storage',\r\n description: 'Cached data for GetConcurrent',\r\n });\r\n}\r\n\r\nfunction getDefaultThemeForInstallPage(): UiCustomizationSettingsDto {\r\n let theme = new UiCustomizationSettingsDto();\r\n theme.baseSettings = new ThemeSettingsDto();\r\n theme.baseSettings.theme = 'default';\r\n theme.baseSettings.menu = new ThemeMenuSettingsDto();\r\n theme.baseSettings.menu.asideSkin = 'light';\r\n\r\n theme.baseSettings.header = new ThemeHeaderSettingsDto();\r\n\r\n theme.baseSettings.subHeader = new ThemeSubHeaderSettingsDto();\r\n\r\n theme.baseSettings.layout = new ThemeLayoutSettingsDto();\r\n theme.baseSettings.layout.layoutType = 'fluid';\r\n theme.baseSettings.header = new ThemeHeaderSettingsDto();\r\n theme.baseSettings.footer = new ThemeFooterSettingsDto();\r\n return theme;\r\n}\r\n\r\nfunction setApplicationInfoForInstallPage(injector, theme: UiCustomizationSettingsDto) {\r\n let appSessionService: AppSessionService = injector.get(AppSessionService);\r\n let dateTimeService: DateTimeService = injector.get(DateTimeService);\r\n appSessionService.theme = theme;\r\n appSessionService.application = new ApplicationInfoDto();\r\n appSessionService.application.releaseDate = dateTimeService.getStartOfDay();\r\n}\r\n\r\nfunction doConfigurationForInstallPage(injector) {\r\n let theme = getDefaultThemeForInstallPage();\r\n setApplicationInfoForInstallPage(injector, theme);\r\n\r\n initializeAppCssClasses(injector, theme);\r\n}\r\n\r\nfunction initializeAppCssClasses(injector: Injector, theme: UiCustomizationSettingsDto) {\r\n let appUiCustomizationService = injector.get(AppUiCustomizationService);\r\n appUiCustomizationService.init(theme);\r\n\r\n // Css classes based on the layout\r\n if (abp.session.userId) {\r\n document.body.className = appUiCustomizationService.getAppModuleBodyClass();\r\n document.body.setAttribute('style', appUiCustomizationService.getAppModuleBodyStyle());\r\n } else {\r\n document.body.className = appUiCustomizationService.getAccountModuleBodyClass();\r\n document.body.setAttribute('style', appUiCustomizationService.getAccountModuleBodyStyle());\r\n }\r\n}\r\n\r\nfunction initializeTenantResources(injector: Injector) {\r\n let appSessionService: AppSessionService = injector.get(AppSessionService);\r\n\r\n if (appSessionService.tenant && appSessionService.tenant.customCssId) {\r\n document.head.appendChild(\r\n DomHelper.createElement('link', [\r\n {\r\n key: 'id',\r\n value: 'TenantCustomCss',\r\n },\r\n {\r\n key: 'rel',\r\n value: 'stylesheet',\r\n },\r\n {\r\n key: 'href',\r\n value:\r\n AppConsts.remoteServiceBaseUrl +\r\n '/TenantCustomization/GetCustomCss?tenantId=' +\r\n appSessionService.tenant.id,\r\n },\r\n ])\r\n );\r\n }\r\n\r\n let metaImage = DomHelper.getElementByAttributeValue('meta', 'property', 'og:image');\r\n if (metaImage) {\r\n //set og share image meta tag\r\n if (!appSessionService.tenant || !appSessionService.tenant.logoId) {\r\n let ui: AppUiCustomizationService = injector.get(AppUiCustomizationService);\r\n metaImage.setAttribute(\r\n 'content',\r\n window.location.origin +\r\n '/assets/common/images/app-logo-on-' +\r\n abp.setting.get(\r\n appSessionService.theme.baseSettings.theme + '.' + 'App.UiManagement.Left.AsideSkin'\r\n ) +\r\n '.svg'\r\n );\r\n } else {\r\n metaImage.setAttribute(\r\n 'content',\r\n AppConsts.remoteServiceBaseUrl + '/TenantCustomization/GetLogo?tenantId=' + appSessionService.tenant.id\r\n );\r\n }\r\n }\r\n}\r\n\r\nfunction initializeCookieConsent(injector: Injector) {\r\n let cookieConsentService: CookieConsentService = injector.get(CookieConsentService);\r\n cookieConsentService.init();\r\n}\r\n\r\nfunction getDocumentOrigin() {\r\n if (!document.location.origin) {\r\n return (\r\n document.location.protocol +\r\n '//' +\r\n document.location.hostname +\r\n (document.location.port ? ':' + document.location.port : '')\r\n );\r\n }\r\n\r\n return document.location.origin;\r\n}\r\n\r\nfunction registerLocales(\r\n resolve: (value?: boolean | Promise) => void,\r\n reject: any,\r\n spinnerService: NgxSpinnerService\r\n) {\r\n if (shouldLoadLocale()) {\r\n let angularLocale = convertAbpLocaleToAngularLocale(abp.localization.currentLanguage.name);\r\n import(`/node_modules/@angular/common/locales/${angularLocale}.mjs`).then((module) => {\r\n registerLocaleData(module.default);\r\n NgxBootstrapDatePickerConfigService.registerNgxBootstrapDatePickerLocales().then((_) => {\r\n resolve(true);\r\n spinnerService.hide();\r\n });\r\n }, reject);\r\n } else {\r\n NgxBootstrapDatePickerConfigService.registerNgxBootstrapDatePickerLocales().then((_) => {\r\n resolve(true);\r\n spinnerService.hide();\r\n });\r\n }\r\n}\r\n\r\nexport function shouldLoadLocale(): boolean {\r\n return abp.localization.currentLanguage.name && abp.localization.currentLanguage.name !== 'en-US';\r\n}\r\n\r\nexport function convertAbpLocaleToAngularLocale(locale: string): string {\r\n return new LocaleMappingService().map('angular', locale);\r\n}\r\n\r\nexport function getRemoteServiceBaseUrl(): string {\r\n return AppConsts.remoteServiceBaseUrl;\r\n}\r\n\r\nexport function getCurrentLanguage(): string {\r\n return convertAbpLocaleToAngularLocale(abp.localization.currentLanguage.name);\r\n}\r\n\r\nexport function getCurrencyCode(injector: Injector): string {\r\n let appSessionService: AppSessionService = injector.get(AppSessionService);\r\n return appSessionService.application.currency;\r\n}\r\n\r\nexport function getBaseHref(platformLocation: PlatformLocation): string {\r\n let baseUrl = platformLocation.getBaseHrefFromDOM();\r\n if (baseUrl) {\r\n return baseUrl;\r\n }\r\n\r\n return '/';\r\n}\r\n\r\nfunction handleLogoutRequest(authService: AppAuthService) {\r\n let currentUrl = UrlHelper.initialUrl;\r\n let returnUrl = UrlHelper.getReturnUrl();\r\n if (currentUrl.indexOf('account/logout') >= 0 && returnUrl) {\r\n authService.logout(true, returnUrl);\r\n }\r\n}\r\n\r\n@NgModule({\r\n imports: [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n AppModule,\r\n GetConcurrentCommonModule.forRoot(),\r\n ServiceProxyModule,\r\n HttpClientModule,\r\n RootRoutingModule,\r\n NgxSpinnerModule,\r\n ],\r\n declarations: [RootComponent],\r\n providers: [\r\n { provide: API_BASE_URL, useFactory: getRemoteServiceBaseUrl },\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: appInitializerFactory,\r\n deps: [Injector, PlatformLocation],\r\n multi: true,\r\n },\r\n {\r\n provide: LOCALE_ID,\r\n useFactory: getCurrentLanguage,\r\n },\r\n {\r\n provide: DEFAULT_CURRENCY_CODE,\r\n useFactory: getCurrencyCode,\r\n deps: [Injector],\r\n },\r\n ],\r\n bootstrap: [RootComponent],\r\n})\r\nexport class RootModule {}\r\n","export class AppConsts {\n static readonly tenancyNamePlaceHolderInUrl = '{TENANCY_NAME}';\n\n static remoteServiceBaseUrl: string;\n static remoteServiceBaseUrlFormat: string;\n static appBaseUrl: string;\n static appBaseHref: string; // returns angular's base-href parameter value if used during the publish\n static appBaseUrlFormat: string;\n static recaptchaSiteKey: string;\n static subscriptionExpireNootifyDayCount: number;\n\n static localeMappings: any = [];\n\n static readonly userManagement = {\n defaultAdminUserName: 'admin',\n };\n\n static readonly localization = {\n defaultLocalizationSourceName: 'GetConcurrent',\n };\n\n static readonly authorization = {\n encrptedAuthTokenName: 'enc_auth_token',\n };\n\n static readonly grid = {\n defaultPageSize: 10,\n };\n\n static readonly MinimumUpgradePaymentAmount = 1;\n\n /// \n /// Gets current version of the application.\n /// It's also shown in the web page.\n /// \n static readonly WebAppGuiVersion = '11.3.0';\n}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport function appModuleAnimation() {\n return slideFromBottom();\n}\n\nexport function accountModuleAnimation() {\n return slideFromUp();\n}\n\nexport function slideFromBottom() {\n return trigger('routerTransition', [\n state('void', style({ 'padding-top': '20px', opacity: '0' })),\n state('*', style({ 'padding-top': '0px', opacity: '1' })),\n transition(':enter', [animate('0.33s ease-out', style({ opacity: '1', 'padding-top': '0px' }))]),\n ]);\n}\n\nexport function slideFromUp() {\n return trigger('routerTransition', [\n state('void', style({ 'margin-top': '-10px', opacity: '0' })),\n state('*', style({ 'margin-top': '0px', opacity: '1' })),\n transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]),\n ]);\n}\n","export interface CacheEntry {\r\n key: TKey;\r\n value: TValue;\r\n entryTime: number;\r\n}\r\n\r\nexport class CacheMap {\r\n private readonly cacheMap = new Map>();\r\n\r\n constructor(private readonly maxCacheAge: number) {\r\n }\r\n\r\n get(key: TKey): TValue | undefined {\r\n const entry = this.cacheMap.get(key);\r\n if (!entry) {\r\n return undefined;\r\n }\r\n\r\n const isExpired = (Date.now() - entry.entryTime) > this.maxCacheAge;\r\n return isExpired ? undefined : entry.value;\r\n }\r\n\r\n put(key: TKey, value: TValue): void {\r\n this.cacheMap.set(key, { key, value, entryTime: Date.now() });\r\n this.deleteExpiredCache();\r\n }\r\n\r\n private deleteExpiredCache() {\r\n this.cacheMap.forEach(entry => {\r\n if ((Date.now() - entry.entryTime) > this.maxCacheAge) {\r\n this.cacheMap.delete(entry.key);\r\n }\r\n });\r\n }\r\n}\r\n","import {\n PermissionCheckerService,\n FeatureCheckerService,\n LocalizationService,\n MessageService,\n AbpMultiTenancyService,\n NotifyService,\n SettingService,\n} from 'abp-ng2-module';\nimport { Component, Injector, OnDestroy } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppUrlService } from '@shared/common/nav/app-url.service';\nimport { AppSessionService } from '@shared/common/session/app-session.service';\nimport { AppUiCustomizationService } from '@shared/common/ui/app-ui-customization.service';\nimport { PrimengTableHelper } from 'shared/helpers/PrimengTableHelper';\nimport { UiCustomizationSettingsDto } from '@shared/service-proxies/service-proxies';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { NgxSpinnerTextService } from '@app/shared/ngx-spinner-text.service';\n\ninterface AbpEventSubscription {\n eventName: string;\n callback: (...args: any[]) => void;\n}\n\n@Component({\n template: '',\n})\nexport abstract class AppComponentBase implements OnDestroy {\n localizationSourceName = AppConsts.localization.defaultLocalizationSourceName;\n\n localization: LocalizationService;\n permission: PermissionCheckerService;\n feature: FeatureCheckerService;\n notify: NotifyService;\n setting: SettingService;\n message: MessageService;\n multiTenancy: AbpMultiTenancyService;\n appSession: AppSessionService;\n primengTableHelper: PrimengTableHelper;\n ui: AppUiCustomizationService;\n appUrlService: AppUrlService;\n spinnerService: NgxSpinnerService;\n eventSubscriptions: AbpEventSubscription[] = [];\n\n private ngxSpinnerTextService: NgxSpinnerTextService;\n\n constructor(injector: Injector) {\n this.localization = injector.get(LocalizationService);\n this.permission = injector.get(PermissionCheckerService);\n this.feature = injector.get(FeatureCheckerService);\n this.notify = injector.get(NotifyService);\n this.setting = injector.get(SettingService);\n this.message = injector.get(MessageService);\n this.multiTenancy = injector.get(AbpMultiTenancyService);\n this.appSession = injector.get(AppSessionService);\n this.ui = injector.get(AppUiCustomizationService);\n this.appUrlService = injector.get(AppUrlService);\n this.primengTableHelper = new PrimengTableHelper();\n this.spinnerService = injector.get(NgxSpinnerService);\n this.ngxSpinnerTextService = injector.get(NgxSpinnerTextService);\n }\n\n get currentTheme(): UiCustomizationSettingsDto {\n return this.appSession.theme;\n }\n\n get containerClass(): string {\n if (this.appSession.theme.baseSettings.layout.layoutType === 'fluid') {\n return 'container-fluid';\n } else if (this.appSession.theme.baseSettings.layout.layoutType === 'fluid-xxl') {\n return 'container-xxl';\n }\n\n return 'container';\n }\n\n ngOnDestroy(): void {\n this.unSubscribeAllEvents();\n }\n\n flattenDeep(array) {\n return array.reduce(\n (acc, val) => (Array.isArray(val) ? acc.concat(this.flattenDeep(val)) : acc.concat(val)),\n []\n );\n }\n\n l(key: string, ...args: any[]): string {\n args.unshift(key);\n args.unshift(this.localizationSourceName);\n return this.ls.apply(this, args);\n }\n\n ls(sourcename: string, key: string, ...args: any[]): string {\n let localizedText = this.localization.localize(key, sourcename);\n\n if (!localizedText) {\n localizedText = key;\n }\n\n if (!args || !args.length) {\n return localizedText;\n }\n\n args.unshift(localizedText);\n return abp.utils.formatString.apply(this, this.flattenDeep(args));\n }\n\n isGranted(permissionName: string): boolean {\n return this.permission.isGranted(permissionName);\n }\n\n isGrantedAny(...permissions: string[]): boolean {\n if (!permissions) {\n return false;\n }\n\n for (const permission of permissions) {\n if (this.isGranted(permission)) {\n return true;\n }\n }\n\n return false;\n }\n\n s(key: string): string {\n return abp.setting.get(key);\n }\n\n appRootUrl(): string {\n return this.appUrlService.appRootUrl;\n }\n\n showMainSpinner(text?: string): void {\n this.ngxSpinnerTextService.setText(text);\n this.spinnerService.show();\n }\n\n hideMainSpinner(text?: string): void {\n this.spinnerService.hide();\n }\n\n protected subscribeToEvent(eventName: string, callback: (...args: any[]) => void): void {\n abp.event.on(eventName, callback);\n this.eventSubscriptions.push({\n eventName,\n callback,\n });\n }\n\n private unSubscribeAllEvents() {\n this.eventSubscriptions.forEach((s) => abp.event.off(s.eventName, s.callback));\n this.eventSubscriptions = [];\n }\n}\n","import { Directive } from '@angular/core';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\n\n@Directive({\n selector: '[appBsModal]',\n exportAs: 'bs-modal',\n})\nexport class AppBsModalDirective extends ModalDirective {\n showElement(): void {\n super.showElement();\n this.setZIndexes();\n }\n\n setZIndexes(): void {\n let newZIndex = this.setAndGetModalZIndex();\n this.setBackDropZIndex(newZIndex - 1);\n }\n\n setAndGetModalZIndex(): number {\n let modalBaseZIndex = 1050;\n let modalsLength = document.querySelectorAll('.modal.fade.show').length;\n\n let newZIndex = modalBaseZIndex + modalsLength * 2;\n\n (this as any)._element.nativeElement.style.zIndex = newZIndex.toString();\n return newZIndex;\n }\n\n setBackDropZIndex(zindex: number): void {\n let modalBackdrops = document.querySelectorAll('.modal-backdrop.fade.show');\n (modalBackdrops[modalBackdrops.length - 1] as HTMLElement).style.zIndex = zindex.toString();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { AppBsModalDirective } from './app-bs-modal.directive';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [AppBsModalDirective],\n imports: [CommonModule],\n exports: [AppBsModalDirective],\n})\nexport class AppBsModalModule {}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { AppUrlService } from './nav/app-url.service';\nimport { AppUiCustomizationService } from './ui/app-ui-customization.service';\nimport { AppSessionService } from './session/app-session.service';\nimport { CookieConsentService } from './session/cookie-consent.service';\n\n@NgModule({\n imports: [CommonModule],\n})\nexport class GetConcurrentCommonModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: CommonModule,\n providers: [AppUiCustomizationService, CookieConsentService, AppSessionService, AppUrlService],\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { AppSessionService } from '@shared/common/session/app-session.service';\n\n@Injectable()\nexport class AppUrlService {\n static tenancyNamePlaceHolder = '{TENANCY_NAME}';\n\n constructor(private readonly _appSessionService: AppSessionService) {}\n\n get appRootUrl(): string {\n if (this._appSessionService.tenant) {\n return this.getAppRootUrlOfTenant(this._appSessionService.tenant.tenancyName);\n } else {\n return this.getAppRootUrlOfTenant(null);\n }\n }\n\n /**\n * Returning url ends with '/'.\n */\n getAppRootUrlOfTenant(tenancyName?: string): string {\n let baseUrl = this.ensureEndsWith(AppConsts.appBaseUrlFormat, '/');\n\n //Add base href if it is not configured in appconfig.json\n if (baseUrl.indexOf(AppConsts.appBaseHref) < 0) {\n baseUrl = baseUrl + this.removeFromStart(AppConsts.appBaseHref, '/');\n }\n\n if (baseUrl.indexOf(AppUrlService.tenancyNamePlaceHolder) < 0) {\n return baseUrl;\n }\n\n if (baseUrl.indexOf(AppUrlService.tenancyNamePlaceHolder + '.') >= 0) {\n baseUrl = baseUrl.replace(AppUrlService.tenancyNamePlaceHolder + '.', AppUrlService.tenancyNamePlaceHolder);\n if (tenancyName) {\n tenancyName = tenancyName + '.';\n }\n }\n\n if (!tenancyName) {\n return baseUrl.replace(AppUrlService.tenancyNamePlaceHolder, '');\n }\n\n return baseUrl.replace(AppUrlService.tenancyNamePlaceHolder, tenancyName);\n }\n\n private ensureEndsWith(str: string, c: string) {\n if (str.charAt(str.length - 1) !== c) {\n str = str + c;\n }\n\n return str;\n }\n\n private removeFromEnd(str: string, c: string) {\n if (str.charAt(str.length - 1) === c) {\n str = str.substr(0, str.length - 1);\n }\n\n return str;\n }\n\n private removeFromStart(str: string, c: string) {\n if (str.charAt(0) === c) {\n str = str.substr(1, str.length - 1);\n }\n\n return str;\n }\n}\n","import { Injector, Pipe, PipeTransform } from '@angular/core';\nimport { FeatureCheckerService } from 'abp-ng2-module';\n\n@Pipe({\n name: 'checkFeature',\n})\nexport class FeatureCheckerPipe implements PipeTransform {\n featureCheckerService: FeatureCheckerService;\n\n constructor(injector: Injector) {\n this.featureCheckerService = injector.get(FeatureCheckerService);\n }\n\n transform(feature: string): boolean {\n return this.featureCheckerService.isEnabled(feature);\n }\n}\n","import { Injector, Pipe, PipeTransform } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { LocalizationService } from 'abp-ng2-module';\n\n@Pipe({\n name: 'localize',\n})\nexport class LocalizePipe implements PipeTransform {\n localizationSourceName = AppConsts.localization.defaultLocalizationSourceName;\n\n localization: LocalizationService;\n\n constructor(injector: Injector) {\n this.localization = injector.get(LocalizationService);\n }\n\n l(key: string, ...args: any[]): string {\n args.unshift(key);\n args.unshift(this.localizationSourceName);\n return this.ls.apply(this, args);\n }\n\n ls(sourcename: string, key: string, ...args: any[]): string {\n let localizedText = this.localization.localize(key, sourcename);\n\n if (!localizedText) {\n localizedText = key;\n }\n\n if (!args || !args.length) {\n return localizedText;\n }\n\n args.unshift(localizedText);\n return abp.utils.formatString.apply(this, this.flattenDeep(args));\n }\n\n transform(key: string, ...args: any[]): string {\n return this.l(key, args);\n }\n\n flattenDeep(array) {\n return array.reduce(\n (acc, val) => (Array.isArray(val) ? acc.concat(this.flattenDeep(val)) : acc.concat(val)),\n []\n );\n }\n}\n","import { Injector, Pipe, PipeTransform } from '@angular/core';\nimport { PermissionCheckerService } from 'abp-ng2-module';\n\n@Pipe({\n name: 'permissionAll',\n})\nexport class PermissionAllPipe implements PipeTransform {\n permission: PermissionCheckerService;\n\n constructor(injector: Injector) {\n this.permission = injector.get(PermissionCheckerService);\n }\n\n transform(arrPermissions: string[]): boolean {\n if (!arrPermissions) {\n return false;\n }\n\n for (const permission of arrPermissions) {\n if (!this.permission.isGranted(permission)) {\n return false;\n }\n }\n\n return true; //all permissions are granted\n }\n}\n","import { Injector, Pipe, PipeTransform } from '@angular/core';\nimport { PermissionCheckerService } from 'abp-ng2-module';\n\n@Pipe({\n name: 'permissionAny',\n})\nexport class PermissionAnyPipe implements PipeTransform {\n permission: PermissionCheckerService;\n\n constructor(injector: Injector) {\n this.permission = injector.get(PermissionCheckerService);\n }\n\n transform(arrPermissions: string[]): boolean {\n if (!arrPermissions) {\n return false;\n }\n\n for (const permission of arrPermissions) {\n if (this.permission.isGranted(permission)) {\n return true;\n }\n }\n\n return false;\n }\n}\n","import { Injector, Pipe, PipeTransform } from '@angular/core';\nimport { PermissionCheckerService } from 'abp-ng2-module';\n\n@Pipe({\n name: 'permission',\n})\nexport class PermissionPipe implements PipeTransform {\n permission: PermissionCheckerService;\n\n constructor(injector: Injector) {\n this.permission = injector.get(PermissionCheckerService);\n }\n\n transform(permission: string): boolean {\n return this.permission.isGranted(permission);\n }\n}\n","import { AbpMultiTenancyService } from 'abp-ng2-module';\nimport { Injectable } from '@angular/core';\nimport {\n ApplicationInfoDto,\n GetCurrentLoginInformationsOutput,\n SessionServiceProxy,\n TenantLoginInfoDto,\n UserLoginInfoDto,\n UiCustomizationSettingsDto,\n} from '@shared/service-proxies/service-proxies';\n\n@Injectable()\nexport class AppSessionService {\n private _user: UserLoginInfoDto;\n private _impersonatorUser: UserLoginInfoDto;\n private _tenant: TenantLoginInfoDto;\n private _impersonatorTenant: TenantLoginInfoDto;\n private _application: ApplicationInfoDto;\n private _theme: UiCustomizationSettingsDto;\n\n constructor(\n private _sessionService: SessionServiceProxy,\n private _abpMultiTenancyService: AbpMultiTenancyService\n ) {}\n\n get application(): ApplicationInfoDto {\n return this._application;\n }\n\n get user(): UserLoginInfoDto {\n return this._user;\n }\n\n get userId(): number {\n return this.user ? this.user.id : null;\n }\n\n get tenant(): TenantLoginInfoDto {\n return this._tenant;\n }\n\n get tenancyName(): string {\n return this._tenant ? this.tenant.tenancyName : '';\n }\n\n get tenantId(): number {\n return this.tenant ? this.tenant.id : null;\n }\n\n get impersonatorUser(): UserLoginInfoDto {\n return this._impersonatorUser;\n }\n get impersonatorUserId(): number {\n return this.impersonatorUser ? this.impersonatorUser.id : null;\n }\n get impersonatorTenant(): TenantLoginInfoDto {\n return this._impersonatorTenant;\n }\n get impersonatorTenancyName(): string {\n return this.impersonatorTenant ? this.impersonatorTenant.tenancyName : '';\n }\n get impersonatorTenantId(): number {\n return this.impersonatorTenant ? this.impersonatorTenant.id : null;\n }\n\n get theme(): UiCustomizationSettingsDto {\n return this._theme;\n }\n\n set theme(val: UiCustomizationSettingsDto) {\n this._theme = val;\n }\n\n set application(val: ApplicationInfoDto) {\n this._application = val;\n }\n\n init(): Promise {\n return new Promise((resolve, reject) => {\n this._sessionService\n .getCurrentLoginInformations()\n .toPromise()\n .then(\n (result: GetCurrentLoginInformationsOutput) => {\n this._application = result.application;\n this._user = result.user;\n this._tenant = result.tenant;\n this._theme = result.theme;\n this._impersonatorTenant = result.impersonatorTenant;\n this._impersonatorUser = result.impersonatorUser;\n resolve(result.theme);\n },\n (err) => {\n reject(err);\n }\n );\n });\n }\n\n getShownLoginName(): string {\n const userName = this._user.userName;\n if (!this._abpMultiTenancyService.isEnabled) {\n return userName;\n }\n\n return (this._tenant ? this._tenant.tenancyName : '.') + '\\\\' + userName;\n }\n\n changeTenantIfNeeded(tenantId?: number): boolean {\n if (this.isCurrentTenant(tenantId)) {\n return false;\n }\n\n abp.multiTenancy.setTenantIdCookie(tenantId);\n location.reload();\n return true;\n }\n\n private isCurrentTenant(tenantId?: number) {\n let isTenant = tenantId > 0;\n\n if (!isTenant && !this.tenant) {\n // this is host\n return true;\n }\n\n if (!tenantId && this.tenant) {\n return false;\n } else if (tenantId && (!this.tenant || this.tenant.id !== tenantId)) {\n return false;\n }\n\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppLocalizationService } from '@app/shared/common/localization/app-localization.service';\n\n@Injectable()\nexport class CookieConsentService {\n constructor(private _appLocalizationService: AppLocalizationService) {}\n\n public init() {\n if (abp.setting.getBoolean('App.UserManagement.IsCookieConsentEnabled')) {\n (window as any).cookieconsent.initialise({\n showLink: false,\n content: {\n message: this._appLocalizationService.l('CookieConsent_Message'),\n dismiss: this._appLocalizationService.l('CookieConsent_Dismiss'),\n },\n });\n }\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { ThemeAssetContributorFactory } from '@shared/helpers/ThemeAssetContributorFactory';\r\nimport { UiCustomizationSettingsDto } from '@shared/service-proxies/service-proxies';\r\nimport * as rtlDetect from 'rtl-detect';\r\n\r\n@Injectable()\r\nexport class AppUiCustomizationService {\r\n private _theme: UiCustomizationSettingsDto;\r\n\r\n init(theme: UiCustomizationSettingsDto): void {\r\n this._theme = theme;\r\n }\r\n\r\n getAppModuleBodyClass(): string {\r\n let topMenuUsed = this._theme.baseSettings.menu.position === 'top';\r\n const isRtl = rtlDetect.isRtlLang(abp.localization.currentLanguage.name);\r\n\r\n let cssClass = 'page-' + this._theme.baseSettings.layout.layoutType + ' toolbar-enabled aside-left-offcanvas header-tablet-and-mobile-fixed';\r\n\r\n if (this._theme.baseSettings.layout.darkMode) {\r\n cssClass += ' dark-mode';\r\n }\r\n\r\n if (this._theme.baseSettings.header.desktopFixedHeader) {\r\n cssClass += ' header-fixed';\r\n } else {\r\n cssClass += ' header-static';\r\n }\r\n\r\n if (this._theme.baseSettings.header.mobileFixedHeader) {\r\n cssClass += ' header-mobile-fixed';\r\n }\r\n\r\n if (this._theme.baseSettings.menu.fixedAside && !topMenuUsed) {\r\n cssClass += ' aside-fixed';\r\n }\r\n\r\n if (this._theme.baseSettings.menu.defaultMinimizedAside) {\r\n cssClass += ' aside-minimize';\r\n }\r\n\r\n if (this._theme.baseSettings.menu.hoverableAside) {\r\n cssClass += ' aside-minimize-hoverable';\r\n }\r\n\r\n if (isRtl) {\r\n cssClass += ' quick-panel-left demo-panel-left';\r\n } else {\r\n cssClass += ' quick-panel-right demo-panel-right';\r\n }\r\n\r\n if (this._theme.baseSettings.menu.fixedAside) {\r\n cssClass += ' aside-fixed';\r\n } else {\r\n cssClass += ' aside-static';\r\n }\r\n\r\n if (this._theme.baseSettings.menu.position === 'left') {\r\n cssClass += ' aside-left-enabled aside-enabled';\r\n cssClass += ' toolbar-' + this._theme.baseSettings.subHeader.subheaderStyle;\r\n } else {\r\n cssClass += ' toolbar-transparent';\r\n }\r\n\r\n if (topMenuUsed) {\r\n cssClass += ' header-minimize-' + this._theme.baseSettings.header.minimizeDesktopHeaderType;\r\n }\r\n\r\n if (\r\n (this._theme.baseSettings.header.desktopFixedHeader || this._theme.baseSettings.header.mobileFixedHeader) &&\r\n this._theme.baseSettings.subHeader.fixedSubHeader\r\n ) {\r\n cssClass += ' toolbar-fixed';\r\n }\r\n\r\n if (this._theme.baseSettings.footer.fixedFooter && this._theme.baseSettings.layout.layoutType !== 'fixed') {\r\n cssClass += ' footer-fixed';\r\n }\r\n\r\n let assetContributor = ThemeAssetContributorFactory.getCurrent();\r\n if (assetContributor) {\r\n cssClass += ' ' + assetContributor.getAdditionalBodyStyle();\r\n }\r\n\r\n return cssClass;\r\n }\r\n\r\n getAppModuleBodyStyle(): string {\r\n return '--kt-toolbar-height:55px; --kt-toolbar-height-tablet-and-mobile:55px;';\r\n }\r\n\r\n getAccountModuleBodyClass() {\r\n return 'account header-fixed header-mobile-fixed subheader-fixed subheader-enabled subheader-solid aside-enabled aside-fixed page-loading';\r\n }\r\n\r\n getAccountModuleBodyStyle(): string {\r\n return '';\r\n }\r\n\r\n getSelectEditionBodyClass() {\r\n return 'skin-';\r\n }\r\n\r\n getLeftAsideClass(): string {\r\n let cssClass = 'aside aside-' + this._theme.baseSettings.menu.asideSkin;\r\n\r\n if (this._theme.baseSettings.menu.hoverableAside){\r\n cssClass += ' aside-hoverable';\r\n }\r\n\r\n if (this._theme.baseSettings.menu.submenuToggle === 'true') {\r\n cssClass += ' aside-menu-dropdown';\r\n }\r\n\r\n return cssClass;\r\n }\r\n\r\n getLeftAsideSubMenuStyles(): string {\r\n if (this._theme.baseSettings.menu.submenuToggle !== 'true') {\r\n return '';\r\n }\r\n return 'position: fixed; top:inherit';\r\n }\r\n\r\n isSubmenuToggleDropdown(): boolean {\r\n return this._theme.baseSettings.menu.submenuToggle === 'true';\r\n }\r\n\r\n getTopBarMenuContainerClass(): string {\r\n let menuCssClass =\r\n 'header-bottom header-menu-skin-' +\r\n this._theme.baseSettings.menu.asideSkin +\r\n ' container container--full-height container-responsive';\r\n if (this._theme.baseSettings.layout.layoutType === 'boxed') {\r\n return menuCssClass + ' container-xxl';\r\n }\r\n\r\n return menuCssClass;\r\n }\r\n\r\n getIsMenuScrollable(): boolean {\r\n return this._theme.allowMenuScroll && this._theme.baseSettings.menu.fixedAside;\r\n }\r\n\r\n getSideBarMenuItemClass(item, isMenuActive) {\r\n let menuCssClass = 'menu-item';\r\n\r\n if (item.items.length) {\r\n menuCssClass += ' menu-item-submenu';\r\n }\r\n\r\n if (isMenuActive) {\r\n menuCssClass += ' menu-item-open menu-item-active';\r\n }\r\n\r\n return menuCssClass;\r\n }\r\n}\r\n","export class DomHelper {\n static waitUntilElementIsReady(selector: string, callback: any, checkPeriod?: number): void {\n let selectors = selector.split(',');\n let elementCount = selectors.length;\n\n if (!checkPeriod) {\n checkPeriod = 100;\n }\n\n let checkExist = setInterval(() => {\n let foundElementCount = 0;\n for (let i = 0; i < selectors.length; i++) {\n let selector = selectors[i].trim();\n if (selector[0] === '#') {\n let idSelector = selector.replace('#', '');\n foundElementCount = foundElementCount + (document.getElementById(idSelector) ? 1 : 0);\n } else if (selector[0] === '.') {\n let classSelector = selector.replace('.', '');\n foundElementCount = foundElementCount + (document.getElementsByClassName(classSelector) ? 1 : 0);\n }\n }\n\n if (foundElementCount >= elementCount) {\n clearInterval(checkExist);\n callback();\n }\n }, checkPeriod);\n }\n\n static createElement(tag: string, attributes: any[]): any {\n let el = document.createElement(tag);\n for (let i = 0; i < attributes.length; i++) {\n let attribute = attributes[i];\n el.setAttribute(attribute.key, attribute.value);\n }\n\n return el;\n }\n\n static getElementByAttributeValue(tag: string, attribute: string, value: string) {\n let els = document.getElementsByTagName(tag);\n if (!els) {\n return undefined;\n }\n\n for (let i = 0; i < els.length; i++) {\n let el = els[i];\n if (el.getAttribute(attribute) === value) {\n return el;\n }\n }\n\n return undefined;\n }\n}\n","import { AppConsts } from '@shared/AppConsts';\nimport * as rtlDetect from 'rtl-detect';\nimport { StyleLoaderService } from '@shared/utils/style-loader.service';\nimport { ThemeHelper } from '@app/shared/layout/themes/ThemeHelper';\nimport { ThemeAssetContributorFactory } from './ThemeAssetContributorFactory';\n\nexport class DynamicResourcesHelper {\n static loadResources(callback: () => void): void {\n Promise.all([DynamicResourcesHelper.loadStyles()]).then(() => {\n callback();\n });\n }\n\n static loadStyles(): Promise {\n let theme = ThemeHelper.getTheme();\n\n const isRtl = rtlDetect.isRtlLang(abp.localization.currentLanguage.name);\n\n if (isRtl) {\n document.documentElement.setAttribute('dir', 'rtl');\n }\n\n const cssPrefix = ThemeHelper.darkMode() ? '.dark' : '';\n const cssPostfix = isRtl ? '.rtl' : '';\n const styleLoaderService = new StyleLoaderService();\n\n let styleUrls = [\n AppConsts.appBaseUrl +\n '/assets/metronic/themes/' +\n theme +\n '/css/style' +\n cssPrefix +\n '.bundle' +\n cssPostfix.replace('-', '.') +\n '.min.css',\n AppConsts.appBaseUrl +\n '/assets/metronic/themes/' +\n theme +\n '/plugins/global/plugins' +\n cssPrefix +\n '.bundle' +\n cssPostfix.replace('-', '.') +\n '.min.css',\n AppConsts.appBaseUrl +\n '/assets/primeng/themes/mdc-' +\n (ThemeHelper.darkMode() ? 'dark' : 'light') +\n '-indigo/theme.css', // PrimeNG Dark mode styles\n AppConsts.appBaseUrl + '/assets/primeng/datatable/css/primeng.datatable' + cssPostfix + '.min.css', // PrimeNG RTL styles\n AppConsts.appBaseUrl + '/assets/common/styles/metronic-customize.min.css',\n AppConsts.appBaseUrl + '/assets/common/styles/themes/' + theme + '/metronic-customize.min.css',\n AppConsts.appBaseUrl + '/assets/common/styles/metronic-customize-angular.min.css',\n ].concat(DynamicResourcesHelper.getAdditionalThemeAssets());\n\n styleLoaderService.loadArray(styleUrls);\n\n if (isRtl) {\n styleLoaderService.load(AppConsts.appBaseUrl + '/assets/common/styles/abp-zero-template-rtl.min.css');\n }\n\n return Promise.resolve(true);\n }\n\n static getAdditionalThemeAssets(): string[] {\n let assetContributor = ThemeAssetContributorFactory.getCurrent();\n if (!assetContributor) {\n return [];\n }\n\n return assetContributor.getAssetUrls();\n }\n}\n","class ExtractionResult {\n public IsMatch: boolean;\n public Matches: any[];\n\n constructor(isMatch: boolean) {\n this.IsMatch = isMatch;\n this.Matches = [];\n }\n}\n\nenum FormatStringTokenType {\n ConstantText,\n DynamicValue,\n}\n\nclass FormatStringToken {\n public Text: string;\n\n public Type: FormatStringTokenType;\n\n constructor(text: string, type: FormatStringTokenType) {\n this.Text = text;\n this.Type = type;\n }\n}\n\nclass FormatStringTokenizer {\n Tokenize(format: string, includeBracketsForDynamicValues: boolean = false): FormatStringToken[] {\n const tokens: FormatStringToken[] = [];\n\n let currentText = '';\n let inDynamicValue = false;\n\n for (let i = 0; i < format.length; i++) {\n const c = format[i];\n switch (c) {\n case '{':\n if (inDynamicValue) {\n throw new Error(\n 'Incorrect syntax at char ' +\n i +\n '! format string can not contain nested dynamic value expression!'\n );\n }\n\n inDynamicValue = true;\n\n if (currentText.length > 0) {\n tokens.push(new FormatStringToken(currentText, FormatStringTokenType.ConstantText));\n currentText = '';\n }\n\n break;\n case '}':\n if (!inDynamicValue) {\n throw new Error(\n 'Incorrect syntax at char ' +\n i +\n '! These is no opening brackets for the closing bracket }.'\n );\n }\n\n inDynamicValue = false;\n\n if (currentText.length <= 0) {\n throw new Error('Incorrect syntax at char ' + i + '! Brackets does not containt any chars.');\n }\n\n let dynamicValue = currentText;\n if (includeBracketsForDynamicValues) {\n dynamicValue = '{' + dynamicValue + '}';\n }\n\n tokens.push(new FormatStringToken(dynamicValue, FormatStringTokenType.DynamicValue));\n currentText = '';\n\n break;\n default:\n currentText += c;\n break;\n }\n }\n\n if (inDynamicValue) {\n throw new Error('There is no closing } char for an opened { char.');\n }\n\n if (currentText.length > 0) {\n tokens.push(new FormatStringToken(currentText, FormatStringTokenType.ConstantText));\n }\n\n return tokens;\n }\n}\n\nexport class FormattedStringValueExtracter {\n Extract(str: string, format: string): ExtractionResult {\n if (str === format) {\n return new ExtractionResult(true);\n }\n\n const formatTokens = new FormatStringTokenizer().Tokenize(format);\n if (!formatTokens) {\n return new ExtractionResult(str === '');\n }\n\n const result = new ExtractionResult(true);\n\n for (let i = 0; i < formatTokens.length; i++) {\n const currentToken = formatTokens[i];\n const previousToken = i > 0 ? formatTokens[i - 1] : null;\n\n if (currentToken.Type === FormatStringTokenType.ConstantText) {\n if (i === 0) {\n if (str.indexOf(currentToken.Text) !== 0) {\n result.IsMatch = false;\n return result;\n }\n\n str = str.substr(currentToken.Text.length, str.length - currentToken.Text.length);\n } else {\n const matchIndex = str.indexOf(currentToken.Text);\n if (matchIndex < 0) {\n result.IsMatch = false;\n return result;\n }\n\n result.Matches.push({ name: previousToken.Text, value: str.substr(0, matchIndex) });\n str = str.substring(0, matchIndex + currentToken.Text.length);\n }\n }\n }\n\n const lastToken = formatTokens[formatTokens.length - 1];\n if (lastToken.Type === FormatStringTokenType.DynamicValue) {\n result.Matches.push({ name: lastToken.Text, value: str });\n }\n\n return result;\n }\n\n IsMatch(str: string, format: string): string[] {\n const result = new FormattedStringValueExtracter().Extract(str, format);\n if (!result.IsMatch) {\n return [];\n }\n\n const values = [];\n for (let i = 0; i < result.Matches.length; i++) {\n values.push(result.Matches[i].value);\n }\n\n return values;\n }\n}\n","import { LazyLoadEvent } from 'primeng/api';\r\nimport { Paginator } from 'primeng/paginator';\r\nimport { Table } from 'primeng/table';\r\nimport * as rtlDetect from 'rtl-detect';\r\n\r\nexport class PrimengTableHelper {\r\n predefinedRecordsCountPerPage = [5, 10, 25, 50, 100, 250, 500];\r\n\r\n defaultRecordsCountPerPage = 50;\r\n\r\n isResponsive = true;\r\n\r\n resizableColumns: false;\r\n\r\n totalRecordsCount = 0;\r\n\r\n records: any[];\r\n\r\n isLoading = false;\r\n\r\n showLoadingIndicator(): void {\r\n setTimeout(() => {\r\n this.isLoading = true;\r\n }, 0);\r\n }\r\n\r\n hideLoadingIndicator(): void {\r\n setTimeout(() => {\r\n this.isLoading = false;\r\n }, 0);\r\n }\r\n\r\n getSorting(table: Table): string {\r\n let sorting = '';\r\n\r\n if (table.sortMode === 'multiple') {\r\n if (table.multiSortMeta) {\r\n for (let i = 0; i < table.multiSortMeta.length; i++) {\r\n const element = table.multiSortMeta[i];\r\n if (i > 0) {\r\n sorting += ',';\r\n }\r\n sorting += element.field;\r\n if (element.order === 1) {\r\n sorting += ' ASC';\r\n } else if (element.order === -1) {\r\n sorting += ' DESC';\r\n }\r\n }\r\n }\r\n } else {\r\n if (table.sortField) {\r\n sorting = table.sortField;\r\n if (table.sortOrder === 1) {\r\n sorting += ' ASC';\r\n } else if (table.sortOrder === -1) {\r\n sorting += ' DESC';\r\n }\r\n }\r\n }\r\n\r\n return sorting;\r\n }\r\n\r\n getMaxResultCount(paginator: Paginator, event: LazyLoadEvent): number {\r\n if (paginator.rows) {\r\n return paginator.rows;\r\n }\r\n\r\n if (!event) {\r\n return 0;\r\n }\r\n\r\n return event.rows;\r\n }\r\n\r\n getSkipCount(paginator: Paginator, event: LazyLoadEvent): number {\r\n if (paginator.first) {\r\n return paginator.first;\r\n }\r\n\r\n if (!event) {\r\n return 0;\r\n }\r\n\r\n return event.first;\r\n }\r\n\r\n shouldResetPaging(event: LazyLoadEvent): boolean {\r\n if (!event /*|| event.sortField*/) {\r\n // if you want to reset after sorting, comment out parameter\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n adjustScroll(table: Table) {\r\n const rtl = rtlDetect.isRtlLang(abp.localization.currentLanguage.name);\r\n if (!rtl) {\r\n return;\r\n }\r\n\r\n const body: HTMLElement = table.el.nativeElement.querySelector('.p-datatable-scrollable-body');\r\n const header: HTMLElement = table.el.nativeElement.querySelector('.p-datatable-scrollable-header');\r\n body.addEventListener('scroll', () => {\r\n header.scrollLeft = body.scrollLeft;\r\n });\r\n }\r\n}\r\n","import { AppConsts } from '@shared/AppConsts';\nimport { LocalStorageService } from '@shared/utils/local-storage.service';\n\nexport class SignalRHelper {\n static initSignalR(callback: () => void): void {\n new LocalStorageService().getItem(AppConsts.authorization.encrptedAuthTokenName, function (err, value) {\n let encryptedAuthToken = value?.token;\n\n abp.signalr = {\n autoConnect: false, // _zone.runOutsideAngular in ChatSignalrService\n // autoReconnect: true,\n connect: undefined,\n hubs: undefined,\n qs: encryptedAuthToken\n ? AppConsts.authorization.encrptedAuthTokenName + '=' + encodeURIComponent(encryptedAuthToken)\n : '',\n remoteServiceBaseUrl: AppConsts.remoteServiceBaseUrl,\n startConnection: undefined,\n url: '/signalr',\n };\n\n let script = document.createElement('script');\n script.onload = () => {\n callback();\n };\n\n script.src = AppConsts.appBaseUrl + '/assets/abp/abp.signalr-client.js';\n document.head.appendChild(script);\n });\n }\n}\n","import { AppConsts } from '@shared/AppConsts';\nimport { FormattedStringValueExtracter } from '@shared/helpers/FormattedStringValueExtracter';\n\nexport class SubdomainTenancyNameFinder {\n urlHasTenancyNamePlaceholder(url: string): boolean {\n return url.indexOf(AppConsts.tenancyNamePlaceHolderInUrl) >= 0;\n }\n\n getCurrentTenancyNameOrNull(rootAddress: string): string {\n if (rootAddress.indexOf(AppConsts.tenancyNamePlaceHolderInUrl) < 0) {\n // Web site does not support subdomain tenant name\n return null;\n }\n\n const currentRootAddress = document.location.href;\n\n const formattedStringValueExtracter = new FormattedStringValueExtracter();\n const values: any[] = formattedStringValueExtracter.IsMatch(currentRootAddress, rootAddress);\n if (!values.length) {\n return null;\n }\n\n return values[0];\n }\n}\n","import { IThemeAssetContributor } from '@app/shared/layout/themes/ThemeAssetContributor';\nimport { ThemeHelper } from '@app/shared/layout/themes/ThemeHelper';\nimport { DefaultThemeAssetContributor } from '@app/shared/layout/themes/default/DefaultThemeAssetContributor';\nimport { Theme2ThemeAssetContributor } from '@app/shared/layout/themes/theme2/Theme2ThemeAssetContributor';\nimport { Theme3ThemeAssetContributor } from '@app/shared/layout/themes/theme3/Theme3ThemeAssetContributor';\nimport { Theme4ThemeAssetContributor } from '@app/shared/layout/themes/theme4/Theme4ThemeAssetContributor';\nimport { Theme5ThemeAssetContributor } from '@app/shared/layout/themes/theme5/Theme5ThemeAssetContributor';\nimport { Theme6ThemeAssetContributor } from '@app/shared/layout/themes/theme6/Theme6ThemeAssetContributor';\nimport { Theme7ThemeAssetContributor } from '@app/shared/layout/themes/theme7/Theme7ThemeAssetContributor';\nimport { Theme8ThemeAssetContributor } from '@app/shared/layout/themes/theme8/Theme8ThemeAssetContributor';\nimport { Theme9ThemeAssetContributor } from '@app/shared/layout/themes/theme9/Theme9ThemeAssetContributor';\nimport { Theme10ThemeAssetContributor } from '@app/shared/layout/themes/theme10/Theme10ThemeAssetContributor';\nimport { Theme11ThemeAssetContributor } from '@app/shared/layout/themes/theme11/Theme11ThemeAssetContributor';\nimport { Theme12ThemeAssetContributor } from '@app/shared/layout/themes/theme12/Theme12ThemeAssetContributor';\nimport { Theme13ThemeAssetContributor } from '@app/shared/layout/themes/theme13/Theme13ThemeAssetContributor';\nexport class ThemeAssetContributorFactory {\n static getCurrent(): IThemeAssetContributor {\n let theme = ThemeHelper.getTheme();\n\n if (theme === 'default') {\n return new DefaultThemeAssetContributor();\n }\n\n if (theme === 'theme2') {\n return new Theme2ThemeAssetContributor();\n }\n\n if (theme === 'theme3') {\n return new Theme3ThemeAssetContributor();\n }\n\n if (theme === 'theme4') {\n return new Theme4ThemeAssetContributor();\n }\n\n if (theme === 'theme5') {\n return new Theme5ThemeAssetContributor();\n }\n\n if (theme === 'theme6') {\n return new Theme6ThemeAssetContributor();\n }\n\n if (theme === 'theme7') {\n return new Theme7ThemeAssetContributor();\n }\n\n if (theme === 'theme8') {\n return new Theme8ThemeAssetContributor();\n }\n\n if (theme === 'theme9') {\n return new Theme9ThemeAssetContributor();\n }\n\n if (theme === 'theme10') {\n return new Theme10ThemeAssetContributor();\n }\n\n if (theme === 'theme11') {\n return new Theme11ThemeAssetContributor();\n }\n\n if (theme === 'theme12') {\n return new Theme12ThemeAssetContributor();\n }\n\n if (theme === 'theme13') {\n return new Theme13ThemeAssetContributor();\n }\n\n return null;\n }\n}\n","export class UrlHelper {\n /**\n * The URL requested, before initial routing.\n */\n static readonly initialUrl = location.href;\n\n static getQueryParameters(): any {\n return UrlHelper.getQueryParametersUsingParameters(document.location.search);\n }\n\n static getQueryParametersUsingParameters(search: string): any {\n return search\n .replace(/(^\\?)/, '')\n .split('&')\n .map(\n function (n) {\n return (n = n.split('=')), (this[n[0]] = n[1]), this;\n }.bind({})\n )[0];\n }\n\n static getQueryParametersUsingHash(): any {\n return document.location.hash\n .substr(1, document.location.hash.length - 1)\n .replace(/(^\\?)/, '')\n .split('&')\n .map(\n function (n) {\n return (n = n.split('=')), (this[n[0]] = n[1]), this;\n }.bind({})\n )[0];\n }\n\n static getInitialUrlParameters(): any {\n let questionMarkIndex = UrlHelper.initialUrl.indexOf('?');\n if (questionMarkIndex >= 0) {\n return UrlHelper.initialUrl.substr(questionMarkIndex, UrlHelper.initialUrl.length - questionMarkIndex);\n }\n\n return '';\n }\n\n static getReturnUrl(): string {\n const queryStringObj = UrlHelper.getQueryParametersUsingParameters(UrlHelper.getInitialUrlParameters());\n if (queryStringObj.returnUrl) {\n return decodeURIComponent(queryStringObj.returnUrl);\n }\n\n return null;\n }\n\n static getSingleSignIn(): boolean {\n const queryStringObj = UrlHelper.getQueryParametersUsingParameters(UrlHelper.getInitialUrlParameters());\n if (queryStringObj.ss) {\n return queryStringObj.ss;\n }\n\n return false;\n }\n\n static isInstallUrl(url): boolean {\n return url && url.indexOf('app/admin/install') >= 0;\n }\n}\n","export class XmlHttpRequestHelper {\n static ajax(type: string, url: string, customHeaders: any, data: any, success: any) {\n let xhr = new XMLHttpRequest();\n\n xhr.onreadystatechange = () => {\n if (xhr.readyState === XMLHttpRequest.DONE) {\n if (xhr.status === 200) {\n let result = JSON.parse(xhr.responseText);\n success(result);\n } else if (xhr.status !== 0) {\n alert(abp.localization.localize('InternalServerError', 'AbpWeb'));\n }\n }\n };\n\n url += (url.indexOf('?') >= 0 ? '&' : '?') + 'd=' + new Date().getTime();\n xhr.open(type, url, true);\n\n for (let property in customHeaders) {\n if (customHeaders.hasOwnProperty(property)) {\n xhr.setRequestHeader(property, customHeaders[property]);\n }\n }\n\n xhr.setRequestHeader('Content-type', 'application/json');\n if (data) {\n xhr.send(data);\n } else {\n xhr.send();\n }\n }\n}\n","import { AppConsts } from '@shared/AppConsts';\nimport { filter as _filter } from 'lodash-es';\n\nexport class LocaleMappingService {\n map(mappingSource: string, locale: string): string {\n if (!AppConsts.localeMappings && !AppConsts.localeMappings[mappingSource]) {\n return locale;\n }\n\n const localeMappings = _filter(AppConsts.localeMappings[mappingSource], { from: locale });\n if (localeMappings && localeMappings.length) {\n return localeMappings[0]['to'];\n }\n\n return locale;\n }\n}\n","import { HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { CacheMap } from '@shared/caching/cache-map';\r\nimport { of } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\n\r\nconst MAX_HTTP_CACHE_AGE = 10000; // in milliseconds\r\n\r\nconst CACHE_URLS = [\r\n // '/api/services/app/Shipment/GetTrackingNumbers',\r\n // '/api/services/app/Shipment/GetOutboundShipmentAvailableItems',\r\n] as const;\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class CachingInterceptor implements HttpInterceptor {\r\n private readonly cacheMap = new CacheMap>(MAX_HTTP_CACHE_AGE);\r\n\r\n intercept(req: HttpRequest, next: HttpHandler) {\r\n if (!this.shouldCacheRequest(req)) {\r\n return next.handle(req);\r\n }\r\n\r\n const cachedResponse = this.cacheMap.get(req.urlWithParams);\r\n\r\n if (cachedResponse !== undefined) {\r\n return of(cachedResponse);\r\n }\r\n\r\n return next.handle(req).pipe(\r\n tap(event => {\r\n if (event instanceof HttpResponse) {\r\n this.cacheMap.put(req.urlWithParams, event);\r\n }\r\n })\r\n );\r\n }\r\n\r\n private shouldCacheRequest(req: HttpRequest) {\r\n return (req.method === 'GET') && (CACHE_URLS.some(url => req.url.indexOf(url) > -1));\r\n }\r\n}\r\n","//----------------------\r\n// \r\n// Generated using the NSwag toolchain v13.18.1.0 (NJsonSchema v10.8.0.0 (Newtonsoft.Json v13.0.0.0)) (http://NSwag.org)\r\n// \r\n//----------------------\r\n\r\n/* tslint:disable */\r\n/* eslint-disable */\r\n// ReSharper disable InconsistentNaming\r\n\r\nimport { mergeMap as _observableMergeMap, catchError as _observableCatch } from 'rxjs/operators';\r\nimport { Observable, throwError as _observableThrow, of as _observableOf } from 'rxjs';\r\nimport { Injectable, Inject, Optional, InjectionToken } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpResponse, HttpResponseBase } from '@angular/common/http';\r\n\r\nimport { DateTime, Duration } from \"luxon\";\r\n\r\nexport const API_BASE_URL = new InjectionToken('API_BASE_URL');\r\n\r\n@Injectable()\r\nexport class AccountServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n isTenantAvailable(body: IsTenantAvailableInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/IsTenantAvailable\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processIsTenantAvailable(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processIsTenantAvailable(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processIsTenantAvailable(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IsTenantAvailableOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n resolveTenantId(body: ResolveTenantIdInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/ResolveTenantId\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResolveTenantId(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResolveTenantId(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processResolveTenantId(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendPasswordResetCode(body: SendPasswordResetCodeInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/SendPasswordResetCode\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendPasswordResetCode(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendPasswordResetCode(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendPasswordResetCode(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n resetPassword(body: ResetPasswordInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/ResetPassword\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetPassword(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetPassword(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processResetPassword(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ResetPasswordOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendEmailActivationLink(body: SendEmailActivationLinkInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/SendEmailActivationLink\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendEmailActivationLink(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendEmailActivationLink(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendEmailActivationLink(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n activateEmail(body: ActivateEmailInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/ActivateEmail\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processActivateEmail(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processActivateEmail(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processActivateEmail(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ActivateEmailOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n impersonateUser(body: ImpersonateUserInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/ImpersonateUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processImpersonateUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processImpersonateUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processImpersonateUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ImpersonateOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n impersonateTenant(body: ImpersonateTenantInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/ImpersonateTenant\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processImpersonateTenant(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processImpersonateTenant(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processImpersonateTenant(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ImpersonateOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n delegatedImpersonate(body: DelegatedImpersonateInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/DelegatedImpersonate\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDelegatedImpersonate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDelegatedImpersonate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDelegatedImpersonate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ImpersonateOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n backToImpersonator(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/BackToImpersonator\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processBackToImpersonator(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processBackToImpersonator(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processBackToImpersonator(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ImpersonateOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n switchToLinkedAccount(body: SwitchToLinkedAccountInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Account/SwitchToLinkedAccount\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSwitchToLinkedAccount(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSwitchToLinkedAccount(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSwitchToLinkedAccount(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SwitchToLinkedAccountOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AddressLookupServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getCountries(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AddressLookup/GetCountries\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCountries(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCountries(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCountries(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfNameValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getCountrySubdivisions(countryAbbreviation: string): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AddressLookup/GetCountrySubdivisions?\";\r\n if (countryAbbreviation === undefined || countryAbbreviation === null)\r\n throw new Error(\"The parameter 'countryAbbreviation' must be defined and cannot be null.\");\r\n else\r\n url_ += \"CountryAbbreviation=\" + encodeURIComponent(\"\" + countryAbbreviation) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCountrySubdivisions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCountrySubdivisions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCountrySubdivisions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfNameValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AppointmentServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param dateRange_From (optional) \r\n * @param dateRange_To (optional) \r\n * @param warehouseId (optional) \r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getAvailableSlots(tradeClass: TradeClass, shipmentType: ShipmentType, dateRange_From: DateTime | undefined, dateRange_To: DateTime | undefined, warehouseId: number | undefined, clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Appointment/GetAvailableSlots?\";\r\n if (tradeClass === undefined || tradeClass === null)\r\n throw new Error(\"The parameter 'tradeClass' must be defined and cannot be null.\");\r\n else\r\n url_ += \"TradeClass=\" + encodeURIComponent(\"\" + tradeClass) + \"&\";\r\n if (shipmentType === undefined || shipmentType === null)\r\n throw new Error(\"The parameter 'shipmentType' must be defined and cannot be null.\");\r\n else\r\n url_ += \"ShipmentType=\" + encodeURIComponent(\"\" + shipmentType) + \"&\";\r\n if (dateRange_From === null)\r\n throw new Error(\"The parameter 'dateRange_From' cannot be null.\");\r\n else if (dateRange_From !== undefined)\r\n url_ += \"DateRange.From=\" + encodeURIComponent(dateRange_From ? \"\" + dateRange_From.toString() : \"\") + \"&\";\r\n if (dateRange_To === null)\r\n throw new Error(\"The parameter 'dateRange_To' cannot be null.\");\r\n else if (dateRange_To !== undefined)\r\n url_ += \"DateRange.To=\" + encodeURIComponent(dateRange_To ? \"\" + dateRange_To.toString() : \"\") + \"&\";\r\n if (warehouseId === null)\r\n throw new Error(\"The parameter 'warehouseId' cannot be null.\");\r\n else if (warehouseId !== undefined)\r\n url_ += \"WarehouseId=\" + encodeURIComponent(\"\" + warehouseId) + \"&\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAvailableSlots(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAvailableSlots(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAvailableSlots(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetAvailableAppointmentSlotsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param warehouseId (optional) \r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getAppointmentSlotSettings(warehouseId: number | undefined, clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Appointment/GetAppointmentSlotSettings?\";\r\n if (warehouseId === null)\r\n throw new Error(\"The parameter 'warehouseId' cannot be null.\");\r\n else if (warehouseId !== undefined)\r\n url_ += \"WarehouseId=\" + encodeURIComponent(\"\" + warehouseId) + \"&\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAppointmentSlotSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAppointmentSlotSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAppointmentSlotSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetAppointmentSlotSettingsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createInboundAppointment(body: CreateAppointmentInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Appointment/CreateInboundAppointment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateInboundAppointment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateInboundAppointment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateInboundAppointment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AppointmentDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createOutboundAppointment(body: CreateAppointmentInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Appointment/CreateOutboundAppointment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateOutboundAppointment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateOutboundAppointment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateOutboundAppointment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AppointmentDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AppointmentRecurringSettingsServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getSettingsById(id: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AppointmentRecurringSettings/GetSettingsById?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSettingsById(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSettingsById(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSettingsById(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = RecurringAppointmentSettingsDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param warehouseId (optional) \r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getClientSettings(warehouseId: number | undefined, clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AppointmentRecurringSettings/GetClientSettings?\";\r\n if (warehouseId === null)\r\n throw new Error(\"The parameter 'warehouseId' cannot be null.\");\r\n else if (warehouseId !== undefined)\r\n url_ += \"WarehouseId=\" + encodeURIComponent(\"\" + warehouseId) + \"&\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetClientSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetClientSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetClientSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfRecurringAppointmentSettingsDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createOrUpdateSettings(body: RecurringAppointmentSettingsCreateOrUpdateInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AppointmentRecurringSettings/CreateOrUpdateSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateOrUpdateSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateOrUpdateSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateOrUpdateSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n deleteSettings(id: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AppointmentRecurringSettings/DeleteSettings?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AppointmentScheduleSettingsServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param warehouseId (optional) \r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getScheduleSettings(warehouseId: number | undefined, clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AppointmentScheduleSettings/GetScheduleSettings?\";\r\n if (warehouseId === null)\r\n throw new Error(\"The parameter 'warehouseId' cannot be null.\");\r\n else if (warehouseId !== undefined)\r\n url_ += \"WarehouseId=\" + encodeURIComponent(\"\" + warehouseId) + \"&\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetScheduleSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetScheduleSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetScheduleSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AppointmentScheduleSettingsDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createOrUpdateScheduleSettings(body: AppointmentScheduleSettingsDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AppointmentScheduleSettings/CreateOrUpdateScheduleSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateOrUpdateScheduleSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateOrUpdateScheduleSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateOrUpdateScheduleSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AuditLogServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @param userName (optional) \r\n * @param serviceName (optional) \r\n * @param methodName (optional) \r\n * @param browserInfo (optional) \r\n * @param hasException (optional) \r\n * @param minExecutionDuration (optional) \r\n * @param maxExecutionDuration (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getAuditLogs(startDate: DateTime | undefined, endDate: DateTime | undefined, userName: string | undefined, serviceName: string | undefined, methodName: string | undefined, browserInfo: string | undefined, hasException: boolean | undefined, minExecutionDuration: number | undefined, maxExecutionDuration: number | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AuditLog/GetAuditLogs?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n if (userName === null)\r\n throw new Error(\"The parameter 'userName' cannot be null.\");\r\n else if (userName !== undefined)\r\n url_ += \"UserName=\" + encodeURIComponent(\"\" + userName) + \"&\";\r\n if (serviceName === null)\r\n throw new Error(\"The parameter 'serviceName' cannot be null.\");\r\n else if (serviceName !== undefined)\r\n url_ += \"ServiceName=\" + encodeURIComponent(\"\" + serviceName) + \"&\";\r\n if (methodName === null)\r\n throw new Error(\"The parameter 'methodName' cannot be null.\");\r\n else if (methodName !== undefined)\r\n url_ += \"MethodName=\" + encodeURIComponent(\"\" + methodName) + \"&\";\r\n if (browserInfo === null)\r\n throw new Error(\"The parameter 'browserInfo' cannot be null.\");\r\n else if (browserInfo !== undefined)\r\n url_ += \"BrowserInfo=\" + encodeURIComponent(\"\" + browserInfo) + \"&\";\r\n if (hasException === null)\r\n throw new Error(\"The parameter 'hasException' cannot be null.\");\r\n else if (hasException !== undefined)\r\n url_ += \"HasException=\" + encodeURIComponent(\"\" + hasException) + \"&\";\r\n if (minExecutionDuration === null)\r\n throw new Error(\"The parameter 'minExecutionDuration' cannot be null.\");\r\n else if (minExecutionDuration !== undefined)\r\n url_ += \"MinExecutionDuration=\" + encodeURIComponent(\"\" + minExecutionDuration) + \"&\";\r\n if (maxExecutionDuration === null)\r\n throw new Error(\"The parameter 'maxExecutionDuration' cannot be null.\");\r\n else if (maxExecutionDuration !== undefined)\r\n url_ += \"MaxExecutionDuration=\" + encodeURIComponent(\"\" + maxExecutionDuration) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAuditLogs(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAuditLogs(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAuditLogs(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfAuditLogListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @param userName (optional) \r\n * @param serviceName (optional) \r\n * @param methodName (optional) \r\n * @param browserInfo (optional) \r\n * @param hasException (optional) \r\n * @param minExecutionDuration (optional) \r\n * @param maxExecutionDuration (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getAuditLogsToExcel(startDate: DateTime | undefined, endDate: DateTime | undefined, userName: string | undefined, serviceName: string | undefined, methodName: string | undefined, browserInfo: string | undefined, hasException: boolean | undefined, minExecutionDuration: number | undefined, maxExecutionDuration: number | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AuditLog/GetAuditLogsToExcel?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n if (userName === null)\r\n throw new Error(\"The parameter 'userName' cannot be null.\");\r\n else if (userName !== undefined)\r\n url_ += \"UserName=\" + encodeURIComponent(\"\" + userName) + \"&\";\r\n if (serviceName === null)\r\n throw new Error(\"The parameter 'serviceName' cannot be null.\");\r\n else if (serviceName !== undefined)\r\n url_ += \"ServiceName=\" + encodeURIComponent(\"\" + serviceName) + \"&\";\r\n if (methodName === null)\r\n throw new Error(\"The parameter 'methodName' cannot be null.\");\r\n else if (methodName !== undefined)\r\n url_ += \"MethodName=\" + encodeURIComponent(\"\" + methodName) + \"&\";\r\n if (browserInfo === null)\r\n throw new Error(\"The parameter 'browserInfo' cannot be null.\");\r\n else if (browserInfo !== undefined)\r\n url_ += \"BrowserInfo=\" + encodeURIComponent(\"\" + browserInfo) + \"&\";\r\n if (hasException === null)\r\n throw new Error(\"The parameter 'hasException' cannot be null.\");\r\n else if (hasException !== undefined)\r\n url_ += \"HasException=\" + encodeURIComponent(\"\" + hasException) + \"&\";\r\n if (minExecutionDuration === null)\r\n throw new Error(\"The parameter 'minExecutionDuration' cannot be null.\");\r\n else if (minExecutionDuration !== undefined)\r\n url_ += \"MinExecutionDuration=\" + encodeURIComponent(\"\" + minExecutionDuration) + \"&\";\r\n if (maxExecutionDuration === null)\r\n throw new Error(\"The parameter 'maxExecutionDuration' cannot be null.\");\r\n else if (maxExecutionDuration !== undefined)\r\n url_ += \"MaxExecutionDuration=\" + encodeURIComponent(\"\" + maxExecutionDuration) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAuditLogsToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAuditLogsToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAuditLogsToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getEntityHistoryObjectTypes(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AuditLog/GetEntityHistoryObjectTypes\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEntityHistoryObjectTypes(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEntityHistoryObjectTypes(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEntityHistoryObjectTypes(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(NameValueDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @param userName (optional) \r\n * @param entityTypeFullName (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getEntityChanges(startDate: DateTime | undefined, endDate: DateTime | undefined, userName: string | undefined, entityTypeFullName: string | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AuditLog/GetEntityChanges?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n if (userName === null)\r\n throw new Error(\"The parameter 'userName' cannot be null.\");\r\n else if (userName !== undefined)\r\n url_ += \"UserName=\" + encodeURIComponent(\"\" + userName) + \"&\";\r\n if (entityTypeFullName === null)\r\n throw new Error(\"The parameter 'entityTypeFullName' cannot be null.\");\r\n else if (entityTypeFullName !== undefined)\r\n url_ += \"EntityTypeFullName=\" + encodeURIComponent(\"\" + entityTypeFullName) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEntityChanges(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEntityChanges(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEntityChanges(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfEntityChangeListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param entityTypeFullName (optional) \r\n * @param entityId (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getEntityTypeChanges(entityTypeFullName: string | undefined, entityId: string | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AuditLog/GetEntityTypeChanges?\";\r\n if (entityTypeFullName === null)\r\n throw new Error(\"The parameter 'entityTypeFullName' cannot be null.\");\r\n else if (entityTypeFullName !== undefined)\r\n url_ += \"EntityTypeFullName=\" + encodeURIComponent(\"\" + entityTypeFullName) + \"&\";\r\n if (entityId === null)\r\n throw new Error(\"The parameter 'entityId' cannot be null.\");\r\n else if (entityId !== undefined)\r\n url_ += \"EntityId=\" + encodeURIComponent(\"\" + entityId) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEntityTypeChanges(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEntityTypeChanges(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEntityTypeChanges(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfEntityChangeListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @param userName (optional) \r\n * @param entityTypeFullName (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getEntityChangesToExcel(startDate: DateTime | undefined, endDate: DateTime | undefined, userName: string | undefined, entityTypeFullName: string | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AuditLog/GetEntityChangesToExcel?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n if (userName === null)\r\n throw new Error(\"The parameter 'userName' cannot be null.\");\r\n else if (userName !== undefined)\r\n url_ += \"UserName=\" + encodeURIComponent(\"\" + userName) + \"&\";\r\n if (entityTypeFullName === null)\r\n throw new Error(\"The parameter 'entityTypeFullName' cannot be null.\");\r\n else if (entityTypeFullName !== undefined)\r\n url_ += \"EntityTypeFullName=\" + encodeURIComponent(\"\" + entityTypeFullName) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEntityChangesToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEntityChangesToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEntityChangesToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param entityChangeId (optional) \r\n * @return Success\r\n */\r\n getEntityPropertyChanges(entityChangeId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/AuditLog/GetEntityPropertyChanges?\";\r\n if (entityChangeId === null)\r\n throw new Error(\"The parameter 'entityChangeId' cannot be null.\");\r\n else if (entityChangeId !== undefined)\r\n url_ += \"entityChangeId=\" + encodeURIComponent(\"\" + entityChangeId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEntityPropertyChanges(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEntityPropertyChanges(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEntityPropertyChanges(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(EntityPropertyChangeDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class CachingServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllCaches(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Caching/GetAllCaches\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllCaches(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllCaches(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllCaches(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfCacheDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n clearCache(body: EntityDtoOfString | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Caching/ClearCache\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processClearCache(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processClearCache(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processClearCache(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n clearAllCaches(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Caching/ClearAllCaches\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processClearAllCaches(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processClearAllCaches(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processClearAllCaches(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class ChatServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getUserChatFriendsWithSettings(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Chat/GetUserChatFriendsWithSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUserChatFriendsWithSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUserChatFriendsWithSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUserChatFriendsWithSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetUserChatFriendsWithSettingsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param tenantId (optional) \r\n * @param userId (optional) \r\n * @param minMessageId (optional) \r\n * @return Success\r\n */\r\n getUserChatMessages(tenantId: number | undefined, userId: number | undefined, minMessageId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Chat/GetUserChatMessages?\";\r\n if (tenantId === null)\r\n throw new Error(\"The parameter 'tenantId' cannot be null.\");\r\n else if (tenantId !== undefined)\r\n url_ += \"TenantId=\" + encodeURIComponent(\"\" + tenantId) + \"&\";\r\n if (userId === null)\r\n throw new Error(\"The parameter 'userId' cannot be null.\");\r\n else if (userId !== undefined)\r\n url_ += \"UserId=\" + encodeURIComponent(\"\" + userId) + \"&\";\r\n if (minMessageId === null)\r\n throw new Error(\"The parameter 'minMessageId' cannot be null.\");\r\n else if (minMessageId !== undefined)\r\n url_ += \"MinMessageId=\" + encodeURIComponent(\"\" + minMessageId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUserChatMessages(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUserChatMessages(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUserChatMessages(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfChatMessageDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n markAllUnreadMessagesOfUserAsRead(body: MarkAllUnreadMessagesOfUserAsReadInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Chat/MarkAllUnreadMessagesOfUserAsRead\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMarkAllUnreadMessagesOfUserAsRead(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMarkAllUnreadMessagesOfUserAsRead(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMarkAllUnreadMessagesOfUserAsRead(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class CommonLookupServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param onlyFreeItems (optional) \r\n * @return Success\r\n */\r\n getEditionsForCombobox(onlyFreeItems: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/CommonLookup/GetEditionsForCombobox?\";\r\n if (onlyFreeItems === null)\r\n throw new Error(\"The parameter 'onlyFreeItems' cannot be null.\");\r\n else if (onlyFreeItems !== undefined)\r\n url_ += \"onlyFreeItems=\" + encodeURIComponent(\"\" + onlyFreeItems) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEditionsForCombobox(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEditionsForCombobox(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEditionsForCombobox(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfSubscribableEditionComboboxItemDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n findUsers(body: FindUsersInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/CommonLookup/FindUsers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFindUsers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFindUsers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFindUsers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfNameValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getDefaultEditionName(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/CommonLookup/GetDefaultEditionName\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDefaultEditionName(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDefaultEditionName(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDefaultEditionName(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetDefaultEditionNameOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class DashboardCustomizationServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param dashboardName (optional) \r\n * @param application (optional) \r\n * @return Success\r\n */\r\n getUserDashboard(dashboardName: string | undefined, application: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/GetUserDashboard?\";\r\n if (dashboardName === null)\r\n throw new Error(\"The parameter 'dashboardName' cannot be null.\");\r\n else if (dashboardName !== undefined)\r\n url_ += \"DashboardName=\" + encodeURIComponent(\"\" + dashboardName) + \"&\";\r\n if (application === null)\r\n throw new Error(\"The parameter 'application' cannot be null.\");\r\n else if (application !== undefined)\r\n url_ += \"Application=\" + encodeURIComponent(\"\" + application) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUserDashboard(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUserDashboard(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUserDashboard(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Dashboard.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n savePage(body: SavePageInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/SavePage\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSavePage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSavePage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSavePage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n renamePage(body: RenamePageInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/RenamePage\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRenamePage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRenamePage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRenamePage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n addNewPage(body: AddNewPageInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/AddNewPage\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddNewPage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddNewPage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddNewPage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AddNewPageOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @param dashboardName (optional) \r\n * @param application (optional) \r\n * @return Success\r\n */\r\n deletePage(id: string | undefined, dashboardName: string | undefined, application: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/DeletePage?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (dashboardName === null)\r\n throw new Error(\"The parameter 'dashboardName' cannot be null.\");\r\n else if (dashboardName !== undefined)\r\n url_ += \"DashboardName=\" + encodeURIComponent(\"\" + dashboardName) + \"&\";\r\n if (application === null)\r\n throw new Error(\"The parameter 'application' cannot be null.\");\r\n else if (application !== undefined)\r\n url_ += \"Application=\" + encodeURIComponent(\"\" + application) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeletePage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeletePage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeletePage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n addWidget(body: AddWidgetInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/AddWidget\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddWidget(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddWidget(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddWidget(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Widget.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param dashboardName (optional) \r\n * @param application (optional) \r\n * @return Success\r\n */\r\n getDashboardDefinition(dashboardName: string | undefined, application: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/GetDashboardDefinition?\";\r\n if (dashboardName === null)\r\n throw new Error(\"The parameter 'dashboardName' cannot be null.\");\r\n else if (dashboardName !== undefined)\r\n url_ += \"DashboardName=\" + encodeURIComponent(\"\" + dashboardName) + \"&\";\r\n if (application === null)\r\n throw new Error(\"The parameter 'application' cannot be null.\");\r\n else if (application !== undefined)\r\n url_ += \"Application=\" + encodeURIComponent(\"\" + application) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDashboardDefinition(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDashboardDefinition(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDashboardDefinition(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DashboardOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param dashboardName (optional) \r\n * @param application (optional) \r\n * @return Success\r\n */\r\n getAllWidgetDefinitions(dashboardName: string | undefined, application: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/GetAllWidgetDefinitions?\";\r\n if (dashboardName === null)\r\n throw new Error(\"The parameter 'dashboardName' cannot be null.\");\r\n else if (dashboardName !== undefined)\r\n url_ += \"DashboardName=\" + encodeURIComponent(\"\" + dashboardName) + \"&\";\r\n if (application === null)\r\n throw new Error(\"The parameter 'application' cannot be null.\");\r\n else if (application !== undefined)\r\n url_ += \"Application=\" + encodeURIComponent(\"\" + application) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllWidgetDefinitions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllWidgetDefinitions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllWidgetDefinitions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(WidgetOutput.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param dashboardName (optional) \r\n * @param application (optional) \r\n * @param pageId (optional) \r\n * @return Success\r\n */\r\n getAllAvailableWidgetDefinitionsForPage(dashboardName: string | undefined, application: string | undefined, pageId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/GetAllAvailableWidgetDefinitionsForPage?\";\r\n if (dashboardName === null)\r\n throw new Error(\"The parameter 'dashboardName' cannot be null.\");\r\n else if (dashboardName !== undefined)\r\n url_ += \"DashboardName=\" + encodeURIComponent(\"\" + dashboardName) + \"&\";\r\n if (application === null)\r\n throw new Error(\"The parameter 'application' cannot be null.\");\r\n else if (application !== undefined)\r\n url_ += \"Application=\" + encodeURIComponent(\"\" + application) + \"&\";\r\n if (pageId === null)\r\n throw new Error(\"The parameter 'pageId' cannot be null.\");\r\n else if (pageId !== undefined)\r\n url_ += \"PageId=\" + encodeURIComponent(\"\" + pageId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllAvailableWidgetDefinitionsForPage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllAvailableWidgetDefinitionsForPage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllAvailableWidgetDefinitionsForPage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(WidgetOutput.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param application (optional) \r\n * @param dashboardName (optional) \r\n * @return Success\r\n */\r\n getSettingName(application: string | undefined, dashboardName: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DashboardCustomization/GetSettingName?\";\r\n if (application === null)\r\n throw new Error(\"The parameter 'application' cannot be null.\");\r\n else if (application !== undefined)\r\n url_ += \"application=\" + encodeURIComponent(\"\" + application) + \"&\";\r\n if (dashboardName === null)\r\n throw new Error(\"The parameter 'dashboardName' cannot be null.\");\r\n else if (dashboardName !== undefined)\r\n url_ += \"dashboardName=\" + encodeURIComponent(\"\" + dashboardName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSettingName(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSettingName(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSettingName(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class DemoUiComponentsServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param date (optional) \r\n * @return Success\r\n */\r\n sendAndGetDate(date: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DemoUiComponents/SendAndGetDate?\";\r\n if (date === null)\r\n throw new Error(\"The parameter 'date' cannot be null.\");\r\n else if (date !== undefined)\r\n url_ += \"date=\" + encodeURIComponent(date ? \"\" + date.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendAndGetDate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendAndGetDate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendAndGetDate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DateFieldOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param date (optional) \r\n * @return Success\r\n */\r\n sendAndGetDateTime(date: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DemoUiComponents/SendAndGetDateTime?\";\r\n if (date === null)\r\n throw new Error(\"The parameter 'date' cannot be null.\");\r\n else if (date !== undefined)\r\n url_ += \"date=\" + encodeURIComponent(date ? \"\" + date.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendAndGetDateTime(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendAndGetDateTime(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendAndGetDateTime(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DateFieldOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @return Success\r\n */\r\n sendAndGetDateRange(startDate: DateTime | undefined, endDate: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DemoUiComponents/SendAndGetDateRange?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"startDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"endDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendAndGetDateRange(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendAndGetDateRange(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendAndGetDateRange(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DateRangeFieldOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendAndGetDateWithText(body: SendAndGetDateWithTextInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DemoUiComponents/SendAndGetDateWithText\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendAndGetDateWithText(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendAndGetDateWithText(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendAndGetDateWithText(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DateWithTextFieldOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param searchTerm (optional) \r\n * @return Success\r\n */\r\n getCountries(searchTerm: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DemoUiComponents/GetCountries?\";\r\n if (searchTerm === null)\r\n throw new Error(\"The parameter 'searchTerm' cannot be null.\");\r\n else if (searchTerm !== undefined)\r\n url_ += \"searchTerm=\" + encodeURIComponent(\"\" + searchTerm) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCountries(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCountries(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCountries(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(NameValueOfString.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendAndGetSelectedCountries(body: NameValueOfString[] | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DemoUiComponents/SendAndGetSelectedCountries\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendAndGetSelectedCountries(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendAndGetSelectedCountries(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendAndGetSelectedCountries(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(NameValueOfString.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param input (optional) \r\n * @return Success\r\n */\r\n sendAndGetValue(input: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DemoUiComponents/SendAndGetValue?\";\r\n if (input === null)\r\n throw new Error(\"The parameter 'input' cannot be null.\");\r\n else if (input !== undefined)\r\n url_ += \"input=\" + encodeURIComponent(\"\" + input) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendAndGetValue(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendAndGetValue(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendAndGetValue(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = StringOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class DynamicEntityPropertyServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n get(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityProperty/Get?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGet(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DynamicEntityPropertyDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param entityFullName (optional) \r\n * @return Success\r\n */\r\n getAllPropertiesOfAnEntity(entityFullName: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityProperty/GetAllPropertiesOfAnEntity?\";\r\n if (entityFullName === null)\r\n throw new Error(\"The parameter 'entityFullName' cannot be null.\");\r\n else if (entityFullName !== undefined)\r\n url_ += \"EntityFullName=\" + encodeURIComponent(\"\" + entityFullName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllPropertiesOfAnEntity(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllPropertiesOfAnEntity(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllPropertiesOfAnEntity(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfDynamicEntityPropertyDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAll(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityProperty/GetAll\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAll(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAll(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAll(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfDynamicEntityPropertyDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n add(body: DynamicEntityPropertyDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityProperty/Add\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAdd(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAdd(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAdd(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n update(body: DynamicEntityPropertyDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityProperty/Update\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n delete(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityProperty/Delete?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDelete(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDelete(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDelete(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllEntitiesHasDynamicProperty(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityProperty/GetAllEntitiesHasDynamicProperty\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllEntitiesHasDynamicProperty(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllEntitiesHasDynamicProperty(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllEntitiesHasDynamicProperty(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfGetAllEntitiesHasDynamicPropertyOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class DynamicEntityPropertyDefinitionServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllAllowedInputTypeNames(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyDefinition/GetAllAllowedInputTypeNames\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllAllowedInputTypeNames(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllAllowedInputTypeNames(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllAllowedInputTypeNames(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(item);\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllEntities(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyDefinition/GetAllEntities\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllEntities(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllEntities(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllEntities(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(item);\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class DynamicEntityPropertyValueServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n get(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyValue/Get?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGet(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DynamicEntityPropertyValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param entityId (optional) \r\n * @param propertyId (optional) \r\n * @return Success\r\n */\r\n getAll(entityId: string | undefined, propertyId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyValue/GetAll?\";\r\n if (entityId === null)\r\n throw new Error(\"The parameter 'entityId' cannot be null.\");\r\n else if (entityId !== undefined)\r\n url_ += \"EntityId=\" + encodeURIComponent(\"\" + entityId) + \"&\";\r\n if (propertyId === null)\r\n throw new Error(\"The parameter 'propertyId' cannot be null.\");\r\n else if (propertyId !== undefined)\r\n url_ += \"PropertyId=\" + encodeURIComponent(\"\" + propertyId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAll(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAll(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAll(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfDynamicEntityPropertyValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n add(body: DynamicEntityPropertyValueDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyValue/Add\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAdd(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAdd(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAdd(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n update(body: DynamicEntityPropertyValueDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyValue/Update\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n delete(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyValue/Delete?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDelete(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDelete(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDelete(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllDynamicEntityPropertyValues(entityFullName: string, entityId: string): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyValue/GetAllDynamicEntityPropertyValues?\";\r\n if (entityFullName === undefined || entityFullName === null)\r\n throw new Error(\"The parameter 'entityFullName' must be defined and cannot be null.\");\r\n else\r\n url_ += \"EntityFullName=\" + encodeURIComponent(\"\" + entityFullName) + \"&\";\r\n if (entityId === undefined || entityId === null)\r\n throw new Error(\"The parameter 'entityId' must be defined and cannot be null.\");\r\n else\r\n url_ += \"EntityId=\" + encodeURIComponent(\"\" + entityId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllDynamicEntityPropertyValues(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllDynamicEntityPropertyValues(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllDynamicEntityPropertyValues(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetAllDynamicEntityPropertyValuesOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n insertOrUpdateAllValues(body: InsertOrUpdateAllValuesInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyValue/InsertOrUpdateAllValues\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processInsertOrUpdateAllValues(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processInsertOrUpdateAllValues(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processInsertOrUpdateAllValues(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n cleanValues(body: CleanValuesInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicEntityPropertyValue/CleanValues\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCleanValues(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCleanValues(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCleanValues(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class DynamicPropertyServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n get(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicProperty/Get?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGet(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DynamicPropertyDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAll(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicProperty/GetAll\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAll(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAll(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAll(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfDynamicPropertyDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n add(body: DynamicPropertyDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicProperty/Add\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAdd(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAdd(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAdd(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n update(body: DynamicPropertyDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicProperty/Update\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n delete(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicProperty/Delete?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDelete(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDelete(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDelete(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param name (optional) \r\n * @return Success\r\n */\r\n findAllowedInputType(name: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicProperty/FindAllowedInputType?\";\r\n if (name === null)\r\n throw new Error(\"The parameter 'name' cannot be null.\");\r\n else if (name !== undefined)\r\n url_ += \"name=\" + encodeURIComponent(\"\" + name) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFindAllowedInputType(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFindAllowedInputType(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFindAllowedInputType(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IInputType.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class DynamicPropertyValueServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n get(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicPropertyValue/Get?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGet(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DynamicPropertyValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getAllValuesOfDynamicProperty(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicPropertyValue/GetAllValuesOfDynamicProperty?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllValuesOfDynamicProperty(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllValuesOfDynamicProperty(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllValuesOfDynamicProperty(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfDynamicPropertyValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n add(body: DynamicPropertyValueDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicPropertyValue/Add\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAdd(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAdd(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAdd(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n update(body: DynamicPropertyValueDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicPropertyValue/Update\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n delete(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/DynamicPropertyValue/Delete?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDelete(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDelete(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDelete(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class EditionServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getEditions(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Edition/GetEditions\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEditions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEditions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEditions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfEditionListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getEditionForEdit(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Edition/GetEditionForEdit?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEditionForEdit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEditionForEdit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEditionForEdit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetEditionEditOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createEdition(body: CreateEditionDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Edition/CreateEdition\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateEdition(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateEdition(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateEdition(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateEdition(body: UpdateEditionDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Edition/UpdateEdition\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateEdition(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateEdition(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateEdition(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n deleteEdition(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Edition/DeleteEdition?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteEdition(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteEdition(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteEdition(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n moveTenantsToAnotherEdition(body: MoveTenantsToAnotherEditionDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Edition/MoveTenantsToAnotherEdition\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMoveTenantsToAnotherEdition(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMoveTenantsToAnotherEdition(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMoveTenantsToAnotherEdition(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param selectedEditionId (optional) \r\n * @param addAllItem (optional) \r\n * @param onlyFreeItems (optional) \r\n * @return Success\r\n */\r\n getEditionComboboxItems(selectedEditionId: number | undefined, addAllItem: boolean | undefined, onlyFreeItems: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Edition/GetEditionComboboxItems?\";\r\n if (selectedEditionId === null)\r\n throw new Error(\"The parameter 'selectedEditionId' cannot be null.\");\r\n else if (selectedEditionId !== undefined)\r\n url_ += \"selectedEditionId=\" + encodeURIComponent(\"\" + selectedEditionId) + \"&\";\r\n if (addAllItem === null)\r\n throw new Error(\"The parameter 'addAllItem' cannot be null.\");\r\n else if (addAllItem !== undefined)\r\n url_ += \"addAllItem=\" + encodeURIComponent(\"\" + addAllItem) + \"&\";\r\n if (onlyFreeItems === null)\r\n throw new Error(\"The parameter 'onlyFreeItems' cannot be null.\");\r\n else if (onlyFreeItems !== undefined)\r\n url_ += \"onlyFreeItems=\" + encodeURIComponent(\"\" + onlyFreeItems) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEditionComboboxItems(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEditionComboboxItems(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEditionComboboxItems(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SubscribableEditionComboboxItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param editionId (optional) \r\n * @return Success\r\n */\r\n getTenantCount(editionId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Edition/GetTenantCount?\";\r\n if (editionId === null)\r\n throw new Error(\"The parameter 'editionId' cannot be null.\");\r\n else if (editionId !== undefined)\r\n url_ += \"editionId=\" + encodeURIComponent(\"\" + editionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTenantCount(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTenantCount(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTenantCount(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class FriendshipServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createFriendshipRequest(body: CreateFriendshipRequestInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Friendship/CreateFriendshipRequest\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateFriendshipRequest(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateFriendshipRequest(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateFriendshipRequest(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FriendDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createFriendshipRequestByUserName(body: CreateFriendshipRequestByUserNameInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Friendship/CreateFriendshipRequestByUserName\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateFriendshipRequestByUserName(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateFriendshipRequestByUserName(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateFriendshipRequestByUserName(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FriendDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n blockUser(body: BlockUserInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Friendship/BlockUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processBlockUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processBlockUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processBlockUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n unblockUser(body: UnblockUserInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Friendship/UnblockUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUnblockUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUnblockUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUnblockUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n acceptFriendshipRequest(body: AcceptFriendshipRequestInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Friendship/AcceptFriendshipRequest\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAcceptFriendshipRequest(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAcceptFriendshipRequest(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAcceptFriendshipRequest(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param userId (optional) \r\n * @param tenantId (optional) \r\n * @return Success\r\n */\r\n removeFriend(userId: number | undefined, tenantId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Friendship/RemoveFriend?\";\r\n if (userId === null)\r\n throw new Error(\"The parameter 'userId' cannot be null.\");\r\n else if (userId !== undefined)\r\n url_ += \"UserId=\" + encodeURIComponent(\"\" + userId) + \"&\";\r\n if (tenantId === null)\r\n throw new Error(\"The parameter 'tenantId' cannot be null.\");\r\n else if (tenantId !== undefined)\r\n url_ += \"TenantId=\" + encodeURIComponent(\"\" + tenantId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRemoveFriend(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRemoveFriend(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRemoveFriend(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class HostDashboardServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @return Success\r\n */\r\n getTopStatsData(startDate: DateTime | undefined, endDate: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostDashboard/GetTopStatsData?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTopStatsData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTopStatsData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTopStatsData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = TopStatsData.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getRecentTenantsData(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostDashboard/GetRecentTenantsData\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetRecentTenantsData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetRecentTenantsData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetRecentTenantsData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetRecentTenantsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getSubscriptionExpiringTenantsData(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostDashboard/GetSubscriptionExpiringTenantsData\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSubscriptionExpiringTenantsData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSubscriptionExpiringTenantsData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSubscriptionExpiringTenantsData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetExpiringTenantsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @return Success\r\n */\r\n getIncomeStatistics(incomeStatisticsDateInterval: ChartDateInterval, startDate: DateTime | undefined, endDate: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostDashboard/GetIncomeStatistics?\";\r\n if (incomeStatisticsDateInterval === undefined || incomeStatisticsDateInterval === null)\r\n throw new Error(\"The parameter 'incomeStatisticsDateInterval' must be defined and cannot be null.\");\r\n else\r\n url_ += \"IncomeStatisticsDateInterval=\" + encodeURIComponent(\"\" + incomeStatisticsDateInterval) + \"&\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetIncomeStatistics(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetIncomeStatistics(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetIncomeStatistics(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetIncomeStatisticsDataOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @return Success\r\n */\r\n getEditionTenantStatistics(startDate: DateTime | undefined, endDate: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostDashboard/GetEditionTenantStatistics?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEditionTenantStatistics(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEditionTenantStatistics(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEditionTenantStatistics(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetEditionTenantStatisticsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class HostSettingsServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllSettings(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostSettings/GetAllSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = HostSettingsEditDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateAllSettings(body: HostSettingsEditDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostSettings/UpdateAllSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateAllSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateAllSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateAllSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendTestEmail(body: SendTestEmailInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostSettings/SendTestEmail\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendTestEmail(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendTestEmail(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendTestEmail(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getEnabledSocialLoginSettings(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/HostSettings/GetEnabledSocialLoginSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEnabledSocialLoginSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEnabledSocialLoginSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEnabledSocialLoginSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ExternalLoginSettingsDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class InstallServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n setup(body: InstallDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Install/Setup\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetup(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetup(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetup(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAppSettingsJson(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Install/GetAppSettingsJson\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAppSettingsJson(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAppSettingsJson(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAppSettingsJson(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AppSettingsJsonDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n checkDatabase(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Install/CheckDatabase\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCheckDatabase(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCheckDatabase(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCheckDatabase(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CheckDatabaseOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class InventoryServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @param skipCount (optional) \r\n * @param maxResultCount (optional) \r\n * @return Success\r\n */\r\n getAll(filter: string | undefined, sorting: string | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetAll?\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAll(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAll(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAll(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IPagedResultOfInventoryListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param sorting (optional) \r\n * @param filter (optional) \r\n * @return Success\r\n */\r\n getInventoriesToExcel(sorting: string | undefined, filter: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetInventoriesToExcel?\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInventoriesToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInventoriesToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInventoriesToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @return Success\r\n */\r\n getAllInventoryLotsToExcel(filter: string | undefined, sorting: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetAllInventoryLotsToExcel?\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllInventoryLotsToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllInventoryLotsToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllInventoryLotsToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n get(id: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/Get?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGet(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = InventoryDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param externalClientId (optional) \r\n * @param externalItemId (optional) \r\n * @param sorting (optional) \r\n * @param skipCount (optional) \r\n * @param maxResultCount (optional) \r\n * @return Success\r\n */\r\n getInventoryLots(externalClientId: string | undefined, externalItemId: string | undefined, sorting: string | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetInventoryLots?\";\r\n if (externalClientId === null)\r\n throw new Error(\"The parameter 'externalClientId' cannot be null.\");\r\n else if (externalClientId !== undefined)\r\n url_ += \"ExternalClientId=\" + encodeURIComponent(\"\" + externalClientId) + \"&\";\r\n if (externalItemId === null)\r\n throw new Error(\"The parameter 'externalItemId' cannot be null.\");\r\n else if (externalItemId !== undefined)\r\n url_ += \"ExternalItemId=\" + encodeURIComponent(\"\" + externalItemId) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInventoryLots(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInventoryLots(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInventoryLots(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IPagedResultOfInventoryLotListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param externalClientId (optional) \r\n * @param externalItemId (optional) \r\n * @return Success\r\n */\r\n getAllInventoryLots(externalClientId: string | undefined, externalItemId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetAllInventoryLots?\";\r\n if (externalClientId === null)\r\n throw new Error(\"The parameter 'externalClientId' cannot be null.\");\r\n else if (externalClientId !== undefined)\r\n url_ += \"ExternalClientId=\" + encodeURIComponent(\"\" + externalClientId) + \"&\";\r\n if (externalItemId === null)\r\n throw new Error(\"The parameter 'externalItemId' cannot be null.\");\r\n else if (externalItemId !== undefined)\r\n url_ += \"ExternalItemId=\" + encodeURIComponent(\"\" + externalItemId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllInventoryLots(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllInventoryLots(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllInventoryLots(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfInventoryPalletSummaryListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param externalClientId (optional) \r\n * @param lodNumber (optional) \r\n * @return Success\r\n */\r\n getInventoryLotDetails(externalClientId: string | undefined, lodNumber: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetInventoryLotDetails?\";\r\n if (externalClientId === null)\r\n throw new Error(\"The parameter 'externalClientId' cannot be null.\");\r\n else if (externalClientId !== undefined)\r\n url_ += \"ExternalClientId=\" + encodeURIComponent(\"\" + externalClientId) + \"&\";\r\n if (lodNumber === null)\r\n throw new Error(\"The parameter 'lodNumber' cannot be null.\");\r\n else if (lodNumber !== undefined)\r\n url_ += \"LodNumber=\" + encodeURIComponent(\"\" + lodNumber) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInventoryLotDetails(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInventoryLotDetails(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInventoryLotDetails(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfInventoryPalletDetailsListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param externalClientId (optional) \r\n * @param externalItemId (optional) \r\n * @param sorting (optional) \r\n * @return Success\r\n */\r\n getInventoryLotsToExcel(externalClientId: string | undefined, externalItemId: string | undefined, sorting: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetInventoryLotsToExcel?\";\r\n if (externalClientId === null)\r\n throw new Error(\"The parameter 'externalClientId' cannot be null.\");\r\n else if (externalClientId !== undefined)\r\n url_ += \"ExternalClientId=\" + encodeURIComponent(\"\" + externalClientId) + \"&\";\r\n if (externalItemId === null)\r\n throw new Error(\"The parameter 'externalItemId' cannot be null.\");\r\n else if (externalItemId !== undefined)\r\n url_ += \"ExternalItemId=\" + encodeURIComponent(\"\" + externalItemId) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInventoryLotsToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInventoryLotsToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInventoryLotsToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getSynchronizationInformation(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetSynchronizationInformation\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSynchronizationInformation(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSynchronizationInformation(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSynchronizationInformation(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = InventorySynchronizationInformationDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param externalClientId (optional) \r\n * @param externalItemId (optional) \r\n * @return Success\r\n */\r\n getOrderInventoryBasic(externalClientId: string | undefined, externalItemId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetOrderInventoryBasic?\";\r\n if (externalClientId === null)\r\n throw new Error(\"The parameter 'externalClientId' cannot be null.\");\r\n else if (externalClientId !== undefined)\r\n url_ += \"externalClientId=\" + encodeURIComponent(\"\" + externalClientId) + \"&\";\r\n if (externalItemId === null)\r\n throw new Error(\"The parameter 'externalItemId' cannot be null.\");\r\n else if (externalItemId !== undefined)\r\n url_ += \"externalItemId=\" + encodeURIComponent(\"\" + externalItemId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrderInventoryBasic(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrderInventoryBasic(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOrderInventoryBasic(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = OrderInventoryBasicDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @param warehouseId (optional) \r\n * @param itemId (optional) \r\n * @param from (optional) \r\n * @param to (optional) \r\n * @return Success\r\n */\r\n getInventoryActivity(clientId: number | undefined, warehouseId: number | undefined, itemId: number | undefined, from: DateTime | undefined, to: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetInventoryActivity?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"clientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n if (warehouseId === null)\r\n throw new Error(\"The parameter 'warehouseId' cannot be null.\");\r\n else if (warehouseId !== undefined)\r\n url_ += \"warehouseId=\" + encodeURIComponent(\"\" + warehouseId) + \"&\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"itemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (from === null)\r\n throw new Error(\"The parameter 'from' cannot be null.\");\r\n else if (from !== undefined)\r\n url_ += \"from=\" + encodeURIComponent(from ? \"\" + from.toString() : \"\") + \"&\";\r\n if (to === null)\r\n throw new Error(\"The parameter 'to' cannot be null.\");\r\n else if (to !== undefined)\r\n url_ += \"to=\" + encodeURIComponent(to ? \"\" + to.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInventoryActivity(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInventoryActivity(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInventoryActivity(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(InventoryActivityDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getOrderInventoryBasicAll(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetOrderInventoryBasicAll\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrderInventoryBasicAll(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrderInventoryBasicAll(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOrderInventoryBasicAll(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrderInventoryBasicDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getOrderInventoryAdvancedAll(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetOrderInventoryAdvancedAll\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrderInventoryAdvancedAll(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrderInventoryAdvancedAll(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOrderInventoryAdvancedAll(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrderInventoryAdvancedDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientExternalId (optional) \r\n * @param itemExternalId (optional) \r\n * @return Success\r\n */\r\n getPendingOrderLines(clientExternalId: string | undefined, itemExternalId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetPendingOrderLines?\";\r\n if (clientExternalId === null)\r\n throw new Error(\"The parameter 'clientExternalId' cannot be null.\");\r\n else if (clientExternalId !== undefined)\r\n url_ += \"clientExternalId=\" + encodeURIComponent(\"\" + clientExternalId) + \"&\";\r\n if (itemExternalId === null)\r\n throw new Error(\"The parameter 'itemExternalId' cannot be null.\");\r\n else if (itemExternalId !== undefined)\r\n url_ += \"itemExternalId=\" + encodeURIComponent(\"\" + itemExternalId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPendingOrderLines(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPendingOrderLines(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPendingOrderLines(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(PendingOrderLineListDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getClients(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetClients\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetClients(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetClients(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetClients(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrganizationConnectionItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getWarehouses(clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetWarehouses?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetWarehouses(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetWarehouses(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetWarehouses(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrganizationConnectionItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getItems(clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Inventory/GetItems?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetItems(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetItems(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetItems(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfInboundShipmentAvailableItemDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class InvoiceServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getInvoiceInfo(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Invoice/GetInvoiceInfo?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInvoiceInfo(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInvoiceInfo(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInvoiceInfo(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = InvoiceDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createInvoice(body: CreateInvoiceDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Invoice/CreateInvoice\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateInvoice(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateInvoice(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateInvoice(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class ItemServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllItemMaster(clientIds: number[]): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Item/GetAllItemMaster?\";\r\n if (clientIds === undefined || clientIds === null)\r\n throw new Error(\"The parameter 'clientIds' must be defined and cannot be null.\");\r\n else\r\n clientIds && clientIds.forEach(item => { url_ += \"ClientIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllItemMaster(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllItemMaster(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllItemMaster(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ItemMasterQueryListDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class LanguageServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getLanguages(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Language/GetLanguages\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLanguages(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLanguages(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLanguages(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetLanguagesOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getLanguageForEdit(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Language/GetLanguageForEdit?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLanguageForEdit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLanguageForEdit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLanguageForEdit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetLanguageForEditOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createOrUpdateLanguage(body: CreateOrUpdateLanguageInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Language/CreateOrUpdateLanguage\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateOrUpdateLanguage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateOrUpdateLanguage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateOrUpdateLanguage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n deleteLanguage(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Language/DeleteLanguage?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteLanguage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteLanguage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteLanguage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n setDefaultLanguage(body: SetDefaultLanguageInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Language/SetDefaultLanguage\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetDefaultLanguage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetDefaultLanguage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetDefaultLanguage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @param sorting (optional) \r\n * @param baseLanguageName (optional) \r\n * @param targetValueFilter (optional) \r\n * @param filterText (optional) \r\n * @return Success\r\n */\r\n getLanguageTexts(maxResultCount: number | undefined, skipCount: number | undefined, sorting: string | undefined, sourceName: string, baseLanguageName: string | undefined, targetLanguageName: string, targetValueFilter: string | undefined, filterText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Language/GetLanguageTexts?\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (sourceName === undefined || sourceName === null)\r\n throw new Error(\"The parameter 'sourceName' must be defined and cannot be null.\");\r\n else\r\n url_ += \"SourceName=\" + encodeURIComponent(\"\" + sourceName) + \"&\";\r\n if (baseLanguageName === null)\r\n throw new Error(\"The parameter 'baseLanguageName' cannot be null.\");\r\n else if (baseLanguageName !== undefined)\r\n url_ += \"BaseLanguageName=\" + encodeURIComponent(\"\" + baseLanguageName) + \"&\";\r\n if (targetLanguageName === undefined || targetLanguageName === null)\r\n throw new Error(\"The parameter 'targetLanguageName' must be defined and cannot be null.\");\r\n else\r\n url_ += \"TargetLanguageName=\" + encodeURIComponent(\"\" + targetLanguageName) + \"&\";\r\n if (targetValueFilter === null)\r\n throw new Error(\"The parameter 'targetValueFilter' cannot be null.\");\r\n else if (targetValueFilter !== undefined)\r\n url_ += \"TargetValueFilter=\" + encodeURIComponent(\"\" + targetValueFilter) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLanguageTexts(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLanguageTexts(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLanguageTexts(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfLanguageTextListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateLanguageText(body: UpdateLanguageTextInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Language/UpdateLanguageText\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateLanguageText(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateLanguageText(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateLanguageText(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class NotificationServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param state (optional) \r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getUserNotifications(state: UserNotificationState | undefined, startDate: DateTime | undefined, endDate: DateTime | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/GetUserNotifications?\";\r\n if (state === null)\r\n throw new Error(\"The parameter 'state' cannot be null.\");\r\n else if (state !== undefined)\r\n url_ += \"State=\" + encodeURIComponent(\"\" + state) + \"&\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUserNotifications(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUserNotifications(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUserNotifications(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetNotificationsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n setAllNotificationsAsRead(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/SetAllNotificationsAsRead\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetAllNotificationsAsRead(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetAllNotificationsAsRead(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetAllNotificationsAsRead(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n setNotificationAsRead(body: EntityDtoOfGuid | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/SetNotificationAsRead\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetNotificationAsRead(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetNotificationAsRead(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetNotificationAsRead(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SetNotificationAsReadOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getNotificationSettings(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/GetNotificationSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetNotificationSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetNotificationSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetNotificationSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetNotificationSettingsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateNotificationSettings(body: UpdateNotificationSettingsInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/UpdateNotificationSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateNotificationSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateNotificationSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateNotificationSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n deleteNotification(id: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/DeleteNotification?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteNotification(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteNotification(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteNotification(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param state (optional) \r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @return Success\r\n */\r\n deleteAllUserNotifications(state: UserNotificationState | undefined, startDate: DateTime | undefined, endDate: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/DeleteAllUserNotifications?\";\r\n if (state === null)\r\n throw new Error(\"The parameter 'state' cannot be null.\");\r\n else if (state !== undefined)\r\n url_ += \"State=\" + encodeURIComponent(\"\" + state) + \"&\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteAllUserNotifications(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteAllUserNotifications(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteAllUserNotifications(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @param skipCount (optional) \r\n * @param maxResultCount (optional) \r\n * @return Success\r\n */\r\n getAllUserForLookupTable(filter: string | undefined, sorting: string | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/GetAllUserForLookupTable?\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllUserForLookupTable(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllUserForLookupTable(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllUserForLookupTable(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfMassNotificationUserLookupTableDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @param skipCount (optional) \r\n * @param maxResultCount (optional) \r\n * @return Success\r\n */\r\n getAllOrganizationUnitForLookupTable(filter: string | undefined, sorting: string | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/GetAllOrganizationUnitForLookupTable?\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllOrganizationUnitForLookupTable(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllOrganizationUnitForLookupTable(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllOrganizationUnitForLookupTable(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfMassNotificationOrganizationUnitLookupTableDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createMassNotification(body: CreateMassNotificationInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/CreateMassNotification\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateMassNotification(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateMassNotification(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateMassNotification(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllNotifiers(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/GetAllNotifiers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllNotifiers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllNotifiers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllNotifiers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(item);\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @return Success\r\n */\r\n getNotificationsPublishedByUser(startDate: DateTime | undefined, endDate: DateTime | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Notification/GetNotificationsPublishedByUser?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetNotificationsPublishedByUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetNotificationsPublishedByUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetNotificationsPublishedByUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetPublishedNotificationsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class OrderServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getCarriers(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetCarriers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCarriers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCarriers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCarriers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrganizationConnectionItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getClients(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetClients\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetClients(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetClients(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetClients(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrganizationConnectionItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @param withAddress (optional) \r\n * @return Success\r\n */\r\n getCustomers(clientId: number | undefined, withAddress: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetCustomers?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n if (withAddress === null)\r\n throw new Error(\"The parameter 'withAddress' cannot be null.\");\r\n else if (withAddress !== undefined)\r\n url_ += \"WithAddress=\" + encodeURIComponent(\"\" + withAddress) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCustomers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCustomers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCustomers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrganizationConnectionItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getWarehouses(clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetWarehouses?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetWarehouses(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetWarehouses(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetWarehouses(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrganizationConnectionItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getUnassignedCount(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetUnassignedCount\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUnassignedCount(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUnassignedCount(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUnassignedCount(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param aptFromDate (optional) \r\n * @param aptToDate (optional) \r\n * @param status (optional) \r\n * @param type (optional) \r\n * @param hasAppointment (optional) \r\n * @param clientIds (optional) \r\n * @param warehouseFromIds (optional) \r\n * @param warehouseToIds (optional) \r\n * @param customerIds (optional) \r\n * @param carrierIds (optional) \r\n * @param viewAsCarrier (optional) \r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getUnassigned(fromDate: DateTime | undefined, toDate: DateTime | undefined, aptFromDate: DateTime | undefined, aptToDate: DateTime | undefined, status: ShipmentStatus[] | undefined, type: ShipmentType | undefined, hasAppointment: boolean | undefined, clientIds: number[] | undefined, warehouseFromIds: number[] | undefined, warehouseToIds: number[] | undefined, customerIds: number[] | undefined, carrierIds: number[] | undefined, viewAsCarrier: boolean | undefined, filter: string | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetUnassigned?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toString() : \"\") + \"&\";\r\n if (aptFromDate === null)\r\n throw new Error(\"The parameter 'aptFromDate' cannot be null.\");\r\n else if (aptFromDate !== undefined)\r\n url_ += \"AptFromDate=\" + encodeURIComponent(aptFromDate ? \"\" + aptFromDate.toString() : \"\") + \"&\";\r\n if (aptToDate === null)\r\n throw new Error(\"The parameter 'aptToDate' cannot be null.\");\r\n else if (aptToDate !== undefined)\r\n url_ += \"AptToDate=\" + encodeURIComponent(aptToDate ? \"\" + aptToDate.toString() : \"\") + \"&\";\r\n if (status === null)\r\n throw new Error(\"The parameter 'status' cannot be null.\");\r\n else if (status !== undefined)\r\n status && status.forEach(item => { url_ += \"Status=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (type === null)\r\n throw new Error(\"The parameter 'type' cannot be null.\");\r\n else if (type !== undefined)\r\n url_ += \"Type=\" + encodeURIComponent(\"\" + type) + \"&\";\r\n if (hasAppointment === null)\r\n throw new Error(\"The parameter 'hasAppointment' cannot be null.\");\r\n else if (hasAppointment !== undefined)\r\n url_ += \"HasAppointment=\" + encodeURIComponent(\"\" + hasAppointment) + \"&\";\r\n if (clientIds === null)\r\n throw new Error(\"The parameter 'clientIds' cannot be null.\");\r\n else if (clientIds !== undefined)\r\n clientIds && clientIds.forEach(item => { url_ += \"ClientIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseFromIds === null)\r\n throw new Error(\"The parameter 'warehouseFromIds' cannot be null.\");\r\n else if (warehouseFromIds !== undefined)\r\n warehouseFromIds && warehouseFromIds.forEach(item => { url_ += \"WarehouseFromIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseToIds === null)\r\n throw new Error(\"The parameter 'warehouseToIds' cannot be null.\");\r\n else if (warehouseToIds !== undefined)\r\n warehouseToIds && warehouseToIds.forEach(item => { url_ += \"WarehouseToIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (customerIds === null)\r\n throw new Error(\"The parameter 'customerIds' cannot be null.\");\r\n else if (customerIds !== undefined)\r\n customerIds && customerIds.forEach(item => { url_ += \"CustomerIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (carrierIds === null)\r\n throw new Error(\"The parameter 'carrierIds' cannot be null.\");\r\n else if (carrierIds !== undefined)\r\n carrierIds && carrierIds.forEach(item => { url_ += \"CarrierIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (viewAsCarrier === null)\r\n throw new Error(\"The parameter 'viewAsCarrier' cannot be null.\");\r\n else if (viewAsCarrier !== undefined)\r\n url_ += \"ViewAsCarrier=\" + encodeURIComponent(\"\" + viewAsCarrier) + \"&\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUnassigned(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUnassigned(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUnassigned(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfOrderListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param aptFromDate (optional) \r\n * @param aptToDate (optional) \r\n * @param status (optional) \r\n * @param type (optional) \r\n * @param hasAppointment (optional) \r\n * @param clientIds (optional) \r\n * @param warehouseFromIds (optional) \r\n * @param warehouseToIds (optional) \r\n * @param customerIds (optional) \r\n * @param carrierIds (optional) \r\n * @param viewAsCarrier (optional) \r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getAll(fromDate: DateTime | undefined, toDate: DateTime | undefined, aptFromDate: DateTime | undefined, aptToDate: DateTime | undefined, status: ShipmentStatus[] | undefined, type: ShipmentType | undefined, hasAppointment: boolean | undefined, clientIds: number[] | undefined, warehouseFromIds: number[] | undefined, warehouseToIds: number[] | undefined, customerIds: number[] | undefined, carrierIds: number[] | undefined, viewAsCarrier: boolean | undefined, filter: string | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetAll?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toString() : \"\") + \"&\";\r\n if (aptFromDate === null)\r\n throw new Error(\"The parameter 'aptFromDate' cannot be null.\");\r\n else if (aptFromDate !== undefined)\r\n url_ += \"AptFromDate=\" + encodeURIComponent(aptFromDate ? \"\" + aptFromDate.toString() : \"\") + \"&\";\r\n if (aptToDate === null)\r\n throw new Error(\"The parameter 'aptToDate' cannot be null.\");\r\n else if (aptToDate !== undefined)\r\n url_ += \"AptToDate=\" + encodeURIComponent(aptToDate ? \"\" + aptToDate.toString() : \"\") + \"&\";\r\n if (status === null)\r\n throw new Error(\"The parameter 'status' cannot be null.\");\r\n else if (status !== undefined)\r\n status && status.forEach(item => { url_ += \"Status=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (type === null)\r\n throw new Error(\"The parameter 'type' cannot be null.\");\r\n else if (type !== undefined)\r\n url_ += \"Type=\" + encodeURIComponent(\"\" + type) + \"&\";\r\n if (hasAppointment === null)\r\n throw new Error(\"The parameter 'hasAppointment' cannot be null.\");\r\n else if (hasAppointment !== undefined)\r\n url_ += \"HasAppointment=\" + encodeURIComponent(\"\" + hasAppointment) + \"&\";\r\n if (clientIds === null)\r\n throw new Error(\"The parameter 'clientIds' cannot be null.\");\r\n else if (clientIds !== undefined)\r\n clientIds && clientIds.forEach(item => { url_ += \"ClientIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseFromIds === null)\r\n throw new Error(\"The parameter 'warehouseFromIds' cannot be null.\");\r\n else if (warehouseFromIds !== undefined)\r\n warehouseFromIds && warehouseFromIds.forEach(item => { url_ += \"WarehouseFromIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseToIds === null)\r\n throw new Error(\"The parameter 'warehouseToIds' cannot be null.\");\r\n else if (warehouseToIds !== undefined)\r\n warehouseToIds && warehouseToIds.forEach(item => { url_ += \"WarehouseToIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (customerIds === null)\r\n throw new Error(\"The parameter 'customerIds' cannot be null.\");\r\n else if (customerIds !== undefined)\r\n customerIds && customerIds.forEach(item => { url_ += \"CustomerIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (carrierIds === null)\r\n throw new Error(\"The parameter 'carrierIds' cannot be null.\");\r\n else if (carrierIds !== undefined)\r\n carrierIds && carrierIds.forEach(item => { url_ += \"CarrierIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (viewAsCarrier === null)\r\n throw new Error(\"The parameter 'viewAsCarrier' cannot be null.\");\r\n else if (viewAsCarrier !== undefined)\r\n url_ += \"ViewAsCarrier=\" + encodeURIComponent(\"\" + viewAsCarrier) + \"&\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAll(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAll(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAll(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfOrderListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @param viewForCarier (optional) \r\n * @return Success\r\n */\r\n get(id: number | undefined, viewForCarier: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/Get?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (viewForCarier === null)\r\n throw new Error(\"The parameter 'viewForCarier' cannot be null.\");\r\n else if (viewForCarier !== undefined)\r\n url_ += \"viewForCarier=\" + encodeURIComponent(\"\" + viewForCarier) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGet(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = OrderDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n editCarrier(body: EditCarrierInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/EditCarrier\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditCarrier(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditCarrier(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditCarrier(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateOrderLines(body: UpdateOrderLinesInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/UpdateOrderLines\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateOrderLines(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateOrderLines(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateOrderLines(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n claimShipment(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/ClaimShipment?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processClaimShipment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processClaimShipment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processClaimShipment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param aptFromDate (optional) \r\n * @param aptToDate (optional) \r\n * @param status (optional) \r\n * @param type (optional) \r\n * @param hasAppointment (optional) \r\n * @param clientIds (optional) \r\n * @param warehouseFromIds (optional) \r\n * @param warehouseToIds (optional) \r\n * @param customerIds (optional) \r\n * @param carrierIds (optional) \r\n * @param viewAsCarrier (optional) \r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getAllQueryable(fromDate: DateTime | undefined, toDate: DateTime | undefined, aptFromDate: DateTime | undefined, aptToDate: DateTime | undefined, status: ShipmentStatus[] | undefined, type: ShipmentType | undefined, hasAppointment: boolean | undefined, clientIds: number[] | undefined, warehouseFromIds: number[] | undefined, warehouseToIds: number[] | undefined, customerIds: number[] | undefined, carrierIds: number[] | undefined, viewAsCarrier: boolean | undefined, filter: string | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetAllQueryable?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toString() : \"\") + \"&\";\r\n if (aptFromDate === null)\r\n throw new Error(\"The parameter 'aptFromDate' cannot be null.\");\r\n else if (aptFromDate !== undefined)\r\n url_ += \"AptFromDate=\" + encodeURIComponent(aptFromDate ? \"\" + aptFromDate.toString() : \"\") + \"&\";\r\n if (aptToDate === null)\r\n throw new Error(\"The parameter 'aptToDate' cannot be null.\");\r\n else if (aptToDate !== undefined)\r\n url_ += \"AptToDate=\" + encodeURIComponent(aptToDate ? \"\" + aptToDate.toString() : \"\") + \"&\";\r\n if (status === null)\r\n throw new Error(\"The parameter 'status' cannot be null.\");\r\n else if (status !== undefined)\r\n status && status.forEach(item => { url_ += \"Status=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (type === null)\r\n throw new Error(\"The parameter 'type' cannot be null.\");\r\n else if (type !== undefined)\r\n url_ += \"Type=\" + encodeURIComponent(\"\" + type) + \"&\";\r\n if (hasAppointment === null)\r\n throw new Error(\"The parameter 'hasAppointment' cannot be null.\");\r\n else if (hasAppointment !== undefined)\r\n url_ += \"HasAppointment=\" + encodeURIComponent(\"\" + hasAppointment) + \"&\";\r\n if (clientIds === null)\r\n throw new Error(\"The parameter 'clientIds' cannot be null.\");\r\n else if (clientIds !== undefined)\r\n clientIds && clientIds.forEach(item => { url_ += \"ClientIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseFromIds === null)\r\n throw new Error(\"The parameter 'warehouseFromIds' cannot be null.\");\r\n else if (warehouseFromIds !== undefined)\r\n warehouseFromIds && warehouseFromIds.forEach(item => { url_ += \"WarehouseFromIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseToIds === null)\r\n throw new Error(\"The parameter 'warehouseToIds' cannot be null.\");\r\n else if (warehouseToIds !== undefined)\r\n warehouseToIds && warehouseToIds.forEach(item => { url_ += \"WarehouseToIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (customerIds === null)\r\n throw new Error(\"The parameter 'customerIds' cannot be null.\");\r\n else if (customerIds !== undefined)\r\n customerIds && customerIds.forEach(item => { url_ += \"CustomerIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (carrierIds === null)\r\n throw new Error(\"The parameter 'carrierIds' cannot be null.\");\r\n else if (carrierIds !== undefined)\r\n carrierIds && carrierIds.forEach(item => { url_ += \"CarrierIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (viewAsCarrier === null)\r\n throw new Error(\"The parameter 'viewAsCarrier' cannot be null.\");\r\n else if (viewAsCarrier !== undefined)\r\n url_ += \"ViewAsCarrier=\" + encodeURIComponent(\"\" + viewAsCarrier) + \"&\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllQueryable(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllQueryable(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllQueryable(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Order.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param aptFromDate (optional) \r\n * @param aptToDate (optional) \r\n * @param status (optional) \r\n * @param type (optional) \r\n * @param hasAppointment (optional) \r\n * @param clientIds (optional) \r\n * @param warehouseFromIds (optional) \r\n * @param warehouseToIds (optional) \r\n * @param customerIds (optional) \r\n * @param carrierIds (optional) \r\n * @param viewAsCarrier (optional) \r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getOrdersToExcel(fromDate: DateTime | undefined, toDate: DateTime | undefined, aptFromDate: DateTime | undefined, aptToDate: DateTime | undefined, status: ShipmentStatus[] | undefined, type: ShipmentType | undefined, hasAppointment: boolean | undefined, clientIds: number[] | undefined, warehouseFromIds: number[] | undefined, warehouseToIds: number[] | undefined, customerIds: number[] | undefined, carrierIds: number[] | undefined, viewAsCarrier: boolean | undefined, filter: string | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetOrdersToExcel?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toString() : \"\") + \"&\";\r\n if (aptFromDate === null)\r\n throw new Error(\"The parameter 'aptFromDate' cannot be null.\");\r\n else if (aptFromDate !== undefined)\r\n url_ += \"AptFromDate=\" + encodeURIComponent(aptFromDate ? \"\" + aptFromDate.toString() : \"\") + \"&\";\r\n if (aptToDate === null)\r\n throw new Error(\"The parameter 'aptToDate' cannot be null.\");\r\n else if (aptToDate !== undefined)\r\n url_ += \"AptToDate=\" + encodeURIComponent(aptToDate ? \"\" + aptToDate.toString() : \"\") + \"&\";\r\n if (status === null)\r\n throw new Error(\"The parameter 'status' cannot be null.\");\r\n else if (status !== undefined)\r\n status && status.forEach(item => { url_ += \"Status=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (type === null)\r\n throw new Error(\"The parameter 'type' cannot be null.\");\r\n else if (type !== undefined)\r\n url_ += \"Type=\" + encodeURIComponent(\"\" + type) + \"&\";\r\n if (hasAppointment === null)\r\n throw new Error(\"The parameter 'hasAppointment' cannot be null.\");\r\n else if (hasAppointment !== undefined)\r\n url_ += \"HasAppointment=\" + encodeURIComponent(\"\" + hasAppointment) + \"&\";\r\n if (clientIds === null)\r\n throw new Error(\"The parameter 'clientIds' cannot be null.\");\r\n else if (clientIds !== undefined)\r\n clientIds && clientIds.forEach(item => { url_ += \"ClientIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseFromIds === null)\r\n throw new Error(\"The parameter 'warehouseFromIds' cannot be null.\");\r\n else if (warehouseFromIds !== undefined)\r\n warehouseFromIds && warehouseFromIds.forEach(item => { url_ += \"WarehouseFromIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseToIds === null)\r\n throw new Error(\"The parameter 'warehouseToIds' cannot be null.\");\r\n else if (warehouseToIds !== undefined)\r\n warehouseToIds && warehouseToIds.forEach(item => { url_ += \"WarehouseToIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (customerIds === null)\r\n throw new Error(\"The parameter 'customerIds' cannot be null.\");\r\n else if (customerIds !== undefined)\r\n customerIds && customerIds.forEach(item => { url_ += \"CustomerIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (carrierIds === null)\r\n throw new Error(\"The parameter 'carrierIds' cannot be null.\");\r\n else if (carrierIds !== undefined)\r\n carrierIds && carrierIds.forEach(item => { url_ += \"CarrierIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (viewAsCarrier === null)\r\n throw new Error(\"The parameter 'viewAsCarrier' cannot be null.\");\r\n else if (viewAsCarrier !== undefined)\r\n url_ += \"ViewAsCarrier=\" + encodeURIComponent(\"\" + viewAsCarrier) + \"&\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrdersToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrdersToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOrdersToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param aptFromDate (optional) \r\n * @param aptToDate (optional) \r\n * @param status (optional) \r\n * @param type (optional) \r\n * @param hasAppointment (optional) \r\n * @param clientIds (optional) \r\n * @param warehouseFromIds (optional) \r\n * @param warehouseToIds (optional) \r\n * @param customerIds (optional) \r\n * @param carrierIds (optional) \r\n * @param viewAsCarrier (optional) \r\n * @param filter (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getAppointmentsToExcel(fromDate: DateTime | undefined, toDate: DateTime | undefined, aptFromDate: DateTime | undefined, aptToDate: DateTime | undefined, status: ShipmentStatus[] | undefined, type: ShipmentType | undefined, hasAppointment: boolean | undefined, clientIds: number[] | undefined, warehouseFromIds: number[] | undefined, warehouseToIds: number[] | undefined, customerIds: number[] | undefined, carrierIds: number[] | undefined, viewAsCarrier: boolean | undefined, filter: string | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Order/GetAppointmentsToExcel?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toString() : \"\") + \"&\";\r\n if (aptFromDate === null)\r\n throw new Error(\"The parameter 'aptFromDate' cannot be null.\");\r\n else if (aptFromDate !== undefined)\r\n url_ += \"AptFromDate=\" + encodeURIComponent(aptFromDate ? \"\" + aptFromDate.toString() : \"\") + \"&\";\r\n if (aptToDate === null)\r\n throw new Error(\"The parameter 'aptToDate' cannot be null.\");\r\n else if (aptToDate !== undefined)\r\n url_ += \"AptToDate=\" + encodeURIComponent(aptToDate ? \"\" + aptToDate.toString() : \"\") + \"&\";\r\n if (status === null)\r\n throw new Error(\"The parameter 'status' cannot be null.\");\r\n else if (status !== undefined)\r\n status && status.forEach(item => { url_ += \"Status=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (type === null)\r\n throw new Error(\"The parameter 'type' cannot be null.\");\r\n else if (type !== undefined)\r\n url_ += \"Type=\" + encodeURIComponent(\"\" + type) + \"&\";\r\n if (hasAppointment === null)\r\n throw new Error(\"The parameter 'hasAppointment' cannot be null.\");\r\n else if (hasAppointment !== undefined)\r\n url_ += \"HasAppointment=\" + encodeURIComponent(\"\" + hasAppointment) + \"&\";\r\n if (clientIds === null)\r\n throw new Error(\"The parameter 'clientIds' cannot be null.\");\r\n else if (clientIds !== undefined)\r\n clientIds && clientIds.forEach(item => { url_ += \"ClientIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseFromIds === null)\r\n throw new Error(\"The parameter 'warehouseFromIds' cannot be null.\");\r\n else if (warehouseFromIds !== undefined)\r\n warehouseFromIds && warehouseFromIds.forEach(item => { url_ += \"WarehouseFromIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (warehouseToIds === null)\r\n throw new Error(\"The parameter 'warehouseToIds' cannot be null.\");\r\n else if (warehouseToIds !== undefined)\r\n warehouseToIds && warehouseToIds.forEach(item => { url_ += \"WarehouseToIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (customerIds === null)\r\n throw new Error(\"The parameter 'customerIds' cannot be null.\");\r\n else if (customerIds !== undefined)\r\n customerIds && customerIds.forEach(item => { url_ += \"CustomerIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (carrierIds === null)\r\n throw new Error(\"The parameter 'carrierIds' cannot be null.\");\r\n else if (carrierIds !== undefined)\r\n carrierIds && carrierIds.forEach(item => { url_ += \"CarrierIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (viewAsCarrier === null)\r\n throw new Error(\"The parameter 'viewAsCarrier' cannot be null.\");\r\n else if (viewAsCarrier !== undefined)\r\n url_ += \"ViewAsCarrier=\" + encodeURIComponent(\"\" + viewAsCarrier) + \"&\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAppointmentsToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAppointmentsToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAppointmentsToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class OrganizationUnitServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getOrganizationUnits(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/GetOrganizationUnits\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrganizationUnits(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrganizationUnits(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOrganizationUnits(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfOrganizationUnitDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getOrganizationUnitUsers(id: number | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/GetOrganizationUnitUsers?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrganizationUnitUsers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrganizationUnitUsers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOrganizationUnitUsers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfOrganizationUnitUserListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getOrganizationUnitRoles(id: number | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/GetOrganizationUnitRoles?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrganizationUnitRoles(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrganizationUnitRoles(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOrganizationUnitRoles(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfOrganizationUnitRoleListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createOrganizationUnit(body: CreateOrganizationUnitInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/CreateOrganizationUnit\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateOrganizationUnit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateOrganizationUnit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateOrganizationUnit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = OrganizationUnitDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateOrganizationUnit(body: UpdateOrganizationUnitInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/UpdateOrganizationUnit\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateOrganizationUnit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateOrganizationUnit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateOrganizationUnit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = OrganizationUnitDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n moveOrganizationUnit(body: MoveOrganizationUnitInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/MoveOrganizationUnit\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMoveOrganizationUnit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMoveOrganizationUnit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMoveOrganizationUnit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = OrganizationUnitDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n deleteOrganizationUnit(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/DeleteOrganizationUnit?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteOrganizationUnit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteOrganizationUnit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteOrganizationUnit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param userId (optional) \r\n * @param organizationUnitId (optional) \r\n * @return Success\r\n */\r\n removeUserFromOrganizationUnit(userId: number | undefined, organizationUnitId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/RemoveUserFromOrganizationUnit?\";\r\n if (userId === null)\r\n throw new Error(\"The parameter 'userId' cannot be null.\");\r\n else if (userId !== undefined)\r\n url_ += \"UserId=\" + encodeURIComponent(\"\" + userId) + \"&\";\r\n if (organizationUnitId === null)\r\n throw new Error(\"The parameter 'organizationUnitId' cannot be null.\");\r\n else if (organizationUnitId !== undefined)\r\n url_ += \"OrganizationUnitId=\" + encodeURIComponent(\"\" + organizationUnitId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRemoveUserFromOrganizationUnit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRemoveUserFromOrganizationUnit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRemoveUserFromOrganizationUnit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param roleId (optional) \r\n * @param organizationUnitId (optional) \r\n * @return Success\r\n */\r\n removeRoleFromOrganizationUnit(roleId: number | undefined, organizationUnitId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/RemoveRoleFromOrganizationUnit?\";\r\n if (roleId === null)\r\n throw new Error(\"The parameter 'roleId' cannot be null.\");\r\n else if (roleId !== undefined)\r\n url_ += \"RoleId=\" + encodeURIComponent(\"\" + roleId) + \"&\";\r\n if (organizationUnitId === null)\r\n throw new Error(\"The parameter 'organizationUnitId' cannot be null.\");\r\n else if (organizationUnitId !== undefined)\r\n url_ += \"OrganizationUnitId=\" + encodeURIComponent(\"\" + organizationUnitId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRemoveRoleFromOrganizationUnit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRemoveRoleFromOrganizationUnit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRemoveRoleFromOrganizationUnit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n addUsersToOrganizationUnit(body: UsersToOrganizationUnitInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/AddUsersToOrganizationUnit\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddUsersToOrganizationUnit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddUsersToOrganizationUnit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddUsersToOrganizationUnit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n addRolesToOrganizationUnit(body: RolesToOrganizationUnitInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/AddRolesToOrganizationUnit\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddRolesToOrganizationUnit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddRolesToOrganizationUnit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddRolesToOrganizationUnit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n findUsers(body: FindOrganizationUnitUsersInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/FindUsers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFindUsers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFindUsers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFindUsers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfNameValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n findRoles(body: FindOrganizationUnitRolesInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/OrganizationUnit/FindRoles\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFindRoles(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFindRoles(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFindRoles(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfNameValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class PaymentServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param upgradeEditionId (optional) \r\n * @return Success\r\n */\r\n getPaymentInfo(upgradeEditionId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/GetPaymentInfo?\";\r\n if (upgradeEditionId === null)\r\n throw new Error(\"The parameter 'upgradeEditionId' cannot be null.\");\r\n else if (upgradeEditionId !== undefined)\r\n url_ += \"UpgradeEditionId=\" + encodeURIComponent(\"\" + upgradeEditionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPaymentInfo(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPaymentInfo(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPaymentInfo(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PaymentInfoDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createPayment(body: CreatePaymentDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/CreatePayment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreatePayment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreatePayment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreatePayment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n cancelPayment(body: CancelPaymentDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/CancelPayment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCancelPayment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCancelPayment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCancelPayment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getPaymentHistory(sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/GetPaymentHistory?\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPaymentHistory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPaymentHistory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPaymentHistory(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfSubscriptionPaymentListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param recurringPaymentsEnabled (optional) \r\n * @return Success\r\n */\r\n getActiveGateways(recurringPaymentsEnabled: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/GetActiveGateways?\";\r\n if (recurringPaymentsEnabled === null)\r\n throw new Error(\"The parameter 'recurringPaymentsEnabled' cannot be null.\");\r\n else if (recurringPaymentsEnabled !== undefined)\r\n url_ += \"RecurringPaymentsEnabled=\" + encodeURIComponent(\"\" + recurringPaymentsEnabled) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetActiveGateways(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetActiveGateways(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetActiveGateways(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(PaymentGatewayModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param paymentId (optional) \r\n * @return Success\r\n */\r\n getPayment(paymentId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/GetPayment?\";\r\n if (paymentId === null)\r\n throw new Error(\"The parameter 'paymentId' cannot be null.\");\r\n else if (paymentId !== undefined)\r\n url_ += \"paymentId=\" + encodeURIComponent(\"\" + paymentId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPayment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPayment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPayment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SubscriptionPaymentDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getLastCompletedPayment(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/GetLastCompletedPayment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLastCompletedPayment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLastCompletedPayment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLastCompletedPayment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SubscriptionPaymentDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param paymentId (optional) \r\n * @return Success\r\n */\r\n buyNowSucceed(paymentId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/BuyNowSucceed?\";\r\n if (paymentId === null)\r\n throw new Error(\"The parameter 'paymentId' cannot be null.\");\r\n else if (paymentId !== undefined)\r\n url_ += \"paymentId=\" + encodeURIComponent(\"\" + paymentId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processBuyNowSucceed(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processBuyNowSucceed(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processBuyNowSucceed(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param paymentId (optional) \r\n * @return Success\r\n */\r\n newRegistrationSucceed(paymentId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/NewRegistrationSucceed?\";\r\n if (paymentId === null)\r\n throw new Error(\"The parameter 'paymentId' cannot be null.\");\r\n else if (paymentId !== undefined)\r\n url_ += \"paymentId=\" + encodeURIComponent(\"\" + paymentId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processNewRegistrationSucceed(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processNewRegistrationSucceed(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processNewRegistrationSucceed(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param paymentId (optional) \r\n * @return Success\r\n */\r\n upgradeSucceed(paymentId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/UpgradeSucceed?\";\r\n if (paymentId === null)\r\n throw new Error(\"The parameter 'paymentId' cannot be null.\");\r\n else if (paymentId !== undefined)\r\n url_ += \"paymentId=\" + encodeURIComponent(\"\" + paymentId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpgradeSucceed(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpgradeSucceed(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpgradeSucceed(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param paymentId (optional) \r\n * @return Success\r\n */\r\n extendSucceed(paymentId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/ExtendSucceed?\";\r\n if (paymentId === null)\r\n throw new Error(\"The parameter 'paymentId' cannot be null.\");\r\n else if (paymentId !== undefined)\r\n url_ += \"paymentId=\" + encodeURIComponent(\"\" + paymentId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExtendSucceed(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExtendSucceed(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExtendSucceed(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param paymentId (optional) \r\n * @return Success\r\n */\r\n paymentFailed(paymentId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/PaymentFailed?\";\r\n if (paymentId === null)\r\n throw new Error(\"The parameter 'paymentId' cannot be null.\");\r\n else if (paymentId !== undefined)\r\n url_ += \"paymentId=\" + encodeURIComponent(\"\" + paymentId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processPaymentFailed(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processPaymentFailed(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processPaymentFailed(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param upgradeEditionId (optional) \r\n * @return Success\r\n */\r\n switchBetweenFreeEditions(upgradeEditionId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/SwitchBetweenFreeEditions?\";\r\n if (upgradeEditionId === null)\r\n throw new Error(\"The parameter 'upgradeEditionId' cannot be null.\");\r\n else if (upgradeEditionId !== undefined)\r\n url_ += \"upgradeEditionId=\" + encodeURIComponent(\"\" + upgradeEditionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSwitchBetweenFreeEditions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSwitchBetweenFreeEditions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSwitchBetweenFreeEditions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param editionId (optional) \r\n * @return Success\r\n */\r\n upgradeSubscriptionCostsLessThenMinAmount(editionId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/UpgradeSubscriptionCostsLessThenMinAmount?\";\r\n if (editionId === null)\r\n throw new Error(\"The parameter 'editionId' cannot be null.\");\r\n else if (editionId !== undefined)\r\n url_ += \"editionId=\" + encodeURIComponent(\"\" + editionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpgradeSubscriptionCostsLessThenMinAmount(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpgradeSubscriptionCostsLessThenMinAmount(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpgradeSubscriptionCostsLessThenMinAmount(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n hasAnyPayment(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Payment/HasAnyPayment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHasAnyPayment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHasAnyPayment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHasAnyPayment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class PayPalPaymentServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param paymentId (optional) \r\n * @param paypalOrderId (optional) \r\n * @return Success\r\n */\r\n confirmPayment(paymentId: number | undefined, paypalOrderId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/PayPalPayment/ConfirmPayment?\";\r\n if (paymentId === null)\r\n throw new Error(\"The parameter 'paymentId' cannot be null.\");\r\n else if (paymentId !== undefined)\r\n url_ += \"paymentId=\" + encodeURIComponent(\"\" + paymentId) + \"&\";\r\n if (paypalOrderId === null)\r\n throw new Error(\"The parameter 'paypalOrderId' cannot be null.\");\r\n else if (paypalOrderId !== undefined)\r\n url_ += \"paypalOrderId=\" + encodeURIComponent(\"\" + paypalOrderId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConfirmPayment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConfirmPayment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processConfirmPayment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getConfiguration(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/PayPalPayment/GetConfiguration\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetConfiguration(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetConfiguration(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetConfiguration(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PayPalConfigurationDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class PermissionServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllPermissions(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Permission/GetAllPermissions\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllPermissions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllPermissions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllPermissions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfFlatPermissionWithLevelDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class ProfileServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getCurrentUserProfileForEdit(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/GetCurrentUserProfileForEdit\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCurrentUserProfileForEdit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCurrentUserProfileForEdit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCurrentUserProfileForEdit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CurrentUserProfileEditDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n disableGoogleAuthenticator(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/DisableGoogleAuthenticator\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDisableGoogleAuthenticator(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDisableGoogleAuthenticator(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDisableGoogleAuthenticator(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n updateGoogleAuthenticatorKey(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/UpdateGoogleAuthenticatorKey\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateGoogleAuthenticatorKey(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateGoogleAuthenticatorKey(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateGoogleAuthenticatorKey(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = UpdateGoogleAuthenticatorKeyOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendVerificationSms(body: SendVerificationSmsInputDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/SendVerificationSms\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendVerificationSms(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendVerificationSms(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendVerificationSms(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n verifySmsCode(body: VerifySmsCodeInputDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/VerifySmsCode\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processVerifySmsCode(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processVerifySmsCode(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processVerifySmsCode(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n prepareCollectedData(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/PrepareCollectedData\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processPrepareCollectedData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processPrepareCollectedData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processPrepareCollectedData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateCurrentUserProfile(body: CurrentUserProfileEditDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/UpdateCurrentUserProfile\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateCurrentUserProfile(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateCurrentUserProfile(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateCurrentUserProfile(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n changePassword(body: ChangePasswordInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/ChangePassword\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processChangePassword(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processChangePassword(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processChangePassword(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateProfilePicture(body: UpdateProfilePictureInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/UpdateProfilePicture\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateProfilePicture(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateProfilePicture(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateProfilePicture(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getPasswordComplexitySetting(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/GetPasswordComplexitySetting\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPasswordComplexitySetting(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPasswordComplexitySetting(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPasswordComplexitySetting(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetPasswordComplexitySettingOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getProfilePicture(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/GetProfilePicture\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProfilePicture(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProfilePicture(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetProfilePicture(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetProfilePictureOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param username (optional) \r\n * @return Success\r\n */\r\n getProfilePictureByUserName(username: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/GetProfilePictureByUserName?\";\r\n if (username === null)\r\n throw new Error(\"The parameter 'username' cannot be null.\");\r\n else if (username !== undefined)\r\n url_ += \"username=\" + encodeURIComponent(\"\" + username) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProfilePictureByUserName(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProfilePictureByUserName(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetProfilePictureByUserName(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetProfilePictureOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param userId (optional) \r\n * @param tenantId (optional) \r\n * @return Success\r\n */\r\n getFriendProfilePicture(userId: number | undefined, tenantId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/GetFriendProfilePicture?\";\r\n if (userId === null)\r\n throw new Error(\"The parameter 'userId' cannot be null.\");\r\n else if (userId !== undefined)\r\n url_ += \"UserId=\" + encodeURIComponent(\"\" + userId) + \"&\";\r\n if (tenantId === null)\r\n throw new Error(\"The parameter 'tenantId' cannot be null.\");\r\n else if (tenantId !== undefined)\r\n url_ += \"TenantId=\" + encodeURIComponent(\"\" + tenantId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFriendProfilePicture(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFriendProfilePicture(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetFriendProfilePicture(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetProfilePictureOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param userId (optional) \r\n * @return Success\r\n */\r\n getProfilePictureByUser(userId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/GetProfilePictureByUser?\";\r\n if (userId === null)\r\n throw new Error(\"The parameter 'userId' cannot be null.\");\r\n else if (userId !== undefined)\r\n url_ += \"userId=\" + encodeURIComponent(\"\" + userId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProfilePictureByUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProfilePictureByUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetProfilePictureByUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetProfilePictureOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n changeLanguage(body: ChangeUserLanguageDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Profile/ChangeLanguage\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processChangeLanguage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processChangeLanguage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processChangeLanguage(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class RoleServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n getRoles(body: GetRolesInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Role/GetRoles\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetRoles(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetRoles(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetRoles(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfRoleListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getRoleForEdit(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Role/GetRoleForEdit?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetRoleForEdit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetRoleForEdit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetRoleForEdit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetRoleForEditOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createOrUpdateRole(body: CreateOrUpdateRoleInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Role/CreateOrUpdateRole\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateOrUpdateRole(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateOrUpdateRole(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateOrUpdateRole(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n deleteRole(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Role/DeleteRole?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteRole(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteRole(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteRole(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class SearchServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param searchText (optional) \r\n * @return Success\r\n */\r\n search(searchText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Search/Search?\";\r\n if (searchText === null)\r\n throw new Error(\"The parameter 'searchText' cannot be null.\");\r\n else if (searchText !== undefined)\r\n url_ += \"searchText=\" + encodeURIComponent(\"\" + searchText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSearch(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSearch(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSearch(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SearchOutputDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class SessionServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getCurrentLoginInformations(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Session/GetCurrentLoginInformations\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCurrentLoginInformations(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCurrentLoginInformations(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCurrentLoginInformations(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetCurrentLoginInformationsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n updateUserSignInToken(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Session/UpdateUserSignInToken\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateUserSignInToken(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateUserSignInToken(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateUserSignInToken(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = UpdateUserSignInTokenOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class ShipmentServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getOutboundShipmentAvailableItems(clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetOutboundShipmentAvailableItems?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOutboundShipmentAvailableItems(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOutboundShipmentAvailableItems(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOutboundShipmentAvailableItems(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfOutboundShipmentAvailableItemDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getInboundShipmentAvailableItems(clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetInboundShipmentAvailableItems?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInboundShipmentAvailableItems(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInboundShipmentAvailableItems(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInboundShipmentAvailableItems(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfInboundShipmentAvailableItemDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createInboundShipment(body: CreateInboundShipmentInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/CreateInboundShipment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateInboundShipment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateInboundShipment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateInboundShipment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CreateShipmentOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createOutboundShipment(body: CreateOutboundShipmentInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/CreateOutboundShipment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateOutboundShipment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateOutboundShipment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateOutboundShipment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CreateShipmentOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param itemId (optional) \r\n * @param filterText (optional) \r\n * @return Success\r\n */\r\n getItemGroups(itemId: number | undefined, filterText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetItemGroups?\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"ItemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetItemGroups(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetItemGroups(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetItemGroups(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfShipmentOrderItemGroupDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param itemId (optional) \r\n * @param filterText (optional) \r\n * @return Success\r\n */\r\n getTrackingNumbers(itemId: number | undefined, filterText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetTrackingNumbers?\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"ItemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTrackingNumbers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTrackingNumbers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTrackingNumbers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfShipmentTrackingNumberDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param statusId (optional) \r\n * @param itemId (optional) \r\n * @param filterText (optional) \r\n * @return Success\r\n */\r\n getLotNumbers(statusId: number | undefined, itemId: number | undefined, filterText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetLotNumbers?\";\r\n if (statusId === null)\r\n throw new Error(\"The parameter 'statusId' cannot be null.\");\r\n else if (statusId !== undefined)\r\n url_ += \"StatusId=\" + encodeURIComponent(\"\" + statusId) + \"&\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"ItemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLotNumbers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLotNumbers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLotNumbers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfShipmentLotNumberDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param itemId (optional) \r\n * @param filterText (optional) \r\n * @param hasInboundShipment (optional) \r\n * @param hasInboundOrder (optional) \r\n * @param hasInboundCustomerPONumber (optional) \r\n * @param hasInboundCustomerOrderNumber (optional) \r\n * @param hasLotNumber (optional) \r\n * @param includeNullStatus (optional) \r\n * @return Success\r\n */\r\n getInventoryStatuses(itemId: number | undefined, filterText: string | undefined, hasInboundShipment: boolean | undefined, hasInboundOrder: boolean | undefined, hasInboundCustomerPONumber: boolean | undefined, hasInboundCustomerOrderNumber: boolean | undefined, hasLotNumber: boolean | undefined, includeNullStatus: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetInventoryStatuses?\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"ItemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n if (hasInboundShipment === null)\r\n throw new Error(\"The parameter 'hasInboundShipment' cannot be null.\");\r\n else if (hasInboundShipment !== undefined)\r\n url_ += \"HasInboundShipment=\" + encodeURIComponent(\"\" + hasInboundShipment) + \"&\";\r\n if (hasInboundOrder === null)\r\n throw new Error(\"The parameter 'hasInboundOrder' cannot be null.\");\r\n else if (hasInboundOrder !== undefined)\r\n url_ += \"HasInboundOrder=\" + encodeURIComponent(\"\" + hasInboundOrder) + \"&\";\r\n if (hasInboundCustomerPONumber === null)\r\n throw new Error(\"The parameter 'hasInboundCustomerPONumber' cannot be null.\");\r\n else if (hasInboundCustomerPONumber !== undefined)\r\n url_ += \"HasInboundCustomerPONumber=\" + encodeURIComponent(\"\" + hasInboundCustomerPONumber) + \"&\";\r\n if (hasInboundCustomerOrderNumber === null)\r\n throw new Error(\"The parameter 'hasInboundCustomerOrderNumber' cannot be null.\");\r\n else if (hasInboundCustomerOrderNumber !== undefined)\r\n url_ += \"HasInboundCustomerOrderNumber=\" + encodeURIComponent(\"\" + hasInboundCustomerOrderNumber) + \"&\";\r\n if (hasLotNumber === null)\r\n throw new Error(\"The parameter 'hasLotNumber' cannot be null.\");\r\n else if (hasLotNumber !== undefined)\r\n url_ += \"HasLotNumber=\" + encodeURIComponent(\"\" + hasLotNumber) + \"&\";\r\n if (includeNullStatus === null)\r\n throw new Error(\"The parameter 'includeNullStatus' cannot be null.\");\r\n else if (includeNullStatus !== undefined)\r\n url_ += \"IncludeNullStatus=\" + encodeURIComponent(\"\" + includeNullStatus) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInventoryStatuses(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInventoryStatuses(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInventoryStatuses(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfShipmentInventoryStatusDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @return Success\r\n */\r\n getOrderInventoryBasicForClient(clientId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetOrderInventoryBasicForClient?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"clientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrderInventoryBasicForClient(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrderInventoryBasicForClient(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOrderInventoryBasicForClient(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrderInventoryBasicDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param statusId (optional) \r\n * @param itemId (optional) \r\n * @param filterText (optional) \r\n * @return Success\r\n */\r\n getInboundShipmentIds(statusId: number | undefined, itemId: number | undefined, filterText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetInboundShipmentIds?\";\r\n if (statusId === null)\r\n throw new Error(\"The parameter 'statusId' cannot be null.\");\r\n else if (statusId !== undefined)\r\n url_ += \"StatusId=\" + encodeURIComponent(\"\" + statusId) + \"&\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"ItemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInboundShipmentIds(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInboundShipmentIds(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInboundShipmentIds(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfShipmentInboundShipmentIdDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param statusId (optional) \r\n * @param itemId (optional) \r\n * @param filterText (optional) \r\n * @return Success\r\n */\r\n getInboundOrderIds(statusId: number | undefined, itemId: number | undefined, filterText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetInboundOrderIds?\";\r\n if (statusId === null)\r\n throw new Error(\"The parameter 'statusId' cannot be null.\");\r\n else if (statusId !== undefined)\r\n url_ += \"StatusId=\" + encodeURIComponent(\"\" + statusId) + \"&\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"ItemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInboundOrderIds(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInboundOrderIds(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInboundOrderIds(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfShipmentInboundOrderIdDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param statusId (optional) \r\n * @param itemId (optional) \r\n * @param filterText (optional) \r\n * @return Success\r\n */\r\n getInboundCustomerPONumberIds(statusId: number | undefined, itemId: number | undefined, filterText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetInboundCustomerPONumberIds?\";\r\n if (statusId === null)\r\n throw new Error(\"The parameter 'statusId' cannot be null.\");\r\n else if (statusId !== undefined)\r\n url_ += \"StatusId=\" + encodeURIComponent(\"\" + statusId) + \"&\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"ItemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInboundCustomerPONumberIds(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInboundCustomerPONumberIds(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInboundCustomerPONumberIds(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfShipmentInboundCustomerPONumberDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param statusId (optional) \r\n * @param itemId (optional) \r\n * @param filterText (optional) \r\n * @return Success\r\n */\r\n getInboundCustomerOrderNumberIds(statusId: number | undefined, itemId: number | undefined, filterText: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetInboundCustomerOrderNumberIds?\";\r\n if (statusId === null)\r\n throw new Error(\"The parameter 'statusId' cannot be null.\");\r\n else if (statusId !== undefined)\r\n url_ += \"StatusId=\" + encodeURIComponent(\"\" + statusId) + \"&\";\r\n if (itemId === null)\r\n throw new Error(\"The parameter 'itemId' cannot be null.\");\r\n else if (itemId !== undefined)\r\n url_ += \"ItemId=\" + encodeURIComponent(\"\" + itemId) + \"&\";\r\n if (filterText === null)\r\n throw new Error(\"The parameter 'filterText' cannot be null.\");\r\n else if (filterText !== undefined)\r\n url_ += \"FilterText=\" + encodeURIComponent(\"\" + filterText) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInboundCustomerOrderNumberIds(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInboundCustomerOrderNumberIds(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInboundCustomerOrderNumberIds(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfShipmentInboundCustomerOrderNumberDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param clientId (optional) \r\n * @param serviceTypes (optional) \r\n * @return Success\r\n */\r\n getOrderServices(clientId: number | undefined, serviceTypes: OrderServiceType[] | undefined, shipmentType: ShipmentType): Observable<{ [key: string]: OrderServiceDto[]; }> {\r\n let url_ = this.baseUrl + \"/api/services/app/Shipment/GetOrderServices?\";\r\n if (clientId === null)\r\n throw new Error(\"The parameter 'clientId' cannot be null.\");\r\n else if (clientId !== undefined)\r\n url_ += \"ClientId=\" + encodeURIComponent(\"\" + clientId) + \"&\";\r\n if (serviceTypes === null)\r\n throw new Error(\"The parameter 'serviceTypes' cannot be null.\");\r\n else if (serviceTypes !== undefined)\r\n serviceTypes && serviceTypes.forEach(item => { url_ += \"ServiceTypes=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (shipmentType === undefined || shipmentType === null)\r\n throw new Error(\"The parameter 'shipmentType' must be defined and cannot be null.\");\r\n else\r\n url_ += \"ShipmentType=\" + encodeURIComponent(\"\" + shipmentType) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOrderServices(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOrderServices(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<{ [key: string]: OrderServiceDto[]; }>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<{ [key: string]: OrderServiceDto[]; }>;\r\n }));\r\n }\r\n\r\n protected processGetOrderServices(response: HttpResponseBase): Observable<{ [key: string]: OrderServiceDto[]; }> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (resultData200) {\r\n result200 = {} as any;\r\n for (let key in resultData200) {\r\n if (resultData200.hasOwnProperty(key))\r\n (result200)![key] = resultData200[key] ? resultData200[key].map((i: any) => OrderServiceDto.fromJS(i)) : [];\r\n }\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf<{ [key: string]: OrderServiceDto[]; }>(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class StripePaymentServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getConfiguration(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/StripePayment/GetConfiguration\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetConfiguration(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetConfiguration(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetConfiguration(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = StripeConfigurationDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param stripeSessionId (optional) \r\n * @return Success\r\n */\r\n getPayment(stripeSessionId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/StripePayment/GetPayment?\";\r\n if (stripeSessionId === null)\r\n throw new Error(\"The parameter 'stripeSessionId' cannot be null.\");\r\n else if (stripeSessionId !== undefined)\r\n url_ += \"StripeSessionId=\" + encodeURIComponent(\"\" + stripeSessionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPayment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPayment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPayment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SubscriptionPaymentDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createPaymentSession(body: StripeCreatePaymentSessionInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/StripePayment/CreatePaymentSession\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreatePaymentSession(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreatePaymentSession(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreatePaymentSession(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param paymentId (optional) \r\n * @return Success\r\n */\r\n getPaymentResult(paymentId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/StripePayment/GetPaymentResult?\";\r\n if (paymentId === null)\r\n throw new Error(\"The parameter 'paymentId' cannot be null.\");\r\n else if (paymentId !== undefined)\r\n url_ += \"PaymentId=\" + encodeURIComponent(\"\" + paymentId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPaymentResult(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPaymentResult(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPaymentResult(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = StripePaymentResultOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class SubscriptionServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n disableRecurringPayments(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Subscription/DisableRecurringPayments\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDisableRecurringPayments(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDisableRecurringPayments(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDisableRecurringPayments(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n enableRecurringPayments(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Subscription/EnableRecurringPayments\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEnableRecurringPayments(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEnableRecurringPayments(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEnableRecurringPayments(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TenantServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getInventoryManagers(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/GetInventoryManagers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInventoryManagers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInventoryManagers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInventoryManagers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(InventoryManagerListDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getClients(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/GetClients\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetClients(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetClients(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetClients(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrganizationConnectionItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getCarriers(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/GetCarriers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCarriers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCarriers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCarriers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrganizationConnectionItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param filter (optional) \r\n * @param subscriptionEndDateStart (optional) \r\n * @param subscriptionEndDateEnd (optional) \r\n * @param creationDateStart (optional) \r\n * @param creationDateEnd (optional) \r\n * @param editionId (optional) \r\n * @param editionIdSpecified (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getTenants(filter: string | undefined, subscriptionEndDateStart: DateTime | undefined, subscriptionEndDateEnd: DateTime | undefined, creationDateStart: DateTime | undefined, creationDateEnd: DateTime | undefined, editionId: number | undefined, editionIdSpecified: boolean | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/GetTenants?\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (subscriptionEndDateStart === null)\r\n throw new Error(\"The parameter 'subscriptionEndDateStart' cannot be null.\");\r\n else if (subscriptionEndDateStart !== undefined)\r\n url_ += \"SubscriptionEndDateStart=\" + encodeURIComponent(subscriptionEndDateStart ? \"\" + subscriptionEndDateStart.toString() : \"\") + \"&\";\r\n if (subscriptionEndDateEnd === null)\r\n throw new Error(\"The parameter 'subscriptionEndDateEnd' cannot be null.\");\r\n else if (subscriptionEndDateEnd !== undefined)\r\n url_ += \"SubscriptionEndDateEnd=\" + encodeURIComponent(subscriptionEndDateEnd ? \"\" + subscriptionEndDateEnd.toString() : \"\") + \"&\";\r\n if (creationDateStart === null)\r\n throw new Error(\"The parameter 'creationDateStart' cannot be null.\");\r\n else if (creationDateStart !== undefined)\r\n url_ += \"CreationDateStart=\" + encodeURIComponent(creationDateStart ? \"\" + creationDateStart.toString() : \"\") + \"&\";\r\n if (creationDateEnd === null)\r\n throw new Error(\"The parameter 'creationDateEnd' cannot be null.\");\r\n else if (creationDateEnd !== undefined)\r\n url_ += \"CreationDateEnd=\" + encodeURIComponent(creationDateEnd ? \"\" + creationDateEnd.toString() : \"\") + \"&\";\r\n if (editionId === null)\r\n throw new Error(\"The parameter 'editionId' cannot be null.\");\r\n else if (editionId !== undefined)\r\n url_ += \"EditionId=\" + encodeURIComponent(\"\" + editionId) + \"&\";\r\n if (editionIdSpecified === null)\r\n throw new Error(\"The parameter 'editionIdSpecified' cannot be null.\");\r\n else if (editionIdSpecified !== undefined)\r\n url_ += \"EditionIdSpecified=\" + encodeURIComponent(\"\" + editionIdSpecified) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTenants(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTenants(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTenants(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfTenantListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getTenantUsersToExcel(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/GetTenantUsersToExcel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTenantUsersToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTenantUsersToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTenantUsersToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createTenant(body: CreateTenantInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/CreateTenant\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateTenant(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateTenant(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateTenant(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getTenantForEdit(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/GetTenantForEdit?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTenantForEdit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTenantForEdit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTenantForEdit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = TenantEditDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateTenant(body: TenantEditDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/UpdateTenant\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateTenant(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateTenant(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateTenant(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n deleteTenant(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/DeleteTenant?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteTenant(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteTenant(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteTenant(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getTenantFeaturesForEdit(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/GetTenantFeaturesForEdit?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTenantFeaturesForEdit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTenantFeaturesForEdit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTenantFeaturesForEdit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetTenantFeaturesEditOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateTenantFeatures(body: UpdateTenantFeaturesInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/UpdateTenantFeatures\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateTenantFeatures(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateTenantFeatures(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateTenantFeatures(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n resetTenantSpecificFeatures(body: EntityDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/ResetTenantSpecificFeatures\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetTenantSpecificFeatures(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetTenantSpecificFeatures(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processResetTenantSpecificFeatures(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n unlockTenantAdmin(body: EntityDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Tenant/UnlockTenantAdmin\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUnlockTenantAdmin(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUnlockTenantAdmin(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUnlockTenantAdmin(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TenantCustomizationServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param tenantId (optional) \r\n * @param extension (optional) \r\n * @return Success\r\n */\r\n getTenantLogo(skin: string, tenantId: number | undefined, extension: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/TenantCustomization/GetTenantLogo/{skin}/{tenantId}/{extension}?\";\r\n if (skin === undefined || skin === null)\r\n throw new Error(\"The parameter 'skin' must be defined.\");\r\n url_ = url_.replace(\"{skin}\", encodeURIComponent(\"\" + skin));\r\n if (tenantId === null)\r\n throw new Error(\"The parameter 'tenantId' cannot be null.\");\r\n else if (tenantId !== undefined)\r\n url_ += \"tenantId=\" + encodeURIComponent(\"\" + tenantId) + \"&\";\r\n if (extension === null)\r\n throw new Error(\"The parameter 'extension' cannot be null.\");\r\n else if (extension !== undefined)\r\n url_ += \"extension=\" + encodeURIComponent(\"\" + extension) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTenantLogo(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTenantLogo(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTenantLogo(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TenantDashboardServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getMemberActivity(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantDashboard/GetMemberActivity\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetMemberActivity(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetMemberActivity(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetMemberActivity(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetMemberActivityOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getDashboardData(salesSummaryDatePeriod: SalesSummaryDatePeriod): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantDashboard/GetDashboardData?\";\r\n if (salesSummaryDatePeriod === undefined || salesSummaryDatePeriod === null)\r\n throw new Error(\"The parameter 'salesSummaryDatePeriod' must be defined and cannot be null.\");\r\n else\r\n url_ += \"SalesSummaryDatePeriod=\" + encodeURIComponent(\"\" + salesSummaryDatePeriod) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDashboardData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDashboardData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDashboardData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetDashboardDataOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getTopStats(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantDashboard/GetTopStats\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTopStats(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTopStats(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTopStats(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetTopStatsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getProfitShare(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantDashboard/GetProfitShare\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProfitShare(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProfitShare(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetProfitShare(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetProfitShareOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getDailySales(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantDashboard/GetDailySales\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDailySales(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDailySales(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDailySales(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetDailySalesOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getSalesSummary(salesSummaryDatePeriod: SalesSummaryDatePeriod): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantDashboard/GetSalesSummary?\";\r\n if (salesSummaryDatePeriod === undefined || salesSummaryDatePeriod === null)\r\n throw new Error(\"The parameter 'salesSummaryDatePeriod' must be defined and cannot be null.\");\r\n else\r\n url_ += \"SalesSummaryDatePeriod=\" + encodeURIComponent(\"\" + salesSummaryDatePeriod) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSalesSummary(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSalesSummary(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSalesSummary(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetSalesSummaryOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getRegionalStats(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantDashboard/GetRegionalStats\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetRegionalStats(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetRegionalStats(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetRegionalStats(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetRegionalStatsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getGeneralStats(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantDashboard/GetGeneralStats\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetGeneralStats(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetGeneralStats(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetGeneralStats(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetGeneralStatsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TenantRegistrationServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n registerTenant(body: RegisterTenantInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantRegistration/RegisterTenant\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRegisterTenant(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRegisterTenant(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRegisterTenant(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = RegisterTenantOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getEditionsForSelect(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantRegistration/GetEditionsForSelect\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEditionsForSelect(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEditionsForSelect(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEditionsForSelect(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = EditionsSelectOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param editionId (optional) \r\n * @return Success\r\n */\r\n getEdition(editionId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantRegistration/GetEdition?\";\r\n if (editionId === null)\r\n throw new Error(\"The parameter 'editionId' cannot be null.\");\r\n else if (editionId !== undefined)\r\n url_ += \"editionId=\" + encodeURIComponent(\"\" + editionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEdition(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEdition(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEdition(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = EditionSelectDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TenantSettingsServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllSettings(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantSettings/GetAllSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = TenantSettingsEditDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateAllSettings(body: TenantSettingsEditDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantSettings/UpdateAllSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateAllSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateAllSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateAllSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n clearLogo(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantSettings/ClearLogo\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processClearLogo(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processClearLogo(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processClearLogo(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n clearCustomCss(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantSettings/ClearCustomCss\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processClearCustomCss(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processClearCustomCss(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processClearCustomCss(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendTestEmail(body: SendTestEmailInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantSettings/SendTestEmail\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendTestEmail(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendTestEmail(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendTestEmail(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getEnabledSocialLoginSettings(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/TenantSettings/GetEnabledSocialLoginSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEnabledSocialLoginSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEnabledSocialLoginSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetEnabledSocialLoginSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ExternalLoginSettingsDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TenantUsersServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n importFromExcel(): Observable {\r\n let url_ = this.baseUrl + \"/api/TenantUsers/ImportFromExcel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processImportFromExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processImportFromExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processImportFromExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TimingServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getTimezones(defaultTimezoneScope: SettingScopes): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Timing/GetTimezones?\";\r\n if (defaultTimezoneScope === undefined || defaultTimezoneScope === null)\r\n throw new Error(\"The parameter 'defaultTimezoneScope' must be defined and cannot be null.\");\r\n else\r\n url_ += \"DefaultTimezoneScope=\" + encodeURIComponent(\"\" + defaultTimezoneScope) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTimezones(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTimezones(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTimezones(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfNameValueDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param selectedTimezoneId (optional) \r\n * @return Success\r\n */\r\n getTimezoneComboboxItems(selectedTimezoneId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Timing/GetTimezoneComboboxItems?\";\r\n if (selectedTimezoneId === null)\r\n throw new Error(\"The parameter 'selectedTimezoneId' cannot be null.\");\r\n else if (selectedTimezoneId !== undefined)\r\n url_ += \"SelectedTimezoneId=\" + encodeURIComponent(\"\" + selectedTimezoneId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTimezoneComboboxItems(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTimezoneComboboxItems(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTimezoneComboboxItems(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ComboboxItemDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TokenAuthServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n authenticate(body: AuthenticateModel | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/Authenticate\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAuthenticate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAuthenticate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAuthenticate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AuthenticateResultModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param refreshToken (optional) \r\n * @return Success\r\n */\r\n refreshToken(refreshToken: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/RefreshToken?\";\r\n if (refreshToken === null)\r\n throw new Error(\"The parameter 'refreshToken' cannot be null.\");\r\n else if (refreshToken !== undefined)\r\n url_ += \"refreshToken=\" + encodeURIComponent(\"\" + refreshToken) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRefreshToken(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRefreshToken(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRefreshToken(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = RefreshTokenResult.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n logOut(): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/LogOut\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processLogOut(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processLogOut(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processLogOut(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendTwoFactorAuthCode(body: SendTwoFactorAuthCodeModel | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/SendTwoFactorAuthCode\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSendTwoFactorAuthCode(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSendTwoFactorAuthCode(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSendTwoFactorAuthCode(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param impersonationToken (optional) \r\n * @return Success\r\n */\r\n impersonatedAuthenticate(impersonationToken: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/ImpersonatedAuthenticate?\";\r\n if (impersonationToken === null)\r\n throw new Error(\"The parameter 'impersonationToken' cannot be null.\");\r\n else if (impersonationToken !== undefined)\r\n url_ += \"impersonationToken=\" + encodeURIComponent(\"\" + impersonationToken) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processImpersonatedAuthenticate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processImpersonatedAuthenticate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processImpersonatedAuthenticate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ImpersonatedAuthenticateResultModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param userDelegationId (optional) \r\n * @param impersonationToken (optional) \r\n * @return Success\r\n */\r\n delegatedImpersonatedAuthenticate(userDelegationId: number | undefined, impersonationToken: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/DelegatedImpersonatedAuthenticate?\";\r\n if (userDelegationId === null)\r\n throw new Error(\"The parameter 'userDelegationId' cannot be null.\");\r\n else if (userDelegationId !== undefined)\r\n url_ += \"userDelegationId=\" + encodeURIComponent(\"\" + userDelegationId) + \"&\";\r\n if (impersonationToken === null)\r\n throw new Error(\"The parameter 'impersonationToken' cannot be null.\");\r\n else if (impersonationToken !== undefined)\r\n url_ += \"impersonationToken=\" + encodeURIComponent(\"\" + impersonationToken) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDelegatedImpersonatedAuthenticate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDelegatedImpersonatedAuthenticate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDelegatedImpersonatedAuthenticate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ImpersonatedAuthenticateResultModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param switchAccountToken (optional) \r\n * @return Success\r\n */\r\n linkedAccountAuthenticate(switchAccountToken: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/LinkedAccountAuthenticate?\";\r\n if (switchAccountToken === null)\r\n throw new Error(\"The parameter 'switchAccountToken' cannot be null.\");\r\n else if (switchAccountToken !== undefined)\r\n url_ += \"switchAccountToken=\" + encodeURIComponent(\"\" + switchAccountToken) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processLinkedAccountAuthenticate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processLinkedAccountAuthenticate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processLinkedAccountAuthenticate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SwitchedAccountAuthenticateResultModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getExternalAuthenticationProviders(): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/GetExternalAuthenticationProviders\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetExternalAuthenticationProviders(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetExternalAuthenticationProviders(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetExternalAuthenticationProviders(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ExternalLoginProviderInfoModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n externalAuthenticate(body: ExternalAuthenticateModel | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/ExternalAuthenticate\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExternalAuthenticate(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExternalAuthenticate(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExternalAuthenticate(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ExternalAuthenticateResultModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param message (optional) \r\n * @param severity (optional) \r\n * @return Success\r\n */\r\n testNotification(message: string | undefined, severity: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/TokenAuth/TestNotification?\";\r\n if (message === null)\r\n throw new Error(\"The parameter 'message' cannot be null.\");\r\n else if (message !== undefined)\r\n url_ += \"message=\" + encodeURIComponent(\"\" + message) + \"&\";\r\n if (severity === null)\r\n throw new Error(\"The parameter 'severity' cannot be null.\");\r\n else if (severity !== undefined)\r\n url_ += \"severity=\" + encodeURIComponent(\"\" + severity) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processTestNotification(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processTestNotification(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processTestNotification(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TwitterServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getRequestToken(): Observable {\r\n let url_ = this.baseUrl + \"/api/Twitter/GetRequestToken\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetRequestToken(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetRequestToken(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetRequestToken(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = TwitterGetRequestTokenResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param token (optional) \r\n * @param verifier (optional) \r\n * @return Success\r\n */\r\n getAccessToken(token: string | undefined, verifier: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Twitter/GetAccessToken?\";\r\n if (token === null)\r\n throw new Error(\"The parameter 'token' cannot be null.\");\r\n else if (token !== undefined)\r\n url_ += \"token=\" + encodeURIComponent(\"\" + token) + \"&\";\r\n if (verifier === null)\r\n throw new Error(\"The parameter 'verifier' cannot be null.\");\r\n else if (verifier !== undefined)\r\n url_ += \"verifier=\" + encodeURIComponent(\"\" + verifier) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAccessToken(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAccessToken(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAccessToken(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = TwitterGetAccessTokenResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class UiCustomizationSettingsServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getUiManagementSettings(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UiCustomizationSettings/GetUiManagementSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUiManagementSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUiManagementSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUiManagementSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ThemeSettingsDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param themeName (optional) \r\n * @return Success\r\n */\r\n changeThemeWithDefaultValues(themeName: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UiCustomizationSettings/ChangeThemeWithDefaultValues?\";\r\n if (themeName === null)\r\n throw new Error(\"The parameter 'themeName' cannot be null.\");\r\n else if (themeName !== undefined)\r\n url_ += \"themeName=\" + encodeURIComponent(\"\" + themeName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processChangeThemeWithDefaultValues(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processChangeThemeWithDefaultValues(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processChangeThemeWithDefaultValues(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateUiManagementSettings(body: ThemeSettingsDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UiCustomizationSettings/UpdateUiManagementSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateUiManagementSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateUiManagementSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateUiManagementSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateDefaultUiManagementSettings(body: ThemeSettingsDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UiCustomizationSettings/UpdateDefaultUiManagementSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateDefaultUiManagementSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateDefaultUiManagementSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateDefaultUiManagementSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n useSystemDefaultSettings(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UiCustomizationSettings/UseSystemDefaultSettings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUseSystemDefaultSettings(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUseSystemDefaultSettings(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUseSystemDefaultSettings(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param isDarkModeActive (optional) \r\n * @return Success\r\n */\r\n changeDarkModeOfCurrentTheme(isDarkModeActive: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UiCustomizationSettings/ChangeDarkModeOfCurrentTheme?\";\r\n if (isDarkModeActive === null)\r\n throw new Error(\"The parameter 'isDarkModeActive' cannot be null.\");\r\n else if (isDarkModeActive !== undefined)\r\n url_ += \"isDarkModeActive=\" + encodeURIComponent(\"\" + isDarkModeActive) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processChangeDarkModeOfCurrentTheme(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processChangeDarkModeOfCurrentTheme(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processChangeDarkModeOfCurrentTheme(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class UserServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n getUsers(body: GetUsersInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/GetUsers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUsers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUsers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUsers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfUserListDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param filter (optional) \r\n * @param permissions (optional) \r\n * @param role (optional) \r\n * @param onlyLockedUsers (optional) \r\n * @param sorting (optional) \r\n * @return Success\r\n */\r\n getUsersToExcel(filter: string | undefined, permissions: string[] | undefined, role: number | undefined, onlyLockedUsers: boolean | undefined, sorting: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/GetUsersToExcel?\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (permissions === null)\r\n throw new Error(\"The parameter 'permissions' cannot be null.\");\r\n else if (permissions !== undefined)\r\n permissions && permissions.forEach(item => { url_ += \"Permissions=\" + encodeURIComponent(\"\" + item) + \"&\"; });\r\n if (role === null)\r\n throw new Error(\"The parameter 'role' cannot be null.\");\r\n else if (role !== undefined)\r\n url_ += \"Role=\" + encodeURIComponent(\"\" + role) + \"&\";\r\n if (onlyLockedUsers === null)\r\n throw new Error(\"The parameter 'onlyLockedUsers' cannot be null.\");\r\n else if (onlyLockedUsers !== undefined)\r\n url_ += \"OnlyLockedUsers=\" + encodeURIComponent(\"\" + onlyLockedUsers) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUsersToExcel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUsersToExcel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUsersToExcel(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getUserForEdit(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/GetUserForEdit?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUserForEdit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUserForEdit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUserForEdit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetUserForEditOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getUserPermissionsForEdit(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/GetUserPermissionsForEdit?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUserPermissionsForEdit(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUserPermissionsForEdit(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUserPermissionsForEdit(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetUserPermissionsForEditOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n resetUserSpecificPermissions(body: EntityDtoOfInt64 | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/ResetUserSpecificPermissions\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetUserSpecificPermissions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetUserSpecificPermissions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processResetUserSpecificPermissions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateUserPermissions(body: UpdateUserPermissionsInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/UpdateUserPermissions\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateUserPermissions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateUserPermissions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateUserPermissions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createOrUpdateUser(body: CreateOrUpdateUserInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/CreateOrUpdateUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateOrUpdateUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateOrUpdateUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateOrUpdateUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n deleteUser(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/DeleteUser?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n unlockUser(body: EntityDtoOfInt64 | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/UnlockUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUnlockUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUnlockUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUnlockUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n resetUserPassword(body: EntityDtoOfInt64 | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/User/ResetUserPassword\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetUserPassword(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetUserPassword(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processResetUserPassword(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class UserDelegationServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @param sorting (optional) \r\n * @return Success\r\n */\r\n getDelegatedUsers(maxResultCount: number | undefined, skipCount: number | undefined, sorting: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserDelegation/GetDelegatedUsers?\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDelegatedUsers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDelegatedUsers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDelegatedUsers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfUserDelegationDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n delegateNewUser(body: CreateUserDelegationDto | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserDelegation/DelegateNewUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDelegateNewUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDelegateNewUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDelegateNewUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n removeDelegation(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserDelegation/RemoveDelegation?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRemoveDelegation(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRemoveDelegation(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRemoveDelegation(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getActiveUserDelegations(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserDelegation/GetActiveUserDelegations\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetActiveUserDelegations(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetActiveUserDelegations(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetActiveUserDelegations(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(UserDelegationDto.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class UserLinkServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n linkToUser(body: LinkToUserInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserLink/LinkToUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processLinkToUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processLinkToUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processLinkToUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @param sorting (optional) \r\n * @return Success\r\n */\r\n getLinkedUsers(maxResultCount: number | undefined, skipCount: number | undefined, sorting: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserLink/GetLinkedUsers?\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLinkedUsers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLinkedUsers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLinkedUsers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfLinkedUserDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getRecentlyUsedLinkedUsers(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserLink/GetRecentlyUsedLinkedUsers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetRecentlyUsedLinkedUsers(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetRecentlyUsedLinkedUsers(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetRecentlyUsedLinkedUsers(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfLinkedUserDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n unlinkUser(body: UnlinkUserInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserLink/UnlinkUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUnlinkUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUnlinkUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUnlinkUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class UserLoginServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param filter (optional) \r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @param result (optional) \r\n * @param sorting (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getUserLoginAttempts(filter: string | undefined, startDate: DateTime | undefined, endDate: DateTime | undefined, result: AbpLoginResultType | undefined, sorting: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/UserLogin/GetUserLoginAttempts?\";\r\n if (filter === null)\r\n throw new Error(\"The parameter 'filter' cannot be null.\");\r\n else if (filter !== undefined)\r\n url_ += \"Filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"StartDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"EndDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toString() : \"\") + \"&\";\r\n if (result === null)\r\n throw new Error(\"The parameter 'result' cannot be null.\");\r\n else if (result !== undefined)\r\n url_ += \"Result=\" + encodeURIComponent(\"\" + result) + \"&\";\r\n if (sorting === null)\r\n throw new Error(\"The parameter 'sorting' cannot be null.\");\r\n else if (sorting !== undefined)\r\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetUserLoginAttempts(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetUserLoginAttempts(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetUserLoginAttempts(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfUserLoginAttemptDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class WarehouseServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAll(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Warehouse/GetAll\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAll(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAll(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAll(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IListResultOfWarehouseDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n get(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/Warehouse/Get?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGet(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = WarehouseDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class WebhookEventServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n get(id: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookEvent/Get?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGet(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = WebhookEvent.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class WebhookSendAttemptServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @param subscriptionId (optional) \r\n * @param maxResultCount (optional) \r\n * @param skipCount (optional) \r\n * @return Success\r\n */\r\n getAllSendAttempts(subscriptionId: string | undefined, maxResultCount: number | undefined, skipCount: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSendAttempt/GetAllSendAttempts?\";\r\n if (subscriptionId === null)\r\n throw new Error(\"The parameter 'subscriptionId' cannot be null.\");\r\n else if (subscriptionId !== undefined)\r\n url_ += \"SubscriptionId=\" + encodeURIComponent(\"\" + subscriptionId) + \"&\";\r\n if (maxResultCount === null)\r\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\r\n else if (maxResultCount !== undefined)\r\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\";\r\n if (skipCount === null)\r\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\r\n else if (skipCount !== undefined)\r\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllSendAttempts(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllSendAttempts(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllSendAttempts(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedResultDtoOfGetAllSendAttemptsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param id (optional) \r\n * @return Success\r\n */\r\n getAllSendAttemptsOfWebhookEvent(id: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSendAttempt/GetAllSendAttemptsOfWebhookEvent?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllSendAttemptsOfWebhookEvent(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllSendAttemptsOfWebhookEvent(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllSendAttemptsOfWebhookEvent(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfGetAllSendAttemptsOfWebhookEventOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param sendAttemptId (optional) \r\n * @return Success\r\n */\r\n resend(sendAttemptId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSendAttempt/Resend?\";\r\n if (sendAttemptId === null)\r\n throw new Error(\"The parameter 'sendAttemptId' cannot be null.\");\r\n else if (sendAttemptId !== undefined)\r\n url_ += \"sendAttemptId=\" + encodeURIComponent(\"\" + sendAttemptId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResend(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResend(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processResend(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class WebhookSubscriptionServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n publishTestWebhook(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/PublishTestWebhook\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processPublishTestWebhook(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processPublishTestWebhook(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processPublishTestWebhook(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllSubscriptions(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/GetAllSubscriptions\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllSubscriptions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllSubscriptions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllSubscriptions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfGetAllSubscriptionsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param subscriptionId (optional) \r\n * @return Success\r\n */\r\n getSubscription(subscriptionId: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/GetSubscription?\";\r\n if (subscriptionId === null)\r\n throw new Error(\"The parameter 'subscriptionId' cannot be null.\");\r\n else if (subscriptionId !== undefined)\r\n url_ += \"subscriptionId=\" + encodeURIComponent(\"\" + subscriptionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSubscription(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSubscription(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSubscription(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = WebhookSubscription.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n addSubscription(body: WebhookSubscription | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/AddSubscription\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddSubscription(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddSubscription(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddSubscription(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateSubscription(body: WebhookSubscription | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/UpdateSubscription\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateSubscription(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateSubscription(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateSubscription(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n activateWebhookSubscription(body: ActivateWebhookSubscriptionInput | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/ActivateWebhookSubscription\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json-patch+json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processActivateWebhookSubscription(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processActivateWebhookSubscription(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processActivateWebhookSubscription(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param webhookName (optional) \r\n * @return Success\r\n */\r\n isSubscribed(webhookName: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/IsSubscribed?\";\r\n if (webhookName === null)\r\n throw new Error(\"The parameter 'webhookName' cannot be null.\");\r\n else if (webhookName !== undefined)\r\n url_ += \"webhookName=\" + encodeURIComponent(\"\" + webhookName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processIsSubscribed(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processIsSubscribed(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processIsSubscribed(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @param webhookName (optional) \r\n * @return Success\r\n */\r\n getAllSubscriptionsIfFeaturesGranted(webhookName: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/GetAllSubscriptionsIfFeaturesGranted?\";\r\n if (webhookName === null)\r\n throw new Error(\"The parameter 'webhookName' cannot be null.\");\r\n else if (webhookName !== undefined)\r\n url_ += \"webhookName=\" + encodeURIComponent(\"\" + webhookName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllSubscriptionsIfFeaturesGranted(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllSubscriptionsIfFeaturesGranted(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllSubscriptionsIfFeaturesGranted(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfGetAllSubscriptionsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getAllAvailableWebhooks(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebhookSubscription/GetAllAvailableWebhooks\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllAvailableWebhooks(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllAvailableWebhooks(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllAvailableWebhooks(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ListResultDtoOfGetAllAvailableWebhooksOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class WebLogServiceProxy {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getLatestWebLogs(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebLog/GetLatestWebLogs\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLatestWebLogs(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLatestWebLogs(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLatestWebLogs(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetLatestWebLogsOutput.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n downloadWebLogs(): Observable {\r\n let url_ = this.baseUrl + \"/api/services/app/WebLog/DownloadWebLogs\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"text/plain\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDownloadWebLogs(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDownloadWebLogs(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDownloadWebLogs(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FileDto.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport enum AbpLoginResultType {\r\n Success = 1,\r\n InvalidUserNameOrEmailAddress = 2,\r\n InvalidPassword = 3,\r\n UserIsNotActive = 4,\r\n InvalidTenancyName = 5,\r\n TenantIsNotActive = 6,\r\n UserEmailIsNotConfirmed = 7,\r\n UnknownExternalLogin = 8,\r\n LockedOut = 9,\r\n UserPhoneNumberIsNotConfirmed = 10,\r\n}\r\n\r\nexport class AcceptFriendshipRequestInput implements IAcceptFriendshipRequestInput {\r\n userId!: number;\r\n tenantId!: number | undefined;\r\n\r\n constructor(data?: IAcceptFriendshipRequestInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AcceptFriendshipRequestInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AcceptFriendshipRequestInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"tenantId\"] = this.tenantId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAcceptFriendshipRequestInput {\r\n userId: number;\r\n tenantId: number | undefined;\r\n}\r\n\r\nexport class ActivateEmailInput implements IActivateEmailInput {\r\n userId!: number;\r\n confirmationCode!: string | undefined;\r\n tenantId!: number | undefined;\r\n plainPassword!: string | undefined;\r\n c!: string | undefined;\r\n\r\n constructor(data?: IActivateEmailInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.confirmationCode = _data[\"confirmationCode\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.plainPassword = _data[\"plainPassword\"];\r\n this.c = _data[\"c\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ActivateEmailInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ActivateEmailInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"confirmationCode\"] = this.confirmationCode;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"plainPassword\"] = this.plainPassword;\r\n data[\"c\"] = this.c;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IActivateEmailInput {\r\n userId: number;\r\n confirmationCode: string | undefined;\r\n tenantId: number | undefined;\r\n plainPassword: string | undefined;\r\n c: string | undefined;\r\n}\r\n\r\nexport class ActivateEmailOutput implements IActivateEmailOutput {\r\n email!: string | undefined;\r\n password!: string | undefined;\r\n accountNumberSpecified!: boolean;\r\n accountNumber!: string | undefined;\r\n\r\n constructor(data?: IActivateEmailOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"];\r\n this.password = _data[\"password\"];\r\n this.accountNumberSpecified = _data[\"accountNumberSpecified\"];\r\n this.accountNumber = _data[\"accountNumber\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ActivateEmailOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ActivateEmailOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email;\r\n data[\"password\"] = this.password;\r\n data[\"accountNumberSpecified\"] = this.accountNumberSpecified;\r\n data[\"accountNumber\"] = this.accountNumber;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IActivateEmailOutput {\r\n email: string | undefined;\r\n password: string | undefined;\r\n accountNumberSpecified: boolean;\r\n accountNumber: string | undefined;\r\n}\r\n\r\nexport class ActivateWebhookSubscriptionInput implements IActivateWebhookSubscriptionInput {\r\n subscriptionId!: string;\r\n isActive!: boolean;\r\n\r\n constructor(data?: IActivateWebhookSubscriptionInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.subscriptionId = _data[\"subscriptionId\"];\r\n this.isActive = _data[\"isActive\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ActivateWebhookSubscriptionInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ActivateWebhookSubscriptionInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"subscriptionId\"] = this.subscriptionId;\r\n data[\"isActive\"] = this.isActive;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IActivateWebhookSubscriptionInput {\r\n subscriptionId: string;\r\n isActive: boolean;\r\n}\r\n\r\nexport class AddNewPageInput implements IAddNewPageInput {\r\n dashboardName!: string | undefined;\r\n name!: string | undefined;\r\n application!: string | undefined;\r\n\r\n constructor(data?: IAddNewPageInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.dashboardName = _data[\"dashboardName\"];\r\n this.name = _data[\"name\"];\r\n this.application = _data[\"application\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AddNewPageInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AddNewPageInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"dashboardName\"] = this.dashboardName;\r\n data[\"name\"] = this.name;\r\n data[\"application\"] = this.application;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAddNewPageInput {\r\n dashboardName: string | undefined;\r\n name: string | undefined;\r\n application: string | undefined;\r\n}\r\n\r\nexport class AddNewPageOutput implements IAddNewPageOutput {\r\n pageId!: string | undefined;\r\n\r\n constructor(data?: IAddNewPageOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pageId = _data[\"pageId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AddNewPageOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AddNewPageOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pageId\"] = this.pageId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAddNewPageOutput {\r\n pageId: string | undefined;\r\n}\r\n\r\nexport class AddWidgetInput implements IAddWidgetInput {\r\n widgetId!: string | undefined;\r\n pageId!: string | undefined;\r\n dashboardName!: string | undefined;\r\n width!: number;\r\n height!: number;\r\n application!: string | undefined;\r\n\r\n constructor(data?: IAddWidgetInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.widgetId = _data[\"widgetId\"];\r\n this.pageId = _data[\"pageId\"];\r\n this.dashboardName = _data[\"dashboardName\"];\r\n this.width = _data[\"width\"];\r\n this.height = _data[\"height\"];\r\n this.application = _data[\"application\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AddWidgetInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AddWidgetInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"widgetId\"] = this.widgetId;\r\n data[\"pageId\"] = this.pageId;\r\n data[\"dashboardName\"] = this.dashboardName;\r\n data[\"width\"] = this.width;\r\n data[\"height\"] = this.height;\r\n data[\"application\"] = this.application;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAddWidgetInput {\r\n widgetId: string | undefined;\r\n pageId: string | undefined;\r\n dashboardName: string | undefined;\r\n width: number;\r\n height: number;\r\n application: string | undefined;\r\n}\r\n\r\nexport class AppSettingsJsonDto implements IAppSettingsJsonDto {\r\n webSiteUrl!: string | undefined;\r\n serverSiteUrl!: string | undefined;\r\n languages!: NameValue[] | undefined;\r\n\r\n constructor(data?: IAppSettingsJsonDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.webSiteUrl = _data[\"webSiteUrl\"];\r\n this.serverSiteUrl = _data[\"serverSiteUrl\"];\r\n if (Array.isArray(_data[\"languages\"])) {\r\n this.languages = [] as any;\r\n for (let item of _data[\"languages\"])\r\n this.languages!.push(NameValue.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppSettingsJsonDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppSettingsJsonDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"webSiteUrl\"] = this.webSiteUrl;\r\n data[\"serverSiteUrl\"] = this.serverSiteUrl;\r\n if (Array.isArray(this.languages)) {\r\n data[\"languages\"] = [];\r\n for (let item of this.languages)\r\n data[\"languages\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppSettingsJsonDto {\r\n webSiteUrl: string | undefined;\r\n serverSiteUrl: string | undefined;\r\n languages: NameValue[] | undefined;\r\n}\r\n\r\nexport class ApplicationInfoDto implements IApplicationInfoDto {\r\n version!: string | undefined;\r\n releaseDate!: DateTime;\r\n currency!: string | undefined;\r\n currencySign!: string | undefined;\r\n allowTenantsToChangeEmailSettings!: boolean;\r\n userDelegationIsEnabled!: boolean;\r\n twoFactorCodeExpireSeconds!: number;\r\n features!: { [key: string]: boolean; } | undefined;\r\n\r\n constructor(data?: IApplicationInfoDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.version = _data[\"version\"];\r\n this.releaseDate = _data[\"releaseDate\"] ? DateTime.fromISO(_data[\"releaseDate\"].toString()) : undefined;\r\n this.currency = _data[\"currency\"];\r\n this.currencySign = _data[\"currencySign\"];\r\n this.allowTenantsToChangeEmailSettings = _data[\"allowTenantsToChangeEmailSettings\"];\r\n this.userDelegationIsEnabled = _data[\"userDelegationIsEnabled\"];\r\n this.twoFactorCodeExpireSeconds = _data[\"twoFactorCodeExpireSeconds\"];\r\n if (_data[\"features\"]) {\r\n this.features = {} as any;\r\n for (let key in _data[\"features\"]) {\r\n if (_data[\"features\"].hasOwnProperty(key))\r\n (this.features)![key] = _data[\"features\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ApplicationInfoDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ApplicationInfoDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"version\"] = this.version;\r\n data[\"releaseDate\"] = this.releaseDate ? this.releaseDate.toString() : undefined;\r\n data[\"currency\"] = this.currency;\r\n data[\"currencySign\"] = this.currencySign;\r\n data[\"allowTenantsToChangeEmailSettings\"] = this.allowTenantsToChangeEmailSettings;\r\n data[\"userDelegationIsEnabled\"] = this.userDelegationIsEnabled;\r\n data[\"twoFactorCodeExpireSeconds\"] = this.twoFactorCodeExpireSeconds;\r\n if (this.features) {\r\n data[\"features\"] = {};\r\n for (let key in this.features) {\r\n if (this.features.hasOwnProperty(key))\r\n (data[\"features\"])[key] = (this.features)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IApplicationInfoDto {\r\n version: string | undefined;\r\n releaseDate: DateTime;\r\n currency: string | undefined;\r\n currencySign: string | undefined;\r\n allowTenantsToChangeEmailSettings: boolean;\r\n userDelegationIsEnabled: boolean;\r\n twoFactorCodeExpireSeconds: number;\r\n features: { [key: string]: boolean; } | undefined;\r\n}\r\n\r\nexport class ApplicationLanguageEditDto implements IApplicationLanguageEditDto {\r\n id!: number | undefined;\r\n name!: string;\r\n icon!: string | undefined;\r\n isEnabled!: boolean;\r\n\r\n constructor(data?: IApplicationLanguageEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.icon = _data[\"icon\"];\r\n this.isEnabled = _data[\"isEnabled\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ApplicationLanguageEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ApplicationLanguageEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"icon\"] = this.icon;\r\n data[\"isEnabled\"] = this.isEnabled;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IApplicationLanguageEditDto {\r\n id: number | undefined;\r\n name: string;\r\n icon: string | undefined;\r\n isEnabled: boolean;\r\n}\r\n\r\nexport class ApplicationLanguageListDto implements IApplicationLanguageListDto {\r\n tenantId!: number | undefined;\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n icon!: string | undefined;\r\n isDisabled!: boolean;\r\n isDeleted!: boolean;\r\n deleterUserId!: number | undefined;\r\n deletionTime!: DateTime | undefined;\r\n lastModificationTime!: DateTime | undefined;\r\n lastModifierUserId!: number | undefined;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IApplicationLanguageListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.icon = _data[\"icon\"];\r\n this.isDisabled = _data[\"isDisabled\"];\r\n this.isDeleted = _data[\"isDeleted\"];\r\n this.deleterUserId = _data[\"deleterUserId\"];\r\n this.deletionTime = _data[\"deletionTime\"] ? DateTime.fromISO(_data[\"deletionTime\"].toString()) : undefined;\r\n this.lastModificationTime = _data[\"lastModificationTime\"] ? DateTime.fromISO(_data[\"lastModificationTime\"].toString()) : undefined;\r\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ApplicationLanguageListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ApplicationLanguageListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"icon\"] = this.icon;\r\n data[\"isDisabled\"] = this.isDisabled;\r\n data[\"isDeleted\"] = this.isDeleted;\r\n data[\"deleterUserId\"] = this.deleterUserId;\r\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toString() : undefined;\r\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toString() : undefined;\r\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IApplicationLanguageListDto {\r\n tenantId: number | undefined;\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n icon: string | undefined;\r\n isDisabled: boolean;\r\n isDeleted: boolean;\r\n deleterUserId: number | undefined;\r\n deletionTime: DateTime | undefined;\r\n lastModificationTime: DateTime | undefined;\r\n lastModifierUserId: number | undefined;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class Appointment implements IAppointment {\r\n warehouseId!: number;\r\n warehouseDockDoorId!: number | undefined;\r\n clientId!: number | undefined;\r\n isOnHold!: boolean;\r\n startDate!: DateTime;\r\n endDate!: DateTime;\r\n noteText!: string | undefined;\r\n storageLocationExternal!: string | undefined;\r\n trailerExternalDisplayNumber!: string | undefined;\r\n type!: AppointmentType;\r\n externalDateModified!: DateTime;\r\n lastSyncTime!: DateTime;\r\n warehouse!: Warehouse;\r\n dockDoor!: WarehouseDockDoor;\r\n shipments!: Shipment[] | undefined;\r\n client!: Client;\r\n version!: string | undefined;\r\n externalId!: string | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IAppointment) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.warehouseDockDoorId = _data[\"warehouseDockDoorId\"];\r\n this.clientId = _data[\"clientId\"];\r\n this.isOnHold = _data[\"isOnHold\"];\r\n this.startDate = _data[\"startDate\"] ? DateTime.fromISO(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? DateTime.fromISO(_data[\"endDate\"].toString()) : undefined;\r\n this.noteText = _data[\"noteText\"];\r\n this.storageLocationExternal = _data[\"storageLocationExternal\"];\r\n this.trailerExternalDisplayNumber = _data[\"trailerExternalDisplayNumber\"];\r\n this.type = _data[\"type\"];\r\n this.externalDateModified = _data[\"externalDateModified\"] ? DateTime.fromISO(_data[\"externalDateModified\"].toString()) : undefined;\r\n this.lastSyncTime = _data[\"lastSyncTime\"] ? DateTime.fromISO(_data[\"lastSyncTime\"].toString()) : undefined;\r\n this.warehouse = _data[\"warehouse\"] ? Warehouse.fromJS(_data[\"warehouse\"]) : undefined;\r\n this.dockDoor = _data[\"dockDoor\"] ? WarehouseDockDoor.fromJS(_data[\"dockDoor\"]) : undefined;\r\n if (Array.isArray(_data[\"shipments\"])) {\r\n this.shipments = [] as any;\r\n for (let item of _data[\"shipments\"])\r\n this.shipments!.push(Shipment.fromJS(item));\r\n }\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.version = _data[\"version\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Appointment {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Appointment();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"warehouseDockDoorId\"] = this.warehouseDockDoorId;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"isOnHold\"] = this.isOnHold;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toString() : undefined;\r\n data[\"noteText\"] = this.noteText;\r\n data[\"storageLocationExternal\"] = this.storageLocationExternal;\r\n data[\"trailerExternalDisplayNumber\"] = this.trailerExternalDisplayNumber;\r\n data[\"type\"] = this.type;\r\n data[\"externalDateModified\"] = this.externalDateModified ? this.externalDateModified.toString() : undefined;\r\n data[\"lastSyncTime\"] = this.lastSyncTime ? this.lastSyncTime.toString() : undefined;\r\n data[\"warehouse\"] = this.warehouse ? this.warehouse.toJSON() : undefined;\r\n data[\"dockDoor\"] = this.dockDoor ? this.dockDoor.toJSON() : undefined;\r\n if (Array.isArray(this.shipments)) {\r\n data[\"shipments\"] = [];\r\n for (let item of this.shipments)\r\n data[\"shipments\"].push(item.toJSON());\r\n }\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"version\"] = this.version;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointment {\r\n warehouseId: number;\r\n warehouseDockDoorId: number | undefined;\r\n clientId: number | undefined;\r\n isOnHold: boolean;\r\n startDate: DateTime;\r\n endDate: DateTime;\r\n noteText: string | undefined;\r\n storageLocationExternal: string | undefined;\r\n trailerExternalDisplayNumber: string | undefined;\r\n type: AppointmentType;\r\n externalDateModified: DateTime;\r\n lastSyncTime: DateTime;\r\n warehouse: Warehouse;\r\n dockDoor: WarehouseDockDoor;\r\n shipments: Shipment[] | undefined;\r\n client: Client;\r\n version: string | undefined;\r\n externalId: string | undefined;\r\n id: string;\r\n}\r\n\r\nexport class AppointmentDto implements IAppointmentDto {\r\n shipments!: number[] | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IAppointmentDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"shipments\"])) {\r\n this.shipments = [] as any;\r\n for (let item of _data[\"shipments\"])\r\n this.shipments!.push(item);\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.shipments)) {\r\n data[\"shipments\"] = [];\r\n for (let item of this.shipments)\r\n data[\"shipments\"].push(item);\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentDto {\r\n shipments: number[] | undefined;\r\n id: string;\r\n}\r\n\r\nexport class AppointmentScheduleSettings implements IAppointmentScheduleSettings {\r\n warehouseId!: number;\r\n warehouse!: Warehouse;\r\n clientId!: number | undefined;\r\n client!: Client;\r\n timeSlotMinDuration!: string;\r\n timeWindow!: AppointmentScheduleSettingsTradeClassTimeWindow;\r\n totalAvailableParallelSlots!: number | undefined;\r\n leadTime!: AppointmentScheduleSettingsTradeClassLeadTime;\r\n sameClientTimeBetweenAppointments!: string | undefined;\r\n disabledDates!: AppointmentScheduleSettingsDisabledDateRange[] | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IAppointmentScheduleSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.warehouse = _data[\"warehouse\"] ? Warehouse.fromJS(_data[\"warehouse\"]) : undefined;\r\n this.clientId = _data[\"clientId\"];\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.timeSlotMinDuration = _data[\"timeSlotMinDuration\"];\r\n this.timeWindow = _data[\"timeWindow\"] ? AppointmentScheduleSettingsTradeClassTimeWindow.fromJS(_data[\"timeWindow\"]) : undefined;\r\n this.totalAvailableParallelSlots = _data[\"totalAvailableParallelSlots\"];\r\n this.leadTime = _data[\"leadTime\"] ? AppointmentScheduleSettingsTradeClassLeadTime.fromJS(_data[\"leadTime\"]) : undefined;\r\n this.sameClientTimeBetweenAppointments = _data[\"sameClientTimeBetweenAppointments\"];\r\n if (Array.isArray(_data[\"disabledDates\"])) {\r\n this.disabledDates = [] as any;\r\n for (let item of _data[\"disabledDates\"])\r\n this.disabledDates!.push(AppointmentScheduleSettingsDisabledDateRange.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"warehouse\"] = this.warehouse ? this.warehouse.toJSON() : undefined;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"timeSlotMinDuration\"] = this.timeSlotMinDuration;\r\n data[\"timeWindow\"] = this.timeWindow ? this.timeWindow.toJSON() : undefined;\r\n data[\"totalAvailableParallelSlots\"] = this.totalAvailableParallelSlots;\r\n data[\"leadTime\"] = this.leadTime ? this.leadTime.toJSON() : undefined;\r\n data[\"sameClientTimeBetweenAppointments\"] = this.sameClientTimeBetweenAppointments;\r\n if (Array.isArray(this.disabledDates)) {\r\n data[\"disabledDates\"] = [];\r\n for (let item of this.disabledDates)\r\n data[\"disabledDates\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettings {\r\n warehouseId: number;\r\n warehouse: Warehouse;\r\n clientId: number | undefined;\r\n client: Client;\r\n timeSlotMinDuration: string;\r\n timeWindow: AppointmentScheduleSettingsTradeClassTimeWindow;\r\n totalAvailableParallelSlots: number | undefined;\r\n leadTime: AppointmentScheduleSettingsTradeClassLeadTime;\r\n sameClientTimeBetweenAppointments: string | undefined;\r\n disabledDates: AppointmentScheduleSettingsDisabledDateRange[] | undefined;\r\n id: string;\r\n}\r\n\r\nexport class AppointmentScheduleSettingsDisabledDateRange implements IAppointmentScheduleSettingsDisabledDateRange {\r\n settingsId!: string;\r\n settings!: AppointmentScheduleSettings;\r\n disabledDateStart!: DateTime;\r\n disabledDateEnd!: DateTime;\r\n id!: string;\r\n\r\n constructor(data?: IAppointmentScheduleSettingsDisabledDateRange) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.settingsId = _data[\"settingsId\"];\r\n this.settings = _data[\"settings\"] ? AppointmentScheduleSettings.fromJS(_data[\"settings\"]) : undefined;\r\n this.disabledDateStart = _data[\"disabledDateStart\"] ? DateTime.fromISO(_data[\"disabledDateStart\"].toString()) : undefined;\r\n this.disabledDateEnd = _data[\"disabledDateEnd\"] ? DateTime.fromISO(_data[\"disabledDateEnd\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettingsDisabledDateRange {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettingsDisabledDateRange();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"settingsId\"] = this.settingsId;\r\n data[\"settings\"] = this.settings ? this.settings.toJSON() : undefined;\r\n data[\"disabledDateStart\"] = this.disabledDateStart ? this.disabledDateStart.toString() : undefined;\r\n data[\"disabledDateEnd\"] = this.disabledDateEnd ? this.disabledDateEnd.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettingsDisabledDateRange {\r\n settingsId: string;\r\n settings: AppointmentScheduleSettings;\r\n disabledDateStart: DateTime;\r\n disabledDateEnd: DateTime;\r\n id: string;\r\n}\r\n\r\nexport class AppointmentScheduleSettingsDto implements IAppointmentScheduleSettingsDto {\r\n warehouseId!: number;\r\n clientId!: number | undefined;\r\n timeSlotMinDuration!: string;\r\n timeWindow!: AppointmentScheduleSettingsTradeClassTimeWindowDto;\r\n totalAvailableParallelSlots!: number | undefined;\r\n leadTime!: AppointmentScheduleSettingsTradeClassLeadTimeDto;\r\n sameClientTimeBetweenAppointments!: string | undefined;\r\n disabledDates!: DateTimeRangeDto[] | undefined;\r\n\r\n constructor(data?: IAppointmentScheduleSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.clientId = _data[\"clientId\"];\r\n this.timeSlotMinDuration = _data[\"timeSlotMinDuration\"];\r\n this.timeWindow = _data[\"timeWindow\"] ? AppointmentScheduleSettingsTradeClassTimeWindowDto.fromJS(_data[\"timeWindow\"]) : undefined;\r\n this.totalAvailableParallelSlots = _data[\"totalAvailableParallelSlots\"];\r\n this.leadTime = _data[\"leadTime\"] ? AppointmentScheduleSettingsTradeClassLeadTimeDto.fromJS(_data[\"leadTime\"]) : undefined;\r\n this.sameClientTimeBetweenAppointments = _data[\"sameClientTimeBetweenAppointments\"];\r\n if (Array.isArray(_data[\"disabledDates\"])) {\r\n this.disabledDates = [] as any;\r\n for (let item of _data[\"disabledDates\"])\r\n this.disabledDates!.push(DateTimeRangeDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"timeSlotMinDuration\"] = this.timeSlotMinDuration;\r\n data[\"timeWindow\"] = this.timeWindow ? this.timeWindow.toJSON() : undefined;\r\n data[\"totalAvailableParallelSlots\"] = this.totalAvailableParallelSlots;\r\n data[\"leadTime\"] = this.leadTime ? this.leadTime.toJSON() : undefined;\r\n data[\"sameClientTimeBetweenAppointments\"] = this.sameClientTimeBetweenAppointments;\r\n if (Array.isArray(this.disabledDates)) {\r\n data[\"disabledDates\"] = [];\r\n for (let item of this.disabledDates)\r\n data[\"disabledDates\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettingsDto {\r\n warehouseId: number;\r\n clientId: number | undefined;\r\n timeSlotMinDuration: string;\r\n timeWindow: AppointmentScheduleSettingsTradeClassTimeWindowDto;\r\n totalAvailableParallelSlots: number | undefined;\r\n leadTime: AppointmentScheduleSettingsTradeClassLeadTimeDto;\r\n sameClientTimeBetweenAppointments: string | undefined;\r\n disabledDates: DateTimeRangeDto[] | undefined;\r\n}\r\n\r\nexport class AppointmentScheduleSettingsShipmentTypeTimeWindow implements IAppointmentScheduleSettingsShipmentTypeTimeWindow {\r\n inbound!: TimeOnlyRange;\r\n outbound!: TimeOnlyRange;\r\n\r\n constructor(data?: IAppointmentScheduleSettingsShipmentTypeTimeWindow) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.inbound = _data[\"inbound\"] ? TimeOnlyRange.fromJS(_data[\"inbound\"]) : undefined;\r\n this.outbound = _data[\"outbound\"] ? TimeOnlyRange.fromJS(_data[\"outbound\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettingsShipmentTypeTimeWindow {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettingsShipmentTypeTimeWindow();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"inbound\"] = this.inbound ? this.inbound.toJSON() : undefined;\r\n data[\"outbound\"] = this.outbound ? this.outbound.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettingsShipmentTypeTimeWindow {\r\n inbound: TimeOnlyRange;\r\n outbound: TimeOnlyRange;\r\n}\r\n\r\nexport class AppointmentScheduleSettingsShipmentTypeTimeWindowDto implements IAppointmentScheduleSettingsShipmentTypeTimeWindowDto {\r\n inbound!: TimeSpanRangeDto;\r\n outbound!: TimeSpanRangeDto;\r\n\r\n constructor(data?: IAppointmentScheduleSettingsShipmentTypeTimeWindowDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.inbound = _data[\"inbound\"] ? TimeSpanRangeDto.fromJS(_data[\"inbound\"]) : undefined;\r\n this.outbound = _data[\"outbound\"] ? TimeSpanRangeDto.fromJS(_data[\"outbound\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettingsShipmentTypeTimeWindowDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettingsShipmentTypeTimeWindowDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"inbound\"] = this.inbound ? this.inbound.toJSON() : undefined;\r\n data[\"outbound\"] = this.outbound ? this.outbound.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettingsShipmentTypeTimeWindowDto {\r\n inbound: TimeSpanRangeDto;\r\n outbound: TimeSpanRangeDto;\r\n}\r\n\r\nexport class AppointmentScheduleSettingsTradeClassLeadTime implements IAppointmentScheduleSettingsTradeClassLeadTime {\r\n import!: string | undefined;\r\n export!: string | undefined;\r\n domestic!: string | undefined;\r\n\r\n constructor(data?: IAppointmentScheduleSettingsTradeClassLeadTime) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.import = _data[\"import\"];\r\n this.export = _data[\"export\"];\r\n this.domestic = _data[\"domestic\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettingsTradeClassLeadTime {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettingsTradeClassLeadTime();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"import\"] = this.import;\r\n data[\"export\"] = this.export;\r\n data[\"domestic\"] = this.domestic;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettingsTradeClassLeadTime {\r\n import: string | undefined;\r\n export: string | undefined;\r\n domestic: string | undefined;\r\n}\r\n\r\nexport class AppointmentScheduleSettingsTradeClassLeadTimeDto implements IAppointmentScheduleSettingsTradeClassLeadTimeDto {\r\n import!: string | undefined;\r\n export!: string | undefined;\r\n domestic!: string | undefined;\r\n\r\n constructor(data?: IAppointmentScheduleSettingsTradeClassLeadTimeDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.import = _data[\"import\"];\r\n this.export = _data[\"export\"];\r\n this.domestic = _data[\"domestic\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettingsTradeClassLeadTimeDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettingsTradeClassLeadTimeDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"import\"] = this.import;\r\n data[\"export\"] = this.export;\r\n data[\"domestic\"] = this.domestic;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettingsTradeClassLeadTimeDto {\r\n import: string | undefined;\r\n export: string | undefined;\r\n domestic: string | undefined;\r\n}\r\n\r\nexport class AppointmentScheduleSettingsTradeClassTimeWindow implements IAppointmentScheduleSettingsTradeClassTimeWindow {\r\n import!: AppointmentScheduleSettingsShipmentTypeTimeWindow;\r\n export!: AppointmentScheduleSettingsShipmentTypeTimeWindow;\r\n domestic!: AppointmentScheduleSettingsShipmentTypeTimeWindow;\r\n\r\n constructor(data?: IAppointmentScheduleSettingsTradeClassTimeWindow) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.import = _data[\"import\"] ? AppointmentScheduleSettingsShipmentTypeTimeWindow.fromJS(_data[\"import\"]) : undefined;\r\n this.export = _data[\"export\"] ? AppointmentScheduleSettingsShipmentTypeTimeWindow.fromJS(_data[\"export\"]) : undefined;\r\n this.domestic = _data[\"domestic\"] ? AppointmentScheduleSettingsShipmentTypeTimeWindow.fromJS(_data[\"domestic\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettingsTradeClassTimeWindow {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettingsTradeClassTimeWindow();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"import\"] = this.import ? this.import.toJSON() : undefined;\r\n data[\"export\"] = this.export ? this.export.toJSON() : undefined;\r\n data[\"domestic\"] = this.domestic ? this.domestic.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettingsTradeClassTimeWindow {\r\n import: AppointmentScheduleSettingsShipmentTypeTimeWindow;\r\n export: AppointmentScheduleSettingsShipmentTypeTimeWindow;\r\n domestic: AppointmentScheduleSettingsShipmentTypeTimeWindow;\r\n}\r\n\r\nexport class AppointmentScheduleSettingsTradeClassTimeWindowDto implements IAppointmentScheduleSettingsTradeClassTimeWindowDto {\r\n import!: AppointmentScheduleSettingsShipmentTypeTimeWindowDto;\r\n export!: AppointmentScheduleSettingsShipmentTypeTimeWindowDto;\r\n domestic!: AppointmentScheduleSettingsShipmentTypeTimeWindowDto;\r\n\r\n constructor(data?: IAppointmentScheduleSettingsTradeClassTimeWindowDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.import = _data[\"import\"] ? AppointmentScheduleSettingsShipmentTypeTimeWindowDto.fromJS(_data[\"import\"]) : undefined;\r\n this.export = _data[\"export\"] ? AppointmentScheduleSettingsShipmentTypeTimeWindowDto.fromJS(_data[\"export\"]) : undefined;\r\n this.domestic = _data[\"domestic\"] ? AppointmentScheduleSettingsShipmentTypeTimeWindowDto.fromJS(_data[\"domestic\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AppointmentScheduleSettingsTradeClassTimeWindowDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AppointmentScheduleSettingsTradeClassTimeWindowDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"import\"] = this.import ? this.import.toJSON() : undefined;\r\n data[\"export\"] = this.export ? this.export.toJSON() : undefined;\r\n data[\"domestic\"] = this.domestic ? this.domestic.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAppointmentScheduleSettingsTradeClassTimeWindowDto {\r\n import: AppointmentScheduleSettingsShipmentTypeTimeWindowDto;\r\n export: AppointmentScheduleSettingsShipmentTypeTimeWindowDto;\r\n domestic: AppointmentScheduleSettingsShipmentTypeTimeWindowDto;\r\n}\r\n\r\nexport enum AppointmentType {\r\n Unknown = 0,\r\n Shipment = 1,\r\n}\r\n\r\nexport class AuditLogListDto implements IAuditLogListDto {\r\n userId!: number | undefined;\r\n userName!: string | undefined;\r\n impersonatorTenantId!: number | undefined;\r\n impersonatorUserId!: number | undefined;\r\n serviceName!: string | undefined;\r\n methodName!: string | undefined;\r\n parameters!: string | undefined;\r\n executionTime!: DateTime;\r\n executionDuration!: number;\r\n clientIpAddress!: string | undefined;\r\n clientName!: string | undefined;\r\n browserInfo!: string | undefined;\r\n exception!: string | undefined;\r\n customData!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IAuditLogListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.userName = _data[\"userName\"];\r\n this.impersonatorTenantId = _data[\"impersonatorTenantId\"];\r\n this.impersonatorUserId = _data[\"impersonatorUserId\"];\r\n this.serviceName = _data[\"serviceName\"];\r\n this.methodName = _data[\"methodName\"];\r\n this.parameters = _data[\"parameters\"];\r\n this.executionTime = _data[\"executionTime\"] ? DateTime.fromISO(_data[\"executionTime\"].toString()) : undefined;\r\n this.executionDuration = _data[\"executionDuration\"];\r\n this.clientIpAddress = _data[\"clientIpAddress\"];\r\n this.clientName = _data[\"clientName\"];\r\n this.browserInfo = _data[\"browserInfo\"];\r\n this.exception = _data[\"exception\"];\r\n this.customData = _data[\"customData\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AuditLogListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AuditLogListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"userName\"] = this.userName;\r\n data[\"impersonatorTenantId\"] = this.impersonatorTenantId;\r\n data[\"impersonatorUserId\"] = this.impersonatorUserId;\r\n data[\"serviceName\"] = this.serviceName;\r\n data[\"methodName\"] = this.methodName;\r\n data[\"parameters\"] = this.parameters;\r\n data[\"executionTime\"] = this.executionTime ? this.executionTime.toString() : undefined;\r\n data[\"executionDuration\"] = this.executionDuration;\r\n data[\"clientIpAddress\"] = this.clientIpAddress;\r\n data[\"clientName\"] = this.clientName;\r\n data[\"browserInfo\"] = this.browserInfo;\r\n data[\"exception\"] = this.exception;\r\n data[\"customData\"] = this.customData;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAuditLogListDto {\r\n userId: number | undefined;\r\n userName: string | undefined;\r\n impersonatorTenantId: number | undefined;\r\n impersonatorUserId: number | undefined;\r\n serviceName: string | undefined;\r\n methodName: string | undefined;\r\n parameters: string | undefined;\r\n executionTime: DateTime;\r\n executionDuration: number;\r\n clientIpAddress: string | undefined;\r\n clientName: string | undefined;\r\n browserInfo: string | undefined;\r\n exception: string | undefined;\r\n customData: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class AuthenticateModel implements IAuthenticateModel {\r\n userNameOrEmailAddress!: string;\r\n password!: string;\r\n accountNumberSpecified!: boolean;\r\n accountNumber!: string | undefined;\r\n twoFactorVerificationCode!: string | undefined;\r\n rememberClient!: boolean;\r\n twoFactorRememberClientToken!: string | undefined;\r\n singleSignIn!: boolean | undefined;\r\n returnUrl!: string | undefined;\r\n captchaResponse!: string | undefined;\r\n\r\n constructor(data?: IAuthenticateModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userNameOrEmailAddress = _data[\"userNameOrEmailAddress\"];\r\n this.password = _data[\"password\"];\r\n this.accountNumberSpecified = _data[\"accountNumberSpecified\"];\r\n this.accountNumber = _data[\"accountNumber\"];\r\n this.twoFactorVerificationCode = _data[\"twoFactorVerificationCode\"];\r\n this.rememberClient = _data[\"rememberClient\"];\r\n this.twoFactorRememberClientToken = _data[\"twoFactorRememberClientToken\"];\r\n this.singleSignIn = _data[\"singleSignIn\"];\r\n this.returnUrl = _data[\"returnUrl\"];\r\n this.captchaResponse = _data[\"captchaResponse\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AuthenticateModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AuthenticateModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userNameOrEmailAddress\"] = this.userNameOrEmailAddress;\r\n data[\"password\"] = this.password;\r\n data[\"accountNumberSpecified\"] = this.accountNumberSpecified;\r\n data[\"accountNumber\"] = this.accountNumber;\r\n data[\"twoFactorVerificationCode\"] = this.twoFactorVerificationCode;\r\n data[\"rememberClient\"] = this.rememberClient;\r\n data[\"twoFactorRememberClientToken\"] = this.twoFactorRememberClientToken;\r\n data[\"singleSignIn\"] = this.singleSignIn;\r\n data[\"returnUrl\"] = this.returnUrl;\r\n data[\"captchaResponse\"] = this.captchaResponse;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAuthenticateModel {\r\n userNameOrEmailAddress: string;\r\n password: string;\r\n accountNumberSpecified: boolean;\r\n accountNumber: string | undefined;\r\n twoFactorVerificationCode: string | undefined;\r\n rememberClient: boolean;\r\n twoFactorRememberClientToken: string | undefined;\r\n singleSignIn: boolean | undefined;\r\n returnUrl: string | undefined;\r\n captchaResponse: string | undefined;\r\n}\r\n\r\nexport class AuthenticateResultModel implements IAuthenticateResultModel {\r\n accessToken!: string | undefined;\r\n encryptedAccessToken!: string | undefined;\r\n expireInSeconds!: number;\r\n shouldResetPassword!: boolean;\r\n passwordResetCode!: string | undefined;\r\n userId!: number;\r\n requiresTwoFactorVerification!: boolean;\r\n twoFactorAuthProviders!: string[] | undefined;\r\n twoFactorRememberClientToken!: string | undefined;\r\n returnUrl!: string | undefined;\r\n refreshToken!: string | undefined;\r\n refreshTokenExpireInSeconds!: number;\r\n\r\n constructor(data?: IAuthenticateResultModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.accessToken = _data[\"accessToken\"];\r\n this.encryptedAccessToken = _data[\"encryptedAccessToken\"];\r\n this.expireInSeconds = _data[\"expireInSeconds\"];\r\n this.shouldResetPassword = _data[\"shouldResetPassword\"];\r\n this.passwordResetCode = _data[\"passwordResetCode\"];\r\n this.userId = _data[\"userId\"];\r\n this.requiresTwoFactorVerification = _data[\"requiresTwoFactorVerification\"];\r\n if (Array.isArray(_data[\"twoFactorAuthProviders\"])) {\r\n this.twoFactorAuthProviders = [] as any;\r\n for (let item of _data[\"twoFactorAuthProviders\"])\r\n this.twoFactorAuthProviders!.push(item);\r\n }\r\n this.twoFactorRememberClientToken = _data[\"twoFactorRememberClientToken\"];\r\n this.returnUrl = _data[\"returnUrl\"];\r\n this.refreshToken = _data[\"refreshToken\"];\r\n this.refreshTokenExpireInSeconds = _data[\"refreshTokenExpireInSeconds\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AuthenticateResultModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AuthenticateResultModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"accessToken\"] = this.accessToken;\r\n data[\"encryptedAccessToken\"] = this.encryptedAccessToken;\r\n data[\"expireInSeconds\"] = this.expireInSeconds;\r\n data[\"shouldResetPassword\"] = this.shouldResetPassword;\r\n data[\"passwordResetCode\"] = this.passwordResetCode;\r\n data[\"userId\"] = this.userId;\r\n data[\"requiresTwoFactorVerification\"] = this.requiresTwoFactorVerification;\r\n if (Array.isArray(this.twoFactorAuthProviders)) {\r\n data[\"twoFactorAuthProviders\"] = [];\r\n for (let item of this.twoFactorAuthProviders)\r\n data[\"twoFactorAuthProviders\"].push(item);\r\n }\r\n data[\"twoFactorRememberClientToken\"] = this.twoFactorRememberClientToken;\r\n data[\"returnUrl\"] = this.returnUrl;\r\n data[\"refreshToken\"] = this.refreshToken;\r\n data[\"refreshTokenExpireInSeconds\"] = this.refreshTokenExpireInSeconds;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAuthenticateResultModel {\r\n accessToken: string | undefined;\r\n encryptedAccessToken: string | undefined;\r\n expireInSeconds: number;\r\n shouldResetPassword: boolean;\r\n passwordResetCode: string | undefined;\r\n userId: number;\r\n requiresTwoFactorVerification: boolean;\r\n twoFactorAuthProviders: string[] | undefined;\r\n twoFactorRememberClientToken: string | undefined;\r\n returnUrl: string | undefined;\r\n refreshToken: string | undefined;\r\n refreshTokenExpireInSeconds: number;\r\n}\r\n\r\nexport class AvailableAppointmentSlotDto implements IAvailableAppointmentSlotDto {\r\n date!: DateTime;\r\n timeSlots!: AvailableAppointmentTimeSlotDto[] | undefined;\r\n\r\n constructor(data?: IAvailableAppointmentSlotDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.date = _data[\"date\"] ? DateTime.fromISO(_data[\"date\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"timeSlots\"])) {\r\n this.timeSlots = [] as any;\r\n for (let item of _data[\"timeSlots\"])\r\n this.timeSlots!.push(AvailableAppointmentTimeSlotDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): AvailableAppointmentSlotDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AvailableAppointmentSlotDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"date\"] = this.date ? this.date.toString() : undefined;\r\n if (Array.isArray(this.timeSlots)) {\r\n data[\"timeSlots\"] = [];\r\n for (let item of this.timeSlots)\r\n data[\"timeSlots\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAvailableAppointmentSlotDto {\r\n date: DateTime;\r\n timeSlots: AvailableAppointmentTimeSlotDto[] | undefined;\r\n}\r\n\r\nexport class AvailableAppointmentTimeSlotDto implements IAvailableAppointmentTimeSlotDto {\r\n appointmentInHoldId!: string | undefined;\r\n from!: string;\r\n to!: string;\r\n\r\n constructor(data?: IAvailableAppointmentTimeSlotDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.appointmentInHoldId = _data[\"appointmentInHoldId\"];\r\n this.from = _data[\"from\"];\r\n this.to = _data[\"to\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AvailableAppointmentTimeSlotDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AvailableAppointmentTimeSlotDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"appointmentInHoldId\"] = this.appointmentInHoldId;\r\n data[\"from\"] = this.from;\r\n data[\"to\"] = this.to;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAvailableAppointmentTimeSlotDto {\r\n appointmentInHoldId: string | undefined;\r\n from: string;\r\n to: string;\r\n}\r\n\r\nexport class BlockUserInput implements IBlockUserInput {\r\n userId!: number;\r\n tenantId!: number | undefined;\r\n\r\n constructor(data?: IBlockUserInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BlockUserInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BlockUserInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"tenantId\"] = this.tenantId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBlockUserInput {\r\n userId: number;\r\n tenantId: number | undefined;\r\n}\r\n\r\nexport class CacheDto implements ICacheDto {\r\n name!: string | undefined;\r\n\r\n constructor(data?: ICacheDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CacheDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CacheDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICacheDto {\r\n name: string | undefined;\r\n}\r\n\r\nexport class CancelPaymentDto implements ICancelPaymentDto {\r\n paymentId!: string | undefined;\r\n gateway!: SubscriptionPaymentGatewayType;\r\n\r\n constructor(data?: ICancelPaymentDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.paymentId = _data[\"paymentId\"];\r\n this.gateway = _data[\"gateway\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CancelPaymentDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CancelPaymentDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"paymentId\"] = this.paymentId;\r\n data[\"gateway\"] = this.gateway;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICancelPaymentDto {\r\n paymentId: string | undefined;\r\n gateway: SubscriptionPaymentGatewayType;\r\n}\r\n\r\nexport class Carrier implements ICarrier {\r\n externalId!: string | undefined;\r\n wmsConnectionId!: number;\r\n name!: string | undefined;\r\n wmsConnection!: WMSConnection;\r\n connections!: CarrierConnection[] | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ICarrier) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.name = _data[\"name\"];\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n if (Array.isArray(_data[\"connections\"])) {\r\n this.connections = [] as any;\r\n for (let item of _data[\"connections\"])\r\n this.connections!.push(CarrierConnection.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Carrier {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Carrier();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"name\"] = this.name;\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n if (Array.isArray(this.connections)) {\r\n data[\"connections\"] = [];\r\n for (let item of this.connections)\r\n data[\"connections\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICarrier {\r\n externalId: string | undefined;\r\n wmsConnectionId: number;\r\n name: string | undefined;\r\n wmsConnection: WMSConnection;\r\n connections: CarrierConnection[] | undefined;\r\n id: number;\r\n}\r\n\r\nexport class CarrierConnection implements ICarrierConnection {\r\n carrierId!: number;\r\n tenantId!: number;\r\n carrier!: Carrier;\r\n id!: number;\r\n\r\n constructor(data?: ICarrierConnection) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.carrierId = _data[\"carrierId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.carrier = _data[\"carrier\"] ? Carrier.fromJS(_data[\"carrier\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CarrierConnection {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CarrierConnection();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"carrierId\"] = this.carrierId;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"carrier\"] = this.carrier ? this.carrier.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICarrierConnection {\r\n carrierId: number;\r\n tenantId: number;\r\n carrier: Carrier;\r\n id: number;\r\n}\r\n\r\nexport class ChangePasswordInput implements IChangePasswordInput {\r\n currentPassword!: string;\r\n newPassword!: string;\r\n\r\n constructor(data?: IChangePasswordInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.currentPassword = _data[\"currentPassword\"];\r\n this.newPassword = _data[\"newPassword\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChangePasswordInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChangePasswordInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"currentPassword\"] = this.currentPassword;\r\n data[\"newPassword\"] = this.newPassword;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChangePasswordInput {\r\n currentPassword: string;\r\n newPassword: string;\r\n}\r\n\r\nexport class ChangeUserLanguageDto implements IChangeUserLanguageDto {\r\n languageName!: string;\r\n\r\n constructor(data?: IChangeUserLanguageDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.languageName = _data[\"languageName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChangeUserLanguageDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChangeUserLanguageDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"languageName\"] = this.languageName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChangeUserLanguageDto {\r\n languageName: string;\r\n}\r\n\r\nexport enum ChartDateInterval {\r\n Daily = 1,\r\n Weekly = 2,\r\n Monthly = 3,\r\n}\r\n\r\nexport class ChatMessageDto implements IChatMessageDto {\r\n userId!: number;\r\n tenantId!: number | undefined;\r\n targetUserId!: number;\r\n targetTenantId!: number | undefined;\r\n side!: ChatSide;\r\n readState!: ChatMessageReadState;\r\n receiverReadState!: ChatMessageReadState;\r\n message!: string | undefined;\r\n creationTime!: DateTime;\r\n sharedMessageId!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IChatMessageDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.targetUserId = _data[\"targetUserId\"];\r\n this.targetTenantId = _data[\"targetTenantId\"];\r\n this.side = _data[\"side\"];\r\n this.readState = _data[\"readState\"];\r\n this.receiverReadState = _data[\"receiverReadState\"];\r\n this.message = _data[\"message\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.sharedMessageId = _data[\"sharedMessageId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChatMessageDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChatMessageDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"targetUserId\"] = this.targetUserId;\r\n data[\"targetTenantId\"] = this.targetTenantId;\r\n data[\"side\"] = this.side;\r\n data[\"readState\"] = this.readState;\r\n data[\"receiverReadState\"] = this.receiverReadState;\r\n data[\"message\"] = this.message;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"sharedMessageId\"] = this.sharedMessageId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChatMessageDto {\r\n userId: number;\r\n tenantId: number | undefined;\r\n targetUserId: number;\r\n targetTenantId: number | undefined;\r\n side: ChatSide;\r\n readState: ChatMessageReadState;\r\n receiverReadState: ChatMessageReadState;\r\n message: string | undefined;\r\n creationTime: DateTime;\r\n sharedMessageId: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport enum ChatMessageReadState {\r\n Unread = 1,\r\n Read = 2,\r\n}\r\n\r\nexport enum ChatSide {\r\n Sender = 1,\r\n Receiver = 2,\r\n}\r\n\r\nexport class CheckDatabaseOutput implements ICheckDatabaseOutput {\r\n isDatabaseExist!: boolean;\r\n\r\n constructor(data?: ICheckDatabaseOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isDatabaseExist = _data[\"isDatabaseExist\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CheckDatabaseOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CheckDatabaseOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isDatabaseExist\"] = this.isDatabaseExist;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICheckDatabaseOutput {\r\n isDatabaseExist: boolean;\r\n}\r\n\r\nexport class CleanValuesInput implements ICleanValuesInput {\r\n dynamicEntityPropertyId!: number;\r\n entityId!: string | undefined;\r\n\r\n constructor(data?: ICleanValuesInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.dynamicEntityPropertyId = _data[\"dynamicEntityPropertyId\"];\r\n this.entityId = _data[\"entityId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CleanValuesInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CleanValuesInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"dynamicEntityPropertyId\"] = this.dynamicEntityPropertyId;\r\n data[\"entityId\"] = this.entityId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICleanValuesInput {\r\n dynamicEntityPropertyId: number;\r\n entityId: string | undefined;\r\n}\r\n\r\nexport class Client implements IClient {\r\n externalId!: string | undefined;\r\n wmsConnectionId!: number;\r\n name!: string | undefined;\r\n wmsConnection!: WMSConnection;\r\n warehouses!: ClientWarehouse[] | undefined;\r\n inventoryHeaders!: InventoryDisplayItemHeader[] | undefined;\r\n connections!: ClientConnection[] | undefined;\r\n items!: Item[] | undefined;\r\n customers!: Customer[] | undefined;\r\n orders!: Order[] | undefined;\r\n appointments!: Appointment[] | undefined;\r\n appointmentScheduleSettings!: AppointmentScheduleSettings[] | undefined;\r\n recurringAppointmentSettings!: RecurringAppointmentSettings[] | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IClient) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.name = _data[\"name\"];\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n if (Array.isArray(_data[\"warehouses\"])) {\r\n this.warehouses = [] as any;\r\n for (let item of _data[\"warehouses\"])\r\n this.warehouses!.push(ClientWarehouse.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"inventoryHeaders\"])) {\r\n this.inventoryHeaders = [] as any;\r\n for (let item of _data[\"inventoryHeaders\"])\r\n this.inventoryHeaders!.push(InventoryDisplayItemHeader.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"connections\"])) {\r\n this.connections = [] as any;\r\n for (let item of _data[\"connections\"])\r\n this.connections!.push(ClientConnection.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(Item.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"customers\"])) {\r\n this.customers = [] as any;\r\n for (let item of _data[\"customers\"])\r\n this.customers!.push(Customer.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"orders\"])) {\r\n this.orders = [] as any;\r\n for (let item of _data[\"orders\"])\r\n this.orders!.push(Order.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"appointments\"])) {\r\n this.appointments = [] as any;\r\n for (let item of _data[\"appointments\"])\r\n this.appointments!.push(Appointment.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"appointmentScheduleSettings\"])) {\r\n this.appointmentScheduleSettings = [] as any;\r\n for (let item of _data[\"appointmentScheduleSettings\"])\r\n this.appointmentScheduleSettings!.push(AppointmentScheduleSettings.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"recurringAppointmentSettings\"])) {\r\n this.recurringAppointmentSettings = [] as any;\r\n for (let item of _data[\"recurringAppointmentSettings\"])\r\n this.recurringAppointmentSettings!.push(RecurringAppointmentSettings.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Client {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Client();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"name\"] = this.name;\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n if (Array.isArray(this.warehouses)) {\r\n data[\"warehouses\"] = [];\r\n for (let item of this.warehouses)\r\n data[\"warehouses\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.inventoryHeaders)) {\r\n data[\"inventoryHeaders\"] = [];\r\n for (let item of this.inventoryHeaders)\r\n data[\"inventoryHeaders\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.connections)) {\r\n data[\"connections\"] = [];\r\n for (let item of this.connections)\r\n data[\"connections\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.customers)) {\r\n data[\"customers\"] = [];\r\n for (let item of this.customers)\r\n data[\"customers\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.orders)) {\r\n data[\"orders\"] = [];\r\n for (let item of this.orders)\r\n data[\"orders\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.appointments)) {\r\n data[\"appointments\"] = [];\r\n for (let item of this.appointments)\r\n data[\"appointments\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.appointmentScheduleSettings)) {\r\n data[\"appointmentScheduleSettings\"] = [];\r\n for (let item of this.appointmentScheduleSettings)\r\n data[\"appointmentScheduleSettings\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.recurringAppointmentSettings)) {\r\n data[\"recurringAppointmentSettings\"] = [];\r\n for (let item of this.recurringAppointmentSettings)\r\n data[\"recurringAppointmentSettings\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IClient {\r\n externalId: string | undefined;\r\n wmsConnectionId: number;\r\n name: string | undefined;\r\n wmsConnection: WMSConnection;\r\n warehouses: ClientWarehouse[] | undefined;\r\n inventoryHeaders: InventoryDisplayItemHeader[] | undefined;\r\n connections: ClientConnection[] | undefined;\r\n items: Item[] | undefined;\r\n customers: Customer[] | undefined;\r\n orders: Order[] | undefined;\r\n appointments: Appointment[] | undefined;\r\n appointmentScheduleSettings: AppointmentScheduleSettings[] | undefined;\r\n recurringAppointmentSettings: RecurringAppointmentSettings[] | undefined;\r\n id: number;\r\n}\r\n\r\nexport class ClientConnection implements IClientConnection {\r\n clientId!: number;\r\n tenantId!: number;\r\n client!: Client;\r\n id!: number;\r\n\r\n constructor(data?: IClientConnection) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ClientConnection {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ClientConnection();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IClientConnection {\r\n clientId: number;\r\n tenantId: number;\r\n client: Client;\r\n id: number;\r\n}\r\n\r\nexport class ClientWarehouse implements IClientWarehouse {\r\n clientId!: number;\r\n client!: Client;\r\n warehouseId!: number;\r\n warehouse!: Warehouse;\r\n id!: number;\r\n\r\n constructor(data?: IClientWarehouse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.warehouse = _data[\"warehouse\"] ? Warehouse.fromJS(_data[\"warehouse\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ClientWarehouse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ClientWarehouse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"warehouse\"] = this.warehouse ? this.warehouse.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IClientWarehouse {\r\n clientId: number;\r\n client: Client;\r\n warehouseId: number;\r\n warehouse: Warehouse;\r\n id: number;\r\n}\r\n\r\nexport class ComboboxItemDto implements IComboboxItemDto {\r\n value!: string | undefined;\r\n displayText!: string | undefined;\r\n isSelected!: boolean;\r\n\r\n constructor(data?: IComboboxItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.value = _data[\"value\"];\r\n this.displayText = _data[\"displayText\"];\r\n this.isSelected = _data[\"isSelected\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ComboboxItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ComboboxItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"value\"] = this.value;\r\n data[\"displayText\"] = this.displayText;\r\n data[\"isSelected\"] = this.isSelected;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IComboboxItemDto {\r\n value: string | undefined;\r\n displayText: string | undefined;\r\n isSelected: boolean;\r\n}\r\n\r\nexport class CreateAppointmentInput implements ICreateAppointmentInput {\r\n clientId!: number;\r\n warehouseId!: number;\r\n tradeClass!: TradeClass;\r\n carrierId!: number;\r\n shipmentIds!: number[] | undefined;\r\n appointmentTimeSlot!: CreateAppointmentSlotDto;\r\n notes!: string | undefined;\r\n\r\n constructor(data?: ICreateAppointmentInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.appointmentTimeSlot = new CreateAppointmentSlotDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.tradeClass = _data[\"tradeClass\"];\r\n this.carrierId = _data[\"carrierId\"];\r\n if (Array.isArray(_data[\"shipmentIds\"])) {\r\n this.shipmentIds = [] as any;\r\n for (let item of _data[\"shipmentIds\"])\r\n this.shipmentIds!.push(item);\r\n }\r\n this.appointmentTimeSlot = _data[\"appointmentTimeSlot\"] ? CreateAppointmentSlotDto.fromJS(_data[\"appointmentTimeSlot\"]) : new CreateAppointmentSlotDto();\r\n this.notes = _data[\"notes\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateAppointmentInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateAppointmentInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"tradeClass\"] = this.tradeClass;\r\n data[\"carrierId\"] = this.carrierId;\r\n if (Array.isArray(this.shipmentIds)) {\r\n data[\"shipmentIds\"] = [];\r\n for (let item of this.shipmentIds)\r\n data[\"shipmentIds\"].push(item);\r\n }\r\n data[\"appointmentTimeSlot\"] = this.appointmentTimeSlot ? this.appointmentTimeSlot.toJSON() : undefined;\r\n data[\"notes\"] = this.notes;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateAppointmentInput {\r\n clientId: number;\r\n warehouseId: number;\r\n tradeClass: TradeClass;\r\n carrierId: number;\r\n shipmentIds: number[] | undefined;\r\n appointmentTimeSlot: CreateAppointmentSlotDto;\r\n notes: string | undefined;\r\n}\r\n\r\nexport class CreateAppointmentSlotDto implements ICreateAppointmentSlotDto {\r\n appointmentInHoldId!: string | undefined;\r\n date!: DateTime;\r\n time!: TimeSpanRangeDto;\r\n\r\n constructor(data?: ICreateAppointmentSlotDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.time = new TimeSpanRangeDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.appointmentInHoldId = _data[\"appointmentInHoldId\"];\r\n this.date = _data[\"date\"] ? DateTime.fromISO(_data[\"date\"].toString()) : undefined;\r\n this.time = _data[\"time\"] ? TimeSpanRangeDto.fromJS(_data[\"time\"]) : new TimeSpanRangeDto();\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateAppointmentSlotDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateAppointmentSlotDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"appointmentInHoldId\"] = this.appointmentInHoldId;\r\n data[\"date\"] = this.date ? this.date.toString() : undefined;\r\n data[\"time\"] = this.time ? this.time.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateAppointmentSlotDto {\r\n appointmentInHoldId: string | undefined;\r\n date: DateTime;\r\n time: TimeSpanRangeDto;\r\n}\r\n\r\nexport class CreateEditionDto implements ICreateEditionDto {\r\n edition!: EditionCreateDto;\r\n featureValues!: NameValueDto[];\r\n\r\n constructor(data?: ICreateEditionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.edition = new EditionCreateDto();\r\n this.featureValues = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.edition = _data[\"edition\"] ? EditionCreateDto.fromJS(_data[\"edition\"]) : new EditionCreateDto();\r\n if (Array.isArray(_data[\"featureValues\"])) {\r\n this.featureValues = [] as any;\r\n for (let item of _data[\"featureValues\"])\r\n this.featureValues!.push(NameValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateEditionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateEditionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"edition\"] = this.edition ? this.edition.toJSON() : undefined;\r\n if (Array.isArray(this.featureValues)) {\r\n data[\"featureValues\"] = [];\r\n for (let item of this.featureValues)\r\n data[\"featureValues\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateEditionDto {\r\n edition: EditionCreateDto;\r\n featureValues: NameValueDto[];\r\n}\r\n\r\nexport class CreateFriendshipRequestByUserNameInput implements ICreateFriendshipRequestByUserNameInput {\r\n tenancyName!: string;\r\n userName!: string | undefined;\r\n\r\n constructor(data?: ICreateFriendshipRequestByUserNameInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.userName = _data[\"userName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateFriendshipRequestByUserNameInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateFriendshipRequestByUserNameInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"userName\"] = this.userName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateFriendshipRequestByUserNameInput {\r\n tenancyName: string;\r\n userName: string | undefined;\r\n}\r\n\r\nexport class CreateFriendshipRequestInput implements ICreateFriendshipRequestInput {\r\n userId!: number;\r\n tenantId!: number | undefined;\r\n\r\n constructor(data?: ICreateFriendshipRequestInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateFriendshipRequestInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateFriendshipRequestInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"tenantId\"] = this.tenantId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateFriendshipRequestInput {\r\n userId: number;\r\n tenantId: number | undefined;\r\n}\r\n\r\nexport class CreateInboundShipmentInput implements ICreateInboundShipmentInput {\r\n orders!: CreateInboundShipmentOrderInput[] | undefined;\r\n clientId!: number;\r\n warehouseId!: number;\r\n carrierId!: number;\r\n expectedDate!: DateTime;\r\n tradeClass!: TradeClass;\r\n notes!: string | undefined;\r\n services!: number[] | undefined;\r\n\r\n constructor(data?: ICreateInboundShipmentInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"orders\"])) {\r\n this.orders = [] as any;\r\n for (let item of _data[\"orders\"])\r\n this.orders!.push(CreateInboundShipmentOrderInput.fromJS(item));\r\n }\r\n this.clientId = _data[\"clientId\"];\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.carrierId = _data[\"carrierId\"];\r\n this.expectedDate = _data[\"expectedDate\"] ? DateTime.fromISO(_data[\"expectedDate\"].toString()) : undefined;\r\n this.tradeClass = _data[\"tradeClass\"];\r\n this.notes = _data[\"notes\"];\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateInboundShipmentInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateInboundShipmentInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.orders)) {\r\n data[\"orders\"] = [];\r\n for (let item of this.orders)\r\n data[\"orders\"].push(item.toJSON());\r\n }\r\n data[\"clientId\"] = this.clientId;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"carrierId\"] = this.carrierId;\r\n data[\"expectedDate\"] = this.expectedDate ? this.expectedDate.toString() : undefined;\r\n data[\"tradeClass\"] = this.tradeClass;\r\n data[\"notes\"] = this.notes;\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateInboundShipmentInput {\r\n orders: CreateInboundShipmentOrderInput[] | undefined;\r\n clientId: number;\r\n warehouseId: number;\r\n carrierId: number;\r\n expectedDate: DateTime;\r\n tradeClass: TradeClass;\r\n notes: string | undefined;\r\n services: number[] | undefined;\r\n}\r\n\r\nexport class CreateInboundShipmentOrderInput implements ICreateInboundShipmentOrderInput {\r\n items!: CreateInboundShipmentOrderItemInput[] | undefined;\r\n displayOrderNumber!: string | undefined;\r\n purchaseOrderNumber!: string | undefined;\r\n services!: number[] | undefined;\r\n\r\n constructor(data?: ICreateInboundShipmentOrderInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(CreateInboundShipmentOrderItemInput.fromJS(item));\r\n }\r\n this.displayOrderNumber = _data[\"displayOrderNumber\"];\r\n this.purchaseOrderNumber = _data[\"purchaseOrderNumber\"];\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateInboundShipmentOrderInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateInboundShipmentOrderInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n data[\"displayOrderNumber\"] = this.displayOrderNumber;\r\n data[\"purchaseOrderNumber\"] = this.purchaseOrderNumber;\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateInboundShipmentOrderInput {\r\n items: CreateInboundShipmentOrderItemInput[] | undefined;\r\n displayOrderNumber: string | undefined;\r\n purchaseOrderNumber: string | undefined;\r\n services: number[] | undefined;\r\n}\r\n\r\nexport class CreateInboundShipmentOrderItemInput implements ICreateInboundShipmentOrderItemInput {\r\n itemId!: number;\r\n quantity!: number;\r\n\r\n constructor(data?: ICreateInboundShipmentOrderItemInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.itemId = _data[\"itemId\"];\r\n this.quantity = _data[\"quantity\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateInboundShipmentOrderItemInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateInboundShipmentOrderItemInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"itemId\"] = this.itemId;\r\n data[\"quantity\"] = this.quantity;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateInboundShipmentOrderItemInput {\r\n itemId: number;\r\n quantity: number;\r\n}\r\n\r\nexport class CreateInvoiceDto implements ICreateInvoiceDto {\r\n subscriptionPaymentId!: number;\r\n\r\n constructor(data?: ICreateInvoiceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.subscriptionPaymentId = _data[\"subscriptionPaymentId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateInvoiceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateInvoiceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"subscriptionPaymentId\"] = this.subscriptionPaymentId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateInvoiceDto {\r\n subscriptionPaymentId: number;\r\n}\r\n\r\nexport class CreateMassNotificationInput implements ICreateMassNotificationInput {\r\n message!: string | undefined;\r\n severity!: NotificationSeverity;\r\n userIds!: number[] | undefined;\r\n organizationUnitIds!: number[] | undefined;\r\n targetNotifiers!: string[] | undefined;\r\n\r\n constructor(data?: ICreateMassNotificationInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.message = _data[\"message\"];\r\n this.severity = _data[\"severity\"];\r\n if (Array.isArray(_data[\"userIds\"])) {\r\n this.userIds = [] as any;\r\n for (let item of _data[\"userIds\"])\r\n this.userIds!.push(item);\r\n }\r\n if (Array.isArray(_data[\"organizationUnitIds\"])) {\r\n this.organizationUnitIds = [] as any;\r\n for (let item of _data[\"organizationUnitIds\"])\r\n this.organizationUnitIds!.push(item);\r\n }\r\n if (Array.isArray(_data[\"targetNotifiers\"])) {\r\n this.targetNotifiers = [] as any;\r\n for (let item of _data[\"targetNotifiers\"])\r\n this.targetNotifiers!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateMassNotificationInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateMassNotificationInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"message\"] = this.message;\r\n data[\"severity\"] = this.severity;\r\n if (Array.isArray(this.userIds)) {\r\n data[\"userIds\"] = [];\r\n for (let item of this.userIds)\r\n data[\"userIds\"].push(item);\r\n }\r\n if (Array.isArray(this.organizationUnitIds)) {\r\n data[\"organizationUnitIds\"] = [];\r\n for (let item of this.organizationUnitIds)\r\n data[\"organizationUnitIds\"].push(item);\r\n }\r\n if (Array.isArray(this.targetNotifiers)) {\r\n data[\"targetNotifiers\"] = [];\r\n for (let item of this.targetNotifiers)\r\n data[\"targetNotifiers\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateMassNotificationInput {\r\n message: string | undefined;\r\n severity: NotificationSeverity;\r\n userIds: number[] | undefined;\r\n organizationUnitIds: number[] | undefined;\r\n targetNotifiers: string[] | undefined;\r\n}\r\n\r\nexport class CreateOrUpdateLanguageInput implements ICreateOrUpdateLanguageInput {\r\n language!: ApplicationLanguageEditDto;\r\n\r\n constructor(data?: ICreateOrUpdateLanguageInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.language = new ApplicationLanguageEditDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.language = _data[\"language\"] ? ApplicationLanguageEditDto.fromJS(_data[\"language\"]) : new ApplicationLanguageEditDto();\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOrUpdateLanguageInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOrUpdateLanguageInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"language\"] = this.language ? this.language.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOrUpdateLanguageInput {\r\n language: ApplicationLanguageEditDto;\r\n}\r\n\r\nexport class CreateOrUpdateRoleInput implements ICreateOrUpdateRoleInput {\r\n role!: RoleEditDto;\r\n grantedPermissionNames!: string[];\r\n\r\n constructor(data?: ICreateOrUpdateRoleInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.role = new RoleEditDto();\r\n this.grantedPermissionNames = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.role = _data[\"role\"] ? RoleEditDto.fromJS(_data[\"role\"]) : new RoleEditDto();\r\n if (Array.isArray(_data[\"grantedPermissionNames\"])) {\r\n this.grantedPermissionNames = [] as any;\r\n for (let item of _data[\"grantedPermissionNames\"])\r\n this.grantedPermissionNames!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOrUpdateRoleInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOrUpdateRoleInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"role\"] = this.role ? this.role.toJSON() : undefined;\r\n if (Array.isArray(this.grantedPermissionNames)) {\r\n data[\"grantedPermissionNames\"] = [];\r\n for (let item of this.grantedPermissionNames)\r\n data[\"grantedPermissionNames\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOrUpdateRoleInput {\r\n role: RoleEditDto;\r\n grantedPermissionNames: string[];\r\n}\r\n\r\nexport class CreateOrUpdateUserInput implements ICreateOrUpdateUserInput {\r\n user!: UserEditDto;\r\n assignedRoleNames!: string[];\r\n sendActivationEmail!: boolean;\r\n setRandomPassword!: boolean;\r\n organizationUnits!: number[] | undefined;\r\n\r\n constructor(data?: ICreateOrUpdateUserInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.user = new UserEditDto();\r\n this.assignedRoleNames = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.user = _data[\"user\"] ? UserEditDto.fromJS(_data[\"user\"]) : new UserEditDto();\r\n if (Array.isArray(_data[\"assignedRoleNames\"])) {\r\n this.assignedRoleNames = [] as any;\r\n for (let item of _data[\"assignedRoleNames\"])\r\n this.assignedRoleNames!.push(item);\r\n }\r\n this.sendActivationEmail = _data[\"sendActivationEmail\"];\r\n this.setRandomPassword = _data[\"setRandomPassword\"];\r\n if (Array.isArray(_data[\"organizationUnits\"])) {\r\n this.organizationUnits = [] as any;\r\n for (let item of _data[\"organizationUnits\"])\r\n this.organizationUnits!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOrUpdateUserInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOrUpdateUserInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"user\"] = this.user ? this.user.toJSON() : undefined;\r\n if (Array.isArray(this.assignedRoleNames)) {\r\n data[\"assignedRoleNames\"] = [];\r\n for (let item of this.assignedRoleNames)\r\n data[\"assignedRoleNames\"].push(item);\r\n }\r\n data[\"sendActivationEmail\"] = this.sendActivationEmail;\r\n data[\"setRandomPassword\"] = this.setRandomPassword;\r\n if (Array.isArray(this.organizationUnits)) {\r\n data[\"organizationUnits\"] = [];\r\n for (let item of this.organizationUnits)\r\n data[\"organizationUnits\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOrUpdateUserInput {\r\n user: UserEditDto;\r\n assignedRoleNames: string[];\r\n sendActivationEmail: boolean;\r\n setRandomPassword: boolean;\r\n organizationUnits: number[] | undefined;\r\n}\r\n\r\nexport class CreateOrganizationUnitInput implements ICreateOrganizationUnitInput {\r\n parentId!: number | undefined;\r\n displayName!: string;\r\n\r\n constructor(data?: ICreateOrganizationUnitInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.parentId = _data[\"parentId\"];\r\n this.displayName = _data[\"displayName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOrganizationUnitInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOrganizationUnitInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"parentId\"] = this.parentId;\r\n data[\"displayName\"] = this.displayName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOrganizationUnitInput {\r\n parentId: number | undefined;\r\n displayName: string;\r\n}\r\n\r\nexport class CreateOutboundShipmentCustomerInput implements ICreateOutboundShipmentCustomerInput {\r\n id!: number | undefined;\r\n newCustomer!: CreateOutboundShipmentNewCustomerInput;\r\n\r\n constructor(data?: ICreateOutboundShipmentCustomerInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.newCustomer = _data[\"newCustomer\"] ? CreateOutboundShipmentNewCustomerInput.fromJS(_data[\"newCustomer\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOutboundShipmentCustomerInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOutboundShipmentCustomerInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"newCustomer\"] = this.newCustomer ? this.newCustomer.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOutboundShipmentCustomerInput {\r\n id: number | undefined;\r\n newCustomer: CreateOutboundShipmentNewCustomerInput;\r\n}\r\n\r\nexport class CreateOutboundShipmentInput implements ICreateOutboundShipmentInput {\r\n customer!: CreateOutboundShipmentCustomerInput;\r\n orders!: CreateOutboundShipmentOrderInput[] | undefined;\r\n clientId!: number;\r\n warehouseId!: number;\r\n carrierId!: number;\r\n expectedDate!: DateTime;\r\n tradeClass!: TradeClass;\r\n notes!: string | undefined;\r\n services!: number[] | undefined;\r\n\r\n constructor(data?: ICreateOutboundShipmentInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.customer = new CreateOutboundShipmentCustomerInput();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.customer = _data[\"customer\"] ? CreateOutboundShipmentCustomerInput.fromJS(_data[\"customer\"]) : new CreateOutboundShipmentCustomerInput();\r\n if (Array.isArray(_data[\"orders\"])) {\r\n this.orders = [] as any;\r\n for (let item of _data[\"orders\"])\r\n this.orders!.push(CreateOutboundShipmentOrderInput.fromJS(item));\r\n }\r\n this.clientId = _data[\"clientId\"];\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.carrierId = _data[\"carrierId\"];\r\n this.expectedDate = _data[\"expectedDate\"] ? DateTime.fromISO(_data[\"expectedDate\"].toString()) : undefined;\r\n this.tradeClass = _data[\"tradeClass\"];\r\n this.notes = _data[\"notes\"];\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOutboundShipmentInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOutboundShipmentInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"customer\"] = this.customer ? this.customer.toJSON() : undefined;\r\n if (Array.isArray(this.orders)) {\r\n data[\"orders\"] = [];\r\n for (let item of this.orders)\r\n data[\"orders\"].push(item.toJSON());\r\n }\r\n data[\"clientId\"] = this.clientId;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"carrierId\"] = this.carrierId;\r\n data[\"expectedDate\"] = this.expectedDate ? this.expectedDate.toString() : undefined;\r\n data[\"tradeClass\"] = this.tradeClass;\r\n data[\"notes\"] = this.notes;\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOutboundShipmentInput {\r\n customer: CreateOutboundShipmentCustomerInput;\r\n orders: CreateOutboundShipmentOrderInput[] | undefined;\r\n clientId: number;\r\n warehouseId: number;\r\n carrierId: number;\r\n expectedDate: DateTime;\r\n tradeClass: TradeClass;\r\n notes: string | undefined;\r\n services: number[] | undefined;\r\n}\r\n\r\nexport class CreateOutboundShipmentNewCustomerInput implements ICreateOutboundShipmentNewCustomerInput {\r\n countryAbbreviation!: string;\r\n countrySubdivisionAbbreviation!: string | undefined;\r\n companyName!: string;\r\n addressLine1!: string;\r\n addressLine2!: string | undefined;\r\n city!: string;\r\n postalCode!: string;\r\n\r\n constructor(data?: ICreateOutboundShipmentNewCustomerInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.countryAbbreviation = _data[\"countryAbbreviation\"];\r\n this.countrySubdivisionAbbreviation = _data[\"countrySubdivisionAbbreviation\"];\r\n this.companyName = _data[\"companyName\"];\r\n this.addressLine1 = _data[\"addressLine1\"];\r\n this.addressLine2 = _data[\"addressLine2\"];\r\n this.city = _data[\"city\"];\r\n this.postalCode = _data[\"postalCode\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOutboundShipmentNewCustomerInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOutboundShipmentNewCustomerInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"countryAbbreviation\"] = this.countryAbbreviation;\r\n data[\"countrySubdivisionAbbreviation\"] = this.countrySubdivisionAbbreviation;\r\n data[\"companyName\"] = this.companyName;\r\n data[\"addressLine1\"] = this.addressLine1;\r\n data[\"addressLine2\"] = this.addressLine2;\r\n data[\"city\"] = this.city;\r\n data[\"postalCode\"] = this.postalCode;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOutboundShipmentNewCustomerInput {\r\n countryAbbreviation: string;\r\n countrySubdivisionAbbreviation: string | undefined;\r\n companyName: string;\r\n addressLine1: string;\r\n addressLine2: string | undefined;\r\n city: string;\r\n postalCode: string;\r\n}\r\n\r\nexport class CreateOutboundShipmentOrderInput implements ICreateOutboundShipmentOrderInput {\r\n items!: CreateOutboundShipmentOrderItemInput[] | undefined;\r\n displayOrderNumber!: string | undefined;\r\n purchaseOrderNumber!: string | undefined;\r\n services!: number[] | undefined;\r\n\r\n constructor(data?: ICreateOutboundShipmentOrderInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(CreateOutboundShipmentOrderItemInput.fromJS(item));\r\n }\r\n this.displayOrderNumber = _data[\"displayOrderNumber\"];\r\n this.purchaseOrderNumber = _data[\"purchaseOrderNumber\"];\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOutboundShipmentOrderInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOutboundShipmentOrderInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n data[\"displayOrderNumber\"] = this.displayOrderNumber;\r\n data[\"purchaseOrderNumber\"] = this.purchaseOrderNumber;\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOutboundShipmentOrderInput {\r\n items: CreateOutboundShipmentOrderItemInput[] | undefined;\r\n displayOrderNumber: string | undefined;\r\n purchaseOrderNumber: string | undefined;\r\n services: number[] | undefined;\r\n}\r\n\r\nexport class CreateOutboundShipmentOrderItemInput implements ICreateOutboundShipmentOrderItemInput {\r\n lotNumber!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n inboundCustomerPONumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n trackingNumber!: string | undefined;\r\n inventoryStatusId!: number | undefined;\r\n itemId!: number;\r\n quantity!: number;\r\n\r\n constructor(data?: ICreateOutboundShipmentOrderItemInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.inboundCustomerPONumber = _data[\"inboundCustomerPONumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.trackingNumber = _data[\"trackingNumber\"];\r\n this.inventoryStatusId = _data[\"inventoryStatusId\"];\r\n this.itemId = _data[\"itemId\"];\r\n this.quantity = _data[\"quantity\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateOutboundShipmentOrderItemInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateOutboundShipmentOrderItemInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"inboundCustomerPONumber\"] = this.inboundCustomerPONumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"trackingNumber\"] = this.trackingNumber;\r\n data[\"inventoryStatusId\"] = this.inventoryStatusId;\r\n data[\"itemId\"] = this.itemId;\r\n data[\"quantity\"] = this.quantity;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateOutboundShipmentOrderItemInput {\r\n lotNumber: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n inboundCustomerPONumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n trackingNumber: string | undefined;\r\n inventoryStatusId: number | undefined;\r\n itemId: number;\r\n quantity: number;\r\n}\r\n\r\nexport class CreatePaymentDto implements ICreatePaymentDto {\r\n editionId!: number;\r\n editionPaymentType!: EditionPaymentType;\r\n paymentPeriodType!: PaymentPeriodType;\r\n subscriptionPaymentGatewayType!: SubscriptionPaymentGatewayType;\r\n recurringPaymentEnabled!: boolean;\r\n successUrl!: string | undefined;\r\n errorUrl!: string | undefined;\r\n\r\n constructor(data?: ICreatePaymentDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.editionId = _data[\"editionId\"];\r\n this.editionPaymentType = _data[\"editionPaymentType\"];\r\n this.paymentPeriodType = _data[\"paymentPeriodType\"];\r\n this.subscriptionPaymentGatewayType = _data[\"subscriptionPaymentGatewayType\"];\r\n this.recurringPaymentEnabled = _data[\"recurringPaymentEnabled\"];\r\n this.successUrl = _data[\"successUrl\"];\r\n this.errorUrl = _data[\"errorUrl\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreatePaymentDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreatePaymentDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"editionId\"] = this.editionId;\r\n data[\"editionPaymentType\"] = this.editionPaymentType;\r\n data[\"paymentPeriodType\"] = this.paymentPeriodType;\r\n data[\"subscriptionPaymentGatewayType\"] = this.subscriptionPaymentGatewayType;\r\n data[\"recurringPaymentEnabled\"] = this.recurringPaymentEnabled;\r\n data[\"successUrl\"] = this.successUrl;\r\n data[\"errorUrl\"] = this.errorUrl;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreatePaymentDto {\r\n editionId: number;\r\n editionPaymentType: EditionPaymentType;\r\n paymentPeriodType: PaymentPeriodType;\r\n subscriptionPaymentGatewayType: SubscriptionPaymentGatewayType;\r\n recurringPaymentEnabled: boolean;\r\n successUrl: string | undefined;\r\n errorUrl: string | undefined;\r\n}\r\n\r\nexport class CreateShipmentOutput implements ICreateShipmentOutput {\r\n shipmentIds!: number[] | undefined;\r\n\r\n constructor(data?: ICreateShipmentOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"shipmentIds\"])) {\r\n this.shipmentIds = [] as any;\r\n for (let item of _data[\"shipmentIds\"])\r\n this.shipmentIds!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateShipmentOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateShipmentOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.shipmentIds)) {\r\n data[\"shipmentIds\"] = [];\r\n for (let item of this.shipmentIds)\r\n data[\"shipmentIds\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateShipmentOutput {\r\n shipmentIds: number[] | undefined;\r\n}\r\n\r\nexport class CreateTenantInput implements ICreateTenantInput {\r\n tenancyName!: string;\r\n name!: string;\r\n adminEmailAddress!: string;\r\n adminName!: string | undefined;\r\n adminSurname!: string | undefined;\r\n adminPassword!: string | undefined;\r\n connectionString!: string | undefined;\r\n shouldChangePasswordOnNextLogin!: boolean;\r\n sendActivationEmail!: boolean;\r\n editionId!: number | undefined;\r\n isActive!: boolean;\r\n subscriptionEndDateUtc!: DateTime | undefined;\r\n isInTrialPeriod!: boolean;\r\n\r\n constructor(data?: ICreateTenantInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.name = _data[\"name\"];\r\n this.adminEmailAddress = _data[\"adminEmailAddress\"];\r\n this.adminName = _data[\"adminName\"];\r\n this.adminSurname = _data[\"adminSurname\"];\r\n this.adminPassword = _data[\"adminPassword\"];\r\n this.connectionString = _data[\"connectionString\"];\r\n this.shouldChangePasswordOnNextLogin = _data[\"shouldChangePasswordOnNextLogin\"];\r\n this.sendActivationEmail = _data[\"sendActivationEmail\"];\r\n this.editionId = _data[\"editionId\"];\r\n this.isActive = _data[\"isActive\"];\r\n this.subscriptionEndDateUtc = _data[\"subscriptionEndDateUtc\"] ? DateTime.fromISO(_data[\"subscriptionEndDateUtc\"].toString()) : undefined;\r\n this.isInTrialPeriod = _data[\"isInTrialPeriod\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateTenantInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateTenantInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"name\"] = this.name;\r\n data[\"adminEmailAddress\"] = this.adminEmailAddress;\r\n data[\"adminName\"] = this.adminName;\r\n data[\"adminSurname\"] = this.adminSurname;\r\n data[\"adminPassword\"] = this.adminPassword;\r\n data[\"connectionString\"] = this.connectionString;\r\n data[\"shouldChangePasswordOnNextLogin\"] = this.shouldChangePasswordOnNextLogin;\r\n data[\"sendActivationEmail\"] = this.sendActivationEmail;\r\n data[\"editionId\"] = this.editionId;\r\n data[\"isActive\"] = this.isActive;\r\n data[\"subscriptionEndDateUtc\"] = this.subscriptionEndDateUtc ? this.subscriptionEndDateUtc.toString() : undefined;\r\n data[\"isInTrialPeriod\"] = this.isInTrialPeriod;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateTenantInput {\r\n tenancyName: string;\r\n name: string;\r\n adminEmailAddress: string;\r\n adminName: string | undefined;\r\n adminSurname: string | undefined;\r\n adminPassword: string | undefined;\r\n connectionString: string | undefined;\r\n shouldChangePasswordOnNextLogin: boolean;\r\n sendActivationEmail: boolean;\r\n editionId: number | undefined;\r\n isActive: boolean;\r\n subscriptionEndDateUtc: DateTime | undefined;\r\n isInTrialPeriod: boolean;\r\n}\r\n\r\nexport class CreateUserDelegationDto implements ICreateUserDelegationDto {\r\n targetUserId!: number;\r\n startTime!: DateTime;\r\n endTime!: DateTime;\r\n\r\n constructor(data?: ICreateUserDelegationDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.targetUserId = _data[\"targetUserId\"];\r\n this.startTime = _data[\"startTime\"] ? DateTime.fromISO(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? DateTime.fromISO(_data[\"endTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateUserDelegationDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateUserDelegationDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"targetUserId\"] = this.targetUserId;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateUserDelegationDto {\r\n targetUserId: number;\r\n startTime: DateTime;\r\n endTime: DateTime;\r\n}\r\n\r\nexport class CurrentUserProfileEditDto implements ICurrentUserProfileEditDto {\r\n name!: string;\r\n surname!: string;\r\n userName!: string;\r\n emailAddress!: string;\r\n phoneNumber!: string | undefined;\r\n isPhoneNumberConfirmed!: boolean;\r\n timezone!: string | undefined;\r\n qrCodeSetupImageUrl!: string | undefined;\r\n isGoogleAuthenticatorEnabled!: boolean;\r\n\r\n constructor(data?: ICurrentUserProfileEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.surname = _data[\"surname\"];\r\n this.userName = _data[\"userName\"];\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.phoneNumber = _data[\"phoneNumber\"];\r\n this.isPhoneNumberConfirmed = _data[\"isPhoneNumberConfirmed\"];\r\n this.timezone = _data[\"timezone\"];\r\n this.qrCodeSetupImageUrl = _data[\"qrCodeSetupImageUrl\"];\r\n this.isGoogleAuthenticatorEnabled = _data[\"isGoogleAuthenticatorEnabled\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CurrentUserProfileEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CurrentUserProfileEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"surname\"] = this.surname;\r\n data[\"userName\"] = this.userName;\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"phoneNumber\"] = this.phoneNumber;\r\n data[\"isPhoneNumberConfirmed\"] = this.isPhoneNumberConfirmed;\r\n data[\"timezone\"] = this.timezone;\r\n data[\"qrCodeSetupImageUrl\"] = this.qrCodeSetupImageUrl;\r\n data[\"isGoogleAuthenticatorEnabled\"] = this.isGoogleAuthenticatorEnabled;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICurrentUserProfileEditDto {\r\n name: string;\r\n surname: string;\r\n userName: string;\r\n emailAddress: string;\r\n phoneNumber: string | undefined;\r\n isPhoneNumberConfirmed: boolean;\r\n timezone: string | undefined;\r\n qrCodeSetupImageUrl: string | undefined;\r\n isGoogleAuthenticatorEnabled: boolean;\r\n}\r\n\r\nexport class Customer implements ICustomer {\r\n clientId!: number;\r\n name!: string | undefined;\r\n customerNumber!: string | undefined;\r\n addressLine1!: string | undefined;\r\n addressLine2!: string | undefined;\r\n addressState!: string | undefined;\r\n addressCity!: string | undefined;\r\n postalCode!: string | undefined;\r\n countryName!: string | undefined;\r\n wmsConnection!: WMSConnection;\r\n client!: Client;\r\n version!: string | undefined;\r\n wmsConnectionId!: number;\r\n externalId!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ICustomer) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.name = _data[\"name\"];\r\n this.customerNumber = _data[\"customerNumber\"];\r\n this.addressLine1 = _data[\"addressLine1\"];\r\n this.addressLine2 = _data[\"addressLine2\"];\r\n this.addressState = _data[\"addressState\"];\r\n this.addressCity = _data[\"addressCity\"];\r\n this.postalCode = _data[\"postalCode\"];\r\n this.countryName = _data[\"countryName\"];\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.version = _data[\"version\"];\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Customer {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Customer();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"name\"] = this.name;\r\n data[\"customerNumber\"] = this.customerNumber;\r\n data[\"addressLine1\"] = this.addressLine1;\r\n data[\"addressLine2\"] = this.addressLine2;\r\n data[\"addressState\"] = this.addressState;\r\n data[\"addressCity\"] = this.addressCity;\r\n data[\"postalCode\"] = this.postalCode;\r\n data[\"countryName\"] = this.countryName;\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"version\"] = this.version;\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICustomer {\r\n clientId: number;\r\n name: string | undefined;\r\n customerNumber: string | undefined;\r\n addressLine1: string | undefined;\r\n addressLine2: string | undefined;\r\n addressState: string | undefined;\r\n addressCity: string | undefined;\r\n postalCode: string | undefined;\r\n countryName: string | undefined;\r\n wmsConnection: WMSConnection;\r\n client: Client;\r\n version: string | undefined;\r\n wmsConnectionId: number;\r\n externalId: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class CustomerDto implements ICustomerDto {\r\n name!: string | undefined;\r\n customerNumber!: string | undefined;\r\n addressLine1!: string | undefined;\r\n addressLine2!: string | undefined;\r\n addressState!: string | undefined;\r\n addressCity!: string | undefined;\r\n postalCode!: string | undefined;\r\n countryName!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ICustomerDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.customerNumber = _data[\"customerNumber\"];\r\n this.addressLine1 = _data[\"addressLine1\"];\r\n this.addressLine2 = _data[\"addressLine2\"];\r\n this.addressState = _data[\"addressState\"];\r\n this.addressCity = _data[\"addressCity\"];\r\n this.postalCode = _data[\"postalCode\"];\r\n this.countryName = _data[\"countryName\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CustomerDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CustomerDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"customerNumber\"] = this.customerNumber;\r\n data[\"addressLine1\"] = this.addressLine1;\r\n data[\"addressLine2\"] = this.addressLine2;\r\n data[\"addressState\"] = this.addressState;\r\n data[\"addressCity\"] = this.addressCity;\r\n data[\"postalCode\"] = this.postalCode;\r\n data[\"countryName\"] = this.countryName;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICustomerDto {\r\n name: string | undefined;\r\n customerNumber: string | undefined;\r\n addressLine1: string | undefined;\r\n addressLine2: string | undefined;\r\n addressState: string | undefined;\r\n addressCity: string | undefined;\r\n postalCode: string | undefined;\r\n countryName: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class Dashboard implements IDashboard {\r\n dashboardName!: string | undefined;\r\n pages!: Page[] | undefined;\r\n\r\n constructor(data?: IDashboard) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.dashboardName = _data[\"dashboardName\"];\r\n if (Array.isArray(_data[\"pages\"])) {\r\n this.pages = [] as any;\r\n for (let item of _data[\"pages\"])\r\n this.pages!.push(Page.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): Dashboard {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Dashboard();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"dashboardName\"] = this.dashboardName;\r\n if (Array.isArray(this.pages)) {\r\n data[\"pages\"] = [];\r\n for (let item of this.pages)\r\n data[\"pages\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDashboard {\r\n dashboardName: string | undefined;\r\n pages: Page[] | undefined;\r\n}\r\n\r\nexport class DashboardOutput implements IDashboardOutput {\r\n name!: string | undefined;\r\n widgets!: WidgetOutput[] | undefined;\r\n\r\n constructor(data?: IDashboardOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"widgets\"])) {\r\n this.widgets = [] as any;\r\n for (let item of _data[\"widgets\"])\r\n this.widgets!.push(WidgetOutput.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): DashboardOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DashboardOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.widgets)) {\r\n data[\"widgets\"] = [];\r\n for (let item of this.widgets)\r\n data[\"widgets\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDashboardOutput {\r\n name: string | undefined;\r\n widgets: WidgetOutput[] | undefined;\r\n}\r\n\r\nexport class DateFieldOutput implements IDateFieldOutput {\r\n date!: DateTime;\r\n\r\n constructor(data?: IDateFieldOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.date = _data[\"date\"] ? DateTime.fromISO(_data[\"date\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DateFieldOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DateFieldOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"date\"] = this.date ? this.date.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDateFieldOutput {\r\n date: DateTime;\r\n}\r\n\r\nexport class DateRangeFieldOutput implements IDateRangeFieldOutput {\r\n startDate!: DateTime;\r\n endDate!: DateTime;\r\n\r\n constructor(data?: IDateRangeFieldOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.startDate = _data[\"startDate\"] ? DateTime.fromISO(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? DateTime.fromISO(_data[\"endDate\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DateRangeFieldOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DateRangeFieldOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startDate\"] = this.startDate ? this.startDate.toString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDateRangeFieldOutput {\r\n startDate: DateTime;\r\n endDate: DateTime;\r\n}\r\n\r\nexport class DateTimeRangeDto implements IDateTimeRangeDto {\r\n from!: DateTime;\r\n to!: DateTime;\r\n\r\n constructor(data?: IDateTimeRangeDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.from = _data[\"from\"] ? DateTime.fromISO(_data[\"from\"].toString()) : undefined;\r\n this.to = _data[\"to\"] ? DateTime.fromISO(_data[\"to\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DateTimeRangeDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DateTimeRangeDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"from\"] = this.from ? this.from.toString() : undefined;\r\n data[\"to\"] = this.to ? this.to.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDateTimeRangeDto {\r\n from: DateTime;\r\n to: DateTime;\r\n}\r\n\r\nexport class DateWithTextFieldOutput implements IDateWithTextFieldOutput {\r\n text!: string | undefined;\r\n date!: DateTime;\r\n\r\n constructor(data?: IDateWithTextFieldOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.text = _data[\"text\"];\r\n this.date = _data[\"date\"] ? DateTime.fromISO(_data[\"date\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DateWithTextFieldOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DateWithTextFieldOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"text\"] = this.text;\r\n data[\"date\"] = this.date ? this.date.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDateWithTextFieldOutput {\r\n text: string | undefined;\r\n date: DateTime;\r\n}\r\n\r\nexport enum DayOfWeekFlags {\r\n Sunday = 1,\r\n Monday = 2,\r\n Tuesday = 4,\r\n Wednesday = 8,\r\n Thursday = 16,\r\n Friday = 32,\r\n Saturday = 64,\r\n}\r\n\r\nexport class DelegatedImpersonateInput implements IDelegatedImpersonateInput {\r\n userDelegationId!: number;\r\n\r\n constructor(data?: IDelegatedImpersonateInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userDelegationId = _data[\"userDelegationId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DelegatedImpersonateInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DelegatedImpersonateInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userDelegationId\"] = this.userDelegationId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDelegatedImpersonateInput {\r\n userDelegationId: number;\r\n}\r\n\r\nexport class DynamicEntityPropertyDto implements IDynamicEntityPropertyDto {\r\n entityFullName!: string | undefined;\r\n dynamicPropertyName!: string | undefined;\r\n dynamicPropertyId!: number;\r\n tenantId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IDynamicEntityPropertyDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.entityFullName = _data[\"entityFullName\"];\r\n this.dynamicPropertyName = _data[\"dynamicPropertyName\"];\r\n this.dynamicPropertyId = _data[\"dynamicPropertyId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DynamicEntityPropertyDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DynamicEntityPropertyDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"entityFullName\"] = this.entityFullName;\r\n data[\"dynamicPropertyName\"] = this.dynamicPropertyName;\r\n data[\"dynamicPropertyId\"] = this.dynamicPropertyId;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDynamicEntityPropertyDto {\r\n entityFullName: string | undefined;\r\n dynamicPropertyName: string | undefined;\r\n dynamicPropertyId: number;\r\n tenantId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class DynamicEntityPropertyValueDto implements IDynamicEntityPropertyValueDto {\r\n value!: string | undefined;\r\n entityId!: string | undefined;\r\n dynamicEntityPropertyId!: number;\r\n id!: number;\r\n\r\n constructor(data?: IDynamicEntityPropertyValueDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.value = _data[\"value\"];\r\n this.entityId = _data[\"entityId\"];\r\n this.dynamicEntityPropertyId = _data[\"dynamicEntityPropertyId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DynamicEntityPropertyValueDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DynamicEntityPropertyValueDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"value\"] = this.value;\r\n data[\"entityId\"] = this.entityId;\r\n data[\"dynamicEntityPropertyId\"] = this.dynamicEntityPropertyId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDynamicEntityPropertyValueDto {\r\n value: string | undefined;\r\n entityId: string | undefined;\r\n dynamicEntityPropertyId: number;\r\n id: number;\r\n}\r\n\r\nexport class DynamicPropertyDto implements IDynamicPropertyDto {\r\n propertyName!: string | undefined;\r\n displayName!: string | undefined;\r\n inputType!: string | undefined;\r\n permission!: string | undefined;\r\n tenantId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IDynamicPropertyDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.propertyName = _data[\"propertyName\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.inputType = _data[\"inputType\"];\r\n this.permission = _data[\"permission\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DynamicPropertyDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DynamicPropertyDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"propertyName\"] = this.propertyName;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"inputType\"] = this.inputType;\r\n data[\"permission\"] = this.permission;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDynamicPropertyDto {\r\n propertyName: string | undefined;\r\n displayName: string | undefined;\r\n inputType: string | undefined;\r\n permission: string | undefined;\r\n tenantId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class DynamicPropertyValueDto implements IDynamicPropertyValueDto {\r\n value!: string | undefined;\r\n tenantId!: number | undefined;\r\n dynamicPropertyId!: number;\r\n id!: number;\r\n\r\n constructor(data?: IDynamicPropertyValueDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.value = _data[\"value\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.dynamicPropertyId = _data[\"dynamicPropertyId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DynamicPropertyValueDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DynamicPropertyValueDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"value\"] = this.value;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"dynamicPropertyId\"] = this.dynamicPropertyId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDynamicPropertyValueDto {\r\n value: string | undefined;\r\n tenantId: number | undefined;\r\n dynamicPropertyId: number;\r\n id: number;\r\n}\r\n\r\nexport class EditCarrierInput implements IEditCarrierInput {\r\n carrierId!: number;\r\n id!: number;\r\n\r\n constructor(data?: IEditCarrierInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.carrierId = _data[\"carrierId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EditCarrierInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EditCarrierInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"carrierId\"] = this.carrierId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEditCarrierInput {\r\n carrierId: number;\r\n id: number;\r\n}\r\n\r\nexport class Edition implements IEdition {\r\n name!: string;\r\n displayName!: string;\r\n isDeleted!: boolean;\r\n deleterUserId!: number | undefined;\r\n deletionTime!: DateTime | undefined;\r\n lastModificationTime!: DateTime | undefined;\r\n lastModifierUserId!: number | undefined;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IEdition) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.isDeleted = _data[\"isDeleted\"];\r\n this.deleterUserId = _data[\"deleterUserId\"];\r\n this.deletionTime = _data[\"deletionTime\"] ? DateTime.fromISO(_data[\"deletionTime\"].toString()) : undefined;\r\n this.lastModificationTime = _data[\"lastModificationTime\"] ? DateTime.fromISO(_data[\"lastModificationTime\"].toString()) : undefined;\r\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Edition {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Edition();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"isDeleted\"] = this.isDeleted;\r\n data[\"deleterUserId\"] = this.deleterUserId;\r\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toString() : undefined;\r\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toString() : undefined;\r\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEdition {\r\n name: string;\r\n displayName: string;\r\n isDeleted: boolean;\r\n deleterUserId: number | undefined;\r\n deletionTime: DateTime | undefined;\r\n lastModificationTime: DateTime | undefined;\r\n lastModifierUserId: number | undefined;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class EditionCreateDto implements IEditionCreateDto {\r\n id!: number | undefined;\r\n displayName!: string;\r\n dailyPrice!: number | undefined;\r\n weeklyPrice!: number | undefined;\r\n monthlyPrice!: number | undefined;\r\n annualPrice!: number | undefined;\r\n trialDayCount!: number | undefined;\r\n waitingDayAfterExpire!: number | undefined;\r\n expiringEditionId!: number | undefined;\r\n\r\n constructor(data?: IEditionCreateDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.dailyPrice = _data[\"dailyPrice\"];\r\n this.weeklyPrice = _data[\"weeklyPrice\"];\r\n this.monthlyPrice = _data[\"monthlyPrice\"];\r\n this.annualPrice = _data[\"annualPrice\"];\r\n this.trialDayCount = _data[\"trialDayCount\"];\r\n this.waitingDayAfterExpire = _data[\"waitingDayAfterExpire\"];\r\n this.expiringEditionId = _data[\"expiringEditionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EditionCreateDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EditionCreateDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"dailyPrice\"] = this.dailyPrice;\r\n data[\"weeklyPrice\"] = this.weeklyPrice;\r\n data[\"monthlyPrice\"] = this.monthlyPrice;\r\n data[\"annualPrice\"] = this.annualPrice;\r\n data[\"trialDayCount\"] = this.trialDayCount;\r\n data[\"waitingDayAfterExpire\"] = this.waitingDayAfterExpire;\r\n data[\"expiringEditionId\"] = this.expiringEditionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEditionCreateDto {\r\n id: number | undefined;\r\n displayName: string;\r\n dailyPrice: number | undefined;\r\n weeklyPrice: number | undefined;\r\n monthlyPrice: number | undefined;\r\n annualPrice: number | undefined;\r\n trialDayCount: number | undefined;\r\n waitingDayAfterExpire: number | undefined;\r\n expiringEditionId: number | undefined;\r\n}\r\n\r\nexport class EditionEditDto implements IEditionEditDto {\r\n id!: number | undefined;\r\n displayName!: string;\r\n expiringEditionId!: number | undefined;\r\n\r\n constructor(data?: IEditionEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.expiringEditionId = _data[\"expiringEditionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EditionEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EditionEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"expiringEditionId\"] = this.expiringEditionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEditionEditDto {\r\n id: number | undefined;\r\n displayName: string;\r\n expiringEditionId: number | undefined;\r\n}\r\n\r\nexport class EditionInfoDto implements IEditionInfoDto {\r\n displayName!: string | undefined;\r\n trialDayCount!: number | undefined;\r\n monthlyPrice!: number | undefined;\r\n annualPrice!: number | undefined;\r\n isHighestEdition!: boolean;\r\n isFree!: boolean;\r\n id!: number;\r\n\r\n constructor(data?: IEditionInfoDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.displayName = _data[\"displayName\"];\r\n this.trialDayCount = _data[\"trialDayCount\"];\r\n this.monthlyPrice = _data[\"monthlyPrice\"];\r\n this.annualPrice = _data[\"annualPrice\"];\r\n this.isHighestEdition = _data[\"isHighestEdition\"];\r\n this.isFree = _data[\"isFree\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EditionInfoDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EditionInfoDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"displayName\"] = this.displayName;\r\n data[\"trialDayCount\"] = this.trialDayCount;\r\n data[\"monthlyPrice\"] = this.monthlyPrice;\r\n data[\"annualPrice\"] = this.annualPrice;\r\n data[\"isHighestEdition\"] = this.isHighestEdition;\r\n data[\"isFree\"] = this.isFree;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEditionInfoDto {\r\n displayName: string | undefined;\r\n trialDayCount: number | undefined;\r\n monthlyPrice: number | undefined;\r\n annualPrice: number | undefined;\r\n isHighestEdition: boolean;\r\n isFree: boolean;\r\n id: number;\r\n}\r\n\r\nexport class EditionListDto implements IEditionListDto {\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n dailyPrice!: number | undefined;\r\n weeklyPrice!: number | undefined;\r\n monthlyPrice!: number | undefined;\r\n annualPrice!: number | undefined;\r\n waitingDayAfterExpire!: number | undefined;\r\n trialDayCount!: number | undefined;\r\n expiringEditionDisplayName!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IEditionListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.dailyPrice = _data[\"dailyPrice\"];\r\n this.weeklyPrice = _data[\"weeklyPrice\"];\r\n this.monthlyPrice = _data[\"monthlyPrice\"];\r\n this.annualPrice = _data[\"annualPrice\"];\r\n this.waitingDayAfterExpire = _data[\"waitingDayAfterExpire\"];\r\n this.trialDayCount = _data[\"trialDayCount\"];\r\n this.expiringEditionDisplayName = _data[\"expiringEditionDisplayName\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EditionListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EditionListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"dailyPrice\"] = this.dailyPrice;\r\n data[\"weeklyPrice\"] = this.weeklyPrice;\r\n data[\"monthlyPrice\"] = this.monthlyPrice;\r\n data[\"annualPrice\"] = this.annualPrice;\r\n data[\"waitingDayAfterExpire\"] = this.waitingDayAfterExpire;\r\n data[\"trialDayCount\"] = this.trialDayCount;\r\n data[\"expiringEditionDisplayName\"] = this.expiringEditionDisplayName;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEditionListDto {\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n dailyPrice: number | undefined;\r\n weeklyPrice: number | undefined;\r\n monthlyPrice: number | undefined;\r\n annualPrice: number | undefined;\r\n waitingDayAfterExpire: number | undefined;\r\n trialDayCount: number | undefined;\r\n expiringEditionDisplayName: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport enum EditionPaymentType {\r\n NewRegistration = 0,\r\n BuyNow = 1,\r\n Upgrade = 2,\r\n Extend = 3,\r\n}\r\n\r\nexport class EditionSelectDto implements IEditionSelectDto {\r\n id!: number;\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n expiringEditionId!: number | undefined;\r\n dailyPrice!: number | undefined;\r\n weeklyPrice!: number | undefined;\r\n monthlyPrice!: number | undefined;\r\n annualPrice!: number | undefined;\r\n trialDayCount!: number | undefined;\r\n waitingDayAfterExpire!: number | undefined;\r\n isFree!: boolean;\r\n\r\n constructor(data?: IEditionSelectDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.expiringEditionId = _data[\"expiringEditionId\"];\r\n this.dailyPrice = _data[\"dailyPrice\"];\r\n this.weeklyPrice = _data[\"weeklyPrice\"];\r\n this.monthlyPrice = _data[\"monthlyPrice\"];\r\n this.annualPrice = _data[\"annualPrice\"];\r\n this.trialDayCount = _data[\"trialDayCount\"];\r\n this.waitingDayAfterExpire = _data[\"waitingDayAfterExpire\"];\r\n this.isFree = _data[\"isFree\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EditionSelectDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EditionSelectDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"expiringEditionId\"] = this.expiringEditionId;\r\n data[\"dailyPrice\"] = this.dailyPrice;\r\n data[\"weeklyPrice\"] = this.weeklyPrice;\r\n data[\"monthlyPrice\"] = this.monthlyPrice;\r\n data[\"annualPrice\"] = this.annualPrice;\r\n data[\"trialDayCount\"] = this.trialDayCount;\r\n data[\"waitingDayAfterExpire\"] = this.waitingDayAfterExpire;\r\n data[\"isFree\"] = this.isFree;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEditionSelectDto {\r\n id: number;\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n expiringEditionId: number | undefined;\r\n dailyPrice: number | undefined;\r\n weeklyPrice: number | undefined;\r\n monthlyPrice: number | undefined;\r\n annualPrice: number | undefined;\r\n trialDayCount: number | undefined;\r\n waitingDayAfterExpire: number | undefined;\r\n isFree: boolean;\r\n}\r\n\r\nexport class EditionWithFeaturesDto implements IEditionWithFeaturesDto {\r\n edition!: EditionSelectDto;\r\n featureValues!: NameValueDto[] | undefined;\r\n\r\n constructor(data?: IEditionWithFeaturesDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.edition = _data[\"edition\"] ? EditionSelectDto.fromJS(_data[\"edition\"]) : undefined;\r\n if (Array.isArray(_data[\"featureValues\"])) {\r\n this.featureValues = [] as any;\r\n for (let item of _data[\"featureValues\"])\r\n this.featureValues!.push(NameValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): EditionWithFeaturesDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EditionWithFeaturesDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"edition\"] = this.edition ? this.edition.toJSON() : undefined;\r\n if (Array.isArray(this.featureValues)) {\r\n data[\"featureValues\"] = [];\r\n for (let item of this.featureValues)\r\n data[\"featureValues\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEditionWithFeaturesDto {\r\n edition: EditionSelectDto;\r\n featureValues: NameValueDto[] | undefined;\r\n}\r\n\r\nexport class EditionsSelectOutput implements IEditionsSelectOutput {\r\n allFeatures!: FlatFeatureSelectDto[] | undefined;\r\n editionsWithFeatures!: EditionWithFeaturesDto[] | undefined;\r\n\r\n constructor(data?: IEditionsSelectOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"allFeatures\"])) {\r\n this.allFeatures = [] as any;\r\n for (let item of _data[\"allFeatures\"])\r\n this.allFeatures!.push(FlatFeatureSelectDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"editionsWithFeatures\"])) {\r\n this.editionsWithFeatures = [] as any;\r\n for (let item of _data[\"editionsWithFeatures\"])\r\n this.editionsWithFeatures!.push(EditionWithFeaturesDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): EditionsSelectOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EditionsSelectOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.allFeatures)) {\r\n data[\"allFeatures\"] = [];\r\n for (let item of this.allFeatures)\r\n data[\"allFeatures\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.editionsWithFeatures)) {\r\n data[\"editionsWithFeatures\"] = [];\r\n for (let item of this.editionsWithFeatures)\r\n data[\"editionsWithFeatures\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEditionsSelectOutput {\r\n allFeatures: FlatFeatureSelectDto[] | undefined;\r\n editionsWithFeatures: EditionWithFeaturesDto[] | undefined;\r\n}\r\n\r\nexport class EmailSettingsEditDto implements IEmailSettingsEditDto {\r\n defaultFromAddress!: string | undefined;\r\n defaultFromDisplayName!: string | undefined;\r\n smtpHost!: string | undefined;\r\n smtpPort!: number;\r\n smtpUserName!: string | undefined;\r\n smtpPassword!: string | undefined;\r\n smtpDomain!: string | undefined;\r\n smtpEnableSsl!: boolean;\r\n smtpUseDefaultCredentials!: boolean;\r\n\r\n constructor(data?: IEmailSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.defaultFromAddress = _data[\"defaultFromAddress\"];\r\n this.defaultFromDisplayName = _data[\"defaultFromDisplayName\"];\r\n this.smtpHost = _data[\"smtpHost\"];\r\n this.smtpPort = _data[\"smtpPort\"];\r\n this.smtpUserName = _data[\"smtpUserName\"];\r\n this.smtpPassword = _data[\"smtpPassword\"];\r\n this.smtpDomain = _data[\"smtpDomain\"];\r\n this.smtpEnableSsl = _data[\"smtpEnableSsl\"];\r\n this.smtpUseDefaultCredentials = _data[\"smtpUseDefaultCredentials\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EmailSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EmailSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"defaultFromAddress\"] = this.defaultFromAddress;\r\n data[\"defaultFromDisplayName\"] = this.defaultFromDisplayName;\r\n data[\"smtpHost\"] = this.smtpHost;\r\n data[\"smtpPort\"] = this.smtpPort;\r\n data[\"smtpUserName\"] = this.smtpUserName;\r\n data[\"smtpPassword\"] = this.smtpPassword;\r\n data[\"smtpDomain\"] = this.smtpDomain;\r\n data[\"smtpEnableSsl\"] = this.smtpEnableSsl;\r\n data[\"smtpUseDefaultCredentials\"] = this.smtpUseDefaultCredentials;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEmailSettingsEditDto {\r\n defaultFromAddress: string | undefined;\r\n defaultFromDisplayName: string | undefined;\r\n smtpHost: string | undefined;\r\n smtpPort: number;\r\n smtpUserName: string | undefined;\r\n smtpPassword: string | undefined;\r\n smtpDomain: string | undefined;\r\n smtpEnableSsl: boolean;\r\n smtpUseDefaultCredentials: boolean;\r\n}\r\n\r\nexport class EntityChangeListDto implements IEntityChangeListDto {\r\n userId!: number | undefined;\r\n userName!: string | undefined;\r\n changeTime!: DateTime;\r\n entityTypeFullName!: string | undefined;\r\n changeType!: EntityChangeType;\r\n readonly changeTypeName!: string | undefined;\r\n entityChangeSetId!: number;\r\n id!: number;\r\n\r\n constructor(data?: IEntityChangeListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.userName = _data[\"userName\"];\r\n this.changeTime = _data[\"changeTime\"] ? DateTime.fromISO(_data[\"changeTime\"].toString()) : undefined;\r\n this.entityTypeFullName = _data[\"entityTypeFullName\"];\r\n this.changeType = _data[\"changeType\"];\r\n (this).changeTypeName = _data[\"changeTypeName\"];\r\n this.entityChangeSetId = _data[\"entityChangeSetId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EntityChangeListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EntityChangeListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"userName\"] = this.userName;\r\n data[\"changeTime\"] = this.changeTime ? this.changeTime.toString() : undefined;\r\n data[\"entityTypeFullName\"] = this.entityTypeFullName;\r\n data[\"changeType\"] = this.changeType;\r\n data[\"changeTypeName\"] = this.changeTypeName;\r\n data[\"entityChangeSetId\"] = this.entityChangeSetId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEntityChangeListDto {\r\n userId: number | undefined;\r\n userName: string | undefined;\r\n changeTime: DateTime;\r\n entityTypeFullName: string | undefined;\r\n changeType: EntityChangeType;\r\n changeTypeName: string | undefined;\r\n entityChangeSetId: number;\r\n id: number;\r\n}\r\n\r\nexport enum EntityChangeType {\r\n Created = 0,\r\n Updated = 1,\r\n Deleted = 2,\r\n}\r\n\r\nexport class EntityDto implements IEntityDto {\r\n id!: number;\r\n\r\n constructor(data?: IEntityDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EntityDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EntityDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEntityDto {\r\n id: number;\r\n}\r\n\r\nexport class EntityDtoOfGuid implements IEntityDtoOfGuid {\r\n id!: string;\r\n\r\n constructor(data?: IEntityDtoOfGuid) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EntityDtoOfGuid {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EntityDtoOfGuid();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEntityDtoOfGuid {\r\n id: string;\r\n}\r\n\r\nexport class EntityDtoOfInt64 implements IEntityDtoOfInt64 {\r\n id!: number;\r\n\r\n constructor(data?: IEntityDtoOfInt64) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EntityDtoOfInt64 {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EntityDtoOfInt64();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEntityDtoOfInt64 {\r\n id: number;\r\n}\r\n\r\nexport class EntityDtoOfString implements IEntityDtoOfString {\r\n id!: string | undefined;\r\n\r\n constructor(data?: IEntityDtoOfString) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EntityDtoOfString {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EntityDtoOfString();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEntityDtoOfString {\r\n id: string | undefined;\r\n}\r\n\r\nexport class EntityPropertyChangeDto implements IEntityPropertyChangeDto {\r\n entityChangeId!: number;\r\n newValue!: string | undefined;\r\n originalValue!: string | undefined;\r\n propertyName!: string | undefined;\r\n propertyTypeFullName!: string | undefined;\r\n tenantId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IEntityPropertyChangeDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.entityChangeId = _data[\"entityChangeId\"];\r\n this.newValue = _data[\"newValue\"];\r\n this.originalValue = _data[\"originalValue\"];\r\n this.propertyName = _data[\"propertyName\"];\r\n this.propertyTypeFullName = _data[\"propertyTypeFullName\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EntityPropertyChangeDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EntityPropertyChangeDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"entityChangeId\"] = this.entityChangeId;\r\n data[\"newValue\"] = this.newValue;\r\n data[\"originalValue\"] = this.originalValue;\r\n data[\"propertyName\"] = this.propertyName;\r\n data[\"propertyTypeFullName\"] = this.propertyTypeFullName;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEntityPropertyChangeDto {\r\n entityChangeId: number;\r\n newValue: string | undefined;\r\n originalValue: string | undefined;\r\n propertyName: string | undefined;\r\n propertyTypeFullName: string | undefined;\r\n tenantId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class ExpiringTenant implements IExpiringTenant {\r\n tenantName!: string | undefined;\r\n remainingDayCount!: number;\r\n\r\n constructor(data?: IExpiringTenant) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantName = _data[\"tenantName\"];\r\n this.remainingDayCount = _data[\"remainingDayCount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ExpiringTenant {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ExpiringTenant();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantName\"] = this.tenantName;\r\n data[\"remainingDayCount\"] = this.remainingDayCount;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IExpiringTenant {\r\n tenantName: string | undefined;\r\n remainingDayCount: number;\r\n}\r\n\r\nexport class ExternalAuthenticateModel implements IExternalAuthenticateModel {\r\n authProvider!: string;\r\n providerKey!: string;\r\n providerAccessCode!: string;\r\n returnUrl!: string | undefined;\r\n singleSignIn!: boolean | undefined;\r\n\r\n constructor(data?: IExternalAuthenticateModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.authProvider = _data[\"authProvider\"];\r\n this.providerKey = _data[\"providerKey\"];\r\n this.providerAccessCode = _data[\"providerAccessCode\"];\r\n this.returnUrl = _data[\"returnUrl\"];\r\n this.singleSignIn = _data[\"singleSignIn\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ExternalAuthenticateModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ExternalAuthenticateModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"authProvider\"] = this.authProvider;\r\n data[\"providerKey\"] = this.providerKey;\r\n data[\"providerAccessCode\"] = this.providerAccessCode;\r\n data[\"returnUrl\"] = this.returnUrl;\r\n data[\"singleSignIn\"] = this.singleSignIn;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IExternalAuthenticateModel {\r\n authProvider: string;\r\n providerKey: string;\r\n providerAccessCode: string;\r\n returnUrl: string | undefined;\r\n singleSignIn: boolean | undefined;\r\n}\r\n\r\nexport class ExternalAuthenticateResultModel implements IExternalAuthenticateResultModel {\r\n accessToken!: string | undefined;\r\n encryptedAccessToken!: string | undefined;\r\n expireInSeconds!: number;\r\n waitingForActivation!: boolean;\r\n returnUrl!: string | undefined;\r\n refreshToken!: string | undefined;\r\n refreshTokenExpireInSeconds!: number;\r\n\r\n constructor(data?: IExternalAuthenticateResultModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.accessToken = _data[\"accessToken\"];\r\n this.encryptedAccessToken = _data[\"encryptedAccessToken\"];\r\n this.expireInSeconds = _data[\"expireInSeconds\"];\r\n this.waitingForActivation = _data[\"waitingForActivation\"];\r\n this.returnUrl = _data[\"returnUrl\"];\r\n this.refreshToken = _data[\"refreshToken\"];\r\n this.refreshTokenExpireInSeconds = _data[\"refreshTokenExpireInSeconds\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ExternalAuthenticateResultModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ExternalAuthenticateResultModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"accessToken\"] = this.accessToken;\r\n data[\"encryptedAccessToken\"] = this.encryptedAccessToken;\r\n data[\"expireInSeconds\"] = this.expireInSeconds;\r\n data[\"waitingForActivation\"] = this.waitingForActivation;\r\n data[\"returnUrl\"] = this.returnUrl;\r\n data[\"refreshToken\"] = this.refreshToken;\r\n data[\"refreshTokenExpireInSeconds\"] = this.refreshTokenExpireInSeconds;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IExternalAuthenticateResultModel {\r\n accessToken: string | undefined;\r\n encryptedAccessToken: string | undefined;\r\n expireInSeconds: number;\r\n waitingForActivation: boolean;\r\n returnUrl: string | undefined;\r\n refreshToken: string | undefined;\r\n refreshTokenExpireInSeconds: number;\r\n}\r\n\r\nexport class ExternalLoginProviderInfoModel implements IExternalLoginProviderInfoModel {\r\n name!: string | undefined;\r\n clientId!: string | undefined;\r\n additionalParams!: { [key: string]: string; } | undefined;\r\n\r\n constructor(data?: IExternalLoginProviderInfoModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.clientId = _data[\"clientId\"];\r\n if (_data[\"additionalParams\"]) {\r\n this.additionalParams = {} as any;\r\n for (let key in _data[\"additionalParams\"]) {\r\n if (_data[\"additionalParams\"].hasOwnProperty(key))\r\n (this.additionalParams)![key] = _data[\"additionalParams\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ExternalLoginProviderInfoModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ExternalLoginProviderInfoModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"clientId\"] = this.clientId;\r\n if (this.additionalParams) {\r\n data[\"additionalParams\"] = {};\r\n for (let key in this.additionalParams) {\r\n if (this.additionalParams.hasOwnProperty(key))\r\n (data[\"additionalParams\"])[key] = (this.additionalParams)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IExternalLoginProviderInfoModel {\r\n name: string | undefined;\r\n clientId: string | undefined;\r\n additionalParams: { [key: string]: string; } | undefined;\r\n}\r\n\r\nexport class ExternalLoginProviderSettingsEditDto implements IExternalLoginProviderSettingsEditDto {\r\n facebook_IsDeactivated!: boolean;\r\n facebook!: FacebookExternalLoginProviderSettings;\r\n google_IsDeactivated!: boolean;\r\n google!: GoogleExternalLoginProviderSettings;\r\n twitter_IsDeactivated!: boolean;\r\n twitter!: TwitterExternalLoginProviderSettings;\r\n microsoft_IsDeactivated!: boolean;\r\n microsoft!: MicrosoftExternalLoginProviderSettings;\r\n openIdConnect_IsDeactivated!: boolean;\r\n openIdConnect!: OpenIdConnectExternalLoginProviderSettings;\r\n openIdConnectClaimsMapping!: JsonClaimMapDto[] | undefined;\r\n wsFederation_IsDeactivated!: boolean;\r\n wsFederation!: WsFederationExternalLoginProviderSettings;\r\n wsFederationClaimsMapping!: JsonClaimMapDto[] | undefined;\r\n\r\n constructor(data?: IExternalLoginProviderSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.facebook_IsDeactivated = _data[\"facebook_IsDeactivated\"];\r\n this.facebook = _data[\"facebook\"] ? FacebookExternalLoginProviderSettings.fromJS(_data[\"facebook\"]) : undefined;\r\n this.google_IsDeactivated = _data[\"google_IsDeactivated\"];\r\n this.google = _data[\"google\"] ? GoogleExternalLoginProviderSettings.fromJS(_data[\"google\"]) : undefined;\r\n this.twitter_IsDeactivated = _data[\"twitter_IsDeactivated\"];\r\n this.twitter = _data[\"twitter\"] ? TwitterExternalLoginProviderSettings.fromJS(_data[\"twitter\"]) : undefined;\r\n this.microsoft_IsDeactivated = _data[\"microsoft_IsDeactivated\"];\r\n this.microsoft = _data[\"microsoft\"] ? MicrosoftExternalLoginProviderSettings.fromJS(_data[\"microsoft\"]) : undefined;\r\n this.openIdConnect_IsDeactivated = _data[\"openIdConnect_IsDeactivated\"];\r\n this.openIdConnect = _data[\"openIdConnect\"] ? OpenIdConnectExternalLoginProviderSettings.fromJS(_data[\"openIdConnect\"]) : undefined;\r\n if (Array.isArray(_data[\"openIdConnectClaimsMapping\"])) {\r\n this.openIdConnectClaimsMapping = [] as any;\r\n for (let item of _data[\"openIdConnectClaimsMapping\"])\r\n this.openIdConnectClaimsMapping!.push(JsonClaimMapDto.fromJS(item));\r\n }\r\n this.wsFederation_IsDeactivated = _data[\"wsFederation_IsDeactivated\"];\r\n this.wsFederation = _data[\"wsFederation\"] ? WsFederationExternalLoginProviderSettings.fromJS(_data[\"wsFederation\"]) : undefined;\r\n if (Array.isArray(_data[\"wsFederationClaimsMapping\"])) {\r\n this.wsFederationClaimsMapping = [] as any;\r\n for (let item of _data[\"wsFederationClaimsMapping\"])\r\n this.wsFederationClaimsMapping!.push(JsonClaimMapDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ExternalLoginProviderSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ExternalLoginProviderSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"facebook_IsDeactivated\"] = this.facebook_IsDeactivated;\r\n data[\"facebook\"] = this.facebook ? this.facebook.toJSON() : undefined;\r\n data[\"google_IsDeactivated\"] = this.google_IsDeactivated;\r\n data[\"google\"] = this.google ? this.google.toJSON() : undefined;\r\n data[\"twitter_IsDeactivated\"] = this.twitter_IsDeactivated;\r\n data[\"twitter\"] = this.twitter ? this.twitter.toJSON() : undefined;\r\n data[\"microsoft_IsDeactivated\"] = this.microsoft_IsDeactivated;\r\n data[\"microsoft\"] = this.microsoft ? this.microsoft.toJSON() : undefined;\r\n data[\"openIdConnect_IsDeactivated\"] = this.openIdConnect_IsDeactivated;\r\n data[\"openIdConnect\"] = this.openIdConnect ? this.openIdConnect.toJSON() : undefined;\r\n if (Array.isArray(this.openIdConnectClaimsMapping)) {\r\n data[\"openIdConnectClaimsMapping\"] = [];\r\n for (let item of this.openIdConnectClaimsMapping)\r\n data[\"openIdConnectClaimsMapping\"].push(item.toJSON());\r\n }\r\n data[\"wsFederation_IsDeactivated\"] = this.wsFederation_IsDeactivated;\r\n data[\"wsFederation\"] = this.wsFederation ? this.wsFederation.toJSON() : undefined;\r\n if (Array.isArray(this.wsFederationClaimsMapping)) {\r\n data[\"wsFederationClaimsMapping\"] = [];\r\n for (let item of this.wsFederationClaimsMapping)\r\n data[\"wsFederationClaimsMapping\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IExternalLoginProviderSettingsEditDto {\r\n facebook_IsDeactivated: boolean;\r\n facebook: FacebookExternalLoginProviderSettings;\r\n google_IsDeactivated: boolean;\r\n google: GoogleExternalLoginProviderSettings;\r\n twitter_IsDeactivated: boolean;\r\n twitter: TwitterExternalLoginProviderSettings;\r\n microsoft_IsDeactivated: boolean;\r\n microsoft: MicrosoftExternalLoginProviderSettings;\r\n openIdConnect_IsDeactivated: boolean;\r\n openIdConnect: OpenIdConnectExternalLoginProviderSettings;\r\n openIdConnectClaimsMapping: JsonClaimMapDto[] | undefined;\r\n wsFederation_IsDeactivated: boolean;\r\n wsFederation: WsFederationExternalLoginProviderSettings;\r\n wsFederationClaimsMapping: JsonClaimMapDto[] | undefined;\r\n}\r\n\r\nexport class ExternalLoginSettingsDto implements IExternalLoginSettingsDto {\r\n enabledSocialLoginSettings!: string[] | undefined;\r\n\r\n constructor(data?: IExternalLoginSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"enabledSocialLoginSettings\"])) {\r\n this.enabledSocialLoginSettings = [] as any;\r\n for (let item of _data[\"enabledSocialLoginSettings\"])\r\n this.enabledSocialLoginSettings!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ExternalLoginSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ExternalLoginSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.enabledSocialLoginSettings)) {\r\n data[\"enabledSocialLoginSettings\"] = [];\r\n for (let item of this.enabledSocialLoginSettings)\r\n data[\"enabledSocialLoginSettings\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IExternalLoginSettingsDto {\r\n enabledSocialLoginSettings: string[] | undefined;\r\n}\r\n\r\nexport class FacebookExternalLoginProviderSettings implements IFacebookExternalLoginProviderSettings {\r\n appId!: string | undefined;\r\n appSecret!: string | undefined;\r\n\r\n constructor(data?: IFacebookExternalLoginProviderSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.appId = _data[\"appId\"];\r\n this.appSecret = _data[\"appSecret\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FacebookExternalLoginProviderSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FacebookExternalLoginProviderSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"appId\"] = this.appId;\r\n data[\"appSecret\"] = this.appSecret;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFacebookExternalLoginProviderSettings {\r\n appId: string | undefined;\r\n appSecret: string | undefined;\r\n}\r\n\r\nexport class FeatureInputTypeDto implements IFeatureInputTypeDto {\r\n name!: string | undefined;\r\n attributes!: { [key: string]: any; } | undefined;\r\n validator!: IValueValidator;\r\n itemSource!: LocalizableComboboxItemSourceDto;\r\n\r\n constructor(data?: IFeatureInputTypeDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n if (_data[\"attributes\"]) {\r\n this.attributes = {} as any;\r\n for (let key in _data[\"attributes\"]) {\r\n if (_data[\"attributes\"].hasOwnProperty(key))\r\n (this.attributes)![key] = _data[\"attributes\"][key];\r\n }\r\n }\r\n this.validator = _data[\"validator\"] ? IValueValidator.fromJS(_data[\"validator\"]) : undefined;\r\n this.itemSource = _data[\"itemSource\"] ? LocalizableComboboxItemSourceDto.fromJS(_data[\"itemSource\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): FeatureInputTypeDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FeatureInputTypeDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n if (this.attributes) {\r\n data[\"attributes\"] = {};\r\n for (let key in this.attributes) {\r\n if (this.attributes.hasOwnProperty(key))\r\n (data[\"attributes\"])[key] = (this.attributes)[key];\r\n }\r\n }\r\n data[\"validator\"] = this.validator ? this.validator.toJSON() : undefined;\r\n data[\"itemSource\"] = this.itemSource ? this.itemSource.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFeatureInputTypeDto {\r\n name: string | undefined;\r\n attributes: { [key: string]: any; } | undefined;\r\n validator: IValueValidator;\r\n itemSource: LocalizableComboboxItemSourceDto;\r\n}\r\n\r\nexport class FileDto implements IFileDto {\r\n fileName!: string;\r\n fileType!: string | undefined;\r\n fileToken!: string;\r\n\r\n constructor(data?: IFileDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.fileName = _data[\"fileName\"];\r\n this.fileType = _data[\"fileType\"];\r\n this.fileToken = _data[\"fileToken\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FileDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FileDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"fileName\"] = this.fileName;\r\n data[\"fileType\"] = this.fileType;\r\n data[\"fileToken\"] = this.fileToken;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFileDto {\r\n fileName: string;\r\n fileType: string | undefined;\r\n fileToken: string;\r\n}\r\n\r\nexport class FindOrganizationUnitRolesInput implements IFindOrganizationUnitRolesInput {\r\n organizationUnitId!: number;\r\n maxResultCount!: number;\r\n skipCount!: number;\r\n filter!: string | undefined;\r\n\r\n constructor(data?: IFindOrganizationUnitRolesInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.organizationUnitId = _data[\"organizationUnitId\"];\r\n this.maxResultCount = _data[\"maxResultCount\"];\r\n this.skipCount = _data[\"skipCount\"];\r\n this.filter = _data[\"filter\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FindOrganizationUnitRolesInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FindOrganizationUnitRolesInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"organizationUnitId\"] = this.organizationUnitId;\r\n data[\"maxResultCount\"] = this.maxResultCount;\r\n data[\"skipCount\"] = this.skipCount;\r\n data[\"filter\"] = this.filter;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFindOrganizationUnitRolesInput {\r\n organizationUnitId: number;\r\n maxResultCount: number;\r\n skipCount: number;\r\n filter: string | undefined;\r\n}\r\n\r\nexport class FindOrganizationUnitUsersInput implements IFindOrganizationUnitUsersInput {\r\n organizationUnitId!: number;\r\n maxResultCount!: number;\r\n skipCount!: number;\r\n filter!: string | undefined;\r\n\r\n constructor(data?: IFindOrganizationUnitUsersInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.organizationUnitId = _data[\"organizationUnitId\"];\r\n this.maxResultCount = _data[\"maxResultCount\"];\r\n this.skipCount = _data[\"skipCount\"];\r\n this.filter = _data[\"filter\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FindOrganizationUnitUsersInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FindOrganizationUnitUsersInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"organizationUnitId\"] = this.organizationUnitId;\r\n data[\"maxResultCount\"] = this.maxResultCount;\r\n data[\"skipCount\"] = this.skipCount;\r\n data[\"filter\"] = this.filter;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFindOrganizationUnitUsersInput {\r\n organizationUnitId: number;\r\n maxResultCount: number;\r\n skipCount: number;\r\n filter: string | undefined;\r\n}\r\n\r\nexport class FindUsersInput implements IFindUsersInput {\r\n tenantId!: number | undefined;\r\n excludeCurrentUser!: boolean;\r\n maxResultCount!: number;\r\n skipCount!: number;\r\n filter!: string | undefined;\r\n\r\n constructor(data?: IFindUsersInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.excludeCurrentUser = _data[\"excludeCurrentUser\"];\r\n this.maxResultCount = _data[\"maxResultCount\"];\r\n this.skipCount = _data[\"skipCount\"];\r\n this.filter = _data[\"filter\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FindUsersInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FindUsersInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"excludeCurrentUser\"] = this.excludeCurrentUser;\r\n data[\"maxResultCount\"] = this.maxResultCount;\r\n data[\"skipCount\"] = this.skipCount;\r\n data[\"filter\"] = this.filter;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFindUsersInput {\r\n tenantId: number | undefined;\r\n excludeCurrentUser: boolean;\r\n maxResultCount: number;\r\n skipCount: number;\r\n filter: string | undefined;\r\n}\r\n\r\nexport class FlatFeatureDto implements IFlatFeatureDto {\r\n parentName!: string | undefined;\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n description!: string | undefined;\r\n defaultValue!: string | undefined;\r\n inputType!: FeatureInputTypeDto;\r\n\r\n constructor(data?: IFlatFeatureDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.parentName = _data[\"parentName\"];\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.description = _data[\"description\"];\r\n this.defaultValue = _data[\"defaultValue\"];\r\n this.inputType = _data[\"inputType\"] ? FeatureInputTypeDto.fromJS(_data[\"inputType\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): FlatFeatureDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FlatFeatureDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"parentName\"] = this.parentName;\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"description\"] = this.description;\r\n data[\"defaultValue\"] = this.defaultValue;\r\n data[\"inputType\"] = this.inputType ? this.inputType.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFlatFeatureDto {\r\n parentName: string | undefined;\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n description: string | undefined;\r\n defaultValue: string | undefined;\r\n inputType: FeatureInputTypeDto;\r\n}\r\n\r\nexport class FlatFeatureSelectDto implements IFlatFeatureSelectDto {\r\n parentName!: string | undefined;\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n description!: string | undefined;\r\n defaultValue!: string | undefined;\r\n inputType!: IInputType;\r\n textHtmlColor!: string | undefined;\r\n\r\n constructor(data?: IFlatFeatureSelectDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.parentName = _data[\"parentName\"];\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.description = _data[\"description\"];\r\n this.defaultValue = _data[\"defaultValue\"];\r\n this.inputType = _data[\"inputType\"] ? IInputType.fromJS(_data[\"inputType\"]) : undefined;\r\n this.textHtmlColor = _data[\"textHtmlColor\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FlatFeatureSelectDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FlatFeatureSelectDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"parentName\"] = this.parentName;\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"description\"] = this.description;\r\n data[\"defaultValue\"] = this.defaultValue;\r\n data[\"inputType\"] = this.inputType ? this.inputType.toJSON() : undefined;\r\n data[\"textHtmlColor\"] = this.textHtmlColor;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFlatFeatureSelectDto {\r\n parentName: string | undefined;\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n description: string | undefined;\r\n defaultValue: string | undefined;\r\n inputType: IInputType;\r\n textHtmlColor: string | undefined;\r\n}\r\n\r\nexport class FlatPermissionDto implements IFlatPermissionDto {\r\n parentName!: string | undefined;\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n description!: string | undefined;\r\n isGrantedByDefault!: boolean;\r\n\r\n constructor(data?: IFlatPermissionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.parentName = _data[\"parentName\"];\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.description = _data[\"description\"];\r\n this.isGrantedByDefault = _data[\"isGrantedByDefault\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FlatPermissionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FlatPermissionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"parentName\"] = this.parentName;\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"description\"] = this.description;\r\n data[\"isGrantedByDefault\"] = this.isGrantedByDefault;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFlatPermissionDto {\r\n parentName: string | undefined;\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n description: string | undefined;\r\n isGrantedByDefault: boolean;\r\n}\r\n\r\nexport class FlatPermissionWithLevelDto implements IFlatPermissionWithLevelDto {\r\n level!: number;\r\n parentName!: string | undefined;\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n description!: string | undefined;\r\n isGrantedByDefault!: boolean;\r\n\r\n constructor(data?: IFlatPermissionWithLevelDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.level = _data[\"level\"];\r\n this.parentName = _data[\"parentName\"];\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.description = _data[\"description\"];\r\n this.isGrantedByDefault = _data[\"isGrantedByDefault\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FlatPermissionWithLevelDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FlatPermissionWithLevelDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"level\"] = this.level;\r\n data[\"parentName\"] = this.parentName;\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"description\"] = this.description;\r\n data[\"isGrantedByDefault\"] = this.isGrantedByDefault;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFlatPermissionWithLevelDto {\r\n level: number;\r\n parentName: string | undefined;\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n description: string | undefined;\r\n isGrantedByDefault: boolean;\r\n}\r\n\r\nexport class FriendDto implements IFriendDto {\r\n friendUserId!: number;\r\n friendTenantId!: number | undefined;\r\n friendUserName!: string | undefined;\r\n friendTenancyName!: string | undefined;\r\n friendProfilePictureId!: string | undefined;\r\n unreadMessageCount!: number;\r\n isOnline!: boolean;\r\n state!: FriendshipState;\r\n\r\n constructor(data?: IFriendDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.friendUserId = _data[\"friendUserId\"];\r\n this.friendTenantId = _data[\"friendTenantId\"];\r\n this.friendUserName = _data[\"friendUserName\"];\r\n this.friendTenancyName = _data[\"friendTenancyName\"];\r\n this.friendProfilePictureId = _data[\"friendProfilePictureId\"];\r\n this.unreadMessageCount = _data[\"unreadMessageCount\"];\r\n this.isOnline = _data[\"isOnline\"];\r\n this.state = _data[\"state\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FriendDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FriendDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"friendUserId\"] = this.friendUserId;\r\n data[\"friendTenantId\"] = this.friendTenantId;\r\n data[\"friendUserName\"] = this.friendUserName;\r\n data[\"friendTenancyName\"] = this.friendTenancyName;\r\n data[\"friendProfilePictureId\"] = this.friendProfilePictureId;\r\n data[\"unreadMessageCount\"] = this.unreadMessageCount;\r\n data[\"isOnline\"] = this.isOnline;\r\n data[\"state\"] = this.state;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFriendDto {\r\n friendUserId: number;\r\n friendTenantId: number | undefined;\r\n friendUserName: string | undefined;\r\n friendTenancyName: string | undefined;\r\n friendProfilePictureId: string | undefined;\r\n unreadMessageCount: number;\r\n isOnline: boolean;\r\n state: FriendshipState;\r\n}\r\n\r\nexport enum FriendshipState {\r\n Accepted = 1,\r\n Blocked = 2,\r\n}\r\n\r\nexport class GeneralSettingsEditDto implements IGeneralSettingsEditDto {\r\n timezone!: string | undefined;\r\n timezoneForComparison!: string | undefined;\r\n\r\n constructor(data?: IGeneralSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timezone = _data[\"timezone\"];\r\n this.timezoneForComparison = _data[\"timezoneForComparison\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GeneralSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GeneralSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timezone\"] = this.timezone;\r\n data[\"timezoneForComparison\"] = this.timezoneForComparison;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGeneralSettingsEditDto {\r\n timezone: string | undefined;\r\n timezoneForComparison: string | undefined;\r\n}\r\n\r\nexport class GetAllAvailableWebhooksOutput implements IGetAllAvailableWebhooksOutput {\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n description!: string | undefined;\r\n\r\n constructor(data?: IGetAllAvailableWebhooksOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.description = _data[\"description\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAllAvailableWebhooksOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAllAvailableWebhooksOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"description\"] = this.description;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAllAvailableWebhooksOutput {\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n description: string | undefined;\r\n}\r\n\r\nexport class GetAllDynamicEntityPropertyValuesOutput implements IGetAllDynamicEntityPropertyValuesOutput {\r\n items!: GetAllDynamicEntityPropertyValuesOutputItem[] | undefined;\r\n\r\n constructor(data?: IGetAllDynamicEntityPropertyValuesOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetAllDynamicEntityPropertyValuesOutputItem.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAllDynamicEntityPropertyValuesOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAllDynamicEntityPropertyValuesOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAllDynamicEntityPropertyValuesOutput {\r\n items: GetAllDynamicEntityPropertyValuesOutputItem[] | undefined;\r\n}\r\n\r\nexport class GetAllDynamicEntityPropertyValuesOutputItem implements IGetAllDynamicEntityPropertyValuesOutputItem {\r\n dynamicEntityPropertyId!: number;\r\n propertyName!: string | undefined;\r\n inputType!: IInputType;\r\n selectedValues!: string[] | undefined;\r\n allValuesInputTypeHas!: string[] | undefined;\r\n\r\n constructor(data?: IGetAllDynamicEntityPropertyValuesOutputItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.dynamicEntityPropertyId = _data[\"dynamicEntityPropertyId\"];\r\n this.propertyName = _data[\"propertyName\"];\r\n this.inputType = _data[\"inputType\"] ? IInputType.fromJS(_data[\"inputType\"]) : undefined;\r\n if (Array.isArray(_data[\"selectedValues\"])) {\r\n this.selectedValues = [] as any;\r\n for (let item of _data[\"selectedValues\"])\r\n this.selectedValues!.push(item);\r\n }\r\n if (Array.isArray(_data[\"allValuesInputTypeHas\"])) {\r\n this.allValuesInputTypeHas = [] as any;\r\n for (let item of _data[\"allValuesInputTypeHas\"])\r\n this.allValuesInputTypeHas!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAllDynamicEntityPropertyValuesOutputItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAllDynamicEntityPropertyValuesOutputItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"dynamicEntityPropertyId\"] = this.dynamicEntityPropertyId;\r\n data[\"propertyName\"] = this.propertyName;\r\n data[\"inputType\"] = this.inputType ? this.inputType.toJSON() : undefined;\r\n if (Array.isArray(this.selectedValues)) {\r\n data[\"selectedValues\"] = [];\r\n for (let item of this.selectedValues)\r\n data[\"selectedValues\"].push(item);\r\n }\r\n if (Array.isArray(this.allValuesInputTypeHas)) {\r\n data[\"allValuesInputTypeHas\"] = [];\r\n for (let item of this.allValuesInputTypeHas)\r\n data[\"allValuesInputTypeHas\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAllDynamicEntityPropertyValuesOutputItem {\r\n dynamicEntityPropertyId: number;\r\n propertyName: string | undefined;\r\n inputType: IInputType;\r\n selectedValues: string[] | undefined;\r\n allValuesInputTypeHas: string[] | undefined;\r\n}\r\n\r\nexport class GetAllEntitiesHasDynamicPropertyOutput implements IGetAllEntitiesHasDynamicPropertyOutput {\r\n entityFullName!: string | undefined;\r\n\r\n constructor(data?: IGetAllEntitiesHasDynamicPropertyOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.entityFullName = _data[\"entityFullName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAllEntitiesHasDynamicPropertyOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAllEntitiesHasDynamicPropertyOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"entityFullName\"] = this.entityFullName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAllEntitiesHasDynamicPropertyOutput {\r\n entityFullName: string | undefined;\r\n}\r\n\r\nexport class GetAllSendAttemptsOfWebhookEventOutput implements IGetAllSendAttemptsOfWebhookEventOutput {\r\n id!: string;\r\n webhookUri!: string | undefined;\r\n webhookSubscriptionId!: string;\r\n response!: string | undefined;\r\n responseStatusCode!: HttpStatusCode;\r\n creationTime!: DateTime;\r\n lastModificationTime!: DateTime | undefined;\r\n\r\n constructor(data?: IGetAllSendAttemptsOfWebhookEventOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.webhookUri = _data[\"webhookUri\"];\r\n this.webhookSubscriptionId = _data[\"webhookSubscriptionId\"];\r\n this.response = _data[\"response\"];\r\n this.responseStatusCode = _data[\"responseStatusCode\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.lastModificationTime = _data[\"lastModificationTime\"] ? DateTime.fromISO(_data[\"lastModificationTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAllSendAttemptsOfWebhookEventOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAllSendAttemptsOfWebhookEventOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"webhookUri\"] = this.webhookUri;\r\n data[\"webhookSubscriptionId\"] = this.webhookSubscriptionId;\r\n data[\"response\"] = this.response;\r\n data[\"responseStatusCode\"] = this.responseStatusCode;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAllSendAttemptsOfWebhookEventOutput {\r\n id: string;\r\n webhookUri: string | undefined;\r\n webhookSubscriptionId: string;\r\n response: string | undefined;\r\n responseStatusCode: HttpStatusCode;\r\n creationTime: DateTime;\r\n lastModificationTime: DateTime | undefined;\r\n}\r\n\r\nexport class GetAllSendAttemptsOutput implements IGetAllSendAttemptsOutput {\r\n id!: string;\r\n webhookEventId!: string;\r\n webhookName!: string | undefined;\r\n data!: string | undefined;\r\n response!: string | undefined;\r\n responseStatusCode!: HttpStatusCode;\r\n creationTime!: DateTime;\r\n\r\n constructor(data?: IGetAllSendAttemptsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.webhookEventId = _data[\"webhookEventId\"];\r\n this.webhookName = _data[\"webhookName\"];\r\n this.data = _data[\"data\"];\r\n this.response = _data[\"response\"];\r\n this.responseStatusCode = _data[\"responseStatusCode\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAllSendAttemptsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAllSendAttemptsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"webhookEventId\"] = this.webhookEventId;\r\n data[\"webhookName\"] = this.webhookName;\r\n data[\"data\"] = this.data;\r\n data[\"response\"] = this.response;\r\n data[\"responseStatusCode\"] = this.responseStatusCode;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAllSendAttemptsOutput {\r\n id: string;\r\n webhookEventId: string;\r\n webhookName: string | undefined;\r\n data: string | undefined;\r\n response: string | undefined;\r\n responseStatusCode: HttpStatusCode;\r\n creationTime: DateTime;\r\n}\r\n\r\nexport class GetAllSubscriptionsOutput implements IGetAllSubscriptionsOutput {\r\n webhookUri!: string | undefined;\r\n isActive!: boolean;\r\n webhooks!: string[] | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IGetAllSubscriptionsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.webhookUri = _data[\"webhookUri\"];\r\n this.isActive = _data[\"isActive\"];\r\n if (Array.isArray(_data[\"webhooks\"])) {\r\n this.webhooks = [] as any;\r\n for (let item of _data[\"webhooks\"])\r\n this.webhooks!.push(item);\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAllSubscriptionsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAllSubscriptionsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"webhookUri\"] = this.webhookUri;\r\n data[\"isActive\"] = this.isActive;\r\n if (Array.isArray(this.webhooks)) {\r\n data[\"webhooks\"] = [];\r\n for (let item of this.webhooks)\r\n data[\"webhooks\"].push(item);\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAllSubscriptionsOutput {\r\n webhookUri: string | undefined;\r\n isActive: boolean;\r\n webhooks: string[] | undefined;\r\n id: string;\r\n}\r\n\r\nexport class GetAppointmentSlotSettingsOutput implements IGetAppointmentSlotSettingsOutput {\r\n timeSlotMinDuration!: string;\r\n\r\n constructor(data?: IGetAppointmentSlotSettingsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeSlotMinDuration = _data[\"timeSlotMinDuration\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAppointmentSlotSettingsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAppointmentSlotSettingsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeSlotMinDuration\"] = this.timeSlotMinDuration;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAppointmentSlotSettingsOutput {\r\n timeSlotMinDuration: string;\r\n}\r\n\r\nexport class GetAvailableAppointmentSlotsOutput implements IGetAvailableAppointmentSlotsOutput {\r\n dateTimeSlots!: AvailableAppointmentSlotDto[] | undefined;\r\n\r\n constructor(data?: IGetAvailableAppointmentSlotsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"dateTimeSlots\"])) {\r\n this.dateTimeSlots = [] as any;\r\n for (let item of _data[\"dateTimeSlots\"])\r\n this.dateTimeSlots!.push(AvailableAppointmentSlotDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetAvailableAppointmentSlotsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetAvailableAppointmentSlotsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.dateTimeSlots)) {\r\n data[\"dateTimeSlots\"] = [];\r\n for (let item of this.dateTimeSlots)\r\n data[\"dateTimeSlots\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetAvailableAppointmentSlotsOutput {\r\n dateTimeSlots: AvailableAppointmentSlotDto[] | undefined;\r\n}\r\n\r\nexport class GetCurrentLoginInformationsOutput implements IGetCurrentLoginInformationsOutput {\r\n user!: UserLoginInfoDto;\r\n impersonatorUser!: UserLoginInfoDto;\r\n tenant!: TenantLoginInfoDto;\r\n impersonatorTenant!: TenantLoginInfoDto;\r\n application!: ApplicationInfoDto;\r\n theme!: UiCustomizationSettingsDto;\r\n\r\n constructor(data?: IGetCurrentLoginInformationsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.user = _data[\"user\"] ? UserLoginInfoDto.fromJS(_data[\"user\"]) : undefined;\r\n this.impersonatorUser = _data[\"impersonatorUser\"] ? UserLoginInfoDto.fromJS(_data[\"impersonatorUser\"]) : undefined;\r\n this.tenant = _data[\"tenant\"] ? TenantLoginInfoDto.fromJS(_data[\"tenant\"]) : undefined;\r\n this.impersonatorTenant = _data[\"impersonatorTenant\"] ? TenantLoginInfoDto.fromJS(_data[\"impersonatorTenant\"]) : undefined;\r\n this.application = _data[\"application\"] ? ApplicationInfoDto.fromJS(_data[\"application\"]) : undefined;\r\n this.theme = _data[\"theme\"] ? UiCustomizationSettingsDto.fromJS(_data[\"theme\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetCurrentLoginInformationsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetCurrentLoginInformationsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"user\"] = this.user ? this.user.toJSON() : undefined;\r\n data[\"impersonatorUser\"] = this.impersonatorUser ? this.impersonatorUser.toJSON() : undefined;\r\n data[\"tenant\"] = this.tenant ? this.tenant.toJSON() : undefined;\r\n data[\"impersonatorTenant\"] = this.impersonatorTenant ? this.impersonatorTenant.toJSON() : undefined;\r\n data[\"application\"] = this.application ? this.application.toJSON() : undefined;\r\n data[\"theme\"] = this.theme ? this.theme.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetCurrentLoginInformationsOutput {\r\n user: UserLoginInfoDto;\r\n impersonatorUser: UserLoginInfoDto;\r\n tenant: TenantLoginInfoDto;\r\n impersonatorTenant: TenantLoginInfoDto;\r\n application: ApplicationInfoDto;\r\n theme: UiCustomizationSettingsDto;\r\n}\r\n\r\nexport class GetDailySalesOutput implements IGetDailySalesOutput {\r\n dailySales!: number[] | undefined;\r\n\r\n constructor(data?: IGetDailySalesOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"dailySales\"])) {\r\n this.dailySales = [] as any;\r\n for (let item of _data[\"dailySales\"])\r\n this.dailySales!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetDailySalesOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetDailySalesOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.dailySales)) {\r\n data[\"dailySales\"] = [];\r\n for (let item of this.dailySales)\r\n data[\"dailySales\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetDailySalesOutput {\r\n dailySales: number[] | undefined;\r\n}\r\n\r\nexport class GetDashboardDataOutput implements IGetDashboardDataOutput {\r\n totalProfit!: number;\r\n newFeedbacks!: number;\r\n newOrders!: number;\r\n newUsers!: number;\r\n salesSummary!: SalesSummaryData[] | undefined;\r\n totalSales!: number;\r\n revenue!: number;\r\n expenses!: number;\r\n growth!: number;\r\n transactionPercent!: number;\r\n newVisitPercent!: number;\r\n bouncePercent!: number;\r\n dailySales!: number[] | undefined;\r\n profitShares!: number[] | undefined;\r\n\r\n constructor(data?: IGetDashboardDataOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalProfit = _data[\"totalProfit\"];\r\n this.newFeedbacks = _data[\"newFeedbacks\"];\r\n this.newOrders = _data[\"newOrders\"];\r\n this.newUsers = _data[\"newUsers\"];\r\n if (Array.isArray(_data[\"salesSummary\"])) {\r\n this.salesSummary = [] as any;\r\n for (let item of _data[\"salesSummary\"])\r\n this.salesSummary!.push(SalesSummaryData.fromJS(item));\r\n }\r\n this.totalSales = _data[\"totalSales\"];\r\n this.revenue = _data[\"revenue\"];\r\n this.expenses = _data[\"expenses\"];\r\n this.growth = _data[\"growth\"];\r\n this.transactionPercent = _data[\"transactionPercent\"];\r\n this.newVisitPercent = _data[\"newVisitPercent\"];\r\n this.bouncePercent = _data[\"bouncePercent\"];\r\n if (Array.isArray(_data[\"dailySales\"])) {\r\n this.dailySales = [] as any;\r\n for (let item of _data[\"dailySales\"])\r\n this.dailySales!.push(item);\r\n }\r\n if (Array.isArray(_data[\"profitShares\"])) {\r\n this.profitShares = [] as any;\r\n for (let item of _data[\"profitShares\"])\r\n this.profitShares!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetDashboardDataOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetDashboardDataOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalProfit\"] = this.totalProfit;\r\n data[\"newFeedbacks\"] = this.newFeedbacks;\r\n data[\"newOrders\"] = this.newOrders;\r\n data[\"newUsers\"] = this.newUsers;\r\n if (Array.isArray(this.salesSummary)) {\r\n data[\"salesSummary\"] = [];\r\n for (let item of this.salesSummary)\r\n data[\"salesSummary\"].push(item.toJSON());\r\n }\r\n data[\"totalSales\"] = this.totalSales;\r\n data[\"revenue\"] = this.revenue;\r\n data[\"expenses\"] = this.expenses;\r\n data[\"growth\"] = this.growth;\r\n data[\"transactionPercent\"] = this.transactionPercent;\r\n data[\"newVisitPercent\"] = this.newVisitPercent;\r\n data[\"bouncePercent\"] = this.bouncePercent;\r\n if (Array.isArray(this.dailySales)) {\r\n data[\"dailySales\"] = [];\r\n for (let item of this.dailySales)\r\n data[\"dailySales\"].push(item);\r\n }\r\n if (Array.isArray(this.profitShares)) {\r\n data[\"profitShares\"] = [];\r\n for (let item of this.profitShares)\r\n data[\"profitShares\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetDashboardDataOutput {\r\n totalProfit: number;\r\n newFeedbacks: number;\r\n newOrders: number;\r\n newUsers: number;\r\n salesSummary: SalesSummaryData[] | undefined;\r\n totalSales: number;\r\n revenue: number;\r\n expenses: number;\r\n growth: number;\r\n transactionPercent: number;\r\n newVisitPercent: number;\r\n bouncePercent: number;\r\n dailySales: number[] | undefined;\r\n profitShares: number[] | undefined;\r\n}\r\n\r\nexport class GetDefaultEditionNameOutput implements IGetDefaultEditionNameOutput {\r\n name!: string | undefined;\r\n\r\n constructor(data?: IGetDefaultEditionNameOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetDefaultEditionNameOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetDefaultEditionNameOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetDefaultEditionNameOutput {\r\n name: string | undefined;\r\n}\r\n\r\nexport class GetEditionEditOutput implements IGetEditionEditOutput {\r\n edition!: EditionEditDto;\r\n featureValues!: NameValueDto[] | undefined;\r\n features!: FlatFeatureDto[] | undefined;\r\n\r\n constructor(data?: IGetEditionEditOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.edition = _data[\"edition\"] ? EditionEditDto.fromJS(_data[\"edition\"]) : undefined;\r\n if (Array.isArray(_data[\"featureValues\"])) {\r\n this.featureValues = [] as any;\r\n for (let item of _data[\"featureValues\"])\r\n this.featureValues!.push(NameValueDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"features\"])) {\r\n this.features = [] as any;\r\n for (let item of _data[\"features\"])\r\n this.features!.push(FlatFeatureDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetEditionEditOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetEditionEditOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"edition\"] = this.edition ? this.edition.toJSON() : undefined;\r\n if (Array.isArray(this.featureValues)) {\r\n data[\"featureValues\"] = [];\r\n for (let item of this.featureValues)\r\n data[\"featureValues\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.features)) {\r\n data[\"features\"] = [];\r\n for (let item of this.features)\r\n data[\"features\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetEditionEditOutput {\r\n edition: EditionEditDto;\r\n featureValues: NameValueDto[] | undefined;\r\n features: FlatFeatureDto[] | undefined;\r\n}\r\n\r\nexport class GetEditionTenantStatisticsOutput implements IGetEditionTenantStatisticsOutput {\r\n editionStatistics!: TenantEdition[] | undefined;\r\n\r\n constructor(data?: IGetEditionTenantStatisticsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"editionStatistics\"])) {\r\n this.editionStatistics = [] as any;\r\n for (let item of _data[\"editionStatistics\"])\r\n this.editionStatistics!.push(TenantEdition.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetEditionTenantStatisticsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetEditionTenantStatisticsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.editionStatistics)) {\r\n data[\"editionStatistics\"] = [];\r\n for (let item of this.editionStatistics)\r\n data[\"editionStatistics\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetEditionTenantStatisticsOutput {\r\n editionStatistics: TenantEdition[] | undefined;\r\n}\r\n\r\nexport class GetExpiringTenantsOutput implements IGetExpiringTenantsOutput {\r\n expiringTenants!: ExpiringTenant[] | undefined;\r\n subscriptionEndAlertDayCount!: number;\r\n maxExpiringTenantsShownCount!: number;\r\n subscriptionEndDateStart!: DateTime;\r\n subscriptionEndDateEnd!: DateTime;\r\n\r\n constructor(data?: IGetExpiringTenantsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"expiringTenants\"])) {\r\n this.expiringTenants = [] as any;\r\n for (let item of _data[\"expiringTenants\"])\r\n this.expiringTenants!.push(ExpiringTenant.fromJS(item));\r\n }\r\n this.subscriptionEndAlertDayCount = _data[\"subscriptionEndAlertDayCount\"];\r\n this.maxExpiringTenantsShownCount = _data[\"maxExpiringTenantsShownCount\"];\r\n this.subscriptionEndDateStart = _data[\"subscriptionEndDateStart\"] ? DateTime.fromISO(_data[\"subscriptionEndDateStart\"].toString()) : undefined;\r\n this.subscriptionEndDateEnd = _data[\"subscriptionEndDateEnd\"] ? DateTime.fromISO(_data[\"subscriptionEndDateEnd\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetExpiringTenantsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetExpiringTenantsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.expiringTenants)) {\r\n data[\"expiringTenants\"] = [];\r\n for (let item of this.expiringTenants)\r\n data[\"expiringTenants\"].push(item.toJSON());\r\n }\r\n data[\"subscriptionEndAlertDayCount\"] = this.subscriptionEndAlertDayCount;\r\n data[\"maxExpiringTenantsShownCount\"] = this.maxExpiringTenantsShownCount;\r\n data[\"subscriptionEndDateStart\"] = this.subscriptionEndDateStart ? this.subscriptionEndDateStart.toString() : undefined;\r\n data[\"subscriptionEndDateEnd\"] = this.subscriptionEndDateEnd ? this.subscriptionEndDateEnd.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetExpiringTenantsOutput {\r\n expiringTenants: ExpiringTenant[] | undefined;\r\n subscriptionEndAlertDayCount: number;\r\n maxExpiringTenantsShownCount: number;\r\n subscriptionEndDateStart: DateTime;\r\n subscriptionEndDateEnd: DateTime;\r\n}\r\n\r\nexport class GetGeneralStatsOutput implements IGetGeneralStatsOutput {\r\n transactionPercent!: number;\r\n newVisitPercent!: number;\r\n bouncePercent!: number;\r\n\r\n constructor(data?: IGetGeneralStatsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.transactionPercent = _data[\"transactionPercent\"];\r\n this.newVisitPercent = _data[\"newVisitPercent\"];\r\n this.bouncePercent = _data[\"bouncePercent\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetGeneralStatsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetGeneralStatsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"transactionPercent\"] = this.transactionPercent;\r\n data[\"newVisitPercent\"] = this.newVisitPercent;\r\n data[\"bouncePercent\"] = this.bouncePercent;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetGeneralStatsOutput {\r\n transactionPercent: number;\r\n newVisitPercent: number;\r\n bouncePercent: number;\r\n}\r\n\r\nexport class GetIncomeStatisticsDataOutput implements IGetIncomeStatisticsDataOutput {\r\n incomeStatistics!: IncomeStastistic[] | undefined;\r\n\r\n constructor(data?: IGetIncomeStatisticsDataOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"incomeStatistics\"])) {\r\n this.incomeStatistics = [] as any;\r\n for (let item of _data[\"incomeStatistics\"])\r\n this.incomeStatistics!.push(IncomeStastistic.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetIncomeStatisticsDataOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetIncomeStatisticsDataOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.incomeStatistics)) {\r\n data[\"incomeStatistics\"] = [];\r\n for (let item of this.incomeStatistics)\r\n data[\"incomeStatistics\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetIncomeStatisticsDataOutput {\r\n incomeStatistics: IncomeStastistic[] | undefined;\r\n}\r\n\r\nexport class GetLanguageForEditOutput implements IGetLanguageForEditOutput {\r\n language!: ApplicationLanguageEditDto;\r\n languageNames!: ComboboxItemDto[] | undefined;\r\n flags!: ComboboxItemDto[] | undefined;\r\n\r\n constructor(data?: IGetLanguageForEditOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.language = _data[\"language\"] ? ApplicationLanguageEditDto.fromJS(_data[\"language\"]) : undefined;\r\n if (Array.isArray(_data[\"languageNames\"])) {\r\n this.languageNames = [] as any;\r\n for (let item of _data[\"languageNames\"])\r\n this.languageNames!.push(ComboboxItemDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"flags\"])) {\r\n this.flags = [] as any;\r\n for (let item of _data[\"flags\"])\r\n this.flags!.push(ComboboxItemDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetLanguageForEditOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetLanguageForEditOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"language\"] = this.language ? this.language.toJSON() : undefined;\r\n if (Array.isArray(this.languageNames)) {\r\n data[\"languageNames\"] = [];\r\n for (let item of this.languageNames)\r\n data[\"languageNames\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.flags)) {\r\n data[\"flags\"] = [];\r\n for (let item of this.flags)\r\n data[\"flags\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetLanguageForEditOutput {\r\n language: ApplicationLanguageEditDto;\r\n languageNames: ComboboxItemDto[] | undefined;\r\n flags: ComboboxItemDto[] | undefined;\r\n}\r\n\r\nexport class GetLanguagesOutput implements IGetLanguagesOutput {\r\n defaultLanguageName!: string | undefined;\r\n items!: ApplicationLanguageListDto[] | undefined;\r\n\r\n constructor(data?: IGetLanguagesOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.defaultLanguageName = _data[\"defaultLanguageName\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ApplicationLanguageListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetLanguagesOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetLanguagesOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"defaultLanguageName\"] = this.defaultLanguageName;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetLanguagesOutput {\r\n defaultLanguageName: string | undefined;\r\n items: ApplicationLanguageListDto[] | undefined;\r\n}\r\n\r\nexport class GetLatestWebLogsOutput implements IGetLatestWebLogsOutput {\r\n latestWebLogLines!: string[] | undefined;\r\n\r\n constructor(data?: IGetLatestWebLogsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"latestWebLogLines\"])) {\r\n this.latestWebLogLines = [] as any;\r\n for (let item of _data[\"latestWebLogLines\"])\r\n this.latestWebLogLines!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetLatestWebLogsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetLatestWebLogsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.latestWebLogLines)) {\r\n data[\"latestWebLogLines\"] = [];\r\n for (let item of this.latestWebLogLines)\r\n data[\"latestWebLogLines\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetLatestWebLogsOutput {\r\n latestWebLogLines: string[] | undefined;\r\n}\r\n\r\nexport class GetMemberActivityOutput implements IGetMemberActivityOutput {\r\n memberActivities!: MemberActivity[] | undefined;\r\n\r\n constructor(data?: IGetMemberActivityOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"memberActivities\"])) {\r\n this.memberActivities = [] as any;\r\n for (let item of _data[\"memberActivities\"])\r\n this.memberActivities!.push(MemberActivity.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetMemberActivityOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetMemberActivityOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.memberActivities)) {\r\n data[\"memberActivities\"] = [];\r\n for (let item of this.memberActivities)\r\n data[\"memberActivities\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetMemberActivityOutput {\r\n memberActivities: MemberActivity[] | undefined;\r\n}\r\n\r\nexport class GetNotificationSettingsOutput implements IGetNotificationSettingsOutput {\r\n receiveNotifications!: boolean;\r\n notifications!: NotificationSubscriptionWithDisplayNameDto[] | undefined;\r\n\r\n constructor(data?: IGetNotificationSettingsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.receiveNotifications = _data[\"receiveNotifications\"];\r\n if (Array.isArray(_data[\"notifications\"])) {\r\n this.notifications = [] as any;\r\n for (let item of _data[\"notifications\"])\r\n this.notifications!.push(NotificationSubscriptionWithDisplayNameDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetNotificationSettingsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetNotificationSettingsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"receiveNotifications\"] = this.receiveNotifications;\r\n if (Array.isArray(this.notifications)) {\r\n data[\"notifications\"] = [];\r\n for (let item of this.notifications)\r\n data[\"notifications\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetNotificationSettingsOutput {\r\n receiveNotifications: boolean;\r\n notifications: NotificationSubscriptionWithDisplayNameDto[] | undefined;\r\n}\r\n\r\nexport class GetNotificationsCreatedByUserOutput implements IGetNotificationsCreatedByUserOutput {\r\n notificationName!: string | undefined;\r\n data!: string | undefined;\r\n dataTypeName!: string | undefined;\r\n severity!: NotificationSeverity;\r\n isPublished!: boolean;\r\n creationTime!: DateTime;\r\n\r\n constructor(data?: IGetNotificationsCreatedByUserOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.notificationName = _data[\"notificationName\"];\r\n this.data = _data[\"data\"];\r\n this.dataTypeName = _data[\"dataTypeName\"];\r\n this.severity = _data[\"severity\"];\r\n this.isPublished = _data[\"isPublished\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetNotificationsCreatedByUserOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetNotificationsCreatedByUserOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"notificationName\"] = this.notificationName;\r\n data[\"data\"] = this.data;\r\n data[\"dataTypeName\"] = this.dataTypeName;\r\n data[\"severity\"] = this.severity;\r\n data[\"isPublished\"] = this.isPublished;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetNotificationsCreatedByUserOutput {\r\n notificationName: string | undefined;\r\n data: string | undefined;\r\n dataTypeName: string | undefined;\r\n severity: NotificationSeverity;\r\n isPublished: boolean;\r\n creationTime: DateTime;\r\n}\r\n\r\nexport class GetNotificationsOutput implements IGetNotificationsOutput {\r\n unreadCount!: number;\r\n totalCount!: number;\r\n items!: UserNotification[] | undefined;\r\n\r\n constructor(data?: IGetNotificationsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.unreadCount = _data[\"unreadCount\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(UserNotification.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetNotificationsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetNotificationsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"unreadCount\"] = this.unreadCount;\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetNotificationsOutput {\r\n unreadCount: number;\r\n totalCount: number;\r\n items: UserNotification[] | undefined;\r\n}\r\n\r\nexport class GetPasswordComplexitySettingOutput implements IGetPasswordComplexitySettingOutput {\r\n setting!: PasswordComplexitySetting;\r\n\r\n constructor(data?: IGetPasswordComplexitySettingOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.setting = _data[\"setting\"] ? PasswordComplexitySetting.fromJS(_data[\"setting\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetPasswordComplexitySettingOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetPasswordComplexitySettingOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"setting\"] = this.setting ? this.setting.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetPasswordComplexitySettingOutput {\r\n setting: PasswordComplexitySetting;\r\n}\r\n\r\nexport class GetProfilePictureOutput implements IGetProfilePictureOutput {\r\n profilePicture!: string | undefined;\r\n\r\n constructor(data?: IGetProfilePictureOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.profilePicture = _data[\"profilePicture\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetProfilePictureOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetProfilePictureOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"profilePicture\"] = this.profilePicture;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetProfilePictureOutput {\r\n profilePicture: string | undefined;\r\n}\r\n\r\nexport class GetProfitShareOutput implements IGetProfitShareOutput {\r\n profitShares!: number[] | undefined;\r\n\r\n constructor(data?: IGetProfitShareOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"profitShares\"])) {\r\n this.profitShares = [] as any;\r\n for (let item of _data[\"profitShares\"])\r\n this.profitShares!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetProfitShareOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetProfitShareOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.profitShares)) {\r\n data[\"profitShares\"] = [];\r\n for (let item of this.profitShares)\r\n data[\"profitShares\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetProfitShareOutput {\r\n profitShares: number[] | undefined;\r\n}\r\n\r\nexport class GetPublishedNotificationsOutput implements IGetPublishedNotificationsOutput {\r\n totalCount!: number;\r\n items!: GetNotificationsCreatedByUserOutput[] | undefined;\r\n\r\n constructor(data?: IGetPublishedNotificationsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetNotificationsCreatedByUserOutput.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetPublishedNotificationsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetPublishedNotificationsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetPublishedNotificationsOutput {\r\n totalCount: number;\r\n items: GetNotificationsCreatedByUserOutput[] | undefined;\r\n}\r\n\r\nexport class GetRecentTenantsOutput implements IGetRecentTenantsOutput {\r\n recentTenantsDayCount!: number;\r\n maxRecentTenantsShownCount!: number;\r\n tenantCreationStartDate!: DateTime;\r\n recentTenants!: RecentTenant[] | undefined;\r\n\r\n constructor(data?: IGetRecentTenantsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.recentTenantsDayCount = _data[\"recentTenantsDayCount\"];\r\n this.maxRecentTenantsShownCount = _data[\"maxRecentTenantsShownCount\"];\r\n this.tenantCreationStartDate = _data[\"tenantCreationStartDate\"] ? DateTime.fromISO(_data[\"tenantCreationStartDate\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"recentTenants\"])) {\r\n this.recentTenants = [] as any;\r\n for (let item of _data[\"recentTenants\"])\r\n this.recentTenants!.push(RecentTenant.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetRecentTenantsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetRecentTenantsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"recentTenantsDayCount\"] = this.recentTenantsDayCount;\r\n data[\"maxRecentTenantsShownCount\"] = this.maxRecentTenantsShownCount;\r\n data[\"tenantCreationStartDate\"] = this.tenantCreationStartDate ? this.tenantCreationStartDate.toString() : undefined;\r\n if (Array.isArray(this.recentTenants)) {\r\n data[\"recentTenants\"] = [];\r\n for (let item of this.recentTenants)\r\n data[\"recentTenants\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetRecentTenantsOutput {\r\n recentTenantsDayCount: number;\r\n maxRecentTenantsShownCount: number;\r\n tenantCreationStartDate: DateTime;\r\n recentTenants: RecentTenant[] | undefined;\r\n}\r\n\r\nexport class GetRegionalStatsOutput implements IGetRegionalStatsOutput {\r\n stats!: RegionalStatCountry[] | undefined;\r\n\r\n constructor(data?: IGetRegionalStatsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"stats\"])) {\r\n this.stats = [] as any;\r\n for (let item of _data[\"stats\"])\r\n this.stats!.push(RegionalStatCountry.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetRegionalStatsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetRegionalStatsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.stats)) {\r\n data[\"stats\"] = [];\r\n for (let item of this.stats)\r\n data[\"stats\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetRegionalStatsOutput {\r\n stats: RegionalStatCountry[] | undefined;\r\n}\r\n\r\nexport class GetRoleForEditOutput implements IGetRoleForEditOutput {\r\n role!: RoleEditDto;\r\n permissions!: FlatPermissionDto[] | undefined;\r\n grantedPermissionNames!: string[] | undefined;\r\n\r\n constructor(data?: IGetRoleForEditOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.role = _data[\"role\"] ? RoleEditDto.fromJS(_data[\"role\"]) : undefined;\r\n if (Array.isArray(_data[\"permissions\"])) {\r\n this.permissions = [] as any;\r\n for (let item of _data[\"permissions\"])\r\n this.permissions!.push(FlatPermissionDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"grantedPermissionNames\"])) {\r\n this.grantedPermissionNames = [] as any;\r\n for (let item of _data[\"grantedPermissionNames\"])\r\n this.grantedPermissionNames!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetRoleForEditOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetRoleForEditOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"role\"] = this.role ? this.role.toJSON() : undefined;\r\n if (Array.isArray(this.permissions)) {\r\n data[\"permissions\"] = [];\r\n for (let item of this.permissions)\r\n data[\"permissions\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.grantedPermissionNames)) {\r\n data[\"grantedPermissionNames\"] = [];\r\n for (let item of this.grantedPermissionNames)\r\n data[\"grantedPermissionNames\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetRoleForEditOutput {\r\n role: RoleEditDto;\r\n permissions: FlatPermissionDto[] | undefined;\r\n grantedPermissionNames: string[] | undefined;\r\n}\r\n\r\nexport class GetRolesInput implements IGetRolesInput {\r\n permissions!: string[] | undefined;\r\n\r\n constructor(data?: IGetRolesInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"permissions\"])) {\r\n this.permissions = [] as any;\r\n for (let item of _data[\"permissions\"])\r\n this.permissions!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetRolesInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetRolesInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.permissions)) {\r\n data[\"permissions\"] = [];\r\n for (let item of this.permissions)\r\n data[\"permissions\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetRolesInput {\r\n permissions: string[] | undefined;\r\n}\r\n\r\nexport class GetSalesSummaryOutput implements IGetSalesSummaryOutput {\r\n totalSales!: number;\r\n revenue!: number;\r\n expenses!: number;\r\n growth!: number;\r\n salesSummary!: SalesSummaryData[] | undefined;\r\n\r\n constructor(data?: IGetSalesSummaryOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalSales = _data[\"totalSales\"];\r\n this.revenue = _data[\"revenue\"];\r\n this.expenses = _data[\"expenses\"];\r\n this.growth = _data[\"growth\"];\r\n if (Array.isArray(_data[\"salesSummary\"])) {\r\n this.salesSummary = [] as any;\r\n for (let item of _data[\"salesSummary\"])\r\n this.salesSummary!.push(SalesSummaryData.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetSalesSummaryOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetSalesSummaryOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalSales\"] = this.totalSales;\r\n data[\"revenue\"] = this.revenue;\r\n data[\"expenses\"] = this.expenses;\r\n data[\"growth\"] = this.growth;\r\n if (Array.isArray(this.salesSummary)) {\r\n data[\"salesSummary\"] = [];\r\n for (let item of this.salesSummary)\r\n data[\"salesSummary\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetSalesSummaryOutput {\r\n totalSales: number;\r\n revenue: number;\r\n expenses: number;\r\n growth: number;\r\n salesSummary: SalesSummaryData[] | undefined;\r\n}\r\n\r\nexport class GetTenantFeaturesEditOutput implements IGetTenantFeaturesEditOutput {\r\n featureValues!: NameValueDto[] | undefined;\r\n features!: FlatFeatureDto[] | undefined;\r\n\r\n constructor(data?: IGetTenantFeaturesEditOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"featureValues\"])) {\r\n this.featureValues = [] as any;\r\n for (let item of _data[\"featureValues\"])\r\n this.featureValues!.push(NameValueDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"features\"])) {\r\n this.features = [] as any;\r\n for (let item of _data[\"features\"])\r\n this.features!.push(FlatFeatureDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetTenantFeaturesEditOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetTenantFeaturesEditOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.featureValues)) {\r\n data[\"featureValues\"] = [];\r\n for (let item of this.featureValues)\r\n data[\"featureValues\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.features)) {\r\n data[\"features\"] = [];\r\n for (let item of this.features)\r\n data[\"features\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetTenantFeaturesEditOutput {\r\n featureValues: NameValueDto[] | undefined;\r\n features: FlatFeatureDto[] | undefined;\r\n}\r\n\r\nexport class GetTopStatsOutput implements IGetTopStatsOutput {\r\n totalProfit!: number;\r\n newFeedbacks!: number;\r\n newOrders!: number;\r\n newUsers!: number;\r\n\r\n constructor(data?: IGetTopStatsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalProfit = _data[\"totalProfit\"];\r\n this.newFeedbacks = _data[\"newFeedbacks\"];\r\n this.newOrders = _data[\"newOrders\"];\r\n this.newUsers = _data[\"newUsers\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetTopStatsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetTopStatsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalProfit\"] = this.totalProfit;\r\n data[\"newFeedbacks\"] = this.newFeedbacks;\r\n data[\"newOrders\"] = this.newOrders;\r\n data[\"newUsers\"] = this.newUsers;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetTopStatsOutput {\r\n totalProfit: number;\r\n newFeedbacks: number;\r\n newOrders: number;\r\n newUsers: number;\r\n}\r\n\r\nexport class GetUserChatFriendsWithSettingsOutput implements IGetUserChatFriendsWithSettingsOutput {\r\n serverTime!: DateTime;\r\n friends!: FriendDto[] | undefined;\r\n\r\n constructor(data?: IGetUserChatFriendsWithSettingsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.serverTime = _data[\"serverTime\"] ? DateTime.fromISO(_data[\"serverTime\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"friends\"])) {\r\n this.friends = [] as any;\r\n for (let item of _data[\"friends\"])\r\n this.friends!.push(FriendDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetUserChatFriendsWithSettingsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetUserChatFriendsWithSettingsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"serverTime\"] = this.serverTime ? this.serverTime.toString() : undefined;\r\n if (Array.isArray(this.friends)) {\r\n data[\"friends\"] = [];\r\n for (let item of this.friends)\r\n data[\"friends\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetUserChatFriendsWithSettingsOutput {\r\n serverTime: DateTime;\r\n friends: FriendDto[] | undefined;\r\n}\r\n\r\nexport class GetUserForEditOutput implements IGetUserForEditOutput {\r\n profilePictureId!: string | undefined;\r\n user!: UserEditDto;\r\n roles!: UserRoleDto[] | undefined;\r\n allOrganizationUnits!: OrganizationUnitDto[] | undefined;\r\n memberedOrganizationUnits!: string[] | undefined;\r\n allowedUserNameCharacters!: string | undefined;\r\n isSMTPSettingsProvided!: boolean;\r\n\r\n constructor(data?: IGetUserForEditOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.profilePictureId = _data[\"profilePictureId\"];\r\n this.user = _data[\"user\"] ? UserEditDto.fromJS(_data[\"user\"]) : undefined;\r\n if (Array.isArray(_data[\"roles\"])) {\r\n this.roles = [] as any;\r\n for (let item of _data[\"roles\"])\r\n this.roles!.push(UserRoleDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"allOrganizationUnits\"])) {\r\n this.allOrganizationUnits = [] as any;\r\n for (let item of _data[\"allOrganizationUnits\"])\r\n this.allOrganizationUnits!.push(OrganizationUnitDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"memberedOrganizationUnits\"])) {\r\n this.memberedOrganizationUnits = [] as any;\r\n for (let item of _data[\"memberedOrganizationUnits\"])\r\n this.memberedOrganizationUnits!.push(item);\r\n }\r\n this.allowedUserNameCharacters = _data[\"allowedUserNameCharacters\"];\r\n this.isSMTPSettingsProvided = _data[\"isSMTPSettingsProvided\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetUserForEditOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetUserForEditOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"profilePictureId\"] = this.profilePictureId;\r\n data[\"user\"] = this.user ? this.user.toJSON() : undefined;\r\n if (Array.isArray(this.roles)) {\r\n data[\"roles\"] = [];\r\n for (let item of this.roles)\r\n data[\"roles\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.allOrganizationUnits)) {\r\n data[\"allOrganizationUnits\"] = [];\r\n for (let item of this.allOrganizationUnits)\r\n data[\"allOrganizationUnits\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.memberedOrganizationUnits)) {\r\n data[\"memberedOrganizationUnits\"] = [];\r\n for (let item of this.memberedOrganizationUnits)\r\n data[\"memberedOrganizationUnits\"].push(item);\r\n }\r\n data[\"allowedUserNameCharacters\"] = this.allowedUserNameCharacters;\r\n data[\"isSMTPSettingsProvided\"] = this.isSMTPSettingsProvided;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetUserForEditOutput {\r\n profilePictureId: string | undefined;\r\n user: UserEditDto;\r\n roles: UserRoleDto[] | undefined;\r\n allOrganizationUnits: OrganizationUnitDto[] | undefined;\r\n memberedOrganizationUnits: string[] | undefined;\r\n allowedUserNameCharacters: string | undefined;\r\n isSMTPSettingsProvided: boolean;\r\n}\r\n\r\nexport class GetUserPermissionsForEditOutput implements IGetUserPermissionsForEditOutput {\r\n permissions!: FlatPermissionDto[] | undefined;\r\n grantedPermissionNames!: string[] | undefined;\r\n\r\n constructor(data?: IGetUserPermissionsForEditOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"permissions\"])) {\r\n this.permissions = [] as any;\r\n for (let item of _data[\"permissions\"])\r\n this.permissions!.push(FlatPermissionDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"grantedPermissionNames\"])) {\r\n this.grantedPermissionNames = [] as any;\r\n for (let item of _data[\"grantedPermissionNames\"])\r\n this.grantedPermissionNames!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetUserPermissionsForEditOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetUserPermissionsForEditOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.permissions)) {\r\n data[\"permissions\"] = [];\r\n for (let item of this.permissions)\r\n data[\"permissions\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.grantedPermissionNames)) {\r\n data[\"grantedPermissionNames\"] = [];\r\n for (let item of this.grantedPermissionNames)\r\n data[\"grantedPermissionNames\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetUserPermissionsForEditOutput {\r\n permissions: FlatPermissionDto[] | undefined;\r\n grantedPermissionNames: string[] | undefined;\r\n}\r\n\r\nexport class GetUsersInput implements IGetUsersInput {\r\n filter!: string | undefined;\r\n permissions!: string[] | undefined;\r\n role!: number | undefined;\r\n onlyLockedUsers!: boolean;\r\n sorting!: string | undefined;\r\n maxResultCount!: number;\r\n skipCount!: number;\r\n\r\n constructor(data?: IGetUsersInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.filter = _data[\"filter\"];\r\n if (Array.isArray(_data[\"permissions\"])) {\r\n this.permissions = [] as any;\r\n for (let item of _data[\"permissions\"])\r\n this.permissions!.push(item);\r\n }\r\n this.role = _data[\"role\"];\r\n this.onlyLockedUsers = _data[\"onlyLockedUsers\"];\r\n this.sorting = _data[\"sorting\"];\r\n this.maxResultCount = _data[\"maxResultCount\"];\r\n this.skipCount = _data[\"skipCount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetUsersInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetUsersInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"filter\"] = this.filter;\r\n if (Array.isArray(this.permissions)) {\r\n data[\"permissions\"] = [];\r\n for (let item of this.permissions)\r\n data[\"permissions\"].push(item);\r\n }\r\n data[\"role\"] = this.role;\r\n data[\"onlyLockedUsers\"] = this.onlyLockedUsers;\r\n data[\"sorting\"] = this.sorting;\r\n data[\"maxResultCount\"] = this.maxResultCount;\r\n data[\"skipCount\"] = this.skipCount;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetUsersInput {\r\n filter: string | undefined;\r\n permissions: string[] | undefined;\r\n role: number | undefined;\r\n onlyLockedUsers: boolean;\r\n sorting: string | undefined;\r\n maxResultCount: number;\r\n skipCount: number;\r\n}\r\n\r\nexport class GoogleExternalLoginProviderSettings implements IGoogleExternalLoginProviderSettings {\r\n clientId!: string | undefined;\r\n clientSecret!: string | undefined;\r\n userInfoEndpoint!: string | undefined;\r\n\r\n constructor(data?: IGoogleExternalLoginProviderSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.clientSecret = _data[\"clientSecret\"];\r\n this.userInfoEndpoint = _data[\"userInfoEndpoint\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GoogleExternalLoginProviderSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GoogleExternalLoginProviderSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"clientSecret\"] = this.clientSecret;\r\n data[\"userInfoEndpoint\"] = this.userInfoEndpoint;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGoogleExternalLoginProviderSettings {\r\n clientId: string | undefined;\r\n clientSecret: string | undefined;\r\n userInfoEndpoint: string | undefined;\r\n}\r\n\r\nexport class HostBillingSettingsEditDto implements IHostBillingSettingsEditDto {\r\n legalName!: string | undefined;\r\n address!: string | undefined;\r\n\r\n constructor(data?: IHostBillingSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.legalName = _data[\"legalName\"];\r\n this.address = _data[\"address\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): HostBillingSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new HostBillingSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"legalName\"] = this.legalName;\r\n data[\"address\"] = this.address;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IHostBillingSettingsEditDto {\r\n legalName: string | undefined;\r\n address: string | undefined;\r\n}\r\n\r\nexport class HostSettingsEditDto implements IHostSettingsEditDto {\r\n general!: GeneralSettingsEditDto;\r\n userManagement!: HostUserManagementSettingsEditDto;\r\n email!: EmailSettingsEditDto;\r\n tenantManagement!: TenantManagementSettingsEditDto;\r\n security!: SecuritySettingsEditDto;\r\n billing!: HostBillingSettingsEditDto;\r\n otherSettings!: OtherSettingsEditDto;\r\n externalLoginProviderSettings!: ExternalLoginProviderSettingsEditDto;\r\n\r\n constructor(data?: IHostSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.general = new GeneralSettingsEditDto();\r\n this.userManagement = new HostUserManagementSettingsEditDto();\r\n this.email = new EmailSettingsEditDto();\r\n this.tenantManagement = new TenantManagementSettingsEditDto();\r\n this.security = new SecuritySettingsEditDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.general = _data[\"general\"] ? GeneralSettingsEditDto.fromJS(_data[\"general\"]) : new GeneralSettingsEditDto();\r\n this.userManagement = _data[\"userManagement\"] ? HostUserManagementSettingsEditDto.fromJS(_data[\"userManagement\"]) : new HostUserManagementSettingsEditDto();\r\n this.email = _data[\"email\"] ? EmailSettingsEditDto.fromJS(_data[\"email\"]) : new EmailSettingsEditDto();\r\n this.tenantManagement = _data[\"tenantManagement\"] ? TenantManagementSettingsEditDto.fromJS(_data[\"tenantManagement\"]) : new TenantManagementSettingsEditDto();\r\n this.security = _data[\"security\"] ? SecuritySettingsEditDto.fromJS(_data[\"security\"]) : new SecuritySettingsEditDto();\r\n this.billing = _data[\"billing\"] ? HostBillingSettingsEditDto.fromJS(_data[\"billing\"]) : undefined;\r\n this.otherSettings = _data[\"otherSettings\"] ? OtherSettingsEditDto.fromJS(_data[\"otherSettings\"]) : undefined;\r\n this.externalLoginProviderSettings = _data[\"externalLoginProviderSettings\"] ? ExternalLoginProviderSettingsEditDto.fromJS(_data[\"externalLoginProviderSettings\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): HostSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new HostSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"general\"] = this.general ? this.general.toJSON() : undefined;\r\n data[\"userManagement\"] = this.userManagement ? this.userManagement.toJSON() : undefined;\r\n data[\"email\"] = this.email ? this.email.toJSON() : undefined;\r\n data[\"tenantManagement\"] = this.tenantManagement ? this.tenantManagement.toJSON() : undefined;\r\n data[\"security\"] = this.security ? this.security.toJSON() : undefined;\r\n data[\"billing\"] = this.billing ? this.billing.toJSON() : undefined;\r\n data[\"otherSettings\"] = this.otherSettings ? this.otherSettings.toJSON() : undefined;\r\n data[\"externalLoginProviderSettings\"] = this.externalLoginProviderSettings ? this.externalLoginProviderSettings.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IHostSettingsEditDto {\r\n general: GeneralSettingsEditDto;\r\n userManagement: HostUserManagementSettingsEditDto;\r\n email: EmailSettingsEditDto;\r\n tenantManagement: TenantManagementSettingsEditDto;\r\n security: SecuritySettingsEditDto;\r\n billing: HostBillingSettingsEditDto;\r\n otherSettings: OtherSettingsEditDto;\r\n externalLoginProviderSettings: ExternalLoginProviderSettingsEditDto;\r\n}\r\n\r\nexport class HostUserManagementSettingsEditDto implements IHostUserManagementSettingsEditDto {\r\n isEmailConfirmationRequiredForLogin!: boolean;\r\n smsVerificationEnabled!: boolean;\r\n isCookieConsentEnabled!: boolean;\r\n isQuickThemeSelectEnabled!: boolean;\r\n useCaptchaOnLogin!: boolean;\r\n allowUsingGravatarProfilePicture!: boolean;\r\n sessionTimeOutSettings!: SessionTimeOutSettingsEditDto;\r\n userPasswordSettings!: UserPasswordSettingsEditDto;\r\n\r\n constructor(data?: IHostUserManagementSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isEmailConfirmationRequiredForLogin = _data[\"isEmailConfirmationRequiredForLogin\"];\r\n this.smsVerificationEnabled = _data[\"smsVerificationEnabled\"];\r\n this.isCookieConsentEnabled = _data[\"isCookieConsentEnabled\"];\r\n this.isQuickThemeSelectEnabled = _data[\"isQuickThemeSelectEnabled\"];\r\n this.useCaptchaOnLogin = _data[\"useCaptchaOnLogin\"];\r\n this.allowUsingGravatarProfilePicture = _data[\"allowUsingGravatarProfilePicture\"];\r\n this.sessionTimeOutSettings = _data[\"sessionTimeOutSettings\"] ? SessionTimeOutSettingsEditDto.fromJS(_data[\"sessionTimeOutSettings\"]) : undefined;\r\n this.userPasswordSettings = _data[\"userPasswordSettings\"] ? UserPasswordSettingsEditDto.fromJS(_data[\"userPasswordSettings\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): HostUserManagementSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new HostUserManagementSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isEmailConfirmationRequiredForLogin\"] = this.isEmailConfirmationRequiredForLogin;\r\n data[\"smsVerificationEnabled\"] = this.smsVerificationEnabled;\r\n data[\"isCookieConsentEnabled\"] = this.isCookieConsentEnabled;\r\n data[\"isQuickThemeSelectEnabled\"] = this.isQuickThemeSelectEnabled;\r\n data[\"useCaptchaOnLogin\"] = this.useCaptchaOnLogin;\r\n data[\"allowUsingGravatarProfilePicture\"] = this.allowUsingGravatarProfilePicture;\r\n data[\"sessionTimeOutSettings\"] = this.sessionTimeOutSettings ? this.sessionTimeOutSettings.toJSON() : undefined;\r\n data[\"userPasswordSettings\"] = this.userPasswordSettings ? this.userPasswordSettings.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IHostUserManagementSettingsEditDto {\r\n isEmailConfirmationRequiredForLogin: boolean;\r\n smsVerificationEnabled: boolean;\r\n isCookieConsentEnabled: boolean;\r\n isQuickThemeSelectEnabled: boolean;\r\n useCaptchaOnLogin: boolean;\r\n allowUsingGravatarProfilePicture: boolean;\r\n sessionTimeOutSettings: SessionTimeOutSettingsEditDto;\r\n userPasswordSettings: UserPasswordSettingsEditDto;\r\n}\r\n\r\nexport enum HttpStatusCode {\r\n Continue = 100,\r\n SwitchingProtocols = 101,\r\n Processing = 102,\r\n EarlyHints = 103,\r\n OK = 200,\r\n Created = 201,\r\n Accepted = 202,\r\n NonAuthoritativeInformation = 203,\r\n NoContent = 204,\r\n ResetContent = 205,\r\n PartialContent = 206,\r\n MultiStatus = 207,\r\n AlreadyReported = 208,\r\n IMUsed = 226,\r\n MultipleChoices = 300,\r\n Ambiguous = 301,\r\n MovedPermanently = 302,\r\n Moved = 303,\r\n Found = 304,\r\n Redirect = 305,\r\n SeeOther = 306,\r\n RedirectMethod = 307,\r\n NotModified = 308,\r\n UseProxy = 400,\r\n Unused = 401,\r\n TemporaryRedirect = 402,\r\n RedirectKeepVerb = 403,\r\n PermanentRedirect = 404,\r\n BadRequest = 405,\r\n Unauthorized = 406,\r\n PaymentRequired = 407,\r\n Forbidden = 408,\r\n NotFound = 409,\r\n MethodNotAllowed = 410,\r\n NotAcceptable = 411,\r\n ProxyAuthenticationRequired = 412,\r\n RequestTimeout = 413,\r\n Conflict = 414,\r\n Gone = 415,\r\n LengthRequired = 416,\r\n PreconditionFailed = 417,\r\n RequestEntityTooLarge = 421,\r\n RequestUriTooLong = 422,\r\n UnsupportedMediaType = 423,\r\n RequestedRangeNotSatisfiable = 424,\r\n ExpectationFailed = 426,\r\n MisdirectedRequest = 428,\r\n UnprocessableEntity = 429,\r\n Locked = 431,\r\n FailedDependency = 451,\r\n UpgradeRequired = 500,\r\n PreconditionRequired = 501,\r\n TooManyRequests = 502,\r\n RequestHeaderFieldsTooLarge = 503,\r\n UnavailableForLegalReasons = 504,\r\n InternalServerError = 505,\r\n NotImplemented = 506,\r\n BadGateway = 507,\r\n ServiceUnavailable = 508,\r\n GatewayTimeout = 510,\r\n HttpVersionNotSupported = 511,\r\n}\r\n\r\nexport class IInputType implements IIInputType {\r\n readonly name!: string | undefined;\r\n readonly attributes!: { [key: string]: any; } | undefined;\r\n validator!: IValueValidator;\r\n\r\n constructor(data?: IIInputType) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n (this).name = _data[\"name\"];\r\n if (_data[\"attributes\"]) {\r\n (this).attributes = {} as any;\r\n for (let key in _data[\"attributes\"]) {\r\n if (_data[\"attributes\"].hasOwnProperty(key))\r\n ((this).attributes)![key] = _data[\"attributes\"][key];\r\n }\r\n }\r\n this.validator = _data[\"validator\"] ? IValueValidator.fromJS(_data[\"validator\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): IInputType {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IInputType();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n if (this.attributes) {\r\n data[\"attributes\"] = {};\r\n for (let key in this.attributes) {\r\n if (this.attributes.hasOwnProperty(key))\r\n (data[\"attributes\"])[key] = (this.attributes)[key];\r\n }\r\n }\r\n data[\"validator\"] = this.validator ? this.validator.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIInputType {\r\n name: string | undefined;\r\n attributes: { [key: string]: any; } | undefined;\r\n validator: IValueValidator;\r\n}\r\n\r\nexport class IListResultOfInboundShipmentAvailableItemDto implements IIListResultOfInboundShipmentAvailableItemDto {\r\n items!: InboundShipmentAvailableItemDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfInboundShipmentAvailableItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(InboundShipmentAvailableItemDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfInboundShipmentAvailableItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfInboundShipmentAvailableItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfInboundShipmentAvailableItemDto {\r\n items: InboundShipmentAvailableItemDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfInventoryPalletDetailsListDto implements IIListResultOfInventoryPalletDetailsListDto {\r\n items!: InventoryPalletDetailsListDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfInventoryPalletDetailsListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(InventoryPalletDetailsListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfInventoryPalletDetailsListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfInventoryPalletDetailsListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfInventoryPalletDetailsListDto {\r\n items: InventoryPalletDetailsListDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfInventoryPalletSummaryListDto implements IIListResultOfInventoryPalletSummaryListDto {\r\n items!: InventoryPalletSummaryListDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfInventoryPalletSummaryListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(InventoryPalletSummaryListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfInventoryPalletSummaryListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfInventoryPalletSummaryListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfInventoryPalletSummaryListDto {\r\n items: InventoryPalletSummaryListDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfNameValueDto implements IIListResultOfNameValueDto {\r\n items!: NameValueDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfNameValueDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(NameValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfNameValueDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfNameValueDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfNameValueDto {\r\n items: NameValueDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfOutboundShipmentAvailableItemDto implements IIListResultOfOutboundShipmentAvailableItemDto {\r\n items!: OutboundShipmentAvailableItemDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfOutboundShipmentAvailableItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(OutboundShipmentAvailableItemDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfOutboundShipmentAvailableItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfOutboundShipmentAvailableItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfOutboundShipmentAvailableItemDto {\r\n items: OutboundShipmentAvailableItemDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfRecurringAppointmentSettingsDto implements IIListResultOfRecurringAppointmentSettingsDto {\r\n items!: RecurringAppointmentSettingsDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfRecurringAppointmentSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(RecurringAppointmentSettingsDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfRecurringAppointmentSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfRecurringAppointmentSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfRecurringAppointmentSettingsDto {\r\n items: RecurringAppointmentSettingsDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfShipmentInboundCustomerOrderNumberDto implements IIListResultOfShipmentInboundCustomerOrderNumberDto {\r\n items!: ShipmentInboundCustomerOrderNumberDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfShipmentInboundCustomerOrderNumberDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ShipmentInboundCustomerOrderNumberDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfShipmentInboundCustomerOrderNumberDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfShipmentInboundCustomerOrderNumberDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfShipmentInboundCustomerOrderNumberDto {\r\n items: ShipmentInboundCustomerOrderNumberDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfShipmentInboundCustomerPONumberDto implements IIListResultOfShipmentInboundCustomerPONumberDto {\r\n items!: ShipmentInboundCustomerPONumberDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfShipmentInboundCustomerPONumberDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ShipmentInboundCustomerPONumberDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfShipmentInboundCustomerPONumberDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfShipmentInboundCustomerPONumberDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfShipmentInboundCustomerPONumberDto {\r\n items: ShipmentInboundCustomerPONumberDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfShipmentInboundOrderIdDto implements IIListResultOfShipmentInboundOrderIdDto {\r\n items!: ShipmentInboundOrderIdDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfShipmentInboundOrderIdDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ShipmentInboundOrderIdDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfShipmentInboundOrderIdDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfShipmentInboundOrderIdDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfShipmentInboundOrderIdDto {\r\n items: ShipmentInboundOrderIdDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfShipmentInboundShipmentIdDto implements IIListResultOfShipmentInboundShipmentIdDto {\r\n items!: ShipmentInboundShipmentIdDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfShipmentInboundShipmentIdDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ShipmentInboundShipmentIdDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfShipmentInboundShipmentIdDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfShipmentInboundShipmentIdDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfShipmentInboundShipmentIdDto {\r\n items: ShipmentInboundShipmentIdDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfShipmentInventoryStatusDto implements IIListResultOfShipmentInventoryStatusDto {\r\n items!: ShipmentInventoryStatusDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfShipmentInventoryStatusDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ShipmentInventoryStatusDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfShipmentInventoryStatusDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfShipmentInventoryStatusDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfShipmentInventoryStatusDto {\r\n items: ShipmentInventoryStatusDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfShipmentLotNumberDto implements IIListResultOfShipmentLotNumberDto {\r\n items!: ShipmentLotNumberDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfShipmentLotNumberDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ShipmentLotNumberDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfShipmentLotNumberDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfShipmentLotNumberDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfShipmentLotNumberDto {\r\n items: ShipmentLotNumberDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfShipmentOrderItemGroupDto implements IIListResultOfShipmentOrderItemGroupDto {\r\n items!: ShipmentOrderItemGroupDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfShipmentOrderItemGroupDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ShipmentOrderItemGroupDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfShipmentOrderItemGroupDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfShipmentOrderItemGroupDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfShipmentOrderItemGroupDto {\r\n items: ShipmentOrderItemGroupDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfShipmentTrackingNumberDto implements IIListResultOfShipmentTrackingNumberDto {\r\n items!: ShipmentTrackingNumberDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfShipmentTrackingNumberDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ShipmentTrackingNumberDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfShipmentTrackingNumberDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfShipmentTrackingNumberDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfShipmentTrackingNumberDto {\r\n items: ShipmentTrackingNumberDto[] | undefined;\r\n}\r\n\r\nexport class IListResultOfWarehouseDto implements IIListResultOfWarehouseDto {\r\n items!: WarehouseDto[] | undefined;\r\n\r\n constructor(data?: IIListResultOfWarehouseDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(WarehouseDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IListResultOfWarehouseDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IListResultOfWarehouseDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIListResultOfWarehouseDto {\r\n items: WarehouseDto[] | undefined;\r\n}\r\n\r\nexport class IPagedResultOfInventoryListDto implements IIPagedResultOfInventoryListDto {\r\n items!: InventoryListDto[] | undefined;\r\n totalCount!: number;\r\n\r\n constructor(data?: IIPagedResultOfInventoryListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(InventoryListDto.fromJS(item));\r\n }\r\n this.totalCount = _data[\"totalCount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): IPagedResultOfInventoryListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IPagedResultOfInventoryListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n data[\"totalCount\"] = this.totalCount;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIPagedResultOfInventoryListDto {\r\n items: InventoryListDto[] | undefined;\r\n totalCount: number;\r\n}\r\n\r\nexport class IPagedResultOfInventoryLotListDto implements IIPagedResultOfInventoryLotListDto {\r\n items!: InventoryLotListDto[] | undefined;\r\n totalCount!: number;\r\n\r\n constructor(data?: IIPagedResultOfInventoryLotListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(InventoryLotListDto.fromJS(item));\r\n }\r\n this.totalCount = _data[\"totalCount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): IPagedResultOfInventoryLotListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IPagedResultOfInventoryLotListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n data[\"totalCount\"] = this.totalCount;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIPagedResultOfInventoryLotListDto {\r\n items: InventoryLotListDto[] | undefined;\r\n totalCount: number;\r\n}\r\n\r\nexport class IValueValidator implements IIValueValidator {\r\n readonly name!: string | undefined;\r\n readonly attributes!: { [key: string]: any; } | undefined;\r\n\r\n constructor(data?: IIValueValidator) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n (this).name = _data[\"name\"];\r\n if (_data[\"attributes\"]) {\r\n (this).attributes = {} as any;\r\n for (let key in _data[\"attributes\"]) {\r\n if (_data[\"attributes\"].hasOwnProperty(key))\r\n ((this).attributes)![key] = _data[\"attributes\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IValueValidator {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IValueValidator();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n if (this.attributes) {\r\n data[\"attributes\"] = {};\r\n for (let key in this.attributes) {\r\n if (this.attributes.hasOwnProperty(key))\r\n (data[\"attributes\"])[key] = (this.attributes)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIValueValidator {\r\n name: string | undefined;\r\n attributes: { [key: string]: any; } | undefined;\r\n}\r\n\r\nexport class ImpersonateOutput implements IImpersonateOutput {\r\n impersonationToken!: string | undefined;\r\n tenancyName!: string | undefined;\r\n\r\n constructor(data?: IImpersonateOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.impersonationToken = _data[\"impersonationToken\"];\r\n this.tenancyName = _data[\"tenancyName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ImpersonateOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ImpersonateOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"impersonationToken\"] = this.impersonationToken;\r\n data[\"tenancyName\"] = this.tenancyName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IImpersonateOutput {\r\n impersonationToken: string | undefined;\r\n tenancyName: string | undefined;\r\n}\r\n\r\nexport class ImpersonateTenantInput implements IImpersonateTenantInput {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n\r\n constructor(data?: IImpersonateTenantInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ImpersonateTenantInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ImpersonateTenantInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IImpersonateTenantInput {\r\n tenantId: number | undefined;\r\n userId: number;\r\n}\r\n\r\nexport class ImpersonateUserInput implements IImpersonateUserInput {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n\r\n constructor(data?: IImpersonateUserInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ImpersonateUserInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ImpersonateUserInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IImpersonateUserInput {\r\n tenantId: number | undefined;\r\n userId: number;\r\n}\r\n\r\nexport class ImpersonatedAuthenticateResultModel implements IImpersonatedAuthenticateResultModel {\r\n accessToken!: string | undefined;\r\n encryptedAccessToken!: string | undefined;\r\n expireInSeconds!: number;\r\n\r\n constructor(data?: IImpersonatedAuthenticateResultModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.accessToken = _data[\"accessToken\"];\r\n this.encryptedAccessToken = _data[\"encryptedAccessToken\"];\r\n this.expireInSeconds = _data[\"expireInSeconds\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ImpersonatedAuthenticateResultModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ImpersonatedAuthenticateResultModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"accessToken\"] = this.accessToken;\r\n data[\"encryptedAccessToken\"] = this.encryptedAccessToken;\r\n data[\"expireInSeconds\"] = this.expireInSeconds;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IImpersonatedAuthenticateResultModel {\r\n accessToken: string | undefined;\r\n encryptedAccessToken: string | undefined;\r\n expireInSeconds: number;\r\n}\r\n\r\nexport class InboundShipmentAvailableItemDto implements IInboundShipmentAvailableItemDto {\r\n externalId!: string | undefined;\r\n name!: string | undefined;\r\n unitOfMeasure!: string | undefined;\r\n netWeight!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IInboundShipmentAvailableItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.name = _data[\"name\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n this.netWeight = _data[\"netWeight\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InboundShipmentAvailableItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InboundShipmentAvailableItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"name\"] = this.name;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n data[\"netWeight\"] = this.netWeight;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInboundShipmentAvailableItemDto {\r\n externalId: string | undefined;\r\n name: string | undefined;\r\n unitOfMeasure: string | undefined;\r\n netWeight: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class IncomeStastistic implements IIncomeStastistic {\r\n label!: string | undefined;\r\n date!: DateTime;\r\n amount!: number;\r\n\r\n constructor(data?: IIncomeStastistic) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.label = _data[\"label\"];\r\n this.date = _data[\"date\"] ? DateTime.fromISO(_data[\"date\"].toString()) : undefined;\r\n this.amount = _data[\"amount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): IncomeStastistic {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IncomeStastistic();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"label\"] = this.label;\r\n data[\"date\"] = this.date ? this.date.toString() : undefined;\r\n data[\"amount\"] = this.amount;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIncomeStastistic {\r\n label: string | undefined;\r\n date: DateTime;\r\n amount: number;\r\n}\r\n\r\nexport class InsertOrUpdateAllValuesInput implements IInsertOrUpdateAllValuesInput {\r\n items!: InsertOrUpdateAllValuesInputItem[] | undefined;\r\n\r\n constructor(data?: IInsertOrUpdateAllValuesInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(InsertOrUpdateAllValuesInputItem.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): InsertOrUpdateAllValuesInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InsertOrUpdateAllValuesInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInsertOrUpdateAllValuesInput {\r\n items: InsertOrUpdateAllValuesInputItem[] | undefined;\r\n}\r\n\r\nexport class InsertOrUpdateAllValuesInputItem implements IInsertOrUpdateAllValuesInputItem {\r\n entityId!: string | undefined;\r\n dynamicEntityPropertyId!: number;\r\n values!: string[] | undefined;\r\n\r\n constructor(data?: IInsertOrUpdateAllValuesInputItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.entityId = _data[\"entityId\"];\r\n this.dynamicEntityPropertyId = _data[\"dynamicEntityPropertyId\"];\r\n if (Array.isArray(_data[\"values\"])) {\r\n this.values = [] as any;\r\n for (let item of _data[\"values\"])\r\n this.values!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): InsertOrUpdateAllValuesInputItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InsertOrUpdateAllValuesInputItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"entityId\"] = this.entityId;\r\n data[\"dynamicEntityPropertyId\"] = this.dynamicEntityPropertyId;\r\n if (Array.isArray(this.values)) {\r\n data[\"values\"] = [];\r\n for (let item of this.values)\r\n data[\"values\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInsertOrUpdateAllValuesInputItem {\r\n entityId: string | undefined;\r\n dynamicEntityPropertyId: number;\r\n values: string[] | undefined;\r\n}\r\n\r\nexport class InstallDto implements IInstallDto {\r\n connectionString!: string;\r\n adminPassword!: string;\r\n webSiteUrl!: string;\r\n serverUrl!: string | undefined;\r\n defaultLanguage!: string;\r\n smtpSettings!: EmailSettingsEditDto;\r\n billInfo!: HostBillingSettingsEditDto;\r\n\r\n constructor(data?: IInstallDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.connectionString = _data[\"connectionString\"];\r\n this.adminPassword = _data[\"adminPassword\"];\r\n this.webSiteUrl = _data[\"webSiteUrl\"];\r\n this.serverUrl = _data[\"serverUrl\"];\r\n this.defaultLanguage = _data[\"defaultLanguage\"];\r\n this.smtpSettings = _data[\"smtpSettings\"] ? EmailSettingsEditDto.fromJS(_data[\"smtpSettings\"]) : undefined;\r\n this.billInfo = _data[\"billInfo\"] ? HostBillingSettingsEditDto.fromJS(_data[\"billInfo\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InstallDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InstallDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"connectionString\"] = this.connectionString;\r\n data[\"adminPassword\"] = this.adminPassword;\r\n data[\"webSiteUrl\"] = this.webSiteUrl;\r\n data[\"serverUrl\"] = this.serverUrl;\r\n data[\"defaultLanguage\"] = this.defaultLanguage;\r\n data[\"smtpSettings\"] = this.smtpSettings ? this.smtpSettings.toJSON() : undefined;\r\n data[\"billInfo\"] = this.billInfo ? this.billInfo.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInstallDto {\r\n connectionString: string;\r\n adminPassword: string;\r\n webSiteUrl: string;\r\n serverUrl: string | undefined;\r\n defaultLanguage: string;\r\n smtpSettings: EmailSettingsEditDto;\r\n billInfo: HostBillingSettingsEditDto;\r\n}\r\n\r\nexport class InventoryActivityDto implements IInventoryActivityDto {\r\n invact_id!: string | undefined;\r\n wh_id!: string | undefined;\r\n trndte!: DateTime;\r\n actcod!: string | undefined;\r\n prtnum!: string | undefined;\r\n product_description!: string | undefined;\r\n prt_client_id!: string | undefined;\r\n client_name!: string | undefined;\r\n invsts!: string | undefined;\r\n lotnum!: string | undefined;\r\n sup_lotnum!: string | undefined;\r\n revlvl!: string | undefined;\r\n orgcod!: string | undefined;\r\n inv_attr_str1!: string | undefined;\r\n inv_attr_str2!: string | undefined;\r\n inv_attr_str3!: string | undefined;\r\n inv_attr_str4!: string | undefined;\r\n inv_attr_str5!: string | undefined;\r\n inv_attr_str6!: string | undefined;\r\n inv_attr_str7!: string | undefined;\r\n inv_attr_str8!: string | undefined;\r\n inv_attr_str9!: string | undefined;\r\n inv_attr_str10!: string | undefined;\r\n inv_attr_str11!: string | undefined;\r\n inv_attr_str12!: string | undefined;\r\n inv_attr_str13!: string | undefined;\r\n inv_attr_str14!: string | undefined;\r\n inv_attr_str15!: string | undefined;\r\n inv_attr_str16!: string | undefined;\r\n inv_attr_str17!: string | undefined;\r\n inv_attr_str18!: string | undefined;\r\n inv_attr_int1!: string | undefined;\r\n inv_attr_int2!: string | undefined;\r\n inv_attr_int3!: string | undefined;\r\n inv_attr_int4!: string | undefined;\r\n inv_attr_int5!: string | undefined;\r\n inv_attr_flt1!: string | undefined;\r\n inv_attr_flt2!: string | undefined;\r\n inv_attr_flt3!: string | undefined;\r\n inv_attr_dte1!: string | undefined;\r\n inv_attr_dte2!: string | undefined;\r\n rcvqty!: number;\r\n shpqty!: number;\r\n adjqty!: number;\r\n wko_cnsqty!: number | undefined;\r\n wko_rcvqty!: number | undefined;\r\n ship_id!: string | undefined;\r\n ship_line_id!: string | undefined;\r\n ordnum!: string | undefined;\r\n ordlin!: string | undefined;\r\n ordsln!: string | undefined;\r\n ordtyp!: string | undefined;\r\n trknum!: string | undefined;\r\n invnum!: string | undefined;\r\n supnum!: string | undefined;\r\n invlin!: string | undefined;\r\n invsln!: string | undefined;\r\n invtyp!: string | undefined;\r\n sesnum!: string | undefined;\r\n wkonum!: string | undefined;\r\n wkorev!: string | undefined;\r\n wkolin!: string | undefined;\r\n wko_rcvtyp!: string | undefined;\r\n client_id!: string | undefined;\r\n snap_gen_num!: string | undefined;\r\n cnsg_flg!: number | undefined;\r\n moddte!: string | undefined;\r\n mod_usr_id!: string | undefined;\r\n u_version!: string | undefined;\r\n ins_dt!: string | undefined;\r\n last_upd_dt!: string | undefined;\r\n ins_user_id!: string | undefined;\r\n last_upd_user_id!: string | undefined;\r\n rowid!: number | undefined;\r\n dsp_rcvqty!: number | undefined;\r\n dsp_rcvqty_uom!: string | undefined;\r\n rem_rcvqty!: number | undefined;\r\n rem_rcvqty_uom!: string | undefined;\r\n dsp_shpqty!: number | undefined;\r\n dsp_shpqty_uom!: string | undefined;\r\n rem_shpqty!: number | undefined;\r\n rem_shpqty_uom!: string | undefined;\r\n dsp_adjqty!: number | undefined;\r\n dsp_adjqty_uom!: string | undefined;\r\n rem_adjqty!: number | undefined;\r\n rem_adjqty_uom!: string | undefined;\r\n dsp_wko_cnsqty!: number | undefined;\r\n dsp_wko_cnsqty_uom!: string | undefined;\r\n rem_wko_cnsqty!: number | undefined;\r\n rem_wko_cnsqty_uom!: string | undefined;\r\n dsp_wko_rcvqty!: number | undefined;\r\n dsp_wko_rcvqty_uom!: string | undefined;\r\n rem_wko_rcvqty!: number | undefined;\r\n rem_wko_rcvqty_uom!: string | undefined;\r\n customerOrderNumber!: string | undefined;\r\n customerPONumber!: string | undefined;\r\n readonly transaction!: string | undefined;\r\n readonly articoOrderNumber!: string | undefined;\r\n readonly customOrderNumber!: string | undefined;\r\n readonly customPONumber!: string | undefined;\r\n readonly quantity!: number;\r\n\r\n constructor(data?: IInventoryActivityDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.invact_id = _data[\"invact_id\"];\r\n this.wh_id = _data[\"wh_id\"];\r\n this.trndte = _data[\"trndte\"] ? DateTime.fromISO(_data[\"trndte\"].toString()) : undefined;\r\n this.actcod = _data[\"actcod\"];\r\n this.prtnum = _data[\"prtnum\"];\r\n this.product_description = _data[\"product_description\"];\r\n this.prt_client_id = _data[\"prt_client_id\"];\r\n this.client_name = _data[\"client_name\"];\r\n this.invsts = _data[\"invsts\"];\r\n this.lotnum = _data[\"lotnum\"];\r\n this.sup_lotnum = _data[\"sup_lotnum\"];\r\n this.revlvl = _data[\"revlvl\"];\r\n this.orgcod = _data[\"orgcod\"];\r\n this.inv_attr_str1 = _data[\"inv_attr_str1\"];\r\n this.inv_attr_str2 = _data[\"inv_attr_str2\"];\r\n this.inv_attr_str3 = _data[\"inv_attr_str3\"];\r\n this.inv_attr_str4 = _data[\"inv_attr_str4\"];\r\n this.inv_attr_str5 = _data[\"inv_attr_str5\"];\r\n this.inv_attr_str6 = _data[\"inv_attr_str6\"];\r\n this.inv_attr_str7 = _data[\"inv_attr_str7\"];\r\n this.inv_attr_str8 = _data[\"inv_attr_str8\"];\r\n this.inv_attr_str9 = _data[\"inv_attr_str9\"];\r\n this.inv_attr_str10 = _data[\"inv_attr_str10\"];\r\n this.inv_attr_str11 = _data[\"inv_attr_str11\"];\r\n this.inv_attr_str12 = _data[\"inv_attr_str12\"];\r\n this.inv_attr_str13 = _data[\"inv_attr_str13\"];\r\n this.inv_attr_str14 = _data[\"inv_attr_str14\"];\r\n this.inv_attr_str15 = _data[\"inv_attr_str15\"];\r\n this.inv_attr_str16 = _data[\"inv_attr_str16\"];\r\n this.inv_attr_str17 = _data[\"inv_attr_str17\"];\r\n this.inv_attr_str18 = _data[\"inv_attr_str18\"];\r\n this.inv_attr_int1 = _data[\"inv_attr_int1\"];\r\n this.inv_attr_int2 = _data[\"inv_attr_int2\"];\r\n this.inv_attr_int3 = _data[\"inv_attr_int3\"];\r\n this.inv_attr_int4 = _data[\"inv_attr_int4\"];\r\n this.inv_attr_int5 = _data[\"inv_attr_int5\"];\r\n this.inv_attr_flt1 = _data[\"inv_attr_flt1\"];\r\n this.inv_attr_flt2 = _data[\"inv_attr_flt2\"];\r\n this.inv_attr_flt3 = _data[\"inv_attr_flt3\"];\r\n this.inv_attr_dte1 = _data[\"inv_attr_dte1\"];\r\n this.inv_attr_dte2 = _data[\"inv_attr_dte2\"];\r\n this.rcvqty = _data[\"rcvqty\"];\r\n this.shpqty = _data[\"shpqty\"];\r\n this.adjqty = _data[\"adjqty\"];\r\n this.wko_cnsqty = _data[\"wko_cnsqty\"];\r\n this.wko_rcvqty = _data[\"wko_rcvqty\"];\r\n this.ship_id = _data[\"ship_id\"];\r\n this.ship_line_id = _data[\"ship_line_id\"];\r\n this.ordnum = _data[\"ordnum\"];\r\n this.ordlin = _data[\"ordlin\"];\r\n this.ordsln = _data[\"ordsln\"];\r\n this.ordtyp = _data[\"ordtyp\"];\r\n this.trknum = _data[\"trknum\"];\r\n this.invnum = _data[\"invnum\"];\r\n this.supnum = _data[\"supnum\"];\r\n this.invlin = _data[\"invlin\"];\r\n this.invsln = _data[\"invsln\"];\r\n this.invtyp = _data[\"invtyp\"];\r\n this.sesnum = _data[\"sesnum\"];\r\n this.wkonum = _data[\"wkonum\"];\r\n this.wkorev = _data[\"wkorev\"];\r\n this.wkolin = _data[\"wkolin\"];\r\n this.wko_rcvtyp = _data[\"wko_rcvtyp\"];\r\n this.client_id = _data[\"client_id\"];\r\n this.snap_gen_num = _data[\"snap_gen_num\"];\r\n this.cnsg_flg = _data[\"cnsg_flg\"];\r\n this.moddte = _data[\"moddte\"];\r\n this.mod_usr_id = _data[\"mod_usr_id\"];\r\n this.u_version = _data[\"u_version\"];\r\n this.ins_dt = _data[\"ins_dt\"];\r\n this.last_upd_dt = _data[\"last_upd_dt\"];\r\n this.ins_user_id = _data[\"ins_user_id\"];\r\n this.last_upd_user_id = _data[\"last_upd_user_id\"];\r\n this.rowid = _data[\"rowid\"];\r\n this.dsp_rcvqty = _data[\"dsp_rcvqty\"];\r\n this.dsp_rcvqty_uom = _data[\"dsp_rcvqty_uom\"];\r\n this.rem_rcvqty = _data[\"rem_rcvqty\"];\r\n this.rem_rcvqty_uom = _data[\"rem_rcvqty_uom\"];\r\n this.dsp_shpqty = _data[\"dsp_shpqty\"];\r\n this.dsp_shpqty_uom = _data[\"dsp_shpqty_uom\"];\r\n this.rem_shpqty = _data[\"rem_shpqty\"];\r\n this.rem_shpqty_uom = _data[\"rem_shpqty_uom\"];\r\n this.dsp_adjqty = _data[\"dsp_adjqty\"];\r\n this.dsp_adjqty_uom = _data[\"dsp_adjqty_uom\"];\r\n this.rem_adjqty = _data[\"rem_adjqty\"];\r\n this.rem_adjqty_uom = _data[\"rem_adjqty_uom\"];\r\n this.dsp_wko_cnsqty = _data[\"dsp_wko_cnsqty\"];\r\n this.dsp_wko_cnsqty_uom = _data[\"dsp_wko_cnsqty_uom\"];\r\n this.rem_wko_cnsqty = _data[\"rem_wko_cnsqty\"];\r\n this.rem_wko_cnsqty_uom = _data[\"rem_wko_cnsqty_uom\"];\r\n this.dsp_wko_rcvqty = _data[\"dsp_wko_rcvqty\"];\r\n this.dsp_wko_rcvqty_uom = _data[\"dsp_wko_rcvqty_uom\"];\r\n this.rem_wko_rcvqty = _data[\"rem_wko_rcvqty\"];\r\n this.rem_wko_rcvqty_uom = _data[\"rem_wko_rcvqty_uom\"];\r\n this.customerOrderNumber = _data[\"customerOrderNumber\"];\r\n this.customerPONumber = _data[\"customerPONumber\"];\r\n (this).transaction = _data[\"transaction\"];\r\n (this).articoOrderNumber = _data[\"articoOrderNumber\"];\r\n (this).customOrderNumber = _data[\"customOrderNumber\"];\r\n (this).customPONumber = _data[\"customPONumber\"];\r\n (this).quantity = _data[\"quantity\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryActivityDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryActivityDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"invact_id\"] = this.invact_id;\r\n data[\"wh_id\"] = this.wh_id;\r\n data[\"trndte\"] = this.trndte ? this.trndte.toString() : undefined;\r\n data[\"actcod\"] = this.actcod;\r\n data[\"prtnum\"] = this.prtnum;\r\n data[\"product_description\"] = this.product_description;\r\n data[\"prt_client_id\"] = this.prt_client_id;\r\n data[\"client_name\"] = this.client_name;\r\n data[\"invsts\"] = this.invsts;\r\n data[\"lotnum\"] = this.lotnum;\r\n data[\"sup_lotnum\"] = this.sup_lotnum;\r\n data[\"revlvl\"] = this.revlvl;\r\n data[\"orgcod\"] = this.orgcod;\r\n data[\"inv_attr_str1\"] = this.inv_attr_str1;\r\n data[\"inv_attr_str2\"] = this.inv_attr_str2;\r\n data[\"inv_attr_str3\"] = this.inv_attr_str3;\r\n data[\"inv_attr_str4\"] = this.inv_attr_str4;\r\n data[\"inv_attr_str5\"] = this.inv_attr_str5;\r\n data[\"inv_attr_str6\"] = this.inv_attr_str6;\r\n data[\"inv_attr_str7\"] = this.inv_attr_str7;\r\n data[\"inv_attr_str8\"] = this.inv_attr_str8;\r\n data[\"inv_attr_str9\"] = this.inv_attr_str9;\r\n data[\"inv_attr_str10\"] = this.inv_attr_str10;\r\n data[\"inv_attr_str11\"] = this.inv_attr_str11;\r\n data[\"inv_attr_str12\"] = this.inv_attr_str12;\r\n data[\"inv_attr_str13\"] = this.inv_attr_str13;\r\n data[\"inv_attr_str14\"] = this.inv_attr_str14;\r\n data[\"inv_attr_str15\"] = this.inv_attr_str15;\r\n data[\"inv_attr_str16\"] = this.inv_attr_str16;\r\n data[\"inv_attr_str17\"] = this.inv_attr_str17;\r\n data[\"inv_attr_str18\"] = this.inv_attr_str18;\r\n data[\"inv_attr_int1\"] = this.inv_attr_int1;\r\n data[\"inv_attr_int2\"] = this.inv_attr_int2;\r\n data[\"inv_attr_int3\"] = this.inv_attr_int3;\r\n data[\"inv_attr_int4\"] = this.inv_attr_int4;\r\n data[\"inv_attr_int5\"] = this.inv_attr_int5;\r\n data[\"inv_attr_flt1\"] = this.inv_attr_flt1;\r\n data[\"inv_attr_flt2\"] = this.inv_attr_flt2;\r\n data[\"inv_attr_flt3\"] = this.inv_attr_flt3;\r\n data[\"inv_attr_dte1\"] = this.inv_attr_dte1;\r\n data[\"inv_attr_dte2\"] = this.inv_attr_dte2;\r\n data[\"rcvqty\"] = this.rcvqty;\r\n data[\"shpqty\"] = this.shpqty;\r\n data[\"adjqty\"] = this.adjqty;\r\n data[\"wko_cnsqty\"] = this.wko_cnsqty;\r\n data[\"wko_rcvqty\"] = this.wko_rcvqty;\r\n data[\"ship_id\"] = this.ship_id;\r\n data[\"ship_line_id\"] = this.ship_line_id;\r\n data[\"ordnum\"] = this.ordnum;\r\n data[\"ordlin\"] = this.ordlin;\r\n data[\"ordsln\"] = this.ordsln;\r\n data[\"ordtyp\"] = this.ordtyp;\r\n data[\"trknum\"] = this.trknum;\r\n data[\"invnum\"] = this.invnum;\r\n data[\"supnum\"] = this.supnum;\r\n data[\"invlin\"] = this.invlin;\r\n data[\"invsln\"] = this.invsln;\r\n data[\"invtyp\"] = this.invtyp;\r\n data[\"sesnum\"] = this.sesnum;\r\n data[\"wkonum\"] = this.wkonum;\r\n data[\"wkorev\"] = this.wkorev;\r\n data[\"wkolin\"] = this.wkolin;\r\n data[\"wko_rcvtyp\"] = this.wko_rcvtyp;\r\n data[\"client_id\"] = this.client_id;\r\n data[\"snap_gen_num\"] = this.snap_gen_num;\r\n data[\"cnsg_flg\"] = this.cnsg_flg;\r\n data[\"moddte\"] = this.moddte;\r\n data[\"mod_usr_id\"] = this.mod_usr_id;\r\n data[\"u_version\"] = this.u_version;\r\n data[\"ins_dt\"] = this.ins_dt;\r\n data[\"last_upd_dt\"] = this.last_upd_dt;\r\n data[\"ins_user_id\"] = this.ins_user_id;\r\n data[\"last_upd_user_id\"] = this.last_upd_user_id;\r\n data[\"rowid\"] = this.rowid;\r\n data[\"dsp_rcvqty\"] = this.dsp_rcvqty;\r\n data[\"dsp_rcvqty_uom\"] = this.dsp_rcvqty_uom;\r\n data[\"rem_rcvqty\"] = this.rem_rcvqty;\r\n data[\"rem_rcvqty_uom\"] = this.rem_rcvqty_uom;\r\n data[\"dsp_shpqty\"] = this.dsp_shpqty;\r\n data[\"dsp_shpqty_uom\"] = this.dsp_shpqty_uom;\r\n data[\"rem_shpqty\"] = this.rem_shpqty;\r\n data[\"rem_shpqty_uom\"] = this.rem_shpqty_uom;\r\n data[\"dsp_adjqty\"] = this.dsp_adjqty;\r\n data[\"dsp_adjqty_uom\"] = this.dsp_adjqty_uom;\r\n data[\"rem_adjqty\"] = this.rem_adjqty;\r\n data[\"rem_adjqty_uom\"] = this.rem_adjqty_uom;\r\n data[\"dsp_wko_cnsqty\"] = this.dsp_wko_cnsqty;\r\n data[\"dsp_wko_cnsqty_uom\"] = this.dsp_wko_cnsqty_uom;\r\n data[\"rem_wko_cnsqty\"] = this.rem_wko_cnsqty;\r\n data[\"rem_wko_cnsqty_uom\"] = this.rem_wko_cnsqty_uom;\r\n data[\"dsp_wko_rcvqty\"] = this.dsp_wko_rcvqty;\r\n data[\"dsp_wko_rcvqty_uom\"] = this.dsp_wko_rcvqty_uom;\r\n data[\"rem_wko_rcvqty\"] = this.rem_wko_rcvqty;\r\n data[\"rem_wko_rcvqty_uom\"] = this.rem_wko_rcvqty_uom;\r\n data[\"customerOrderNumber\"] = this.customerOrderNumber;\r\n data[\"customerPONumber\"] = this.customerPONumber;\r\n data[\"transaction\"] = this.transaction;\r\n data[\"articoOrderNumber\"] = this.articoOrderNumber;\r\n data[\"customOrderNumber\"] = this.customOrderNumber;\r\n data[\"customPONumber\"] = this.customPONumber;\r\n data[\"quantity\"] = this.quantity;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryActivityDto {\r\n invact_id: string | undefined;\r\n wh_id: string | undefined;\r\n trndte: DateTime;\r\n actcod: string | undefined;\r\n prtnum: string | undefined;\r\n product_description: string | undefined;\r\n prt_client_id: string | undefined;\r\n client_name: string | undefined;\r\n invsts: string | undefined;\r\n lotnum: string | undefined;\r\n sup_lotnum: string | undefined;\r\n revlvl: string | undefined;\r\n orgcod: string | undefined;\r\n inv_attr_str1: string | undefined;\r\n inv_attr_str2: string | undefined;\r\n inv_attr_str3: string | undefined;\r\n inv_attr_str4: string | undefined;\r\n inv_attr_str5: string | undefined;\r\n inv_attr_str6: string | undefined;\r\n inv_attr_str7: string | undefined;\r\n inv_attr_str8: string | undefined;\r\n inv_attr_str9: string | undefined;\r\n inv_attr_str10: string | undefined;\r\n inv_attr_str11: string | undefined;\r\n inv_attr_str12: string | undefined;\r\n inv_attr_str13: string | undefined;\r\n inv_attr_str14: string | undefined;\r\n inv_attr_str15: string | undefined;\r\n inv_attr_str16: string | undefined;\r\n inv_attr_str17: string | undefined;\r\n inv_attr_str18: string | undefined;\r\n inv_attr_int1: string | undefined;\r\n inv_attr_int2: string | undefined;\r\n inv_attr_int3: string | undefined;\r\n inv_attr_int4: string | undefined;\r\n inv_attr_int5: string | undefined;\r\n inv_attr_flt1: string | undefined;\r\n inv_attr_flt2: string | undefined;\r\n inv_attr_flt3: string | undefined;\r\n inv_attr_dte1: string | undefined;\r\n inv_attr_dte2: string | undefined;\r\n rcvqty: number;\r\n shpqty: number;\r\n adjqty: number;\r\n wko_cnsqty: number | undefined;\r\n wko_rcvqty: number | undefined;\r\n ship_id: string | undefined;\r\n ship_line_id: string | undefined;\r\n ordnum: string | undefined;\r\n ordlin: string | undefined;\r\n ordsln: string | undefined;\r\n ordtyp: string | undefined;\r\n trknum: string | undefined;\r\n invnum: string | undefined;\r\n supnum: string | undefined;\r\n invlin: string | undefined;\r\n invsln: string | undefined;\r\n invtyp: string | undefined;\r\n sesnum: string | undefined;\r\n wkonum: string | undefined;\r\n wkorev: string | undefined;\r\n wkolin: string | undefined;\r\n wko_rcvtyp: string | undefined;\r\n client_id: string | undefined;\r\n snap_gen_num: string | undefined;\r\n cnsg_flg: number | undefined;\r\n moddte: string | undefined;\r\n mod_usr_id: string | undefined;\r\n u_version: string | undefined;\r\n ins_dt: string | undefined;\r\n last_upd_dt: string | undefined;\r\n ins_user_id: string | undefined;\r\n last_upd_user_id: string | undefined;\r\n rowid: number | undefined;\r\n dsp_rcvqty: number | undefined;\r\n dsp_rcvqty_uom: string | undefined;\r\n rem_rcvqty: number | undefined;\r\n rem_rcvqty_uom: string | undefined;\r\n dsp_shpqty: number | undefined;\r\n dsp_shpqty_uom: string | undefined;\r\n rem_shpqty: number | undefined;\r\n rem_shpqty_uom: string | undefined;\r\n dsp_adjqty: number | undefined;\r\n dsp_adjqty_uom: string | undefined;\r\n rem_adjqty: number | undefined;\r\n rem_adjqty_uom: string | undefined;\r\n dsp_wko_cnsqty: number | undefined;\r\n dsp_wko_cnsqty_uom: string | undefined;\r\n rem_wko_cnsqty: number | undefined;\r\n rem_wko_cnsqty_uom: string | undefined;\r\n dsp_wko_rcvqty: number | undefined;\r\n dsp_wko_rcvqty_uom: string | undefined;\r\n rem_wko_rcvqty: number | undefined;\r\n rem_wko_rcvqty_uom: string | undefined;\r\n customerOrderNumber: string | undefined;\r\n customerPONumber: string | undefined;\r\n transaction: string | undefined;\r\n articoOrderNumber: string | undefined;\r\n customOrderNumber: string | undefined;\r\n customPONumber: string | undefined;\r\n quantity: number;\r\n}\r\n\r\nexport class InventoryDisplayItem implements IInventoryDisplayItem {\r\n headerId!: string;\r\n header!: InventoryDisplayItemHeader;\r\n externalDateModified!: DateTime;\r\n longDescription!: string | undefined;\r\n unitQuantity!: number;\r\n lodNumber!: string | undefined;\r\n detailsNumber!: string | undefined;\r\n supplierLotNumber!: string | undefined;\r\n manufacturedDate!: DateTime | undefined;\r\n receivedDate!: DateTime | undefined;\r\n expirationDate!: DateTime | undefined;\r\n daysToExpire!: number | undefined;\r\n lastSyncTime!: DateTime;\r\n unitOfMeasure!: string | undefined;\r\n trackingNumber!: string | undefined;\r\n lotNumber!: string | undefined;\r\n stoloc!: string | undefined;\r\n shipLineId!: string | undefined;\r\n extPalletId!: string | undefined;\r\n establishmentNumber!: string | undefined;\r\n shippingMark!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n inboundCustomerPONumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n reservedOrderId!: string | undefined;\r\n reservedOrderLineId!: string | undefined;\r\n reservedQty!: number | undefined;\r\n inventoryStatusId!: number | undefined;\r\n parentAssetWeight!: number | undefined;\r\n assetWeight!: number | undefined;\r\n catchQty!: number | undefined;\r\n readonly lpnWeight!: number | undefined;\r\n shippabilityStatus!: ShippabilityStatus;\r\n inventoryStatus!: InventoryStatus;\r\n id!: string;\r\n\r\n constructor(data?: IInventoryDisplayItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.headerId = _data[\"headerId\"];\r\n this.header = _data[\"header\"] ? InventoryDisplayItemHeader.fromJS(_data[\"header\"]) : undefined;\r\n this.externalDateModified = _data[\"externalDateModified\"] ? DateTime.fromISO(_data[\"externalDateModified\"].toString()) : undefined;\r\n this.longDescription = _data[\"longDescription\"];\r\n this.unitQuantity = _data[\"unitQuantity\"];\r\n this.lodNumber = _data[\"lodNumber\"];\r\n this.detailsNumber = _data[\"detailsNumber\"];\r\n this.supplierLotNumber = _data[\"supplierLotNumber\"];\r\n this.manufacturedDate = _data[\"manufacturedDate\"] ? DateTime.fromISO(_data[\"manufacturedDate\"].toString()) : undefined;\r\n this.receivedDate = _data[\"receivedDate\"] ? DateTime.fromISO(_data[\"receivedDate\"].toString()) : undefined;\r\n this.expirationDate = _data[\"expirationDate\"] ? DateTime.fromISO(_data[\"expirationDate\"].toString()) : undefined;\r\n this.daysToExpire = _data[\"daysToExpire\"];\r\n this.lastSyncTime = _data[\"lastSyncTime\"] ? DateTime.fromISO(_data[\"lastSyncTime\"].toString()) : undefined;\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n this.trackingNumber = _data[\"trackingNumber\"];\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.stoloc = _data[\"stoloc\"];\r\n this.shipLineId = _data[\"shipLineId\"];\r\n this.extPalletId = _data[\"extPalletId\"];\r\n this.establishmentNumber = _data[\"establishmentNumber\"];\r\n this.shippingMark = _data[\"shippingMark\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.inboundCustomerPONumber = _data[\"inboundCustomerPONumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.reservedOrderId = _data[\"reservedOrderId\"];\r\n this.reservedOrderLineId = _data[\"reservedOrderLineId\"];\r\n this.reservedQty = _data[\"reservedQty\"];\r\n this.inventoryStatusId = _data[\"inventoryStatusId\"];\r\n this.parentAssetWeight = _data[\"parentAssetWeight\"];\r\n this.assetWeight = _data[\"assetWeight\"];\r\n this.catchQty = _data[\"catchQty\"];\r\n (this).lpnWeight = _data[\"lpnWeight\"];\r\n this.shippabilityStatus = _data[\"shippabilityStatus\"];\r\n this.inventoryStatus = _data[\"inventoryStatus\"] ? InventoryStatus.fromJS(_data[\"inventoryStatus\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryDisplayItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryDisplayItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"headerId\"] = this.headerId;\r\n data[\"header\"] = this.header ? this.header.toJSON() : undefined;\r\n data[\"externalDateModified\"] = this.externalDateModified ? this.externalDateModified.toString() : undefined;\r\n data[\"longDescription\"] = this.longDescription;\r\n data[\"unitQuantity\"] = this.unitQuantity;\r\n data[\"lodNumber\"] = this.lodNumber;\r\n data[\"detailsNumber\"] = this.detailsNumber;\r\n data[\"supplierLotNumber\"] = this.supplierLotNumber;\r\n data[\"manufacturedDate\"] = this.manufacturedDate ? this.manufacturedDate.toString() : undefined;\r\n data[\"receivedDate\"] = this.receivedDate ? this.receivedDate.toString() : undefined;\r\n data[\"expirationDate\"] = this.expirationDate ? this.expirationDate.toString() : undefined;\r\n data[\"daysToExpire\"] = this.daysToExpire;\r\n data[\"lastSyncTime\"] = this.lastSyncTime ? this.lastSyncTime.toString() : undefined;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n data[\"trackingNumber\"] = this.trackingNumber;\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"stoloc\"] = this.stoloc;\r\n data[\"shipLineId\"] = this.shipLineId;\r\n data[\"extPalletId\"] = this.extPalletId;\r\n data[\"establishmentNumber\"] = this.establishmentNumber;\r\n data[\"shippingMark\"] = this.shippingMark;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"inboundCustomerPONumber\"] = this.inboundCustomerPONumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"reservedOrderId\"] = this.reservedOrderId;\r\n data[\"reservedOrderLineId\"] = this.reservedOrderLineId;\r\n data[\"reservedQty\"] = this.reservedQty;\r\n data[\"inventoryStatusId\"] = this.inventoryStatusId;\r\n data[\"parentAssetWeight\"] = this.parentAssetWeight;\r\n data[\"assetWeight\"] = this.assetWeight;\r\n data[\"catchQty\"] = this.catchQty;\r\n data[\"lpnWeight\"] = this.lpnWeight;\r\n data[\"shippabilityStatus\"] = this.shippabilityStatus;\r\n data[\"inventoryStatus\"] = this.inventoryStatus ? this.inventoryStatus.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryDisplayItem {\r\n headerId: string;\r\n header: InventoryDisplayItemHeader;\r\n externalDateModified: DateTime;\r\n longDescription: string | undefined;\r\n unitQuantity: number;\r\n lodNumber: string | undefined;\r\n detailsNumber: string | undefined;\r\n supplierLotNumber: string | undefined;\r\n manufacturedDate: DateTime | undefined;\r\n receivedDate: DateTime | undefined;\r\n expirationDate: DateTime | undefined;\r\n daysToExpire: number | undefined;\r\n lastSyncTime: DateTime;\r\n unitOfMeasure: string | undefined;\r\n trackingNumber: string | undefined;\r\n lotNumber: string | undefined;\r\n stoloc: string | undefined;\r\n shipLineId: string | undefined;\r\n extPalletId: string | undefined;\r\n establishmentNumber: string | undefined;\r\n shippingMark: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n inboundCustomerPONumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n reservedOrderId: string | undefined;\r\n reservedOrderLineId: string | undefined;\r\n reservedQty: number | undefined;\r\n inventoryStatusId: number | undefined;\r\n parentAssetWeight: number | undefined;\r\n assetWeight: number | undefined;\r\n catchQty: number | undefined;\r\n lpnWeight: number | undefined;\r\n shippabilityStatus: ShippabilityStatus;\r\n inventoryStatus: InventoryStatus;\r\n id: string;\r\n}\r\n\r\nexport class InventoryDisplayItemHeader implements IInventoryDisplayItemHeader {\r\n warehouseId!: number;\r\n warehouse!: Warehouse;\r\n itemId!: number;\r\n item!: Item;\r\n clientId!: number;\r\n client!: Client;\r\n lastSyncTime!: DateTime;\r\n inventoryDisplayItems!: InventoryDisplayItem[] | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IInventoryDisplayItemHeader) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.warehouse = _data[\"warehouse\"] ? Warehouse.fromJS(_data[\"warehouse\"]) : undefined;\r\n this.itemId = _data[\"itemId\"];\r\n this.item = _data[\"item\"] ? Item.fromJS(_data[\"item\"]) : undefined;\r\n this.clientId = _data[\"clientId\"];\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.lastSyncTime = _data[\"lastSyncTime\"] ? DateTime.fromISO(_data[\"lastSyncTime\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"inventoryDisplayItems\"])) {\r\n this.inventoryDisplayItems = [] as any;\r\n for (let item of _data[\"inventoryDisplayItems\"])\r\n this.inventoryDisplayItems!.push(InventoryDisplayItem.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryDisplayItemHeader {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryDisplayItemHeader();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"warehouse\"] = this.warehouse ? this.warehouse.toJSON() : undefined;\r\n data[\"itemId\"] = this.itemId;\r\n data[\"item\"] = this.item ? this.item.toJSON() : undefined;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"lastSyncTime\"] = this.lastSyncTime ? this.lastSyncTime.toString() : undefined;\r\n if (Array.isArray(this.inventoryDisplayItems)) {\r\n data[\"inventoryDisplayItems\"] = [];\r\n for (let item of this.inventoryDisplayItems)\r\n data[\"inventoryDisplayItems\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryDisplayItemHeader {\r\n warehouseId: number;\r\n warehouse: Warehouse;\r\n itemId: number;\r\n item: Item;\r\n clientId: number;\r\n client: Client;\r\n lastSyncTime: DateTime;\r\n inventoryDisplayItems: InventoryDisplayItem[] | undefined;\r\n id: string;\r\n}\r\n\r\nexport class InventoryDto implements IInventoryDto {\r\n itemExternalId!: string | undefined;\r\n itemName!: string | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IInventoryDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.itemExternalId = _data[\"itemExternalId\"];\r\n this.itemName = _data[\"itemName\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"itemExternalId\"] = this.itemExternalId;\r\n data[\"itemName\"] = this.itemName;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryDto {\r\n itemExternalId: string | undefined;\r\n itemName: string | undefined;\r\n id: string;\r\n}\r\n\r\nexport class InventoryListDto implements IInventoryListDto {\r\n itemExternalId!: string | undefined;\r\n client!: string | undefined;\r\n itemName!: string | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IInventoryListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.itemExternalId = _data[\"itemExternalId\"];\r\n this.client = _data[\"client\"];\r\n this.itemName = _data[\"itemName\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"itemExternalId\"] = this.itemExternalId;\r\n data[\"client\"] = this.client;\r\n data[\"itemName\"] = this.itemName;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryListDto {\r\n itemExternalId: string | undefined;\r\n client: string | undefined;\r\n itemName: string | undefined;\r\n id: string;\r\n}\r\n\r\nexport class InventoryLotListDto implements IInventoryLotListDto {\r\n lodNumber!: string | undefined;\r\n trackingNumber!: string | undefined;\r\n unitQuantity!: number;\r\n unitOfMeasure!: string | undefined;\r\n supplierLotNumber!: string | undefined;\r\n zone!: string | undefined;\r\n receivedDate!: DateTime | undefined;\r\n expirationDate!: DateTime | undefined;\r\n manufacturedDate!: DateTime | undefined;\r\n establishmentNumber!: string | undefined;\r\n daysToExpire!: number | undefined;\r\n inventoryStatus!: string | undefined;\r\n shippabilityStatus!: ShippabilityStatus;\r\n lotNumber!: string | undefined;\r\n client!: string | undefined;\r\n itemName!: string | undefined;\r\n itemExternalId!: string | undefined;\r\n extPalletId!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n shippingMark!: string | undefined;\r\n inboundCustomerPONumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n reservedOrderId!: string | undefined;\r\n reservedOrderLineId!: string | undefined;\r\n reservedQty!: number | undefined;\r\n weight!: number | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IInventoryLotListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.lodNumber = _data[\"lodNumber\"];\r\n this.trackingNumber = _data[\"trackingNumber\"];\r\n this.unitQuantity = _data[\"unitQuantity\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n this.supplierLotNumber = _data[\"supplierLotNumber\"];\r\n this.zone = _data[\"zone\"];\r\n this.receivedDate = _data[\"receivedDate\"] ? DateTime.fromISO(_data[\"receivedDate\"].toString()) : undefined;\r\n this.expirationDate = _data[\"expirationDate\"] ? DateTime.fromISO(_data[\"expirationDate\"].toString()) : undefined;\r\n this.manufacturedDate = _data[\"manufacturedDate\"] ? DateTime.fromISO(_data[\"manufacturedDate\"].toString()) : undefined;\r\n this.establishmentNumber = _data[\"establishmentNumber\"];\r\n this.daysToExpire = _data[\"daysToExpire\"];\r\n this.inventoryStatus = _data[\"inventoryStatus\"];\r\n this.shippabilityStatus = _data[\"shippabilityStatus\"];\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.client = _data[\"client\"];\r\n this.itemName = _data[\"itemName\"];\r\n this.itemExternalId = _data[\"itemExternalId\"];\r\n this.extPalletId = _data[\"extPalletId\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.shippingMark = _data[\"shippingMark\"];\r\n this.inboundCustomerPONumber = _data[\"inboundCustomerPONumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.reservedOrderId = _data[\"reservedOrderId\"];\r\n this.reservedOrderLineId = _data[\"reservedOrderLineId\"];\r\n this.reservedQty = _data[\"reservedQty\"];\r\n this.weight = _data[\"weight\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryLotListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryLotListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"lodNumber\"] = this.lodNumber;\r\n data[\"trackingNumber\"] = this.trackingNumber;\r\n data[\"unitQuantity\"] = this.unitQuantity;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n data[\"supplierLotNumber\"] = this.supplierLotNumber;\r\n data[\"zone\"] = this.zone;\r\n data[\"receivedDate\"] = this.receivedDate ? this.receivedDate.toString() : undefined;\r\n data[\"expirationDate\"] = this.expirationDate ? this.expirationDate.toString() : undefined;\r\n data[\"manufacturedDate\"] = this.manufacturedDate ? this.manufacturedDate.toString() : undefined;\r\n data[\"establishmentNumber\"] = this.establishmentNumber;\r\n data[\"daysToExpire\"] = this.daysToExpire;\r\n data[\"inventoryStatus\"] = this.inventoryStatus;\r\n data[\"shippabilityStatus\"] = this.shippabilityStatus;\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"client\"] = this.client;\r\n data[\"itemName\"] = this.itemName;\r\n data[\"itemExternalId\"] = this.itemExternalId;\r\n data[\"extPalletId\"] = this.extPalletId;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"shippingMark\"] = this.shippingMark;\r\n data[\"inboundCustomerPONumber\"] = this.inboundCustomerPONumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"reservedOrderId\"] = this.reservedOrderId;\r\n data[\"reservedOrderLineId\"] = this.reservedOrderLineId;\r\n data[\"reservedQty\"] = this.reservedQty;\r\n data[\"weight\"] = this.weight;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryLotListDto {\r\n lodNumber: string | undefined;\r\n trackingNumber: string | undefined;\r\n unitQuantity: number;\r\n unitOfMeasure: string | undefined;\r\n supplierLotNumber: string | undefined;\r\n zone: string | undefined;\r\n receivedDate: DateTime | undefined;\r\n expirationDate: DateTime | undefined;\r\n manufacturedDate: DateTime | undefined;\r\n establishmentNumber: string | undefined;\r\n daysToExpire: number | undefined;\r\n inventoryStatus: string | undefined;\r\n shippabilityStatus: ShippabilityStatus;\r\n lotNumber: string | undefined;\r\n client: string | undefined;\r\n itemName: string | undefined;\r\n itemExternalId: string | undefined;\r\n extPalletId: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n shippingMark: string | undefined;\r\n inboundCustomerPONumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n reservedOrderId: string | undefined;\r\n reservedOrderLineId: string | undefined;\r\n reservedQty: number | undefined;\r\n weight: number | undefined;\r\n id: string;\r\n}\r\n\r\nexport class InventoryManagerConnection implements IInventoryManagerConnection {\r\n inventoryManagerId!: number;\r\n tenantId!: number;\r\n inventoryManager!: Tenant;\r\n tenant!: Tenant;\r\n id!: number;\r\n\r\n constructor(data?: IInventoryManagerConnection) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.inventoryManagerId = _data[\"inventoryManagerId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.inventoryManager = _data[\"inventoryManager\"] ? Tenant.fromJS(_data[\"inventoryManager\"]) : undefined;\r\n this.tenant = _data[\"tenant\"] ? Tenant.fromJS(_data[\"tenant\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryManagerConnection {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryManagerConnection();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"inventoryManagerId\"] = this.inventoryManagerId;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"inventoryManager\"] = this.inventoryManager ? this.inventoryManager.toJSON() : undefined;\r\n data[\"tenant\"] = this.tenant ? this.tenant.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryManagerConnection {\r\n inventoryManagerId: number;\r\n tenantId: number;\r\n inventoryManager: Tenant;\r\n tenant: Tenant;\r\n id: number;\r\n}\r\n\r\nexport class InventoryManagerListDto implements IInventoryManagerListDto {\r\n name!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IInventoryManagerListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryManagerListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryManagerListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryManagerListDto {\r\n name: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class InventoryPalletDetailsListDto implements IInventoryPalletDetailsListDto {\r\n isPicked!: boolean;\r\n detailLpn!: string | undefined;\r\n clientId!: string | undefined;\r\n clientAccount!: string | undefined;\r\n itemNumber!: string | undefined;\r\n itemDescription!: string | undefined;\r\n lodNumber!: string | undefined;\r\n inventoryStatus!: string | undefined;\r\n shippabilityStatus!: string | undefined;\r\n unitQuantity!: number;\r\n reservedQty!: number | undefined;\r\n weight!: number | undefined;\r\n lotNumber!: string | undefined;\r\n manufactureDate!: DateTime | undefined;\r\n expirationDate!: DateTime | undefined;\r\n receivedDate!: DateTime | undefined;\r\n extPalletId!: string | undefined;\r\n establishmentNumber!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n inboundCustomerPoNumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n shippingMark!: string | undefined;\r\n reservedOrderId!: string | undefined;\r\n reservedOrderLineId!: string | undefined;\r\n\r\n constructor(data?: IInventoryPalletDetailsListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isPicked = _data[\"isPicked\"];\r\n this.detailLpn = _data[\"detailLpn\"];\r\n this.clientId = _data[\"clientId\"];\r\n this.clientAccount = _data[\"clientAccount\"];\r\n this.itemNumber = _data[\"itemNumber\"];\r\n this.itemDescription = _data[\"itemDescription\"];\r\n this.lodNumber = _data[\"lodNumber\"];\r\n this.inventoryStatus = _data[\"inventoryStatus\"];\r\n this.shippabilityStatus = _data[\"shippabilityStatus\"];\r\n this.unitQuantity = _data[\"unitQuantity\"];\r\n this.reservedQty = _data[\"reservedQty\"];\r\n this.weight = _data[\"weight\"];\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.manufactureDate = _data[\"manufactureDate\"] ? DateTime.fromISO(_data[\"manufactureDate\"].toString()) : undefined;\r\n this.expirationDate = _data[\"expirationDate\"] ? DateTime.fromISO(_data[\"expirationDate\"].toString()) : undefined;\r\n this.receivedDate = _data[\"receivedDate\"] ? DateTime.fromISO(_data[\"receivedDate\"].toString()) : undefined;\r\n this.extPalletId = _data[\"extPalletId\"];\r\n this.establishmentNumber = _data[\"establishmentNumber\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.inboundCustomerPoNumber = _data[\"inboundCustomerPoNumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.shippingMark = _data[\"shippingMark\"];\r\n this.reservedOrderId = _data[\"reservedOrderId\"];\r\n this.reservedOrderLineId = _data[\"reservedOrderLineId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryPalletDetailsListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryPalletDetailsListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isPicked\"] = this.isPicked;\r\n data[\"detailLpn\"] = this.detailLpn;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"clientAccount\"] = this.clientAccount;\r\n data[\"itemNumber\"] = this.itemNumber;\r\n data[\"itemDescription\"] = this.itemDescription;\r\n data[\"lodNumber\"] = this.lodNumber;\r\n data[\"inventoryStatus\"] = this.inventoryStatus;\r\n data[\"shippabilityStatus\"] = this.shippabilityStatus;\r\n data[\"unitQuantity\"] = this.unitQuantity;\r\n data[\"reservedQty\"] = this.reservedQty;\r\n data[\"weight\"] = this.weight;\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"manufactureDate\"] = this.manufactureDate ? this.manufactureDate.toString() : undefined;\r\n data[\"expirationDate\"] = this.expirationDate ? this.expirationDate.toString() : undefined;\r\n data[\"receivedDate\"] = this.receivedDate ? this.receivedDate.toString() : undefined;\r\n data[\"extPalletId\"] = this.extPalletId;\r\n data[\"establishmentNumber\"] = this.establishmentNumber;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"inboundCustomerPoNumber\"] = this.inboundCustomerPoNumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"shippingMark\"] = this.shippingMark;\r\n data[\"reservedOrderId\"] = this.reservedOrderId;\r\n data[\"reservedOrderLineId\"] = this.reservedOrderLineId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryPalletDetailsListDto {\r\n isPicked: boolean;\r\n detailLpn: string | undefined;\r\n clientId: string | undefined;\r\n clientAccount: string | undefined;\r\n itemNumber: string | undefined;\r\n itemDescription: string | undefined;\r\n lodNumber: string | undefined;\r\n inventoryStatus: string | undefined;\r\n shippabilityStatus: string | undefined;\r\n unitQuantity: number;\r\n reservedQty: number | undefined;\r\n weight: number | undefined;\r\n lotNumber: string | undefined;\r\n manufactureDate: DateTime | undefined;\r\n expirationDate: DateTime | undefined;\r\n receivedDate: DateTime | undefined;\r\n extPalletId: string | undefined;\r\n establishmentNumber: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n inboundCustomerPoNumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n shippingMark: string | undefined;\r\n reservedOrderId: string | undefined;\r\n reservedOrderLineId: string | undefined;\r\n}\r\n\r\nexport class InventoryPalletSummaryListDto implements IInventoryPalletSummaryListDto {\r\n clientId!: string | undefined;\r\n clientAccount!: string | undefined;\r\n itemNumber!: string | undefined;\r\n itemDescription!: string | undefined;\r\n lodNumber!: string | undefined;\r\n inventoryStatus!: string | undefined;\r\n shippabilityStatus!: string | undefined;\r\n unitQuantity!: number;\r\n reservedQty!: number | undefined;\r\n weight!: number | undefined;\r\n lotNumber!: string | undefined;\r\n manufactureDate!: DateTime | undefined;\r\n expirationDate!: DateTime | undefined;\r\n receivedDate!: DateTime | undefined;\r\n extPalletId!: string | undefined;\r\n establishmentNumber!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n inboundCustomerPoNumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n shippingMark!: string | undefined;\r\n reservedOrderId!: string | undefined;\r\n reservedOrderLineId!: string | undefined;\r\n\r\n constructor(data?: IInventoryPalletSummaryListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.clientAccount = _data[\"clientAccount\"];\r\n this.itemNumber = _data[\"itemNumber\"];\r\n this.itemDescription = _data[\"itemDescription\"];\r\n this.lodNumber = _data[\"lodNumber\"];\r\n this.inventoryStatus = _data[\"inventoryStatus\"];\r\n this.shippabilityStatus = _data[\"shippabilityStatus\"];\r\n this.unitQuantity = _data[\"unitQuantity\"];\r\n this.reservedQty = _data[\"reservedQty\"];\r\n this.weight = _data[\"weight\"];\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.manufactureDate = _data[\"manufactureDate\"] ? DateTime.fromISO(_data[\"manufactureDate\"].toString()) : undefined;\r\n this.expirationDate = _data[\"expirationDate\"] ? DateTime.fromISO(_data[\"expirationDate\"].toString()) : undefined;\r\n this.receivedDate = _data[\"receivedDate\"] ? DateTime.fromISO(_data[\"receivedDate\"].toString()) : undefined;\r\n this.extPalletId = _data[\"extPalletId\"];\r\n this.establishmentNumber = _data[\"establishmentNumber\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.inboundCustomerPoNumber = _data[\"inboundCustomerPoNumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.shippingMark = _data[\"shippingMark\"];\r\n this.reservedOrderId = _data[\"reservedOrderId\"];\r\n this.reservedOrderLineId = _data[\"reservedOrderLineId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryPalletSummaryListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryPalletSummaryListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"clientAccount\"] = this.clientAccount;\r\n data[\"itemNumber\"] = this.itemNumber;\r\n data[\"itemDescription\"] = this.itemDescription;\r\n data[\"lodNumber\"] = this.lodNumber;\r\n data[\"inventoryStatus\"] = this.inventoryStatus;\r\n data[\"shippabilityStatus\"] = this.shippabilityStatus;\r\n data[\"unitQuantity\"] = this.unitQuantity;\r\n data[\"reservedQty\"] = this.reservedQty;\r\n data[\"weight\"] = this.weight;\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"manufactureDate\"] = this.manufactureDate ? this.manufactureDate.toString() : undefined;\r\n data[\"expirationDate\"] = this.expirationDate ? this.expirationDate.toString() : undefined;\r\n data[\"receivedDate\"] = this.receivedDate ? this.receivedDate.toString() : undefined;\r\n data[\"extPalletId\"] = this.extPalletId;\r\n data[\"establishmentNumber\"] = this.establishmentNumber;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"inboundCustomerPoNumber\"] = this.inboundCustomerPoNumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"shippingMark\"] = this.shippingMark;\r\n data[\"reservedOrderId\"] = this.reservedOrderId;\r\n data[\"reservedOrderLineId\"] = this.reservedOrderLineId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryPalletSummaryListDto {\r\n clientId: string | undefined;\r\n clientAccount: string | undefined;\r\n itemNumber: string | undefined;\r\n itemDescription: string | undefined;\r\n lodNumber: string | undefined;\r\n inventoryStatus: string | undefined;\r\n shippabilityStatus: string | undefined;\r\n unitQuantity: number;\r\n reservedQty: number | undefined;\r\n weight: number | undefined;\r\n lotNumber: string | undefined;\r\n manufactureDate: DateTime | undefined;\r\n expirationDate: DateTime | undefined;\r\n receivedDate: DateTime | undefined;\r\n extPalletId: string | undefined;\r\n establishmentNumber: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n inboundCustomerPoNumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n shippingMark: string | undefined;\r\n reservedOrderId: string | undefined;\r\n reservedOrderLineId: string | undefined;\r\n}\r\n\r\nexport class InventoryStatus implements IInventoryStatus {\r\n sequenceNumber!: number;\r\n value!: string | undefined;\r\n description!: string | undefined;\r\n wmsConnection!: WMSConnection;\r\n orderLines!: OrderLine[] | undefined;\r\n inventoryDisplayItems!: InventoryDisplayItem[] | undefined;\r\n wmsConnectionId!: number;\r\n id!: number;\r\n\r\n constructor(data?: IInventoryStatus) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sequenceNumber = _data[\"sequenceNumber\"];\r\n this.value = _data[\"value\"];\r\n this.description = _data[\"description\"];\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n if (Array.isArray(_data[\"orderLines\"])) {\r\n this.orderLines = [] as any;\r\n for (let item of _data[\"orderLines\"])\r\n this.orderLines!.push(OrderLine.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"inventoryDisplayItems\"])) {\r\n this.inventoryDisplayItems = [] as any;\r\n for (let item of _data[\"inventoryDisplayItems\"])\r\n this.inventoryDisplayItems!.push(InventoryDisplayItem.fromJS(item));\r\n }\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventoryStatus {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventoryStatus();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sequenceNumber\"] = this.sequenceNumber;\r\n data[\"value\"] = this.value;\r\n data[\"description\"] = this.description;\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n if (Array.isArray(this.orderLines)) {\r\n data[\"orderLines\"] = [];\r\n for (let item of this.orderLines)\r\n data[\"orderLines\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.inventoryDisplayItems)) {\r\n data[\"inventoryDisplayItems\"] = [];\r\n for (let item of this.inventoryDisplayItems)\r\n data[\"inventoryDisplayItems\"].push(item.toJSON());\r\n }\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventoryStatus {\r\n sequenceNumber: number;\r\n value: string | undefined;\r\n description: string | undefined;\r\n wmsConnection: WMSConnection;\r\n orderLines: OrderLine[] | undefined;\r\n inventoryDisplayItems: InventoryDisplayItem[] | undefined;\r\n wmsConnectionId: number;\r\n id: number;\r\n}\r\n\r\nexport class InventorySynchronizationInformationDto implements IInventorySynchronizationInformationDto {\r\n lastSyncDateUtc!: DateTime | undefined;\r\n\r\n constructor(data?: IInventorySynchronizationInformationDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.lastSyncDateUtc = _data[\"lastSyncDateUtc\"] ? DateTime.fromISO(_data[\"lastSyncDateUtc\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InventorySynchronizationInformationDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InventorySynchronizationInformationDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"lastSyncDateUtc\"] = this.lastSyncDateUtc ? this.lastSyncDateUtc.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInventorySynchronizationInformationDto {\r\n lastSyncDateUtc: DateTime | undefined;\r\n}\r\n\r\nexport class InvoiceDto implements IInvoiceDto {\r\n amount!: number;\r\n editionDisplayName!: string | undefined;\r\n invoiceNo!: string | undefined;\r\n invoiceDate!: DateTime;\r\n tenantLegalName!: string | undefined;\r\n tenantAddress!: string[] | undefined;\r\n tenantTaxNo!: string | undefined;\r\n hostLegalName!: string | undefined;\r\n hostAddress!: string[] | undefined;\r\n\r\n constructor(data?: IInvoiceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.amount = _data[\"amount\"];\r\n this.editionDisplayName = _data[\"editionDisplayName\"];\r\n this.invoiceNo = _data[\"invoiceNo\"];\r\n this.invoiceDate = _data[\"invoiceDate\"] ? DateTime.fromISO(_data[\"invoiceDate\"].toString()) : undefined;\r\n this.tenantLegalName = _data[\"tenantLegalName\"];\r\n if (Array.isArray(_data[\"tenantAddress\"])) {\r\n this.tenantAddress = [] as any;\r\n for (let item of _data[\"tenantAddress\"])\r\n this.tenantAddress!.push(item);\r\n }\r\n this.tenantTaxNo = _data[\"tenantTaxNo\"];\r\n this.hostLegalName = _data[\"hostLegalName\"];\r\n if (Array.isArray(_data[\"hostAddress\"])) {\r\n this.hostAddress = [] as any;\r\n for (let item of _data[\"hostAddress\"])\r\n this.hostAddress!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"amount\"] = this.amount;\r\n data[\"editionDisplayName\"] = this.editionDisplayName;\r\n data[\"invoiceNo\"] = this.invoiceNo;\r\n data[\"invoiceDate\"] = this.invoiceDate ? this.invoiceDate.toString() : undefined;\r\n data[\"tenantLegalName\"] = this.tenantLegalName;\r\n if (Array.isArray(this.tenantAddress)) {\r\n data[\"tenantAddress\"] = [];\r\n for (let item of this.tenantAddress)\r\n data[\"tenantAddress\"].push(item);\r\n }\r\n data[\"tenantTaxNo\"] = this.tenantTaxNo;\r\n data[\"hostLegalName\"] = this.hostLegalName;\r\n if (Array.isArray(this.hostAddress)) {\r\n data[\"hostAddress\"] = [];\r\n for (let item of this.hostAddress)\r\n data[\"hostAddress\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceDto {\r\n amount: number;\r\n editionDisplayName: string | undefined;\r\n invoiceNo: string | undefined;\r\n invoiceDate: DateTime;\r\n tenantLegalName: string | undefined;\r\n tenantAddress: string[] | undefined;\r\n tenantTaxNo: string | undefined;\r\n hostLegalName: string | undefined;\r\n hostAddress: string[] | undefined;\r\n}\r\n\r\nexport class IsTenantAvailableInput implements IIsTenantAvailableInput {\r\n tenancyName!: string;\r\n\r\n constructor(data?: IIsTenantAvailableInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): IsTenantAvailableInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IsTenantAvailableInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIsTenantAvailableInput {\r\n tenancyName: string;\r\n}\r\n\r\nexport class IsTenantAvailableOutput implements IIsTenantAvailableOutput {\r\n state!: TenantAvailabilityState;\r\n tenantId!: number | undefined;\r\n serverRootAddress!: string | undefined;\r\n\r\n constructor(data?: IIsTenantAvailableOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.state = _data[\"state\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.serverRootAddress = _data[\"serverRootAddress\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): IsTenantAvailableOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IsTenantAvailableOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"state\"] = this.state;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"serverRootAddress\"] = this.serverRootAddress;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIsTenantAvailableOutput {\r\n state: TenantAvailabilityState;\r\n tenantId: number | undefined;\r\n serverRootAddress: string | undefined;\r\n}\r\n\r\nexport class Item implements IItem {\r\n externalId!: string | undefined;\r\n wmsConnectionId!: number;\r\n name!: string | undefined;\r\n uom!: string | undefined;\r\n partFamily!: string | undefined;\r\n orderInventory!: string | undefined;\r\n maxCatchQty!: number | undefined;\r\n minCatchQty!: number | undefined;\r\n catchUntWgt!: number | undefined;\r\n catchCode!: string | undefined;\r\n footprintCode!: string | undefined;\r\n isPalletUom!: boolean | undefined;\r\n isPackageUom!: boolean | undefined;\r\n isCaseUom!: boolean | undefined;\r\n netWeight!: number | undefined;\r\n grossWeight!: number | undefined;\r\n prdflg!: number;\r\n wmsConnection!: WMSConnection;\r\n inventoryHeaders!: InventoryDisplayItemHeader[] | undefined;\r\n client!: Client;\r\n clientId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.name = _data[\"name\"];\r\n this.uom = _data[\"uom\"];\r\n this.partFamily = _data[\"partFamily\"];\r\n this.orderInventory = _data[\"orderInventory\"];\r\n this.maxCatchQty = _data[\"maxCatchQty\"];\r\n this.minCatchQty = _data[\"minCatchQty\"];\r\n this.catchUntWgt = _data[\"catchUntWgt\"];\r\n this.catchCode = _data[\"catchCode\"];\r\n this.footprintCode = _data[\"footprintCode\"];\r\n this.isPalletUom = _data[\"isPalletUom\"];\r\n this.isPackageUom = _data[\"isPackageUom\"];\r\n this.isCaseUom = _data[\"isCaseUom\"];\r\n this.netWeight = _data[\"netWeight\"];\r\n this.grossWeight = _data[\"grossWeight\"];\r\n this.prdflg = _data[\"prdflg\"];\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n if (Array.isArray(_data[\"inventoryHeaders\"])) {\r\n this.inventoryHeaders = [] as any;\r\n for (let item of _data[\"inventoryHeaders\"])\r\n this.inventoryHeaders!.push(InventoryDisplayItemHeader.fromJS(item));\r\n }\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.clientId = _data[\"clientId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Item {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Item();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"name\"] = this.name;\r\n data[\"uom\"] = this.uom;\r\n data[\"partFamily\"] = this.partFamily;\r\n data[\"orderInventory\"] = this.orderInventory;\r\n data[\"maxCatchQty\"] = this.maxCatchQty;\r\n data[\"minCatchQty\"] = this.minCatchQty;\r\n data[\"catchUntWgt\"] = this.catchUntWgt;\r\n data[\"catchCode\"] = this.catchCode;\r\n data[\"footprintCode\"] = this.footprintCode;\r\n data[\"isPalletUom\"] = this.isPalletUom;\r\n data[\"isPackageUom\"] = this.isPackageUom;\r\n data[\"isCaseUom\"] = this.isCaseUom;\r\n data[\"netWeight\"] = this.netWeight;\r\n data[\"grossWeight\"] = this.grossWeight;\r\n data[\"prdflg\"] = this.prdflg;\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n if (Array.isArray(this.inventoryHeaders)) {\r\n data[\"inventoryHeaders\"] = [];\r\n for (let item of this.inventoryHeaders)\r\n data[\"inventoryHeaders\"].push(item.toJSON());\r\n }\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IItem {\r\n externalId: string | undefined;\r\n wmsConnectionId: number;\r\n name: string | undefined;\r\n uom: string | undefined;\r\n partFamily: string | undefined;\r\n orderInventory: string | undefined;\r\n maxCatchQty: number | undefined;\r\n minCatchQty: number | undefined;\r\n catchUntWgt: number | undefined;\r\n catchCode: string | undefined;\r\n footprintCode: string | undefined;\r\n isPalletUom: boolean | undefined;\r\n isPackageUom: boolean | undefined;\r\n isCaseUom: boolean | undefined;\r\n netWeight: number | undefined;\r\n grossWeight: number | undefined;\r\n prdflg: number;\r\n wmsConnection: WMSConnection;\r\n inventoryHeaders: InventoryDisplayItemHeader[] | undefined;\r\n client: Client;\r\n clientId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class ItemMasterQueryListDto implements IItemMasterQueryListDto {\r\n clientAccount!: string | undefined;\r\n itemNumber!: string | undefined;\r\n itemDescription!: string | undefined;\r\n itemFamily!: string | undefined;\r\n inventoryRotationMethod!: string | undefined;\r\n lotTracking!: boolean;\r\n receiveStatus!: string | undefined;\r\n dateTracking!: string | undefined;\r\n weightType!: string | undefined;\r\n unitOfMeasurePerPack!: string | undefined;\r\n unitOfMeasurePerPallet!: number;\r\n unitOfMeasurePerTier!: number;\r\n packNetWeight!: number;\r\n palletNetWeight!: number;\r\n packDimensions!: string | undefined;\r\n palletDimensions!: string | undefined;\r\n\r\n constructor(data?: IItemMasterQueryListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientAccount = _data[\"clientAccount\"];\r\n this.itemNumber = _data[\"itemNumber\"];\r\n this.itemDescription = _data[\"itemDescription\"];\r\n this.itemFamily = _data[\"itemFamily\"];\r\n this.inventoryRotationMethod = _data[\"inventoryRotationMethod\"];\r\n this.lotTracking = _data[\"lotTracking\"];\r\n this.receiveStatus = _data[\"receiveStatus\"];\r\n this.dateTracking = _data[\"dateTracking\"];\r\n this.weightType = _data[\"weightType\"];\r\n this.unitOfMeasurePerPack = _data[\"unitOfMeasurePerPack\"];\r\n this.unitOfMeasurePerPallet = _data[\"unitOfMeasurePerPallet\"];\r\n this.unitOfMeasurePerTier = _data[\"unitOfMeasurePerTier\"];\r\n this.packNetWeight = _data[\"packNetWeight\"];\r\n this.palletNetWeight = _data[\"palletNetWeight\"];\r\n this.packDimensions = _data[\"packDimensions\"];\r\n this.palletDimensions = _data[\"palletDimensions\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ItemMasterQueryListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ItemMasterQueryListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientAccount\"] = this.clientAccount;\r\n data[\"itemNumber\"] = this.itemNumber;\r\n data[\"itemDescription\"] = this.itemDescription;\r\n data[\"itemFamily\"] = this.itemFamily;\r\n data[\"inventoryRotationMethod\"] = this.inventoryRotationMethod;\r\n data[\"lotTracking\"] = this.lotTracking;\r\n data[\"receiveStatus\"] = this.receiveStatus;\r\n data[\"dateTracking\"] = this.dateTracking;\r\n data[\"weightType\"] = this.weightType;\r\n data[\"unitOfMeasurePerPack\"] = this.unitOfMeasurePerPack;\r\n data[\"unitOfMeasurePerPallet\"] = this.unitOfMeasurePerPallet;\r\n data[\"unitOfMeasurePerTier\"] = this.unitOfMeasurePerTier;\r\n data[\"packNetWeight\"] = this.packNetWeight;\r\n data[\"palletNetWeight\"] = this.palletNetWeight;\r\n data[\"packDimensions\"] = this.packDimensions;\r\n data[\"palletDimensions\"] = this.palletDimensions;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IItemMasterQueryListDto {\r\n clientAccount: string | undefined;\r\n itemNumber: string | undefined;\r\n itemDescription: string | undefined;\r\n itemFamily: string | undefined;\r\n inventoryRotationMethod: string | undefined;\r\n lotTracking: boolean;\r\n receiveStatus: string | undefined;\r\n dateTracking: string | undefined;\r\n weightType: string | undefined;\r\n unitOfMeasurePerPack: string | undefined;\r\n unitOfMeasurePerPallet: number;\r\n unitOfMeasurePerTier: number;\r\n packNetWeight: number;\r\n palletNetWeight: number;\r\n packDimensions: string | undefined;\r\n palletDimensions: string | undefined;\r\n}\r\n\r\nexport class JsonClaimMapDto implements IJsonClaimMapDto {\r\n claim!: string | undefined;\r\n key!: string | undefined;\r\n\r\n constructor(data?: IJsonClaimMapDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.claim = _data[\"claim\"];\r\n this.key = _data[\"key\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): JsonClaimMapDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new JsonClaimMapDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"claim\"] = this.claim;\r\n data[\"key\"] = this.key;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IJsonClaimMapDto {\r\n claim: string | undefined;\r\n key: string | undefined;\r\n}\r\n\r\nexport class LanguageTextListDto implements ILanguageTextListDto {\r\n key!: string | undefined;\r\n baseValue!: string | undefined;\r\n targetValue!: string | undefined;\r\n\r\n constructor(data?: ILanguageTextListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.key = _data[\"key\"];\r\n this.baseValue = _data[\"baseValue\"];\r\n this.targetValue = _data[\"targetValue\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LanguageTextListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LanguageTextListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"key\"] = this.key;\r\n data[\"baseValue\"] = this.baseValue;\r\n data[\"targetValue\"] = this.targetValue;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILanguageTextListDto {\r\n key: string | undefined;\r\n baseValue: string | undefined;\r\n targetValue: string | undefined;\r\n}\r\n\r\nexport class LdapSettingsEditDto implements ILdapSettingsEditDto {\r\n isModuleEnabled!: boolean;\r\n isEnabled!: boolean;\r\n domain!: string | undefined;\r\n userName!: string | undefined;\r\n password!: string | undefined;\r\n\r\n constructor(data?: ILdapSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isModuleEnabled = _data[\"isModuleEnabled\"];\r\n this.isEnabled = _data[\"isEnabled\"];\r\n this.domain = _data[\"domain\"];\r\n this.userName = _data[\"userName\"];\r\n this.password = _data[\"password\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LdapSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LdapSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isModuleEnabled\"] = this.isModuleEnabled;\r\n data[\"isEnabled\"] = this.isEnabled;\r\n data[\"domain\"] = this.domain;\r\n data[\"userName\"] = this.userName;\r\n data[\"password\"] = this.password;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILdapSettingsEditDto {\r\n isModuleEnabled: boolean;\r\n isEnabled: boolean;\r\n domain: string | undefined;\r\n userName: string | undefined;\r\n password: string | undefined;\r\n}\r\n\r\nexport class LinkToUserInput implements ILinkToUserInput {\r\n tenancyName!: string | undefined;\r\n usernameOrEmailAddress!: string;\r\n password!: string;\r\n\r\n constructor(data?: ILinkToUserInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.usernameOrEmailAddress = _data[\"usernameOrEmailAddress\"];\r\n this.password = _data[\"password\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LinkToUserInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LinkToUserInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"usernameOrEmailAddress\"] = this.usernameOrEmailAddress;\r\n data[\"password\"] = this.password;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILinkToUserInput {\r\n tenancyName: string | undefined;\r\n usernameOrEmailAddress: string;\r\n password: string;\r\n}\r\n\r\nexport class LinkedUserDto implements ILinkedUserDto {\r\n tenantId!: number | undefined;\r\n tenancyName!: string | undefined;\r\n username!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ILinkedUserDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.username = _data[\"username\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LinkedUserDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LinkedUserDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"username\"] = this.username;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILinkedUserDto {\r\n tenantId: number | undefined;\r\n tenancyName: string | undefined;\r\n username: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class ListResultDtoOfCacheDto implements IListResultDtoOfCacheDto {\r\n items!: CacheDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfCacheDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(CacheDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfCacheDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfCacheDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfCacheDto {\r\n items: CacheDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfChatMessageDto implements IListResultDtoOfChatMessageDto {\r\n items!: ChatMessageDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfChatMessageDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(ChatMessageDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfChatMessageDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfChatMessageDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfChatMessageDto {\r\n items: ChatMessageDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfDynamicEntityPropertyDto implements IListResultDtoOfDynamicEntityPropertyDto {\r\n items!: DynamicEntityPropertyDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfDynamicEntityPropertyDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(DynamicEntityPropertyDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfDynamicEntityPropertyDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfDynamicEntityPropertyDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfDynamicEntityPropertyDto {\r\n items: DynamicEntityPropertyDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfDynamicEntityPropertyValueDto implements IListResultDtoOfDynamicEntityPropertyValueDto {\r\n items!: DynamicEntityPropertyValueDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfDynamicEntityPropertyValueDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(DynamicEntityPropertyValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfDynamicEntityPropertyValueDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfDynamicEntityPropertyValueDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfDynamicEntityPropertyValueDto {\r\n items: DynamicEntityPropertyValueDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfDynamicPropertyDto implements IListResultDtoOfDynamicPropertyDto {\r\n items!: DynamicPropertyDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfDynamicPropertyDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(DynamicPropertyDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfDynamicPropertyDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfDynamicPropertyDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfDynamicPropertyDto {\r\n items: DynamicPropertyDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfDynamicPropertyValueDto implements IListResultDtoOfDynamicPropertyValueDto {\r\n items!: DynamicPropertyValueDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfDynamicPropertyValueDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(DynamicPropertyValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfDynamicPropertyValueDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfDynamicPropertyValueDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfDynamicPropertyValueDto {\r\n items: DynamicPropertyValueDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfEditionListDto implements IListResultDtoOfEditionListDto {\r\n items!: EditionListDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfEditionListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(EditionListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfEditionListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfEditionListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfEditionListDto {\r\n items: EditionListDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfFlatPermissionWithLevelDto implements IListResultDtoOfFlatPermissionWithLevelDto {\r\n items!: FlatPermissionWithLevelDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfFlatPermissionWithLevelDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(FlatPermissionWithLevelDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfFlatPermissionWithLevelDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfFlatPermissionWithLevelDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfFlatPermissionWithLevelDto {\r\n items: FlatPermissionWithLevelDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfGetAllAvailableWebhooksOutput implements IListResultDtoOfGetAllAvailableWebhooksOutput {\r\n items!: GetAllAvailableWebhooksOutput[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfGetAllAvailableWebhooksOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetAllAvailableWebhooksOutput.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfGetAllAvailableWebhooksOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfGetAllAvailableWebhooksOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfGetAllAvailableWebhooksOutput {\r\n items: GetAllAvailableWebhooksOutput[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfGetAllEntitiesHasDynamicPropertyOutput implements IListResultDtoOfGetAllEntitiesHasDynamicPropertyOutput {\r\n items!: GetAllEntitiesHasDynamicPropertyOutput[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfGetAllEntitiesHasDynamicPropertyOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetAllEntitiesHasDynamicPropertyOutput.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfGetAllEntitiesHasDynamicPropertyOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfGetAllEntitiesHasDynamicPropertyOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfGetAllEntitiesHasDynamicPropertyOutput {\r\n items: GetAllEntitiesHasDynamicPropertyOutput[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfGetAllSendAttemptsOfWebhookEventOutput implements IListResultDtoOfGetAllSendAttemptsOfWebhookEventOutput {\r\n items!: GetAllSendAttemptsOfWebhookEventOutput[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfGetAllSendAttemptsOfWebhookEventOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetAllSendAttemptsOfWebhookEventOutput.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfGetAllSendAttemptsOfWebhookEventOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfGetAllSendAttemptsOfWebhookEventOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfGetAllSendAttemptsOfWebhookEventOutput {\r\n items: GetAllSendAttemptsOfWebhookEventOutput[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfGetAllSubscriptionsOutput implements IListResultDtoOfGetAllSubscriptionsOutput {\r\n items!: GetAllSubscriptionsOutput[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfGetAllSubscriptionsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetAllSubscriptionsOutput.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfGetAllSubscriptionsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfGetAllSubscriptionsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfGetAllSubscriptionsOutput {\r\n items: GetAllSubscriptionsOutput[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfLinkedUserDto implements IListResultDtoOfLinkedUserDto {\r\n items!: LinkedUserDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfLinkedUserDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(LinkedUserDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfLinkedUserDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfLinkedUserDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfLinkedUserDto {\r\n items: LinkedUserDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfNameValueDto implements IListResultDtoOfNameValueDto {\r\n items!: NameValueDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfNameValueDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(NameValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfNameValueDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfNameValueDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfNameValueDto {\r\n items: NameValueDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfOrganizationUnitDto implements IListResultDtoOfOrganizationUnitDto {\r\n items!: OrganizationUnitDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfOrganizationUnitDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(OrganizationUnitDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfOrganizationUnitDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfOrganizationUnitDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfOrganizationUnitDto {\r\n items: OrganizationUnitDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfRoleListDto implements IListResultDtoOfRoleListDto {\r\n items!: RoleListDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfRoleListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(RoleListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfRoleListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfRoleListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfRoleListDto {\r\n items: RoleListDto[] | undefined;\r\n}\r\n\r\nexport class ListResultDtoOfSubscribableEditionComboboxItemDto implements IListResultDtoOfSubscribableEditionComboboxItemDto {\r\n items!: SubscribableEditionComboboxItemDto[] | undefined;\r\n\r\n constructor(data?: IListResultDtoOfSubscribableEditionComboboxItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(SubscribableEditionComboboxItemDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ListResultDtoOfSubscribableEditionComboboxItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ListResultDtoOfSubscribableEditionComboboxItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IListResultDtoOfSubscribableEditionComboboxItemDto {\r\n items: SubscribableEditionComboboxItemDto[] | undefined;\r\n}\r\n\r\nexport class LocalizableComboboxItemDto implements ILocalizableComboboxItemDto {\r\n value!: string | undefined;\r\n displayText!: string | undefined;\r\n\r\n constructor(data?: ILocalizableComboboxItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.value = _data[\"value\"];\r\n this.displayText = _data[\"displayText\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LocalizableComboboxItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LocalizableComboboxItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"value\"] = this.value;\r\n data[\"displayText\"] = this.displayText;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILocalizableComboboxItemDto {\r\n value: string | undefined;\r\n displayText: string | undefined;\r\n}\r\n\r\nexport class LocalizableComboboxItemSourceDto implements ILocalizableComboboxItemSourceDto {\r\n items!: LocalizableComboboxItemDto[] | undefined;\r\n\r\n constructor(data?: ILocalizableComboboxItemSourceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(LocalizableComboboxItemDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LocalizableComboboxItemSourceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LocalizableComboboxItemSourceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILocalizableComboboxItemSourceDto {\r\n items: LocalizableComboboxItemDto[] | undefined;\r\n}\r\n\r\nexport class MarkAllUnreadMessagesOfUserAsReadInput implements IMarkAllUnreadMessagesOfUserAsReadInput {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n\r\n constructor(data?: IMarkAllUnreadMessagesOfUserAsReadInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MarkAllUnreadMessagesOfUserAsReadInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MarkAllUnreadMessagesOfUserAsReadInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMarkAllUnreadMessagesOfUserAsReadInput {\r\n tenantId: number | undefined;\r\n userId: number;\r\n}\r\n\r\nexport class MassNotificationOrganizationUnitLookupTableDto implements IMassNotificationOrganizationUnitLookupTableDto {\r\n id!: number;\r\n displayName!: string | undefined;\r\n\r\n constructor(data?: IMassNotificationOrganizationUnitLookupTableDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.displayName = _data[\"displayName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MassNotificationOrganizationUnitLookupTableDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MassNotificationOrganizationUnitLookupTableDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"displayName\"] = this.displayName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMassNotificationOrganizationUnitLookupTableDto {\r\n id: number;\r\n displayName: string | undefined;\r\n}\r\n\r\nexport class MassNotificationUserLookupTableDto implements IMassNotificationUserLookupTableDto {\r\n id!: number;\r\n displayName!: string | undefined;\r\n\r\n constructor(data?: IMassNotificationUserLookupTableDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.displayName = _data[\"displayName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MassNotificationUserLookupTableDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MassNotificationUserLookupTableDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"displayName\"] = this.displayName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMassNotificationUserLookupTableDto {\r\n id: number;\r\n displayName: string | undefined;\r\n}\r\n\r\nexport class MemberActivity implements IMemberActivity {\r\n name!: string | undefined;\r\n earnings!: string | undefined;\r\n cases!: number;\r\n closed!: number;\r\n rate!: string | undefined;\r\n\r\n constructor(data?: IMemberActivity) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.earnings = _data[\"earnings\"];\r\n this.cases = _data[\"cases\"];\r\n this.closed = _data[\"closed\"];\r\n this.rate = _data[\"rate\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MemberActivity {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MemberActivity();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"earnings\"] = this.earnings;\r\n data[\"cases\"] = this.cases;\r\n data[\"closed\"] = this.closed;\r\n data[\"rate\"] = this.rate;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMemberActivity {\r\n name: string | undefined;\r\n earnings: string | undefined;\r\n cases: number;\r\n closed: number;\r\n rate: string | undefined;\r\n}\r\n\r\nexport class MicrosoftExternalLoginProviderSettings implements IMicrosoftExternalLoginProviderSettings {\r\n clientId!: string | undefined;\r\n clientSecret!: string | undefined;\r\n\r\n constructor(data?: IMicrosoftExternalLoginProviderSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.clientSecret = _data[\"clientSecret\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MicrosoftExternalLoginProviderSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MicrosoftExternalLoginProviderSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"clientSecret\"] = this.clientSecret;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMicrosoftExternalLoginProviderSettings {\r\n clientId: string | undefined;\r\n clientSecret: string | undefined;\r\n}\r\n\r\nexport class MoveOrganizationUnitInput implements IMoveOrganizationUnitInput {\r\n id!: number;\r\n newParentId!: number | undefined;\r\n\r\n constructor(data?: IMoveOrganizationUnitInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.newParentId = _data[\"newParentId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MoveOrganizationUnitInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MoveOrganizationUnitInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"newParentId\"] = this.newParentId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMoveOrganizationUnitInput {\r\n id: number;\r\n newParentId: number | undefined;\r\n}\r\n\r\nexport class MoveTenantsToAnotherEditionDto implements IMoveTenantsToAnotherEditionDto {\r\n sourceEditionId!: number;\r\n targetEditionId!: number;\r\n\r\n constructor(data?: IMoveTenantsToAnotherEditionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sourceEditionId = _data[\"sourceEditionId\"];\r\n this.targetEditionId = _data[\"targetEditionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MoveTenantsToAnotherEditionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MoveTenantsToAnotherEditionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sourceEditionId\"] = this.sourceEditionId;\r\n data[\"targetEditionId\"] = this.targetEditionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMoveTenantsToAnotherEditionDto {\r\n sourceEditionId: number;\r\n targetEditionId: number;\r\n}\r\n\r\nexport class NameValue implements INameValue {\r\n name!: string | undefined;\r\n value!: string | undefined;\r\n\r\n constructor(data?: INameValue) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NameValue {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NameValue();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INameValue {\r\n name: string | undefined;\r\n value: string | undefined;\r\n}\r\n\r\nexport class NameValueDto implements INameValueDto {\r\n name!: string | undefined;\r\n value!: string | undefined;\r\n\r\n constructor(data?: INameValueDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NameValueDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NameValueDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INameValueDto {\r\n name: string | undefined;\r\n value: string | undefined;\r\n}\r\n\r\nexport class NameValueOfString implements INameValueOfString {\r\n name!: string | undefined;\r\n value!: string | undefined;\r\n\r\n constructor(data?: INameValueOfString) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NameValueOfString {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NameValueOfString();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INameValueOfString {\r\n name: string | undefined;\r\n value: string | undefined;\r\n}\r\n\r\nexport class NotificationData implements INotificationData {\r\n readonly type!: string | undefined;\r\n properties!: { [key: string]: any; } | undefined;\r\n\r\n constructor(data?: INotificationData) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n (this).type = _data[\"type\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): NotificationData {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NotificationData();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"type\"] = this.type;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INotificationData {\r\n type: string | undefined;\r\n properties: { [key: string]: any; } | undefined;\r\n}\r\n\r\nexport enum NotificationSeverity {\r\n Info = 0,\r\n Success = 1,\r\n Warn = 2,\r\n Error = 3,\r\n Fatal = 4,\r\n}\r\n\r\nexport class NotificationSubscriptionDto implements INotificationSubscriptionDto {\r\n name!: string;\r\n isSubscribed!: boolean;\r\n\r\n constructor(data?: INotificationSubscriptionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.isSubscribed = _data[\"isSubscribed\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NotificationSubscriptionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NotificationSubscriptionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"isSubscribed\"] = this.isSubscribed;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INotificationSubscriptionDto {\r\n name: string;\r\n isSubscribed: boolean;\r\n}\r\n\r\nexport class NotificationSubscriptionWithDisplayNameDto implements INotificationSubscriptionWithDisplayNameDto {\r\n displayName!: string | undefined;\r\n description!: string | undefined;\r\n name!: string;\r\n isSubscribed!: boolean;\r\n\r\n constructor(data?: INotificationSubscriptionWithDisplayNameDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.displayName = _data[\"displayName\"];\r\n this.description = _data[\"description\"];\r\n this.name = _data[\"name\"];\r\n this.isSubscribed = _data[\"isSubscribed\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NotificationSubscriptionWithDisplayNameDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NotificationSubscriptionWithDisplayNameDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"displayName\"] = this.displayName;\r\n data[\"description\"] = this.description;\r\n data[\"name\"] = this.name;\r\n data[\"isSubscribed\"] = this.isSubscribed;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INotificationSubscriptionWithDisplayNameDto {\r\n displayName: string | undefined;\r\n description: string | undefined;\r\n name: string;\r\n isSubscribed: boolean;\r\n}\r\n\r\nexport class OpenIdConnectExternalLoginProviderSettings implements IOpenIdConnectExternalLoginProviderSettings {\r\n clientId!: string | undefined;\r\n clientSecret!: string | undefined;\r\n authority!: string | undefined;\r\n loginUrl!: string | undefined;\r\n validateIssuer!: boolean;\r\n responseType!: string | undefined;\r\n\r\n constructor(data?: IOpenIdConnectExternalLoginProviderSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.clientSecret = _data[\"clientSecret\"];\r\n this.authority = _data[\"authority\"];\r\n this.loginUrl = _data[\"loginUrl\"];\r\n this.validateIssuer = _data[\"validateIssuer\"];\r\n this.responseType = _data[\"responseType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OpenIdConnectExternalLoginProviderSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OpenIdConnectExternalLoginProviderSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"clientSecret\"] = this.clientSecret;\r\n data[\"authority\"] = this.authority;\r\n data[\"loginUrl\"] = this.loginUrl;\r\n data[\"validateIssuer\"] = this.validateIssuer;\r\n data[\"responseType\"] = this.responseType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOpenIdConnectExternalLoginProviderSettings {\r\n clientId: string | undefined;\r\n clientSecret: string | undefined;\r\n authority: string | undefined;\r\n loginUrl: string | undefined;\r\n validateIssuer: boolean;\r\n responseType: string | undefined;\r\n}\r\n\r\nexport class Order implements IOrder {\r\n shipmentId!: number | undefined;\r\n clientId!: number;\r\n warehouseId!: number;\r\n customerId!: number | undefined;\r\n customerProvidedExternalId!: string | undefined;\r\n purchaseOrderNumber!: string | undefined;\r\n direction!: ShipmentType;\r\n type!: OrderType;\r\n externalDateModified!: DateTime;\r\n externalDateCreated!: DateTime;\r\n shipment!: Shipment;\r\n client!: Client;\r\n warehouse!: Warehouse;\r\n customer!: Customer;\r\n orderLines!: OrderLine[] | undefined;\r\n services!: OrderServiceItem[] | undefined;\r\n lastSyncTime!: DateTime;\r\n noteText!: string | undefined;\r\n version!: string | undefined;\r\n externalId!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IOrder) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.shipmentId = _data[\"shipmentId\"];\r\n this.clientId = _data[\"clientId\"];\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.customerId = _data[\"customerId\"];\r\n this.customerProvidedExternalId = _data[\"customerProvidedExternalId\"];\r\n this.purchaseOrderNumber = _data[\"purchaseOrderNumber\"];\r\n this.direction = _data[\"direction\"];\r\n this.type = _data[\"type\"];\r\n this.externalDateModified = _data[\"externalDateModified\"] ? DateTime.fromISO(_data[\"externalDateModified\"].toString()) : undefined;\r\n this.externalDateCreated = _data[\"externalDateCreated\"] ? DateTime.fromISO(_data[\"externalDateCreated\"].toString()) : undefined;\r\n this.shipment = _data[\"shipment\"] ? Shipment.fromJS(_data[\"shipment\"]) : undefined;\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.warehouse = _data[\"warehouse\"] ? Warehouse.fromJS(_data[\"warehouse\"]) : undefined;\r\n this.customer = _data[\"customer\"] ? Customer.fromJS(_data[\"customer\"]) : undefined;\r\n if (Array.isArray(_data[\"orderLines\"])) {\r\n this.orderLines = [] as any;\r\n for (let item of _data[\"orderLines\"])\r\n this.orderLines!.push(OrderLine.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(OrderServiceItem.fromJS(item));\r\n }\r\n this.lastSyncTime = _data[\"lastSyncTime\"] ? DateTime.fromISO(_data[\"lastSyncTime\"].toString()) : undefined;\r\n this.noteText = _data[\"noteText\"];\r\n this.version = _data[\"version\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Order {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Order();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"shipmentId\"] = this.shipmentId;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"customerProvidedExternalId\"] = this.customerProvidedExternalId;\r\n data[\"purchaseOrderNumber\"] = this.purchaseOrderNumber;\r\n data[\"direction\"] = this.direction;\r\n data[\"type\"] = this.type;\r\n data[\"externalDateModified\"] = this.externalDateModified ? this.externalDateModified.toString() : undefined;\r\n data[\"externalDateCreated\"] = this.externalDateCreated ? this.externalDateCreated.toString() : undefined;\r\n data[\"shipment\"] = this.shipment ? this.shipment.toJSON() : undefined;\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"warehouse\"] = this.warehouse ? this.warehouse.toJSON() : undefined;\r\n data[\"customer\"] = this.customer ? this.customer.toJSON() : undefined;\r\n if (Array.isArray(this.orderLines)) {\r\n data[\"orderLines\"] = [];\r\n for (let item of this.orderLines)\r\n data[\"orderLines\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item.toJSON());\r\n }\r\n data[\"lastSyncTime\"] = this.lastSyncTime ? this.lastSyncTime.toString() : undefined;\r\n data[\"noteText\"] = this.noteText;\r\n data[\"version\"] = this.version;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrder {\r\n shipmentId: number | undefined;\r\n clientId: number;\r\n warehouseId: number;\r\n customerId: number | undefined;\r\n customerProvidedExternalId: string | undefined;\r\n purchaseOrderNumber: string | undefined;\r\n direction: ShipmentType;\r\n type: OrderType;\r\n externalDateModified: DateTime;\r\n externalDateCreated: DateTime;\r\n shipment: Shipment;\r\n client: Client;\r\n warehouse: Warehouse;\r\n customer: Customer;\r\n orderLines: OrderLine[] | undefined;\r\n services: OrderServiceItem[] | undefined;\r\n lastSyncTime: DateTime;\r\n noteText: string | undefined;\r\n version: string | undefined;\r\n externalId: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class OrderDto implements IOrderDto {\r\n externalId!: string | undefined;\r\n customerProvidedExternalId!: string | undefined;\r\n purchaseOrderNumber!: string | undefined;\r\n externalDateModified!: DateTime;\r\n externalDateCreated!: DateTime;\r\n type!: OrderType;\r\n shipFrom!: string | undefined;\r\n shipTo!: string | undefined;\r\n clientName!: string | undefined;\r\n clientId!: number;\r\n warehouseId!: number;\r\n customer!: CustomerDto;\r\n direction!: ShipmentType;\r\n noteText!: string | undefined;\r\n orderDateCreated!: DateTime;\r\n shipment!: ShipmentDto;\r\n orderLines!: OrderLineDto[] | undefined;\r\n services!: OrderServiceItemDto[] | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IOrderDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.customerProvidedExternalId = _data[\"customerProvidedExternalId\"];\r\n this.purchaseOrderNumber = _data[\"purchaseOrderNumber\"];\r\n this.externalDateModified = _data[\"externalDateModified\"] ? DateTime.fromISO(_data[\"externalDateModified\"].toString()) : undefined;\r\n this.externalDateCreated = _data[\"externalDateCreated\"] ? DateTime.fromISO(_data[\"externalDateCreated\"].toString()) : undefined;\r\n this.type = _data[\"type\"];\r\n this.shipFrom = _data[\"shipFrom\"];\r\n this.shipTo = _data[\"shipTo\"];\r\n this.clientName = _data[\"clientName\"];\r\n this.clientId = _data[\"clientId\"];\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.customer = _data[\"customer\"] ? CustomerDto.fromJS(_data[\"customer\"]) : undefined;\r\n this.direction = _data[\"direction\"];\r\n this.noteText = _data[\"noteText\"];\r\n this.orderDateCreated = _data[\"orderDateCreated\"] ? DateTime.fromISO(_data[\"orderDateCreated\"].toString()) : undefined;\r\n this.shipment = _data[\"shipment\"] ? ShipmentDto.fromJS(_data[\"shipment\"]) : undefined;\r\n if (Array.isArray(_data[\"orderLines\"])) {\r\n this.orderLines = [] as any;\r\n for (let item of _data[\"orderLines\"])\r\n this.orderLines!.push(OrderLineDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(OrderServiceItemDto.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"customerProvidedExternalId\"] = this.customerProvidedExternalId;\r\n data[\"purchaseOrderNumber\"] = this.purchaseOrderNumber;\r\n data[\"externalDateModified\"] = this.externalDateModified ? this.externalDateModified.toString() : undefined;\r\n data[\"externalDateCreated\"] = this.externalDateCreated ? this.externalDateCreated.toString() : undefined;\r\n data[\"type\"] = this.type;\r\n data[\"shipFrom\"] = this.shipFrom;\r\n data[\"shipTo\"] = this.shipTo;\r\n data[\"clientName\"] = this.clientName;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"customer\"] = this.customer ? this.customer.toJSON() : undefined;\r\n data[\"direction\"] = this.direction;\r\n data[\"noteText\"] = this.noteText;\r\n data[\"orderDateCreated\"] = this.orderDateCreated ? this.orderDateCreated.toString() : undefined;\r\n data[\"shipment\"] = this.shipment ? this.shipment.toJSON() : undefined;\r\n if (Array.isArray(this.orderLines)) {\r\n data[\"orderLines\"] = [];\r\n for (let item of this.orderLines)\r\n data[\"orderLines\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderDto {\r\n externalId: string | undefined;\r\n customerProvidedExternalId: string | undefined;\r\n purchaseOrderNumber: string | undefined;\r\n externalDateModified: DateTime;\r\n externalDateCreated: DateTime;\r\n type: OrderType;\r\n shipFrom: string | undefined;\r\n shipTo: string | undefined;\r\n clientName: string | undefined;\r\n clientId: number;\r\n warehouseId: number;\r\n customer: CustomerDto;\r\n direction: ShipmentType;\r\n noteText: string | undefined;\r\n orderDateCreated: DateTime;\r\n shipment: ShipmentDto;\r\n orderLines: OrderLineDto[] | undefined;\r\n services: OrderServiceItemDto[] | undefined;\r\n id: number;\r\n}\r\n\r\nexport class OrderInventoryAdvancedDto implements IOrderInventoryAdvancedDto {\r\n clientExternalId!: string | undefined;\r\n itemExternalId!: string | undefined;\r\n itemName!: string | undefined;\r\n totalOrdered!: number | undefined;\r\n fieldName!: string | undefined;\r\n translatedName!: string | undefined;\r\n value!: string | undefined;\r\n casesInInv!: number | undefined;\r\n availableToPromise!: number | undefined;\r\n ordnum!: string | undefined;\r\n shipId!: string | undefined;\r\n carMoveId!: string | undefined;\r\n apptId!: string | undefined;\r\n startDte!: string | undefined;\r\n custPO!: string | undefined;\r\n custOrd!: string | undefined;\r\n invstsPrg!: string | undefined;\r\n ordlin!: string | undefined;\r\n ordsln!: string | undefined;\r\n reservedProcessRun!: boolean;\r\n\r\n constructor(data?: IOrderInventoryAdvancedDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientExternalId = _data[\"clientExternalId\"];\r\n this.itemExternalId = _data[\"itemExternalId\"];\r\n this.itemName = _data[\"itemName\"];\r\n this.totalOrdered = _data[\"totalOrdered\"];\r\n this.fieldName = _data[\"fieldName\"];\r\n this.translatedName = _data[\"translatedName\"];\r\n this.value = _data[\"value\"];\r\n this.casesInInv = _data[\"casesInInv\"];\r\n this.availableToPromise = _data[\"availableToPromise\"];\r\n this.ordnum = _data[\"ordnum\"];\r\n this.shipId = _data[\"shipId\"];\r\n this.carMoveId = _data[\"carMoveId\"];\r\n this.apptId = _data[\"apptId\"];\r\n this.startDte = _data[\"startDte\"];\r\n this.custPO = _data[\"custPO\"];\r\n this.custOrd = _data[\"custOrd\"];\r\n this.invstsPrg = _data[\"invstsPrg\"];\r\n this.ordlin = _data[\"ordlin\"];\r\n this.ordsln = _data[\"ordsln\"];\r\n this.reservedProcessRun = _data[\"reservedProcessRun\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderInventoryAdvancedDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderInventoryAdvancedDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientExternalId\"] = this.clientExternalId;\r\n data[\"itemExternalId\"] = this.itemExternalId;\r\n data[\"itemName\"] = this.itemName;\r\n data[\"totalOrdered\"] = this.totalOrdered;\r\n data[\"fieldName\"] = this.fieldName;\r\n data[\"translatedName\"] = this.translatedName;\r\n data[\"value\"] = this.value;\r\n data[\"casesInInv\"] = this.casesInInv;\r\n data[\"availableToPromise\"] = this.availableToPromise;\r\n data[\"ordnum\"] = this.ordnum;\r\n data[\"shipId\"] = this.shipId;\r\n data[\"carMoveId\"] = this.carMoveId;\r\n data[\"apptId\"] = this.apptId;\r\n data[\"startDte\"] = this.startDte;\r\n data[\"custPO\"] = this.custPO;\r\n data[\"custOrd\"] = this.custOrd;\r\n data[\"invstsPrg\"] = this.invstsPrg;\r\n data[\"ordlin\"] = this.ordlin;\r\n data[\"ordsln\"] = this.ordsln;\r\n data[\"reservedProcessRun\"] = this.reservedProcessRun;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderInventoryAdvancedDto {\r\n clientExternalId: string | undefined;\r\n itemExternalId: string | undefined;\r\n itemName: string | undefined;\r\n totalOrdered: number | undefined;\r\n fieldName: string | undefined;\r\n translatedName: string | undefined;\r\n value: string | undefined;\r\n casesInInv: number | undefined;\r\n availableToPromise: number | undefined;\r\n ordnum: string | undefined;\r\n shipId: string | undefined;\r\n carMoveId: string | undefined;\r\n apptId: string | undefined;\r\n startDte: string | undefined;\r\n custPO: string | undefined;\r\n custOrd: string | undefined;\r\n invstsPrg: string | undefined;\r\n ordlin: string | undefined;\r\n ordsln: string | undefined;\r\n reservedProcessRun: boolean;\r\n}\r\n\r\nexport class OrderInventoryBasicDto implements IOrderInventoryBasicDto {\r\n clientExternalId!: string | undefined;\r\n itemExternalId!: string | undefined;\r\n itemName!: string | undefined;\r\n onHandQty!: number | undefined;\r\n reservedQty!: number | undefined;\r\n statusAvailableQty!: number | undefined;\r\n holdQty!: number | undefined;\r\n inspectQty!: number | undefined;\r\n ss_d_or_expire_qty!: number | undefined;\r\n w4_process_qty!: number | undefined;\r\n pickedStagedQty!: number | undefined;\r\n readonly inspectDamagedExpiredQty!: number | undefined;\r\n readonly availableForOrders!: number | undefined;\r\n readonly availableAfterReserved!: number | undefined;\r\n readonly remainingAfterAllOrd!: number | undefined;\r\n readonly totalAvailableInventory!: number | undefined;\r\n orderedQty!: number | undefined;\r\n scheduledQty!: number | undefined;\r\n remainingFromOrdInv!: number | undefined;\r\n remainingFromSchInv!: number | undefined;\r\n\r\n constructor(data?: IOrderInventoryBasicDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientExternalId = _data[\"clientExternalId\"];\r\n this.itemExternalId = _data[\"itemExternalId\"];\r\n this.itemName = _data[\"itemName\"];\r\n this.onHandQty = _data[\"onHandQty\"];\r\n this.reservedQty = _data[\"reservedQty\"];\r\n this.statusAvailableQty = _data[\"statusAvailableQty\"];\r\n this.holdQty = _data[\"holdQty\"];\r\n this.inspectQty = _data[\"inspectQty\"];\r\n this.ss_d_or_expire_qty = _data[\"ss_d_or_expire_qty\"];\r\n this.w4_process_qty = _data[\"w4_process_qty\"];\r\n this.pickedStagedQty = _data[\"pickedStagedQty\"];\r\n (this).inspectDamagedExpiredQty = _data[\"inspectDamagedExpiredQty\"];\r\n (this).availableForOrders = _data[\"availableForOrders\"];\r\n (this).availableAfterReserved = _data[\"availableAfterReserved\"];\r\n (this).remainingAfterAllOrd = _data[\"remainingAfterAllOrd\"];\r\n (this).totalAvailableInventory = _data[\"totalAvailableInventory\"];\r\n this.orderedQty = _data[\"orderedQty\"];\r\n this.scheduledQty = _data[\"scheduledQty\"];\r\n this.remainingFromOrdInv = _data[\"remainingFromOrdInv\"];\r\n this.remainingFromSchInv = _data[\"remainingFromSchInv\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderInventoryBasicDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderInventoryBasicDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientExternalId\"] = this.clientExternalId;\r\n data[\"itemExternalId\"] = this.itemExternalId;\r\n data[\"itemName\"] = this.itemName;\r\n data[\"onHandQty\"] = this.onHandQty;\r\n data[\"reservedQty\"] = this.reservedQty;\r\n data[\"statusAvailableQty\"] = this.statusAvailableQty;\r\n data[\"holdQty\"] = this.holdQty;\r\n data[\"inspectQty\"] = this.inspectQty;\r\n data[\"ss_d_or_expire_qty\"] = this.ss_d_or_expire_qty;\r\n data[\"w4_process_qty\"] = this.w4_process_qty;\r\n data[\"pickedStagedQty\"] = this.pickedStagedQty;\r\n data[\"inspectDamagedExpiredQty\"] = this.inspectDamagedExpiredQty;\r\n data[\"availableForOrders\"] = this.availableForOrders;\r\n data[\"availableAfterReserved\"] = this.availableAfterReserved;\r\n data[\"remainingAfterAllOrd\"] = this.remainingAfterAllOrd;\r\n data[\"totalAvailableInventory\"] = this.totalAvailableInventory;\r\n data[\"orderedQty\"] = this.orderedQty;\r\n data[\"scheduledQty\"] = this.scheduledQty;\r\n data[\"remainingFromOrdInv\"] = this.remainingFromOrdInv;\r\n data[\"remainingFromSchInv\"] = this.remainingFromSchInv;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderInventoryBasicDto {\r\n clientExternalId: string | undefined;\r\n itemExternalId: string | undefined;\r\n itemName: string | undefined;\r\n onHandQty: number | undefined;\r\n reservedQty: number | undefined;\r\n statusAvailableQty: number | undefined;\r\n holdQty: number | undefined;\r\n inspectQty: number | undefined;\r\n ss_d_or_expire_qty: number | undefined;\r\n w4_process_qty: number | undefined;\r\n pickedStagedQty: number | undefined;\r\n inspectDamagedExpiredQty: number | undefined;\r\n availableForOrders: number | undefined;\r\n availableAfterReserved: number | undefined;\r\n remainingAfterAllOrd: number | undefined;\r\n totalAvailableInventory: number | undefined;\r\n orderedQty: number | undefined;\r\n scheduledQty: number | undefined;\r\n remainingFromOrdInv: number | undefined;\r\n remainingFromSchInv: number | undefined;\r\n}\r\n\r\nexport class OrderLine implements IOrderLine {\r\n orderId!: number;\r\n itemId!: number;\r\n inventoryStatusId!: number | undefined;\r\n lineNumber!: string | undefined;\r\n quantityExpected!: number;\r\n quantityProcessed!: number;\r\n allocationMethod!: string | undefined;\r\n trackingNumber!: string | undefined;\r\n lotNumber!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n inboundCustomerPONumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n expirationDate!: string | undefined;\r\n externalPalletId!: string | undefined;\r\n inboundEquipmentNumber!: string | undefined;\r\n shippingMark!: string | undefined;\r\n externalDateModified!: DateTime;\r\n item!: Item;\r\n order!: Order;\r\n services!: OrderLineServiceItem[] | undefined;\r\n inventoryStatus!: InventoryStatus;\r\n lastSyncTime!: DateTime;\r\n version!: string | undefined;\r\n externalId!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IOrderLine) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.orderId = _data[\"orderId\"];\r\n this.itemId = _data[\"itemId\"];\r\n this.inventoryStatusId = _data[\"inventoryStatusId\"];\r\n this.lineNumber = _data[\"lineNumber\"];\r\n this.quantityExpected = _data[\"quantityExpected\"];\r\n this.quantityProcessed = _data[\"quantityProcessed\"];\r\n this.allocationMethod = _data[\"allocationMethod\"];\r\n this.trackingNumber = _data[\"trackingNumber\"];\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.inboundCustomerPONumber = _data[\"inboundCustomerPONumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.expirationDate = _data[\"expirationDate\"];\r\n this.externalPalletId = _data[\"externalPalletId\"];\r\n this.inboundEquipmentNumber = _data[\"inboundEquipmentNumber\"];\r\n this.shippingMark = _data[\"shippingMark\"];\r\n this.externalDateModified = _data[\"externalDateModified\"] ? DateTime.fromISO(_data[\"externalDateModified\"].toString()) : undefined;\r\n this.item = _data[\"item\"] ? Item.fromJS(_data[\"item\"]) : undefined;\r\n this.order = _data[\"order\"] ? Order.fromJS(_data[\"order\"]) : undefined;\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(OrderLineServiceItem.fromJS(item));\r\n }\r\n this.inventoryStatus = _data[\"inventoryStatus\"] ? InventoryStatus.fromJS(_data[\"inventoryStatus\"]) : undefined;\r\n this.lastSyncTime = _data[\"lastSyncTime\"] ? DateTime.fromISO(_data[\"lastSyncTime\"].toString()) : undefined;\r\n this.version = _data[\"version\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderLine {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderLine();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"orderId\"] = this.orderId;\r\n data[\"itemId\"] = this.itemId;\r\n data[\"inventoryStatusId\"] = this.inventoryStatusId;\r\n data[\"lineNumber\"] = this.lineNumber;\r\n data[\"quantityExpected\"] = this.quantityExpected;\r\n data[\"quantityProcessed\"] = this.quantityProcessed;\r\n data[\"allocationMethod\"] = this.allocationMethod;\r\n data[\"trackingNumber\"] = this.trackingNumber;\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"inboundCustomerPONumber\"] = this.inboundCustomerPONumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"expirationDate\"] = this.expirationDate;\r\n data[\"externalPalletId\"] = this.externalPalletId;\r\n data[\"inboundEquipmentNumber\"] = this.inboundEquipmentNumber;\r\n data[\"shippingMark\"] = this.shippingMark;\r\n data[\"externalDateModified\"] = this.externalDateModified ? this.externalDateModified.toString() : undefined;\r\n data[\"item\"] = this.item ? this.item.toJSON() : undefined;\r\n data[\"order\"] = this.order ? this.order.toJSON() : undefined;\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item.toJSON());\r\n }\r\n data[\"inventoryStatus\"] = this.inventoryStatus ? this.inventoryStatus.toJSON() : undefined;\r\n data[\"lastSyncTime\"] = this.lastSyncTime ? this.lastSyncTime.toString() : undefined;\r\n data[\"version\"] = this.version;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderLine {\r\n orderId: number;\r\n itemId: number;\r\n inventoryStatusId: number | undefined;\r\n lineNumber: string | undefined;\r\n quantityExpected: number;\r\n quantityProcessed: number;\r\n allocationMethod: string | undefined;\r\n trackingNumber: string | undefined;\r\n lotNumber: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n inboundCustomerPONumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n expirationDate: string | undefined;\r\n externalPalletId: string | undefined;\r\n inboundEquipmentNumber: string | undefined;\r\n shippingMark: string | undefined;\r\n externalDateModified: DateTime;\r\n item: Item;\r\n order: Order;\r\n services: OrderLineServiceItem[] | undefined;\r\n inventoryStatus: InventoryStatus;\r\n lastSyncTime: DateTime;\r\n version: string | undefined;\r\n externalId: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class OrderLineDto implements IOrderLineDto {\r\n externalId!: string | undefined;\r\n itemId!: number;\r\n itemExternalId!: string | undefined;\r\n itemName!: string | undefined;\r\n inventoryStatusId!: number;\r\n inventoryStatus!: string | undefined;\r\n trackingNumber!: string | undefined;\r\n lotNumber!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n inboundCustomerPONumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n expirationDate!: string | undefined;\r\n externalPalletId!: string | undefined;\r\n inboundEquipmentNumber!: string | undefined;\r\n shippingMark!: string | undefined;\r\n itemUnitOfMeasure!: string | undefined;\r\n itemNetWeight!: number | undefined;\r\n lineNumber!: string | undefined;\r\n quantityExpected!: number;\r\n quantityProcessed!: number;\r\n allocationMethod!: string | undefined;\r\n services!: OrderServiceItemDto[] | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IOrderLineDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.itemId = _data[\"itemId\"];\r\n this.itemExternalId = _data[\"itemExternalId\"];\r\n this.itemName = _data[\"itemName\"];\r\n this.inventoryStatusId = _data[\"inventoryStatusId\"];\r\n this.inventoryStatus = _data[\"inventoryStatus\"];\r\n this.trackingNumber = _data[\"trackingNumber\"];\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.inboundCustomerPONumber = _data[\"inboundCustomerPONumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.expirationDate = _data[\"expirationDate\"];\r\n this.externalPalletId = _data[\"externalPalletId\"];\r\n this.inboundEquipmentNumber = _data[\"inboundEquipmentNumber\"];\r\n this.shippingMark = _data[\"shippingMark\"];\r\n this.itemUnitOfMeasure = _data[\"itemUnitOfMeasure\"];\r\n this.itemNetWeight = _data[\"itemNetWeight\"];\r\n this.lineNumber = _data[\"lineNumber\"];\r\n this.quantityExpected = _data[\"quantityExpected\"];\r\n this.quantityProcessed = _data[\"quantityProcessed\"];\r\n this.allocationMethod = _data[\"allocationMethod\"];\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(OrderServiceItemDto.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderLineDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderLineDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"itemId\"] = this.itemId;\r\n data[\"itemExternalId\"] = this.itemExternalId;\r\n data[\"itemName\"] = this.itemName;\r\n data[\"inventoryStatusId\"] = this.inventoryStatusId;\r\n data[\"inventoryStatus\"] = this.inventoryStatus;\r\n data[\"trackingNumber\"] = this.trackingNumber;\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"inboundCustomerPONumber\"] = this.inboundCustomerPONumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"expirationDate\"] = this.expirationDate;\r\n data[\"externalPalletId\"] = this.externalPalletId;\r\n data[\"inboundEquipmentNumber\"] = this.inboundEquipmentNumber;\r\n data[\"shippingMark\"] = this.shippingMark;\r\n data[\"itemUnitOfMeasure\"] = this.itemUnitOfMeasure;\r\n data[\"itemNetWeight\"] = this.itemNetWeight;\r\n data[\"lineNumber\"] = this.lineNumber;\r\n data[\"quantityExpected\"] = this.quantityExpected;\r\n data[\"quantityProcessed\"] = this.quantityProcessed;\r\n data[\"allocationMethod\"] = this.allocationMethod;\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderLineDto {\r\n externalId: string | undefined;\r\n itemId: number;\r\n itemExternalId: string | undefined;\r\n itemName: string | undefined;\r\n inventoryStatusId: number;\r\n inventoryStatus: string | undefined;\r\n trackingNumber: string | undefined;\r\n lotNumber: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n inboundCustomerPONumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n expirationDate: string | undefined;\r\n externalPalletId: string | undefined;\r\n inboundEquipmentNumber: string | undefined;\r\n shippingMark: string | undefined;\r\n itemUnitOfMeasure: string | undefined;\r\n itemNetWeight: number | undefined;\r\n lineNumber: string | undefined;\r\n quantityExpected: number;\r\n quantityProcessed: number;\r\n allocationMethod: string | undefined;\r\n services: OrderServiceItemDto[] | undefined;\r\n id: number;\r\n}\r\n\r\nexport class OrderLineServiceItem implements IOrderLineServiceItem {\r\n orderLineId!: number;\r\n serviceId!: number;\r\n orderLine!: OrderLine;\r\n service!: OrderService;\r\n id!: number;\r\n\r\n constructor(data?: IOrderLineServiceItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.orderLineId = _data[\"orderLineId\"];\r\n this.serviceId = _data[\"serviceId\"];\r\n this.orderLine = _data[\"orderLine\"] ? OrderLine.fromJS(_data[\"orderLine\"]) : undefined;\r\n this.service = _data[\"service\"] ? OrderService.fromJS(_data[\"service\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderLineServiceItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderLineServiceItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"orderLineId\"] = this.orderLineId;\r\n data[\"serviceId\"] = this.serviceId;\r\n data[\"orderLine\"] = this.orderLine ? this.orderLine.toJSON() : undefined;\r\n data[\"service\"] = this.service ? this.service.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderLineServiceItem {\r\n orderLineId: number;\r\n serviceId: number;\r\n orderLine: OrderLine;\r\n service: OrderService;\r\n id: number;\r\n}\r\n\r\nexport class OrderListDto implements IOrderListDto {\r\n externalId!: string | undefined;\r\n appointmentExternalId!: string | undefined;\r\n loadNumber!: string | undefined;\r\n shipmentNumber!: string | undefined;\r\n warehouseId!: number;\r\n warehouseTimeZone!: string | undefined;\r\n customerProvidedExternalId!: string | undefined;\r\n purchaseOrderNumber!: string | undefined;\r\n type!: OrderType;\r\n shipFrom!: string | undefined;\r\n shipTo!: string | undefined;\r\n client!: string | undefined;\r\n carrier!: string | undefined;\r\n estimatedArrivalDate!: DateTime | undefined;\r\n direction!: ShipmentType;\r\n status!: ShipmentStatus;\r\n appointmentDate!: DateTime | undefined;\r\n orderDateCreated!: DateTime;\r\n id!: number;\r\n\r\n constructor(data?: IOrderListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.appointmentExternalId = _data[\"appointmentExternalId\"];\r\n this.loadNumber = _data[\"loadNumber\"];\r\n this.shipmentNumber = _data[\"shipmentNumber\"];\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.warehouseTimeZone = _data[\"warehouseTimeZone\"];\r\n this.customerProvidedExternalId = _data[\"customerProvidedExternalId\"];\r\n this.purchaseOrderNumber = _data[\"purchaseOrderNumber\"];\r\n this.type = _data[\"type\"];\r\n this.shipFrom = _data[\"shipFrom\"];\r\n this.shipTo = _data[\"shipTo\"];\r\n this.client = _data[\"client\"];\r\n this.carrier = _data[\"carrier\"];\r\n this.estimatedArrivalDate = _data[\"estimatedArrivalDate\"] ? DateTime.fromISO(_data[\"estimatedArrivalDate\"].toString()) : undefined;\r\n this.direction = _data[\"direction\"];\r\n this.status = _data[\"status\"];\r\n this.appointmentDate = _data[\"appointmentDate\"] ? DateTime.fromISO(_data[\"appointmentDate\"].toString()) : undefined;\r\n this.orderDateCreated = _data[\"orderDateCreated\"] ? DateTime.fromISO(_data[\"orderDateCreated\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"appointmentExternalId\"] = this.appointmentExternalId;\r\n data[\"loadNumber\"] = this.loadNumber;\r\n data[\"shipmentNumber\"] = this.shipmentNumber;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"warehouseTimeZone\"] = this.warehouseTimeZone;\r\n data[\"customerProvidedExternalId\"] = this.customerProvidedExternalId;\r\n data[\"purchaseOrderNumber\"] = this.purchaseOrderNumber;\r\n data[\"type\"] = this.type;\r\n data[\"shipFrom\"] = this.shipFrom;\r\n data[\"shipTo\"] = this.shipTo;\r\n data[\"client\"] = this.client;\r\n data[\"carrier\"] = this.carrier;\r\n data[\"estimatedArrivalDate\"] = this.estimatedArrivalDate ? this.estimatedArrivalDate.toString() : undefined;\r\n data[\"direction\"] = this.direction;\r\n data[\"status\"] = this.status;\r\n data[\"appointmentDate\"] = this.appointmentDate ? this.appointmentDate.toString() : undefined;\r\n data[\"orderDateCreated\"] = this.orderDateCreated ? this.orderDateCreated.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderListDto {\r\n externalId: string | undefined;\r\n appointmentExternalId: string | undefined;\r\n loadNumber: string | undefined;\r\n shipmentNumber: string | undefined;\r\n warehouseId: number;\r\n warehouseTimeZone: string | undefined;\r\n customerProvidedExternalId: string | undefined;\r\n purchaseOrderNumber: string | undefined;\r\n type: OrderType;\r\n shipFrom: string | undefined;\r\n shipTo: string | undefined;\r\n client: string | undefined;\r\n carrier: string | undefined;\r\n estimatedArrivalDate: DateTime | undefined;\r\n direction: ShipmentType;\r\n status: ShipmentStatus;\r\n appointmentDate: DateTime | undefined;\r\n orderDateCreated: DateTime;\r\n id: number;\r\n}\r\n\r\nexport class OrderService implements IOrderService {\r\n externalId!: string | undefined;\r\n name!: string | undefined;\r\n group!: string | undefined;\r\n allowMultipleInGroup!: boolean;\r\n type!: OrderServiceType;\r\n shipmentType!: ShipmentType;\r\n source!: SourceType;\r\n wmsConnectionId!: number;\r\n wmsConnection!: WMSConnection;\r\n orderItems!: OrderServiceItem[] | undefined;\r\n orderLineItems!: OrderLineServiceItem[] | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IOrderService) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.name = _data[\"name\"];\r\n this.group = _data[\"group\"];\r\n this.allowMultipleInGroup = _data[\"allowMultipleInGroup\"];\r\n this.type = _data[\"type\"];\r\n this.shipmentType = _data[\"shipmentType\"];\r\n this.source = _data[\"source\"];\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n if (Array.isArray(_data[\"orderItems\"])) {\r\n this.orderItems = [] as any;\r\n for (let item of _data[\"orderItems\"])\r\n this.orderItems!.push(OrderServiceItem.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"orderLineItems\"])) {\r\n this.orderLineItems = [] as any;\r\n for (let item of _data[\"orderLineItems\"])\r\n this.orderLineItems!.push(OrderLineServiceItem.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderService {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderService();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"name\"] = this.name;\r\n data[\"group\"] = this.group;\r\n data[\"allowMultipleInGroup\"] = this.allowMultipleInGroup;\r\n data[\"type\"] = this.type;\r\n data[\"shipmentType\"] = this.shipmentType;\r\n data[\"source\"] = this.source;\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n if (Array.isArray(this.orderItems)) {\r\n data[\"orderItems\"] = [];\r\n for (let item of this.orderItems)\r\n data[\"orderItems\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.orderLineItems)) {\r\n data[\"orderLineItems\"] = [];\r\n for (let item of this.orderLineItems)\r\n data[\"orderLineItems\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderService {\r\n externalId: string | undefined;\r\n name: string | undefined;\r\n group: string | undefined;\r\n allowMultipleInGroup: boolean;\r\n type: OrderServiceType;\r\n shipmentType: ShipmentType;\r\n source: SourceType;\r\n wmsConnectionId: number;\r\n wmsConnection: WMSConnection;\r\n orderItems: OrderServiceItem[] | undefined;\r\n orderLineItems: OrderLineServiceItem[] | undefined;\r\n id: number;\r\n}\r\n\r\nexport class OrderServiceDto implements IOrderServiceDto {\r\n name!: string | undefined;\r\n allowMultipleInGroup!: boolean;\r\n id!: number;\r\n\r\n constructor(data?: IOrderServiceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.allowMultipleInGroup = _data[\"allowMultipleInGroup\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderServiceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderServiceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"allowMultipleInGroup\"] = this.allowMultipleInGroup;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderServiceDto {\r\n name: string | undefined;\r\n allowMultipleInGroup: boolean;\r\n id: number;\r\n}\r\n\r\nexport class OrderServiceItem implements IOrderServiceItem {\r\n orderId!: number;\r\n serviceId!: number;\r\n order!: Order;\r\n service!: OrderService;\r\n id!: number;\r\n\r\n constructor(data?: IOrderServiceItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.orderId = _data[\"orderId\"];\r\n this.serviceId = _data[\"serviceId\"];\r\n this.order = _data[\"order\"] ? Order.fromJS(_data[\"order\"]) : undefined;\r\n this.service = _data[\"service\"] ? OrderService.fromJS(_data[\"service\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderServiceItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderServiceItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"orderId\"] = this.orderId;\r\n data[\"serviceId\"] = this.serviceId;\r\n data[\"order\"] = this.order ? this.order.toJSON() : undefined;\r\n data[\"service\"] = this.service ? this.service.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderServiceItem {\r\n orderId: number;\r\n serviceId: number;\r\n order: Order;\r\n service: OrderService;\r\n id: number;\r\n}\r\n\r\nexport class OrderServiceItemDto implements IOrderServiceItemDto {\r\n externalId!: string | undefined;\r\n serviceName!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IOrderServiceItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.externalId = _data[\"externalId\"];\r\n this.serviceName = _data[\"serviceName\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderServiceItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderServiceItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"externalId\"] = this.externalId;\r\n data[\"serviceName\"] = this.serviceName;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderServiceItemDto {\r\n externalId: string | undefined;\r\n serviceName: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport enum OrderServiceType {\r\n Unknown = 0,\r\n Shipment = 1,\r\n Order = 2,\r\n OrderLine = 3,\r\n}\r\n\r\nexport enum OrderType {\r\n Import = 0,\r\n Export = 1,\r\n Domestic = 2,\r\n Unknown = -1,\r\n}\r\n\r\nexport class OrganizationConnectionItemDto implements IOrganizationConnectionItemDto {\r\n name!: string | undefined;\r\n wmsConnectionId!: number;\r\n inventoryManagerId!: number;\r\n id!: number;\r\n\r\n constructor(data?: IOrganizationConnectionItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.inventoryManagerId = _data[\"inventoryManagerId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrganizationConnectionItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrganizationConnectionItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"inventoryManagerId\"] = this.inventoryManagerId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrganizationConnectionItemDto {\r\n name: string | undefined;\r\n wmsConnectionId: number;\r\n inventoryManagerId: number;\r\n id: number;\r\n}\r\n\r\nexport class OrganizationUnitDto implements IOrganizationUnitDto {\r\n parentId!: number | undefined;\r\n code!: string | undefined;\r\n displayName!: string | undefined;\r\n memberCount!: number;\r\n roleCount!: number;\r\n lastModificationTime!: DateTime | undefined;\r\n lastModifierUserId!: number | undefined;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IOrganizationUnitDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.parentId = _data[\"parentId\"];\r\n this.code = _data[\"code\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.memberCount = _data[\"memberCount\"];\r\n this.roleCount = _data[\"roleCount\"];\r\n this.lastModificationTime = _data[\"lastModificationTime\"] ? DateTime.fromISO(_data[\"lastModificationTime\"].toString()) : undefined;\r\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrganizationUnitDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrganizationUnitDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"parentId\"] = this.parentId;\r\n data[\"code\"] = this.code;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"memberCount\"] = this.memberCount;\r\n data[\"roleCount\"] = this.roleCount;\r\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toString() : undefined;\r\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrganizationUnitDto {\r\n parentId: number | undefined;\r\n code: string | undefined;\r\n displayName: string | undefined;\r\n memberCount: number;\r\n roleCount: number;\r\n lastModificationTime: DateTime | undefined;\r\n lastModifierUserId: number | undefined;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class OrganizationUnitRoleListDto implements IOrganizationUnitRoleListDto {\r\n displayName!: string | undefined;\r\n name!: string | undefined;\r\n addedTime!: DateTime;\r\n id!: number;\r\n\r\n constructor(data?: IOrganizationUnitRoleListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.displayName = _data[\"displayName\"];\r\n this.name = _data[\"name\"];\r\n this.addedTime = _data[\"addedTime\"] ? DateTime.fromISO(_data[\"addedTime\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrganizationUnitRoleListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrganizationUnitRoleListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"displayName\"] = this.displayName;\r\n data[\"name\"] = this.name;\r\n data[\"addedTime\"] = this.addedTime ? this.addedTime.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrganizationUnitRoleListDto {\r\n displayName: string | undefined;\r\n name: string | undefined;\r\n addedTime: DateTime;\r\n id: number;\r\n}\r\n\r\nexport class OrganizationUnitUserListDto implements IOrganizationUnitUserListDto {\r\n name!: string | undefined;\r\n surname!: string | undefined;\r\n userName!: string | undefined;\r\n emailAddress!: string | undefined;\r\n profilePictureId!: string | undefined;\r\n addedTime!: DateTime;\r\n id!: number;\r\n\r\n constructor(data?: IOrganizationUnitUserListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.surname = _data[\"surname\"];\r\n this.userName = _data[\"userName\"];\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.profilePictureId = _data[\"profilePictureId\"];\r\n this.addedTime = _data[\"addedTime\"] ? DateTime.fromISO(_data[\"addedTime\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrganizationUnitUserListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrganizationUnitUserListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"surname\"] = this.surname;\r\n data[\"userName\"] = this.userName;\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"profilePictureId\"] = this.profilePictureId;\r\n data[\"addedTime\"] = this.addedTime ? this.addedTime.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrganizationUnitUserListDto {\r\n name: string | undefined;\r\n surname: string | undefined;\r\n userName: string | undefined;\r\n emailAddress: string | undefined;\r\n profilePictureId: string | undefined;\r\n addedTime: DateTime;\r\n id: number;\r\n}\r\n\r\nexport class OtherSettingsEditDto implements IOtherSettingsEditDto {\r\n isQuickThemeSelectEnabled!: boolean;\r\n\r\n constructor(data?: IOtherSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isQuickThemeSelectEnabled = _data[\"isQuickThemeSelectEnabled\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OtherSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OtherSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isQuickThemeSelectEnabled\"] = this.isQuickThemeSelectEnabled;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOtherSettingsEditDto {\r\n isQuickThemeSelectEnabled: boolean;\r\n}\r\n\r\nexport class OutboundShipmentAvailableItemDto implements IOutboundShipmentAvailableItemDto {\r\n onHandQty!: number;\r\n availableAfterReservedQty!: number;\r\n externalId!: string | undefined;\r\n name!: string | undefined;\r\n unitOfMeasure!: string | undefined;\r\n netWeight!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IOutboundShipmentAvailableItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.onHandQty = _data[\"onHandQty\"];\r\n this.availableAfterReservedQty = _data[\"availableAfterReservedQty\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.name = _data[\"name\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n this.netWeight = _data[\"netWeight\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OutboundShipmentAvailableItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OutboundShipmentAvailableItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"onHandQty\"] = this.onHandQty;\r\n data[\"availableAfterReservedQty\"] = this.availableAfterReservedQty;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"name\"] = this.name;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n data[\"netWeight\"] = this.netWeight;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOutboundShipmentAvailableItemDto {\r\n onHandQty: number;\r\n availableAfterReservedQty: number;\r\n externalId: string | undefined;\r\n name: string | undefined;\r\n unitOfMeasure: string | undefined;\r\n netWeight: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class Page implements IPage {\r\n id!: string | undefined;\r\n name!: string | undefined;\r\n widgets!: Widget[] | undefined;\r\n\r\n constructor(data?: IPage) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"widgets\"])) {\r\n this.widgets = [] as any;\r\n for (let item of _data[\"widgets\"])\r\n this.widgets!.push(Widget.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): Page {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Page();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.widgets)) {\r\n data[\"widgets\"] = [];\r\n for (let item of this.widgets)\r\n data[\"widgets\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPage {\r\n id: string | undefined;\r\n name: string | undefined;\r\n widgets: Widget[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfAuditLogListDto implements IPagedResultDtoOfAuditLogListDto {\r\n totalCount!: number;\r\n items!: AuditLogListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfAuditLogListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(AuditLogListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfAuditLogListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfAuditLogListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfAuditLogListDto {\r\n totalCount: number;\r\n items: AuditLogListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfEntityChangeListDto implements IPagedResultDtoOfEntityChangeListDto {\r\n totalCount!: number;\r\n items!: EntityChangeListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfEntityChangeListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(EntityChangeListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfEntityChangeListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfEntityChangeListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfEntityChangeListDto {\r\n totalCount: number;\r\n items: EntityChangeListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfGetAllSendAttemptsOutput implements IPagedResultDtoOfGetAllSendAttemptsOutput {\r\n totalCount!: number;\r\n items!: GetAllSendAttemptsOutput[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfGetAllSendAttemptsOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetAllSendAttemptsOutput.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfGetAllSendAttemptsOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfGetAllSendAttemptsOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfGetAllSendAttemptsOutput {\r\n totalCount: number;\r\n items: GetAllSendAttemptsOutput[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfLanguageTextListDto implements IPagedResultDtoOfLanguageTextListDto {\r\n totalCount!: number;\r\n items!: LanguageTextListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfLanguageTextListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(LanguageTextListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfLanguageTextListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfLanguageTextListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfLanguageTextListDto {\r\n totalCount: number;\r\n items: LanguageTextListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfLinkedUserDto implements IPagedResultDtoOfLinkedUserDto {\r\n totalCount!: number;\r\n items!: LinkedUserDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfLinkedUserDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(LinkedUserDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfLinkedUserDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfLinkedUserDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfLinkedUserDto {\r\n totalCount: number;\r\n items: LinkedUserDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfMassNotificationOrganizationUnitLookupTableDto implements IPagedResultDtoOfMassNotificationOrganizationUnitLookupTableDto {\r\n totalCount!: number;\r\n items!: MassNotificationOrganizationUnitLookupTableDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfMassNotificationOrganizationUnitLookupTableDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(MassNotificationOrganizationUnitLookupTableDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfMassNotificationOrganizationUnitLookupTableDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfMassNotificationOrganizationUnitLookupTableDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfMassNotificationOrganizationUnitLookupTableDto {\r\n totalCount: number;\r\n items: MassNotificationOrganizationUnitLookupTableDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfMassNotificationUserLookupTableDto implements IPagedResultDtoOfMassNotificationUserLookupTableDto {\r\n totalCount!: number;\r\n items!: MassNotificationUserLookupTableDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfMassNotificationUserLookupTableDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(MassNotificationUserLookupTableDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfMassNotificationUserLookupTableDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfMassNotificationUserLookupTableDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfMassNotificationUserLookupTableDto {\r\n totalCount: number;\r\n items: MassNotificationUserLookupTableDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfNameValueDto implements IPagedResultDtoOfNameValueDto {\r\n totalCount!: number;\r\n items!: NameValueDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfNameValueDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(NameValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfNameValueDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfNameValueDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfNameValueDto {\r\n totalCount: number;\r\n items: NameValueDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfOrderListDto implements IPagedResultDtoOfOrderListDto {\r\n totalCount!: number;\r\n items!: OrderListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfOrderListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(OrderListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfOrderListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfOrderListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfOrderListDto {\r\n totalCount: number;\r\n items: OrderListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfOrganizationUnitRoleListDto implements IPagedResultDtoOfOrganizationUnitRoleListDto {\r\n totalCount!: number;\r\n items!: OrganizationUnitRoleListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfOrganizationUnitRoleListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(OrganizationUnitRoleListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfOrganizationUnitRoleListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfOrganizationUnitRoleListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfOrganizationUnitRoleListDto {\r\n totalCount: number;\r\n items: OrganizationUnitRoleListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfOrganizationUnitUserListDto implements IPagedResultDtoOfOrganizationUnitUserListDto {\r\n totalCount!: number;\r\n items!: OrganizationUnitUserListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfOrganizationUnitUserListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(OrganizationUnitUserListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfOrganizationUnitUserListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfOrganizationUnitUserListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfOrganizationUnitUserListDto {\r\n totalCount: number;\r\n items: OrganizationUnitUserListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfSubscriptionPaymentListDto implements IPagedResultDtoOfSubscriptionPaymentListDto {\r\n totalCount!: number;\r\n items!: SubscriptionPaymentListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfSubscriptionPaymentListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(SubscriptionPaymentListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfSubscriptionPaymentListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfSubscriptionPaymentListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfSubscriptionPaymentListDto {\r\n totalCount: number;\r\n items: SubscriptionPaymentListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfTenantListDto implements IPagedResultDtoOfTenantListDto {\r\n totalCount!: number;\r\n items!: TenantListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfTenantListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(TenantListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfTenantListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfTenantListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfTenantListDto {\r\n totalCount: number;\r\n items: TenantListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfUserDelegationDto implements IPagedResultDtoOfUserDelegationDto {\r\n totalCount!: number;\r\n items!: UserDelegationDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfUserDelegationDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(UserDelegationDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfUserDelegationDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfUserDelegationDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfUserDelegationDto {\r\n totalCount: number;\r\n items: UserDelegationDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfUserListDto implements IPagedResultDtoOfUserListDto {\r\n totalCount!: number;\r\n items!: UserListDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfUserListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(UserListDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfUserListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfUserListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfUserListDto {\r\n totalCount: number;\r\n items: UserListDto[] | undefined;\r\n}\r\n\r\nexport class PagedResultDtoOfUserLoginAttemptDto implements IPagedResultDtoOfUserLoginAttemptDto {\r\n totalCount!: number;\r\n items!: UserLoginAttemptDto[] | undefined;\r\n\r\n constructor(data?: IPagedResultDtoOfUserLoginAttemptDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(UserLoginAttemptDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedResultDtoOfUserLoginAttemptDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedResultDtoOfUserLoginAttemptDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedResultDtoOfUserLoginAttemptDto {\r\n totalCount: number;\r\n items: UserLoginAttemptDto[] | undefined;\r\n}\r\n\r\nexport class PasswordComplexitySetting implements IPasswordComplexitySetting {\r\n readonly allowedMinimumLength!: number;\r\n requireDigit!: boolean;\r\n requireLowercase!: boolean;\r\n requireNonAlphanumeric!: boolean;\r\n requireUppercase!: boolean;\r\n requiredLength!: number;\r\n\r\n constructor(data?: IPasswordComplexitySetting) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n (this).allowedMinimumLength = _data[\"allowedMinimumLength\"];\r\n this.requireDigit = _data[\"requireDigit\"];\r\n this.requireLowercase = _data[\"requireLowercase\"];\r\n this.requireNonAlphanumeric = _data[\"requireNonAlphanumeric\"];\r\n this.requireUppercase = _data[\"requireUppercase\"];\r\n this.requiredLength = _data[\"requiredLength\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PasswordComplexitySetting {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PasswordComplexitySetting();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"allowedMinimumLength\"] = this.allowedMinimumLength;\r\n data[\"requireDigit\"] = this.requireDigit;\r\n data[\"requireLowercase\"] = this.requireLowercase;\r\n data[\"requireNonAlphanumeric\"] = this.requireNonAlphanumeric;\r\n data[\"requireUppercase\"] = this.requireUppercase;\r\n data[\"requiredLength\"] = this.requiredLength;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPasswordComplexitySetting {\r\n allowedMinimumLength: number;\r\n requireDigit: boolean;\r\n requireLowercase: boolean;\r\n requireNonAlphanumeric: boolean;\r\n requireUppercase: boolean;\r\n requiredLength: number;\r\n}\r\n\r\nexport class PayPalConfigurationDto implements IPayPalConfigurationDto {\r\n clientId!: string | undefined;\r\n demoUsername!: string | undefined;\r\n demoPassword!: string | undefined;\r\n disabledFundings!: string[] | undefined;\r\n\r\n constructor(data?: IPayPalConfigurationDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.demoUsername = _data[\"demoUsername\"];\r\n this.demoPassword = _data[\"demoPassword\"];\r\n if (Array.isArray(_data[\"disabledFundings\"])) {\r\n this.disabledFundings = [] as any;\r\n for (let item of _data[\"disabledFundings\"])\r\n this.disabledFundings!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PayPalConfigurationDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PayPalConfigurationDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"demoUsername\"] = this.demoUsername;\r\n data[\"demoPassword\"] = this.demoPassword;\r\n if (Array.isArray(this.disabledFundings)) {\r\n data[\"disabledFundings\"] = [];\r\n for (let item of this.disabledFundings)\r\n data[\"disabledFundings\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPayPalConfigurationDto {\r\n clientId: string | undefined;\r\n demoUsername: string | undefined;\r\n demoPassword: string | undefined;\r\n disabledFundings: string[] | undefined;\r\n}\r\n\r\nexport class PaymentGatewayModel implements IPaymentGatewayModel {\r\n gatewayType!: SubscriptionPaymentGatewayType;\r\n supportsRecurringPayments!: boolean;\r\n\r\n constructor(data?: IPaymentGatewayModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gatewayType = _data[\"gatewayType\"];\r\n this.supportsRecurringPayments = _data[\"supportsRecurringPayments\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PaymentGatewayModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PaymentGatewayModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gatewayType\"] = this.gatewayType;\r\n data[\"supportsRecurringPayments\"] = this.supportsRecurringPayments;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPaymentGatewayModel {\r\n gatewayType: SubscriptionPaymentGatewayType;\r\n supportsRecurringPayments: boolean;\r\n}\r\n\r\nexport class PaymentInfoDto implements IPaymentInfoDto {\r\n edition!: EditionSelectDto;\r\n additionalPrice!: number;\r\n\r\n constructor(data?: IPaymentInfoDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.edition = _data[\"edition\"] ? EditionSelectDto.fromJS(_data[\"edition\"]) : undefined;\r\n this.additionalPrice = _data[\"additionalPrice\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PaymentInfoDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PaymentInfoDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"edition\"] = this.edition ? this.edition.toJSON() : undefined;\r\n data[\"additionalPrice\"] = this.additionalPrice;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPaymentInfoDto {\r\n edition: EditionSelectDto;\r\n additionalPrice: number;\r\n}\r\n\r\nexport enum PaymentPeriodType {\r\n Daily = 1,\r\n Weekly = 7,\r\n Monthly = 30,\r\n Annual = 365,\r\n}\r\n\r\nexport class PendingOrderLineListDto implements IPendingOrderLineListDto {\r\n orderId!: string | undefined;\r\n orderDateCreated!: DateTime;\r\n appointmentStartDate!: DateTime | undefined;\r\n warehouseId!: number;\r\n orderExternalId!: string | undefined;\r\n customerProvidedExternalId!: string | undefined;\r\n purchaseOrderNumber!: string | undefined;\r\n externalId!: string | undefined;\r\n itemExternalId!: string | undefined;\r\n itemName!: string | undefined;\r\n inventoryStatus!: string | undefined;\r\n trackingNumber!: string | undefined;\r\n lotNumber!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n inboundCustomerPONumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n expirationDate!: string | undefined;\r\n externalPalletId!: string | undefined;\r\n inboundEquipmentNumber!: string | undefined;\r\n shippingMark!: string | undefined;\r\n itemUnitOfMeasure!: string | undefined;\r\n itemNetWeight!: number | undefined;\r\n lineNumber!: string | undefined;\r\n quantityExpected!: number;\r\n quantityProcessed!: number;\r\n allocationMethod!: string | undefined;\r\n casesInInv!: number;\r\n totalOrdered!: number;\r\n availableToPromise!: number;\r\n id!: number;\r\n\r\n constructor(data?: IPendingOrderLineListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.orderId = _data[\"orderId\"];\r\n this.orderDateCreated = _data[\"orderDateCreated\"] ? DateTime.fromISO(_data[\"orderDateCreated\"].toString()) : undefined;\r\n this.appointmentStartDate = _data[\"appointmentStartDate\"] ? DateTime.fromISO(_data[\"appointmentStartDate\"].toString()) : undefined;\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.orderExternalId = _data[\"orderExternalId\"];\r\n this.customerProvidedExternalId = _data[\"customerProvidedExternalId\"];\r\n this.purchaseOrderNumber = _data[\"purchaseOrderNumber\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.itemExternalId = _data[\"itemExternalId\"];\r\n this.itemName = _data[\"itemName\"];\r\n this.inventoryStatus = _data[\"inventoryStatus\"];\r\n this.trackingNumber = _data[\"trackingNumber\"];\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.inboundCustomerPONumber = _data[\"inboundCustomerPONumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.expirationDate = _data[\"expirationDate\"];\r\n this.externalPalletId = _data[\"externalPalletId\"];\r\n this.inboundEquipmentNumber = _data[\"inboundEquipmentNumber\"];\r\n this.shippingMark = _data[\"shippingMark\"];\r\n this.itemUnitOfMeasure = _data[\"itemUnitOfMeasure\"];\r\n this.itemNetWeight = _data[\"itemNetWeight\"];\r\n this.lineNumber = _data[\"lineNumber\"];\r\n this.quantityExpected = _data[\"quantityExpected\"];\r\n this.quantityProcessed = _data[\"quantityProcessed\"];\r\n this.allocationMethod = _data[\"allocationMethod\"];\r\n this.casesInInv = _data[\"casesInInv\"];\r\n this.totalOrdered = _data[\"totalOrdered\"];\r\n this.availableToPromise = _data[\"availableToPromise\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PendingOrderLineListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PendingOrderLineListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"orderId\"] = this.orderId;\r\n data[\"orderDateCreated\"] = this.orderDateCreated ? this.orderDateCreated.toString() : undefined;\r\n data[\"appointmentStartDate\"] = this.appointmentStartDate ? this.appointmentStartDate.toString() : undefined;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"orderExternalId\"] = this.orderExternalId;\r\n data[\"customerProvidedExternalId\"] = this.customerProvidedExternalId;\r\n data[\"purchaseOrderNumber\"] = this.purchaseOrderNumber;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"itemExternalId\"] = this.itemExternalId;\r\n data[\"itemName\"] = this.itemName;\r\n data[\"inventoryStatus\"] = this.inventoryStatus;\r\n data[\"trackingNumber\"] = this.trackingNumber;\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"inboundCustomerPONumber\"] = this.inboundCustomerPONumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"expirationDate\"] = this.expirationDate;\r\n data[\"externalPalletId\"] = this.externalPalletId;\r\n data[\"inboundEquipmentNumber\"] = this.inboundEquipmentNumber;\r\n data[\"shippingMark\"] = this.shippingMark;\r\n data[\"itemUnitOfMeasure\"] = this.itemUnitOfMeasure;\r\n data[\"itemNetWeight\"] = this.itemNetWeight;\r\n data[\"lineNumber\"] = this.lineNumber;\r\n data[\"quantityExpected\"] = this.quantityExpected;\r\n data[\"quantityProcessed\"] = this.quantityProcessed;\r\n data[\"allocationMethod\"] = this.allocationMethod;\r\n data[\"casesInInv\"] = this.casesInInv;\r\n data[\"totalOrdered\"] = this.totalOrdered;\r\n data[\"availableToPromise\"] = this.availableToPromise;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPendingOrderLineListDto {\r\n orderId: string | undefined;\r\n orderDateCreated: DateTime;\r\n appointmentStartDate: DateTime | undefined;\r\n warehouseId: number;\r\n orderExternalId: string | undefined;\r\n customerProvidedExternalId: string | undefined;\r\n purchaseOrderNumber: string | undefined;\r\n externalId: string | undefined;\r\n itemExternalId: string | undefined;\r\n itemName: string | undefined;\r\n inventoryStatus: string | undefined;\r\n trackingNumber: string | undefined;\r\n lotNumber: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n inboundCustomerPONumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n expirationDate: string | undefined;\r\n externalPalletId: string | undefined;\r\n inboundEquipmentNumber: string | undefined;\r\n shippingMark: string | undefined;\r\n itemUnitOfMeasure: string | undefined;\r\n itemNetWeight: number | undefined;\r\n lineNumber: string | undefined;\r\n quantityExpected: number;\r\n quantityProcessed: number;\r\n allocationMethod: string | undefined;\r\n casesInInv: number;\r\n totalOrdered: number;\r\n availableToPromise: number;\r\n id: number;\r\n}\r\n\r\nexport class RecentTenant implements IRecentTenant {\r\n id!: number;\r\n name!: string | undefined;\r\n creationTime!: DateTime;\r\n\r\n constructor(data?: IRecentTenant) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecentTenant {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecentTenant();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecentTenant {\r\n id: number;\r\n name: string | undefined;\r\n creationTime: DateTime;\r\n}\r\n\r\nexport class RecurringAppointmentSettings implements IRecurringAppointmentSettings {\r\n warehouseId!: number;\r\n warehouse!: Warehouse;\r\n clientId!: number;\r\n client!: Client;\r\n startDate!: string;\r\n endDate!: string;\r\n timeSlotStart!: string;\r\n timeSlotEnd!: string;\r\n repeatOnDaysOfWeek!: DayOfWeekFlags;\r\n repeatCycleWeeks!: RecurringAppointmentSettingsRepeatCycleWeeks;\r\n id!: string;\r\n\r\n constructor(data?: IRecurringAppointmentSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.warehouse = _data[\"warehouse\"] ? Warehouse.fromJS(_data[\"warehouse\"]) : undefined;\r\n this.clientId = _data[\"clientId\"];\r\n this.client = _data[\"client\"] ? Client.fromJS(_data[\"client\"]) : undefined;\r\n this.startDate = _data[\"startDate\"];\r\n this.endDate = _data[\"endDate\"];\r\n this.timeSlotStart = _data[\"timeSlotStart\"];\r\n this.timeSlotEnd = _data[\"timeSlotEnd\"];\r\n this.repeatOnDaysOfWeek = _data[\"repeatOnDaysOfWeek\"];\r\n this.repeatCycleWeeks = _data[\"repeatCycleWeeks\"] ? RecurringAppointmentSettingsRepeatCycleWeeks.fromJS(_data[\"repeatCycleWeeks\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecurringAppointmentSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecurringAppointmentSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"warehouse\"] = this.warehouse ? this.warehouse.toJSON() : undefined;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"client\"] = this.client ? this.client.toJSON() : undefined;\r\n data[\"startDate\"] = this.startDate;\r\n data[\"endDate\"] = this.endDate;\r\n data[\"timeSlotStart\"] = this.timeSlotStart;\r\n data[\"timeSlotEnd\"] = this.timeSlotEnd;\r\n data[\"repeatOnDaysOfWeek\"] = this.repeatOnDaysOfWeek;\r\n data[\"repeatCycleWeeks\"] = this.repeatCycleWeeks ? this.repeatCycleWeeks.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecurringAppointmentSettings {\r\n warehouseId: number;\r\n warehouse: Warehouse;\r\n clientId: number;\r\n client: Client;\r\n startDate: string;\r\n endDate: string;\r\n timeSlotStart: string;\r\n timeSlotEnd: string;\r\n repeatOnDaysOfWeek: DayOfWeekFlags;\r\n repeatCycleWeeks: RecurringAppointmentSettingsRepeatCycleWeeks;\r\n id: string;\r\n}\r\n\r\nexport class RecurringAppointmentSettingsCreateOrUpdateInput implements IRecurringAppointmentSettingsCreateOrUpdateInput {\r\n id!: string | undefined;\r\n warehouseId!: number;\r\n clientId!: number;\r\n date!: DateTimeRangeDto;\r\n timeSlot!: TimeSpanRangeDto;\r\n repeatOnDaysOfWeek!: DayOfWeekFlags;\r\n repeatCycleWeeks!: number;\r\n\r\n constructor(data?: IRecurringAppointmentSettingsCreateOrUpdateInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.date = new DateTimeRangeDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.clientId = _data[\"clientId\"];\r\n this.date = _data[\"date\"] ? DateTimeRangeDto.fromJS(_data[\"date\"]) : new DateTimeRangeDto();\r\n this.timeSlot = _data[\"timeSlot\"] ? TimeSpanRangeDto.fromJS(_data[\"timeSlot\"]) : undefined;\r\n this.repeatOnDaysOfWeek = _data[\"repeatOnDaysOfWeek\"];\r\n this.repeatCycleWeeks = _data[\"repeatCycleWeeks\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecurringAppointmentSettingsCreateOrUpdateInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecurringAppointmentSettingsCreateOrUpdateInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"date\"] = this.date ? this.date.toJSON() : undefined;\r\n data[\"timeSlot\"] = this.timeSlot ? this.timeSlot.toJSON() : undefined;\r\n data[\"repeatOnDaysOfWeek\"] = this.repeatOnDaysOfWeek;\r\n data[\"repeatCycleWeeks\"] = this.repeatCycleWeeks;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecurringAppointmentSettingsCreateOrUpdateInput {\r\n id: string | undefined;\r\n warehouseId: number;\r\n clientId: number;\r\n date: DateTimeRangeDto;\r\n timeSlot: TimeSpanRangeDto;\r\n repeatOnDaysOfWeek: DayOfWeekFlags;\r\n repeatCycleWeeks: number;\r\n}\r\n\r\nexport class RecurringAppointmentSettingsDto implements IRecurringAppointmentSettingsDto {\r\n warehouseId!: number;\r\n clientId!: number;\r\n date!: DateTimeRangeDto;\r\n timeSlot!: TimeSpanRangeDto;\r\n repeatOnDaysOfWeek!: DayOfWeekFlags;\r\n repeatCycleWeeks!: number;\r\n id!: string;\r\n\r\n constructor(data?: IRecurringAppointmentSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.clientId = _data[\"clientId\"];\r\n this.date = _data[\"date\"] ? DateTimeRangeDto.fromJS(_data[\"date\"]) : undefined;\r\n this.timeSlot = _data[\"timeSlot\"] ? TimeSpanRangeDto.fromJS(_data[\"timeSlot\"]) : undefined;\r\n this.repeatOnDaysOfWeek = _data[\"repeatOnDaysOfWeek\"];\r\n this.repeatCycleWeeks = _data[\"repeatCycleWeeks\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecurringAppointmentSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecurringAppointmentSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"clientId\"] = this.clientId;\r\n data[\"date\"] = this.date ? this.date.toJSON() : undefined;\r\n data[\"timeSlot\"] = this.timeSlot ? this.timeSlot.toJSON() : undefined;\r\n data[\"repeatOnDaysOfWeek\"] = this.repeatOnDaysOfWeek;\r\n data[\"repeatCycleWeeks\"] = this.repeatCycleWeeks;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecurringAppointmentSettingsDto {\r\n warehouseId: number;\r\n clientId: number;\r\n date: DateTimeRangeDto;\r\n timeSlot: TimeSpanRangeDto;\r\n repeatOnDaysOfWeek: DayOfWeekFlags;\r\n repeatCycleWeeks: number;\r\n id: string;\r\n}\r\n\r\nexport class RecurringAppointmentSettingsRepeatCycleWeeks implements IRecurringAppointmentSettingsRepeatCycleWeeks {\r\n numberOfWeeks!: number;\r\n\r\n constructor(data?: IRecurringAppointmentSettingsRepeatCycleWeeks) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.numberOfWeeks = _data[\"numberOfWeeks\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecurringAppointmentSettingsRepeatCycleWeeks {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecurringAppointmentSettingsRepeatCycleWeeks();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"numberOfWeeks\"] = this.numberOfWeeks;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecurringAppointmentSettingsRepeatCycleWeeks {\r\n numberOfWeeks: number;\r\n}\r\n\r\nexport class RefreshTokenResult implements IRefreshTokenResult {\r\n accessToken!: string | undefined;\r\n encryptedAccessToken!: string | undefined;\r\n expireInSeconds!: number;\r\n\r\n constructor(data?: IRefreshTokenResult) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.accessToken = _data[\"accessToken\"];\r\n this.encryptedAccessToken = _data[\"encryptedAccessToken\"];\r\n this.expireInSeconds = _data[\"expireInSeconds\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RefreshTokenResult {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RefreshTokenResult();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"accessToken\"] = this.accessToken;\r\n data[\"encryptedAccessToken\"] = this.encryptedAccessToken;\r\n data[\"expireInSeconds\"] = this.expireInSeconds;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRefreshTokenResult {\r\n accessToken: string | undefined;\r\n encryptedAccessToken: string | undefined;\r\n expireInSeconds: number;\r\n}\r\n\r\nexport class RegionalStatCountry implements IRegionalStatCountry {\r\n countryName!: string | undefined;\r\n sales!: number;\r\n change!: number[] | undefined;\r\n averagePrice!: number;\r\n totalPrice!: number;\r\n\r\n constructor(data?: IRegionalStatCountry) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.countryName = _data[\"countryName\"];\r\n this.sales = _data[\"sales\"];\r\n if (Array.isArray(_data[\"change\"])) {\r\n this.change = [] as any;\r\n for (let item of _data[\"change\"])\r\n this.change!.push(item);\r\n }\r\n this.averagePrice = _data[\"averagePrice\"];\r\n this.totalPrice = _data[\"totalPrice\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RegionalStatCountry {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RegionalStatCountry();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"countryName\"] = this.countryName;\r\n data[\"sales\"] = this.sales;\r\n if (Array.isArray(this.change)) {\r\n data[\"change\"] = [];\r\n for (let item of this.change)\r\n data[\"change\"].push(item);\r\n }\r\n data[\"averagePrice\"] = this.averagePrice;\r\n data[\"totalPrice\"] = this.totalPrice;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRegionalStatCountry {\r\n countryName: string | undefined;\r\n sales: number;\r\n change: number[] | undefined;\r\n averagePrice: number;\r\n totalPrice: number;\r\n}\r\n\r\nexport class RegisterTenantInput implements IRegisterTenantInput {\r\n tenancyName!: string;\r\n name!: string;\r\n adminEmailAddress!: string;\r\n adminName!: string | undefined;\r\n adminSurname!: string | undefined;\r\n adminPassword!: string | undefined;\r\n captchaResponse!: string | undefined;\r\n subscriptionStartType!: SubscriptionStartType;\r\n editionId!: number | undefined;\r\n\r\n constructor(data?: IRegisterTenantInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.name = _data[\"name\"];\r\n this.adminEmailAddress = _data[\"adminEmailAddress\"];\r\n this.adminName = _data[\"adminName\"];\r\n this.adminSurname = _data[\"adminSurname\"];\r\n this.adminPassword = _data[\"adminPassword\"];\r\n this.captchaResponse = _data[\"captchaResponse\"];\r\n this.subscriptionStartType = _data[\"subscriptionStartType\"];\r\n this.editionId = _data[\"editionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RegisterTenantInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RegisterTenantInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"name\"] = this.name;\r\n data[\"adminEmailAddress\"] = this.adminEmailAddress;\r\n data[\"adminName\"] = this.adminName;\r\n data[\"adminSurname\"] = this.adminSurname;\r\n data[\"adminPassword\"] = this.adminPassword;\r\n data[\"captchaResponse\"] = this.captchaResponse;\r\n data[\"subscriptionStartType\"] = this.subscriptionStartType;\r\n data[\"editionId\"] = this.editionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRegisterTenantInput {\r\n tenancyName: string;\r\n name: string;\r\n adminEmailAddress: string;\r\n adminName: string | undefined;\r\n adminSurname: string | undefined;\r\n adminPassword: string | undefined;\r\n captchaResponse: string | undefined;\r\n subscriptionStartType: SubscriptionStartType;\r\n editionId: number | undefined;\r\n}\r\n\r\nexport class RegisterTenantOutput implements IRegisterTenantOutput {\r\n tenantId!: number;\r\n tenancyName!: string | undefined;\r\n name!: string | undefined;\r\n userName!: string | undefined;\r\n emailAddress!: string | undefined;\r\n isTenantActive!: boolean;\r\n isActive!: boolean;\r\n isEmailConfirmationRequired!: boolean;\r\n\r\n constructor(data?: IRegisterTenantOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.name = _data[\"name\"];\r\n this.userName = _data[\"userName\"];\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.isTenantActive = _data[\"isTenantActive\"];\r\n this.isActive = _data[\"isActive\"];\r\n this.isEmailConfirmationRequired = _data[\"isEmailConfirmationRequired\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RegisterTenantOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RegisterTenantOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"name\"] = this.name;\r\n data[\"userName\"] = this.userName;\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"isTenantActive\"] = this.isTenantActive;\r\n data[\"isActive\"] = this.isActive;\r\n data[\"isEmailConfirmationRequired\"] = this.isEmailConfirmationRequired;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRegisterTenantOutput {\r\n tenantId: number;\r\n tenancyName: string | undefined;\r\n name: string | undefined;\r\n userName: string | undefined;\r\n emailAddress: string | undefined;\r\n isTenantActive: boolean;\r\n isActive: boolean;\r\n isEmailConfirmationRequired: boolean;\r\n}\r\n\r\nexport class RenamePageInput implements IRenamePageInput {\r\n dashboardName!: string | undefined;\r\n id!: string | undefined;\r\n name!: string | undefined;\r\n application!: string | undefined;\r\n\r\n constructor(data?: IRenamePageInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.dashboardName = _data[\"dashboardName\"];\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.application = _data[\"application\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RenamePageInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RenamePageInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"dashboardName\"] = this.dashboardName;\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"application\"] = this.application;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRenamePageInput {\r\n dashboardName: string | undefined;\r\n id: string | undefined;\r\n name: string | undefined;\r\n application: string | undefined;\r\n}\r\n\r\nexport class ResetPasswordInput implements IResetPasswordInput {\r\n userId!: number;\r\n resetCode!: string | undefined;\r\n password!: string | undefined;\r\n returnUrl!: string | undefined;\r\n singleSignIn!: string | undefined;\r\n c!: string | undefined;\r\n\r\n constructor(data?: IResetPasswordInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.resetCode = _data[\"resetCode\"];\r\n this.password = _data[\"password\"];\r\n this.returnUrl = _data[\"returnUrl\"];\r\n this.singleSignIn = _data[\"singleSignIn\"];\r\n this.c = _data[\"c\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetPasswordInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResetPasswordInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"resetCode\"] = this.resetCode;\r\n data[\"password\"] = this.password;\r\n data[\"returnUrl\"] = this.returnUrl;\r\n data[\"singleSignIn\"] = this.singleSignIn;\r\n data[\"c\"] = this.c;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IResetPasswordInput {\r\n userId: number;\r\n resetCode: string | undefined;\r\n password: string | undefined;\r\n returnUrl: string | undefined;\r\n singleSignIn: string | undefined;\r\n c: string | undefined;\r\n}\r\n\r\nexport class ResetPasswordOutput implements IResetPasswordOutput {\r\n canLogin!: boolean;\r\n emailAddress!: string | undefined;\r\n accountNumberSpecified!: boolean;\r\n accountNumber!: string | undefined;\r\n\r\n constructor(data?: IResetPasswordOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.canLogin = _data[\"canLogin\"];\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.accountNumberSpecified = _data[\"accountNumberSpecified\"];\r\n this.accountNumber = _data[\"accountNumber\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetPasswordOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResetPasswordOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"canLogin\"] = this.canLogin;\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"accountNumberSpecified\"] = this.accountNumberSpecified;\r\n data[\"accountNumber\"] = this.accountNumber;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IResetPasswordOutput {\r\n canLogin: boolean;\r\n emailAddress: string | undefined;\r\n accountNumberSpecified: boolean;\r\n accountNumber: string | undefined;\r\n}\r\n\r\nexport class ResolveTenantIdInput implements IResolveTenantIdInput {\r\n c!: string | undefined;\r\n\r\n constructor(data?: IResolveTenantIdInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.c = _data[\"c\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResolveTenantIdInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResolveTenantIdInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"c\"] = this.c;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IResolveTenantIdInput {\r\n c: string | undefined;\r\n}\r\n\r\nexport class RoleEditDto implements IRoleEditDto {\r\n id!: number | undefined;\r\n displayName!: string;\r\n isDefault!: boolean;\r\n\r\n constructor(data?: IRoleEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.isDefault = _data[\"isDefault\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RoleEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RoleEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"isDefault\"] = this.isDefault;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRoleEditDto {\r\n id: number | undefined;\r\n displayName: string;\r\n isDefault: boolean;\r\n}\r\n\r\nexport class RoleListDto implements IRoleListDto {\r\n name!: string | undefined;\r\n displayName!: string | undefined;\r\n isStatic!: boolean;\r\n isDefault!: boolean;\r\n creationTime!: DateTime;\r\n id!: number;\r\n\r\n constructor(data?: IRoleListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.displayName = _data[\"displayName\"];\r\n this.isStatic = _data[\"isStatic\"];\r\n this.isDefault = _data[\"isDefault\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RoleListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RoleListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"displayName\"] = this.displayName;\r\n data[\"isStatic\"] = this.isStatic;\r\n data[\"isDefault\"] = this.isDefault;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRoleListDto {\r\n name: string | undefined;\r\n displayName: string | undefined;\r\n isStatic: boolean;\r\n isDefault: boolean;\r\n creationTime: DateTime;\r\n id: number;\r\n}\r\n\r\nexport class RolesToOrganizationUnitInput implements IRolesToOrganizationUnitInput {\r\n roleIds!: number[] | undefined;\r\n organizationUnitId!: number;\r\n\r\n constructor(data?: IRolesToOrganizationUnitInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"roleIds\"])) {\r\n this.roleIds = [] as any;\r\n for (let item of _data[\"roleIds\"])\r\n this.roleIds!.push(item);\r\n }\r\n this.organizationUnitId = _data[\"organizationUnitId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RolesToOrganizationUnitInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RolesToOrganizationUnitInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.roleIds)) {\r\n data[\"roleIds\"] = [];\r\n for (let item of this.roleIds)\r\n data[\"roleIds\"].push(item);\r\n }\r\n data[\"organizationUnitId\"] = this.organizationUnitId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRolesToOrganizationUnitInput {\r\n roleIds: number[] | undefined;\r\n organizationUnitId: number;\r\n}\r\n\r\nexport class SalesSummaryData implements ISalesSummaryData {\r\n period!: string | undefined;\r\n sales!: number;\r\n profit!: number;\r\n\r\n constructor(data?: ISalesSummaryData) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.period = _data[\"period\"];\r\n this.sales = _data[\"sales\"];\r\n this.profit = _data[\"profit\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SalesSummaryData {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SalesSummaryData();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"period\"] = this.period;\r\n data[\"sales\"] = this.sales;\r\n data[\"profit\"] = this.profit;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISalesSummaryData {\r\n period: string | undefined;\r\n sales: number;\r\n profit: number;\r\n}\r\n\r\nexport enum SalesSummaryDatePeriod {\r\n Daily = 1,\r\n Weekly = 2,\r\n Monthly = 3,\r\n}\r\n\r\nexport class SavePageInput implements ISavePageInput {\r\n dashboardName!: string | undefined;\r\n application!: string | undefined;\r\n pages!: Page[] | undefined;\r\n\r\n constructor(data?: ISavePageInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.dashboardName = _data[\"dashboardName\"];\r\n this.application = _data[\"application\"];\r\n if (Array.isArray(_data[\"pages\"])) {\r\n this.pages = [] as any;\r\n for (let item of _data[\"pages\"])\r\n this.pages!.push(Page.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SavePageInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SavePageInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"dashboardName\"] = this.dashboardName;\r\n data[\"application\"] = this.application;\r\n if (Array.isArray(this.pages)) {\r\n data[\"pages\"] = [];\r\n for (let item of this.pages)\r\n data[\"pages\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISavePageInput {\r\n dashboardName: string | undefined;\r\n application: string | undefined;\r\n pages: Page[] | undefined;\r\n}\r\n\r\nexport class SearchInfoDtoOfGuid implements ISearchInfoDtoOfGuid {\r\n name!: string | undefined;\r\n id!: string;\r\n\r\n constructor(data?: ISearchInfoDtoOfGuid) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SearchInfoDtoOfGuid {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SearchInfoDtoOfGuid();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISearchInfoDtoOfGuid {\r\n name: string | undefined;\r\n id: string;\r\n}\r\n\r\nexport class SearchInfoDtoOfInt64 implements ISearchInfoDtoOfInt64 {\r\n name!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ISearchInfoDtoOfInt64) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SearchInfoDtoOfInt64 {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SearchInfoDtoOfInt64();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISearchInfoDtoOfInt64 {\r\n name: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class SearchOutputDto implements ISearchOutputDto {\r\n shipments!: ShipmentSearchInfo[] | undefined;\r\n orders!: SearchInfoDtoOfInt64[] | undefined;\r\n inventories!: SearchInfoDtoOfGuid[] | undefined;\r\n\r\n constructor(data?: ISearchOutputDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"shipments\"])) {\r\n this.shipments = [] as any;\r\n for (let item of _data[\"shipments\"])\r\n this.shipments!.push(ShipmentSearchInfo.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"orders\"])) {\r\n this.orders = [] as any;\r\n for (let item of _data[\"orders\"])\r\n this.orders!.push(SearchInfoDtoOfInt64.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"inventories\"])) {\r\n this.inventories = [] as any;\r\n for (let item of _data[\"inventories\"])\r\n this.inventories!.push(SearchInfoDtoOfGuid.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SearchOutputDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SearchOutputDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.shipments)) {\r\n data[\"shipments\"] = [];\r\n for (let item of this.shipments)\r\n data[\"shipments\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.orders)) {\r\n data[\"orders\"] = [];\r\n for (let item of this.orders)\r\n data[\"orders\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.inventories)) {\r\n data[\"inventories\"] = [];\r\n for (let item of this.inventories)\r\n data[\"inventories\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISearchOutputDto {\r\n shipments: ShipmentSearchInfo[] | undefined;\r\n orders: SearchInfoDtoOfInt64[] | undefined;\r\n inventories: SearchInfoDtoOfGuid[] | undefined;\r\n}\r\n\r\nexport class SecuritySettingsEditDto implements ISecuritySettingsEditDto {\r\n allowOneConcurrentLoginPerUser!: boolean;\r\n useDefaultPasswordComplexitySettings!: boolean;\r\n passwordComplexity!: PasswordComplexitySetting;\r\n defaultPasswordComplexity!: PasswordComplexitySetting;\r\n userLockOut!: UserLockOutSettingsEditDto;\r\n twoFactorLogin!: TwoFactorLoginSettingsEditDto;\r\n\r\n constructor(data?: ISecuritySettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.allowOneConcurrentLoginPerUser = _data[\"allowOneConcurrentLoginPerUser\"];\r\n this.useDefaultPasswordComplexitySettings = _data[\"useDefaultPasswordComplexitySettings\"];\r\n this.passwordComplexity = _data[\"passwordComplexity\"] ? PasswordComplexitySetting.fromJS(_data[\"passwordComplexity\"]) : undefined;\r\n this.defaultPasswordComplexity = _data[\"defaultPasswordComplexity\"] ? PasswordComplexitySetting.fromJS(_data[\"defaultPasswordComplexity\"]) : undefined;\r\n this.userLockOut = _data[\"userLockOut\"] ? UserLockOutSettingsEditDto.fromJS(_data[\"userLockOut\"]) : undefined;\r\n this.twoFactorLogin = _data[\"twoFactorLogin\"] ? TwoFactorLoginSettingsEditDto.fromJS(_data[\"twoFactorLogin\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): SecuritySettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SecuritySettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"allowOneConcurrentLoginPerUser\"] = this.allowOneConcurrentLoginPerUser;\r\n data[\"useDefaultPasswordComplexitySettings\"] = this.useDefaultPasswordComplexitySettings;\r\n data[\"passwordComplexity\"] = this.passwordComplexity ? this.passwordComplexity.toJSON() : undefined;\r\n data[\"defaultPasswordComplexity\"] = this.defaultPasswordComplexity ? this.defaultPasswordComplexity.toJSON() : undefined;\r\n data[\"userLockOut\"] = this.userLockOut ? this.userLockOut.toJSON() : undefined;\r\n data[\"twoFactorLogin\"] = this.twoFactorLogin ? this.twoFactorLogin.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISecuritySettingsEditDto {\r\n allowOneConcurrentLoginPerUser: boolean;\r\n useDefaultPasswordComplexitySettings: boolean;\r\n passwordComplexity: PasswordComplexitySetting;\r\n defaultPasswordComplexity: PasswordComplexitySetting;\r\n userLockOut: UserLockOutSettingsEditDto;\r\n twoFactorLogin: TwoFactorLoginSettingsEditDto;\r\n}\r\n\r\nexport class SendAndGetDateWithTextInput implements ISendAndGetDateWithTextInput {\r\n text!: string | undefined;\r\n date!: DateTime;\r\n\r\n constructor(data?: ISendAndGetDateWithTextInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.text = _data[\"text\"];\r\n this.date = _data[\"date\"] ? DateTime.fromISO(_data[\"date\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): SendAndGetDateWithTextInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SendAndGetDateWithTextInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"text\"] = this.text;\r\n data[\"date\"] = this.date ? this.date.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISendAndGetDateWithTextInput {\r\n text: string | undefined;\r\n date: DateTime;\r\n}\r\n\r\nexport class SendEmailActivationLinkInput implements ISendEmailActivationLinkInput {\r\n emailAddress!: string;\r\n\r\n constructor(data?: ISendEmailActivationLinkInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.emailAddress = _data[\"emailAddress\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SendEmailActivationLinkInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SendEmailActivationLinkInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"emailAddress\"] = this.emailAddress;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISendEmailActivationLinkInput {\r\n emailAddress: string;\r\n}\r\n\r\nexport class SendPasswordResetCodeInput implements ISendPasswordResetCodeInput {\r\n emailAddress!: string;\r\n accountNumberSpecified!: boolean;\r\n accountNumber!: string | undefined;\r\n\r\n constructor(data?: ISendPasswordResetCodeInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.accountNumberSpecified = _data[\"accountNumberSpecified\"];\r\n this.accountNumber = _data[\"accountNumber\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SendPasswordResetCodeInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SendPasswordResetCodeInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"accountNumberSpecified\"] = this.accountNumberSpecified;\r\n data[\"accountNumber\"] = this.accountNumber;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISendPasswordResetCodeInput {\r\n emailAddress: string;\r\n accountNumberSpecified: boolean;\r\n accountNumber: string | undefined;\r\n}\r\n\r\nexport class SendTestEmailInput implements ISendTestEmailInput {\r\n emailAddress!: string;\r\n\r\n constructor(data?: ISendTestEmailInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.emailAddress = _data[\"emailAddress\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SendTestEmailInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SendTestEmailInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"emailAddress\"] = this.emailAddress;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISendTestEmailInput {\r\n emailAddress: string;\r\n}\r\n\r\nexport class SendTwoFactorAuthCodeModel implements ISendTwoFactorAuthCodeModel {\r\n userId!: number;\r\n provider!: string;\r\n\r\n constructor(data?: ISendTwoFactorAuthCodeModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.provider = _data[\"provider\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SendTwoFactorAuthCodeModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SendTwoFactorAuthCodeModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"provider\"] = this.provider;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISendTwoFactorAuthCodeModel {\r\n userId: number;\r\n provider: string;\r\n}\r\n\r\nexport class SendVerificationSmsInputDto implements ISendVerificationSmsInputDto {\r\n phoneNumber!: string | undefined;\r\n\r\n constructor(data?: ISendVerificationSmsInputDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.phoneNumber = _data[\"phoneNumber\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SendVerificationSmsInputDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SendVerificationSmsInputDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"phoneNumber\"] = this.phoneNumber;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISendVerificationSmsInputDto {\r\n phoneNumber: string | undefined;\r\n}\r\n\r\nexport class SessionTimeOutSettingsEditDto implements ISessionTimeOutSettingsEditDto {\r\n isEnabled!: boolean;\r\n timeOutSecond!: number;\r\n showTimeOutNotificationSecond!: number;\r\n showLockScreenWhenTimedOut!: boolean;\r\n\r\n constructor(data?: ISessionTimeOutSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isEnabled = _data[\"isEnabled\"];\r\n this.timeOutSecond = _data[\"timeOutSecond\"];\r\n this.showTimeOutNotificationSecond = _data[\"showTimeOutNotificationSecond\"];\r\n this.showLockScreenWhenTimedOut = _data[\"showLockScreenWhenTimedOut\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SessionTimeOutSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SessionTimeOutSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isEnabled\"] = this.isEnabled;\r\n data[\"timeOutSecond\"] = this.timeOutSecond;\r\n data[\"showTimeOutNotificationSecond\"] = this.showTimeOutNotificationSecond;\r\n data[\"showLockScreenWhenTimedOut\"] = this.showLockScreenWhenTimedOut;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISessionTimeOutSettingsEditDto {\r\n isEnabled: boolean;\r\n timeOutSecond: number;\r\n showTimeOutNotificationSecond: number;\r\n showLockScreenWhenTimedOut: boolean;\r\n}\r\n\r\nexport class SetDefaultLanguageInput implements ISetDefaultLanguageInput {\r\n name!: string;\r\n\r\n constructor(data?: ISetDefaultLanguageInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SetDefaultLanguageInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SetDefaultLanguageInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISetDefaultLanguageInput {\r\n name: string;\r\n}\r\n\r\nexport class SetNotificationAsReadOutput implements ISetNotificationAsReadOutput {\r\n success!: boolean;\r\n\r\n constructor(data?: ISetNotificationAsReadOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.success = _data[\"success\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SetNotificationAsReadOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SetNotificationAsReadOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"success\"] = this.success;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISetNotificationAsReadOutput {\r\n success: boolean;\r\n}\r\n\r\nexport class Setting implements ISetting {\r\n tenantId!: number | undefined;\r\n userId!: number | undefined;\r\n name!: string;\r\n value!: string | undefined;\r\n lastModificationTime!: DateTime | undefined;\r\n lastModifierUserId!: number | undefined;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ISetting) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n this.name = _data[\"name\"];\r\n this.value = _data[\"value\"];\r\n this.lastModificationTime = _data[\"lastModificationTime\"] ? DateTime.fromISO(_data[\"lastModificationTime\"].toString()) : undefined;\r\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Setting {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Setting();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n data[\"name\"] = this.name;\r\n data[\"value\"] = this.value;\r\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toString() : undefined;\r\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISetting {\r\n tenantId: number | undefined;\r\n userId: number | undefined;\r\n name: string;\r\n value: string | undefined;\r\n lastModificationTime: DateTime | undefined;\r\n lastModifierUserId: number | undefined;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport enum SettingScopes {\r\n Application = 1,\r\n Tenant = 2,\r\n User = 4,\r\n All = 7,\r\n}\r\n\r\nexport class Shipment implements IShipment {\r\n warehouseId!: number;\r\n carrierId!: number | undefined;\r\n supplierId!: number | undefined;\r\n appointmentId!: string | undefined;\r\n loadNumber!: string | undefined;\r\n type!: ShipmentType;\r\n status!: ShipmentStatus;\r\n estimatedArrivalDate!: DateTime | undefined;\r\n notes!: string | undefined;\r\n externalDateModified!: DateTime;\r\n trailerExternalDisplayNumber!: string | undefined;\r\n warehouse!: Warehouse;\r\n carrier!: Carrier;\r\n supplier!: Supplier;\r\n appointment!: Appointment;\r\n orders!: Order[] | undefined;\r\n lastSyncTime!: DateTime;\r\n appointmentExternalId!: string | undefined;\r\n version!: string | undefined;\r\n externalId!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IShipment) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.warehouseId = _data[\"warehouseId\"];\r\n this.carrierId = _data[\"carrierId\"];\r\n this.supplierId = _data[\"supplierId\"];\r\n this.appointmentId = _data[\"appointmentId\"];\r\n this.loadNumber = _data[\"loadNumber\"];\r\n this.type = _data[\"type\"];\r\n this.status = _data[\"status\"];\r\n this.estimatedArrivalDate = _data[\"estimatedArrivalDate\"] ? DateTime.fromISO(_data[\"estimatedArrivalDate\"].toString()) : undefined;\r\n this.notes = _data[\"notes\"];\r\n this.externalDateModified = _data[\"externalDateModified\"] ? DateTime.fromISO(_data[\"externalDateModified\"].toString()) : undefined;\r\n this.trailerExternalDisplayNumber = _data[\"trailerExternalDisplayNumber\"];\r\n this.warehouse = _data[\"warehouse\"] ? Warehouse.fromJS(_data[\"warehouse\"]) : undefined;\r\n this.carrier = _data[\"carrier\"] ? Carrier.fromJS(_data[\"carrier\"]) : undefined;\r\n this.supplier = _data[\"supplier\"] ? Supplier.fromJS(_data[\"supplier\"]) : undefined;\r\n this.appointment = _data[\"appointment\"] ? Appointment.fromJS(_data[\"appointment\"]) : undefined;\r\n if (Array.isArray(_data[\"orders\"])) {\r\n this.orders = [] as any;\r\n for (let item of _data[\"orders\"])\r\n this.orders!.push(Order.fromJS(item));\r\n }\r\n this.lastSyncTime = _data[\"lastSyncTime\"] ? DateTime.fromISO(_data[\"lastSyncTime\"].toString()) : undefined;\r\n this.appointmentExternalId = _data[\"appointmentExternalId\"];\r\n this.version = _data[\"version\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Shipment {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Shipment();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"warehouseId\"] = this.warehouseId;\r\n data[\"carrierId\"] = this.carrierId;\r\n data[\"supplierId\"] = this.supplierId;\r\n data[\"appointmentId\"] = this.appointmentId;\r\n data[\"loadNumber\"] = this.loadNumber;\r\n data[\"type\"] = this.type;\r\n data[\"status\"] = this.status;\r\n data[\"estimatedArrivalDate\"] = this.estimatedArrivalDate ? this.estimatedArrivalDate.toString() : undefined;\r\n data[\"notes\"] = this.notes;\r\n data[\"externalDateModified\"] = this.externalDateModified ? this.externalDateModified.toString() : undefined;\r\n data[\"trailerExternalDisplayNumber\"] = this.trailerExternalDisplayNumber;\r\n data[\"warehouse\"] = this.warehouse ? this.warehouse.toJSON() : undefined;\r\n data[\"carrier\"] = this.carrier ? this.carrier.toJSON() : undefined;\r\n data[\"supplier\"] = this.supplier ? this.supplier.toJSON() : undefined;\r\n data[\"appointment\"] = this.appointment ? this.appointment.toJSON() : undefined;\r\n if (Array.isArray(this.orders)) {\r\n data[\"orders\"] = [];\r\n for (let item of this.orders)\r\n data[\"orders\"].push(item.toJSON());\r\n }\r\n data[\"lastSyncTime\"] = this.lastSyncTime ? this.lastSyncTime.toString() : undefined;\r\n data[\"appointmentExternalId\"] = this.appointmentExternalId;\r\n data[\"version\"] = this.version;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipment {\r\n warehouseId: number;\r\n carrierId: number | undefined;\r\n supplierId: number | undefined;\r\n appointmentId: string | undefined;\r\n loadNumber: string | undefined;\r\n type: ShipmentType;\r\n status: ShipmentStatus;\r\n estimatedArrivalDate: DateTime | undefined;\r\n notes: string | undefined;\r\n externalDateModified: DateTime;\r\n trailerExternalDisplayNumber: string | undefined;\r\n warehouse: Warehouse;\r\n carrier: Carrier;\r\n supplier: Supplier;\r\n appointment: Appointment;\r\n orders: Order[] | undefined;\r\n lastSyncTime: DateTime;\r\n appointmentExternalId: string | undefined;\r\n version: string | undefined;\r\n externalId: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class ShipmentDto implements IShipmentDto {\r\n shipmentNumber!: string | undefined;\r\n carrierName!: string | undefined;\r\n carrierId!: number;\r\n appointmentExternalId!: string | undefined;\r\n type!: ShipmentType;\r\n status!: ShipmentStatus;\r\n estimatedArrivalDate!: DateTime | undefined;\r\n loadNumber!: string | undefined;\r\n appointmentStartDate!: DateTime | undefined;\r\n appointmentEndDate!: DateTime | undefined;\r\n appointmentNotes!: string | undefined;\r\n services!: OrderServiceItemDto[] | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IShipmentDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.shipmentNumber = _data[\"shipmentNumber\"];\r\n this.carrierName = _data[\"carrierName\"];\r\n this.carrierId = _data[\"carrierId\"];\r\n this.appointmentExternalId = _data[\"appointmentExternalId\"];\r\n this.type = _data[\"type\"];\r\n this.status = _data[\"status\"];\r\n this.estimatedArrivalDate = _data[\"estimatedArrivalDate\"] ? DateTime.fromISO(_data[\"estimatedArrivalDate\"].toString()) : undefined;\r\n this.loadNumber = _data[\"loadNumber\"];\r\n this.appointmentStartDate = _data[\"appointmentStartDate\"] ? DateTime.fromISO(_data[\"appointmentStartDate\"].toString()) : undefined;\r\n this.appointmentEndDate = _data[\"appointmentEndDate\"] ? DateTime.fromISO(_data[\"appointmentEndDate\"].toString()) : undefined;\r\n this.appointmentNotes = _data[\"appointmentNotes\"];\r\n if (Array.isArray(_data[\"services\"])) {\r\n this.services = [] as any;\r\n for (let item of _data[\"services\"])\r\n this.services!.push(OrderServiceItemDto.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"shipmentNumber\"] = this.shipmentNumber;\r\n data[\"carrierName\"] = this.carrierName;\r\n data[\"carrierId\"] = this.carrierId;\r\n data[\"appointmentExternalId\"] = this.appointmentExternalId;\r\n data[\"type\"] = this.type;\r\n data[\"status\"] = this.status;\r\n data[\"estimatedArrivalDate\"] = this.estimatedArrivalDate ? this.estimatedArrivalDate.toString() : undefined;\r\n data[\"loadNumber\"] = this.loadNumber;\r\n data[\"appointmentStartDate\"] = this.appointmentStartDate ? this.appointmentStartDate.toString() : undefined;\r\n data[\"appointmentEndDate\"] = this.appointmentEndDate ? this.appointmentEndDate.toString() : undefined;\r\n data[\"appointmentNotes\"] = this.appointmentNotes;\r\n if (Array.isArray(this.services)) {\r\n data[\"services\"] = [];\r\n for (let item of this.services)\r\n data[\"services\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentDto {\r\n shipmentNumber: string | undefined;\r\n carrierName: string | undefined;\r\n carrierId: number;\r\n appointmentExternalId: string | undefined;\r\n type: ShipmentType;\r\n status: ShipmentStatus;\r\n estimatedArrivalDate: DateTime | undefined;\r\n loadNumber: string | undefined;\r\n appointmentStartDate: DateTime | undefined;\r\n appointmentEndDate: DateTime | undefined;\r\n appointmentNotes: string | undefined;\r\n services: OrderServiceItemDto[] | undefined;\r\n id: number;\r\n}\r\n\r\nexport class ShipmentInboundCustomerOrderNumberDto implements IShipmentInboundCustomerOrderNumberDto {\r\n inboundCustomerOrderNumber!: string | undefined;\r\n quantity!: number;\r\n unitOfMeasure!: string | undefined;\r\n\r\n constructor(data?: IShipmentInboundCustomerOrderNumberDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentInboundCustomerOrderNumberDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentInboundCustomerOrderNumberDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentInboundCustomerOrderNumberDto {\r\n inboundCustomerOrderNumber: string | undefined;\r\n quantity: number;\r\n unitOfMeasure: string | undefined;\r\n}\r\n\r\nexport class ShipmentInboundCustomerPONumberDto implements IShipmentInboundCustomerPONumberDto {\r\n inboundCustomerPONumber!: string | undefined;\r\n quantity!: number;\r\n unitOfMeasure!: string | undefined;\r\n\r\n constructor(data?: IShipmentInboundCustomerPONumberDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.inboundCustomerPONumber = _data[\"inboundCustomerPONumber\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentInboundCustomerPONumberDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentInboundCustomerPONumberDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"inboundCustomerPONumber\"] = this.inboundCustomerPONumber;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentInboundCustomerPONumberDto {\r\n inboundCustomerPONumber: string | undefined;\r\n quantity: number;\r\n unitOfMeasure: string | undefined;\r\n}\r\n\r\nexport class ShipmentInboundOrderIdDto implements IShipmentInboundOrderIdDto {\r\n inboundOrderId!: string | undefined;\r\n quantity!: number;\r\n unitOfMeasure!: string | undefined;\r\n\r\n constructor(data?: IShipmentInboundOrderIdDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentInboundOrderIdDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentInboundOrderIdDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentInboundOrderIdDto {\r\n inboundOrderId: string | undefined;\r\n quantity: number;\r\n unitOfMeasure: string | undefined;\r\n}\r\n\r\nexport class ShipmentInboundShipmentIdDto implements IShipmentInboundShipmentIdDto {\r\n inboundShipmentId!: string | undefined;\r\n quantity!: number;\r\n unitOfMeasure!: string | undefined;\r\n\r\n constructor(data?: IShipmentInboundShipmentIdDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentInboundShipmentIdDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentInboundShipmentIdDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentInboundShipmentIdDto {\r\n inboundShipmentId: string | undefined;\r\n quantity: number;\r\n unitOfMeasure: string | undefined;\r\n}\r\n\r\nexport class ShipmentInventoryStatusDto implements IShipmentInventoryStatusDto {\r\n inventoryStatusId!: number | undefined;\r\n inventoryStatusValue!: string | undefined;\r\n inventoryStatusDescription!: string | undefined;\r\n unitOfMeasure!: string | undefined;\r\n quantity!: number;\r\n displayOrder!: number;\r\n isDefault!: boolean;\r\n\r\n constructor(data?: IShipmentInventoryStatusDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.inventoryStatusId = _data[\"inventoryStatusId\"];\r\n this.inventoryStatusValue = _data[\"inventoryStatusValue\"];\r\n this.inventoryStatusDescription = _data[\"inventoryStatusDescription\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.displayOrder = _data[\"displayOrder\"];\r\n this.isDefault = _data[\"isDefault\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentInventoryStatusDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentInventoryStatusDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"inventoryStatusId\"] = this.inventoryStatusId;\r\n data[\"inventoryStatusValue\"] = this.inventoryStatusValue;\r\n data[\"inventoryStatusDescription\"] = this.inventoryStatusDescription;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"displayOrder\"] = this.displayOrder;\r\n data[\"isDefault\"] = this.isDefault;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentInventoryStatusDto {\r\n inventoryStatusId: number | undefined;\r\n inventoryStatusValue: string | undefined;\r\n inventoryStatusDescription: string | undefined;\r\n unitOfMeasure: string | undefined;\r\n quantity: number;\r\n displayOrder: number;\r\n isDefault: boolean;\r\n}\r\n\r\nexport class ShipmentLotNumberDto implements IShipmentLotNumberDto {\r\n lotNumber!: string | undefined;\r\n quantity!: number;\r\n unitOfMeasure!: string | undefined;\r\n\r\n constructor(data?: IShipmentLotNumberDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentLotNumberDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentLotNumberDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentLotNumberDto {\r\n lotNumber: string | undefined;\r\n quantity: number;\r\n unitOfMeasure: string | undefined;\r\n}\r\n\r\nexport class ShipmentOrderItemGroupDto implements IShipmentOrderItemGroupDto {\r\n lotNumber!: string | undefined;\r\n trackingNumber!: string | undefined;\r\n quantity!: number;\r\n unitOfMeasure!: string | undefined;\r\n\r\n constructor(data?: IShipmentOrderItemGroupDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.trackingNumber = _data[\"trackingNumber\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentOrderItemGroupDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentOrderItemGroupDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"trackingNumber\"] = this.trackingNumber;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentOrderItemGroupDto {\r\n lotNumber: string | undefined;\r\n trackingNumber: string | undefined;\r\n quantity: number;\r\n unitOfMeasure: string | undefined;\r\n}\r\n\r\nexport class ShipmentSearchInfo implements IShipmentSearchInfo {\r\n type!: ShipmentType;\r\n name!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IShipmentSearchInfo) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.type = _data[\"type\"];\r\n this.name = _data[\"name\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentSearchInfo {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentSearchInfo();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"type\"] = this.type;\r\n data[\"name\"] = this.name;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentSearchInfo {\r\n type: ShipmentType;\r\n name: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport enum ShipmentStatus {\r\n Unknown = 0,\r\n Expected = 1,\r\n Loaded = 2,\r\n Transfer = 3,\r\n Receiving = 4,\r\n Loading = 5,\r\n InProcess = 6,\r\n Suspended = 7,\r\n Ready = 8,\r\n Staged = 9,\r\n CheckedIn = 10,\r\n Closed = 11,\r\n Complete = 12,\r\n Cancelled = 13,\r\n}\r\n\r\nexport class ShipmentTrackingNumberDto implements IShipmentTrackingNumberDto {\r\n trackingNumber!: string | undefined;\r\n unitQuantity!: number;\r\n lodNumber!: string | undefined;\r\n unitOfMeasure!: string | undefined;\r\n receivedDate!: DateTime | undefined;\r\n expirationDate!: DateTime | undefined;\r\n manufacturedDate!: DateTime | undefined;\r\n inventoryStatus!: string | undefined;\r\n shippabilityStatus!: string | undefined;\r\n lotNumber!: string | undefined;\r\n client!: string | undefined;\r\n itemName!: string | undefined;\r\n itemExternalId!: string | undefined;\r\n extPalletId!: string | undefined;\r\n establishmentNumber!: string | undefined;\r\n inboundShipmentId!: string | undefined;\r\n inboundOrderId!: string | undefined;\r\n shippingMark!: string | undefined;\r\n inboundCustomerPONumber!: string | undefined;\r\n inboundCustomerOrderNumber!: string | undefined;\r\n reservedOrderId!: string | undefined;\r\n reservedOrderLineId!: string | undefined;\r\n reservedQty!: number | undefined;\r\n weight!: number | undefined;\r\n\r\n constructor(data?: IShipmentTrackingNumberDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.trackingNumber = _data[\"trackingNumber\"];\r\n this.unitQuantity = _data[\"unitQuantity\"];\r\n this.lodNumber = _data[\"lodNumber\"];\r\n this.unitOfMeasure = _data[\"unitOfMeasure\"];\r\n this.receivedDate = _data[\"receivedDate\"] ? DateTime.fromISO(_data[\"receivedDate\"].toString()) : undefined;\r\n this.expirationDate = _data[\"expirationDate\"] ? DateTime.fromISO(_data[\"expirationDate\"].toString()) : undefined;\r\n this.manufacturedDate = _data[\"manufacturedDate\"] ? DateTime.fromISO(_data[\"manufacturedDate\"].toString()) : undefined;\r\n this.inventoryStatus = _data[\"inventoryStatus\"];\r\n this.shippabilityStatus = _data[\"shippabilityStatus\"];\r\n this.lotNumber = _data[\"lotNumber\"];\r\n this.client = _data[\"client\"];\r\n this.itemName = _data[\"itemName\"];\r\n this.itemExternalId = _data[\"itemExternalId\"];\r\n this.extPalletId = _data[\"extPalletId\"];\r\n this.establishmentNumber = _data[\"establishmentNumber\"];\r\n this.inboundShipmentId = _data[\"inboundShipmentId\"];\r\n this.inboundOrderId = _data[\"inboundOrderId\"];\r\n this.shippingMark = _data[\"shippingMark\"];\r\n this.inboundCustomerPONumber = _data[\"inboundCustomerPONumber\"];\r\n this.inboundCustomerOrderNumber = _data[\"inboundCustomerOrderNumber\"];\r\n this.reservedOrderId = _data[\"reservedOrderId\"];\r\n this.reservedOrderLineId = _data[\"reservedOrderLineId\"];\r\n this.reservedQty = _data[\"reservedQty\"];\r\n this.weight = _data[\"weight\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ShipmentTrackingNumberDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ShipmentTrackingNumberDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"trackingNumber\"] = this.trackingNumber;\r\n data[\"unitQuantity\"] = this.unitQuantity;\r\n data[\"lodNumber\"] = this.lodNumber;\r\n data[\"unitOfMeasure\"] = this.unitOfMeasure;\r\n data[\"receivedDate\"] = this.receivedDate ? this.receivedDate.toString() : undefined;\r\n data[\"expirationDate\"] = this.expirationDate ? this.expirationDate.toString() : undefined;\r\n data[\"manufacturedDate\"] = this.manufacturedDate ? this.manufacturedDate.toString() : undefined;\r\n data[\"inventoryStatus\"] = this.inventoryStatus;\r\n data[\"shippabilityStatus\"] = this.shippabilityStatus;\r\n data[\"lotNumber\"] = this.lotNumber;\r\n data[\"client\"] = this.client;\r\n data[\"itemName\"] = this.itemName;\r\n data[\"itemExternalId\"] = this.itemExternalId;\r\n data[\"extPalletId\"] = this.extPalletId;\r\n data[\"establishmentNumber\"] = this.establishmentNumber;\r\n data[\"inboundShipmentId\"] = this.inboundShipmentId;\r\n data[\"inboundOrderId\"] = this.inboundOrderId;\r\n data[\"shippingMark\"] = this.shippingMark;\r\n data[\"inboundCustomerPONumber\"] = this.inboundCustomerPONumber;\r\n data[\"inboundCustomerOrderNumber\"] = this.inboundCustomerOrderNumber;\r\n data[\"reservedOrderId\"] = this.reservedOrderId;\r\n data[\"reservedOrderLineId\"] = this.reservedOrderLineId;\r\n data[\"reservedQty\"] = this.reservedQty;\r\n data[\"weight\"] = this.weight;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IShipmentTrackingNumberDto {\r\n trackingNumber: string | undefined;\r\n unitQuantity: number;\r\n lodNumber: string | undefined;\r\n unitOfMeasure: string | undefined;\r\n receivedDate: DateTime | undefined;\r\n expirationDate: DateTime | undefined;\r\n manufacturedDate: DateTime | undefined;\r\n inventoryStatus: string | undefined;\r\n shippabilityStatus: string | undefined;\r\n lotNumber: string | undefined;\r\n client: string | undefined;\r\n itemName: string | undefined;\r\n itemExternalId: string | undefined;\r\n extPalletId: string | undefined;\r\n establishmentNumber: string | undefined;\r\n inboundShipmentId: string | undefined;\r\n inboundOrderId: string | undefined;\r\n shippingMark: string | undefined;\r\n inboundCustomerPONumber: string | undefined;\r\n inboundCustomerOrderNumber: string | undefined;\r\n reservedOrderId: string | undefined;\r\n reservedOrderLineId: string | undefined;\r\n reservedQty: number | undefined;\r\n weight: number | undefined;\r\n}\r\n\r\nexport enum ShipmentType {\r\n Inbound = 1,\r\n Outbound = 2,\r\n}\r\n\r\nexport enum ShippabilityStatus {\r\n Unknown = 0,\r\n PickedStaged = 1,\r\n InProcess = 2,\r\n InspectDamagedExpired = 3,\r\n Hold = 4,\r\n AvailableForOrder = 5,\r\n}\r\n\r\nexport enum SourceType {\r\n Unknown = 0,\r\n Manual = 1,\r\n Sync = 2,\r\n}\r\n\r\nexport class StringOutput implements IStringOutput {\r\n output!: string | undefined;\r\n\r\n constructor(data?: IStringOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.output = _data[\"output\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): StringOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new StringOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"output\"] = this.output;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IStringOutput {\r\n output: string | undefined;\r\n}\r\n\r\nexport class StripeConfigurationDto implements IStripeConfigurationDto {\r\n publishableKey!: string | undefined;\r\n\r\n constructor(data?: IStripeConfigurationDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.publishableKey = _data[\"publishableKey\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): StripeConfigurationDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new StripeConfigurationDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"publishableKey\"] = this.publishableKey;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IStripeConfigurationDto {\r\n publishableKey: string | undefined;\r\n}\r\n\r\nexport class StripeCreatePaymentSessionInput implements IStripeCreatePaymentSessionInput {\r\n paymentId!: number;\r\n successUrl!: string | undefined;\r\n cancelUrl!: string | undefined;\r\n\r\n constructor(data?: IStripeCreatePaymentSessionInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.paymentId = _data[\"paymentId\"];\r\n this.successUrl = _data[\"successUrl\"];\r\n this.cancelUrl = _data[\"cancelUrl\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): StripeCreatePaymentSessionInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new StripeCreatePaymentSessionInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"paymentId\"] = this.paymentId;\r\n data[\"successUrl\"] = this.successUrl;\r\n data[\"cancelUrl\"] = this.cancelUrl;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IStripeCreatePaymentSessionInput {\r\n paymentId: number;\r\n successUrl: string | undefined;\r\n cancelUrl: string | undefined;\r\n}\r\n\r\nexport class StripePaymentResultOutput implements IStripePaymentResultOutput {\r\n paymentDone!: boolean;\r\n\r\n constructor(data?: IStripePaymentResultOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.paymentDone = _data[\"paymentDone\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): StripePaymentResultOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new StripePaymentResultOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"paymentDone\"] = this.paymentDone;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IStripePaymentResultOutput {\r\n paymentDone: boolean;\r\n}\r\n\r\nexport class SubscribableEditionComboboxItemDto implements ISubscribableEditionComboboxItemDto {\r\n isFree!: boolean | undefined;\r\n value!: string | undefined;\r\n displayText!: string | undefined;\r\n isSelected!: boolean;\r\n\r\n constructor(data?: ISubscribableEditionComboboxItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isFree = _data[\"isFree\"];\r\n this.value = _data[\"value\"];\r\n this.displayText = _data[\"displayText\"];\r\n this.isSelected = _data[\"isSelected\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SubscribableEditionComboboxItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SubscribableEditionComboboxItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isFree\"] = this.isFree;\r\n data[\"value\"] = this.value;\r\n data[\"displayText\"] = this.displayText;\r\n data[\"isSelected\"] = this.isSelected;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISubscribableEditionComboboxItemDto {\r\n isFree: boolean | undefined;\r\n value: string | undefined;\r\n displayText: string | undefined;\r\n isSelected: boolean;\r\n}\r\n\r\nexport class SubscriptionPaymentDto implements ISubscriptionPaymentDto {\r\n description!: string | undefined;\r\n gateway!: SubscriptionPaymentGatewayType;\r\n amount!: number;\r\n editionId!: number;\r\n tenantId!: number;\r\n dayCount!: number;\r\n paymentPeriodType!: PaymentPeriodType;\r\n paymentId!: string | undefined;\r\n payerId!: string | undefined;\r\n editionDisplayName!: string | undefined;\r\n invoiceNo!: number;\r\n status!: SubscriptionPaymentStatus;\r\n isRecurring!: boolean;\r\n externalPaymentId!: string | undefined;\r\n successUrl!: string | undefined;\r\n errorUrl!: string | undefined;\r\n editionPaymentType!: EditionPaymentType;\r\n id!: number;\r\n\r\n constructor(data?: ISubscriptionPaymentDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.description = _data[\"description\"];\r\n this.gateway = _data[\"gateway\"];\r\n this.amount = _data[\"amount\"];\r\n this.editionId = _data[\"editionId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.dayCount = _data[\"dayCount\"];\r\n this.paymentPeriodType = _data[\"paymentPeriodType\"];\r\n this.paymentId = _data[\"paymentId\"];\r\n this.payerId = _data[\"payerId\"];\r\n this.editionDisplayName = _data[\"editionDisplayName\"];\r\n this.invoiceNo = _data[\"invoiceNo\"];\r\n this.status = _data[\"status\"];\r\n this.isRecurring = _data[\"isRecurring\"];\r\n this.externalPaymentId = _data[\"externalPaymentId\"];\r\n this.successUrl = _data[\"successUrl\"];\r\n this.errorUrl = _data[\"errorUrl\"];\r\n this.editionPaymentType = _data[\"editionPaymentType\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SubscriptionPaymentDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SubscriptionPaymentDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"description\"] = this.description;\r\n data[\"gateway\"] = this.gateway;\r\n data[\"amount\"] = this.amount;\r\n data[\"editionId\"] = this.editionId;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"dayCount\"] = this.dayCount;\r\n data[\"paymentPeriodType\"] = this.paymentPeriodType;\r\n data[\"paymentId\"] = this.paymentId;\r\n data[\"payerId\"] = this.payerId;\r\n data[\"editionDisplayName\"] = this.editionDisplayName;\r\n data[\"invoiceNo\"] = this.invoiceNo;\r\n data[\"status\"] = this.status;\r\n data[\"isRecurring\"] = this.isRecurring;\r\n data[\"externalPaymentId\"] = this.externalPaymentId;\r\n data[\"successUrl\"] = this.successUrl;\r\n data[\"errorUrl\"] = this.errorUrl;\r\n data[\"editionPaymentType\"] = this.editionPaymentType;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISubscriptionPaymentDto {\r\n description: string | undefined;\r\n gateway: SubscriptionPaymentGatewayType;\r\n amount: number;\r\n editionId: number;\r\n tenantId: number;\r\n dayCount: number;\r\n paymentPeriodType: PaymentPeriodType;\r\n paymentId: string | undefined;\r\n payerId: string | undefined;\r\n editionDisplayName: string | undefined;\r\n invoiceNo: number;\r\n status: SubscriptionPaymentStatus;\r\n isRecurring: boolean;\r\n externalPaymentId: string | undefined;\r\n successUrl: string | undefined;\r\n errorUrl: string | undefined;\r\n editionPaymentType: EditionPaymentType;\r\n id: number;\r\n}\r\n\r\nexport enum SubscriptionPaymentGatewayType {\r\n Paypal = 1,\r\n Stripe = 2,\r\n}\r\n\r\nexport class SubscriptionPaymentListDto implements ISubscriptionPaymentListDto {\r\n gateway!: string | undefined;\r\n amount!: number;\r\n editionId!: number;\r\n dayCount!: number;\r\n paymentPeriodType!: string | undefined;\r\n externalPaymentId!: string | undefined;\r\n payerId!: string | undefined;\r\n status!: string | undefined;\r\n editionDisplayName!: string | undefined;\r\n tenantId!: number;\r\n invoiceNo!: string | undefined;\r\n lastModificationTime!: DateTime | undefined;\r\n lastModifierUserId!: number | undefined;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ISubscriptionPaymentListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gateway = _data[\"gateway\"];\r\n this.amount = _data[\"amount\"];\r\n this.editionId = _data[\"editionId\"];\r\n this.dayCount = _data[\"dayCount\"];\r\n this.paymentPeriodType = _data[\"paymentPeriodType\"];\r\n this.externalPaymentId = _data[\"externalPaymentId\"];\r\n this.payerId = _data[\"payerId\"];\r\n this.status = _data[\"status\"];\r\n this.editionDisplayName = _data[\"editionDisplayName\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.invoiceNo = _data[\"invoiceNo\"];\r\n this.lastModificationTime = _data[\"lastModificationTime\"] ? DateTime.fromISO(_data[\"lastModificationTime\"].toString()) : undefined;\r\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SubscriptionPaymentListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SubscriptionPaymentListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gateway\"] = this.gateway;\r\n data[\"amount\"] = this.amount;\r\n data[\"editionId\"] = this.editionId;\r\n data[\"dayCount\"] = this.dayCount;\r\n data[\"paymentPeriodType\"] = this.paymentPeriodType;\r\n data[\"externalPaymentId\"] = this.externalPaymentId;\r\n data[\"payerId\"] = this.payerId;\r\n data[\"status\"] = this.status;\r\n data[\"editionDisplayName\"] = this.editionDisplayName;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"invoiceNo\"] = this.invoiceNo;\r\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toString() : undefined;\r\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISubscriptionPaymentListDto {\r\n gateway: string | undefined;\r\n amount: number;\r\n editionId: number;\r\n dayCount: number;\r\n paymentPeriodType: string | undefined;\r\n externalPaymentId: string | undefined;\r\n payerId: string | undefined;\r\n status: string | undefined;\r\n editionDisplayName: string | undefined;\r\n tenantId: number;\r\n invoiceNo: string | undefined;\r\n lastModificationTime: DateTime | undefined;\r\n lastModifierUserId: number | undefined;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport enum SubscriptionPaymentStatus {\r\n NotPaid = 1,\r\n Paid = 2,\r\n Failed = 3,\r\n Cancelled = 4,\r\n Completed = 5,\r\n}\r\n\r\nexport enum SubscriptionPaymentType {\r\n Manual = 0,\r\n RecurringAutomatic = 1,\r\n RecurringManual = 2,\r\n}\r\n\r\nexport enum SubscriptionStartType {\r\n Free = 1,\r\n Trial = 2,\r\n Paid = 3,\r\n}\r\n\r\nexport class Supplier implements ISupplier {\r\n name!: string | undefined;\r\n externalId!: string | undefined;\r\n wmsConnectionId!: number;\r\n wmsConnection!: WMSConnection;\r\n id!: number;\r\n\r\n constructor(data?: ISupplier) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Supplier {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Supplier();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISupplier {\r\n name: string | undefined;\r\n externalId: string | undefined;\r\n wmsConnectionId: number;\r\n wmsConnection: WMSConnection;\r\n id: number;\r\n}\r\n\r\nexport class SwitchToLinkedAccountInput implements ISwitchToLinkedAccountInput {\r\n targetTenantId!: number | undefined;\r\n targetUserId!: number;\r\n\r\n constructor(data?: ISwitchToLinkedAccountInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.targetTenantId = _data[\"targetTenantId\"];\r\n this.targetUserId = _data[\"targetUserId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SwitchToLinkedAccountInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SwitchToLinkedAccountInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"targetTenantId\"] = this.targetTenantId;\r\n data[\"targetUserId\"] = this.targetUserId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISwitchToLinkedAccountInput {\r\n targetTenantId: number | undefined;\r\n targetUserId: number;\r\n}\r\n\r\nexport class SwitchToLinkedAccountOutput implements ISwitchToLinkedAccountOutput {\r\n switchAccountToken!: string | undefined;\r\n tenancyName!: string | undefined;\r\n\r\n constructor(data?: ISwitchToLinkedAccountOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.switchAccountToken = _data[\"switchAccountToken\"];\r\n this.tenancyName = _data[\"tenancyName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SwitchToLinkedAccountOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SwitchToLinkedAccountOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"switchAccountToken\"] = this.switchAccountToken;\r\n data[\"tenancyName\"] = this.tenancyName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISwitchToLinkedAccountOutput {\r\n switchAccountToken: string | undefined;\r\n tenancyName: string | undefined;\r\n}\r\n\r\nexport class SwitchedAccountAuthenticateResultModel implements ISwitchedAccountAuthenticateResultModel {\r\n accessToken!: string | undefined;\r\n encryptedAccessToken!: string | undefined;\r\n expireInSeconds!: number;\r\n\r\n constructor(data?: ISwitchedAccountAuthenticateResultModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.accessToken = _data[\"accessToken\"];\r\n this.encryptedAccessToken = _data[\"encryptedAccessToken\"];\r\n this.expireInSeconds = _data[\"expireInSeconds\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SwitchedAccountAuthenticateResultModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SwitchedAccountAuthenticateResultModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"accessToken\"] = this.accessToken;\r\n data[\"encryptedAccessToken\"] = this.encryptedAccessToken;\r\n data[\"expireInSeconds\"] = this.expireInSeconds;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISwitchedAccountAuthenticateResultModel {\r\n accessToken: string | undefined;\r\n encryptedAccessToken: string | undefined;\r\n expireInSeconds: number;\r\n}\r\n\r\nexport class Tenant implements ITenant {\r\n subscriptionEndDateUtc!: DateTime | undefined;\r\n isInTrialPeriod!: boolean;\r\n customCssId!: string | undefined;\r\n logoId!: string | undefined;\r\n logoFileType!: string | undefined;\r\n subscriptionPaymentType!: SubscriptionPaymentType;\r\n inventoryManagerConnections!: InventoryManagerConnection[] | undefined;\r\n clientConnections!: ClientConnection[] | undefined;\r\n carrierConnections!: CarrierConnection[] | undefined;\r\n edition!: Edition;\r\n editionId!: number | undefined;\r\n creatorUser!: User;\r\n lastModifierUser!: User;\r\n deleterUser!: User;\r\n tenancyName!: string;\r\n name!: string;\r\n connectionString!: string | undefined;\r\n isActive!: boolean;\r\n isDeleted!: boolean;\r\n deleterUserId!: number | undefined;\r\n deletionTime!: DateTime | undefined;\r\n lastModificationTime!: DateTime | undefined;\r\n lastModifierUserId!: number | undefined;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ITenant) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.subscriptionEndDateUtc = _data[\"subscriptionEndDateUtc\"] ? DateTime.fromISO(_data[\"subscriptionEndDateUtc\"].toString()) : undefined;\r\n this.isInTrialPeriod = _data[\"isInTrialPeriod\"];\r\n this.customCssId = _data[\"customCssId\"];\r\n this.logoId = _data[\"logoId\"];\r\n this.logoFileType = _data[\"logoFileType\"];\r\n this.subscriptionPaymentType = _data[\"subscriptionPaymentType\"];\r\n if (Array.isArray(_data[\"inventoryManagerConnections\"])) {\r\n this.inventoryManagerConnections = [] as any;\r\n for (let item of _data[\"inventoryManagerConnections\"])\r\n this.inventoryManagerConnections!.push(InventoryManagerConnection.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"clientConnections\"])) {\r\n this.clientConnections = [] as any;\r\n for (let item of _data[\"clientConnections\"])\r\n this.clientConnections!.push(ClientConnection.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"carrierConnections\"])) {\r\n this.carrierConnections = [] as any;\r\n for (let item of _data[\"carrierConnections\"])\r\n this.carrierConnections!.push(CarrierConnection.fromJS(item));\r\n }\r\n this.edition = _data[\"edition\"] ? Edition.fromJS(_data[\"edition\"]) : undefined;\r\n this.editionId = _data[\"editionId\"];\r\n this.creatorUser = _data[\"creatorUser\"] ? User.fromJS(_data[\"creatorUser\"]) : undefined;\r\n this.lastModifierUser = _data[\"lastModifierUser\"] ? User.fromJS(_data[\"lastModifierUser\"]) : undefined;\r\n this.deleterUser = _data[\"deleterUser\"] ? User.fromJS(_data[\"deleterUser\"]) : undefined;\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.name = _data[\"name\"];\r\n this.connectionString = _data[\"connectionString\"];\r\n this.isActive = _data[\"isActive\"];\r\n this.isDeleted = _data[\"isDeleted\"];\r\n this.deleterUserId = _data[\"deleterUserId\"];\r\n this.deletionTime = _data[\"deletionTime\"] ? DateTime.fromISO(_data[\"deletionTime\"].toString()) : undefined;\r\n this.lastModificationTime = _data[\"lastModificationTime\"] ? DateTime.fromISO(_data[\"lastModificationTime\"].toString()) : undefined;\r\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Tenant {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Tenant();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"subscriptionEndDateUtc\"] = this.subscriptionEndDateUtc ? this.subscriptionEndDateUtc.toString() : undefined;\r\n data[\"isInTrialPeriod\"] = this.isInTrialPeriod;\r\n data[\"customCssId\"] = this.customCssId;\r\n data[\"logoId\"] = this.logoId;\r\n data[\"logoFileType\"] = this.logoFileType;\r\n data[\"subscriptionPaymentType\"] = this.subscriptionPaymentType;\r\n if (Array.isArray(this.inventoryManagerConnections)) {\r\n data[\"inventoryManagerConnections\"] = [];\r\n for (let item of this.inventoryManagerConnections)\r\n data[\"inventoryManagerConnections\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.clientConnections)) {\r\n data[\"clientConnections\"] = [];\r\n for (let item of this.clientConnections)\r\n data[\"clientConnections\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.carrierConnections)) {\r\n data[\"carrierConnections\"] = [];\r\n for (let item of this.carrierConnections)\r\n data[\"carrierConnections\"].push(item.toJSON());\r\n }\r\n data[\"edition\"] = this.edition ? this.edition.toJSON() : undefined;\r\n data[\"editionId\"] = this.editionId;\r\n data[\"creatorUser\"] = this.creatorUser ? this.creatorUser.toJSON() : undefined;\r\n data[\"lastModifierUser\"] = this.lastModifierUser ? this.lastModifierUser.toJSON() : undefined;\r\n data[\"deleterUser\"] = this.deleterUser ? this.deleterUser.toJSON() : undefined;\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"name\"] = this.name;\r\n data[\"connectionString\"] = this.connectionString;\r\n data[\"isActive\"] = this.isActive;\r\n data[\"isDeleted\"] = this.isDeleted;\r\n data[\"deleterUserId\"] = this.deleterUserId;\r\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toString() : undefined;\r\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toString() : undefined;\r\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenant {\r\n subscriptionEndDateUtc: DateTime | undefined;\r\n isInTrialPeriod: boolean;\r\n customCssId: string | undefined;\r\n logoId: string | undefined;\r\n logoFileType: string | undefined;\r\n subscriptionPaymentType: SubscriptionPaymentType;\r\n inventoryManagerConnections: InventoryManagerConnection[] | undefined;\r\n clientConnections: ClientConnection[] | undefined;\r\n carrierConnections: CarrierConnection[] | undefined;\r\n edition: Edition;\r\n editionId: number | undefined;\r\n creatorUser: User;\r\n lastModifierUser: User;\r\n deleterUser: User;\r\n tenancyName: string;\r\n name: string;\r\n connectionString: string | undefined;\r\n isActive: boolean;\r\n isDeleted: boolean;\r\n deleterUserId: number | undefined;\r\n deletionTime: DateTime | undefined;\r\n lastModificationTime: DateTime | undefined;\r\n lastModifierUserId: number | undefined;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport enum TenantAvailabilityState {\r\n Available = 1,\r\n InActive = 2,\r\n NotFound = 3,\r\n}\r\n\r\nexport class TenantBillingSettingsEditDto implements ITenantBillingSettingsEditDto {\r\n legalName!: string | undefined;\r\n address!: string | undefined;\r\n taxVatNo!: string | undefined;\r\n\r\n constructor(data?: ITenantBillingSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.legalName = _data[\"legalName\"];\r\n this.address = _data[\"address\"];\r\n this.taxVatNo = _data[\"taxVatNo\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantBillingSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantBillingSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"legalName\"] = this.legalName;\r\n data[\"address\"] = this.address;\r\n data[\"taxVatNo\"] = this.taxVatNo;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantBillingSettingsEditDto {\r\n legalName: string | undefined;\r\n address: string | undefined;\r\n taxVatNo: string | undefined;\r\n}\r\n\r\nexport class TenantEditDto implements ITenantEditDto {\r\n tenancyName!: string;\r\n name!: string;\r\n connectionString!: string | undefined;\r\n editionId!: number | undefined;\r\n isActive!: boolean;\r\n subscriptionEndDateUtc!: DateTime | undefined;\r\n inventoryManagerIds!: number[] | undefined;\r\n clientIds!: number[] | undefined;\r\n carrierIds!: number[] | undefined;\r\n isInTrialPeriod!: boolean;\r\n id!: number;\r\n\r\n constructor(data?: ITenantEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.name = _data[\"name\"];\r\n this.connectionString = _data[\"connectionString\"];\r\n this.editionId = _data[\"editionId\"];\r\n this.isActive = _data[\"isActive\"];\r\n this.subscriptionEndDateUtc = _data[\"subscriptionEndDateUtc\"] ? DateTime.fromISO(_data[\"subscriptionEndDateUtc\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"inventoryManagerIds\"])) {\r\n this.inventoryManagerIds = [] as any;\r\n for (let item of _data[\"inventoryManagerIds\"])\r\n this.inventoryManagerIds!.push(item);\r\n }\r\n if (Array.isArray(_data[\"clientIds\"])) {\r\n this.clientIds = [] as any;\r\n for (let item of _data[\"clientIds\"])\r\n this.clientIds!.push(item);\r\n }\r\n if (Array.isArray(_data[\"carrierIds\"])) {\r\n this.carrierIds = [] as any;\r\n for (let item of _data[\"carrierIds\"])\r\n this.carrierIds!.push(item);\r\n }\r\n this.isInTrialPeriod = _data[\"isInTrialPeriod\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"name\"] = this.name;\r\n data[\"connectionString\"] = this.connectionString;\r\n data[\"editionId\"] = this.editionId;\r\n data[\"isActive\"] = this.isActive;\r\n data[\"subscriptionEndDateUtc\"] = this.subscriptionEndDateUtc ? this.subscriptionEndDateUtc.toString() : undefined;\r\n if (Array.isArray(this.inventoryManagerIds)) {\r\n data[\"inventoryManagerIds\"] = [];\r\n for (let item of this.inventoryManagerIds)\r\n data[\"inventoryManagerIds\"].push(item);\r\n }\r\n if (Array.isArray(this.clientIds)) {\r\n data[\"clientIds\"] = [];\r\n for (let item of this.clientIds)\r\n data[\"clientIds\"].push(item);\r\n }\r\n if (Array.isArray(this.carrierIds)) {\r\n data[\"carrierIds\"] = [];\r\n for (let item of this.carrierIds)\r\n data[\"carrierIds\"].push(item);\r\n }\r\n data[\"isInTrialPeriod\"] = this.isInTrialPeriod;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantEditDto {\r\n tenancyName: string;\r\n name: string;\r\n connectionString: string | undefined;\r\n editionId: number | undefined;\r\n isActive: boolean;\r\n subscriptionEndDateUtc: DateTime | undefined;\r\n inventoryManagerIds: number[] | undefined;\r\n clientIds: number[] | undefined;\r\n carrierIds: number[] | undefined;\r\n isInTrialPeriod: boolean;\r\n id: number;\r\n}\r\n\r\nexport class TenantEdition implements ITenantEdition {\r\n label!: string | undefined;\r\n value!: number;\r\n\r\n constructor(data?: ITenantEdition) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.label = _data[\"label\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantEdition {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantEdition();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"label\"] = this.label;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantEdition {\r\n label: string | undefined;\r\n value: number;\r\n}\r\n\r\nexport class TenantEmailSettingsEditDto implements ITenantEmailSettingsEditDto {\r\n useHostDefaultEmailSettings!: boolean;\r\n defaultFromAddress!: string | undefined;\r\n defaultFromDisplayName!: string | undefined;\r\n smtpHost!: string | undefined;\r\n smtpPort!: number;\r\n smtpUserName!: string | undefined;\r\n smtpPassword!: string | undefined;\r\n smtpDomain!: string | undefined;\r\n smtpEnableSsl!: boolean;\r\n smtpUseDefaultCredentials!: boolean;\r\n\r\n constructor(data?: ITenantEmailSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.useHostDefaultEmailSettings = _data[\"useHostDefaultEmailSettings\"];\r\n this.defaultFromAddress = _data[\"defaultFromAddress\"];\r\n this.defaultFromDisplayName = _data[\"defaultFromDisplayName\"];\r\n this.smtpHost = _data[\"smtpHost\"];\r\n this.smtpPort = _data[\"smtpPort\"];\r\n this.smtpUserName = _data[\"smtpUserName\"];\r\n this.smtpPassword = _data[\"smtpPassword\"];\r\n this.smtpDomain = _data[\"smtpDomain\"];\r\n this.smtpEnableSsl = _data[\"smtpEnableSsl\"];\r\n this.smtpUseDefaultCredentials = _data[\"smtpUseDefaultCredentials\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantEmailSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantEmailSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"useHostDefaultEmailSettings\"] = this.useHostDefaultEmailSettings;\r\n data[\"defaultFromAddress\"] = this.defaultFromAddress;\r\n data[\"defaultFromDisplayName\"] = this.defaultFromDisplayName;\r\n data[\"smtpHost\"] = this.smtpHost;\r\n data[\"smtpPort\"] = this.smtpPort;\r\n data[\"smtpUserName\"] = this.smtpUserName;\r\n data[\"smtpPassword\"] = this.smtpPassword;\r\n data[\"smtpDomain\"] = this.smtpDomain;\r\n data[\"smtpEnableSsl\"] = this.smtpEnableSsl;\r\n data[\"smtpUseDefaultCredentials\"] = this.smtpUseDefaultCredentials;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantEmailSettingsEditDto {\r\n useHostDefaultEmailSettings: boolean;\r\n defaultFromAddress: string | undefined;\r\n defaultFromDisplayName: string | undefined;\r\n smtpHost: string | undefined;\r\n smtpPort: number;\r\n smtpUserName: string | undefined;\r\n smtpPassword: string | undefined;\r\n smtpDomain: string | undefined;\r\n smtpEnableSsl: boolean;\r\n smtpUseDefaultCredentials: boolean;\r\n}\r\n\r\nexport class TenantListDto implements ITenantListDto {\r\n tenancyName!: string | undefined;\r\n name!: string | undefined;\r\n editionDisplayName!: string | undefined;\r\n connectionString!: string | undefined;\r\n isActive!: boolean;\r\n creationTime!: DateTime;\r\n subscriptionEndDateUtc!: DateTime | undefined;\r\n editionId!: number | undefined;\r\n isInTrialPeriod!: boolean;\r\n id!: number;\r\n\r\n constructor(data?: ITenantListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.name = _data[\"name\"];\r\n this.editionDisplayName = _data[\"editionDisplayName\"];\r\n this.connectionString = _data[\"connectionString\"];\r\n this.isActive = _data[\"isActive\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.subscriptionEndDateUtc = _data[\"subscriptionEndDateUtc\"] ? DateTime.fromISO(_data[\"subscriptionEndDateUtc\"].toString()) : undefined;\r\n this.editionId = _data[\"editionId\"];\r\n this.isInTrialPeriod = _data[\"isInTrialPeriod\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"name\"] = this.name;\r\n data[\"editionDisplayName\"] = this.editionDisplayName;\r\n data[\"connectionString\"] = this.connectionString;\r\n data[\"isActive\"] = this.isActive;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"subscriptionEndDateUtc\"] = this.subscriptionEndDateUtc ? this.subscriptionEndDateUtc.toString() : undefined;\r\n data[\"editionId\"] = this.editionId;\r\n data[\"isInTrialPeriod\"] = this.isInTrialPeriod;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantListDto {\r\n tenancyName: string | undefined;\r\n name: string | undefined;\r\n editionDisplayName: string | undefined;\r\n connectionString: string | undefined;\r\n isActive: boolean;\r\n creationTime: DateTime;\r\n subscriptionEndDateUtc: DateTime | undefined;\r\n editionId: number | undefined;\r\n isInTrialPeriod: boolean;\r\n id: number;\r\n}\r\n\r\nexport class TenantLoginInfoDto implements ITenantLoginInfoDto {\r\n tenancyName!: string | undefined;\r\n name!: string | undefined;\r\n logoId!: string | undefined;\r\n logoFileType!: string | undefined;\r\n customCssId!: string | undefined;\r\n subscriptionEndDateUtc!: DateTime | undefined;\r\n isInTrialPeriod!: boolean;\r\n subscriptionPaymentType!: SubscriptionPaymentType;\r\n edition!: EditionInfoDto;\r\n featureValues!: NameValueDto[] | undefined;\r\n creationTime!: DateTime;\r\n paymentPeriodType!: PaymentPeriodType;\r\n subscriptionDateString!: string | undefined;\r\n creationTimeString!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: ITenantLoginInfoDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.name = _data[\"name\"];\r\n this.logoId = _data[\"logoId\"];\r\n this.logoFileType = _data[\"logoFileType\"];\r\n this.customCssId = _data[\"customCssId\"];\r\n this.subscriptionEndDateUtc = _data[\"subscriptionEndDateUtc\"] ? DateTime.fromISO(_data[\"subscriptionEndDateUtc\"].toString()) : undefined;\r\n this.isInTrialPeriod = _data[\"isInTrialPeriod\"];\r\n this.subscriptionPaymentType = _data[\"subscriptionPaymentType\"];\r\n this.edition = _data[\"edition\"] ? EditionInfoDto.fromJS(_data[\"edition\"]) : undefined;\r\n if (Array.isArray(_data[\"featureValues\"])) {\r\n this.featureValues = [] as any;\r\n for (let item of _data[\"featureValues\"])\r\n this.featureValues!.push(NameValueDto.fromJS(item));\r\n }\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.paymentPeriodType = _data[\"paymentPeriodType\"];\r\n this.subscriptionDateString = _data[\"subscriptionDateString\"];\r\n this.creationTimeString = _data[\"creationTimeString\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantLoginInfoDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantLoginInfoDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"name\"] = this.name;\r\n data[\"logoId\"] = this.logoId;\r\n data[\"logoFileType\"] = this.logoFileType;\r\n data[\"customCssId\"] = this.customCssId;\r\n data[\"subscriptionEndDateUtc\"] = this.subscriptionEndDateUtc ? this.subscriptionEndDateUtc.toString() : undefined;\r\n data[\"isInTrialPeriod\"] = this.isInTrialPeriod;\r\n data[\"subscriptionPaymentType\"] = this.subscriptionPaymentType;\r\n data[\"edition\"] = this.edition ? this.edition.toJSON() : undefined;\r\n if (Array.isArray(this.featureValues)) {\r\n data[\"featureValues\"] = [];\r\n for (let item of this.featureValues)\r\n data[\"featureValues\"].push(item.toJSON());\r\n }\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"paymentPeriodType\"] = this.paymentPeriodType;\r\n data[\"subscriptionDateString\"] = this.subscriptionDateString;\r\n data[\"creationTimeString\"] = this.creationTimeString;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantLoginInfoDto {\r\n tenancyName: string | undefined;\r\n name: string | undefined;\r\n logoId: string | undefined;\r\n logoFileType: string | undefined;\r\n customCssId: string | undefined;\r\n subscriptionEndDateUtc: DateTime | undefined;\r\n isInTrialPeriod: boolean;\r\n subscriptionPaymentType: SubscriptionPaymentType;\r\n edition: EditionInfoDto;\r\n featureValues: NameValueDto[] | undefined;\r\n creationTime: DateTime;\r\n paymentPeriodType: PaymentPeriodType;\r\n subscriptionDateString: string | undefined;\r\n creationTimeString: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class TenantManagementSettingsEditDto implements ITenantManagementSettingsEditDto {\r\n allowSelfRegistration!: boolean;\r\n isNewRegisteredTenantActiveByDefault!: boolean;\r\n useCaptchaOnRegistration!: boolean;\r\n defaultEditionId!: number | undefined;\r\n\r\n constructor(data?: ITenantManagementSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.allowSelfRegistration = _data[\"allowSelfRegistration\"];\r\n this.isNewRegisteredTenantActiveByDefault = _data[\"isNewRegisteredTenantActiveByDefault\"];\r\n this.useCaptchaOnRegistration = _data[\"useCaptchaOnRegistration\"];\r\n this.defaultEditionId = _data[\"defaultEditionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantManagementSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantManagementSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"allowSelfRegistration\"] = this.allowSelfRegistration;\r\n data[\"isNewRegisteredTenantActiveByDefault\"] = this.isNewRegisteredTenantActiveByDefault;\r\n data[\"useCaptchaOnRegistration\"] = this.useCaptchaOnRegistration;\r\n data[\"defaultEditionId\"] = this.defaultEditionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantManagementSettingsEditDto {\r\n allowSelfRegistration: boolean;\r\n isNewRegisteredTenantActiveByDefault: boolean;\r\n useCaptchaOnRegistration: boolean;\r\n defaultEditionId: number | undefined;\r\n}\r\n\r\nexport class TenantNotification implements ITenantNotification {\r\n tenantId!: number | undefined;\r\n notificationName!: string | undefined;\r\n data!: NotificationData;\r\n entityType!: string | undefined;\r\n entityTypeName!: string | undefined;\r\n entityId!: any | undefined;\r\n severity!: NotificationSeverity;\r\n creationTime!: DateTime;\r\n id!: string;\r\n\r\n constructor(data?: ITenantNotification) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.notificationName = _data[\"notificationName\"];\r\n this.data = _data[\"data\"] ? NotificationData.fromJS(_data[\"data\"]) : undefined;\r\n this.entityType = _data[\"entityType\"];\r\n this.entityTypeName = _data[\"entityTypeName\"];\r\n this.entityId = _data[\"entityId\"];\r\n this.severity = _data[\"severity\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantNotification {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantNotification();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"notificationName\"] = this.notificationName;\r\n data[\"data\"] = this.data ? this.data.toJSON() : undefined;\r\n data[\"entityType\"] = this.entityType;\r\n data[\"entityTypeName\"] = this.entityTypeName;\r\n data[\"entityId\"] = this.entityId;\r\n data[\"severity\"] = this.severity;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantNotification {\r\n tenantId: number | undefined;\r\n notificationName: string | undefined;\r\n data: NotificationData;\r\n entityType: string | undefined;\r\n entityTypeName: string | undefined;\r\n entityId: any | undefined;\r\n severity: NotificationSeverity;\r\n creationTime: DateTime;\r\n id: string;\r\n}\r\n\r\nexport class TenantOtherSettingsEditDto implements ITenantOtherSettingsEditDto {\r\n isQuickThemeSelectEnabled!: boolean;\r\n\r\n constructor(data?: ITenantOtherSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isQuickThemeSelectEnabled = _data[\"isQuickThemeSelectEnabled\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantOtherSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantOtherSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isQuickThemeSelectEnabled\"] = this.isQuickThemeSelectEnabled;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantOtherSettingsEditDto {\r\n isQuickThemeSelectEnabled: boolean;\r\n}\r\n\r\nexport class TenantSettingsEditDto implements ITenantSettingsEditDto {\r\n general!: GeneralSettingsEditDto;\r\n userManagement!: TenantUserManagementSettingsEditDto;\r\n email!: TenantEmailSettingsEditDto;\r\n ldap!: LdapSettingsEditDto;\r\n security!: SecuritySettingsEditDto;\r\n billing!: TenantBillingSettingsEditDto;\r\n otherSettings!: TenantOtherSettingsEditDto;\r\n externalLoginProviderSettings!: ExternalLoginProviderSettingsEditDto;\r\n\r\n constructor(data?: ITenantSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.userManagement = new TenantUserManagementSettingsEditDto();\r\n this.security = new SecuritySettingsEditDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.general = _data[\"general\"] ? GeneralSettingsEditDto.fromJS(_data[\"general\"]) : undefined;\r\n this.userManagement = _data[\"userManagement\"] ? TenantUserManagementSettingsEditDto.fromJS(_data[\"userManagement\"]) : new TenantUserManagementSettingsEditDto();\r\n this.email = _data[\"email\"] ? TenantEmailSettingsEditDto.fromJS(_data[\"email\"]) : undefined;\r\n this.ldap = _data[\"ldap\"] ? LdapSettingsEditDto.fromJS(_data[\"ldap\"]) : undefined;\r\n this.security = _data[\"security\"] ? SecuritySettingsEditDto.fromJS(_data[\"security\"]) : new SecuritySettingsEditDto();\r\n this.billing = _data[\"billing\"] ? TenantBillingSettingsEditDto.fromJS(_data[\"billing\"]) : undefined;\r\n this.otherSettings = _data[\"otherSettings\"] ? TenantOtherSettingsEditDto.fromJS(_data[\"otherSettings\"]) : undefined;\r\n this.externalLoginProviderSettings = _data[\"externalLoginProviderSettings\"] ? ExternalLoginProviderSettingsEditDto.fromJS(_data[\"externalLoginProviderSettings\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"general\"] = this.general ? this.general.toJSON() : undefined;\r\n data[\"userManagement\"] = this.userManagement ? this.userManagement.toJSON() : undefined;\r\n data[\"email\"] = this.email ? this.email.toJSON() : undefined;\r\n data[\"ldap\"] = this.ldap ? this.ldap.toJSON() : undefined;\r\n data[\"security\"] = this.security ? this.security.toJSON() : undefined;\r\n data[\"billing\"] = this.billing ? this.billing.toJSON() : undefined;\r\n data[\"otherSettings\"] = this.otherSettings ? this.otherSettings.toJSON() : undefined;\r\n data[\"externalLoginProviderSettings\"] = this.externalLoginProviderSettings ? this.externalLoginProviderSettings.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantSettingsEditDto {\r\n general: GeneralSettingsEditDto;\r\n userManagement: TenantUserManagementSettingsEditDto;\r\n email: TenantEmailSettingsEditDto;\r\n ldap: LdapSettingsEditDto;\r\n security: SecuritySettingsEditDto;\r\n billing: TenantBillingSettingsEditDto;\r\n otherSettings: TenantOtherSettingsEditDto;\r\n externalLoginProviderSettings: ExternalLoginProviderSettingsEditDto;\r\n}\r\n\r\nexport class TenantUserManagementSettingsEditDto implements ITenantUserManagementSettingsEditDto {\r\n allowSelfRegistration!: boolean;\r\n isNewRegisteredUserActiveByDefault!: boolean;\r\n isEmailConfirmationRequiredForLogin!: boolean;\r\n useCaptchaOnRegistration!: boolean;\r\n useCaptchaOnLogin!: boolean;\r\n isCookieConsentEnabled!: boolean;\r\n isQuickThemeSelectEnabled!: boolean;\r\n allowUsingGravatarProfilePicture!: boolean;\r\n sessionTimeOutSettings!: SessionTimeOutSettingsEditDto;\r\n\r\n constructor(data?: ITenantUserManagementSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.allowSelfRegistration = _data[\"allowSelfRegistration\"];\r\n this.isNewRegisteredUserActiveByDefault = _data[\"isNewRegisteredUserActiveByDefault\"];\r\n this.isEmailConfirmationRequiredForLogin = _data[\"isEmailConfirmationRequiredForLogin\"];\r\n this.useCaptchaOnRegistration = _data[\"useCaptchaOnRegistration\"];\r\n this.useCaptchaOnLogin = _data[\"useCaptchaOnLogin\"];\r\n this.isCookieConsentEnabled = _data[\"isCookieConsentEnabled\"];\r\n this.isQuickThemeSelectEnabled = _data[\"isQuickThemeSelectEnabled\"];\r\n this.allowUsingGravatarProfilePicture = _data[\"allowUsingGravatarProfilePicture\"];\r\n this.sessionTimeOutSettings = _data[\"sessionTimeOutSettings\"] ? SessionTimeOutSettingsEditDto.fromJS(_data[\"sessionTimeOutSettings\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): TenantUserManagementSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TenantUserManagementSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"allowSelfRegistration\"] = this.allowSelfRegistration;\r\n data[\"isNewRegisteredUserActiveByDefault\"] = this.isNewRegisteredUserActiveByDefault;\r\n data[\"isEmailConfirmationRequiredForLogin\"] = this.isEmailConfirmationRequiredForLogin;\r\n data[\"useCaptchaOnRegistration\"] = this.useCaptchaOnRegistration;\r\n data[\"useCaptchaOnLogin\"] = this.useCaptchaOnLogin;\r\n data[\"isCookieConsentEnabled\"] = this.isCookieConsentEnabled;\r\n data[\"isQuickThemeSelectEnabled\"] = this.isQuickThemeSelectEnabled;\r\n data[\"allowUsingGravatarProfilePicture\"] = this.allowUsingGravatarProfilePicture;\r\n data[\"sessionTimeOutSettings\"] = this.sessionTimeOutSettings ? this.sessionTimeOutSettings.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITenantUserManagementSettingsEditDto {\r\n allowSelfRegistration: boolean;\r\n isNewRegisteredUserActiveByDefault: boolean;\r\n isEmailConfirmationRequiredForLogin: boolean;\r\n useCaptchaOnRegistration: boolean;\r\n useCaptchaOnLogin: boolean;\r\n isCookieConsentEnabled: boolean;\r\n isQuickThemeSelectEnabled: boolean;\r\n allowUsingGravatarProfilePicture: boolean;\r\n sessionTimeOutSettings: SessionTimeOutSettingsEditDto;\r\n}\r\n\r\nexport class ThemeFooterSettingsDto implements IThemeFooterSettingsDto {\r\n fixedFooter!: boolean;\r\n\r\n constructor(data?: IThemeFooterSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.fixedFooter = _data[\"fixedFooter\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ThemeFooterSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ThemeFooterSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"fixedFooter\"] = this.fixedFooter;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IThemeFooterSettingsDto {\r\n fixedFooter: boolean;\r\n}\r\n\r\nexport class ThemeHeaderSettingsDto implements IThemeHeaderSettingsDto {\r\n readonly desktopFixedHeader!: boolean;\r\n readonly mobileFixedHeader!: boolean;\r\n minimizeDesktopHeaderType!: string | undefined;\r\n\r\n constructor(data?: IThemeHeaderSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n (this).desktopFixedHeader = _data[\"desktopFixedHeader\"];\r\n (this).mobileFixedHeader = _data[\"mobileFixedHeader\"];\r\n this.minimizeDesktopHeaderType = _data[\"minimizeDesktopHeaderType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ThemeHeaderSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ThemeHeaderSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"desktopFixedHeader\"] = this.desktopFixedHeader;\r\n data[\"mobileFixedHeader\"] = this.mobileFixedHeader;\r\n data[\"minimizeDesktopHeaderType\"] = this.minimizeDesktopHeaderType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IThemeHeaderSettingsDto {\r\n desktopFixedHeader: boolean;\r\n mobileFixedHeader: boolean;\r\n minimizeDesktopHeaderType: string | undefined;\r\n}\r\n\r\nexport class ThemeLayoutSettingsDto implements IThemeLayoutSettingsDto {\r\n layoutType!: string | undefined;\r\n darkMode!: boolean;\r\n\r\n constructor(data?: IThemeLayoutSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.layoutType = _data[\"layoutType\"];\r\n this.darkMode = _data[\"darkMode\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ThemeLayoutSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ThemeLayoutSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"layoutType\"] = this.layoutType;\r\n data[\"darkMode\"] = this.darkMode;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IThemeLayoutSettingsDto {\r\n layoutType: string | undefined;\r\n darkMode: boolean;\r\n}\r\n\r\nexport class ThemeMenuSettingsDto implements IThemeMenuSettingsDto {\r\n position!: string | undefined;\r\n asideSkin!: string | undefined;\r\n fixedAside!: boolean;\r\n allowAsideMinimizing!: boolean;\r\n defaultMinimizedAside!: boolean;\r\n submenuToggle!: string | undefined;\r\n searchActive!: boolean;\r\n enableSecondary!: boolean;\r\n hoverableAside!: boolean;\r\n\r\n constructor(data?: IThemeMenuSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.position = _data[\"position\"];\r\n this.asideSkin = _data[\"asideSkin\"];\r\n this.fixedAside = _data[\"fixedAside\"];\r\n this.allowAsideMinimizing = _data[\"allowAsideMinimizing\"];\r\n this.defaultMinimizedAside = _data[\"defaultMinimizedAside\"];\r\n this.submenuToggle = _data[\"submenuToggle\"];\r\n this.searchActive = _data[\"searchActive\"];\r\n this.enableSecondary = _data[\"enableSecondary\"];\r\n this.hoverableAside = _data[\"hoverableAside\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ThemeMenuSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ThemeMenuSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"position\"] = this.position;\r\n data[\"asideSkin\"] = this.asideSkin;\r\n data[\"fixedAside\"] = this.fixedAside;\r\n data[\"allowAsideMinimizing\"] = this.allowAsideMinimizing;\r\n data[\"defaultMinimizedAside\"] = this.defaultMinimizedAside;\r\n data[\"submenuToggle\"] = this.submenuToggle;\r\n data[\"searchActive\"] = this.searchActive;\r\n data[\"enableSecondary\"] = this.enableSecondary;\r\n data[\"hoverableAside\"] = this.hoverableAside;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IThemeMenuSettingsDto {\r\n position: string | undefined;\r\n asideSkin: string | undefined;\r\n fixedAside: boolean;\r\n allowAsideMinimizing: boolean;\r\n defaultMinimizedAside: boolean;\r\n submenuToggle: string | undefined;\r\n searchActive: boolean;\r\n enableSecondary: boolean;\r\n hoverableAside: boolean;\r\n}\r\n\r\nexport class ThemeSettingsDto implements IThemeSettingsDto {\r\n theme!: string | undefined;\r\n layout!: ThemeLayoutSettingsDto;\r\n header!: ThemeHeaderSettingsDto;\r\n subHeader!: ThemeSubHeaderSettingsDto;\r\n menu!: ThemeMenuSettingsDto;\r\n footer!: ThemeFooterSettingsDto;\r\n\r\n constructor(data?: IThemeSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.theme = _data[\"theme\"];\r\n this.layout = _data[\"layout\"] ? ThemeLayoutSettingsDto.fromJS(_data[\"layout\"]) : undefined;\r\n this.header = _data[\"header\"] ? ThemeHeaderSettingsDto.fromJS(_data[\"header\"]) : undefined;\r\n this.subHeader = _data[\"subHeader\"] ? ThemeSubHeaderSettingsDto.fromJS(_data[\"subHeader\"]) : undefined;\r\n this.menu = _data[\"menu\"] ? ThemeMenuSettingsDto.fromJS(_data[\"menu\"]) : undefined;\r\n this.footer = _data[\"footer\"] ? ThemeFooterSettingsDto.fromJS(_data[\"footer\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ThemeSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ThemeSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"theme\"] = this.theme;\r\n data[\"layout\"] = this.layout ? this.layout.toJSON() : undefined;\r\n data[\"header\"] = this.header ? this.header.toJSON() : undefined;\r\n data[\"subHeader\"] = this.subHeader ? this.subHeader.toJSON() : undefined;\r\n data[\"menu\"] = this.menu ? this.menu.toJSON() : undefined;\r\n data[\"footer\"] = this.footer ? this.footer.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IThemeSettingsDto {\r\n theme: string | undefined;\r\n layout: ThemeLayoutSettingsDto;\r\n header: ThemeHeaderSettingsDto;\r\n subHeader: ThemeSubHeaderSettingsDto;\r\n menu: ThemeMenuSettingsDto;\r\n footer: ThemeFooterSettingsDto;\r\n}\r\n\r\nexport class ThemeSubHeaderSettingsDto implements IThemeSubHeaderSettingsDto {\r\n fixedSubHeader!: boolean;\r\n subheaderStyle!: string | undefined;\r\n subheaderSize!: number;\r\n titleStyle!: string | undefined;\r\n containerStyle!: string | undefined;\r\n subContainerStyle!: string | undefined;\r\n\r\n constructor(data?: IThemeSubHeaderSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.fixedSubHeader = _data[\"fixedSubHeader\"];\r\n this.subheaderStyle = _data[\"subheaderStyle\"];\r\n this.subheaderSize = _data[\"subheaderSize\"];\r\n this.titleStyle = _data[\"titleStyle\"];\r\n this.containerStyle = _data[\"containerStyle\"];\r\n this.subContainerStyle = _data[\"subContainerStyle\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ThemeSubHeaderSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ThemeSubHeaderSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"fixedSubHeader\"] = this.fixedSubHeader;\r\n data[\"subheaderStyle\"] = this.subheaderStyle;\r\n data[\"subheaderSize\"] = this.subheaderSize;\r\n data[\"titleStyle\"] = this.titleStyle;\r\n data[\"containerStyle\"] = this.containerStyle;\r\n data[\"subContainerStyle\"] = this.subContainerStyle;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IThemeSubHeaderSettingsDto {\r\n fixedSubHeader: boolean;\r\n subheaderStyle: string | undefined;\r\n subheaderSize: number;\r\n titleStyle: string | undefined;\r\n containerStyle: string | undefined;\r\n subContainerStyle: string | undefined;\r\n}\r\n\r\nexport class TimeOnlyRange implements ITimeOnlyRange {\r\n from!: string;\r\n to!: string;\r\n readonly duration!: string;\r\n\r\n constructor(data?: ITimeOnlyRange) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.from = _data[\"from\"];\r\n this.to = _data[\"to\"];\r\n (this).duration = _data[\"duration\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TimeOnlyRange {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TimeOnlyRange();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"from\"] = this.from;\r\n data[\"to\"] = this.to;\r\n data[\"duration\"] = this.duration;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITimeOnlyRange {\r\n from: string;\r\n to: string;\r\n duration: string;\r\n}\r\n\r\nexport class TimeSpanRangeDto implements ITimeSpanRangeDto {\r\n from!: string;\r\n to!: string;\r\n\r\n constructor(data?: ITimeSpanRangeDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.from = _data[\"from\"];\r\n this.to = _data[\"to\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TimeSpanRangeDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TimeSpanRangeDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"from\"] = this.from;\r\n data[\"to\"] = this.to;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITimeSpanRangeDto {\r\n from: string;\r\n to: string;\r\n}\r\n\r\nexport class TopStatsData implements ITopStatsData {\r\n newTenantsCount!: number;\r\n newSubscriptionAmount!: number;\r\n dashboardPlaceholder1!: number;\r\n dashboardPlaceholder2!: number;\r\n\r\n constructor(data?: ITopStatsData) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.newTenantsCount = _data[\"newTenantsCount\"];\r\n this.newSubscriptionAmount = _data[\"newSubscriptionAmount\"];\r\n this.dashboardPlaceholder1 = _data[\"dashboardPlaceholder1\"];\r\n this.dashboardPlaceholder2 = _data[\"dashboardPlaceholder2\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TopStatsData {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TopStatsData();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"newTenantsCount\"] = this.newTenantsCount;\r\n data[\"newSubscriptionAmount\"] = this.newSubscriptionAmount;\r\n data[\"dashboardPlaceholder1\"] = this.dashboardPlaceholder1;\r\n data[\"dashboardPlaceholder2\"] = this.dashboardPlaceholder2;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITopStatsData {\r\n newTenantsCount: number;\r\n newSubscriptionAmount: number;\r\n dashboardPlaceholder1: number;\r\n dashboardPlaceholder2: number;\r\n}\r\n\r\nexport enum TradeClass {\r\n Import = 0,\r\n Export = 1,\r\n Domestic = 2,\r\n Unknown = -1,\r\n}\r\n\r\nexport class TwitterExternalLoginProviderSettings implements ITwitterExternalLoginProviderSettings {\r\n consumerKey!: string | undefined;\r\n consumerSecret!: string | undefined;\r\n\r\n constructor(data?: ITwitterExternalLoginProviderSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.consumerKey = _data[\"consumerKey\"];\r\n this.consumerSecret = _data[\"consumerSecret\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TwitterExternalLoginProviderSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TwitterExternalLoginProviderSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"consumerKey\"] = this.consumerKey;\r\n data[\"consumerSecret\"] = this.consumerSecret;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITwitterExternalLoginProviderSettings {\r\n consumerKey: string | undefined;\r\n consumerSecret: string | undefined;\r\n}\r\n\r\nexport class TwitterGetAccessTokenResponse implements ITwitterGetAccessTokenResponse {\r\n accessToken!: string | undefined;\r\n accessTokenSecret!: string | undefined;\r\n userId!: string | undefined;\r\n userName!: string | undefined;\r\n\r\n constructor(data?: ITwitterGetAccessTokenResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.accessToken = _data[\"accessToken\"];\r\n this.accessTokenSecret = _data[\"accessTokenSecret\"];\r\n this.userId = _data[\"userId\"];\r\n this.userName = _data[\"userName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TwitterGetAccessTokenResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TwitterGetAccessTokenResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"accessToken\"] = this.accessToken;\r\n data[\"accessTokenSecret\"] = this.accessTokenSecret;\r\n data[\"userId\"] = this.userId;\r\n data[\"userName\"] = this.userName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITwitterGetAccessTokenResponse {\r\n accessToken: string | undefined;\r\n accessTokenSecret: string | undefined;\r\n userId: string | undefined;\r\n userName: string | undefined;\r\n}\r\n\r\nexport class TwitterGetRequestTokenResponse implements ITwitterGetRequestTokenResponse {\r\n token!: string | undefined;\r\n secret!: string | undefined;\r\n confirmed!: boolean;\r\n redirectUrl!: string | undefined;\r\n\r\n constructor(data?: ITwitterGetRequestTokenResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.token = _data[\"token\"];\r\n this.secret = _data[\"secret\"];\r\n this.confirmed = _data[\"confirmed\"];\r\n this.redirectUrl = _data[\"redirectUrl\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TwitterGetRequestTokenResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TwitterGetRequestTokenResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"token\"] = this.token;\r\n data[\"secret\"] = this.secret;\r\n data[\"confirmed\"] = this.confirmed;\r\n data[\"redirectUrl\"] = this.redirectUrl;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITwitterGetRequestTokenResponse {\r\n token: string | undefined;\r\n secret: string | undefined;\r\n confirmed: boolean;\r\n redirectUrl: string | undefined;\r\n}\r\n\r\nexport class TwoFactorLoginSettingsEditDto implements ITwoFactorLoginSettingsEditDto {\r\n isEnabledForApplication!: boolean;\r\n isEnabled!: boolean;\r\n isEmailProviderEnabled!: boolean;\r\n isSmsProviderEnabled!: boolean;\r\n isRememberBrowserEnabled!: boolean;\r\n isGoogleAuthenticatorEnabled!: boolean;\r\n\r\n constructor(data?: ITwoFactorLoginSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isEnabledForApplication = _data[\"isEnabledForApplication\"];\r\n this.isEnabled = _data[\"isEnabled\"];\r\n this.isEmailProviderEnabled = _data[\"isEmailProviderEnabled\"];\r\n this.isSmsProviderEnabled = _data[\"isSmsProviderEnabled\"];\r\n this.isRememberBrowserEnabled = _data[\"isRememberBrowserEnabled\"];\r\n this.isGoogleAuthenticatorEnabled = _data[\"isGoogleAuthenticatorEnabled\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TwoFactorLoginSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TwoFactorLoginSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isEnabledForApplication\"] = this.isEnabledForApplication;\r\n data[\"isEnabled\"] = this.isEnabled;\r\n data[\"isEmailProviderEnabled\"] = this.isEmailProviderEnabled;\r\n data[\"isSmsProviderEnabled\"] = this.isSmsProviderEnabled;\r\n data[\"isRememberBrowserEnabled\"] = this.isRememberBrowserEnabled;\r\n data[\"isGoogleAuthenticatorEnabled\"] = this.isGoogleAuthenticatorEnabled;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITwoFactorLoginSettingsEditDto {\r\n isEnabledForApplication: boolean;\r\n isEnabled: boolean;\r\n isEmailProviderEnabled: boolean;\r\n isSmsProviderEnabled: boolean;\r\n isRememberBrowserEnabled: boolean;\r\n isGoogleAuthenticatorEnabled: boolean;\r\n}\r\n\r\nexport class UiCustomizationSettingsDto implements IUiCustomizationSettingsDto {\r\n baseSettings!: ThemeSettingsDto;\r\n isLeftMenuUsed!: boolean;\r\n isTopMenuUsed!: boolean;\r\n isTabMenuUsed!: boolean;\r\n allowMenuScroll!: boolean;\r\n\r\n constructor(data?: IUiCustomizationSettingsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.baseSettings = _data[\"baseSettings\"] ? ThemeSettingsDto.fromJS(_data[\"baseSettings\"]) : undefined;\r\n this.isLeftMenuUsed = _data[\"isLeftMenuUsed\"];\r\n this.isTopMenuUsed = _data[\"isTopMenuUsed\"];\r\n this.isTabMenuUsed = _data[\"isTabMenuUsed\"];\r\n this.allowMenuScroll = _data[\"allowMenuScroll\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UiCustomizationSettingsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UiCustomizationSettingsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"baseSettings\"] = this.baseSettings ? this.baseSettings.toJSON() : undefined;\r\n data[\"isLeftMenuUsed\"] = this.isLeftMenuUsed;\r\n data[\"isTopMenuUsed\"] = this.isTopMenuUsed;\r\n data[\"isTabMenuUsed\"] = this.isTabMenuUsed;\r\n data[\"allowMenuScroll\"] = this.allowMenuScroll;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUiCustomizationSettingsDto {\r\n baseSettings: ThemeSettingsDto;\r\n isLeftMenuUsed: boolean;\r\n isTopMenuUsed: boolean;\r\n isTabMenuUsed: boolean;\r\n allowMenuScroll: boolean;\r\n}\r\n\r\nexport class UnblockUserInput implements IUnblockUserInput {\r\n userId!: number;\r\n tenantId!: number | undefined;\r\n\r\n constructor(data?: IUnblockUserInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UnblockUserInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UnblockUserInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"tenantId\"] = this.tenantId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUnblockUserInput {\r\n userId: number;\r\n tenantId: number | undefined;\r\n}\r\n\r\nexport class UnlinkUserInput implements IUnlinkUserInput {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n\r\n constructor(data?: IUnlinkUserInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UnlinkUserInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UnlinkUserInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUnlinkUserInput {\r\n tenantId: number | undefined;\r\n userId: number;\r\n}\r\n\r\nexport class UpdateEditionDto implements IUpdateEditionDto {\r\n edition!: EditionEditDto;\r\n featureValues!: NameValueDto[];\r\n\r\n constructor(data?: IUpdateEditionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.edition = new EditionEditDto();\r\n this.featureValues = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.edition = _data[\"edition\"] ? EditionEditDto.fromJS(_data[\"edition\"]) : new EditionEditDto();\r\n if (Array.isArray(_data[\"featureValues\"])) {\r\n this.featureValues = [] as any;\r\n for (let item of _data[\"featureValues\"])\r\n this.featureValues!.push(NameValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateEditionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateEditionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"edition\"] = this.edition ? this.edition.toJSON() : undefined;\r\n if (Array.isArray(this.featureValues)) {\r\n data[\"featureValues\"] = [];\r\n for (let item of this.featureValues)\r\n data[\"featureValues\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateEditionDto {\r\n edition: EditionEditDto;\r\n featureValues: NameValueDto[];\r\n}\r\n\r\nexport class UpdateGoogleAuthenticatorKeyOutput implements IUpdateGoogleAuthenticatorKeyOutput {\r\n qrCodeSetupImageUrl!: string | undefined;\r\n\r\n constructor(data?: IUpdateGoogleAuthenticatorKeyOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.qrCodeSetupImageUrl = _data[\"qrCodeSetupImageUrl\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateGoogleAuthenticatorKeyOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateGoogleAuthenticatorKeyOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"qrCodeSetupImageUrl\"] = this.qrCodeSetupImageUrl;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateGoogleAuthenticatorKeyOutput {\r\n qrCodeSetupImageUrl: string | undefined;\r\n}\r\n\r\nexport class UpdateLanguageTextInput implements IUpdateLanguageTextInput {\r\n languageName!: string;\r\n sourceName!: string;\r\n key!: string;\r\n value!: string;\r\n\r\n constructor(data?: IUpdateLanguageTextInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.languageName = _data[\"languageName\"];\r\n this.sourceName = _data[\"sourceName\"];\r\n this.key = _data[\"key\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateLanguageTextInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateLanguageTextInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"languageName\"] = this.languageName;\r\n data[\"sourceName\"] = this.sourceName;\r\n data[\"key\"] = this.key;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateLanguageTextInput {\r\n languageName: string;\r\n sourceName: string;\r\n key: string;\r\n value: string;\r\n}\r\n\r\nexport class UpdateNotificationSettingsInput implements IUpdateNotificationSettingsInput {\r\n receiveNotifications!: boolean;\r\n notifications!: NotificationSubscriptionDto[] | undefined;\r\n\r\n constructor(data?: IUpdateNotificationSettingsInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.receiveNotifications = _data[\"receiveNotifications\"];\r\n if (Array.isArray(_data[\"notifications\"])) {\r\n this.notifications = [] as any;\r\n for (let item of _data[\"notifications\"])\r\n this.notifications!.push(NotificationSubscriptionDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateNotificationSettingsInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateNotificationSettingsInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"receiveNotifications\"] = this.receiveNotifications;\r\n if (Array.isArray(this.notifications)) {\r\n data[\"notifications\"] = [];\r\n for (let item of this.notifications)\r\n data[\"notifications\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateNotificationSettingsInput {\r\n receiveNotifications: boolean;\r\n notifications: NotificationSubscriptionDto[] | undefined;\r\n}\r\n\r\nexport class UpdateOrderLinesInput implements IUpdateOrderLinesInput {\r\n items!: CreateOutboundShipmentOrderItemInput[] | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IUpdateOrderLinesInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(CreateOutboundShipmentOrderItemInput.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateOrderLinesInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateOrderLinesInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateOrderLinesInput {\r\n items: CreateOutboundShipmentOrderItemInput[] | undefined;\r\n id: number;\r\n}\r\n\r\nexport class UpdateOrganizationUnitInput implements IUpdateOrganizationUnitInput {\r\n id!: number;\r\n displayName!: string;\r\n\r\n constructor(data?: IUpdateOrganizationUnitInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.displayName = _data[\"displayName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateOrganizationUnitInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateOrganizationUnitInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"displayName\"] = this.displayName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateOrganizationUnitInput {\r\n id: number;\r\n displayName: string;\r\n}\r\n\r\nexport class UpdateProfilePictureInput implements IUpdateProfilePictureInput {\r\n fileToken!: string | undefined;\r\n x!: number;\r\n y!: number;\r\n width!: number;\r\n height!: number;\r\n useGravatarProfilePicture!: boolean;\r\n userId!: number | undefined;\r\n\r\n constructor(data?: IUpdateProfilePictureInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.fileToken = _data[\"fileToken\"];\r\n this.x = _data[\"x\"];\r\n this.y = _data[\"y\"];\r\n this.width = _data[\"width\"];\r\n this.height = _data[\"height\"];\r\n this.useGravatarProfilePicture = _data[\"useGravatarProfilePicture\"];\r\n this.userId = _data[\"userId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateProfilePictureInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateProfilePictureInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"fileToken\"] = this.fileToken;\r\n data[\"x\"] = this.x;\r\n data[\"y\"] = this.y;\r\n data[\"width\"] = this.width;\r\n data[\"height\"] = this.height;\r\n data[\"useGravatarProfilePicture\"] = this.useGravatarProfilePicture;\r\n data[\"userId\"] = this.userId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateProfilePictureInput {\r\n fileToken: string | undefined;\r\n x: number;\r\n y: number;\r\n width: number;\r\n height: number;\r\n useGravatarProfilePicture: boolean;\r\n userId: number | undefined;\r\n}\r\n\r\nexport class UpdateTenantFeaturesInput implements IUpdateTenantFeaturesInput {\r\n id!: number;\r\n featureValues!: NameValueDto[];\r\n\r\n constructor(data?: IUpdateTenantFeaturesInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.featureValues = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n if (Array.isArray(_data[\"featureValues\"])) {\r\n this.featureValues = [] as any;\r\n for (let item of _data[\"featureValues\"])\r\n this.featureValues!.push(NameValueDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateTenantFeaturesInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateTenantFeaturesInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n if (Array.isArray(this.featureValues)) {\r\n data[\"featureValues\"] = [];\r\n for (let item of this.featureValues)\r\n data[\"featureValues\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateTenantFeaturesInput {\r\n id: number;\r\n featureValues: NameValueDto[];\r\n}\r\n\r\nexport class UpdateUserPermissionsInput implements IUpdateUserPermissionsInput {\r\n id!: number;\r\n grantedPermissionNames!: string[];\r\n\r\n constructor(data?: IUpdateUserPermissionsInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.grantedPermissionNames = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n if (Array.isArray(_data[\"grantedPermissionNames\"])) {\r\n this.grantedPermissionNames = [] as any;\r\n for (let item of _data[\"grantedPermissionNames\"])\r\n this.grantedPermissionNames!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateUserPermissionsInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateUserPermissionsInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n if (Array.isArray(this.grantedPermissionNames)) {\r\n data[\"grantedPermissionNames\"] = [];\r\n for (let item of this.grantedPermissionNames)\r\n data[\"grantedPermissionNames\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateUserPermissionsInput {\r\n id: number;\r\n grantedPermissionNames: string[];\r\n}\r\n\r\nexport class UpdateUserSignInTokenOutput implements IUpdateUserSignInTokenOutput {\r\n signInToken!: string | undefined;\r\n encodedUserId!: string | undefined;\r\n encodedTenantId!: string | undefined;\r\n\r\n constructor(data?: IUpdateUserSignInTokenOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.signInToken = _data[\"signInToken\"];\r\n this.encodedUserId = _data[\"encodedUserId\"];\r\n this.encodedTenantId = _data[\"encodedTenantId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UpdateUserSignInTokenOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UpdateUserSignInTokenOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"signInToken\"] = this.signInToken;\r\n data[\"encodedUserId\"] = this.encodedUserId;\r\n data[\"encodedTenantId\"] = this.encodedTenantId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUpdateUserSignInTokenOutput {\r\n signInToken: string | undefined;\r\n encodedUserId: string | undefined;\r\n encodedTenantId: string | undefined;\r\n}\r\n\r\nexport class User implements IUser {\r\n profilePictureId!: string | undefined;\r\n shouldChangePasswordOnNextLogin!: boolean;\r\n signInTokenExpireTimeUtc!: DateTime | undefined;\r\n signInToken!: string | undefined;\r\n googleAuthenticatorKey!: string | undefined;\r\n organizationUnits!: UserOrganizationUnit[] | undefined;\r\n lastActivationEmailSentTimeUtc!: DateTime | undefined;\r\n normalizedUserName!: string;\r\n normalizedEmailAddress!: string;\r\n concurrencyStamp!: string | undefined;\r\n tokens!: UserToken[] | undefined;\r\n deleterUser!: User;\r\n creatorUser!: User;\r\n lastModifierUser!: User;\r\n authenticationSource!: string | undefined;\r\n userName!: string;\r\n tenantId!: number | undefined;\r\n emailAddress!: string;\r\n name!: string;\r\n surname!: string;\r\n readonly fullName!: string | undefined;\r\n password!: string;\r\n emailConfirmationCode!: string | undefined;\r\n passwordResetCode!: string | undefined;\r\n lockoutEndDateUtc!: DateTime | undefined;\r\n accessFailedCount!: number;\r\n isLockoutEnabled!: boolean;\r\n phoneNumber!: string | undefined;\r\n isPhoneNumberConfirmed!: boolean;\r\n securityStamp!: string | undefined;\r\n isTwoFactorEnabled!: boolean;\r\n logins!: UserLogin[] | undefined;\r\n roles!: UserRole[] | undefined;\r\n claims!: UserClaim[] | undefined;\r\n permissions!: UserPermissionSetting[] | undefined;\r\n settings!: Setting[] | undefined;\r\n isEmailConfirmed!: boolean;\r\n isActive!: boolean;\r\n isDeleted!: boolean;\r\n deleterUserId!: number | undefined;\r\n deletionTime!: DateTime | undefined;\r\n lastModificationTime!: DateTime | undefined;\r\n lastModifierUserId!: number | undefined;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IUser) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.profilePictureId = _data[\"profilePictureId\"];\r\n this.shouldChangePasswordOnNextLogin = _data[\"shouldChangePasswordOnNextLogin\"];\r\n this.signInTokenExpireTimeUtc = _data[\"signInTokenExpireTimeUtc\"] ? DateTime.fromISO(_data[\"signInTokenExpireTimeUtc\"].toString()) : undefined;\r\n this.signInToken = _data[\"signInToken\"];\r\n this.googleAuthenticatorKey = _data[\"googleAuthenticatorKey\"];\r\n if (Array.isArray(_data[\"organizationUnits\"])) {\r\n this.organizationUnits = [] as any;\r\n for (let item of _data[\"organizationUnits\"])\r\n this.organizationUnits!.push(UserOrganizationUnit.fromJS(item));\r\n }\r\n this.lastActivationEmailSentTimeUtc = _data[\"lastActivationEmailSentTimeUtc\"] ? DateTime.fromISO(_data[\"lastActivationEmailSentTimeUtc\"].toString()) : undefined;\r\n this.normalizedUserName = _data[\"normalizedUserName\"];\r\n this.normalizedEmailAddress = _data[\"normalizedEmailAddress\"];\r\n this.concurrencyStamp = _data[\"concurrencyStamp\"];\r\n if (Array.isArray(_data[\"tokens\"])) {\r\n this.tokens = [] as any;\r\n for (let item of _data[\"tokens\"])\r\n this.tokens!.push(UserToken.fromJS(item));\r\n }\r\n this.deleterUser = _data[\"deleterUser\"] ? User.fromJS(_data[\"deleterUser\"]) : undefined;\r\n this.creatorUser = _data[\"creatorUser\"] ? User.fromJS(_data[\"creatorUser\"]) : undefined;\r\n this.lastModifierUser = _data[\"lastModifierUser\"] ? User.fromJS(_data[\"lastModifierUser\"]) : undefined;\r\n this.authenticationSource = _data[\"authenticationSource\"];\r\n this.userName = _data[\"userName\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.name = _data[\"name\"];\r\n this.surname = _data[\"surname\"];\r\n (this).fullName = _data[\"fullName\"];\r\n this.password = _data[\"password\"];\r\n this.emailConfirmationCode = _data[\"emailConfirmationCode\"];\r\n this.passwordResetCode = _data[\"passwordResetCode\"];\r\n this.lockoutEndDateUtc = _data[\"lockoutEndDateUtc\"] ? DateTime.fromISO(_data[\"lockoutEndDateUtc\"].toString()) : undefined;\r\n this.accessFailedCount = _data[\"accessFailedCount\"];\r\n this.isLockoutEnabled = _data[\"isLockoutEnabled\"];\r\n this.phoneNumber = _data[\"phoneNumber\"];\r\n this.isPhoneNumberConfirmed = _data[\"isPhoneNumberConfirmed\"];\r\n this.securityStamp = _data[\"securityStamp\"];\r\n this.isTwoFactorEnabled = _data[\"isTwoFactorEnabled\"];\r\n if (Array.isArray(_data[\"logins\"])) {\r\n this.logins = [] as any;\r\n for (let item of _data[\"logins\"])\r\n this.logins!.push(UserLogin.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"roles\"])) {\r\n this.roles = [] as any;\r\n for (let item of _data[\"roles\"])\r\n this.roles!.push(UserRole.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"claims\"])) {\r\n this.claims = [] as any;\r\n for (let item of _data[\"claims\"])\r\n this.claims!.push(UserClaim.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"permissions\"])) {\r\n this.permissions = [] as any;\r\n for (let item of _data[\"permissions\"])\r\n this.permissions!.push(UserPermissionSetting.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"settings\"])) {\r\n this.settings = [] as any;\r\n for (let item of _data[\"settings\"])\r\n this.settings!.push(Setting.fromJS(item));\r\n }\r\n this.isEmailConfirmed = _data[\"isEmailConfirmed\"];\r\n this.isActive = _data[\"isActive\"];\r\n this.isDeleted = _data[\"isDeleted\"];\r\n this.deleterUserId = _data[\"deleterUserId\"];\r\n this.deletionTime = _data[\"deletionTime\"] ? DateTime.fromISO(_data[\"deletionTime\"].toString()) : undefined;\r\n this.lastModificationTime = _data[\"lastModificationTime\"] ? DateTime.fromISO(_data[\"lastModificationTime\"].toString()) : undefined;\r\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): User {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new User();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"profilePictureId\"] = this.profilePictureId;\r\n data[\"shouldChangePasswordOnNextLogin\"] = this.shouldChangePasswordOnNextLogin;\r\n data[\"signInTokenExpireTimeUtc\"] = this.signInTokenExpireTimeUtc ? this.signInTokenExpireTimeUtc.toString() : undefined;\r\n data[\"signInToken\"] = this.signInToken;\r\n data[\"googleAuthenticatorKey\"] = this.googleAuthenticatorKey;\r\n if (Array.isArray(this.organizationUnits)) {\r\n data[\"organizationUnits\"] = [];\r\n for (let item of this.organizationUnits)\r\n data[\"organizationUnits\"].push(item.toJSON());\r\n }\r\n data[\"lastActivationEmailSentTimeUtc\"] = this.lastActivationEmailSentTimeUtc ? this.lastActivationEmailSentTimeUtc.toString() : undefined;\r\n data[\"normalizedUserName\"] = this.normalizedUserName;\r\n data[\"normalizedEmailAddress\"] = this.normalizedEmailAddress;\r\n data[\"concurrencyStamp\"] = this.concurrencyStamp;\r\n if (Array.isArray(this.tokens)) {\r\n data[\"tokens\"] = [];\r\n for (let item of this.tokens)\r\n data[\"tokens\"].push(item.toJSON());\r\n }\r\n data[\"deleterUser\"] = this.deleterUser ? this.deleterUser.toJSON() : undefined;\r\n data[\"creatorUser\"] = this.creatorUser ? this.creatorUser.toJSON() : undefined;\r\n data[\"lastModifierUser\"] = this.lastModifierUser ? this.lastModifierUser.toJSON() : undefined;\r\n data[\"authenticationSource\"] = this.authenticationSource;\r\n data[\"userName\"] = this.userName;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"name\"] = this.name;\r\n data[\"surname\"] = this.surname;\r\n data[\"fullName\"] = this.fullName;\r\n data[\"password\"] = this.password;\r\n data[\"emailConfirmationCode\"] = this.emailConfirmationCode;\r\n data[\"passwordResetCode\"] = this.passwordResetCode;\r\n data[\"lockoutEndDateUtc\"] = this.lockoutEndDateUtc ? this.lockoutEndDateUtc.toString() : undefined;\r\n data[\"accessFailedCount\"] = this.accessFailedCount;\r\n data[\"isLockoutEnabled\"] = this.isLockoutEnabled;\r\n data[\"phoneNumber\"] = this.phoneNumber;\r\n data[\"isPhoneNumberConfirmed\"] = this.isPhoneNumberConfirmed;\r\n data[\"securityStamp\"] = this.securityStamp;\r\n data[\"isTwoFactorEnabled\"] = this.isTwoFactorEnabled;\r\n if (Array.isArray(this.logins)) {\r\n data[\"logins\"] = [];\r\n for (let item of this.logins)\r\n data[\"logins\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.roles)) {\r\n data[\"roles\"] = [];\r\n for (let item of this.roles)\r\n data[\"roles\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.claims)) {\r\n data[\"claims\"] = [];\r\n for (let item of this.claims)\r\n data[\"claims\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.permissions)) {\r\n data[\"permissions\"] = [];\r\n for (let item of this.permissions)\r\n data[\"permissions\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.settings)) {\r\n data[\"settings\"] = [];\r\n for (let item of this.settings)\r\n data[\"settings\"].push(item.toJSON());\r\n }\r\n data[\"isEmailConfirmed\"] = this.isEmailConfirmed;\r\n data[\"isActive\"] = this.isActive;\r\n data[\"isDeleted\"] = this.isDeleted;\r\n data[\"deleterUserId\"] = this.deleterUserId;\r\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toString() : undefined;\r\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toString() : undefined;\r\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUser {\r\n profilePictureId: string | undefined;\r\n shouldChangePasswordOnNextLogin: boolean;\r\n signInTokenExpireTimeUtc: DateTime | undefined;\r\n signInToken: string | undefined;\r\n googleAuthenticatorKey: string | undefined;\r\n organizationUnits: UserOrganizationUnit[] | undefined;\r\n lastActivationEmailSentTimeUtc: DateTime | undefined;\r\n normalizedUserName: string;\r\n normalizedEmailAddress: string;\r\n concurrencyStamp: string | undefined;\r\n tokens: UserToken[] | undefined;\r\n deleterUser: User;\r\n creatorUser: User;\r\n lastModifierUser: User;\r\n authenticationSource: string | undefined;\r\n userName: string;\r\n tenantId: number | undefined;\r\n emailAddress: string;\r\n name: string;\r\n surname: string;\r\n fullName: string | undefined;\r\n password: string;\r\n emailConfirmationCode: string | undefined;\r\n passwordResetCode: string | undefined;\r\n lockoutEndDateUtc: DateTime | undefined;\r\n accessFailedCount: number;\r\n isLockoutEnabled: boolean;\r\n phoneNumber: string | undefined;\r\n isPhoneNumberConfirmed: boolean;\r\n securityStamp: string | undefined;\r\n isTwoFactorEnabled: boolean;\r\n logins: UserLogin[] | undefined;\r\n roles: UserRole[] | undefined;\r\n claims: UserClaim[] | undefined;\r\n permissions: UserPermissionSetting[] | undefined;\r\n settings: Setting[] | undefined;\r\n isEmailConfirmed: boolean;\r\n isActive: boolean;\r\n isDeleted: boolean;\r\n deleterUserId: number | undefined;\r\n deletionTime: DateTime | undefined;\r\n lastModificationTime: DateTime | undefined;\r\n lastModifierUserId: number | undefined;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class UserClaim implements IUserClaim {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n claimType!: string | undefined;\r\n claimValue!: string | undefined;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IUserClaim) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n this.claimType = _data[\"claimType\"];\r\n this.claimValue = _data[\"claimValue\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserClaim {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserClaim();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n data[\"claimType\"] = this.claimType;\r\n data[\"claimValue\"] = this.claimValue;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserClaim {\r\n tenantId: number | undefined;\r\n userId: number;\r\n claimType: string | undefined;\r\n claimValue: string | undefined;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class UserDelegationDto implements IUserDelegationDto {\r\n username!: string | undefined;\r\n startTime!: DateTime;\r\n endTime!: DateTime;\r\n id!: number;\r\n\r\n constructor(data?: IUserDelegationDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.username = _data[\"username\"];\r\n this.startTime = _data[\"startTime\"] ? DateTime.fromISO(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? DateTime.fromISO(_data[\"endTime\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserDelegationDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserDelegationDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"username\"] = this.username;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserDelegationDto {\r\n username: string | undefined;\r\n startTime: DateTime;\r\n endTime: DateTime;\r\n id: number;\r\n}\r\n\r\nexport class UserEditDto implements IUserEditDto {\r\n id!: number | undefined;\r\n name!: string;\r\n surname!: string;\r\n userName!: string;\r\n emailAddress!: string;\r\n phoneNumber!: string | undefined;\r\n password!: string | undefined;\r\n isActive!: boolean;\r\n shouldChangePasswordOnNextLogin!: boolean;\r\n isTwoFactorEnabled!: boolean;\r\n isLockoutEnabled!: boolean;\r\n\r\n constructor(data?: IUserEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.surname = _data[\"surname\"];\r\n this.userName = _data[\"userName\"];\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.phoneNumber = _data[\"phoneNumber\"];\r\n this.password = _data[\"password\"];\r\n this.isActive = _data[\"isActive\"];\r\n this.shouldChangePasswordOnNextLogin = _data[\"shouldChangePasswordOnNextLogin\"];\r\n this.isTwoFactorEnabled = _data[\"isTwoFactorEnabled\"];\r\n this.isLockoutEnabled = _data[\"isLockoutEnabled\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"surname\"] = this.surname;\r\n data[\"userName\"] = this.userName;\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"phoneNumber\"] = this.phoneNumber;\r\n data[\"password\"] = this.password;\r\n data[\"isActive\"] = this.isActive;\r\n data[\"shouldChangePasswordOnNextLogin\"] = this.shouldChangePasswordOnNextLogin;\r\n data[\"isTwoFactorEnabled\"] = this.isTwoFactorEnabled;\r\n data[\"isLockoutEnabled\"] = this.isLockoutEnabled;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserEditDto {\r\n id: number | undefined;\r\n name: string;\r\n surname: string;\r\n userName: string;\r\n emailAddress: string;\r\n phoneNumber: string | undefined;\r\n password: string | undefined;\r\n isActive: boolean;\r\n shouldChangePasswordOnNextLogin: boolean;\r\n isTwoFactorEnabled: boolean;\r\n isLockoutEnabled: boolean;\r\n}\r\n\r\nexport class UserListDto implements IUserListDto {\r\n name!: string | undefined;\r\n surname!: string | undefined;\r\n userName!: string | undefined;\r\n emailAddress!: string | undefined;\r\n lockoutEndDateUtc!: DateTime | undefined;\r\n phoneNumber!: string | undefined;\r\n profilePictureId!: string | undefined;\r\n isEmailConfirmed!: boolean;\r\n roles!: UserListRoleDto[] | undefined;\r\n isActive!: boolean;\r\n creationTime!: DateTime;\r\n id!: number;\r\n\r\n constructor(data?: IUserListDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.surname = _data[\"surname\"];\r\n this.userName = _data[\"userName\"];\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.lockoutEndDateUtc = _data[\"lockoutEndDateUtc\"] ? DateTime.fromISO(_data[\"lockoutEndDateUtc\"].toString()) : undefined;\r\n this.phoneNumber = _data[\"phoneNumber\"];\r\n this.profilePictureId = _data[\"profilePictureId\"];\r\n this.isEmailConfirmed = _data[\"isEmailConfirmed\"];\r\n if (Array.isArray(_data[\"roles\"])) {\r\n this.roles = [] as any;\r\n for (let item of _data[\"roles\"])\r\n this.roles!.push(UserListRoleDto.fromJS(item));\r\n }\r\n this.isActive = _data[\"isActive\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserListDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserListDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"surname\"] = this.surname;\r\n data[\"userName\"] = this.userName;\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"lockoutEndDateUtc\"] = this.lockoutEndDateUtc ? this.lockoutEndDateUtc.toString() : undefined;\r\n data[\"phoneNumber\"] = this.phoneNumber;\r\n data[\"profilePictureId\"] = this.profilePictureId;\r\n data[\"isEmailConfirmed\"] = this.isEmailConfirmed;\r\n if (Array.isArray(this.roles)) {\r\n data[\"roles\"] = [];\r\n for (let item of this.roles)\r\n data[\"roles\"].push(item.toJSON());\r\n }\r\n data[\"isActive\"] = this.isActive;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserListDto {\r\n name: string | undefined;\r\n surname: string | undefined;\r\n userName: string | undefined;\r\n emailAddress: string | undefined;\r\n lockoutEndDateUtc: DateTime | undefined;\r\n phoneNumber: string | undefined;\r\n profilePictureId: string | undefined;\r\n isEmailConfirmed: boolean;\r\n roles: UserListRoleDto[] | undefined;\r\n isActive: boolean;\r\n creationTime: DateTime;\r\n id: number;\r\n}\r\n\r\nexport class UserListRoleDto implements IUserListRoleDto {\r\n roleId!: number;\r\n roleName!: string | undefined;\r\n\r\n constructor(data?: IUserListRoleDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.roleId = _data[\"roleId\"];\r\n this.roleName = _data[\"roleName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserListRoleDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserListRoleDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"roleId\"] = this.roleId;\r\n data[\"roleName\"] = this.roleName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserListRoleDto {\r\n roleId: number;\r\n roleName: string | undefined;\r\n}\r\n\r\nexport class UserLockOutSettingsEditDto implements IUserLockOutSettingsEditDto {\r\n isEnabled!: boolean;\r\n maxFailedAccessAttemptsBeforeLockout!: number;\r\n defaultAccountLockoutSeconds!: number;\r\n\r\n constructor(data?: IUserLockOutSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isEnabled = _data[\"isEnabled\"];\r\n this.maxFailedAccessAttemptsBeforeLockout = _data[\"maxFailedAccessAttemptsBeforeLockout\"];\r\n this.defaultAccountLockoutSeconds = _data[\"defaultAccountLockoutSeconds\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserLockOutSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserLockOutSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isEnabled\"] = this.isEnabled;\r\n data[\"maxFailedAccessAttemptsBeforeLockout\"] = this.maxFailedAccessAttemptsBeforeLockout;\r\n data[\"defaultAccountLockoutSeconds\"] = this.defaultAccountLockoutSeconds;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserLockOutSettingsEditDto {\r\n isEnabled: boolean;\r\n maxFailedAccessAttemptsBeforeLockout: number;\r\n defaultAccountLockoutSeconds: number;\r\n}\r\n\r\nexport class UserLogin implements IUserLogin {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n loginProvider!: string;\r\n providerKey!: string;\r\n id!: number;\r\n\r\n constructor(data?: IUserLogin) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n this.loginProvider = _data[\"loginProvider\"];\r\n this.providerKey = _data[\"providerKey\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserLogin {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserLogin();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n data[\"loginProvider\"] = this.loginProvider;\r\n data[\"providerKey\"] = this.providerKey;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserLogin {\r\n tenantId: number | undefined;\r\n userId: number;\r\n loginProvider: string;\r\n providerKey: string;\r\n id: number;\r\n}\r\n\r\nexport class UserLoginAttemptDto implements IUserLoginAttemptDto {\r\n tenancyName!: string | undefined;\r\n userNameOrEmail!: string | undefined;\r\n clientIpAddress!: string | undefined;\r\n clientName!: string | undefined;\r\n browserInfo!: string | undefined;\r\n result!: string | undefined;\r\n creationTime!: DateTime;\r\n\r\n constructor(data?: IUserLoginAttemptDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenancyName = _data[\"tenancyName\"];\r\n this.userNameOrEmail = _data[\"userNameOrEmail\"];\r\n this.clientIpAddress = _data[\"clientIpAddress\"];\r\n this.clientName = _data[\"clientName\"];\r\n this.browserInfo = _data[\"browserInfo\"];\r\n this.result = _data[\"result\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserLoginAttemptDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserLoginAttemptDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenancyName\"] = this.tenancyName;\r\n data[\"userNameOrEmail\"] = this.userNameOrEmail;\r\n data[\"clientIpAddress\"] = this.clientIpAddress;\r\n data[\"clientName\"] = this.clientName;\r\n data[\"browserInfo\"] = this.browserInfo;\r\n data[\"result\"] = this.result;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserLoginAttemptDto {\r\n tenancyName: string | undefined;\r\n userNameOrEmail: string | undefined;\r\n clientIpAddress: string | undefined;\r\n clientName: string | undefined;\r\n browserInfo: string | undefined;\r\n result: string | undefined;\r\n creationTime: DateTime;\r\n}\r\n\r\nexport class UserLoginInfoDto implements IUserLoginInfoDto {\r\n name!: string | undefined;\r\n surname!: string | undefined;\r\n userName!: string | undefined;\r\n emailAddress!: string | undefined;\r\n profilePictureId!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IUserLoginInfoDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.surname = _data[\"surname\"];\r\n this.userName = _data[\"userName\"];\r\n this.emailAddress = _data[\"emailAddress\"];\r\n this.profilePictureId = _data[\"profilePictureId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserLoginInfoDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserLoginInfoDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"surname\"] = this.surname;\r\n data[\"userName\"] = this.userName;\r\n data[\"emailAddress\"] = this.emailAddress;\r\n data[\"profilePictureId\"] = this.profilePictureId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserLoginInfoDto {\r\n name: string | undefined;\r\n surname: string | undefined;\r\n userName: string | undefined;\r\n emailAddress: string | undefined;\r\n profilePictureId: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class UserNotification implements IUserNotification {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n state!: UserNotificationState;\r\n notification!: TenantNotification;\r\n targetNotifiers!: string | undefined;\r\n readonly targetNotifiersList!: string[] | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IUserNotification) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n this.state = _data[\"state\"];\r\n this.notification = _data[\"notification\"] ? TenantNotification.fromJS(_data[\"notification\"]) : undefined;\r\n this.targetNotifiers = _data[\"targetNotifiers\"];\r\n if (Array.isArray(_data[\"targetNotifiersList\"])) {\r\n (this).targetNotifiersList = [] as any;\r\n for (let item of _data[\"targetNotifiersList\"])\r\n (this).targetNotifiersList!.push(item);\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserNotification {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserNotification();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n data[\"state\"] = this.state;\r\n data[\"notification\"] = this.notification ? this.notification.toJSON() : undefined;\r\n data[\"targetNotifiers\"] = this.targetNotifiers;\r\n if (Array.isArray(this.targetNotifiersList)) {\r\n data[\"targetNotifiersList\"] = [];\r\n for (let item of this.targetNotifiersList)\r\n data[\"targetNotifiersList\"].push(item);\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserNotification {\r\n tenantId: number | undefined;\r\n userId: number;\r\n state: UserNotificationState;\r\n notification: TenantNotification;\r\n targetNotifiers: string | undefined;\r\n targetNotifiersList: string[] | undefined;\r\n id: string;\r\n}\r\n\r\nexport enum UserNotificationState {\r\n Unread = 0,\r\n Read = 1,\r\n}\r\n\r\nexport class UserOrganizationUnit implements IUserOrganizationUnit {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n organizationUnitId!: number;\r\n isDeleted!: boolean;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IUserOrganizationUnit) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n this.organizationUnitId = _data[\"organizationUnitId\"];\r\n this.isDeleted = _data[\"isDeleted\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserOrganizationUnit {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserOrganizationUnit();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n data[\"organizationUnitId\"] = this.organizationUnitId;\r\n data[\"isDeleted\"] = this.isDeleted;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserOrganizationUnit {\r\n tenantId: number | undefined;\r\n userId: number;\r\n organizationUnitId: number;\r\n isDeleted: boolean;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class UserPasswordSettingsEditDto implements IUserPasswordSettingsEditDto {\r\n enableCheckingLastXPasswordWhenPasswordChange!: boolean;\r\n checkingLastXPasswordCount!: number;\r\n enablePasswordExpiration!: boolean;\r\n passwordExpirationDayCount!: number;\r\n\r\n constructor(data?: IUserPasswordSettingsEditDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.enableCheckingLastXPasswordWhenPasswordChange = _data[\"enableCheckingLastXPasswordWhenPasswordChange\"];\r\n this.checkingLastXPasswordCount = _data[\"checkingLastXPasswordCount\"];\r\n this.enablePasswordExpiration = _data[\"enablePasswordExpiration\"];\r\n this.passwordExpirationDayCount = _data[\"passwordExpirationDayCount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserPasswordSettingsEditDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserPasswordSettingsEditDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"enableCheckingLastXPasswordWhenPasswordChange\"] = this.enableCheckingLastXPasswordWhenPasswordChange;\r\n data[\"checkingLastXPasswordCount\"] = this.checkingLastXPasswordCount;\r\n data[\"enablePasswordExpiration\"] = this.enablePasswordExpiration;\r\n data[\"passwordExpirationDayCount\"] = this.passwordExpirationDayCount;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserPasswordSettingsEditDto {\r\n enableCheckingLastXPasswordWhenPasswordChange: boolean;\r\n checkingLastXPasswordCount: number;\r\n enablePasswordExpiration: boolean;\r\n passwordExpirationDayCount: number;\r\n}\r\n\r\nexport class UserPermissionSetting implements IUserPermissionSetting {\r\n userId!: number;\r\n tenantId!: number | undefined;\r\n name!: string;\r\n isGranted!: boolean;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IUserPermissionSetting) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.name = _data[\"name\"];\r\n this.isGranted = _data[\"isGranted\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserPermissionSetting {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserPermissionSetting();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"name\"] = this.name;\r\n data[\"isGranted\"] = this.isGranted;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserPermissionSetting {\r\n userId: number;\r\n tenantId: number | undefined;\r\n name: string;\r\n isGranted: boolean;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class UserRole implements IUserRole {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n roleId!: number;\r\n creationTime!: DateTime;\r\n creatorUserId!: number | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IUserRole) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n this.roleId = _data[\"roleId\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.creatorUserId = _data[\"creatorUserId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserRole {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserRole();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n data[\"roleId\"] = this.roleId;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"creatorUserId\"] = this.creatorUserId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserRole {\r\n tenantId: number | undefined;\r\n userId: number;\r\n roleId: number;\r\n creationTime: DateTime;\r\n creatorUserId: number | undefined;\r\n id: number;\r\n}\r\n\r\nexport class UserRoleDto implements IUserRoleDto {\r\n roleId!: number;\r\n roleName!: string | undefined;\r\n roleDisplayName!: string | undefined;\r\n isAssigned!: boolean;\r\n inheritedFromOrganizationUnit!: boolean;\r\n\r\n constructor(data?: IUserRoleDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.roleId = _data[\"roleId\"];\r\n this.roleName = _data[\"roleName\"];\r\n this.roleDisplayName = _data[\"roleDisplayName\"];\r\n this.isAssigned = _data[\"isAssigned\"];\r\n this.inheritedFromOrganizationUnit = _data[\"inheritedFromOrganizationUnit\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserRoleDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserRoleDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"roleId\"] = this.roleId;\r\n data[\"roleName\"] = this.roleName;\r\n data[\"roleDisplayName\"] = this.roleDisplayName;\r\n data[\"isAssigned\"] = this.isAssigned;\r\n data[\"inheritedFromOrganizationUnit\"] = this.inheritedFromOrganizationUnit;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserRoleDto {\r\n roleId: number;\r\n roleName: string | undefined;\r\n roleDisplayName: string | undefined;\r\n isAssigned: boolean;\r\n inheritedFromOrganizationUnit: boolean;\r\n}\r\n\r\nexport class UserToken implements IUserToken {\r\n tenantId!: number | undefined;\r\n userId!: number;\r\n loginProvider!: string | undefined;\r\n name!: string | undefined;\r\n value!: string | undefined;\r\n expireDate!: DateTime | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IUserToken) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.userId = _data[\"userId\"];\r\n this.loginProvider = _data[\"loginProvider\"];\r\n this.name = _data[\"name\"];\r\n this.value = _data[\"value\"];\r\n this.expireDate = _data[\"expireDate\"] ? DateTime.fromISO(_data[\"expireDate\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserToken {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserToken();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"userId\"] = this.userId;\r\n data[\"loginProvider\"] = this.loginProvider;\r\n data[\"name\"] = this.name;\r\n data[\"value\"] = this.value;\r\n data[\"expireDate\"] = this.expireDate ? this.expireDate.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserToken {\r\n tenantId: number | undefined;\r\n userId: number;\r\n loginProvider: string | undefined;\r\n name: string | undefined;\r\n value: string | undefined;\r\n expireDate: DateTime | undefined;\r\n id: number;\r\n}\r\n\r\nexport class UsersToOrganizationUnitInput implements IUsersToOrganizationUnitInput {\r\n userIds!: number[] | undefined;\r\n organizationUnitId!: number;\r\n\r\n constructor(data?: IUsersToOrganizationUnitInput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"userIds\"])) {\r\n this.userIds = [] as any;\r\n for (let item of _data[\"userIds\"])\r\n this.userIds!.push(item);\r\n }\r\n this.organizationUnitId = _data[\"organizationUnitId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UsersToOrganizationUnitInput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UsersToOrganizationUnitInput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.userIds)) {\r\n data[\"userIds\"] = [];\r\n for (let item of this.userIds)\r\n data[\"userIds\"].push(item);\r\n }\r\n data[\"organizationUnitId\"] = this.organizationUnitId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUsersToOrganizationUnitInput {\r\n userIds: number[] | undefined;\r\n organizationUnitId: number;\r\n}\r\n\r\nexport class VerifySmsCodeInputDto implements IVerifySmsCodeInputDto {\r\n code!: string | undefined;\r\n phoneNumber!: string | undefined;\r\n\r\n constructor(data?: IVerifySmsCodeInputDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.code = _data[\"code\"];\r\n this.phoneNumber = _data[\"phoneNumber\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): VerifySmsCodeInputDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new VerifySmsCodeInputDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"code\"] = this.code;\r\n data[\"phoneNumber\"] = this.phoneNumber;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IVerifySmsCodeInputDto {\r\n code: string | undefined;\r\n phoneNumber: string | undefined;\r\n}\r\n\r\nexport class WMSConnection implements IWMSConnection {\r\n tenantId!: number;\r\n type!: WMSConnectionType;\r\n settings!: string | undefined;\r\n name!: string | undefined;\r\n isActive!: boolean;\r\n tenant!: Tenant;\r\n clients!: Client[] | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IWMSConnection) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.type = _data[\"type\"];\r\n this.settings = _data[\"settings\"];\r\n this.name = _data[\"name\"];\r\n this.isActive = _data[\"isActive\"];\r\n this.tenant = _data[\"tenant\"] ? Tenant.fromJS(_data[\"tenant\"]) : undefined;\r\n if (Array.isArray(_data[\"clients\"])) {\r\n this.clients = [] as any;\r\n for (let item of _data[\"clients\"])\r\n this.clients!.push(Client.fromJS(item));\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WMSConnection {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WMSConnection();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"type\"] = this.type;\r\n data[\"settings\"] = this.settings;\r\n data[\"name\"] = this.name;\r\n data[\"isActive\"] = this.isActive;\r\n data[\"tenant\"] = this.tenant ? this.tenant.toJSON() : undefined;\r\n if (Array.isArray(this.clients)) {\r\n data[\"clients\"] = [];\r\n for (let item of this.clients)\r\n data[\"clients\"].push(item.toJSON());\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWMSConnection {\r\n tenantId: number;\r\n type: WMSConnectionType;\r\n settings: string | undefined;\r\n name: string | undefined;\r\n isActive: boolean;\r\n tenant: Tenant;\r\n clients: Client[] | undefined;\r\n id: number;\r\n}\r\n\r\nexport enum WMSConnectionType {\r\n Unknown = 0,\r\n BlueYander = 1,\r\n}\r\n\r\nexport class Warehouse implements IWarehouse {\r\n name!: string | undefined;\r\n wmsConnection!: WMSConnection;\r\n clients!: ClientWarehouse[] | undefined;\r\n timeZone!: string | undefined;\r\n wmsConnectionId!: number;\r\n externalId!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IWarehouse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n if (Array.isArray(_data[\"clients\"])) {\r\n this.clients = [] as any;\r\n for (let item of _data[\"clients\"])\r\n this.clients!.push(ClientWarehouse.fromJS(item));\r\n }\r\n this.timeZone = _data[\"timeZone\"];\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Warehouse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Warehouse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n if (Array.isArray(this.clients)) {\r\n data[\"clients\"] = [];\r\n for (let item of this.clients)\r\n data[\"clients\"].push(item.toJSON());\r\n }\r\n data[\"timeZone\"] = this.timeZone;\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWarehouse {\r\n name: string | undefined;\r\n wmsConnection: WMSConnection;\r\n clients: ClientWarehouse[] | undefined;\r\n timeZone: string | undefined;\r\n wmsConnectionId: number;\r\n externalId: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class WarehouseDockDoor implements IWarehouseDockDoor {\r\n wmsConnection!: WMSConnection;\r\n warehouse!: Warehouse;\r\n warehouseId!: number;\r\n appointments!: Appointment[] | undefined;\r\n wmsConnectionId!: number;\r\n externalId!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IWarehouseDockDoor) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.wmsConnection = _data[\"wmsConnection\"] ? WMSConnection.fromJS(_data[\"wmsConnection\"]) : undefined;\r\n this.warehouse = _data[\"warehouse\"] ? Warehouse.fromJS(_data[\"warehouse\"]) : undefined;\r\n this.warehouseId = _data[\"warehouseId\"];\r\n if (Array.isArray(_data[\"appointments\"])) {\r\n this.appointments = [] as any;\r\n for (let item of _data[\"appointments\"])\r\n this.appointments!.push(Appointment.fromJS(item));\r\n }\r\n this.wmsConnectionId = _data[\"wmsConnectionId\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WarehouseDockDoor {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WarehouseDockDoor();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"wmsConnection\"] = this.wmsConnection ? this.wmsConnection.toJSON() : undefined;\r\n data[\"warehouse\"] = this.warehouse ? this.warehouse.toJSON() : undefined;\r\n data[\"warehouseId\"] = this.warehouseId;\r\n if (Array.isArray(this.appointments)) {\r\n data[\"appointments\"] = [];\r\n for (let item of this.appointments)\r\n data[\"appointments\"].push(item.toJSON());\r\n }\r\n data[\"wmsConnectionId\"] = this.wmsConnectionId;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWarehouseDockDoor {\r\n wmsConnection: WMSConnection;\r\n warehouse: Warehouse;\r\n warehouseId: number;\r\n appointments: Appointment[] | undefined;\r\n wmsConnectionId: number;\r\n externalId: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class WarehouseDto implements IWarehouseDto {\r\n timeZone!: string | undefined;\r\n id!: number;\r\n\r\n constructor(data?: IWarehouseDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeZone = _data[\"timeZone\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WarehouseDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WarehouseDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeZone\"] = this.timeZone;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWarehouseDto {\r\n timeZone: string | undefined;\r\n id: number;\r\n}\r\n\r\nexport class WebhookEvent implements IWebhookEvent {\r\n webhookName!: string;\r\n data!: string | undefined;\r\n creationTime!: DateTime;\r\n tenantId!: number | undefined;\r\n isDeleted!: boolean;\r\n deletionTime!: DateTime | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IWebhookEvent) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.webhookName = _data[\"webhookName\"];\r\n this.data = _data[\"data\"];\r\n this.creationTime = _data[\"creationTime\"] ? DateTime.fromISO(_data[\"creationTime\"].toString()) : undefined;\r\n this.tenantId = _data[\"tenantId\"];\r\n this.isDeleted = _data[\"isDeleted\"];\r\n this.deletionTime = _data[\"deletionTime\"] ? DateTime.fromISO(_data[\"deletionTime\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebhookEvent {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WebhookEvent();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"webhookName\"] = this.webhookName;\r\n data[\"data\"] = this.data;\r\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toString() : undefined;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"isDeleted\"] = this.isDeleted;\r\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toString() : undefined;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWebhookEvent {\r\n webhookName: string;\r\n data: string | undefined;\r\n creationTime: DateTime;\r\n tenantId: number | undefined;\r\n isDeleted: boolean;\r\n deletionTime: DateTime | undefined;\r\n id: string;\r\n}\r\n\r\nexport class WebhookSubscription implements IWebhookSubscription {\r\n tenantId!: number | undefined;\r\n webhookUri!: string | undefined;\r\n secret!: string | undefined;\r\n isActive!: boolean;\r\n webhooks!: string[] | undefined;\r\n headers!: { [key: string]: string; } | undefined;\r\n id!: string;\r\n\r\n constructor(data?: IWebhookSubscription) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tenantId = _data[\"tenantId\"];\r\n this.webhookUri = _data[\"webhookUri\"];\r\n this.secret = _data[\"secret\"];\r\n this.isActive = _data[\"isActive\"];\r\n if (Array.isArray(_data[\"webhooks\"])) {\r\n this.webhooks = [] as any;\r\n for (let item of _data[\"webhooks\"])\r\n this.webhooks!.push(item);\r\n }\r\n if (_data[\"headers\"]) {\r\n this.headers = {} as any;\r\n for (let key in _data[\"headers\"]) {\r\n if (_data[\"headers\"].hasOwnProperty(key))\r\n (this.headers)![key] = _data[\"headers\"][key];\r\n }\r\n }\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebhookSubscription {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WebhookSubscription();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"webhookUri\"] = this.webhookUri;\r\n data[\"secret\"] = this.secret;\r\n data[\"isActive\"] = this.isActive;\r\n if (Array.isArray(this.webhooks)) {\r\n data[\"webhooks\"] = [];\r\n for (let item of this.webhooks)\r\n data[\"webhooks\"].push(item);\r\n }\r\n if (this.headers) {\r\n data[\"headers\"] = {};\r\n for (let key in this.headers) {\r\n if (this.headers.hasOwnProperty(key))\r\n (data[\"headers\"])[key] = (this.headers)[key];\r\n }\r\n }\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWebhookSubscription {\r\n tenantId: number | undefined;\r\n webhookUri: string | undefined;\r\n secret: string | undefined;\r\n isActive: boolean;\r\n webhooks: string[] | undefined;\r\n headers: { [key: string]: string; } | undefined;\r\n id: string;\r\n}\r\n\r\nexport class Widget implements IWidget {\r\n widgetId!: string | undefined;\r\n height!: number;\r\n width!: number;\r\n positionX!: number;\r\n positionY!: number;\r\n\r\n constructor(data?: IWidget) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.widgetId = _data[\"widgetId\"];\r\n this.height = _data[\"height\"];\r\n this.width = _data[\"width\"];\r\n this.positionX = _data[\"positionX\"];\r\n this.positionY = _data[\"positionY\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Widget {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Widget();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"widgetId\"] = this.widgetId;\r\n data[\"height\"] = this.height;\r\n data[\"width\"] = this.width;\r\n data[\"positionX\"] = this.positionX;\r\n data[\"positionY\"] = this.positionY;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWidget {\r\n widgetId: string | undefined;\r\n height: number;\r\n width: number;\r\n positionX: number;\r\n positionY: number;\r\n}\r\n\r\nexport class WidgetFilterOutput implements IWidgetFilterOutput {\r\n id!: string | undefined;\r\n name!: string | undefined;\r\n\r\n constructor(data?: IWidgetFilterOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WidgetFilterOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WidgetFilterOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWidgetFilterOutput {\r\n id: string | undefined;\r\n name: string | undefined;\r\n}\r\n\r\nexport class WidgetOutput implements IWidgetOutput {\r\n id!: string | undefined;\r\n name!: string | undefined;\r\n description!: string | undefined;\r\n filters!: WidgetFilterOutput[] | undefined;\r\n\r\n constructor(data?: IWidgetOutput) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.description = _data[\"description\"];\r\n if (Array.isArray(_data[\"filters\"])) {\r\n this.filters = [] as any;\r\n for (let item of _data[\"filters\"])\r\n this.filters!.push(WidgetFilterOutput.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): WidgetOutput {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WidgetOutput();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"description\"] = this.description;\r\n if (Array.isArray(this.filters)) {\r\n data[\"filters\"] = [];\r\n for (let item of this.filters)\r\n data[\"filters\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWidgetOutput {\r\n id: string | undefined;\r\n name: string | undefined;\r\n description: string | undefined;\r\n filters: WidgetFilterOutput[] | undefined;\r\n}\r\n\r\nexport class WsFederationExternalLoginProviderSettings implements IWsFederationExternalLoginProviderSettings {\r\n clientId!: string | undefined;\r\n tenant!: string | undefined;\r\n metaDataAddress!: string | undefined;\r\n wtrealm!: string | undefined;\r\n authority!: string | undefined;\r\n\r\n constructor(data?: IWsFederationExternalLoginProviderSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.clientId = _data[\"clientId\"];\r\n this.tenant = _data[\"tenant\"];\r\n this.metaDataAddress = _data[\"metaDataAddress\"];\r\n this.wtrealm = _data[\"wtrealm\"];\r\n this.authority = _data[\"authority\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WsFederationExternalLoginProviderSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WsFederationExternalLoginProviderSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"clientId\"] = this.clientId;\r\n data[\"tenant\"] = this.tenant;\r\n data[\"metaDataAddress\"] = this.metaDataAddress;\r\n data[\"wtrealm\"] = this.wtrealm;\r\n data[\"authority\"] = this.authority;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWsFederationExternalLoginProviderSettings {\r\n clientId: string | undefined;\r\n tenant: string | undefined;\r\n metaDataAddress: string | undefined;\r\n wtrealm: string | undefined;\r\n authority: string | undefined;\r\n}\r\n\r\nexport class ApiException extends Error {\r\n message: string;\r\n status: number;\r\n response: string;\r\n headers: { [key: string]: any; };\r\n result: any;\r\n\r\n constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {\r\n super();\r\n\r\n this.message = message;\r\n this.status = status;\r\n this.response = response;\r\n this.headers = headers;\r\n this.result = result;\r\n }\r\n\r\n protected isApiException = true;\r\n\r\n static isApiException(obj: any): obj is ApiException {\r\n return obj.isApiException === true;\r\n }\r\n}\r\n\r\nfunction throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): Observable {\r\n if (result !== null && result !== undefined)\r\n return _observableThrow(result);\r\n else\r\n return _observableThrow(new ApiException(message, status, response, headers, null));\r\n}\r\n\r\nfunction blobToText(blob: any): Observable {\r\n return new Observable((observer: any) => {\r\n if (!blob) {\r\n observer.next(\"\");\r\n observer.complete();\r\n } else {\r\n let reader = new FileReader();\r\n reader.onload = event => {\r\n observer.next((event.target as any).result);\r\n observer.complete();\r\n };\r\n reader.readAsText(blob);\r\n }\r\n });\r\n}","import { ZeroRefreshTokenService } from '@account/auth/zero-refresh-token.service';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { NgModule } from '@angular/core';\r\nimport { AbpHttpConfigurationService, AbpHttpInterceptor, RefreshTokenService } from 'abp-ng2-module';\r\nimport { CachingInterceptor } from './caching/cache-interceptor.service';\r\nimport * as ApiServiceProxies from './service-proxies';\r\nimport { ZeroTemplateHttpConfigurationService } from './zero-template-http-configuration.service';\r\n\r\n@NgModule({\r\n providers: [\r\n ApiServiceProxies.AuditLogServiceProxy,\r\n ApiServiceProxies.CachingServiceProxy,\r\n ApiServiceProxies.ChatServiceProxy,\r\n ApiServiceProxies.CommonLookupServiceProxy,\r\n ApiServiceProxies.EditionServiceProxy,\r\n ApiServiceProxies.FriendshipServiceProxy,\r\n ApiServiceProxies.HostSettingsServiceProxy,\r\n ApiServiceProxies.InstallServiceProxy,\r\n ApiServiceProxies.LanguageServiceProxy,\r\n ApiServiceProxies.NotificationServiceProxy,\r\n ApiServiceProxies.OrganizationUnitServiceProxy,\r\n ApiServiceProxies.PermissionServiceProxy,\r\n ApiServiceProxies.ProfileServiceProxy,\r\n ApiServiceProxies.RoleServiceProxy,\r\n ApiServiceProxies.SessionServiceProxy,\r\n ApiServiceProxies.TenantServiceProxy,\r\n ApiServiceProxies.TenantDashboardServiceProxy,\r\n ApiServiceProxies.TenantSettingsServiceProxy,\r\n ApiServiceProxies.TimingServiceProxy,\r\n ApiServiceProxies.UserServiceProxy,\r\n ApiServiceProxies.UserLinkServiceProxy,\r\n ApiServiceProxies.UserLoginServiceProxy,\r\n ApiServiceProxies.WebLogServiceProxy,\r\n ApiServiceProxies.AccountServiceProxy,\r\n ApiServiceProxies.TokenAuthServiceProxy,\r\n ApiServiceProxies.TenantRegistrationServiceProxy,\r\n ApiServiceProxies.HostDashboardServiceProxy,\r\n ApiServiceProxies.PaymentServiceProxy,\r\n ApiServiceProxies.DemoUiComponentsServiceProxy,\r\n ApiServiceProxies.InvoiceServiceProxy,\r\n ApiServiceProxies.SubscriptionServiceProxy,\r\n ApiServiceProxies.InstallServiceProxy,\r\n ApiServiceProxies.UiCustomizationSettingsServiceProxy,\r\n ApiServiceProxies.PayPalPaymentServiceProxy,\r\n ApiServiceProxies.StripePaymentServiceProxy,\r\n ApiServiceProxies.DashboardCustomizationServiceProxy,\r\n ApiServiceProxies.WebhookEventServiceProxy,\r\n ApiServiceProxies.WebhookSubscriptionServiceProxy,\r\n ApiServiceProxies.WebhookSendAttemptServiceProxy,\r\n ApiServiceProxies.UserDelegationServiceProxy,\r\n ApiServiceProxies.DynamicPropertyServiceProxy,\r\n ApiServiceProxies.DynamicEntityPropertyDefinitionServiceProxy,\r\n ApiServiceProxies.DynamicEntityPropertyServiceProxy,\r\n ApiServiceProxies.DynamicPropertyValueServiceProxy,\r\n ApiServiceProxies.DynamicEntityPropertyValueServiceProxy,\r\n ApiServiceProxies.TwitterServiceProxy,\r\n ApiServiceProxies.ShipmentServiceProxy,\r\n ApiServiceProxies.InventoryServiceProxy,\r\n ApiServiceProxies.SearchServiceProxy,\r\n ApiServiceProxies.AppointmentServiceProxy,\r\n ApiServiceProxies.AddressLookupServiceProxy,\r\n ApiServiceProxies.WarehouseServiceProxy,\r\n ApiServiceProxies.OrderServiceProxy,\r\n ApiServiceProxies.ItemServiceProxy,\r\n { provide: RefreshTokenService, useClass: ZeroRefreshTokenService },\r\n { provide: AbpHttpConfigurationService, useClass: ZeroTemplateHttpConfigurationService },\r\n { provide: HTTP_INTERCEPTORS, useClass: AbpHttpInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: CachingInterceptor, multi: true },\r\n ],\r\n})\r\nexport class ServiceProxyModule {}\r\n","import { Injectable } from '@angular/core';\nimport { AbpHttpConfigurationService, LogService, MessageService } from 'abp-ng2-module';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ZeroTemplateHttpConfigurationService extends AbpHttpConfigurationService {\n constructor(messageService: MessageService, logService: LogService, private _route: Router) {\n super(messageService, logService);\n }\n\n // Override handleUnAuthorizedRequest so it doesn't refresh the page during failed login attempts.\n handleUnAuthorizedRequest(messagePromise: any, targetUrl?: string) {\n if (this._route.url === '/account/login') {\n return;\n }\n\n const self = this;\n\n if (messagePromise) {\n messagePromise.done(() => {\n this.handleTargetUrl(targetUrl || '/');\n });\n } else {\n self.handleTargetUrl(targetUrl || '/');\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { filter as _filter, forEach as _forEach } from 'lodash-es';\n\n@Injectable()\nexport class ArrayToTreeConverterService {\n createTree(\n array: any[],\n parentIdProperty,\n idProperty,\n parentIdValue,\n childrenProperty: string,\n fieldMappings\n ): any {\n let tree = [];\n\n let nodes = _filter(array, [parentIdProperty, parentIdValue]);\n\n _forEach(nodes, (node) => {\n let newNode = {\n data: node,\n };\n\n this.mapFields(node, newNode, fieldMappings);\n\n newNode[childrenProperty] = this.createTree(\n array,\n parentIdProperty,\n idProperty,\n node[idProperty],\n childrenProperty,\n fieldMappings\n );\n\n tree.push(newNode);\n });\n\n return tree;\n }\n\n mapFields(node, newNode, fieldMappings): void {\n _forEach(fieldMappings, (fieldMapping) => {\n if (!fieldMapping['target']) {\n return;\n }\n\n if (fieldMapping.hasOwnProperty('value')) {\n newNode[fieldMapping['target']] = fieldMapping['value'];\n } else if (fieldMapping['source']) {\n newNode[fieldMapping['target']] = node[fieldMapping['source']];\n } else if (fieldMapping['targetFunction']) {\n newNode[fieldMapping['target']] = fieldMapping['targetFunction'](node);\n }\n });\n }\n}\n","import { AfterViewInit, Directive, ElementRef } from '@angular/core';\n\n@Directive({\n selector: '[autoFocus]',\n})\nexport class AutoFocusDirective implements AfterViewInit {\n constructor(private _element: ElementRef) {}\n\n ngAfterViewInit(): void {\n this._element.nativeElement.focus();\n }\n}\n","import {\n Directive,\n Input,\n ComponentFactoryResolver,\n ViewContainerRef,\n Injector,\n SimpleChanges,\n OnChanges,\n} from '@angular/core';\nimport { NgxSpinnerService, NgxSpinnerComponent } from 'ngx-spinner';\n\n@Directive({\n selector: '[busyIf]',\n})\nexport class BusyIfDirective implements OnChanges {\n private static index = 0;\n\n @Input() busyIf: boolean;\n\n ngxSpinnerService: NgxSpinnerService;\n isBusy = false;\n\n private spinnerName = '';\n\n constructor(\n private _viewContainer: ViewContainerRef,\n private _componentFactoryResolver: ComponentFactoryResolver,\n private _injector: Injector\n ) {\n this.ngxSpinnerService = _injector.get(NgxSpinnerService);\n this.loadComponent();\n }\n\n\n refreshState(): void {\n if (this.isBusy === undefined || this.spinnerName === '') {\n return;\n }\n\n setTimeout(() => {\n if (this.isBusy) {\n this.ngxSpinnerService.show(this.spinnerName);\n } else {\n this.ngxSpinnerService.hide(this.spinnerName);\n }\n }, 1000);\n }\n\n loadComponent() {\n const componentFactory = this._componentFactoryResolver.resolveComponentFactory(NgxSpinnerComponent);\n const componentRef = this._viewContainer.createComponent(componentFactory);\n this.spinnerName = 'busyIfSpinner-' + BusyIfDirective.index++ + '-' + Math.floor(Math.random() * 1000000); // generate random name\n let component = componentRef.instance;\n component.name = this.spinnerName;\n component.fullScreen = false;\n\n component.type = 'ball-clip-rotate';\n component.size = 'medium';\n component.color = '#5ba7ea';\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.busyIf) {\n this.isBusy = changes.busyIf.currentValue;\n this.refreshState();\n }\n }\n}\n","import { Directive, ElementRef, Input, OnInit, AfterViewInit } from '@angular/core';\nimport { AppLocalizationService } from '@app/shared/common/localization/app-localization.service';\n\n@Directive({\n selector: '[buttonBusy]',\n})\nexport class ButtonBusyDirective implements OnInit, AfterViewInit {\n @Input() busyText: string;\n private _originalButtonInnerHtml: any;\n private _button: any;\n\n constructor(private _element: ElementRef, private _appLocalizationService: AppLocalizationService) {}\n\n @Input() set buttonBusy(isBusy: boolean) {\n this.refreshState(isBusy);\n }\n\n ngOnInit(): void {\n this._button = this._element.nativeElement;\n }\n\n ngAfterViewInit(): void {\n this._originalButtonInnerHtml = this._button.innerHTML;\n }\n\n refreshState(isBusy: boolean): void {\n if (!this._button) {\n return;\n }\n\n if (isBusy) {\n // disable button\n this._button.setAttribute('disabled', 'disabled');\n\n this._button.innerHTML =\n '' +\n '' +\n (this.busyText ? this.busyText : this._appLocalizationService.l('ProcessingWithThreeDot')) +\n '';\n\n this._button.setAttribute('_disabledBefore', true);\n } else {\n if (!this._button.getAttribute('_disabledBefore')) {\n return;\n }\n\n // enable button\n this._button.removeAttribute('disabled');\n this._button.innerHTML = this._originalButtonInnerHtml;\n }\n }\n}\n","import { Directive, EventEmitter, Input, OnChanges, OnDestroy, Optional, Output, Self, SimpleChanges } from '@angular/core';\r\nimport { removeJSDateLocalOffset } from '@app/shared/common/timing/date-helpers';\r\nimport { changeDateTimeTimeZoneOffset } from '@app/shared/common/timing/date-time-helpers';\r\nimport { DateTime } from 'luxon';\r\nimport { BsDatepickerDirective, BsDatepickerInlineDirective } from 'ngx-bootstrap/datepicker';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Directive({\r\n selector: '[datePickerAsDateTime]',\r\n})\r\nexport class DatePickerAsDateTimeDirective implements OnDestroy, OnChanges {\r\n @Input() dateTime: DateTime;\r\n @Output() dateTimeChange = new EventEmitter();\r\n\r\n @Input() timezone = 'UTC';\r\n\r\n subscribe: Subscription;\r\n lastDateTime: DateTime = null;\r\n\r\n private readonly _datepicker: BsDatepickerDirective | BsDatepickerInlineDirective;\r\n\r\n constructor(\r\n @Optional() @Self() bsDatepicker: BsDatepickerDirective,\r\n @Optional() @Self() bsDatepickerInline: BsDatepickerInlineDirective,\r\n ) {\r\n this._datepicker = bsDatepicker || bsDatepickerInline;\r\n\r\n this.subscribe = this._datepicker.bsValueChange.subscribe(date => {\r\n const dateTime = this.dateToDateTime(date);\r\n if (!this.isSameAsLastDateTime(dateTime)) {\r\n this.lastDateTime = dateTime;\r\n this.dateTimeChange.emit(dateTime);\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscribe.unsubscribe();\r\n }\r\n\r\n ngOnChanges({ dateTime }: SimpleChanges) {\r\n if (dateTime) {\r\n if (!this.isSameAsLastDateTime(this.dateTime)) {\r\n this._datepicker.bsValue = this.dateTimeToDate(this.dateTime);\r\n }\r\n }\r\n }\r\n\r\n private isSameAsLastDateTime(dateTime: DateTime) {\r\n if (dateTime == null) {\r\n return this.lastDateTime == null;\r\n }\r\n\r\n if (this.lastDateTime == null) {\r\n return false;\r\n }\r\n\r\n return dateTime.equals(this.lastDateTime);\r\n }\r\n\r\n private dateToDateTime(date: Date): DateTime {\r\n if (!date) {\r\n return null;\r\n }\r\n\r\n const utcDateTime = removeJSDateLocalOffset(date).startOf('day');\r\n\r\n if (!utcDateTime.isValid) {\r\n return null;\r\n }\r\n\r\n return changeDateTimeTimeZoneOffset(utcDateTime, this.timezone);\r\n }\r\n\r\n private dateTimeToDate(dateTime: DateTime): Date {\r\n if (!dateTime) {\r\n return null;\r\n }\r\n\r\n return new Date(dateTime.year, dateTime.month - 1, dateTime.day);\r\n }\r\n}\r\n","import { Directive, EventEmitter, Input, OnChanges, OnDestroy, Output, Self, SimpleChanges } from '@angular/core';\r\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\r\nimport compare from 'just-compare';\r\nimport { DateTime } from 'luxon';\r\nimport { BsDatepickerDirective } from 'ngx-bootstrap/datepicker';\r\nimport { Subscription } from 'rxjs';\r\n\r\n///this directive ensures that the date value will always be the luxon.\r\n@Directive({\r\n selector: '[datePickerLuxonModifier]',\r\n})\r\nexport class DatePickerLuxonModifierDirective implements OnDestroy, OnChanges {\r\n @Input() date = new EventEmitter();\r\n @Input() isUtc = false;\r\n @Input() withTimepicker = false;\r\n @Output() dateChange = new EventEmitter();\r\n\r\n subscribe: Subscription;\r\n lastDate: Date = null;\r\n\r\n constructor(@Self() private bsDatepicker: BsDatepickerDirective, private _dateTimeService: DateTimeService) {\r\n this.subscribe = bsDatepicker.bsValueChange.subscribe((date: Date) => {\r\n if (!date) {\r\n this.lastDate = null;\r\n this.dateChange.emit(null);\r\n } else if (date instanceof Date && !compare(this.lastDate, date) && date.toString() !== 'Invalid Date') {\r\n // clear hour, minute, seconds and milliseconds since this is a date\r\n if (!this.withTimepicker) {\r\n date.setHours(0);\r\n date.setMinutes(0);\r\n }\r\n\r\n date.setSeconds(0);\r\n date.setMilliseconds(0);\r\n\r\n if (this.isUtc) {\r\n // using UTC date regardless of timing configuration\r\n var utcDateString = new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString();\r\n date = this._dateTimeService.fromISODateString(utcDateString).toJSDate();\r\n } else if (abp.clock.provider.supportsMultipleTimezone) {\r\n date = this._dateTimeService.changeTimeZone(date, abp.timing.timeZoneInfo.iana.timeZoneId);\r\n }\r\n\r\n this.lastDate = date;\r\n this.dateChange.emit(this._dateTimeService.fromJSDate(this.lastDate));\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscribe.unsubscribe();\r\n }\r\n\r\n ngOnChanges({ date }: SimpleChanges) {\r\n if (date && date.currentValue) {\r\n if (!compare(date.currentValue, date.previousValue)) {\r\n setTimeout(() => {\r\n if (date.currentValue instanceof DateTime) {\r\n this.bsDatepicker.bsValue = date.currentValue.toJSDate();\r\n } else {\r\n this.bsDatepicker.bsValue = date.currentValue;\r\n }\r\n }, 0);\r\n }\r\n } else {\r\n setTimeout(() => {\r\n this.bsDatepicker.bsValue = null;\r\n }, 0);\r\n }\r\n }\r\n}\r\n","import { Directive, Self, Output, EventEmitter, Input, SimpleChanges, OnDestroy, OnChanges } from '@angular/core';\nimport { BsDaterangepickerDirective } from 'ngx-bootstrap/datepicker';\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { DateTime } from 'luxon';\nimport compare from 'just-compare';\nimport { DateTimeService } from '@app/shared/common/timing/date-time.service';\n\n///this directive ensures that date values will always be the luxon.\n@Directive({\n selector: '[dateRangePickerLuxonModifier]',\n})\nexport class DateRangePickerLuxonModifierDirective implements OnDestroy, OnChanges {\n @Input() date = new EventEmitter();\n @Output() dateChange = new EventEmitter();\n\n subscribe: Subscription;\n lastDates: Date[] = null;\n\n constructor(\n @Self() private bsDateRangepicker: BsDaterangepickerDirective,\n private _dateTimeService: DateTimeService\n ) {\n this.subscribe = bsDateRangepicker.bsValueChange\n .pipe(\n filter(\n (dates) =>\n !!(\n dates &&\n dates[0] instanceof Date &&\n dates[1] instanceof Date &&\n !compare(this.lastDates, dates) &&\n dates[0].toString() !== 'Invalid Date' &&\n dates[1].toString() !== 'Invalid Date'\n )\n )\n )\n .subscribe((dates: Date[]) => {\n this.lastDates = dates;\n let startDate = this._dateTimeService.fromJSDate(dates[0]);\n let endDate = this._dateTimeService.fromJSDate(dates[1]);\n this.dateChange.emit([startDate, endDate]);\n });\n }\n\n ngOnDestroy() {\n this.subscribe.unsubscribe();\n }\n\n ngOnChanges({ date }: SimpleChanges) {\n if (date && date.currentValue && !compare(date.currentValue, date.previousValue)) {\n setTimeout(\n () =>\n (this.bsDateRangepicker.bsValue = [new Date(date.currentValue[0]), new Date(date.currentValue[1])]),\n 0\n );\n }\n }\n}\n","import { Directive, Input, OnChanges, OnDestroy, Self, SimpleChanges } from '@angular/core';\r\nimport { isEqual } from 'lodash-es';\r\nimport { BsDatepickerInlineDirective, DatepickerDateCustomClasses } from 'ngx-bootstrap/datepicker';\r\nimport { combineLatest, Subject, Subscription } from 'rxjs';\r\nimport { getDatePickerComponentOnShown$ } from './inline-date-picker-on-shown';\r\n\r\n@Directive({\r\n selector: 'bs-datepicker-inline[appDatePickerInternalCustomClasses]',\r\n})\r\nexport class InlineDatePickerInternalCustomClassesDirective implements OnChanges, OnDestroy {\r\n // eslint-disable-next-line @angular-eslint/no-output-rename\r\n @Input('appDatePickerInternalCustomClasses') customClasses: DatepickerDateCustomClasses[];\r\n\r\n private readonly _customClasses$ = new Subject();\r\n private readonly _storeSubscription$: Subscription;\r\n\r\n constructor(@Self() datePicker: BsDatepickerInlineDirective) {\r\n const datepickerComponentShown$ = getDatePickerComponentOnShown$(datePicker);\r\n const datepickerShownOrClassesChange$ = combineLatest([datepickerComponentShown$, this._customClasses$]);\r\n\r\n this._storeSubscription$ = datepickerShownOrClassesChange$.subscribe(\r\n ([instance, customClasses]) => instance.dateCustomClasses = customClasses\r\n );\r\n }\r\n\r\n ngOnChanges({ customClasses }: SimpleChanges): void {\r\n if (customClasses && !isEqual(customClasses.previousValue, customClasses.currentValue)) {\r\n this._customClasses$.next(this.customClasses);\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._customClasses$.complete();\r\n this._storeSubscription$.unsubscribe();\r\n }\r\n}\r\n","import { EventEmitter } from '@angular/core';\r\nimport { BsDatepickerInlineContainerComponent, BsDatepickerInlineDirective } from 'ngx-bootstrap/datepicker';\r\n\r\nexport function getDatePickerComponentOnShown$(datePicker: BsDatepickerInlineDirective) {\r\n return (datePicker as any)._datepicker.onShown as EventEmitter;\r\n}\r\n","import { Directive, EventEmitter, OnDestroy, Output, Self } from '@angular/core';\r\nimport { removeJSDateLocalOffset } from '@app/shared/common/timing/date-helpers';\r\nimport { DateTime } from 'luxon';\r\nimport { BsDatepickerInlineDirective } from 'ngx-bootstrap/datepicker';\r\nimport { BehaviorSubject, Subscription } from 'rxjs';\r\nimport { distinctUntilChanged, filter, map, pluck, switchMap } from 'rxjs/operators';\r\nimport { getDatePickerComponentOnShown$ } from './inline-date-picker-on-shown';\r\n\r\ninterface BsDatePickerStoreView {\r\n date: Date;\r\n mode: 'day' | 'month' | 'year';\r\n}\r\n\r\ninterface BsDatePickerStoreData {\r\n view: BsDatePickerStoreView;\r\n}\r\n\r\n@Directive({\r\n selector: 'bs-datepicker-inline[appDatePickerViewChanged]',\r\n})\r\nexport class InlineDatePickerOnViewChangeDirective implements OnDestroy {\r\n // eslint-disable-next-line @angular-eslint/no-output-rename\r\n @Output('appDatePickerViewChanged') viewChanged = new EventEmitter();\r\n\r\n private _storeSubscription$: Subscription;\r\n\r\n constructor(@Self() datePicker: BsDatepickerInlineDirective) {\r\n const datepickerComponentShown$ = getDatePickerComponentOnShown$(datePicker);\r\n\r\n const switchToDatePickerStore$ = switchMap((instance: any) => instance._store.source as BehaviorSubject);\r\n const pluckView$ = pluck('view');\r\n const ignoreWhenViewIsNotDay$ = filter(({ mode }: BsDatePickerStoreView) => mode === 'day');\r\n const mapStartOfDay$ = map(({ date }: BsDatePickerStoreView) => removeJSDateLocalOffset(date).startOf('day'));\r\n const ignoreUntilDayChanges$ = distinctUntilChanged((x: DateTime, y) => (x == null && y == null) || (x && y && x.equals(y)));\r\n\r\n this._storeSubscription$ = datepickerComponentShown$\r\n .pipe(\r\n switchToDatePickerStore$,\r\n pluckView$,\r\n ignoreWhenViewIsNotDay$,\r\n mapStartOfDay$,\r\n ignoreUntilDayChanges$,\r\n )\r\n .subscribe(startOfSelectedDay => this.viewChanged.next(startOfSelectedDay.toJSDate()));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._storeSubscription$.unsubscribe();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { FileDto } from '@shared/service-proxies/service-proxies';\n\n@Injectable()\nexport class FileDownloadService {\n downloadTempFile(file: FileDto) {\n const url =\n AppConsts.remoteServiceBaseUrl +\n '/File/DownloadTempFile?fileType=' +\n file.fileType +\n '&fileToken=' +\n file.fileToken +\n '&fileName=' +\n file.fileName;\n location.href = url; //TODO: This causes reloading of same page in Firefox\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DateTime } from 'luxon';\r\n\r\n@Pipe({ name: 'formatTimeZone' })\r\nexport class FormatTimeZonePipe implements PipeTransform {\r\n private static readonly FORMATTING_DATE = DateTime.utc();\r\n\r\n transform(value: string, format: string, date?: DateTime | Date): string {\r\n const formattingDate = date == null\r\n ? FormatTimeZonePipe.FORMATTING_DATE\r\n : date instanceof Date\r\n ? DateTime.fromJSDate(date)\r\n : date;\r\n\r\n return formattingDate.setZone(value).toFormat(format);\r\n }\r\n}\r\n","import { AfterViewInit, Component, Input } from '@angular/core';\nimport { AppConsts } from '@shared/AppConsts';\nimport { ProfileServiceProxy } from '@shared/service-proxies/service-proxies';\n\n@Component({\n selector: 'friend-profile-picture',\n template: `\n \"...\"\n `,\n})\nexport class FriendProfilePictureComponent implements AfterViewInit {\n @Input() userId: number;\n @Input() tenantId: number;\n\n profilePicture = AppConsts.appBaseUrl + '/assets/common/images/default-profile-picture.png';\n\n constructor(private _profileService: ProfileServiceProxy) {}\n\n ngAfterViewInit(): void {\n this.setProfileImage();\n }\n\n private setProfileImage(): void {\n if (!this.tenantId) {\n this.tenantId = undefined;\n }\n\n this._profileService.getFriendProfilePicture(this.userId, this.tenantId).subscribe((result) => {\n if (result && result.profilePicture) {\n this.profilePicture = 'data:image/jpeg;base64,' + result.profilePicture;\n }\n });\n }\n}\n","import { AfterViewInit, Directive, ElementRef, Input, NgZone, OnChanges, Renderer2, SimpleChanges } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appHighlightText]',\r\n})\r\nexport class HighlightTextDirective implements AfterViewInit, OnChanges {\r\n @Input() appHighlightText: string;\r\n @Input() highlight: string;\r\n @Input() ignoreCase: boolean;\r\n\r\n private _isInit: boolean;\r\n\r\n private _wrapperElement: HTMLElement;\r\n private _elementBeforeHighlighted: HTMLElement;\r\n private _highlightedElement: HTMLElement;\r\n private _elementAfterHighlighted: HTMLElement;\r\n\r\n constructor(\r\n private _element: ElementRef,\r\n private _ngZone: NgZone,\r\n private _renderer2: Renderer2) {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this._ngZone.runOutsideAngular(() => this.buildBaseElements());\r\n }\r\n\r\n buildBaseElements(): any {\r\n // Build html like\r\n // \r\n // textBeforeHighlight\r\n // highlightedText\r\n // textAfterHighlight\r\n // \r\n\r\n this._wrapperElement = this._renderer2.createElement('span');\r\n this._renderer2.addClass(this._wrapperElement, 'highlight-text');\r\n\r\n this._elementBeforeHighlighted = this._renderer2.createElement('span');\r\n this._renderer2.addClass(this._elementBeforeHighlighted, 'highlight-text__before');\r\n this._renderer2.appendChild(this._wrapperElement, this._elementBeforeHighlighted);\r\n\r\n this._highlightedElement = this._renderer2.createElement('span');\r\n this._renderer2.addClass(this._highlightedElement, 'highlight-text__highlighted');\r\n this._renderer2.appendChild(this._wrapperElement, this._highlightedElement);\r\n\r\n this._elementAfterHighlighted = this._renderer2.createElement('span');\r\n this._renderer2.addClass(this._elementAfterHighlighted, 'highlight-text__after');\r\n this._renderer2.appendChild(this._wrapperElement, this._elementAfterHighlighted);\r\n\r\n this._renderer2.appendChild(this._element.nativeElement, this._wrapperElement);\r\n\r\n this._isInit = true;\r\n\r\n this.updateHighlight();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this._ngZone.runOutsideAngular(() => this.updateHighlight());\r\n }\r\n\r\n updateHighlight(): any {\r\n if (!this._isInit) {\r\n return;\r\n }\r\n\r\n this.clearText(this._elementBeforeHighlighted);\r\n this.clearText(this._highlightedElement);\r\n this.clearText(this._elementAfterHighlighted);\r\n\r\n if (this.appHighlightText == null) {\r\n return;\r\n }\r\n\r\n if (this.highlight == null) {\r\n // display without highlight\r\n this.addText(this._elementBeforeHighlighted, this.appHighlightText);\r\n }\r\n\r\n const indexOfText = this.findHighlightedText();\r\n if (indexOfText < 0) {\r\n // display without highlight\r\n this.addText(this._elementBeforeHighlighted, this.appHighlightText);\r\n }\r\n\r\n const textBeforeHighlight = this.appHighlightText.substring(0, indexOfText);\r\n const highlightedText = this.appHighlightText.substring(indexOfText, indexOfText + this.highlight.length);\r\n const textAfterHighlight = this.appHighlightText.substring(indexOfText + this.highlight.length);\r\n\r\n this.addText(this._elementBeforeHighlighted, textBeforeHighlight);\r\n this.addText(this._highlightedElement, highlightedText);\r\n this.addText(this._elementAfterHighlighted, textAfterHighlight);\r\n }\r\n\r\n private clearText(element: HTMLElement) {\r\n while (element.lastChild) {\r\n this._renderer2.removeChild(element, element.lastChild);\r\n }\r\n }\r\n\r\n private addText(element: HTMLElement, text: string) {\r\n const textElement = this._renderer2.createText(text);\r\n this._renderer2.appendChild(element, textElement);\r\n }\r\n\r\n private findHighlightedText() {\r\n if (this.ignoreCase) {\r\n return this.appHighlightText.toLocaleLowerCase().indexOf(this.highlight.toLocaleLowerCase());\r\n }\r\n\r\n return this.appHighlightText.indexOf(this.highlight);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport * as localForage from 'localforage';\n\n@Injectable()\nexport class LocalStorageService {\n getItem(key: string, callback: any): void {\n if (!localForage) {\n return;\n }\n\n localForage.getItem(key, callback);\n }\n\n setItem(key, value, callback?: any): void {\n if (!localForage) {\n return;\n }\n\n if (value === null) {\n value = undefined;\n }\n\n localForage.setItem(key, value, callback);\n }\n\n removeItem(key, callback?: any): void {\n if (!localForage) {\n return;\n }\n\n localForage.removeItem(key, callback);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DateTime, Duration, DurationUnit } from 'luxon';\r\n\r\n@Pipe({ name: 'luxonDiff' })\r\nexport class LuxonDiffPipe implements PipeTransform {\r\n\r\n transform(value: DateTime, dateToSubtract: DateTime, unit?: DurationUnit): Duration {\r\n return value.diff(dateToSubtract, unit);\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { Duration, ToHumanDurationOptions } from 'luxon';\r\n\r\n@Pipe({ name: 'luxonDurationHumanize' })\r\nexport class LuxonDurationHumanizePipe implements PipeTransform {\r\n transform(value: Duration, opts?: ToHumanDurationOptions): string {\r\n return value.toHuman(opts);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { AppLocalizationService } from '@app/shared/common/localization/app-localization.service';\r\nimport { Duration } from 'luxon';\r\n\r\n@Pipe({ name: 'luxonDurationLocalized' })\r\nexport class LuxonDurationLocalizedPipe implements PipeTransform {\r\n constructor(private readonly _appLocalization: AppLocalizationService) {\r\n\r\n }\r\n transform(value: Duration, includeEmpty = false, separator: string = ' '): string {\r\n const tokens: string[] = [];\r\n const { hours, minutes, seconds } = value;\r\n\r\n if (hours) {\r\n if (hours > 1) {\r\n tokens.push(this._appLocalization.l('Duration_Hours', hours));\r\n } else if (includeEmpty) {\r\n tokens.push(this._appLocalization.l('Duration_Hour', hours));\r\n }\r\n }\r\n\r\n if (minutes) {\r\n if (minutes > 1) {\r\n tokens.push(this._appLocalization.l('Duration_Minutes', minutes));\r\n } else if (includeEmpty) {\r\n tokens.push(this._appLocalization.l('Duration_Minute', minutes));\r\n }\r\n }\r\n\r\n if (seconds) {\r\n if (seconds > 1) {\r\n tokens.push(this._appLocalization.l('Duration_Seconds', seconds));\r\n } else if (includeEmpty) {\r\n tokens.push(this._appLocalization.l('Duration_Second', seconds));\r\n }\r\n }\r\n\r\n return tokens.join(separator);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { DateTime } from 'luxon';\n\n@Pipe({ name: 'luxonFormat' })\nexport class LuxonFormatPipe implements PipeTransform {\n transform(value: DateTime, format: string) {\n if (!value) {\n return '';\n }\n\n return value.toFormat(format);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { DateTime } from 'luxon';\n\n@Pipe({ name: 'luxonFromNow' })\nexport class LuxonFromNowPipe implements PipeTransform {\n transform(value: DateTime) {\n if (!value) {\n return '';\n }\n\n return value.toRelative();\n }\n}\n","export class NameValuePair {\n\n name!: string | undefined;\n value!: string | undefined;\n\n constructor(data?: any) {\n if (!data) {\n return;\n }\n\n this.name = data.name;\n this.value = data.value;\n }\n\n}\n","import { NgControl } from '@angular/forms';\nimport { Directive, ElementRef, HostListener } from '@angular/core';\n\n@Directive({\n selector: 'input[nullValue]',\n})\nexport class NullDefaultValueDirective {\n constructor(private el: ElementRef, private control: NgControl) {}\n\n @HostListener('input', ['$event.target'])\n onEvent(target: HTMLInputElement) {\n this.control.viewToModelUpdate(target.value === '' ? null : target.value);\n }\n}\n","import { Injectable } from '@angular/core';\n@Injectable()\nexport class ScriptLoaderService {\n private scripts: any = {};\n\n load(...scripts: string[]) {\n this.scripts = scripts;\n let promises: any[] = [];\n scripts.forEach((script) => promises.push(this.loadScript(script)));\n return Promise.all(promises);\n }\n\n loadScript(name: string) {\n return new Promise((resolve, reject) => {\n let script = document.createElement('script') as any;\n script.type = 'text/javascript';\n script.src = name;\n\n if (script.readyState) {\n //IE\n script.onreadystatechange = () => {\n if (script.readyState === 'loaded' || script.readyState === 'complete') {\n script.onreadystatechange = null;\n resolve({ script: name, loaded: true, status: 'Loaded' });\n }\n };\n } else {\n //Others\n script.onload = () => {\n resolve({ script: name, loaded: true, status: 'Loaded' });\n };\n }\n\n script.onerror = (error: any) => resolve({ script: name, loaded: false, status: 'Loaded' });\n document.getElementsByTagName('head')[0].appendChild(script);\n });\n }\n}\n","import { Injectable } from '@angular/core';\n@Injectable()\nexport class StyleLoaderService {\n private styles: any = {};\n\n load(...styles: string[]) {\n this.styles = styles;\n let promises: any[] = [];\n styles.forEach((style) => promises.push(this.loadStyle(style)));\n return Promise.all(promises);\n }\n\n loadArray(styles: string[]) {\n this.styles = styles;\n let promises: any[] = [];\n styles.forEach((style) => promises.push(this.loadStyle(style)));\n return Promise.all(promises);\n }\n\n loadStyle(name: string) {\n return new Promise((resolve, reject) => {\n let style = document.createElement('link') as any;\n style.type = 'text/css';\n style.rel = 'stylesheet';\n style.href = name;\n\n if (style.readyState) {\n //IE\n style.onreadystatechange = () => {\n if (style.readyState === 'loaded' || style.readyState === 'complete') {\n style.onreadystatechange = null;\n resolve({ style: name, loaded: true, status: 'Loaded' });\n }\n };\n } else {\n //Others\n style.onload = () => {\n resolve({ style: name, loaded: true, status: 'Loaded' });\n };\n }\n\n style.onerror = (error: any) => resolve({ style: name, loaded: false, status: 'Loaded' });\n document.getElementsByTagName('head')[0].appendChild(style);\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { filter as _filter, forEach as _forEach } from 'lodash-es';\n\n@Injectable()\nexport class TreeDataHelperService {\n findNode(data, selector): any {\n let nodes = _filter(data, selector);\n if (nodes && nodes.length === 1) {\n return nodes[0];\n }\n\n let foundNode = null;\n\n _forEach(data, (d) => {\n if (!foundNode) {\n foundNode = this.findNode(d.children, selector);\n }\n });\n\n return foundNode;\n }\n\n findParent(data, nodeSelector) {\n let node = this.findNode(data, nodeSelector);\n if (!node) {\n return null;\n }\n\n return node.parent;\n }\n\n findChildren(data, selector) {\n let traverseChildren = function (node) {\n let names = [];\n if (node.children) {\n _forEach(node.children, (c) => {\n names.push(c.data.name);\n names = names.concat(traverseChildren(c));\n });\n }\n return names;\n };\n\n let foundNode = this.findNode(data, selector);\n if (foundNode) {\n return traverseChildren(foundNode);\n } else {\n return [];\n }\n }\n}\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FeatureCheckerPipe } from '@shared/common/pipes/feature-checker.pipe';\r\nimport { LocalizePipe } from '@shared/common/pipes/localize.pipe';\r\nimport { PermissionAllPipe } from '@shared/common/pipes/permission-all.pipe';\r\nimport { PermissionAnyPipe } from '@shared/common/pipes/permission-any.pipe';\r\nimport { PermissionPipe } from '@shared/common/pipes/permission.pipe';\r\nimport { ArrayToTreeConverterService } from './array-to-tree-converter.service';\r\nimport { AutoFocusDirective } from './auto-focus.directive';\r\nimport { BusyIfDirective } from './busy-if.directive';\r\nimport { ButtonBusyDirective } from './button-busy.directive';\r\nimport { DatePickerAsDateTimeDirective } from './date-time/date-picker-as-date-time.directive';\r\nimport { DatePickerLuxonModifierDirective } from './date-time/date-picker-luxon-modifier.directive';\r\nimport { DateRangePickerLuxonModifierDirective } from './date-time/date-range-picker-luxon-modifier.directive';\r\nimport { InlineDatePickerInternalCustomClassesDirective } from './date-time/inline-date-picker-custom-classes.directive';\r\nimport { InlineDatePickerOnViewChangeDirective } from './date-time/inline-date-picker-view-changed.directive';\r\nimport { FileDownloadService } from './file-download.service';\r\nimport { FormatTimeZonePipe } from './format-time-zone.pipe';\r\nimport { FriendProfilePictureComponent } from './friend-profile-picture.component';\r\nimport { HighlightTextDirective } from './highlight-text.directive';\r\nimport { LocalStorageService } from './local-storage.service';\r\nimport { LuxonDiffPipe } from './luxon-diff.pipe';\r\nimport { LuxonDurationHumanizePipe } from './luxon-duration-humanize.pipe';\r\nimport { LuxonDurationLocalizedPipe } from './luxon-duration-localized.pipe';\r\nimport { LuxonFormatPipe } from './luxon-format.pipe';\r\nimport { LuxonFromNowPipe } from './luxon-from-now.pipe';\r\nimport { NullDefaultValueDirective } from './null-value.directive';\r\nimport { ScriptLoaderService } from './script-loader.service';\r\nimport { StyleLoaderService } from './style-loader.service';\r\nimport { TreeDataHelperService } from './tree-data-helper.service';\r\nimport { ValidationMessagesComponent } from './validation-messages.component';\r\nimport { EqualValidator } from './validation/equal-validator.directive';\r\nimport { PasswordComplexityValidator } from './validation/password-complexity-validator.directive';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [\r\n FileDownloadService,\r\n LocalStorageService,\r\n ScriptLoaderService,\r\n StyleLoaderService,\r\n ArrayToTreeConverterService,\r\n TreeDataHelperService,\r\n ],\r\n declarations: [\r\n EqualValidator,\r\n PasswordComplexityValidator,\r\n ButtonBusyDirective,\r\n AutoFocusDirective,\r\n BusyIfDirective,\r\n FriendProfilePictureComponent,\r\n LuxonFormatPipe,\r\n LuxonFromNowPipe,\r\n ValidationMessagesComponent,\r\n NullDefaultValueDirective,\r\n LocalizePipe,\r\n PermissionPipe,\r\n PermissionAnyPipe,\r\n FeatureCheckerPipe,\r\n DatePickerLuxonModifierDirective,\r\n DateRangePickerLuxonModifierDirective,\r\n PermissionAllPipe,\r\n HighlightTextDirective,\r\n LuxonDiffPipe,\r\n LuxonDurationHumanizePipe,\r\n LuxonDurationLocalizedPipe,\r\n InlineDatePickerOnViewChangeDirective,\r\n InlineDatePickerInternalCustomClassesDirective,\r\n FormatTimeZonePipe,\r\n DatePickerAsDateTimeDirective,\r\n ],\r\n exports: [\r\n EqualValidator,\r\n PasswordComplexityValidator,\r\n ButtonBusyDirective,\r\n AutoFocusDirective,\r\n BusyIfDirective,\r\n FriendProfilePictureComponent,\r\n LuxonFormatPipe,\r\n LuxonFromNowPipe,\r\n ValidationMessagesComponent,\r\n NullDefaultValueDirective,\r\n LocalizePipe,\r\n PermissionPipe,\r\n PermissionAnyPipe,\r\n FeatureCheckerPipe,\r\n DatePickerLuxonModifierDirective,\r\n DateRangePickerLuxonModifierDirective,\r\n PermissionAllPipe,\r\n HighlightTextDirective,\r\n LuxonDiffPipe,\r\n LuxonDurationHumanizePipe,\r\n LuxonDurationLocalizedPipe,\r\n InlineDatePickerOnViewChangeDirective,\r\n InlineDatePickerInternalCustomClassesDirective,\r\n FormatTimeZonePipe,\r\n DatePickerAsDateTimeDirective,\r\n ],\r\n})\r\nexport class UtilsModule { }\r\n","import { Component, Input } from '@angular/core';\r\nimport { AppLocalizationService } from '@app/shared/common/localization/app-localization.service';\r\nimport { concat as _concat, filter as _filter, find as _find } from 'lodash-es';\r\n\r\nclass ErrorDef {\r\n error: string;\r\n localizationKey: string;\r\n errorProperty: string;\r\n}\r\n\r\n@Component({\r\n selector: '',\r\n template: `\r\n
    \r\n
    \r\n {{ getErrorDefinitionMessage(errorDef) }}\r\n
    \r\n
    \r\n `,\r\n})\r\nexport class ValidationMessagesComponent {\r\n @Input() formCtrl;\r\n\r\n _errorDefs: ErrorDef[] = [];\r\n\r\n readonly standartErrorDefs: ErrorDef[] = [\r\n { error: 'required', localizationKey: 'ThisFieldIsRequired' } as ErrorDef,\r\n {\r\n error: 'minlength',\r\n localizationKey: 'PleaseEnterAtLeastNCharacter',\r\n errorProperty: 'requiredLength',\r\n } as ErrorDef,\r\n {\r\n error: 'maxlength',\r\n localizationKey: 'PleaseEnterNoMoreThanNCharacter',\r\n errorProperty: 'requiredLength',\r\n } as ErrorDef,\r\n { error: 'email', localizationKey: 'InvalidEmailAddress' } as ErrorDef,\r\n { error: 'pattern', localizationKey: 'InvalidPattern', errorProperty: 'requiredPattern' } as ErrorDef,\r\n ];\r\n\r\n constructor(private appLocalizationService: AppLocalizationService) { }\r\n\r\n get isInvalid() {\r\n return this.formCtrl.invalid && this.formCtrl.dirty;\r\n }\r\n\r\n get errorDefsInternal(): ErrorDef[] {\r\n let standarts = _filter(\r\n this.standartErrorDefs,\r\n (ed) => !_find(this._errorDefs, (edC) => edC.error === ed.error)\r\n );\r\n let all = _concat(standarts, this._errorDefs);\r\n\r\n return all.filter(x => this.getErrorDefinitionIsInValid(x));\r\n }\r\n\r\n @Input() set errorDefs(value: ErrorDef[]) {\r\n this._errorDefs = value;\r\n }\r\n\r\n getErrorDefinitionIsInValid(errorDef: ErrorDef): boolean {\r\n return !!this.formCtrl.errors[errorDef.error];\r\n }\r\n\r\n getErrorDefinitionMessage(errorDef: ErrorDef): string {\r\n let errorRequirement = this.formCtrl.errors[errorDef.error][errorDef.errorProperty];\r\n return !!errorRequirement\r\n ? this.appLocalizationService.l(errorDef.localizationKey, errorRequirement)\r\n : this.appLocalizationService.l(errorDef.localizationKey);\r\n }\r\n}\r\n","import { Attribute, Directive, forwardRef } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\n\n//Got from: https://scotch.io/tutorials/how-to-implement-a-custom-validator-directive-confirm-password-in-angular-2\n\n@Directive({\n selector: '[validateEqual][formControlName],[validateEqual][formControl],[validateEqual][ngModel]',\n providers: [{ provide: NG_VALIDATORS, useExisting: forwardRef(() => EqualValidator), multi: true }],\n})\nexport class EqualValidator implements Validator {\n constructor(\n @Attribute('validateEqual') public validateEqual: string,\n @Attribute('reverse') public reverse: string\n ) {}\n\n private get isReverse() {\n if (!this.reverse) {\n return false;\n }\n\n return this.reverse === 'true';\n }\n\n validate(control: AbstractControl): { [key: string]: any } {\n const pairControl = control.root.get(this.validateEqual);\n if (!pairControl) {\n return null;\n }\n\n const value = control.value;\n const pairValue = pairControl.value;\n\n if (!value && !pairValue) {\n this.deleteErrors(pairControl);\n return null;\n }\n\n if (this.isReverse) {\n if (value === pairValue) {\n this.deleteErrors(pairControl);\n } else {\n pairControl.setErrors({\n validateEqual: true,\n });\n }\n\n return null;\n } else {\n if (value !== pairValue) {\n return {\n validateEqual: true,\n };\n }\n }\n }\n\n deleteErrors(control: AbstractControl) {\n if (control.errors) {\n delete control.errors['validateEqual'];\n }\n\n if (control.errors && !Object.keys(control.errors).length) {\n control.setErrors(null);\n }\n }\n}\n","import { Directive, Input, forwardRef } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\n\n@Directive({\n selector: '[requireDigit],[requireLowercase],[requireNonAlphanumeric],[requireUppercase],[requiredLength]',\n providers: [{ provide: NG_VALIDATORS, useExisting: forwardRef(() => PasswordComplexityValidator), multi: true }],\n})\nexport class PasswordComplexityValidator implements Validator {\n @Input('requireDigit') requireDigit: boolean;\n @Input('requireUppercase') requireUppercase: boolean;\n @Input('requireLowercase') requireLowercase: boolean;\n @Input('requireNonAlphanumeric') requireNonAlphanumeric: boolean;\n @Input('requiredLength') requiredLength: number;\n\n validate(control: AbstractControl): { [key: string]: any } {\n const givenPassword = control.value;\n let validationResult = null;\n\n const requireDigit = this.requireDigit;\n if (requireDigit && givenPassword && !/[0-9]/.test(givenPassword)) {\n validationResult = validationResult || {};\n validationResult.requireDigit = true;\n }\n\n const requireUppercase = this.requireUppercase;\n if (requireUppercase && givenPassword && !/[A-Z]/.test(givenPassword)) {\n validationResult = validationResult || {};\n validationResult.requireUppercase = true;\n }\n\n const requireLowercase = this.requireLowercase;\n if (requireLowercase && givenPassword && !/[a-z]/.test(givenPassword)) {\n validationResult = validationResult || {};\n validationResult.requireLowercase = true;\n }\n\n const requiredLength = this.requiredLength;\n if (requiredLength && givenPassword && givenPassword.length < requiredLength) {\n validationResult = validationResult || {};\n validationResult.requiredLength = true;\n }\n\n // use upperCaseLetters\n const requireNonAlphanumeric = this.requireNonAlphanumeric;\n if (requireNonAlphanumeric && givenPassword && /^[0-9a-zA-Z]+$/.test(givenPassword)) {\n validationResult = validationResult || {};\n validationResult.requireNonAlphanumeric = true;\n }\n\n return validationResult;\n }\n}\n","var map = {\n\t\"./af-NA.mjs\": [\n\t\t9900,\n\t\t\"node_modules_angular_common_locales_af-NA_mjs\"\n\t],\n\t\"./af.mjs\": [\n\t\t1074,\n\t\t\"node_modules_angular_common_locales_af_mjs\"\n\t],\n\t\"./agq.mjs\": [\n\t\t42259,\n\t\t\"node_modules_angular_common_locales_agq_mjs\"\n\t],\n\t\"./ak.mjs\": [\n\t\t27019,\n\t\t\"node_modules_angular_common_locales_ak_mjs\"\n\t],\n\t\"./am.mjs\": [\n\t\t98934,\n\t\t\"node_modules_angular_common_locales_am_mjs\"\n\t],\n\t\"./ar-AE.mjs\": [\n\t\t95306,\n\t\t\"node_modules_angular_common_locales_ar-AE_mjs\"\n\t],\n\t\"./ar-BH.mjs\": [\n\t\t12598,\n\t\t\"node_modules_angular_common_locales_ar-BH_mjs\"\n\t],\n\t\"./ar-DJ.mjs\": [\n\t\t33183,\n\t\t\"node_modules_angular_common_locales_ar-DJ_mjs\"\n\t],\n\t\"./ar-DZ.mjs\": [\n\t\t37818,\n\t\t\"node_modules_angular_common_locales_ar-DZ_mjs\"\n\t],\n\t\"./ar-EG.mjs\": [\n\t\t87394,\n\t\t\"node_modules_angular_common_locales_ar-EG_mjs\"\n\t],\n\t\"./ar-EH.mjs\": [\n\t\t9834,\n\t\t\"node_modules_angular_common_locales_ar-EH_mjs\"\n\t],\n\t\"./ar-ER.mjs\": [\n\t\t17650,\n\t\t\"node_modules_angular_common_locales_ar-ER_mjs\"\n\t],\n\t\"./ar-IL.mjs\": [\n\t\t80089,\n\t\t\"node_modules_angular_common_locales_ar-IL_mjs\"\n\t],\n\t\"./ar-IQ.mjs\": [\n\t\t60676,\n\t\t\"node_modules_angular_common_locales_ar-IQ_mjs\"\n\t],\n\t\"./ar-JO.mjs\": [\n\t\t73895,\n\t\t\"node_modules_angular_common_locales_ar-JO_mjs\"\n\t],\n\t\"./ar-KM.mjs\": [\n\t\t98521,\n\t\t\"node_modules_angular_common_locales_ar-KM_mjs\"\n\t],\n\t\"./ar-KW.mjs\": [\n\t\t6932,\n\t\t\"node_modules_angular_common_locales_ar-KW_mjs\"\n\t],\n\t\"./ar-LB.mjs\": [\n\t\t6828,\n\t\t\"node_modules_angular_common_locales_ar-LB_mjs\"\n\t],\n\t\"./ar-LY.mjs\": [\n\t\t57117,\n\t\t\"node_modules_angular_common_locales_ar-LY_mjs\"\n\t],\n\t\"./ar-MA.mjs\": [\n\t\t32135,\n\t\t\"node_modules_angular_common_locales_ar-MA_mjs\"\n\t],\n\t\"./ar-MR.mjs\": [\n\t\t4155,\n\t\t\"node_modules_angular_common_locales_ar-MR_mjs\"\n\t],\n\t\"./ar-OM.mjs\": [\n\t\t77911,\n\t\t\"node_modules_angular_common_locales_ar-OM_mjs\"\n\t],\n\t\"./ar-PS.mjs\": [\n\t\t94854,\n\t\t\"node_modules_angular_common_locales_ar-PS_mjs\"\n\t],\n\t\"./ar-QA.mjs\": [\n\t\t50382,\n\t\t\"node_modules_angular_common_locales_ar-QA_mjs\"\n\t],\n\t\"./ar-SA.mjs\": [\n\t\t86036,\n\t\t\"node_modules_angular_common_locales_ar-SA_mjs\"\n\t],\n\t\"./ar-SD.mjs\": [\n\t\t49882,\n\t\t\"node_modules_angular_common_locales_ar-SD_mjs\"\n\t],\n\t\"./ar-SO.mjs\": [\n\t\t32680,\n\t\t\"node_modules_angular_common_locales_ar-SO_mjs\"\n\t],\n\t\"./ar-SS.mjs\": [\n\t\t97080,\n\t\t\"node_modules_angular_common_locales_ar-SS_mjs\"\n\t],\n\t\"./ar-SY.mjs\": [\n\t\t64750,\n\t\t\"node_modules_angular_common_locales_ar-SY_mjs\"\n\t],\n\t\"./ar-TD.mjs\": [\n\t\t81474,\n\t\t\"node_modules_angular_common_locales_ar-TD_mjs\"\n\t],\n\t\"./ar-TN.mjs\": [\n\t\t52637,\n\t\t\"node_modules_angular_common_locales_ar-TN_mjs\"\n\t],\n\t\"./ar-YE.mjs\": [\n\t\t55205,\n\t\t\"node_modules_angular_common_locales_ar-YE_mjs\"\n\t],\n\t\"./ar.mjs\": [\n\t\t18162,\n\t\t\"node_modules_angular_common_locales_ar_mjs\"\n\t],\n\t\"./as.mjs\": [\n\t\t61309,\n\t\t\"node_modules_angular_common_locales_as_mjs\"\n\t],\n\t\"./asa.mjs\": [\n\t\t83953,\n\t\t\"node_modules_angular_common_locales_asa_mjs\"\n\t],\n\t\"./ast.mjs\": [\n\t\t3929,\n\t\t\"node_modules_angular_common_locales_ast_mjs\"\n\t],\n\t\"./az-Cyrl.mjs\": [\n\t\t43875,\n\t\t\"node_modules_angular_common_locales_az-Cyrl_mjs\"\n\t],\n\t\"./az-Latn.mjs\": [\n\t\t44616,\n\t\t\"node_modules_angular_common_locales_az-Latn_mjs\"\n\t],\n\t\"./az.mjs\": [\n\t\t56125,\n\t\t\"node_modules_angular_common_locales_az_mjs\"\n\t],\n\t\"./bas.mjs\": [\n\t\t70862,\n\t\t\"node_modules_angular_common_locales_bas_mjs\"\n\t],\n\t\"./be.mjs\": [\n\t\t54307,\n\t\t\"node_modules_angular_common_locales_be_mjs\"\n\t],\n\t\"./bem.mjs\": [\n\t\t75722,\n\t\t\"node_modules_angular_common_locales_bem_mjs\"\n\t],\n\t\"./bez.mjs\": [\n\t\t46400,\n\t\t\"node_modules_angular_common_locales_bez_mjs\"\n\t],\n\t\"./bg.mjs\": [\n\t\t12917,\n\t\t\"node_modules_angular_common_locales_bg_mjs\"\n\t],\n\t\"./bm.mjs\": [\n\t\t33469,\n\t\t\"node_modules_angular_common_locales_bm_mjs\"\n\t],\n\t\"./bn-IN.mjs\": [\n\t\t29500,\n\t\t\"node_modules_angular_common_locales_bn-IN_mjs\"\n\t],\n\t\"./bn.mjs\": [\n\t\t45141,\n\t\t\"node_modules_angular_common_locales_bn_mjs\"\n\t],\n\t\"./bo-IN.mjs\": [\n\t\t84283,\n\t\t\"node_modules_angular_common_locales_bo-IN_mjs\"\n\t],\n\t\"./bo.mjs\": [\n\t\t52739,\n\t\t\"node_modules_angular_common_locales_bo_mjs\"\n\t],\n\t\"./br.mjs\": [\n\t\t95882,\n\t\t\"node_modules_angular_common_locales_br_mjs\"\n\t],\n\t\"./brx.mjs\": [\n\t\t7257,\n\t\t\"node_modules_angular_common_locales_brx_mjs\"\n\t],\n\t\"./bs-Cyrl.mjs\": [\n\t\t78556,\n\t\t\"node_modules_angular_common_locales_bs-Cyrl_mjs\"\n\t],\n\t\"./bs-Latn.mjs\": [\n\t\t26631,\n\t\t\"node_modules_angular_common_locales_bs-Latn_mjs\"\n\t],\n\t\"./bs.mjs\": [\n\t\t44095,\n\t\t\"node_modules_angular_common_locales_bs_mjs\"\n\t],\n\t\"./ca-AD.mjs\": [\n\t\t88810,\n\t\t\"node_modules_angular_common_locales_ca-AD_mjs\"\n\t],\n\t\"./ca-ES-VALENCIA.mjs\": [\n\t\t29794,\n\t\t\"node_modules_angular_common_locales_ca-ES-VALENCIA_mjs\"\n\t],\n\t\"./ca-FR.mjs\": [\n\t\t96609,\n\t\t\"node_modules_angular_common_locales_ca-FR_mjs\"\n\t],\n\t\"./ca-IT.mjs\": [\n\t\t55527,\n\t\t\"node_modules_angular_common_locales_ca-IT_mjs\"\n\t],\n\t\"./ca.mjs\": [\n\t\t69985,\n\t\t\"node_modules_angular_common_locales_ca_mjs\"\n\t],\n\t\"./ccp-IN.mjs\": [\n\t\t49769,\n\t\t\"node_modules_angular_common_locales_ccp-IN_mjs\"\n\t],\n\t\"./ccp.mjs\": [\n\t\t89233,\n\t\t\"node_modules_angular_common_locales_ccp_mjs\"\n\t],\n\t\"./ce.mjs\": [\n\t\t9948,\n\t\t\"node_modules_angular_common_locales_ce_mjs\"\n\t],\n\t\"./ceb.mjs\": [\n\t\t88557,\n\t\t\"node_modules_angular_common_locales_ceb_mjs\"\n\t],\n\t\"./cgg.mjs\": [\n\t\t56733,\n\t\t\"node_modules_angular_common_locales_cgg_mjs\"\n\t],\n\t\"./chr.mjs\": [\n\t\t99153,\n\t\t\"node_modules_angular_common_locales_chr_mjs\"\n\t],\n\t\"./ckb-IR.mjs\": [\n\t\t94199,\n\t\t\"node_modules_angular_common_locales_ckb-IR_mjs\"\n\t],\n\t\"./ckb.mjs\": [\n\t\t97734,\n\t\t\"node_modules_angular_common_locales_ckb_mjs\"\n\t],\n\t\"./cs.mjs\": [\n\t\t1121,\n\t\t\"node_modules_angular_common_locales_cs_mjs\"\n\t],\n\t\"./cy.mjs\": [\n\t\t34100,\n\t\t\"node_modules_angular_common_locales_cy_mjs\"\n\t],\n\t\"./da-GL.mjs\": [\n\t\t93995,\n\t\t\"node_modules_angular_common_locales_da-GL_mjs\"\n\t],\n\t\"./da.mjs\": [\n\t\t81857,\n\t\t\"node_modules_angular_common_locales_da_mjs\"\n\t],\n\t\"./dav.mjs\": [\n\t\t90440,\n\t\t\"node_modules_angular_common_locales_dav_mjs\"\n\t],\n\t\"./de-AT.mjs\": [\n\t\t53211,\n\t\t\"node_modules_angular_common_locales_de-AT_mjs\"\n\t],\n\t\"./de-BE.mjs\": [\n\t\t33920,\n\t\t\"node_modules_angular_common_locales_de-BE_mjs\"\n\t],\n\t\"./de-CH.mjs\": [\n\t\t52110,\n\t\t\"node_modules_angular_common_locales_de-CH_mjs\"\n\t],\n\t\"./de-IT.mjs\": [\n\t\t76562,\n\t\t\"node_modules_angular_common_locales_de-IT_mjs\"\n\t],\n\t\"./de-LI.mjs\": [\n\t\t19775,\n\t\t\"node_modules_angular_common_locales_de-LI_mjs\"\n\t],\n\t\"./de-LU.mjs\": [\n\t\t49653,\n\t\t\"node_modules_angular_common_locales_de-LU_mjs\"\n\t],\n\t\"./de.mjs\": [\n\t\t48855,\n\t\t\"node_modules_angular_common_locales_de_mjs\"\n\t],\n\t\"./dje.mjs\": [\n\t\t96534,\n\t\t\"node_modules_angular_common_locales_dje_mjs\"\n\t],\n\t\"./doi.mjs\": [\n\t\t64449,\n\t\t\"node_modules_angular_common_locales_doi_mjs\"\n\t],\n\t\"./dsb.mjs\": [\n\t\t26606,\n\t\t\"node_modules_angular_common_locales_dsb_mjs\"\n\t],\n\t\"./dua.mjs\": [\n\t\t53607,\n\t\t\"node_modules_angular_common_locales_dua_mjs\"\n\t],\n\t\"./dyo.mjs\": [\n\t\t17911,\n\t\t\"node_modules_angular_common_locales_dyo_mjs\"\n\t],\n\t\"./dz.mjs\": [\n\t\t72670,\n\t\t\"node_modules_angular_common_locales_dz_mjs\"\n\t],\n\t\"./ebu.mjs\": [\n\t\t84486,\n\t\t\"node_modules_angular_common_locales_ebu_mjs\"\n\t],\n\t\"./ee-TG.mjs\": [\n\t\t3287,\n\t\t\"node_modules_angular_common_locales_ee-TG_mjs\"\n\t],\n\t\"./ee.mjs\": [\n\t\t36635,\n\t\t\"node_modules_angular_common_locales_ee_mjs\"\n\t],\n\t\"./el-CY.mjs\": [\n\t\t2810,\n\t\t\"node_modules_angular_common_locales_el-CY_mjs\"\n\t],\n\t\"./el.mjs\": [\n\t\t33402,\n\t\t\"node_modules_angular_common_locales_el_mjs\"\n\t],\n\t\"./en-001.mjs\": [\n\t\t46451,\n\t\t\"node_modules_angular_common_locales_en-001_mjs\"\n\t],\n\t\"./en-150.mjs\": [\n\t\t58599,\n\t\t\"node_modules_angular_common_locales_en-150_mjs\"\n\t],\n\t\"./en-AE.mjs\": [\n\t\t40191,\n\t\t\"node_modules_angular_common_locales_en-AE_mjs\"\n\t],\n\t\"./en-AG.mjs\": [\n\t\t9876,\n\t\t\"node_modules_angular_common_locales_en-AG_mjs\"\n\t],\n\t\"./en-AI.mjs\": [\n\t\t4636,\n\t\t\"node_modules_angular_common_locales_en-AI_mjs\"\n\t],\n\t\"./en-AS.mjs\": [\n\t\t9101,\n\t\t\"node_modules_angular_common_locales_en-AS_mjs\"\n\t],\n\t\"./en-AT.mjs\": [\n\t\t89291,\n\t\t\"node_modules_angular_common_locales_en-AT_mjs\"\n\t],\n\t\"./en-AU.mjs\": [\n\t\t69917,\n\t\t\"node_modules_angular_common_locales_en-AU_mjs\"\n\t],\n\t\"./en-BB.mjs\": [\n\t\t70922,\n\t\t\"node_modules_angular_common_locales_en-BB_mjs\"\n\t],\n\t\"./en-BE.mjs\": [\n\t\t99668,\n\t\t\"node_modules_angular_common_locales_en-BE_mjs\"\n\t],\n\t\"./en-BI.mjs\": [\n\t\t92412,\n\t\t\"node_modules_angular_common_locales_en-BI_mjs\"\n\t],\n\t\"./en-BM.mjs\": [\n\t\t79192,\n\t\t\"node_modules_angular_common_locales_en-BM_mjs\"\n\t],\n\t\"./en-BS.mjs\": [\n\t\t20946,\n\t\t\"node_modules_angular_common_locales_en-BS_mjs\"\n\t],\n\t\"./en-BW.mjs\": [\n\t\t76706,\n\t\t\"node_modules_angular_common_locales_en-BW_mjs\"\n\t],\n\t\"./en-BZ.mjs\": [\n\t\t87770,\n\t\t\"node_modules_angular_common_locales_en-BZ_mjs\"\n\t],\n\t\"./en-CA.mjs\": [\n\t\t18386,\n\t\t\"node_modules_angular_common_locales_en-CA_mjs\"\n\t],\n\t\"./en-CC.mjs\": [\n\t\t72310,\n\t\t\"node_modules_angular_common_locales_en-CC_mjs\"\n\t],\n\t\"./en-CH.mjs\": [\n\t\t20034,\n\t\t\"node_modules_angular_common_locales_en-CH_mjs\"\n\t],\n\t\"./en-CK.mjs\": [\n\t\t75645,\n\t\t\"node_modules_angular_common_locales_en-CK_mjs\"\n\t],\n\t\"./en-CM.mjs\": [\n\t\t2171,\n\t\t\"node_modules_angular_common_locales_en-CM_mjs\"\n\t],\n\t\"./en-CX.mjs\": [\n\t\t14732,\n\t\t\"node_modules_angular_common_locales_en-CX_mjs\"\n\t],\n\t\"./en-CY.mjs\": [\n\t\t23727,\n\t\t\"node_modules_angular_common_locales_en-CY_mjs\"\n\t],\n\t\"./en-DE.mjs\": [\n\t\t52320,\n\t\t\"node_modules_angular_common_locales_en-DE_mjs\"\n\t],\n\t\"./en-DG.mjs\": [\n\t\t59331,\n\t\t\"node_modules_angular_common_locales_en-DG_mjs\"\n\t],\n\t\"./en-DK.mjs\": [\n\t\t80434,\n\t\t\"node_modules_angular_common_locales_en-DK_mjs\"\n\t],\n\t\"./en-DM.mjs\": [\n\t\t54691,\n\t\t\"node_modules_angular_common_locales_en-DM_mjs\"\n\t],\n\t\"./en-ER.mjs\": [\n\t\t98851,\n\t\t\"node_modules_angular_common_locales_en-ER_mjs\"\n\t],\n\t\"./en-FI.mjs\": [\n\t\t70808,\n\t\t\"node_modules_angular_common_locales_en-FI_mjs\"\n\t],\n\t\"./en-FJ.mjs\": [\n\t\t69088,\n\t\t\"node_modules_angular_common_locales_en-FJ_mjs\"\n\t],\n\t\"./en-FK.mjs\": [\n\t\t32394,\n\t\t\"node_modules_angular_common_locales_en-FK_mjs\"\n\t],\n\t\"./en-FM.mjs\": [\n\t\t46133,\n\t\t\"node_modules_angular_common_locales_en-FM_mjs\"\n\t],\n\t\"./en-GB.mjs\": [\n\t\t7881,\n\t\t\"node_modules_angular_common_locales_en-GB_mjs\"\n\t],\n\t\"./en-GD.mjs\": [\n\t\t92841,\n\t\t\"node_modules_angular_common_locales_en-GD_mjs\"\n\t],\n\t\"./en-GG.mjs\": [\n\t\t42421,\n\t\t\"node_modules_angular_common_locales_en-GG_mjs\"\n\t],\n\t\"./en-GH.mjs\": [\n\t\t34952,\n\t\t\"node_modules_angular_common_locales_en-GH_mjs\"\n\t],\n\t\"./en-GI.mjs\": [\n\t\t80459,\n\t\t\"node_modules_angular_common_locales_en-GI_mjs\"\n\t],\n\t\"./en-GM.mjs\": [\n\t\t658,\n\t\t\"node_modules_angular_common_locales_en-GM_mjs\"\n\t],\n\t\"./en-GU.mjs\": [\n\t\t48077,\n\t\t\"node_modules_angular_common_locales_en-GU_mjs\"\n\t],\n\t\"./en-GY.mjs\": [\n\t\t93627,\n\t\t\"node_modules_angular_common_locales_en-GY_mjs\"\n\t],\n\t\"./en-HK.mjs\": [\n\t\t36797,\n\t\t\"node_modules_angular_common_locales_en-HK_mjs\"\n\t],\n\t\"./en-IE.mjs\": [\n\t\t40320,\n\t\t\"node_modules_angular_common_locales_en-IE_mjs\"\n\t],\n\t\"./en-IL.mjs\": [\n\t\t47751,\n\t\t\"node_modules_angular_common_locales_en-IL_mjs\"\n\t],\n\t\"./en-IM.mjs\": [\n\t\t28134,\n\t\t\"node_modules_angular_common_locales_en-IM_mjs\"\n\t],\n\t\"./en-IN.mjs\": [\n\t\t13869,\n\t\t\"node_modules_angular_common_locales_en-IN_mjs\"\n\t],\n\t\"./en-IO.mjs\": [\n\t\t53710,\n\t\t\"node_modules_angular_common_locales_en-IO_mjs\"\n\t],\n\t\"./en-JE.mjs\": [\n\t\t32916,\n\t\t\"node_modules_angular_common_locales_en-JE_mjs\"\n\t],\n\t\"./en-JM.mjs\": [\n\t\t1758,\n\t\t\"node_modules_angular_common_locales_en-JM_mjs\"\n\t],\n\t\"./en-KE.mjs\": [\n\t\t66889,\n\t\t\"node_modules_angular_common_locales_en-KE_mjs\"\n\t],\n\t\"./en-KI.mjs\": [\n\t\t20213,\n\t\t\"node_modules_angular_common_locales_en-KI_mjs\"\n\t],\n\t\"./en-KN.mjs\": [\n\t\t57394,\n\t\t\"node_modules_angular_common_locales_en-KN_mjs\"\n\t],\n\t\"./en-KY.mjs\": [\n\t\t6235,\n\t\t\"node_modules_angular_common_locales_en-KY_mjs\"\n\t],\n\t\"./en-LC.mjs\": [\n\t\t37305,\n\t\t\"node_modules_angular_common_locales_en-LC_mjs\"\n\t],\n\t\"./en-LR.mjs\": [\n\t\t42948,\n\t\t\"node_modules_angular_common_locales_en-LR_mjs\"\n\t],\n\t\"./en-LS.mjs\": [\n\t\t89058,\n\t\t\"node_modules_angular_common_locales_en-LS_mjs\"\n\t],\n\t\"./en-MG.mjs\": [\n\t\t82651,\n\t\t\"node_modules_angular_common_locales_en-MG_mjs\"\n\t],\n\t\"./en-MH.mjs\": [\n\t\t79795,\n\t\t\"node_modules_angular_common_locales_en-MH_mjs\"\n\t],\n\t\"./en-MO.mjs\": [\n\t\t37730,\n\t\t\"node_modules_angular_common_locales_en-MO_mjs\"\n\t],\n\t\"./en-MP.mjs\": [\n\t\t58298,\n\t\t\"node_modules_angular_common_locales_en-MP_mjs\"\n\t],\n\t\"./en-MS.mjs\": [\n\t\t51915,\n\t\t\"node_modules_angular_common_locales_en-MS_mjs\"\n\t],\n\t\"./en-MT.mjs\": [\n\t\t19051,\n\t\t\"node_modules_angular_common_locales_en-MT_mjs\"\n\t],\n\t\"./en-MU.mjs\": [\n\t\t88652,\n\t\t\"node_modules_angular_common_locales_en-MU_mjs\"\n\t],\n\t\"./en-MW.mjs\": [\n\t\t25472,\n\t\t\"node_modules_angular_common_locales_en-MW_mjs\"\n\t],\n\t\"./en-MY.mjs\": [\n\t\t64392,\n\t\t\"node_modules_angular_common_locales_en-MY_mjs\"\n\t],\n\t\"./en-NA.mjs\": [\n\t\t22695,\n\t\t\"node_modules_angular_common_locales_en-NA_mjs\"\n\t],\n\t\"./en-NF.mjs\": [\n\t\t88162,\n\t\t\"node_modules_angular_common_locales_en-NF_mjs\"\n\t],\n\t\"./en-NG.mjs\": [\n\t\t30031,\n\t\t\"node_modules_angular_common_locales_en-NG_mjs\"\n\t],\n\t\"./en-NL.mjs\": [\n\t\t36868,\n\t\t\"node_modules_angular_common_locales_en-NL_mjs\"\n\t],\n\t\"./en-NR.mjs\": [\n\t\t81558,\n\t\t\"node_modules_angular_common_locales_en-NR_mjs\"\n\t],\n\t\"./en-NU.mjs\": [\n\t\t42375,\n\t\t\"node_modules_angular_common_locales_en-NU_mjs\"\n\t],\n\t\"./en-NZ.mjs\": [\n\t\t95708,\n\t\t\"node_modules_angular_common_locales_en-NZ_mjs\"\n\t],\n\t\"./en-PG.mjs\": [\n\t\t40350,\n\t\t\"node_modules_angular_common_locales_en-PG_mjs\"\n\t],\n\t\"./en-PH.mjs\": [\n\t\t33712,\n\t\t\"node_modules_angular_common_locales_en-PH_mjs\"\n\t],\n\t\"./en-PK.mjs\": [\n\t\t93919,\n\t\t\"node_modules_angular_common_locales_en-PK_mjs\"\n\t],\n\t\"./en-PN.mjs\": [\n\t\t33164,\n\t\t\"node_modules_angular_common_locales_en-PN_mjs\"\n\t],\n\t\"./en-PR.mjs\": [\n\t\t78849,\n\t\t\"node_modules_angular_common_locales_en-PR_mjs\"\n\t],\n\t\"./en-PW.mjs\": [\n\t\t10613,\n\t\t\"node_modules_angular_common_locales_en-PW_mjs\"\n\t],\n\t\"./en-RW.mjs\": [\n\t\t51590,\n\t\t\"node_modules_angular_common_locales_en-RW_mjs\"\n\t],\n\t\"./en-SB.mjs\": [\n\t\t15985,\n\t\t\"node_modules_angular_common_locales_en-SB_mjs\"\n\t],\n\t\"./en-SC.mjs\": [\n\t\t19710,\n\t\t\"node_modules_angular_common_locales_en-SC_mjs\"\n\t],\n\t\"./en-SD.mjs\": [\n\t\t89333,\n\t\t\"node_modules_angular_common_locales_en-SD_mjs\"\n\t],\n\t\"./en-SE.mjs\": [\n\t\t47976,\n\t\t\"node_modules_angular_common_locales_en-SE_mjs\"\n\t],\n\t\"./en-SG.mjs\": [\n\t\t39912,\n\t\t\"node_modules_angular_common_locales_en-SG_mjs\"\n\t],\n\t\"./en-SH.mjs\": [\n\t\t35974,\n\t\t\"node_modules_angular_common_locales_en-SH_mjs\"\n\t],\n\t\"./en-SI.mjs\": [\n\t\t76152,\n\t\t\"node_modules_angular_common_locales_en-SI_mjs\"\n\t],\n\t\"./en-SL.mjs\": [\n\t\t25619,\n\t\t\"node_modules_angular_common_locales_en-SL_mjs\"\n\t],\n\t\"./en-SS.mjs\": [\n\t\t6604,\n\t\t\"node_modules_angular_common_locales_en-SS_mjs\"\n\t],\n\t\"./en-SX.mjs\": [\n\t\t57192,\n\t\t\"node_modules_angular_common_locales_en-SX_mjs\"\n\t],\n\t\"./en-SZ.mjs\": [\n\t\t5509,\n\t\t\"node_modules_angular_common_locales_en-SZ_mjs\"\n\t],\n\t\"./en-TC.mjs\": [\n\t\t66009,\n\t\t\"node_modules_angular_common_locales_en-TC_mjs\"\n\t],\n\t\"./en-TK.mjs\": [\n\t\t70381,\n\t\t\"node_modules_angular_common_locales_en-TK_mjs\"\n\t],\n\t\"./en-TO.mjs\": [\n\t\t65680,\n\t\t\"node_modules_angular_common_locales_en-TO_mjs\"\n\t],\n\t\"./en-TT.mjs\": [\n\t\t83074,\n\t\t\"node_modules_angular_common_locales_en-TT_mjs\"\n\t],\n\t\"./en-TV.mjs\": [\n\t\t34651,\n\t\t\"node_modules_angular_common_locales_en-TV_mjs\"\n\t],\n\t\"./en-TZ.mjs\": [\n\t\t54505,\n\t\t\"node_modules_angular_common_locales_en-TZ_mjs\"\n\t],\n\t\"./en-UG.mjs\": [\n\t\t78237,\n\t\t\"node_modules_angular_common_locales_en-UG_mjs\"\n\t],\n\t\"./en-UM.mjs\": [\n\t\t25153,\n\t\t\"node_modules_angular_common_locales_en-UM_mjs\"\n\t],\n\t\"./en-US-POSIX.mjs\": [\n\t\t7117,\n\t\t\"node_modules_angular_common_locales_en-US-POSIX_mjs\"\n\t],\n\t\"./en-VC.mjs\": [\n\t\t89082,\n\t\t\"node_modules_angular_common_locales_en-VC_mjs\"\n\t],\n\t\"./en-VG.mjs\": [\n\t\t49862,\n\t\t\"node_modules_angular_common_locales_en-VG_mjs\"\n\t],\n\t\"./en-VI.mjs\": [\n\t\t20096,\n\t\t\"node_modules_angular_common_locales_en-VI_mjs\"\n\t],\n\t\"./en-VU.mjs\": [\n\t\t32574,\n\t\t\"node_modules_angular_common_locales_en-VU_mjs\"\n\t],\n\t\"./en-WS.mjs\": [\n\t\t75597,\n\t\t\"node_modules_angular_common_locales_en-WS_mjs\"\n\t],\n\t\"./en-ZA.mjs\": [\n\t\t23575,\n\t\t\"node_modules_angular_common_locales_en-ZA_mjs\"\n\t],\n\t\"./en-ZM.mjs\": [\n\t\t14759,\n\t\t\"node_modules_angular_common_locales_en-ZM_mjs\"\n\t],\n\t\"./en-ZW.mjs\": [\n\t\t16612,\n\t\t\"node_modules_angular_common_locales_en-ZW_mjs\"\n\t],\n\t\"./en.mjs\": [\n\t\t49137,\n\t\t\"node_modules_angular_common_locales_en_mjs\"\n\t],\n\t\"./eo.mjs\": [\n\t\t26499,\n\t\t\"node_modules_angular_common_locales_eo_mjs\"\n\t],\n\t\"./es-419.mjs\": [\n\t\t45242,\n\t\t\"node_modules_angular_common_locales_es-419_mjs\"\n\t],\n\t\"./es-AR.mjs\": [\n\t\t50384,\n\t\t\"node_modules_angular_common_locales_es-AR_mjs\"\n\t],\n\t\"./es-BO.mjs\": [\n\t\t14746,\n\t\t\"node_modules_angular_common_locales_es-BO_mjs\"\n\t],\n\t\"./es-BR.mjs\": [\n\t\t53006,\n\t\t\"node_modules_angular_common_locales_es-BR_mjs\"\n\t],\n\t\"./es-BZ.mjs\": [\n\t\t44845,\n\t\t\"node_modules_angular_common_locales_es-BZ_mjs\"\n\t],\n\t\"./es-CL.mjs\": [\n\t\t57391,\n\t\t\"node_modules_angular_common_locales_es-CL_mjs\"\n\t],\n\t\"./es-CO.mjs\": [\n\t\t86802,\n\t\t\"node_modules_angular_common_locales_es-CO_mjs\"\n\t],\n\t\"./es-CR.mjs\": [\n\t\t6480,\n\t\t\"node_modules_angular_common_locales_es-CR_mjs\"\n\t],\n\t\"./es-CU.mjs\": [\n\t\t94688,\n\t\t\"node_modules_angular_common_locales_es-CU_mjs\"\n\t],\n\t\"./es-DO.mjs\": [\n\t\t89101,\n\t\t\"node_modules_angular_common_locales_es-DO_mjs\"\n\t],\n\t\"./es-EA.mjs\": [\n\t\t53121,\n\t\t\"node_modules_angular_common_locales_es-EA_mjs\"\n\t],\n\t\"./es-EC.mjs\": [\n\t\t12818,\n\t\t\"node_modules_angular_common_locales_es-EC_mjs\"\n\t],\n\t\"./es-GQ.mjs\": [\n\t\t47338,\n\t\t\"node_modules_angular_common_locales_es-GQ_mjs\"\n\t],\n\t\"./es-GT.mjs\": [\n\t\t78729,\n\t\t\"node_modules_angular_common_locales_es-GT_mjs\"\n\t],\n\t\"./es-HN.mjs\": [\n\t\t44590,\n\t\t\"node_modules_angular_common_locales_es-HN_mjs\"\n\t],\n\t\"./es-IC.mjs\": [\n\t\t74214,\n\t\t\"node_modules_angular_common_locales_es-IC_mjs\"\n\t],\n\t\"./es-MX.mjs\": [\n\t\t29554,\n\t\t\"node_modules_angular_common_locales_es-MX_mjs\"\n\t],\n\t\"./es-NI.mjs\": [\n\t\t69857,\n\t\t\"node_modules_angular_common_locales_es-NI_mjs\"\n\t],\n\t\"./es-PA.mjs\": [\n\t\t26722,\n\t\t\"node_modules_angular_common_locales_es-PA_mjs\"\n\t],\n\t\"./es-PE.mjs\": [\n\t\t34280,\n\t\t\"node_modules_angular_common_locales_es-PE_mjs\"\n\t],\n\t\"./es-PH.mjs\": [\n\t\t65949,\n\t\t\"node_modules_angular_common_locales_es-PH_mjs\"\n\t],\n\t\"./es-PR.mjs\": [\n\t\t9777,\n\t\t\"node_modules_angular_common_locales_es-PR_mjs\"\n\t],\n\t\"./es-PY.mjs\": [\n\t\t1506,\n\t\t\"node_modules_angular_common_locales_es-PY_mjs\"\n\t],\n\t\"./es-SV.mjs\": [\n\t\t74707,\n\t\t\"node_modules_angular_common_locales_es-SV_mjs\"\n\t],\n\t\"./es-US.mjs\": [\n\t\t12080,\n\t\t\"node_modules_angular_common_locales_es-US_mjs\"\n\t],\n\t\"./es-UY.mjs\": [\n\t\t64534,\n\t\t\"node_modules_angular_common_locales_es-UY_mjs\"\n\t],\n\t\"./es-VE.mjs\": [\n\t\t41047,\n\t\t\"node_modules_angular_common_locales_es-VE_mjs\"\n\t],\n\t\"./es.mjs\": [\n\t\t92403,\n\t\t\"node_modules_angular_common_locales_es_mjs\"\n\t],\n\t\"./et.mjs\": [\n\t\t33055,\n\t\t\"node_modules_angular_common_locales_et_mjs\"\n\t],\n\t\"./eu.mjs\": [\n\t\t39715,\n\t\t\"node_modules_angular_common_locales_eu_mjs\"\n\t],\n\t\"./ewo.mjs\": [\n\t\t13096,\n\t\t\"node_modules_angular_common_locales_ewo_mjs\"\n\t],\n\t\"./extra/af-NA.mjs\": [\n\t\t8004,\n\t\t\"node_modules_angular_common_locales_extra_af-NA_mjs\"\n\t],\n\t\"./extra/af.mjs\": [\n\t\t12979,\n\t\t\"node_modules_angular_common_locales_extra_af_mjs\"\n\t],\n\t\"./extra/agq.mjs\": [\n\t\t59972,\n\t\t\"node_modules_angular_common_locales_extra_agq_mjs\"\n\t],\n\t\"./extra/ak.mjs\": [\n\t\t91962,\n\t\t\"node_modules_angular_common_locales_extra_ak_mjs\"\n\t],\n\t\"./extra/am.mjs\": [\n\t\t91372,\n\t\t\"node_modules_angular_common_locales_extra_am_mjs\"\n\t],\n\t\"./extra/ar-AE.mjs\": [\n\t\t45397,\n\t\t\"node_modules_angular_common_locales_extra_ar-AE_mjs\"\n\t],\n\t\"./extra/ar-BH.mjs\": [\n\t\t93896,\n\t\t\"node_modules_angular_common_locales_extra_ar-BH_mjs\"\n\t],\n\t\"./extra/ar-DJ.mjs\": [\n\t\t44872,\n\t\t\"node_modules_angular_common_locales_extra_ar-DJ_mjs\"\n\t],\n\t\"./extra/ar-DZ.mjs\": [\n\t\t88141,\n\t\t\"node_modules_angular_common_locales_extra_ar-DZ_mjs\"\n\t],\n\t\"./extra/ar-EG.mjs\": [\n\t\t11907,\n\t\t\"node_modules_angular_common_locales_extra_ar-EG_mjs\"\n\t],\n\t\"./extra/ar-EH.mjs\": [\n\t\t15880,\n\t\t\"node_modules_angular_common_locales_extra_ar-EH_mjs\"\n\t],\n\t\"./extra/ar-ER.mjs\": [\n\t\t35861,\n\t\t\"node_modules_angular_common_locales_extra_ar-ER_mjs\"\n\t],\n\t\"./extra/ar-IL.mjs\": [\n\t\t30574,\n\t\t\"node_modules_angular_common_locales_extra_ar-IL_mjs\"\n\t],\n\t\"./extra/ar-IQ.mjs\": [\n\t\t3308,\n\t\t\"node_modules_angular_common_locales_extra_ar-IQ_mjs\"\n\t],\n\t\"./extra/ar-JO.mjs\": [\n\t\t68425,\n\t\t\"node_modules_angular_common_locales_extra_ar-JO_mjs\"\n\t],\n\t\"./extra/ar-KM.mjs\": [\n\t\t64481,\n\t\t\"node_modules_angular_common_locales_extra_ar-KM_mjs\"\n\t],\n\t\"./extra/ar-KW.mjs\": [\n\t\t70576,\n\t\t\"node_modules_angular_common_locales_extra_ar-KW_mjs\"\n\t],\n\t\"./extra/ar-LB.mjs\": [\n\t\t57113,\n\t\t\"node_modules_angular_common_locales_extra_ar-LB_mjs\"\n\t],\n\t\"./extra/ar-LY.mjs\": [\n\t\t46488,\n\t\t\"node_modules_angular_common_locales_extra_ar-LY_mjs\"\n\t],\n\t\"./extra/ar-MA.mjs\": [\n\t\t73613,\n\t\t\"node_modules_angular_common_locales_extra_ar-MA_mjs\"\n\t],\n\t\"./extra/ar-MR.mjs\": [\n\t\t99479,\n\t\t\"node_modules_angular_common_locales_extra_ar-MR_mjs\"\n\t],\n\t\"./extra/ar-OM.mjs\": [\n\t\t1740,\n\t\t\"node_modules_angular_common_locales_extra_ar-OM_mjs\"\n\t],\n\t\"./extra/ar-PS.mjs\": [\n\t\t90458,\n\t\t\"node_modules_angular_common_locales_extra_ar-PS_mjs\"\n\t],\n\t\"./extra/ar-QA.mjs\": [\n\t\t73614,\n\t\t\"node_modules_angular_common_locales_extra_ar-QA_mjs\"\n\t],\n\t\"./extra/ar-SA.mjs\": [\n\t\t52226,\n\t\t\"node_modules_angular_common_locales_extra_ar-SA_mjs\"\n\t],\n\t\"./extra/ar-SD.mjs\": [\n\t\t51421,\n\t\t\"node_modules_angular_common_locales_extra_ar-SD_mjs\"\n\t],\n\t\"./extra/ar-SO.mjs\": [\n\t\t7667,\n\t\t\"node_modules_angular_common_locales_extra_ar-SO_mjs\"\n\t],\n\t\"./extra/ar-SS.mjs\": [\n\t\t63404,\n\t\t\"node_modules_angular_common_locales_extra_ar-SS_mjs\"\n\t],\n\t\"./extra/ar-SY.mjs\": [\n\t\t92154,\n\t\t\"node_modules_angular_common_locales_extra_ar-SY_mjs\"\n\t],\n\t\"./extra/ar-TD.mjs\": [\n\t\t22320,\n\t\t\"node_modules_angular_common_locales_extra_ar-TD_mjs\"\n\t],\n\t\"./extra/ar-TN.mjs\": [\n\t\t29764,\n\t\t\"node_modules_angular_common_locales_extra_ar-TN_mjs\"\n\t],\n\t\"./extra/ar-YE.mjs\": [\n\t\t26645,\n\t\t\"node_modules_angular_common_locales_extra_ar-YE_mjs\"\n\t],\n\t\"./extra/ar.mjs\": [\n\t\t12005,\n\t\t\"node_modules_angular_common_locales_extra_ar_mjs\"\n\t],\n\t\"./extra/as.mjs\": [\n\t\t36213,\n\t\t\"node_modules_angular_common_locales_extra_as_mjs\"\n\t],\n\t\"./extra/asa.mjs\": [\n\t\t60560,\n\t\t\"node_modules_angular_common_locales_extra_asa_mjs\"\n\t],\n\t\"./extra/ast.mjs\": [\n\t\t7654,\n\t\t\"node_modules_angular_common_locales_extra_ast_mjs\"\n\t],\n\t\"./extra/az-Cyrl.mjs\": [\n\t\t19117,\n\t\t\"node_modules_angular_common_locales_extra_az-Cyrl_mjs\"\n\t],\n\t\"./extra/az-Latn.mjs\": [\n\t\t84415,\n\t\t\"node_modules_angular_common_locales_extra_az-Latn_mjs\"\n\t],\n\t\"./extra/az.mjs\": [\n\t\t59897,\n\t\t\"node_modules_angular_common_locales_extra_az_mjs\"\n\t],\n\t\"./extra/bas.mjs\": [\n\t\t8184,\n\t\t\"node_modules_angular_common_locales_extra_bas_mjs\"\n\t],\n\t\"./extra/be.mjs\": [\n\t\t23358,\n\t\t\"node_modules_angular_common_locales_extra_be_mjs\"\n\t],\n\t\"./extra/bem.mjs\": [\n\t\t7531,\n\t\t\"node_modules_angular_common_locales_extra_bem_mjs\"\n\t],\n\t\"./extra/bez.mjs\": [\n\t\t73585,\n\t\t\"node_modules_angular_common_locales_extra_bez_mjs\"\n\t],\n\t\"./extra/bg.mjs\": [\n\t\t2526,\n\t\t\"node_modules_angular_common_locales_extra_bg_mjs\"\n\t],\n\t\"./extra/bm.mjs\": [\n\t\t80129,\n\t\t\"node_modules_angular_common_locales_extra_bm_mjs\"\n\t],\n\t\"./extra/bn-IN.mjs\": [\n\t\t38778,\n\t\t\"node_modules_angular_common_locales_extra_bn-IN_mjs\"\n\t],\n\t\"./extra/bn.mjs\": [\n\t\t60551,\n\t\t\"node_modules_angular_common_locales_extra_bn_mjs\"\n\t],\n\t\"./extra/bo-IN.mjs\": [\n\t\t16356,\n\t\t\"node_modules_angular_common_locales_extra_bo-IN_mjs\"\n\t],\n\t\"./extra/bo.mjs\": [\n\t\t54598,\n\t\t\"node_modules_angular_common_locales_extra_bo_mjs\"\n\t],\n\t\"./extra/br.mjs\": [\n\t\t54081,\n\t\t\"node_modules_angular_common_locales_extra_br_mjs\"\n\t],\n\t\"./extra/brx.mjs\": [\n\t\t52027,\n\t\t\"node_modules_angular_common_locales_extra_brx_mjs\"\n\t],\n\t\"./extra/bs-Cyrl.mjs\": [\n\t\t25576,\n\t\t\"node_modules_angular_common_locales_extra_bs-Cyrl_mjs\"\n\t],\n\t\"./extra/bs-Latn.mjs\": [\n\t\t85532,\n\t\t\"node_modules_angular_common_locales_extra_bs-Latn_mjs\"\n\t],\n\t\"./extra/bs.mjs\": [\n\t\t61274,\n\t\t\"node_modules_angular_common_locales_extra_bs_mjs\"\n\t],\n\t\"./extra/ca-AD.mjs\": [\n\t\t30804,\n\t\t\"node_modules_angular_common_locales_extra_ca-AD_mjs\"\n\t],\n\t\"./extra/ca-ES-VALENCIA.mjs\": [\n\t\t63287,\n\t\t\"node_modules_angular_common_locales_extra_ca-ES-VALENCIA_mjs\"\n\t],\n\t\"./extra/ca-FR.mjs\": [\n\t\t85932,\n\t\t\"node_modules_angular_common_locales_extra_ca-FR_mjs\"\n\t],\n\t\"./extra/ca-IT.mjs\": [\n\t\t49896,\n\t\t\"node_modules_angular_common_locales_extra_ca-IT_mjs\"\n\t],\n\t\"./extra/ca.mjs\": [\n\t\t21894,\n\t\t\"node_modules_angular_common_locales_extra_ca_mjs\"\n\t],\n\t\"./extra/ccp-IN.mjs\": [\n\t\t40314,\n\t\t\"node_modules_angular_common_locales_extra_ccp-IN_mjs\"\n\t],\n\t\"./extra/ccp.mjs\": [\n\t\t10227,\n\t\t\"node_modules_angular_common_locales_extra_ccp_mjs\"\n\t],\n\t\"./extra/ce.mjs\": [\n\t\t87342,\n\t\t\"node_modules_angular_common_locales_extra_ce_mjs\"\n\t],\n\t\"./extra/ceb.mjs\": [\n\t\t32406,\n\t\t\"node_modules_angular_common_locales_extra_ceb_mjs\"\n\t],\n\t\"./extra/cgg.mjs\": [\n\t\t36314,\n\t\t\"node_modules_angular_common_locales_extra_cgg_mjs\"\n\t],\n\t\"./extra/chr.mjs\": [\n\t\t36589,\n\t\t\"node_modules_angular_common_locales_extra_chr_mjs\"\n\t],\n\t\"./extra/ckb-IR.mjs\": [\n\t\t7918,\n\t\t\"node_modules_angular_common_locales_extra_ckb-IR_mjs\"\n\t],\n\t\"./extra/ckb.mjs\": [\n\t\t5623,\n\t\t\"node_modules_angular_common_locales_extra_ckb_mjs\"\n\t],\n\t\"./extra/cs.mjs\": [\n\t\t61598,\n\t\t\"node_modules_angular_common_locales_extra_cs_mjs\"\n\t],\n\t\"./extra/cy.mjs\": [\n\t\t24064,\n\t\t\"node_modules_angular_common_locales_extra_cy_mjs\"\n\t],\n\t\"./extra/da-GL.mjs\": [\n\t\t3162,\n\t\t\"node_modules_angular_common_locales_extra_da-GL_mjs\"\n\t],\n\t\"./extra/da.mjs\": [\n\t\t95105,\n\t\t\"node_modules_angular_common_locales_extra_da_mjs\"\n\t],\n\t\"./extra/dav.mjs\": [\n\t\t89825,\n\t\t\"node_modules_angular_common_locales_extra_dav_mjs\"\n\t],\n\t\"./extra/de-AT.mjs\": [\n\t\t47,\n\t\t\"node_modules_angular_common_locales_extra_de-AT_mjs\"\n\t],\n\t\"./extra/de-BE.mjs\": [\n\t\t89761,\n\t\t\"node_modules_angular_common_locales_extra_de-BE_mjs\"\n\t],\n\t\"./extra/de-CH.mjs\": [\n\t\t48940,\n\t\t\"node_modules_angular_common_locales_extra_de-CH_mjs\"\n\t],\n\t\"./extra/de-IT.mjs\": [\n\t\t37635,\n\t\t\"node_modules_angular_common_locales_extra_de-IT_mjs\"\n\t],\n\t\"./extra/de-LI.mjs\": [\n\t\t33690,\n\t\t\"node_modules_angular_common_locales_extra_de-LI_mjs\"\n\t],\n\t\"./extra/de-LU.mjs\": [\n\t\t34349,\n\t\t\"node_modules_angular_common_locales_extra_de-LU_mjs\"\n\t],\n\t\"./extra/de.mjs\": [\n\t\t7470,\n\t\t\"node_modules_angular_common_locales_extra_de_mjs\"\n\t],\n\t\"./extra/dje.mjs\": [\n\t\t19828,\n\t\t\"node_modules_angular_common_locales_extra_dje_mjs\"\n\t],\n\t\"./extra/doi.mjs\": [\n\t\t91950,\n\t\t\"node_modules_angular_common_locales_extra_doi_mjs\"\n\t],\n\t\"./extra/dsb.mjs\": [\n\t\t84131,\n\t\t\"node_modules_angular_common_locales_extra_dsb_mjs\"\n\t],\n\t\"./extra/dua.mjs\": [\n\t\t36194,\n\t\t\"node_modules_angular_common_locales_extra_dua_mjs\"\n\t],\n\t\"./extra/dyo.mjs\": [\n\t\t35277,\n\t\t\"node_modules_angular_common_locales_extra_dyo_mjs\"\n\t],\n\t\"./extra/dz.mjs\": [\n\t\t77817,\n\t\t\"node_modules_angular_common_locales_extra_dz_mjs\"\n\t],\n\t\"./extra/ebu.mjs\": [\n\t\t79646,\n\t\t\"node_modules_angular_common_locales_extra_ebu_mjs\"\n\t],\n\t\"./extra/ee-TG.mjs\": [\n\t\t21643,\n\t\t\"node_modules_angular_common_locales_extra_ee-TG_mjs\"\n\t],\n\t\"./extra/ee.mjs\": [\n\t\t92203,\n\t\t\"node_modules_angular_common_locales_extra_ee_mjs\"\n\t],\n\t\"./extra/el-CY.mjs\": [\n\t\t66129,\n\t\t\"node_modules_angular_common_locales_extra_el-CY_mjs\"\n\t],\n\t\"./extra/el.mjs\": [\n\t\t19283,\n\t\t\"node_modules_angular_common_locales_extra_el_mjs\"\n\t],\n\t\"./extra/en-001.mjs\": [\n\t\t36275,\n\t\t\"node_modules_angular_common_locales_extra_en-001_mjs\"\n\t],\n\t\"./extra/en-150.mjs\": [\n\t\t72502,\n\t\t\"node_modules_angular_common_locales_extra_en-150_mjs\"\n\t],\n\t\"./extra/en-AE.mjs\": [\n\t\t88730,\n\t\t\"node_modules_angular_common_locales_extra_en-AE_mjs\"\n\t],\n\t\"./extra/en-AG.mjs\": [\n\t\t17332,\n\t\t\"node_modules_angular_common_locales_extra_en-AG_mjs\"\n\t],\n\t\"./extra/en-AI.mjs\": [\n\t\t85084,\n\t\t\"node_modules_angular_common_locales_extra_en-AI_mjs\"\n\t],\n\t\"./extra/en-AS.mjs\": [\n\t\t17018,\n\t\t\"node_modules_angular_common_locales_extra_en-AS_mjs\"\n\t],\n\t\"./extra/en-AT.mjs\": [\n\t\t20178,\n\t\t\"node_modules_angular_common_locales_extra_en-AT_mjs\"\n\t],\n\t\"./extra/en-AU.mjs\": [\n\t\t10311,\n\t\t\"node_modules_angular_common_locales_extra_en-AU_mjs\"\n\t],\n\t\"./extra/en-BB.mjs\": [\n\t\t21293,\n\t\t\"node_modules_angular_common_locales_extra_en-BB_mjs\"\n\t],\n\t\"./extra/en-BE.mjs\": [\n\t\t96580,\n\t\t\"node_modules_angular_common_locales_extra_en-BE_mjs\"\n\t],\n\t\"./extra/en-BI.mjs\": [\n\t\t78417,\n\t\t\"node_modules_angular_common_locales_extra_en-BI_mjs\"\n\t],\n\t\"./extra/en-BM.mjs\": [\n\t\t48622,\n\t\t\"node_modules_angular_common_locales_extra_en-BM_mjs\"\n\t],\n\t\"./extra/en-BS.mjs\": [\n\t\t10965,\n\t\t\"node_modules_angular_common_locales_extra_en-BS_mjs\"\n\t],\n\t\"./extra/en-BW.mjs\": [\n\t\t11822,\n\t\t\"node_modules_angular_common_locales_extra_en-BW_mjs\"\n\t],\n\t\"./extra/en-BZ.mjs\": [\n\t\t91650,\n\t\t\"node_modules_angular_common_locales_extra_en-BZ_mjs\"\n\t],\n\t\"./extra/en-CA.mjs\": [\n\t\t38900,\n\t\t\"node_modules_angular_common_locales_extra_en-CA_mjs\"\n\t],\n\t\"./extra/en-CC.mjs\": [\n\t\t75624,\n\t\t\"node_modules_angular_common_locales_extra_en-CC_mjs\"\n\t],\n\t\"./extra/en-CH.mjs\": [\n\t\t73731,\n\t\t\"node_modules_angular_common_locales_extra_en-CH_mjs\"\n\t],\n\t\"./extra/en-CK.mjs\": [\n\t\t56168,\n\t\t\"node_modules_angular_common_locales_extra_en-CK_mjs\"\n\t],\n\t\"./extra/en-CM.mjs\": [\n\t\t50997,\n\t\t\"node_modules_angular_common_locales_extra_en-CM_mjs\"\n\t],\n\t\"./extra/en-CX.mjs\": [\n\t\t68460,\n\t\t\"node_modules_angular_common_locales_extra_en-CX_mjs\"\n\t],\n\t\"./extra/en-CY.mjs\": [\n\t\t73172,\n\t\t\"node_modules_angular_common_locales_extra_en-CY_mjs\"\n\t],\n\t\"./extra/en-DE.mjs\": [\n\t\t13088,\n\t\t\"node_modules_angular_common_locales_extra_en-DE_mjs\"\n\t],\n\t\"./extra/en-DG.mjs\": [\n\t\t63899,\n\t\t\"node_modules_angular_common_locales_extra_en-DG_mjs\"\n\t],\n\t\"./extra/en-DK.mjs\": [\n\t\t26766,\n\t\t\"node_modules_angular_common_locales_extra_en-DK_mjs\"\n\t],\n\t\"./extra/en-DM.mjs\": [\n\t\t32241,\n\t\t\"node_modules_angular_common_locales_extra_en-DM_mjs\"\n\t],\n\t\"./extra/en-ER.mjs\": [\n\t\t34166,\n\t\t\"node_modules_angular_common_locales_extra_en-ER_mjs\"\n\t],\n\t\"./extra/en-FI.mjs\": [\n\t\t83322,\n\t\t\"node_modules_angular_common_locales_extra_en-FI_mjs\"\n\t],\n\t\"./extra/en-FJ.mjs\": [\n\t\t85884,\n\t\t\"node_modules_angular_common_locales_extra_en-FJ_mjs\"\n\t],\n\t\"./extra/en-FK.mjs\": [\n\t\t91911,\n\t\t\"node_modules_angular_common_locales_extra_en-FK_mjs\"\n\t],\n\t\"./extra/en-FM.mjs\": [\n\t\t1016,\n\t\t\"node_modules_angular_common_locales_extra_en-FM_mjs\"\n\t],\n\t\"./extra/en-GB.mjs\": [\n\t\t95343,\n\t\t\"node_modules_angular_common_locales_extra_en-GB_mjs\"\n\t],\n\t\"./extra/en-GD.mjs\": [\n\t\t35119,\n\t\t\"node_modules_angular_common_locales_extra_en-GD_mjs\"\n\t],\n\t\"./extra/en-GG.mjs\": [\n\t\t31782,\n\t\t\"node_modules_angular_common_locales_extra_en-GG_mjs\"\n\t],\n\t\"./extra/en-GH.mjs\": [\n\t\t51431,\n\t\t\"node_modules_angular_common_locales_extra_en-GH_mjs\"\n\t],\n\t\"./extra/en-GI.mjs\": [\n\t\t90290,\n\t\t\"node_modules_angular_common_locales_extra_en-GI_mjs\"\n\t],\n\t\"./extra/en-GM.mjs\": [\n\t\t1298,\n\t\t\"node_modules_angular_common_locales_extra_en-GM_mjs\"\n\t],\n\t\"./extra/en-GU.mjs\": [\n\t\t85830,\n\t\t\"node_modules_angular_common_locales_extra_en-GU_mjs\"\n\t],\n\t\"./extra/en-GY.mjs\": [\n\t\t85298,\n\t\t\"node_modules_angular_common_locales_extra_en-GY_mjs\"\n\t],\n\t\"./extra/en-HK.mjs\": [\n\t\t78017,\n\t\t\"node_modules_angular_common_locales_extra_en-HK_mjs\"\n\t],\n\t\"./extra/en-IE.mjs\": [\n\t\t32598,\n\t\t\"node_modules_angular_common_locales_extra_en-IE_mjs\"\n\t],\n\t\"./extra/en-IL.mjs\": [\n\t\t17262,\n\t\t\"node_modules_angular_common_locales_extra_en-IL_mjs\"\n\t],\n\t\"./extra/en-IM.mjs\": [\n\t\t22336,\n\t\t\"node_modules_angular_common_locales_extra_en-IM_mjs\"\n\t],\n\t\"./extra/en-IN.mjs\": [\n\t\t71512,\n\t\t\"node_modules_angular_common_locales_extra_en-IN_mjs\"\n\t],\n\t\"./extra/en-IO.mjs\": [\n\t\t522,\n\t\t\"node_modules_angular_common_locales_extra_en-IO_mjs\"\n\t],\n\t\"./extra/en-JE.mjs\": [\n\t\t95684,\n\t\t\"node_modules_angular_common_locales_extra_en-JE_mjs\"\n\t],\n\t\"./extra/en-JM.mjs\": [\n\t\t25329,\n\t\t\"node_modules_angular_common_locales_extra_en-JM_mjs\"\n\t],\n\t\"./extra/en-KE.mjs\": [\n\t\t91725,\n\t\t\"node_modules_angular_common_locales_extra_en-KE_mjs\"\n\t],\n\t\"./extra/en-KI.mjs\": [\n\t\t81794,\n\t\t\"node_modules_angular_common_locales_extra_en-KI_mjs\"\n\t],\n\t\"./extra/en-KN.mjs\": [\n\t\t24110,\n\t\t\"node_modules_angular_common_locales_extra_en-KN_mjs\"\n\t],\n\t\"./extra/en-KY.mjs\": [\n\t\t47303,\n\t\t\"node_modules_angular_common_locales_extra_en-KY_mjs\"\n\t],\n\t\"./extra/en-LC.mjs\": [\n\t\t26300,\n\t\t\"node_modules_angular_common_locales_extra_en-LC_mjs\"\n\t],\n\t\"./extra/en-LR.mjs\": [\n\t\t37648,\n\t\t\"node_modules_angular_common_locales_extra_en-LR_mjs\"\n\t],\n\t\"./extra/en-LS.mjs\": [\n\t\t93583,\n\t\t\"node_modules_angular_common_locales_extra_en-LS_mjs\"\n\t],\n\t\"./extra/en-MG.mjs\": [\n\t\t95116,\n\t\t\"node_modules_angular_common_locales_extra_en-MG_mjs\"\n\t],\n\t\"./extra/en-MH.mjs\": [\n\t\t68770,\n\t\t\"node_modules_angular_common_locales_extra_en-MH_mjs\"\n\t],\n\t\"./extra/en-MO.mjs\": [\n\t\t85730,\n\t\t\"node_modules_angular_common_locales_extra_en-MO_mjs\"\n\t],\n\t\"./extra/en-MP.mjs\": [\n\t\t66547,\n\t\t\"node_modules_angular_common_locales_extra_en-MP_mjs\"\n\t],\n\t\"./extra/en-MS.mjs\": [\n\t\t31295,\n\t\t\"node_modules_angular_common_locales_extra_en-MS_mjs\"\n\t],\n\t\"./extra/en-MT.mjs\": [\n\t\t9314,\n\t\t\"node_modules_angular_common_locales_extra_en-MT_mjs\"\n\t],\n\t\"./extra/en-MU.mjs\": [\n\t\t6090,\n\t\t\"node_modules_angular_common_locales_extra_en-MU_mjs\"\n\t],\n\t\"./extra/en-MW.mjs\": [\n\t\t3655,\n\t\t\"node_modules_angular_common_locales_extra_en-MW_mjs\"\n\t],\n\t\"./extra/en-MY.mjs\": [\n\t\t14085,\n\t\t\"node_modules_angular_common_locales_extra_en-MY_mjs\"\n\t],\n\t\"./extra/en-NA.mjs\": [\n\t\t21527,\n\t\t\"node_modules_angular_common_locales_extra_en-NA_mjs\"\n\t],\n\t\"./extra/en-NF.mjs\": [\n\t\t49133,\n\t\t\"node_modules_angular_common_locales_extra_en-NF_mjs\"\n\t],\n\t\"./extra/en-NG.mjs\": [\n\t\t54857,\n\t\t\"node_modules_angular_common_locales_extra_en-NG_mjs\"\n\t],\n\t\"./extra/en-NL.mjs\": [\n\t\t83482,\n\t\t\"node_modules_angular_common_locales_extra_en-NL_mjs\"\n\t],\n\t\"./extra/en-NR.mjs\": [\n\t\t31705,\n\t\t\"node_modules_angular_common_locales_extra_en-NR_mjs\"\n\t],\n\t\"./extra/en-NU.mjs\": [\n\t\t90318,\n\t\t\"node_modules_angular_common_locales_extra_en-NU_mjs\"\n\t],\n\t\"./extra/en-NZ.mjs\": [\n\t\t13078,\n\t\t\"node_modules_angular_common_locales_extra_en-NZ_mjs\"\n\t],\n\t\"./extra/en-PG.mjs\": [\n\t\t13045,\n\t\t\"node_modules_angular_common_locales_extra_en-PG_mjs\"\n\t],\n\t\"./extra/en-PH.mjs\": [\n\t\t78820,\n\t\t\"node_modules_angular_common_locales_extra_en-PH_mjs\"\n\t],\n\t\"./extra/en-PK.mjs\": [\n\t\t70568,\n\t\t\"node_modules_angular_common_locales_extra_en-PK_mjs\"\n\t],\n\t\"./extra/en-PN.mjs\": [\n\t\t16602,\n\t\t\"node_modules_angular_common_locales_extra_en-PN_mjs\"\n\t],\n\t\"./extra/en-PR.mjs\": [\n\t\t33989,\n\t\t\"node_modules_angular_common_locales_extra_en-PR_mjs\"\n\t],\n\t\"./extra/en-PW.mjs\": [\n\t\t80715,\n\t\t\"node_modules_angular_common_locales_extra_en-PW_mjs\"\n\t],\n\t\"./extra/en-RW.mjs\": [\n\t\t39436,\n\t\t\"node_modules_angular_common_locales_extra_en-RW_mjs\"\n\t],\n\t\"./extra/en-SB.mjs\": [\n\t\t16111,\n\t\t\"node_modules_angular_common_locales_extra_en-SB_mjs\"\n\t],\n\t\"./extra/en-SC.mjs\": [\n\t\t15206,\n\t\t\"node_modules_angular_common_locales_extra_en-SC_mjs\"\n\t],\n\t\"./extra/en-SD.mjs\": [\n\t\t48549,\n\t\t\"node_modules_angular_common_locales_extra_en-SD_mjs\"\n\t],\n\t\"./extra/en-SE.mjs\": [\n\t\t66353,\n\t\t\"node_modules_angular_common_locales_extra_en-SE_mjs\"\n\t],\n\t\"./extra/en-SG.mjs\": [\n\t\t52264,\n\t\t\"node_modules_angular_common_locales_extra_en-SG_mjs\"\n\t],\n\t\"./extra/en-SH.mjs\": [\n\t\t52313,\n\t\t\"node_modules_angular_common_locales_extra_en-SH_mjs\"\n\t],\n\t\"./extra/en-SI.mjs\": [\n\t\t87509,\n\t\t\"node_modules_angular_common_locales_extra_en-SI_mjs\"\n\t],\n\t\"./extra/en-SL.mjs\": [\n\t\t23203,\n\t\t\"node_modules_angular_common_locales_extra_en-SL_mjs\"\n\t],\n\t\"./extra/en-SS.mjs\": [\n\t\t26071,\n\t\t\"node_modules_angular_common_locales_extra_en-SS_mjs\"\n\t],\n\t\"./extra/en-SX.mjs\": [\n\t\t21816,\n\t\t\"node_modules_angular_common_locales_extra_en-SX_mjs\"\n\t],\n\t\"./extra/en-SZ.mjs\": [\n\t\t38647,\n\t\t\"node_modules_angular_common_locales_extra_en-SZ_mjs\"\n\t],\n\t\"./extra/en-TC.mjs\": [\n\t\t12691,\n\t\t\"node_modules_angular_common_locales_extra_en-TC_mjs\"\n\t],\n\t\"./extra/en-TK.mjs\": [\n\t\t53403,\n\t\t\"node_modules_angular_common_locales_extra_en-TK_mjs\"\n\t],\n\t\"./extra/en-TO.mjs\": [\n\t\t17770,\n\t\t\"node_modules_angular_common_locales_extra_en-TO_mjs\"\n\t],\n\t\"./extra/en-TT.mjs\": [\n\t\t1164,\n\t\t\"node_modules_angular_common_locales_extra_en-TT_mjs\"\n\t],\n\t\"./extra/en-TV.mjs\": [\n\t\t60088,\n\t\t\"node_modules_angular_common_locales_extra_en-TV_mjs\"\n\t],\n\t\"./extra/en-TZ.mjs\": [\n\t\t21587,\n\t\t\"node_modules_angular_common_locales_extra_en-TZ_mjs\"\n\t],\n\t\"./extra/en-UG.mjs\": [\n\t\t59213,\n\t\t\"node_modules_angular_common_locales_extra_en-UG_mjs\"\n\t],\n\t\"./extra/en-UM.mjs\": [\n\t\t65826,\n\t\t\"node_modules_angular_common_locales_extra_en-UM_mjs\"\n\t],\n\t\"./extra/en-US-POSIX.mjs\": [\n\t\t28573,\n\t\t\"node_modules_angular_common_locales_extra_en-US-POSIX_mjs\"\n\t],\n\t\"./extra/en-VC.mjs\": [\n\t\t18098,\n\t\t\"node_modules_angular_common_locales_extra_en-VC_mjs\"\n\t],\n\t\"./extra/en-VG.mjs\": [\n\t\t56169,\n\t\t\"node_modules_angular_common_locales_extra_en-VG_mjs\"\n\t],\n\t\"./extra/en-VI.mjs\": [\n\t\t46857,\n\t\t\"node_modules_angular_common_locales_extra_en-VI_mjs\"\n\t],\n\t\"./extra/en-VU.mjs\": [\n\t\t66952,\n\t\t\"node_modules_angular_common_locales_extra_en-VU_mjs\"\n\t],\n\t\"./extra/en-WS.mjs\": [\n\t\t20775,\n\t\t\"node_modules_angular_common_locales_extra_en-WS_mjs\"\n\t],\n\t\"./extra/en-ZA.mjs\": [\n\t\t45394,\n\t\t\"node_modules_angular_common_locales_extra_en-ZA_mjs\"\n\t],\n\t\"./extra/en-ZM.mjs\": [\n\t\t17750,\n\t\t\"node_modules_angular_common_locales_extra_en-ZM_mjs\"\n\t],\n\t\"./extra/en-ZW.mjs\": [\n\t\t52955,\n\t\t\"node_modules_angular_common_locales_extra_en-ZW_mjs\"\n\t],\n\t\"./extra/en.mjs\": [\n\t\t82450,\n\t\t\"node_modules_angular_common_locales_extra_en_mjs\"\n\t],\n\t\"./extra/eo.mjs\": [\n\t\t81851,\n\t\t\"node_modules_angular_common_locales_extra_eo_mjs\"\n\t],\n\t\"./extra/es-419.mjs\": [\n\t\t13395,\n\t\t\"node_modules_angular_common_locales_extra_es-419_mjs\"\n\t],\n\t\"./extra/es-AR.mjs\": [\n\t\t29405,\n\t\t\"node_modules_angular_common_locales_extra_es-AR_mjs\"\n\t],\n\t\"./extra/es-BO.mjs\": [\n\t\t48648,\n\t\t\"node_modules_angular_common_locales_extra_es-BO_mjs\"\n\t],\n\t\"./extra/es-BR.mjs\": [\n\t\t20559,\n\t\t\"node_modules_angular_common_locales_extra_es-BR_mjs\"\n\t],\n\t\"./extra/es-BZ.mjs\": [\n\t\t11937,\n\t\t\"node_modules_angular_common_locales_extra_es-BZ_mjs\"\n\t],\n\t\"./extra/es-CL.mjs\": [\n\t\t60227,\n\t\t\"node_modules_angular_common_locales_extra_es-CL_mjs\"\n\t],\n\t\"./extra/es-CO.mjs\": [\n\t\t87908,\n\t\t\"node_modules_angular_common_locales_extra_es-CO_mjs\"\n\t],\n\t\"./extra/es-CR.mjs\": [\n\t\t26198,\n\t\t\"node_modules_angular_common_locales_extra_es-CR_mjs\"\n\t],\n\t\"./extra/es-CU.mjs\": [\n\t\t77567,\n\t\t\"node_modules_angular_common_locales_extra_es-CU_mjs\"\n\t],\n\t\"./extra/es-DO.mjs\": [\n\t\t67033,\n\t\t\"node_modules_angular_common_locales_extra_es-DO_mjs\"\n\t],\n\t\"./extra/es-EA.mjs\": [\n\t\t13531,\n\t\t\"node_modules_angular_common_locales_extra_es-EA_mjs\"\n\t],\n\t\"./extra/es-EC.mjs\": [\n\t\t92095,\n\t\t\"node_modules_angular_common_locales_extra_es-EC_mjs\"\n\t],\n\t\"./extra/es-GQ.mjs\": [\n\t\t94839,\n\t\t\"node_modules_angular_common_locales_extra_es-GQ_mjs\"\n\t],\n\t\"./extra/es-GT.mjs\": [\n\t\t95831,\n\t\t\"node_modules_angular_common_locales_extra_es-GT_mjs\"\n\t],\n\t\"./extra/es-HN.mjs\": [\n\t\t88953,\n\t\t\"node_modules_angular_common_locales_extra_es-HN_mjs\"\n\t],\n\t\"./extra/es-IC.mjs\": [\n\t\t45946,\n\t\t\"node_modules_angular_common_locales_extra_es-IC_mjs\"\n\t],\n\t\"./extra/es-MX.mjs\": [\n\t\t41954,\n\t\t\"node_modules_angular_common_locales_extra_es-MX_mjs\"\n\t],\n\t\"./extra/es-NI.mjs\": [\n\t\t33692,\n\t\t\"node_modules_angular_common_locales_extra_es-NI_mjs\"\n\t],\n\t\"./extra/es-PA.mjs\": [\n\t\t94478,\n\t\t\"node_modules_angular_common_locales_extra_es-PA_mjs\"\n\t],\n\t\"./extra/es-PE.mjs\": [\n\t\t84001,\n\t\t\"node_modules_angular_common_locales_extra_es-PE_mjs\"\n\t],\n\t\"./extra/es-PH.mjs\": [\n\t\t45704,\n\t\t\"node_modules_angular_common_locales_extra_es-PH_mjs\"\n\t],\n\t\"./extra/es-PR.mjs\": [\n\t\t31437,\n\t\t\"node_modules_angular_common_locales_extra_es-PR_mjs\"\n\t],\n\t\"./extra/es-PY.mjs\": [\n\t\t49422,\n\t\t\"node_modules_angular_common_locales_extra_es-PY_mjs\"\n\t],\n\t\"./extra/es-SV.mjs\": [\n\t\t39446,\n\t\t\"node_modules_angular_common_locales_extra_es-SV_mjs\"\n\t],\n\t\"./extra/es-US.mjs\": [\n\t\t7820,\n\t\t\"node_modules_angular_common_locales_extra_es-US_mjs\"\n\t],\n\t\"./extra/es-UY.mjs\": [\n\t\t50871,\n\t\t\"node_modules_angular_common_locales_extra_es-UY_mjs\"\n\t],\n\t\"./extra/es-VE.mjs\": [\n\t\t40046,\n\t\t\"node_modules_angular_common_locales_extra_es-VE_mjs\"\n\t],\n\t\"./extra/es.mjs\": [\n\t\t53835,\n\t\t\"node_modules_angular_common_locales_extra_es_mjs\"\n\t],\n\t\"./extra/et.mjs\": [\n\t\t69731,\n\t\t\"node_modules_angular_common_locales_extra_et_mjs\"\n\t],\n\t\"./extra/eu.mjs\": [\n\t\t71418,\n\t\t\"node_modules_angular_common_locales_extra_eu_mjs\"\n\t],\n\t\"./extra/ewo.mjs\": [\n\t\t3959,\n\t\t\"node_modules_angular_common_locales_extra_ewo_mjs\"\n\t],\n\t\"./extra/fa-AF.mjs\": [\n\t\t17654,\n\t\t\"node_modules_angular_common_locales_extra_fa-AF_mjs\"\n\t],\n\t\"./extra/fa.mjs\": [\n\t\t61574,\n\t\t\"node_modules_angular_common_locales_extra_fa_mjs\"\n\t],\n\t\"./extra/ff-Adlm-BF.mjs\": [\n\t\t77262,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-BF_mjs\"\n\t],\n\t\"./extra/ff-Adlm-CM.mjs\": [\n\t\t54394,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-CM_mjs\"\n\t],\n\t\"./extra/ff-Adlm-GH.mjs\": [\n\t\t57187,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-GH_mjs\"\n\t],\n\t\"./extra/ff-Adlm-GM.mjs\": [\n\t\t96390,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-GM_mjs\"\n\t],\n\t\"./extra/ff-Adlm-GW.mjs\": [\n\t\t53019,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-GW_mjs\"\n\t],\n\t\"./extra/ff-Adlm-LR.mjs\": [\n\t\t38866,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-LR_mjs\"\n\t],\n\t\"./extra/ff-Adlm-MR.mjs\": [\n\t\t73561,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-MR_mjs\"\n\t],\n\t\"./extra/ff-Adlm-NE.mjs\": [\n\t\t33760,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-NE_mjs\"\n\t],\n\t\"./extra/ff-Adlm-NG.mjs\": [\n\t\t8010,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-NG_mjs\"\n\t],\n\t\"./extra/ff-Adlm-SL.mjs\": [\n\t\t12001,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-SL_mjs\"\n\t],\n\t\"./extra/ff-Adlm-SN.mjs\": [\n\t\t5865,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm-SN_mjs\"\n\t],\n\t\"./extra/ff-Adlm.mjs\": [\n\t\t17811,\n\t\t\"node_modules_angular_common_locales_extra_ff-Adlm_mjs\"\n\t],\n\t\"./extra/ff-CM.mjs\": [\n\t\t91360,\n\t\t\"node_modules_angular_common_locales_extra_ff-CM_mjs\"\n\t],\n\t\"./extra/ff-GN.mjs\": [\n\t\t64621,\n\t\t\"node_modules_angular_common_locales_extra_ff-GN_mjs\"\n\t],\n\t\"./extra/ff-Latn-BF.mjs\": [\n\t\t31058,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-BF_mjs\"\n\t],\n\t\"./extra/ff-Latn-CM.mjs\": [\n\t\t49831,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-CM_mjs\"\n\t],\n\t\"./extra/ff-Latn-GH.mjs\": [\n\t\t44898,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-GH_mjs\"\n\t],\n\t\"./extra/ff-Latn-GM.mjs\": [\n\t\t53058,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-GM_mjs\"\n\t],\n\t\"./extra/ff-Latn-GN.mjs\": [\n\t\t76246,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-GN_mjs\"\n\t],\n\t\"./extra/ff-Latn-GW.mjs\": [\n\t\t74401,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-GW_mjs\"\n\t],\n\t\"./extra/ff-Latn-LR.mjs\": [\n\t\t7417,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-LR_mjs\"\n\t],\n\t\"./extra/ff-Latn-MR.mjs\": [\n\t\t91274,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-MR_mjs\"\n\t],\n\t\"./extra/ff-Latn-NE.mjs\": [\n\t\t82094,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-NE_mjs\"\n\t],\n\t\"./extra/ff-Latn-NG.mjs\": [\n\t\t5159,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-NG_mjs\"\n\t],\n\t\"./extra/ff-Latn-SL.mjs\": [\n\t\t89163,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn-SL_mjs\"\n\t],\n\t\"./extra/ff-Latn.mjs\": [\n\t\t50034,\n\t\t\"node_modules_angular_common_locales_extra_ff-Latn_mjs\"\n\t],\n\t\"./extra/ff-MR.mjs\": [\n\t\t80974,\n\t\t\"node_modules_angular_common_locales_extra_ff-MR_mjs\"\n\t],\n\t\"./extra/ff.mjs\": [\n\t\t24749,\n\t\t\"node_modules_angular_common_locales_extra_ff_mjs\"\n\t],\n\t\"./extra/fi.mjs\": [\n\t\t62429,\n\t\t\"node_modules_angular_common_locales_extra_fi_mjs\"\n\t],\n\t\"./extra/fil.mjs\": [\n\t\t1784,\n\t\t\"node_modules_angular_common_locales_extra_fil_mjs\"\n\t],\n\t\"./extra/fo-DK.mjs\": [\n\t\t81103,\n\t\t\"node_modules_angular_common_locales_extra_fo-DK_mjs\"\n\t],\n\t\"./extra/fo.mjs\": [\n\t\t67131,\n\t\t\"node_modules_angular_common_locales_extra_fo_mjs\"\n\t],\n\t\"./extra/fr-BE.mjs\": [\n\t\t88123,\n\t\t\"node_modules_angular_common_locales_extra_fr-BE_mjs\"\n\t],\n\t\"./extra/fr-BF.mjs\": [\n\t\t61437,\n\t\t\"node_modules_angular_common_locales_extra_fr-BF_mjs\"\n\t],\n\t\"./extra/fr-BI.mjs\": [\n\t\t39646,\n\t\t\"node_modules_angular_common_locales_extra_fr-BI_mjs\"\n\t],\n\t\"./extra/fr-BJ.mjs\": [\n\t\t33940,\n\t\t\"node_modules_angular_common_locales_extra_fr-BJ_mjs\"\n\t],\n\t\"./extra/fr-BL.mjs\": [\n\t\t87541,\n\t\t\"node_modules_angular_common_locales_extra_fr-BL_mjs\"\n\t],\n\t\"./extra/fr-CA.mjs\": [\n\t\t40331,\n\t\t\"node_modules_angular_common_locales_extra_fr-CA_mjs\"\n\t],\n\t\"./extra/fr-CD.mjs\": [\n\t\t53598,\n\t\t\"node_modules_angular_common_locales_extra_fr-CD_mjs\"\n\t],\n\t\"./extra/fr-CF.mjs\": [\n\t\t36621,\n\t\t\"node_modules_angular_common_locales_extra_fr-CF_mjs\"\n\t],\n\t\"./extra/fr-CG.mjs\": [\n\t\t40185,\n\t\t\"node_modules_angular_common_locales_extra_fr-CG_mjs\"\n\t],\n\t\"./extra/fr-CH.mjs\": [\n\t\t7369,\n\t\t\"node_modules_angular_common_locales_extra_fr-CH_mjs\"\n\t],\n\t\"./extra/fr-CI.mjs\": [\n\t\t42849,\n\t\t\"node_modules_angular_common_locales_extra_fr-CI_mjs\"\n\t],\n\t\"./extra/fr-CM.mjs\": [\n\t\t24249,\n\t\t\"node_modules_angular_common_locales_extra_fr-CM_mjs\"\n\t],\n\t\"./extra/fr-DJ.mjs\": [\n\t\t18713,\n\t\t\"node_modules_angular_common_locales_extra_fr-DJ_mjs\"\n\t],\n\t\"./extra/fr-DZ.mjs\": [\n\t\t92930,\n\t\t\"node_modules_angular_common_locales_extra_fr-DZ_mjs\"\n\t],\n\t\"./extra/fr-GA.mjs\": [\n\t\t43013,\n\t\t\"node_modules_angular_common_locales_extra_fr-GA_mjs\"\n\t],\n\t\"./extra/fr-GF.mjs\": [\n\t\t38565,\n\t\t\"node_modules_angular_common_locales_extra_fr-GF_mjs\"\n\t],\n\t\"./extra/fr-GN.mjs\": [\n\t\t82941,\n\t\t\"node_modules_angular_common_locales_extra_fr-GN_mjs\"\n\t],\n\t\"./extra/fr-GP.mjs\": [\n\t\t46422,\n\t\t\"node_modules_angular_common_locales_extra_fr-GP_mjs\"\n\t],\n\t\"./extra/fr-GQ.mjs\": [\n\t\t60249,\n\t\t\"node_modules_angular_common_locales_extra_fr-GQ_mjs\"\n\t],\n\t\"./extra/fr-HT.mjs\": [\n\t\t40765,\n\t\t\"node_modules_angular_common_locales_extra_fr-HT_mjs\"\n\t],\n\t\"./extra/fr-KM.mjs\": [\n\t\t98707,\n\t\t\"node_modules_angular_common_locales_extra_fr-KM_mjs\"\n\t],\n\t\"./extra/fr-LU.mjs\": [\n\t\t44604,\n\t\t\"node_modules_angular_common_locales_extra_fr-LU_mjs\"\n\t],\n\t\"./extra/fr-MA.mjs\": [\n\t\t22264,\n\t\t\"node_modules_angular_common_locales_extra_fr-MA_mjs\"\n\t],\n\t\"./extra/fr-MC.mjs\": [\n\t\t47860,\n\t\t\"node_modules_angular_common_locales_extra_fr-MC_mjs\"\n\t],\n\t\"./extra/fr-MF.mjs\": [\n\t\t13325,\n\t\t\"node_modules_angular_common_locales_extra_fr-MF_mjs\"\n\t],\n\t\"./extra/fr-MG.mjs\": [\n\t\t39315,\n\t\t\"node_modules_angular_common_locales_extra_fr-MG_mjs\"\n\t],\n\t\"./extra/fr-ML.mjs\": [\n\t\t34162,\n\t\t\"node_modules_angular_common_locales_extra_fr-ML_mjs\"\n\t],\n\t\"./extra/fr-MQ.mjs\": [\n\t\t26278,\n\t\t\"node_modules_angular_common_locales_extra_fr-MQ_mjs\"\n\t],\n\t\"./extra/fr-MR.mjs\": [\n\t\t12339,\n\t\t\"node_modules_angular_common_locales_extra_fr-MR_mjs\"\n\t],\n\t\"./extra/fr-MU.mjs\": [\n\t\t1602,\n\t\t\"node_modules_angular_common_locales_extra_fr-MU_mjs\"\n\t],\n\t\"./extra/fr-NC.mjs\": [\n\t\t2968,\n\t\t\"node_modules_angular_common_locales_extra_fr-NC_mjs\"\n\t],\n\t\"./extra/fr-NE.mjs\": [\n\t\t65426,\n\t\t\"node_modules_angular_common_locales_extra_fr-NE_mjs\"\n\t],\n\t\"./extra/fr-PF.mjs\": [\n\t\t48858,\n\t\t\"node_modules_angular_common_locales_extra_fr-PF_mjs\"\n\t],\n\t\"./extra/fr-PM.mjs\": [\n\t\t88603,\n\t\t\"node_modules_angular_common_locales_extra_fr-PM_mjs\"\n\t],\n\t\"./extra/fr-RE.mjs\": [\n\t\t91750,\n\t\t\"node_modules_angular_common_locales_extra_fr-RE_mjs\"\n\t],\n\t\"./extra/fr-RW.mjs\": [\n\t\t12387,\n\t\t\"node_modules_angular_common_locales_extra_fr-RW_mjs\"\n\t],\n\t\"./extra/fr-SC.mjs\": [\n\t\t61094,\n\t\t\"node_modules_angular_common_locales_extra_fr-SC_mjs\"\n\t],\n\t\"./extra/fr-SN.mjs\": [\n\t\t92050,\n\t\t\"node_modules_angular_common_locales_extra_fr-SN_mjs\"\n\t],\n\t\"./extra/fr-SY.mjs\": [\n\t\t43566,\n\t\t\"node_modules_angular_common_locales_extra_fr-SY_mjs\"\n\t],\n\t\"./extra/fr-TD.mjs\": [\n\t\t60464,\n\t\t\"node_modules_angular_common_locales_extra_fr-TD_mjs\"\n\t],\n\t\"./extra/fr-TG.mjs\": [\n\t\t96319,\n\t\t\"node_modules_angular_common_locales_extra_fr-TG_mjs\"\n\t],\n\t\"./extra/fr-TN.mjs\": [\n\t\t83809,\n\t\t\"node_modules_angular_common_locales_extra_fr-TN_mjs\"\n\t],\n\t\"./extra/fr-VU.mjs\": [\n\t\t93032,\n\t\t\"node_modules_angular_common_locales_extra_fr-VU_mjs\"\n\t],\n\t\"./extra/fr-WF.mjs\": [\n\t\t50789,\n\t\t\"node_modules_angular_common_locales_extra_fr-WF_mjs\"\n\t],\n\t\"./extra/fr-YT.mjs\": [\n\t\t4386,\n\t\t\"node_modules_angular_common_locales_extra_fr-YT_mjs\"\n\t],\n\t\"./extra/fr.mjs\": [\n\t\t69744,\n\t\t\"node_modules_angular_common_locales_extra_fr_mjs\"\n\t],\n\t\"./extra/fur.mjs\": [\n\t\t15888,\n\t\t\"node_modules_angular_common_locales_extra_fur_mjs\"\n\t],\n\t\"./extra/fy.mjs\": [\n\t\t4376,\n\t\t\"node_modules_angular_common_locales_extra_fy_mjs\"\n\t],\n\t\"./extra/ga-GB.mjs\": [\n\t\t63610,\n\t\t\"node_modules_angular_common_locales_extra_ga-GB_mjs\"\n\t],\n\t\"./extra/ga.mjs\": [\n\t\t54346,\n\t\t\"node_modules_angular_common_locales_extra_ga_mjs\"\n\t],\n\t\"./extra/gd.mjs\": [\n\t\t54803,\n\t\t\"node_modules_angular_common_locales_extra_gd_mjs\"\n\t],\n\t\"./extra/gl.mjs\": [\n\t\t85312,\n\t\t\"node_modules_angular_common_locales_extra_gl_mjs\"\n\t],\n\t\"./extra/gsw-FR.mjs\": [\n\t\t57451,\n\t\t\"node_modules_angular_common_locales_extra_gsw-FR_mjs\"\n\t],\n\t\"./extra/gsw-LI.mjs\": [\n\t\t67849,\n\t\t\"node_modules_angular_common_locales_extra_gsw-LI_mjs\"\n\t],\n\t\"./extra/gsw.mjs\": [\n\t\t41893,\n\t\t\"node_modules_angular_common_locales_extra_gsw_mjs\"\n\t],\n\t\"./extra/gu.mjs\": [\n\t\t20828,\n\t\t\"node_modules_angular_common_locales_extra_gu_mjs\"\n\t],\n\t\"./extra/guz.mjs\": [\n\t\t73942,\n\t\t\"node_modules_angular_common_locales_extra_guz_mjs\"\n\t],\n\t\"./extra/gv.mjs\": [\n\t\t94483,\n\t\t\"node_modules_angular_common_locales_extra_gv_mjs\"\n\t],\n\t\"./extra/ha-GH.mjs\": [\n\t\t48271,\n\t\t\"node_modules_angular_common_locales_extra_ha-GH_mjs\"\n\t],\n\t\"./extra/ha-NE.mjs\": [\n\t\t66589,\n\t\t\"node_modules_angular_common_locales_extra_ha-NE_mjs\"\n\t],\n\t\"./extra/ha.mjs\": [\n\t\t25372,\n\t\t\"node_modules_angular_common_locales_extra_ha_mjs\"\n\t],\n\t\"./extra/haw.mjs\": [\n\t\t15672,\n\t\t\"node_modules_angular_common_locales_extra_haw_mjs\"\n\t],\n\t\"./extra/he.mjs\": [\n\t\t22038,\n\t\t\"node_modules_angular_common_locales_extra_he_mjs\"\n\t],\n\t\"./extra/hi.mjs\": [\n\t\t17965,\n\t\t\"node_modules_angular_common_locales_extra_hi_mjs\"\n\t],\n\t\"./extra/hr-BA.mjs\": [\n\t\t11187,\n\t\t\"node_modules_angular_common_locales_extra_hr-BA_mjs\"\n\t],\n\t\"./extra/hr.mjs\": [\n\t\t57763,\n\t\t\"node_modules_angular_common_locales_extra_hr_mjs\"\n\t],\n\t\"./extra/hsb.mjs\": [\n\t\t56412,\n\t\t\"node_modules_angular_common_locales_extra_hsb_mjs\"\n\t],\n\t\"./extra/hu.mjs\": [\n\t\t45933,\n\t\t\"node_modules_angular_common_locales_extra_hu_mjs\"\n\t],\n\t\"./extra/hy.mjs\": [\n\t\t85142,\n\t\t\"node_modules_angular_common_locales_extra_hy_mjs\"\n\t],\n\t\"./extra/ia.mjs\": [\n\t\t31189,\n\t\t\"node_modules_angular_common_locales_extra_ia_mjs\"\n\t],\n\t\"./extra/id.mjs\": [\n\t\t66929,\n\t\t\"node_modules_angular_common_locales_extra_id_mjs\"\n\t],\n\t\"./extra/ig.mjs\": [\n\t\t28440,\n\t\t\"node_modules_angular_common_locales_extra_ig_mjs\"\n\t],\n\t\"./extra/ii.mjs\": [\n\t\t92647,\n\t\t\"node_modules_angular_common_locales_extra_ii_mjs\"\n\t],\n\t\"./extra/is.mjs\": [\n\t\t92346,\n\t\t\"node_modules_angular_common_locales_extra_is_mjs\"\n\t],\n\t\"./extra/it-CH.mjs\": [\n\t\t41074,\n\t\t\"node_modules_angular_common_locales_extra_it-CH_mjs\"\n\t],\n\t\"./extra/it-SM.mjs\": [\n\t\t62809,\n\t\t\"node_modules_angular_common_locales_extra_it-SM_mjs\"\n\t],\n\t\"./extra/it-VA.mjs\": [\n\t\t49155,\n\t\t\"node_modules_angular_common_locales_extra_it-VA_mjs\"\n\t],\n\t\"./extra/it.mjs\": [\n\t\t23282,\n\t\t\"node_modules_angular_common_locales_extra_it_mjs\"\n\t],\n\t\"./extra/ja.mjs\": [\n\t\t60842,\n\t\t\"node_modules_angular_common_locales_extra_ja_mjs\"\n\t],\n\t\"./extra/jgo.mjs\": [\n\t\t56951,\n\t\t\"node_modules_angular_common_locales_extra_jgo_mjs\"\n\t],\n\t\"./extra/jmc.mjs\": [\n\t\t95845,\n\t\t\"node_modules_angular_common_locales_extra_jmc_mjs\"\n\t],\n\t\"./extra/jv.mjs\": [\n\t\t45459,\n\t\t\"node_modules_angular_common_locales_extra_jv_mjs\"\n\t],\n\t\"./extra/ka.mjs\": [\n\t\t29488,\n\t\t\"node_modules_angular_common_locales_extra_ka_mjs\"\n\t],\n\t\"./extra/kab.mjs\": [\n\t\t87960,\n\t\t\"node_modules_angular_common_locales_extra_kab_mjs\"\n\t],\n\t\"./extra/kam.mjs\": [\n\t\t6593,\n\t\t\"node_modules_angular_common_locales_extra_kam_mjs\"\n\t],\n\t\"./extra/kde.mjs\": [\n\t\t26961,\n\t\t\"node_modules_angular_common_locales_extra_kde_mjs\"\n\t],\n\t\"./extra/kea.mjs\": [\n\t\t38571,\n\t\t\"node_modules_angular_common_locales_extra_kea_mjs\"\n\t],\n\t\"./extra/khq.mjs\": [\n\t\t93078,\n\t\t\"node_modules_angular_common_locales_extra_khq_mjs\"\n\t],\n\t\"./extra/ki.mjs\": [\n\t\t665,\n\t\t\"node_modules_angular_common_locales_extra_ki_mjs\"\n\t],\n\t\"./extra/kk.mjs\": [\n\t\t1102,\n\t\t\"node_modules_angular_common_locales_extra_kk_mjs\"\n\t],\n\t\"./extra/kkj.mjs\": [\n\t\t20518,\n\t\t\"node_modules_angular_common_locales_extra_kkj_mjs\"\n\t],\n\t\"./extra/kl.mjs\": [\n\t\t57745,\n\t\t\"node_modules_angular_common_locales_extra_kl_mjs\"\n\t],\n\t\"./extra/kln.mjs\": [\n\t\t82035,\n\t\t\"node_modules_angular_common_locales_extra_kln_mjs\"\n\t],\n\t\"./extra/km.mjs\": [\n\t\t61316,\n\t\t\"node_modules_angular_common_locales_extra_km_mjs\"\n\t],\n\t\"./extra/kn.mjs\": [\n\t\t70007,\n\t\t\"node_modules_angular_common_locales_extra_kn_mjs\"\n\t],\n\t\"./extra/ko-KP.mjs\": [\n\t\t96310,\n\t\t\"node_modules_angular_common_locales_extra_ko-KP_mjs\"\n\t],\n\t\"./extra/ko.mjs\": [\n\t\t58728,\n\t\t\"node_modules_angular_common_locales_extra_ko_mjs\"\n\t],\n\t\"./extra/kok.mjs\": [\n\t\t23114,\n\t\t\"node_modules_angular_common_locales_extra_kok_mjs\"\n\t],\n\t\"./extra/ks-Arab.mjs\": [\n\t\t54504,\n\t\t\"node_modules_angular_common_locales_extra_ks-Arab_mjs\"\n\t],\n\t\"./extra/ks.mjs\": [\n\t\t36875,\n\t\t\"node_modules_angular_common_locales_extra_ks_mjs\"\n\t],\n\t\"./extra/ksb.mjs\": [\n\t\t21974,\n\t\t\"node_modules_angular_common_locales_extra_ksb_mjs\"\n\t],\n\t\"./extra/ksf.mjs\": [\n\t\t52603,\n\t\t\"node_modules_angular_common_locales_extra_ksf_mjs\"\n\t],\n\t\"./extra/ksh.mjs\": [\n\t\t78967,\n\t\t\"node_modules_angular_common_locales_extra_ksh_mjs\"\n\t],\n\t\"./extra/ku.mjs\": [\n\t\t44021,\n\t\t\"node_modules_angular_common_locales_extra_ku_mjs\"\n\t],\n\t\"./extra/kw.mjs\": [\n\t\t56417,\n\t\t\"node_modules_angular_common_locales_extra_kw_mjs\"\n\t],\n\t\"./extra/ky.mjs\": [\n\t\t97575,\n\t\t\"node_modules_angular_common_locales_extra_ky_mjs\"\n\t],\n\t\"./extra/lag.mjs\": [\n\t\t4772,\n\t\t\"node_modules_angular_common_locales_extra_lag_mjs\"\n\t],\n\t\"./extra/lb.mjs\": [\n\t\t13678,\n\t\t\"node_modules_angular_common_locales_extra_lb_mjs\"\n\t],\n\t\"./extra/lg.mjs\": [\n\t\t89534,\n\t\t\"node_modules_angular_common_locales_extra_lg_mjs\"\n\t],\n\t\"./extra/lkt.mjs\": [\n\t\t14868,\n\t\t\"node_modules_angular_common_locales_extra_lkt_mjs\"\n\t],\n\t\"./extra/ln-AO.mjs\": [\n\t\t51294,\n\t\t\"node_modules_angular_common_locales_extra_ln-AO_mjs\"\n\t],\n\t\"./extra/ln-CF.mjs\": [\n\t\t17678,\n\t\t\"node_modules_angular_common_locales_extra_ln-CF_mjs\"\n\t],\n\t\"./extra/ln-CG.mjs\": [\n\t\t84181,\n\t\t\"node_modules_angular_common_locales_extra_ln-CG_mjs\"\n\t],\n\t\"./extra/ln.mjs\": [\n\t\t44280,\n\t\t\"node_modules_angular_common_locales_extra_ln_mjs\"\n\t],\n\t\"./extra/lo.mjs\": [\n\t\t98452,\n\t\t\"node_modules_angular_common_locales_extra_lo_mjs\"\n\t],\n\t\"./extra/lrc-IQ.mjs\": [\n\t\t43355,\n\t\t\"node_modules_angular_common_locales_extra_lrc-IQ_mjs\"\n\t],\n\t\"./extra/lrc.mjs\": [\n\t\t54047,\n\t\t\"node_modules_angular_common_locales_extra_lrc_mjs\"\n\t],\n\t\"./extra/lt.mjs\": [\n\t\t23374,\n\t\t\"node_modules_angular_common_locales_extra_lt_mjs\"\n\t],\n\t\"./extra/lu.mjs\": [\n\t\t71344,\n\t\t\"node_modules_angular_common_locales_extra_lu_mjs\"\n\t],\n\t\"./extra/luo.mjs\": [\n\t\t26373,\n\t\t\"node_modules_angular_common_locales_extra_luo_mjs\"\n\t],\n\t\"./extra/luy.mjs\": [\n\t\t44912,\n\t\t\"node_modules_angular_common_locales_extra_luy_mjs\"\n\t],\n\t\"./extra/lv.mjs\": [\n\t\t13058,\n\t\t\"node_modules_angular_common_locales_extra_lv_mjs\"\n\t],\n\t\"./extra/mai.mjs\": [\n\t\t83533,\n\t\t\"node_modules_angular_common_locales_extra_mai_mjs\"\n\t],\n\t\"./extra/mas-TZ.mjs\": [\n\t\t92920,\n\t\t\"node_modules_angular_common_locales_extra_mas-TZ_mjs\"\n\t],\n\t\"./extra/mas.mjs\": [\n\t\t8611,\n\t\t\"node_modules_angular_common_locales_extra_mas_mjs\"\n\t],\n\t\"./extra/mer.mjs\": [\n\t\t35048,\n\t\t\"node_modules_angular_common_locales_extra_mer_mjs\"\n\t],\n\t\"./extra/mfe.mjs\": [\n\t\t63188,\n\t\t\"node_modules_angular_common_locales_extra_mfe_mjs\"\n\t],\n\t\"./extra/mg.mjs\": [\n\t\t16405,\n\t\t\"node_modules_angular_common_locales_extra_mg_mjs\"\n\t],\n\t\"./extra/mgh.mjs\": [\n\t\t57440,\n\t\t\"node_modules_angular_common_locales_extra_mgh_mjs\"\n\t],\n\t\"./extra/mgo.mjs\": [\n\t\t75465,\n\t\t\"node_modules_angular_common_locales_extra_mgo_mjs\"\n\t],\n\t\"./extra/mi.mjs\": [\n\t\t15979,\n\t\t\"node_modules_angular_common_locales_extra_mi_mjs\"\n\t],\n\t\"./extra/mk.mjs\": [\n\t\t50241,\n\t\t\"node_modules_angular_common_locales_extra_mk_mjs\"\n\t],\n\t\"./extra/ml.mjs\": [\n\t\t49007,\n\t\t\"node_modules_angular_common_locales_extra_ml_mjs\"\n\t],\n\t\"./extra/mn.mjs\": [\n\t\t19483,\n\t\t\"node_modules_angular_common_locales_extra_mn_mjs\"\n\t],\n\t\"./extra/mni-Beng.mjs\": [\n\t\t29268,\n\t\t\"node_modules_angular_common_locales_extra_mni-Beng_mjs\"\n\t],\n\t\"./extra/mni.mjs\": [\n\t\t26482,\n\t\t\"node_modules_angular_common_locales_extra_mni_mjs\"\n\t],\n\t\"./extra/mr.mjs\": [\n\t\t21263,\n\t\t\"node_modules_angular_common_locales_extra_mr_mjs\"\n\t],\n\t\"./extra/ms-BN.mjs\": [\n\t\t42569,\n\t\t\"node_modules_angular_common_locales_extra_ms-BN_mjs\"\n\t],\n\t\"./extra/ms-ID.mjs\": [\n\t\t23595,\n\t\t\"node_modules_angular_common_locales_extra_ms-ID_mjs\"\n\t],\n\t\"./extra/ms-SG.mjs\": [\n\t\t90506,\n\t\t\"node_modules_angular_common_locales_extra_ms-SG_mjs\"\n\t],\n\t\"./extra/ms.mjs\": [\n\t\t92532,\n\t\t\"node_modules_angular_common_locales_extra_ms_mjs\"\n\t],\n\t\"./extra/mt.mjs\": [\n\t\t81549,\n\t\t\"node_modules_angular_common_locales_extra_mt_mjs\"\n\t],\n\t\"./extra/mua.mjs\": [\n\t\t76592,\n\t\t\"node_modules_angular_common_locales_extra_mua_mjs\"\n\t],\n\t\"./extra/my.mjs\": [\n\t\t21136,\n\t\t\"node_modules_angular_common_locales_extra_my_mjs\"\n\t],\n\t\"./extra/mzn.mjs\": [\n\t\t38980,\n\t\t\"node_modules_angular_common_locales_extra_mzn_mjs\"\n\t],\n\t\"./extra/naq.mjs\": [\n\t\t11292,\n\t\t\"node_modules_angular_common_locales_extra_naq_mjs\"\n\t],\n\t\"./extra/nb-SJ.mjs\": [\n\t\t26024,\n\t\t\"node_modules_angular_common_locales_extra_nb-SJ_mjs\"\n\t],\n\t\"./extra/nb.mjs\": [\n\t\t6363,\n\t\t\"node_modules_angular_common_locales_extra_nb_mjs\"\n\t],\n\t\"./extra/nd.mjs\": [\n\t\t49911,\n\t\t\"node_modules_angular_common_locales_extra_nd_mjs\"\n\t],\n\t\"./extra/nds-NL.mjs\": [\n\t\t25046,\n\t\t\"node_modules_angular_common_locales_extra_nds-NL_mjs\"\n\t],\n\t\"./extra/nds.mjs\": [\n\t\t99764,\n\t\t\"node_modules_angular_common_locales_extra_nds_mjs\"\n\t],\n\t\"./extra/ne-IN.mjs\": [\n\t\t28116,\n\t\t\"node_modules_angular_common_locales_extra_ne-IN_mjs\"\n\t],\n\t\"./extra/ne.mjs\": [\n\t\t56440,\n\t\t\"node_modules_angular_common_locales_extra_ne_mjs\"\n\t],\n\t\"./extra/nl-AW.mjs\": [\n\t\t69427,\n\t\t\"node_modules_angular_common_locales_extra_nl-AW_mjs\"\n\t],\n\t\"./extra/nl-BE.mjs\": [\n\t\t10890,\n\t\t\"node_modules_angular_common_locales_extra_nl-BE_mjs\"\n\t],\n\t\"./extra/nl-BQ.mjs\": [\n\t\t82630,\n\t\t\"node_modules_angular_common_locales_extra_nl-BQ_mjs\"\n\t],\n\t\"./extra/nl-CW.mjs\": [\n\t\t55710,\n\t\t\"node_modules_angular_common_locales_extra_nl-CW_mjs\"\n\t],\n\t\"./extra/nl-SR.mjs\": [\n\t\t44922,\n\t\t\"node_modules_angular_common_locales_extra_nl-SR_mjs\"\n\t],\n\t\"./extra/nl-SX.mjs\": [\n\t\t91395,\n\t\t\"node_modules_angular_common_locales_extra_nl-SX_mjs\"\n\t],\n\t\"./extra/nl.mjs\": [\n\t\t5300,\n\t\t\"node_modules_angular_common_locales_extra_nl_mjs\"\n\t],\n\t\"./extra/nmg.mjs\": [\n\t\t61050,\n\t\t\"node_modules_angular_common_locales_extra_nmg_mjs\"\n\t],\n\t\"./extra/nn.mjs\": [\n\t\t9402,\n\t\t\"node_modules_angular_common_locales_extra_nn_mjs\"\n\t],\n\t\"./extra/nnh.mjs\": [\n\t\t85581,\n\t\t\"node_modules_angular_common_locales_extra_nnh_mjs\"\n\t],\n\t\"./extra/no.mjs\": [\n\t\t45176,\n\t\t\"node_modules_angular_common_locales_extra_no_mjs\"\n\t],\n\t\"./extra/nus.mjs\": [\n\t\t41358,\n\t\t\"node_modules_angular_common_locales_extra_nus_mjs\"\n\t],\n\t\"./extra/nyn.mjs\": [\n\t\t90245,\n\t\t\"node_modules_angular_common_locales_extra_nyn_mjs\"\n\t],\n\t\"./extra/om-KE.mjs\": [\n\t\t5295,\n\t\t\"node_modules_angular_common_locales_extra_om-KE_mjs\"\n\t],\n\t\"./extra/om.mjs\": [\n\t\t88356,\n\t\t\"node_modules_angular_common_locales_extra_om_mjs\"\n\t],\n\t\"./extra/or.mjs\": [\n\t\t21232,\n\t\t\"node_modules_angular_common_locales_extra_or_mjs\"\n\t],\n\t\"./extra/os-RU.mjs\": [\n\t\t90542,\n\t\t\"node_modules_angular_common_locales_extra_os-RU_mjs\"\n\t],\n\t\"./extra/os.mjs\": [\n\t\t37415,\n\t\t\"node_modules_angular_common_locales_extra_os_mjs\"\n\t],\n\t\"./extra/pa-Arab.mjs\": [\n\t\t55675,\n\t\t\"node_modules_angular_common_locales_extra_pa-Arab_mjs\"\n\t],\n\t\"./extra/pa-Guru.mjs\": [\n\t\t66117,\n\t\t\"node_modules_angular_common_locales_extra_pa-Guru_mjs\"\n\t],\n\t\"./extra/pa.mjs\": [\n\t\t35004,\n\t\t\"node_modules_angular_common_locales_extra_pa_mjs\"\n\t],\n\t\"./extra/pcm.mjs\": [\n\t\t94121,\n\t\t\"node_modules_angular_common_locales_extra_pcm_mjs\"\n\t],\n\t\"./extra/pl.mjs\": [\n\t\t16468,\n\t\t\"node_modules_angular_common_locales_extra_pl_mjs\"\n\t],\n\t\"./extra/ps-PK.mjs\": [\n\t\t66801,\n\t\t\"node_modules_angular_common_locales_extra_ps-PK_mjs\"\n\t],\n\t\"./extra/ps.mjs\": [\n\t\t45686,\n\t\t\"node_modules_angular_common_locales_extra_ps_mjs\"\n\t],\n\t\"./extra/pt-AO.mjs\": [\n\t\t14911,\n\t\t\"node_modules_angular_common_locales_extra_pt-AO_mjs\"\n\t],\n\t\"./extra/pt-CH.mjs\": [\n\t\t61477,\n\t\t\"node_modules_angular_common_locales_extra_pt-CH_mjs\"\n\t],\n\t\"./extra/pt-CV.mjs\": [\n\t\t33889,\n\t\t\"node_modules_angular_common_locales_extra_pt-CV_mjs\"\n\t],\n\t\"./extra/pt-GQ.mjs\": [\n\t\t48938,\n\t\t\"node_modules_angular_common_locales_extra_pt-GQ_mjs\"\n\t],\n\t\"./extra/pt-GW.mjs\": [\n\t\t56173,\n\t\t\"node_modules_angular_common_locales_extra_pt-GW_mjs\"\n\t],\n\t\"./extra/pt-LU.mjs\": [\n\t\t34016,\n\t\t\"node_modules_angular_common_locales_extra_pt-LU_mjs\"\n\t],\n\t\"./extra/pt-MO.mjs\": [\n\t\t61977,\n\t\t\"node_modules_angular_common_locales_extra_pt-MO_mjs\"\n\t],\n\t\"./extra/pt-MZ.mjs\": [\n\t\t99834,\n\t\t\"node_modules_angular_common_locales_extra_pt-MZ_mjs\"\n\t],\n\t\"./extra/pt-PT.mjs\": [\n\t\t43170,\n\t\t\"node_modules_angular_common_locales_extra_pt-PT_mjs\"\n\t],\n\t\"./extra/pt-ST.mjs\": [\n\t\t60478,\n\t\t\"node_modules_angular_common_locales_extra_pt-ST_mjs\"\n\t],\n\t\"./extra/pt-TL.mjs\": [\n\t\t83874,\n\t\t\"node_modules_angular_common_locales_extra_pt-TL_mjs\"\n\t],\n\t\"./extra/pt.mjs\": [\n\t\t50823,\n\t\t\"node_modules_angular_common_locales_extra_pt_mjs\"\n\t],\n\t\"./extra/qu-BO.mjs\": [\n\t\t32338,\n\t\t\"node_modules_angular_common_locales_extra_qu-BO_mjs\"\n\t],\n\t\"./extra/qu-EC.mjs\": [\n\t\t31558,\n\t\t\"node_modules_angular_common_locales_extra_qu-EC_mjs\"\n\t],\n\t\"./extra/qu.mjs\": [\n\t\t32613,\n\t\t\"node_modules_angular_common_locales_extra_qu_mjs\"\n\t],\n\t\"./extra/rm.mjs\": [\n\t\t71284,\n\t\t\"node_modules_angular_common_locales_extra_rm_mjs\"\n\t],\n\t\"./extra/rn.mjs\": [\n\t\t92064,\n\t\t\"node_modules_angular_common_locales_extra_rn_mjs\"\n\t],\n\t\"./extra/ro-MD.mjs\": [\n\t\t54890,\n\t\t\"node_modules_angular_common_locales_extra_ro-MD_mjs\"\n\t],\n\t\"./extra/ro.mjs\": [\n\t\t3496,\n\t\t\"node_modules_angular_common_locales_extra_ro_mjs\"\n\t],\n\t\"./extra/rof.mjs\": [\n\t\t17391,\n\t\t\"node_modules_angular_common_locales_extra_rof_mjs\"\n\t],\n\t\"./extra/root.mjs\": [\n\t\t45383,\n\t\t\"node_modules_angular_common_locales_extra_root_mjs\"\n\t],\n\t\"./extra/ru-BY.mjs\": [\n\t\t99707,\n\t\t\"node_modules_angular_common_locales_extra_ru-BY_mjs\"\n\t],\n\t\"./extra/ru-KG.mjs\": [\n\t\t96223,\n\t\t\"node_modules_angular_common_locales_extra_ru-KG_mjs\"\n\t],\n\t\"./extra/ru-KZ.mjs\": [\n\t\t4863,\n\t\t\"node_modules_angular_common_locales_extra_ru-KZ_mjs\"\n\t],\n\t\"./extra/ru-MD.mjs\": [\n\t\t37433,\n\t\t\"node_modules_angular_common_locales_extra_ru-MD_mjs\"\n\t],\n\t\"./extra/ru-UA.mjs\": [\n\t\t20758,\n\t\t\"node_modules_angular_common_locales_extra_ru-UA_mjs\"\n\t],\n\t\"./extra/ru.mjs\": [\n\t\t94379,\n\t\t\"node_modules_angular_common_locales_extra_ru_mjs\"\n\t],\n\t\"./extra/rw.mjs\": [\n\t\t83764,\n\t\t\"node_modules_angular_common_locales_extra_rw_mjs\"\n\t],\n\t\"./extra/rwk.mjs\": [\n\t\t77371,\n\t\t\"node_modules_angular_common_locales_extra_rwk_mjs\"\n\t],\n\t\"./extra/sa.mjs\": [\n\t\t72341,\n\t\t\"node_modules_angular_common_locales_extra_sa_mjs\"\n\t],\n\t\"./extra/sah.mjs\": [\n\t\t34583,\n\t\t\"node_modules_angular_common_locales_extra_sah_mjs\"\n\t],\n\t\"./extra/saq.mjs\": [\n\t\t6347,\n\t\t\"node_modules_angular_common_locales_extra_saq_mjs\"\n\t],\n\t\"./extra/sat-Olck.mjs\": [\n\t\t36003,\n\t\t\"node_modules_angular_common_locales_extra_sat-Olck_mjs\"\n\t],\n\t\"./extra/sat.mjs\": [\n\t\t55225,\n\t\t\"node_modules_angular_common_locales_extra_sat_mjs\"\n\t],\n\t\"./extra/sbp.mjs\": [\n\t\t29134,\n\t\t\"node_modules_angular_common_locales_extra_sbp_mjs\"\n\t],\n\t\"./extra/sd-Arab.mjs\": [\n\t\t93035,\n\t\t\"node_modules_angular_common_locales_extra_sd-Arab_mjs\"\n\t],\n\t\"./extra/sd-Deva.mjs\": [\n\t\t73348,\n\t\t\"node_modules_angular_common_locales_extra_sd-Deva_mjs\"\n\t],\n\t\"./extra/sd.mjs\": [\n\t\t40579,\n\t\t\"node_modules_angular_common_locales_extra_sd_mjs\"\n\t],\n\t\"./extra/se-FI.mjs\": [\n\t\t69021,\n\t\t\"node_modules_angular_common_locales_extra_se-FI_mjs\"\n\t],\n\t\"./extra/se-SE.mjs\": [\n\t\t88174,\n\t\t\"node_modules_angular_common_locales_extra_se-SE_mjs\"\n\t],\n\t\"./extra/se.mjs\": [\n\t\t53301,\n\t\t\"node_modules_angular_common_locales_extra_se_mjs\"\n\t],\n\t\"./extra/seh.mjs\": [\n\t\t69702,\n\t\t\"node_modules_angular_common_locales_extra_seh_mjs\"\n\t],\n\t\"./extra/ses.mjs\": [\n\t\t16577,\n\t\t\"node_modules_angular_common_locales_extra_ses_mjs\"\n\t],\n\t\"./extra/sg.mjs\": [\n\t\t81714,\n\t\t\"node_modules_angular_common_locales_extra_sg_mjs\"\n\t],\n\t\"./extra/shi-Latn.mjs\": [\n\t\t603,\n\t\t\"node_modules_angular_common_locales_extra_shi-Latn_mjs\"\n\t],\n\t\"./extra/shi-Tfng.mjs\": [\n\t\t80614,\n\t\t\"node_modules_angular_common_locales_extra_shi-Tfng_mjs\"\n\t],\n\t\"./extra/shi.mjs\": [\n\t\t10288,\n\t\t\"node_modules_angular_common_locales_extra_shi_mjs\"\n\t],\n\t\"./extra/si.mjs\": [\n\t\t79833,\n\t\t\"node_modules_angular_common_locales_extra_si_mjs\"\n\t],\n\t\"./extra/sk.mjs\": [\n\t\t82290,\n\t\t\"node_modules_angular_common_locales_extra_sk_mjs\"\n\t],\n\t\"./extra/sl.mjs\": [\n\t\t88951,\n\t\t\"node_modules_angular_common_locales_extra_sl_mjs\"\n\t],\n\t\"./extra/smn.mjs\": [\n\t\t25387,\n\t\t\"node_modules_angular_common_locales_extra_smn_mjs\"\n\t],\n\t\"./extra/sn.mjs\": [\n\t\t78207,\n\t\t\"node_modules_angular_common_locales_extra_sn_mjs\"\n\t],\n\t\"./extra/so-DJ.mjs\": [\n\t\t71213,\n\t\t\"node_modules_angular_common_locales_extra_so-DJ_mjs\"\n\t],\n\t\"./extra/so-ET.mjs\": [\n\t\t71994,\n\t\t\"node_modules_angular_common_locales_extra_so-ET_mjs\"\n\t],\n\t\"./extra/so-KE.mjs\": [\n\t\t87271,\n\t\t\"node_modules_angular_common_locales_extra_so-KE_mjs\"\n\t],\n\t\"./extra/so.mjs\": [\n\t\t70109,\n\t\t\"node_modules_angular_common_locales_extra_so_mjs\"\n\t],\n\t\"./extra/sq-MK.mjs\": [\n\t\t58251,\n\t\t\"node_modules_angular_common_locales_extra_sq-MK_mjs\"\n\t],\n\t\"./extra/sq-XK.mjs\": [\n\t\t72104,\n\t\t\"node_modules_angular_common_locales_extra_sq-XK_mjs\"\n\t],\n\t\"./extra/sq.mjs\": [\n\t\t51679,\n\t\t\"node_modules_angular_common_locales_extra_sq_mjs\"\n\t],\n\t\"./extra/sr-Cyrl-BA.mjs\": [\n\t\t95031,\n\t\t\"node_modules_angular_common_locales_extra_sr-Cyrl-BA_mjs\"\n\t],\n\t\"./extra/sr-Cyrl-ME.mjs\": [\n\t\t76959,\n\t\t\"node_modules_angular_common_locales_extra_sr-Cyrl-ME_mjs\"\n\t],\n\t\"./extra/sr-Cyrl-XK.mjs\": [\n\t\t39907,\n\t\t\"node_modules_angular_common_locales_extra_sr-Cyrl-XK_mjs\"\n\t],\n\t\"./extra/sr-Cyrl.mjs\": [\n\t\t4804,\n\t\t\"node_modules_angular_common_locales_extra_sr-Cyrl_mjs\"\n\t],\n\t\"./extra/sr-Latn-BA.mjs\": [\n\t\t56870,\n\t\t\"node_modules_angular_common_locales_extra_sr-Latn-BA_mjs\"\n\t],\n\t\"./extra/sr-Latn-ME.mjs\": [\n\t\t16060,\n\t\t\"node_modules_angular_common_locales_extra_sr-Latn-ME_mjs\"\n\t],\n\t\"./extra/sr-Latn-XK.mjs\": [\n\t\t40417,\n\t\t\"node_modules_angular_common_locales_extra_sr-Latn-XK_mjs\"\n\t],\n\t\"./extra/sr-Latn.mjs\": [\n\t\t76033,\n\t\t\"node_modules_angular_common_locales_extra_sr-Latn_mjs\"\n\t],\n\t\"./extra/sr.mjs\": [\n\t\t42646,\n\t\t\"node_modules_angular_common_locales_extra_sr_mjs\"\n\t],\n\t\"./extra/su-Latn.mjs\": [\n\t\t61760,\n\t\t\"node_modules_angular_common_locales_extra_su-Latn_mjs\"\n\t],\n\t\"./extra/su.mjs\": [\n\t\t19941,\n\t\t\"node_modules_angular_common_locales_extra_su_mjs\"\n\t],\n\t\"./extra/sv-AX.mjs\": [\n\t\t96191,\n\t\t\"node_modules_angular_common_locales_extra_sv-AX_mjs\"\n\t],\n\t\"./extra/sv-FI.mjs\": [\n\t\t48363,\n\t\t\"node_modules_angular_common_locales_extra_sv-FI_mjs\"\n\t],\n\t\"./extra/sv.mjs\": [\n\t\t66857,\n\t\t\"node_modules_angular_common_locales_extra_sv_mjs\"\n\t],\n\t\"./extra/sw-CD.mjs\": [\n\t\t78679,\n\t\t\"node_modules_angular_common_locales_extra_sw-CD_mjs\"\n\t],\n\t\"./extra/sw-KE.mjs\": [\n\t\t13711,\n\t\t\"node_modules_angular_common_locales_extra_sw-KE_mjs\"\n\t],\n\t\"./extra/sw-UG.mjs\": [\n\t\t66374,\n\t\t\"node_modules_angular_common_locales_extra_sw-UG_mjs\"\n\t],\n\t\"./extra/sw.mjs\": [\n\t\t44067,\n\t\t\"node_modules_angular_common_locales_extra_sw_mjs\"\n\t],\n\t\"./extra/ta-LK.mjs\": [\n\t\t92556,\n\t\t\"node_modules_angular_common_locales_extra_ta-LK_mjs\"\n\t],\n\t\"./extra/ta-MY.mjs\": [\n\t\t13929,\n\t\t\"node_modules_angular_common_locales_extra_ta-MY_mjs\"\n\t],\n\t\"./extra/ta-SG.mjs\": [\n\t\t40,\n\t\t\"node_modules_angular_common_locales_extra_ta-SG_mjs\"\n\t],\n\t\"./extra/ta.mjs\": [\n\t\t59082,\n\t\t\"node_modules_angular_common_locales_extra_ta_mjs\"\n\t],\n\t\"./extra/te.mjs\": [\n\t\t49141,\n\t\t\"node_modules_angular_common_locales_extra_te_mjs\"\n\t],\n\t\"./extra/teo-KE.mjs\": [\n\t\t43321,\n\t\t\"node_modules_angular_common_locales_extra_teo-KE_mjs\"\n\t],\n\t\"./extra/teo.mjs\": [\n\t\t95971,\n\t\t\"node_modules_angular_common_locales_extra_teo_mjs\"\n\t],\n\t\"./extra/tg.mjs\": [\n\t\t68507,\n\t\t\"node_modules_angular_common_locales_extra_tg_mjs\"\n\t],\n\t\"./extra/th.mjs\": [\n\t\t19799,\n\t\t\"node_modules_angular_common_locales_extra_th_mjs\"\n\t],\n\t\"./extra/ti-ER.mjs\": [\n\t\t97479,\n\t\t\"node_modules_angular_common_locales_extra_ti-ER_mjs\"\n\t],\n\t\"./extra/ti.mjs\": [\n\t\t37955,\n\t\t\"node_modules_angular_common_locales_extra_ti_mjs\"\n\t],\n\t\"./extra/tk.mjs\": [\n\t\t86413,\n\t\t\"node_modules_angular_common_locales_extra_tk_mjs\"\n\t],\n\t\"./extra/to.mjs\": [\n\t\t53225,\n\t\t\"node_modules_angular_common_locales_extra_to_mjs\"\n\t],\n\t\"./extra/tr-CY.mjs\": [\n\t\t72262,\n\t\t\"node_modules_angular_common_locales_extra_tr-CY_mjs\"\n\t],\n\t\"./extra/tr.mjs\": [\n\t\t8557,\n\t\t\"node_modules_angular_common_locales_extra_tr_mjs\"\n\t],\n\t\"./extra/tt.mjs\": [\n\t\t51942,\n\t\t\"node_modules_angular_common_locales_extra_tt_mjs\"\n\t],\n\t\"./extra/twq.mjs\": [\n\t\t68455,\n\t\t\"node_modules_angular_common_locales_extra_twq_mjs\"\n\t],\n\t\"./extra/tzm.mjs\": [\n\t\t13184,\n\t\t\"node_modules_angular_common_locales_extra_tzm_mjs\"\n\t],\n\t\"./extra/ug.mjs\": [\n\t\t60168,\n\t\t\"node_modules_angular_common_locales_extra_ug_mjs\"\n\t],\n\t\"./extra/uk.mjs\": [\n\t\t85432,\n\t\t\"node_modules_angular_common_locales_extra_uk_mjs\"\n\t],\n\t\"./extra/ur-IN.mjs\": [\n\t\t37013,\n\t\t\"node_modules_angular_common_locales_extra_ur-IN_mjs\"\n\t],\n\t\"./extra/ur.mjs\": [\n\t\t57495,\n\t\t\"node_modules_angular_common_locales_extra_ur_mjs\"\n\t],\n\t\"./extra/uz-Arab.mjs\": [\n\t\t55720,\n\t\t\"node_modules_angular_common_locales_extra_uz-Arab_mjs\"\n\t],\n\t\"./extra/uz-Cyrl.mjs\": [\n\t\t84396,\n\t\t\"node_modules_angular_common_locales_extra_uz-Cyrl_mjs\"\n\t],\n\t\"./extra/uz-Latn.mjs\": [\n\t\t60652,\n\t\t\"node_modules_angular_common_locales_extra_uz-Latn_mjs\"\n\t],\n\t\"./extra/uz.mjs\": [\n\t\t57759,\n\t\t\"node_modules_angular_common_locales_extra_uz_mjs\"\n\t],\n\t\"./extra/vai-Latn.mjs\": [\n\t\t3511,\n\t\t\"node_modules_angular_common_locales_extra_vai-Latn_mjs\"\n\t],\n\t\"./extra/vai-Vaii.mjs\": [\n\t\t60585,\n\t\t\"node_modules_angular_common_locales_extra_vai-Vaii_mjs\"\n\t],\n\t\"./extra/vai.mjs\": [\n\t\t46646,\n\t\t\"node_modules_angular_common_locales_extra_vai_mjs\"\n\t],\n\t\"./extra/vi.mjs\": [\n\t\t79728,\n\t\t\"node_modules_angular_common_locales_extra_vi_mjs\"\n\t],\n\t\"./extra/vun.mjs\": [\n\t\t54801,\n\t\t\"node_modules_angular_common_locales_extra_vun_mjs\"\n\t],\n\t\"./extra/wae.mjs\": [\n\t\t73220,\n\t\t\"node_modules_angular_common_locales_extra_wae_mjs\"\n\t],\n\t\"./extra/wo.mjs\": [\n\t\t94224,\n\t\t\"node_modules_angular_common_locales_extra_wo_mjs\"\n\t],\n\t\"./extra/xh.mjs\": [\n\t\t98812,\n\t\t\"node_modules_angular_common_locales_extra_xh_mjs\"\n\t],\n\t\"./extra/xog.mjs\": [\n\t\t80456,\n\t\t\"node_modules_angular_common_locales_extra_xog_mjs\"\n\t],\n\t\"./extra/yav.mjs\": [\n\t\t85460,\n\t\t\"node_modules_angular_common_locales_extra_yav_mjs\"\n\t],\n\t\"./extra/yi.mjs\": [\n\t\t71249,\n\t\t\"node_modules_angular_common_locales_extra_yi_mjs\"\n\t],\n\t\"./extra/yo-BJ.mjs\": [\n\t\t35545,\n\t\t\"node_modules_angular_common_locales_extra_yo-BJ_mjs\"\n\t],\n\t\"./extra/yo.mjs\": [\n\t\t59787,\n\t\t\"node_modules_angular_common_locales_extra_yo_mjs\"\n\t],\n\t\"./extra/yue-Hans.mjs\": [\n\t\t50684,\n\t\t\"node_modules_angular_common_locales_extra_yue-Hans_mjs\"\n\t],\n\t\"./extra/yue-Hant.mjs\": [\n\t\t70372,\n\t\t\"node_modules_angular_common_locales_extra_yue-Hant_mjs\"\n\t],\n\t\"./extra/yue.mjs\": [\n\t\t1418,\n\t\t\"node_modules_angular_common_locales_extra_yue_mjs\"\n\t],\n\t\"./extra/zgh.mjs\": [\n\t\t25355,\n\t\t\"node_modules_angular_common_locales_extra_zgh_mjs\"\n\t],\n\t\"./extra/zh-Hans-HK.mjs\": [\n\t\t359,\n\t\t\"node_modules_angular_common_locales_extra_zh-Hans-HK_mjs\"\n\t],\n\t\"./extra/zh-Hans-MO.mjs\": [\n\t\t99246,\n\t\t\"node_modules_angular_common_locales_extra_zh-Hans-MO_mjs\"\n\t],\n\t\"./extra/zh-Hans-SG.mjs\": [\n\t\t76459,\n\t\t\"node_modules_angular_common_locales_extra_zh-Hans-SG_mjs\"\n\t],\n\t\"./extra/zh-Hans.mjs\": [\n\t\t58947,\n\t\t\"node_modules_angular_common_locales_extra_zh-Hans_mjs\"\n\t],\n\t\"./extra/zh-Hant-HK.mjs\": [\n\t\t7345,\n\t\t\"node_modules_angular_common_locales_extra_zh-Hant-HK_mjs\"\n\t],\n\t\"./extra/zh-Hant-MO.mjs\": [\n\t\t49494,\n\t\t\"node_modules_angular_common_locales_extra_zh-Hant-MO_mjs\"\n\t],\n\t\"./extra/zh-Hant.mjs\": [\n\t\t43937,\n\t\t\"node_modules_angular_common_locales_extra_zh-Hant_mjs\"\n\t],\n\t\"./extra/zh.mjs\": [\n\t\t39234,\n\t\t\"node_modules_angular_common_locales_extra_zh_mjs\"\n\t],\n\t\"./extra/zu.mjs\": [\n\t\t34501,\n\t\t\"node_modules_angular_common_locales_extra_zu_mjs\"\n\t],\n\t\"./fa-AF.mjs\": [\n\t\t98739,\n\t\t\"node_modules_angular_common_locales_fa-AF_mjs\"\n\t],\n\t\"./fa.mjs\": [\n\t\t11630,\n\t\t\"node_modules_angular_common_locales_fa_mjs\"\n\t],\n\t\"./ff-Adlm-BF.mjs\": [\n\t\t97617,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-BF_mjs\"\n\t],\n\t\"./ff-Adlm-CM.mjs\": [\n\t\t24128,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-CM_mjs\"\n\t],\n\t\"./ff-Adlm-GH.mjs\": [\n\t\t2836,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-GH_mjs\"\n\t],\n\t\"./ff-Adlm-GM.mjs\": [\n\t\t54251,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-GM_mjs\"\n\t],\n\t\"./ff-Adlm-GW.mjs\": [\n\t\t33836,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-GW_mjs\"\n\t],\n\t\"./ff-Adlm-LR.mjs\": [\n\t\t53526,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-LR_mjs\"\n\t],\n\t\"./ff-Adlm-MR.mjs\": [\n\t\t14073,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-MR_mjs\"\n\t],\n\t\"./ff-Adlm-NE.mjs\": [\n\t\t93998,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-NE_mjs\"\n\t],\n\t\"./ff-Adlm-NG.mjs\": [\n\t\t16981,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-NG_mjs\"\n\t],\n\t\"./ff-Adlm-SL.mjs\": [\n\t\t80582,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-SL_mjs\"\n\t],\n\t\"./ff-Adlm-SN.mjs\": [\n\t\t70013,\n\t\t\"node_modules_angular_common_locales_ff-Adlm-SN_mjs\"\n\t],\n\t\"./ff-Adlm.mjs\": [\n\t\t21380,\n\t\t\"node_modules_angular_common_locales_ff-Adlm_mjs\"\n\t],\n\t\"./ff-CM.mjs\": [\n\t\t86139,\n\t\t\"node_modules_angular_common_locales_ff-CM_mjs\"\n\t],\n\t\"./ff-GN.mjs\": [\n\t\t17399,\n\t\t\"node_modules_angular_common_locales_ff-GN_mjs\"\n\t],\n\t\"./ff-Latn-BF.mjs\": [\n\t\t48706,\n\t\t\"node_modules_angular_common_locales_ff-Latn-BF_mjs\"\n\t],\n\t\"./ff-Latn-CM.mjs\": [\n\t\t55507,\n\t\t\"node_modules_angular_common_locales_ff-Latn-CM_mjs\"\n\t],\n\t\"./ff-Latn-GH.mjs\": [\n\t\t4944,\n\t\t\"node_modules_angular_common_locales_ff-Latn-GH_mjs\"\n\t],\n\t\"./ff-Latn-GM.mjs\": [\n\t\t55401,\n\t\t\"node_modules_angular_common_locales_ff-Latn-GM_mjs\"\n\t],\n\t\"./ff-Latn-GN.mjs\": [\n\t\t62367,\n\t\t\"node_modules_angular_common_locales_ff-Latn-GN_mjs\"\n\t],\n\t\"./ff-Latn-GW.mjs\": [\n\t\t69153,\n\t\t\"node_modules_angular_common_locales_ff-Latn-GW_mjs\"\n\t],\n\t\"./ff-Latn-LR.mjs\": [\n\t\t19021,\n\t\t\"node_modules_angular_common_locales_ff-Latn-LR_mjs\"\n\t],\n\t\"./ff-Latn-MR.mjs\": [\n\t\t94391,\n\t\t\"node_modules_angular_common_locales_ff-Latn-MR_mjs\"\n\t],\n\t\"./ff-Latn-NE.mjs\": [\n\t\t54001,\n\t\t\"node_modules_angular_common_locales_ff-Latn-NE_mjs\"\n\t],\n\t\"./ff-Latn-NG.mjs\": [\n\t\t28799,\n\t\t\"node_modules_angular_common_locales_ff-Latn-NG_mjs\"\n\t],\n\t\"./ff-Latn-SL.mjs\": [\n\t\t71787,\n\t\t\"node_modules_angular_common_locales_ff-Latn-SL_mjs\"\n\t],\n\t\"./ff-Latn.mjs\": [\n\t\t64715,\n\t\t\"node_modules_angular_common_locales_ff-Latn_mjs\"\n\t],\n\t\"./ff-MR.mjs\": [\n\t\t32119,\n\t\t\"node_modules_angular_common_locales_ff-MR_mjs\"\n\t],\n\t\"./ff.mjs\": [\n\t\t62005,\n\t\t\"node_modules_angular_common_locales_ff_mjs\"\n\t],\n\t\"./fi.mjs\": [\n\t\t37148,\n\t\t\"node_modules_angular_common_locales_fi_mjs\"\n\t],\n\t\"./fil.mjs\": [\n\t\t77462,\n\t\t\"node_modules_angular_common_locales_fil_mjs\"\n\t],\n\t\"./fo-DK.mjs\": [\n\t\t60913,\n\t\t\"node_modules_angular_common_locales_fo-DK_mjs\"\n\t],\n\t\"./fo.mjs\": [\n\t\t51383,\n\t\t\"node_modules_angular_common_locales_fo_mjs\"\n\t],\n\t\"./fr-BE.mjs\": [\n\t\t64637,\n\t\t\"node_modules_angular_common_locales_fr-BE_mjs\"\n\t],\n\t\"./fr-BF.mjs\": [\n\t\t96175,\n\t\t\"node_modules_angular_common_locales_fr-BF_mjs\"\n\t],\n\t\"./fr-BI.mjs\": [\n\t\t39558,\n\t\t\"node_modules_angular_common_locales_fr-BI_mjs\"\n\t],\n\t\"./fr-BJ.mjs\": [\n\t\t71564,\n\t\t\"node_modules_angular_common_locales_fr-BJ_mjs\"\n\t],\n\t\"./fr-BL.mjs\": [\n\t\t35302,\n\t\t\"node_modules_angular_common_locales_fr-BL_mjs\"\n\t],\n\t\"./fr-CA.mjs\": [\n\t\t76960,\n\t\t\"node_modules_angular_common_locales_fr-CA_mjs\"\n\t],\n\t\"./fr-CD.mjs\": [\n\t\t57710,\n\t\t\"node_modules_angular_common_locales_fr-CD_mjs\"\n\t],\n\t\"./fr-CF.mjs\": [\n\t\t80714,\n\t\t\"node_modules_angular_common_locales_fr-CF_mjs\"\n\t],\n\t\"./fr-CG.mjs\": [\n\t\t60017,\n\t\t\"node_modules_angular_common_locales_fr-CG_mjs\"\n\t],\n\t\"./fr-CH.mjs\": [\n\t\t42343,\n\t\t\"node_modules_angular_common_locales_fr-CH_mjs\"\n\t],\n\t\"./fr-CI.mjs\": [\n\t\t93203,\n\t\t\"node_modules_angular_common_locales_fr-CI_mjs\"\n\t],\n\t\"./fr-CM.mjs\": [\n\t\t56154,\n\t\t\"node_modules_angular_common_locales_fr-CM_mjs\"\n\t],\n\t\"./fr-DJ.mjs\": [\n\t\t187,\n\t\t\"node_modules_angular_common_locales_fr-DJ_mjs\"\n\t],\n\t\"./fr-DZ.mjs\": [\n\t\t68246,\n\t\t\"node_modules_angular_common_locales_fr-DZ_mjs\"\n\t],\n\t\"./fr-GA.mjs\": [\n\t\t23019,\n\t\t\"node_modules_angular_common_locales_fr-GA_mjs\"\n\t],\n\t\"./fr-GF.mjs\": [\n\t\t81096,\n\t\t\"node_modules_angular_common_locales_fr-GF_mjs\"\n\t],\n\t\"./fr-GN.mjs\": [\n\t\t5386,\n\t\t\"node_modules_angular_common_locales_fr-GN_mjs\"\n\t],\n\t\"./fr-GP.mjs\": [\n\t\t49336,\n\t\t\"node_modules_angular_common_locales_fr-GP_mjs\"\n\t],\n\t\"./fr-GQ.mjs\": [\n\t\t39754,\n\t\t\"node_modules_angular_common_locales_fr-GQ_mjs\"\n\t],\n\t\"./fr-HT.mjs\": [\n\t\t60939,\n\t\t\"node_modules_angular_common_locales_fr-HT_mjs\"\n\t],\n\t\"./fr-KM.mjs\": [\n\t\t4061,\n\t\t\"node_modules_angular_common_locales_fr-KM_mjs\"\n\t],\n\t\"./fr-LU.mjs\": [\n\t\t79578,\n\t\t\"node_modules_angular_common_locales_fr-LU_mjs\"\n\t],\n\t\"./fr-MA.mjs\": [\n\t\t27155,\n\t\t\"node_modules_angular_common_locales_fr-MA_mjs\"\n\t],\n\t\"./fr-MC.mjs\": [\n\t\t81721,\n\t\t\"node_modules_angular_common_locales_fr-MC_mjs\"\n\t],\n\t\"./fr-MF.mjs\": [\n\t\t60884,\n\t\t\"node_modules_angular_common_locales_fr-MF_mjs\"\n\t],\n\t\"./fr-MG.mjs\": [\n\t\t97693,\n\t\t\"node_modules_angular_common_locales_fr-MG_mjs\"\n\t],\n\t\"./fr-ML.mjs\": [\n\t\t48201,\n\t\t\"node_modules_angular_common_locales_fr-ML_mjs\"\n\t],\n\t\"./fr-MQ.mjs\": [\n\t\t69170,\n\t\t\"node_modules_angular_common_locales_fr-MQ_mjs\"\n\t],\n\t\"./fr-MR.mjs\": [\n\t\t16960,\n\t\t\"node_modules_angular_common_locales_fr-MR_mjs\"\n\t],\n\t\"./fr-MU.mjs\": [\n\t\t11498,\n\t\t\"node_modules_angular_common_locales_fr-MU_mjs\"\n\t],\n\t\"./fr-NC.mjs\": [\n\t\t36454,\n\t\t\"node_modules_angular_common_locales_fr-NC_mjs\"\n\t],\n\t\"./fr-NE.mjs\": [\n\t\t19446,\n\t\t\"node_modules_angular_common_locales_fr-NE_mjs\"\n\t],\n\t\"./fr-PF.mjs\": [\n\t\t10101,\n\t\t\"node_modules_angular_common_locales_fr-PF_mjs\"\n\t],\n\t\"./fr-PM.mjs\": [\n\t\t44033,\n\t\t\"node_modules_angular_common_locales_fr-PM_mjs\"\n\t],\n\t\"./fr-RE.mjs\": [\n\t\t75644,\n\t\t\"node_modules_angular_common_locales_fr-RE_mjs\"\n\t],\n\t\"./fr-RW.mjs\": [\n\t\t7108,\n\t\t\"node_modules_angular_common_locales_fr-RW_mjs\"\n\t],\n\t\"./fr-SC.mjs\": [\n\t\t85441,\n\t\t\"node_modules_angular_common_locales_fr-SC_mjs\"\n\t],\n\t\"./fr-SN.mjs\": [\n\t\t53342,\n\t\t\"node_modules_angular_common_locales_fr-SN_mjs\"\n\t],\n\t\"./fr-SY.mjs\": [\n\t\t94253,\n\t\t\"node_modules_angular_common_locales_fr-SY_mjs\"\n\t],\n\t\"./fr-TD.mjs\": [\n\t\t40834,\n\t\t\"node_modules_angular_common_locales_fr-TD_mjs\"\n\t],\n\t\"./fr-TG.mjs\": [\n\t\t62555,\n\t\t\"node_modules_angular_common_locales_fr-TG_mjs\"\n\t],\n\t\"./fr-TN.mjs\": [\n\t\t12957,\n\t\t\"node_modules_angular_common_locales_fr-TN_mjs\"\n\t],\n\t\"./fr-VU.mjs\": [\n\t\t92155,\n\t\t\"node_modules_angular_common_locales_fr-VU_mjs\"\n\t],\n\t\"./fr-WF.mjs\": [\n\t\t38870,\n\t\t\"node_modules_angular_common_locales_fr-WF_mjs\"\n\t],\n\t\"./fr-YT.mjs\": [\n\t\t47688,\n\t\t\"node_modules_angular_common_locales_fr-YT_mjs\"\n\t],\n\t\"./fr.mjs\": [\n\t\t58384,\n\t\t\"node_modules_angular_common_locales_fr_mjs\"\n\t],\n\t\"./fur.mjs\": [\n\t\t10491,\n\t\t\"node_modules_angular_common_locales_fur_mjs\"\n\t],\n\t\"./fy.mjs\": [\n\t\t48186,\n\t\t\"node_modules_angular_common_locales_fy_mjs\"\n\t],\n\t\"./ga-GB.mjs\": [\n\t\t59893,\n\t\t\"node_modules_angular_common_locales_ga-GB_mjs\"\n\t],\n\t\"./ga.mjs\": [\n\t\t64779,\n\t\t\"node_modules_angular_common_locales_ga_mjs\"\n\t],\n\t\"./gd.mjs\": [\n\t\t8395,\n\t\t\"node_modules_angular_common_locales_gd_mjs\"\n\t],\n\t\"./gl.mjs\": [\n\t\t45003,\n\t\t\"node_modules_angular_common_locales_gl_mjs\"\n\t],\n\t\"./gsw-FR.mjs\": [\n\t\t73432,\n\t\t\"node_modules_angular_common_locales_gsw-FR_mjs\"\n\t],\n\t\"./gsw-LI.mjs\": [\n\t\t67575,\n\t\t\"node_modules_angular_common_locales_gsw-LI_mjs\"\n\t],\n\t\"./gsw.mjs\": [\n\t\t72859,\n\t\t\"node_modules_angular_common_locales_gsw_mjs\"\n\t],\n\t\"./gu.mjs\": [\n\t\t97111,\n\t\t\"node_modules_angular_common_locales_gu_mjs\"\n\t],\n\t\"./guz.mjs\": [\n\t\t77724,\n\t\t\"node_modules_angular_common_locales_guz_mjs\"\n\t],\n\t\"./gv.mjs\": [\n\t\t47651,\n\t\t\"node_modules_angular_common_locales_gv_mjs\"\n\t],\n\t\"./ha-GH.mjs\": [\n\t\t23172,\n\t\t\"node_modules_angular_common_locales_ha-GH_mjs\"\n\t],\n\t\"./ha-NE.mjs\": [\n\t\t60741,\n\t\t\"node_modules_angular_common_locales_ha-NE_mjs\"\n\t],\n\t\"./ha.mjs\": [\n\t\t14232,\n\t\t\"node_modules_angular_common_locales_ha_mjs\"\n\t],\n\t\"./haw.mjs\": [\n\t\t48119,\n\t\t\"node_modules_angular_common_locales_haw_mjs\"\n\t],\n\t\"./he.mjs\": [\n\t\t52848,\n\t\t\"node_modules_angular_common_locales_he_mjs\"\n\t],\n\t\"./hi.mjs\": [\n\t\t88432,\n\t\t\"node_modules_angular_common_locales_hi_mjs\"\n\t],\n\t\"./hr-BA.mjs\": [\n\t\t1385,\n\t\t\"node_modules_angular_common_locales_hr-BA_mjs\"\n\t],\n\t\"./hr.mjs\": [\n\t\t9998,\n\t\t\"node_modules_angular_common_locales_hr_mjs\"\n\t],\n\t\"./hsb.mjs\": [\n\t\t67285,\n\t\t\"node_modules_angular_common_locales_hsb_mjs\"\n\t],\n\t\"./hu.mjs\": [\n\t\t24894,\n\t\t\"node_modules_angular_common_locales_hu_mjs\"\n\t],\n\t\"./hy.mjs\": [\n\t\t88407,\n\t\t\"node_modules_angular_common_locales_hy_mjs\"\n\t],\n\t\"./ia.mjs\": [\n\t\t62013,\n\t\t\"node_modules_angular_common_locales_ia_mjs\"\n\t],\n\t\"./id.mjs\": [\n\t\t72606,\n\t\t\"node_modules_angular_common_locales_id_mjs\"\n\t],\n\t\"./ig.mjs\": [\n\t\t47980,\n\t\t\"node_modules_angular_common_locales_ig_mjs\"\n\t],\n\t\"./ii.mjs\": [\n\t\t63852,\n\t\t\"node_modules_angular_common_locales_ii_mjs\"\n\t],\n\t\"./is.mjs\": [\n\t\t25219,\n\t\t\"node_modules_angular_common_locales_is_mjs\"\n\t],\n\t\"./it-CH.mjs\": [\n\t\t88287,\n\t\t\"node_modules_angular_common_locales_it-CH_mjs\"\n\t],\n\t\"./it-SM.mjs\": [\n\t\t37277,\n\t\t\"node_modules_angular_common_locales_it-SM_mjs\"\n\t],\n\t\"./it-VA.mjs\": [\n\t\t45366,\n\t\t\"node_modules_angular_common_locales_it-VA_mjs\"\n\t],\n\t\"./it.mjs\": [\n\t\t4129,\n\t\t\"node_modules_angular_common_locales_it_mjs\"\n\t],\n\t\"./ja.mjs\": [\n\t\t69528,\n\t\t\"node_modules_angular_common_locales_ja_mjs\"\n\t],\n\t\"./jgo.mjs\": [\n\t\t48376,\n\t\t\"node_modules_angular_common_locales_jgo_mjs\"\n\t],\n\t\"./jmc.mjs\": [\n\t\t97393,\n\t\t\"node_modules_angular_common_locales_jmc_mjs\"\n\t],\n\t\"./jv.mjs\": [\n\t\t80832,\n\t\t\"node_modules_angular_common_locales_jv_mjs\"\n\t],\n\t\"./ka.mjs\": [\n\t\t47420,\n\t\t\"node_modules_angular_common_locales_ka_mjs\"\n\t],\n\t\"./kab.mjs\": [\n\t\t76530,\n\t\t\"node_modules_angular_common_locales_kab_mjs\"\n\t],\n\t\"./kam.mjs\": [\n\t\t49787,\n\t\t\"node_modules_angular_common_locales_kam_mjs\"\n\t],\n\t\"./kde.mjs\": [\n\t\t48481,\n\t\t\"node_modules_angular_common_locales_kde_mjs\"\n\t],\n\t\"./kea.mjs\": [\n\t\t5365,\n\t\t\"node_modules_angular_common_locales_kea_mjs\"\n\t],\n\t\"./khq.mjs\": [\n\t\t80914,\n\t\t\"node_modules_angular_common_locales_khq_mjs\"\n\t],\n\t\"./ki.mjs\": [\n\t\t68111,\n\t\t\"node_modules_angular_common_locales_ki_mjs\"\n\t],\n\t\"./kk.mjs\": [\n\t\t46906,\n\t\t\"node_modules_angular_common_locales_kk_mjs\"\n\t],\n\t\"./kkj.mjs\": [\n\t\t19275,\n\t\t\"node_modules_angular_common_locales_kkj_mjs\"\n\t],\n\t\"./kl.mjs\": [\n\t\t51362,\n\t\t\"node_modules_angular_common_locales_kl_mjs\"\n\t],\n\t\"./kln.mjs\": [\n\t\t16191,\n\t\t\"node_modules_angular_common_locales_kln_mjs\"\n\t],\n\t\"./km.mjs\": [\n\t\t25392,\n\t\t\"node_modules_angular_common_locales_km_mjs\"\n\t],\n\t\"./kn.mjs\": [\n\t\t59475,\n\t\t\"node_modules_angular_common_locales_kn_mjs\"\n\t],\n\t\"./ko-KP.mjs\": [\n\t\t52919,\n\t\t\"node_modules_angular_common_locales_ko-KP_mjs\"\n\t],\n\t\"./ko.mjs\": [\n\t\t74618,\n\t\t\"node_modules_angular_common_locales_ko_mjs\"\n\t],\n\t\"./kok.mjs\": [\n\t\t37090,\n\t\t\"node_modules_angular_common_locales_kok_mjs\"\n\t],\n\t\"./ks-Arab.mjs\": [\n\t\t98927,\n\t\t\"node_modules_angular_common_locales_ks-Arab_mjs\"\n\t],\n\t\"./ks.mjs\": [\n\t\t42127,\n\t\t\"node_modules_angular_common_locales_ks_mjs\"\n\t],\n\t\"./ksb.mjs\": [\n\t\t19474,\n\t\t\"node_modules_angular_common_locales_ksb_mjs\"\n\t],\n\t\"./ksf.mjs\": [\n\t\t6424,\n\t\t\"node_modules_angular_common_locales_ksf_mjs\"\n\t],\n\t\"./ksh.mjs\": [\n\t\t19753,\n\t\t\"node_modules_angular_common_locales_ksh_mjs\"\n\t],\n\t\"./ku.mjs\": [\n\t\t6578,\n\t\t\"node_modules_angular_common_locales_ku_mjs\"\n\t],\n\t\"./kw.mjs\": [\n\t\t48530,\n\t\t\"node_modules_angular_common_locales_kw_mjs\"\n\t],\n\t\"./ky.mjs\": [\n\t\t63682,\n\t\t\"node_modules_angular_common_locales_ky_mjs\"\n\t],\n\t\"./lag.mjs\": [\n\t\t85185,\n\t\t\"node_modules_angular_common_locales_lag_mjs\"\n\t],\n\t\"./lb.mjs\": [\n\t\t86307,\n\t\t\"node_modules_angular_common_locales_lb_mjs\"\n\t],\n\t\"./lg.mjs\": [\n\t\t75613,\n\t\t\"node_modules_angular_common_locales_lg_mjs\"\n\t],\n\t\"./lkt.mjs\": [\n\t\t39939,\n\t\t\"node_modules_angular_common_locales_lkt_mjs\"\n\t],\n\t\"./ln-AO.mjs\": [\n\t\t59318,\n\t\t\"node_modules_angular_common_locales_ln-AO_mjs\"\n\t],\n\t\"./ln-CF.mjs\": [\n\t\t46599,\n\t\t\"node_modules_angular_common_locales_ln-CF_mjs\"\n\t],\n\t\"./ln-CG.mjs\": [\n\t\t98509,\n\t\t\"node_modules_angular_common_locales_ln-CG_mjs\"\n\t],\n\t\"./ln.mjs\": [\n\t\t4902,\n\t\t\"node_modules_angular_common_locales_ln_mjs\"\n\t],\n\t\"./lo.mjs\": [\n\t\t21037,\n\t\t\"node_modules_angular_common_locales_lo_mjs\"\n\t],\n\t\"./lrc-IQ.mjs\": [\n\t\t93647,\n\t\t\"node_modules_angular_common_locales_lrc-IQ_mjs\"\n\t],\n\t\"./lrc.mjs\": [\n\t\t3604,\n\t\t\"node_modules_angular_common_locales_lrc_mjs\"\n\t],\n\t\"./lt.mjs\": [\n\t\t25461,\n\t\t\"node_modules_angular_common_locales_lt_mjs\"\n\t],\n\t\"./lu.mjs\": [\n\t\t42371,\n\t\t\"node_modules_angular_common_locales_lu_mjs\"\n\t],\n\t\"./luo.mjs\": [\n\t\t96071,\n\t\t\"node_modules_angular_common_locales_luo_mjs\"\n\t],\n\t\"./luy.mjs\": [\n\t\t82258,\n\t\t\"node_modules_angular_common_locales_luy_mjs\"\n\t],\n\t\"./lv.mjs\": [\n\t\t14305,\n\t\t\"node_modules_angular_common_locales_lv_mjs\"\n\t],\n\t\"./mai.mjs\": [\n\t\t19414,\n\t\t\"node_modules_angular_common_locales_mai_mjs\"\n\t],\n\t\"./mas-TZ.mjs\": [\n\t\t8275,\n\t\t\"node_modules_angular_common_locales_mas-TZ_mjs\"\n\t],\n\t\"./mas.mjs\": [\n\t\t82439,\n\t\t\"node_modules_angular_common_locales_mas_mjs\"\n\t],\n\t\"./mer.mjs\": [\n\t\t2176,\n\t\t\"node_modules_angular_common_locales_mer_mjs\"\n\t],\n\t\"./mfe.mjs\": [\n\t\t63779,\n\t\t\"node_modules_angular_common_locales_mfe_mjs\"\n\t],\n\t\"./mg.mjs\": [\n\t\t71590,\n\t\t\"node_modules_angular_common_locales_mg_mjs\"\n\t],\n\t\"./mgh.mjs\": [\n\t\t44516,\n\t\t\"node_modules_angular_common_locales_mgh_mjs\"\n\t],\n\t\"./mgo.mjs\": [\n\t\t23599,\n\t\t\"node_modules_angular_common_locales_mgo_mjs\"\n\t],\n\t\"./mi.mjs\": [\n\t\t83061,\n\t\t\"node_modules_angular_common_locales_mi_mjs\"\n\t],\n\t\"./mk.mjs\": [\n\t\t80606,\n\t\t\"node_modules_angular_common_locales_mk_mjs\"\n\t],\n\t\"./ml.mjs\": [\n\t\t94372,\n\t\t\"node_modules_angular_common_locales_ml_mjs\"\n\t],\n\t\"./mn.mjs\": [\n\t\t29899,\n\t\t\"node_modules_angular_common_locales_mn_mjs\"\n\t],\n\t\"./mni-Beng.mjs\": [\n\t\t77803,\n\t\t\"node_modules_angular_common_locales_mni-Beng_mjs\"\n\t],\n\t\"./mni.mjs\": [\n\t\t90165,\n\t\t\"node_modules_angular_common_locales_mni_mjs\"\n\t],\n\t\"./mr.mjs\": [\n\t\t33505,\n\t\t\"node_modules_angular_common_locales_mr_mjs\"\n\t],\n\t\"./ms-BN.mjs\": [\n\t\t93744,\n\t\t\"node_modules_angular_common_locales_ms-BN_mjs\"\n\t],\n\t\"./ms-ID.mjs\": [\n\t\t53155,\n\t\t\"node_modules_angular_common_locales_ms-ID_mjs\"\n\t],\n\t\"./ms-SG.mjs\": [\n\t\t82220,\n\t\t\"node_modules_angular_common_locales_ms-SG_mjs\"\n\t],\n\t\"./ms.mjs\": [\n\t\t22176,\n\t\t\"node_modules_angular_common_locales_ms_mjs\"\n\t],\n\t\"./mt.mjs\": [\n\t\t49414,\n\t\t\"node_modules_angular_common_locales_mt_mjs\"\n\t],\n\t\"./mua.mjs\": [\n\t\t80630,\n\t\t\"node_modules_angular_common_locales_mua_mjs\"\n\t],\n\t\"./my.mjs\": [\n\t\t97379,\n\t\t\"node_modules_angular_common_locales_my_mjs\"\n\t],\n\t\"./mzn.mjs\": [\n\t\t67043,\n\t\t\"node_modules_angular_common_locales_mzn_mjs\"\n\t],\n\t\"./naq.mjs\": [\n\t\t3026,\n\t\t\"node_modules_angular_common_locales_naq_mjs\"\n\t],\n\t\"./nb-SJ.mjs\": [\n\t\t47761,\n\t\t\"node_modules_angular_common_locales_nb-SJ_mjs\"\n\t],\n\t\"./nb.mjs\": [\n\t\t74033,\n\t\t\"node_modules_angular_common_locales_nb_mjs\"\n\t],\n\t\"./nd.mjs\": [\n\t\t4759,\n\t\t\"node_modules_angular_common_locales_nd_mjs\"\n\t],\n\t\"./nds-NL.mjs\": [\n\t\t78339,\n\t\t\"node_modules_angular_common_locales_nds-NL_mjs\"\n\t],\n\t\"./nds.mjs\": [\n\t\t12109,\n\t\t\"node_modules_angular_common_locales_nds_mjs\"\n\t],\n\t\"./ne-IN.mjs\": [\n\t\t68074,\n\t\t\"node_modules_angular_common_locales_ne-IN_mjs\"\n\t],\n\t\"./ne.mjs\": [\n\t\t84026,\n\t\t\"node_modules_angular_common_locales_ne_mjs\"\n\t],\n\t\"./nl-AW.mjs\": [\n\t\t99306,\n\t\t\"node_modules_angular_common_locales_nl-AW_mjs\"\n\t],\n\t\"./nl-BE.mjs\": [\n\t\t69012,\n\t\t\"node_modules_angular_common_locales_nl-BE_mjs\"\n\t],\n\t\"./nl-BQ.mjs\": [\n\t\t2802,\n\t\t\"node_modules_angular_common_locales_nl-BQ_mjs\"\n\t],\n\t\"./nl-CW.mjs\": [\n\t\t88193,\n\t\t\"node_modules_angular_common_locales_nl-CW_mjs\"\n\t],\n\t\"./nl-SR.mjs\": [\n\t\t78126,\n\t\t\"node_modules_angular_common_locales_nl-SR_mjs\"\n\t],\n\t\"./nl-SX.mjs\": [\n\t\t2072,\n\t\t\"node_modules_angular_common_locales_nl-SX_mjs\"\n\t],\n\t\"./nl.mjs\": [\n\t\t2293,\n\t\t\"node_modules_angular_common_locales_nl_mjs\"\n\t],\n\t\"./nmg.mjs\": [\n\t\t40867,\n\t\t\"node_modules_angular_common_locales_nmg_mjs\"\n\t],\n\t\"./nn.mjs\": [\n\t\t56900,\n\t\t\"node_modules_angular_common_locales_nn_mjs\"\n\t],\n\t\"./nnh.mjs\": [\n\t\t25186,\n\t\t\"node_modules_angular_common_locales_nnh_mjs\"\n\t],\n\t\"./no.mjs\": [\n\t\t70152,\n\t\t\"node_modules_angular_common_locales_no_mjs\"\n\t],\n\t\"./nus.mjs\": [\n\t\t10393,\n\t\t\"node_modules_angular_common_locales_nus_mjs\"\n\t],\n\t\"./nyn.mjs\": [\n\t\t84336,\n\t\t\"node_modules_angular_common_locales_nyn_mjs\"\n\t],\n\t\"./om-KE.mjs\": [\n\t\t87298,\n\t\t\"node_modules_angular_common_locales_om-KE_mjs\"\n\t],\n\t\"./om.mjs\": [\n\t\t1423,\n\t\t\"node_modules_angular_common_locales_om_mjs\"\n\t],\n\t\"./or.mjs\": [\n\t\t47201,\n\t\t\"node_modules_angular_common_locales_or_mjs\"\n\t],\n\t\"./os-RU.mjs\": [\n\t\t93962,\n\t\t\"node_modules_angular_common_locales_os-RU_mjs\"\n\t],\n\t\"./os.mjs\": [\n\t\t36817,\n\t\t\"node_modules_angular_common_locales_os_mjs\"\n\t],\n\t\"./pa-Arab.mjs\": [\n\t\t55156,\n\t\t\"node_modules_angular_common_locales_pa-Arab_mjs\"\n\t],\n\t\"./pa-Guru.mjs\": [\n\t\t24796,\n\t\t\"node_modules_angular_common_locales_pa-Guru_mjs\"\n\t],\n\t\"./pa.mjs\": [\n\t\t32148,\n\t\t\"node_modules_angular_common_locales_pa_mjs\"\n\t],\n\t\"./pcm.mjs\": [\n\t\t28710,\n\t\t\"node_modules_angular_common_locales_pcm_mjs\"\n\t],\n\t\"./pl.mjs\": [\n\t\t91499,\n\t\t\"node_modules_angular_common_locales_pl_mjs\"\n\t],\n\t\"./ps-PK.mjs\": [\n\t\t5727,\n\t\t\"node_modules_angular_common_locales_ps-PK_mjs\"\n\t],\n\t\"./ps.mjs\": [\n\t\t87475,\n\t\t\"node_modules_angular_common_locales_ps_mjs\"\n\t],\n\t\"./pt-AO.mjs\": [\n\t\t48413,\n\t\t\"node_modules_angular_common_locales_pt-AO_mjs\"\n\t],\n\t\"./pt-CH.mjs\": [\n\t\t81081,\n\t\t\"node_modules_angular_common_locales_pt-CH_mjs\"\n\t],\n\t\"./pt-CV.mjs\": [\n\t\t87246,\n\t\t\"node_modules_angular_common_locales_pt-CV_mjs\"\n\t],\n\t\"./pt-GQ.mjs\": [\n\t\t19188,\n\t\t\"node_modules_angular_common_locales_pt-GQ_mjs\"\n\t],\n\t\"./pt-GW.mjs\": [\n\t\t51669,\n\t\t\"node_modules_angular_common_locales_pt-GW_mjs\"\n\t],\n\t\"./pt-LU.mjs\": [\n\t\t33204,\n\t\t\"node_modules_angular_common_locales_pt-LU_mjs\"\n\t],\n\t\"./pt-MO.mjs\": [\n\t\t82366,\n\t\t\"node_modules_angular_common_locales_pt-MO_mjs\"\n\t],\n\t\"./pt-MZ.mjs\": [\n\t\t88119,\n\t\t\"node_modules_angular_common_locales_pt-MZ_mjs\"\n\t],\n\t\"./pt-PT.mjs\": [\n\t\t18296,\n\t\t\"node_modules_angular_common_locales_pt-PT_mjs\"\n\t],\n\t\"./pt-ST.mjs\": [\n\t\t47904,\n\t\t\"node_modules_angular_common_locales_pt-ST_mjs\"\n\t],\n\t\"./pt-TL.mjs\": [\n\t\t69954,\n\t\t\"node_modules_angular_common_locales_pt-TL_mjs\"\n\t],\n\t\"./pt.mjs\": [\n\t\t27423,\n\t\t\"node_modules_angular_common_locales_pt_mjs\"\n\t],\n\t\"./qu-BO.mjs\": [\n\t\t88775,\n\t\t\"node_modules_angular_common_locales_qu-BO_mjs\"\n\t],\n\t\"./qu-EC.mjs\": [\n\t\t37603,\n\t\t\"node_modules_angular_common_locales_qu-EC_mjs\"\n\t],\n\t\"./qu.mjs\": [\n\t\t14709,\n\t\t\"node_modules_angular_common_locales_qu_mjs\"\n\t],\n\t\"./rm.mjs\": [\n\t\t82082,\n\t\t\"node_modules_angular_common_locales_rm_mjs\"\n\t],\n\t\"./rn.mjs\": [\n\t\t22221,\n\t\t\"node_modules_angular_common_locales_rn_mjs\"\n\t],\n\t\"./ro-MD.mjs\": [\n\t\t59941,\n\t\t\"node_modules_angular_common_locales_ro-MD_mjs\"\n\t],\n\t\"./ro.mjs\": [\n\t\t85040,\n\t\t\"node_modules_angular_common_locales_ro_mjs\"\n\t],\n\t\"./rof.mjs\": [\n\t\t94146,\n\t\t\"node_modules_angular_common_locales_rof_mjs\"\n\t],\n\t\"./root.mjs\": [\n\t\t41396,\n\t\t\"node_modules_angular_common_locales_root_mjs\"\n\t],\n\t\"./ru-BY.mjs\": [\n\t\t89392,\n\t\t\"node_modules_angular_common_locales_ru-BY_mjs\"\n\t],\n\t\"./ru-KG.mjs\": [\n\t\t91856,\n\t\t\"node_modules_angular_common_locales_ru-KG_mjs\"\n\t],\n\t\"./ru-KZ.mjs\": [\n\t\t44316,\n\t\t\"node_modules_angular_common_locales_ru-KZ_mjs\"\n\t],\n\t\"./ru-MD.mjs\": [\n\t\t82509,\n\t\t\"node_modules_angular_common_locales_ru-MD_mjs\"\n\t],\n\t\"./ru-UA.mjs\": [\n\t\t55178,\n\t\t\"node_modules_angular_common_locales_ru-UA_mjs\"\n\t],\n\t\"./ru.mjs\": [\n\t\t17954,\n\t\t\"node_modules_angular_common_locales_ru_mjs\"\n\t],\n\t\"./rw.mjs\": [\n\t\t99224,\n\t\t\"node_modules_angular_common_locales_rw_mjs\"\n\t],\n\t\"./rwk.mjs\": [\n\t\t56148,\n\t\t\"node_modules_angular_common_locales_rwk_mjs\"\n\t],\n\t\"./sa.mjs\": [\n\t\t67200,\n\t\t\"node_modules_angular_common_locales_sa_mjs\"\n\t],\n\t\"./sah.mjs\": [\n\t\t83534,\n\t\t\"node_modules_angular_common_locales_sah_mjs\"\n\t],\n\t\"./saq.mjs\": [\n\t\t29039,\n\t\t\"node_modules_angular_common_locales_saq_mjs\"\n\t],\n\t\"./sat-Olck.mjs\": [\n\t\t53385,\n\t\t\"node_modules_angular_common_locales_sat-Olck_mjs\"\n\t],\n\t\"./sat.mjs\": [\n\t\t25652,\n\t\t\"node_modules_angular_common_locales_sat_mjs\"\n\t],\n\t\"./sbp.mjs\": [\n\t\t31407,\n\t\t\"node_modules_angular_common_locales_sbp_mjs\"\n\t],\n\t\"./sd-Arab.mjs\": [\n\t\t75747,\n\t\t\"node_modules_angular_common_locales_sd-Arab_mjs\"\n\t],\n\t\"./sd-Deva.mjs\": [\n\t\t20506,\n\t\t\"node_modules_angular_common_locales_sd-Deva_mjs\"\n\t],\n\t\"./sd.mjs\": [\n\t\t70325,\n\t\t\"node_modules_angular_common_locales_sd_mjs\"\n\t],\n\t\"./se-FI.mjs\": [\n\t\t5935,\n\t\t\"node_modules_angular_common_locales_se-FI_mjs\"\n\t],\n\t\"./se-SE.mjs\": [\n\t\t75170,\n\t\t\"node_modules_angular_common_locales_se-SE_mjs\"\n\t],\n\t\"./se.mjs\": [\n\t\t61912,\n\t\t\"node_modules_angular_common_locales_se_mjs\"\n\t],\n\t\"./seh.mjs\": [\n\t\t64486,\n\t\t\"node_modules_angular_common_locales_seh_mjs\"\n\t],\n\t\"./ses.mjs\": [\n\t\t43640,\n\t\t\"node_modules_angular_common_locales_ses_mjs\"\n\t],\n\t\"./sg.mjs\": [\n\t\t42845,\n\t\t\"node_modules_angular_common_locales_sg_mjs\"\n\t],\n\t\"./shi-Latn.mjs\": [\n\t\t207,\n\t\t\"node_modules_angular_common_locales_shi-Latn_mjs\"\n\t],\n\t\"./shi-Tfng.mjs\": [\n\t\t67606,\n\t\t\"node_modules_angular_common_locales_shi-Tfng_mjs\"\n\t],\n\t\"./shi.mjs\": [\n\t\t90990,\n\t\t\"node_modules_angular_common_locales_shi_mjs\"\n\t],\n\t\"./si.mjs\": [\n\t\t98823,\n\t\t\"node_modules_angular_common_locales_si_mjs\"\n\t],\n\t\"./sk.mjs\": [\n\t\t70473,\n\t\t\"node_modules_angular_common_locales_sk_mjs\"\n\t],\n\t\"./sl.mjs\": [\n\t\t99108,\n\t\t\"node_modules_angular_common_locales_sl_mjs\"\n\t],\n\t\"./smn.mjs\": [\n\t\t80858,\n\t\t\"node_modules_angular_common_locales_smn_mjs\"\n\t],\n\t\"./sn.mjs\": [\n\t\t55281,\n\t\t\"node_modules_angular_common_locales_sn_mjs\"\n\t],\n\t\"./so-DJ.mjs\": [\n\t\t94875,\n\t\t\"node_modules_angular_common_locales_so-DJ_mjs\"\n\t],\n\t\"./so-ET.mjs\": [\n\t\t17990,\n\t\t\"node_modules_angular_common_locales_so-ET_mjs\"\n\t],\n\t\"./so-KE.mjs\": [\n\t\t12565,\n\t\t\"node_modules_angular_common_locales_so-KE_mjs\"\n\t],\n\t\"./so.mjs\": [\n\t\t54875,\n\t\t\"node_modules_angular_common_locales_so_mjs\"\n\t],\n\t\"./sq-MK.mjs\": [\n\t\t16633,\n\t\t\"node_modules_angular_common_locales_sq-MK_mjs\"\n\t],\n\t\"./sq-XK.mjs\": [\n\t\t37627,\n\t\t\"node_modules_angular_common_locales_sq-XK_mjs\"\n\t],\n\t\"./sq.mjs\": [\n\t\t7951,\n\t\t\"node_modules_angular_common_locales_sq_mjs\"\n\t],\n\t\"./sr-Cyrl-BA.mjs\": [\n\t\t52386,\n\t\t\"node_modules_angular_common_locales_sr-Cyrl-BA_mjs\"\n\t],\n\t\"./sr-Cyrl-ME.mjs\": [\n\t\t48232,\n\t\t\"node_modules_angular_common_locales_sr-Cyrl-ME_mjs\"\n\t],\n\t\"./sr-Cyrl-XK.mjs\": [\n\t\t69294,\n\t\t\"node_modules_angular_common_locales_sr-Cyrl-XK_mjs\"\n\t],\n\t\"./sr-Cyrl.mjs\": [\n\t\t17595,\n\t\t\"node_modules_angular_common_locales_sr-Cyrl_mjs\"\n\t],\n\t\"./sr-Latn-BA.mjs\": [\n\t\t51457,\n\t\t\"node_modules_angular_common_locales_sr-Latn-BA_mjs\"\n\t],\n\t\"./sr-Latn-ME.mjs\": [\n\t\t67419,\n\t\t\"node_modules_angular_common_locales_sr-Latn-ME_mjs\"\n\t],\n\t\"./sr-Latn-XK.mjs\": [\n\t\t28759,\n\t\t\"node_modules_angular_common_locales_sr-Latn-XK_mjs\"\n\t],\n\t\"./sr-Latn.mjs\": [\n\t\t81673,\n\t\t\"node_modules_angular_common_locales_sr-Latn_mjs\"\n\t],\n\t\"./sr.mjs\": [\n\t\t69079,\n\t\t\"node_modules_angular_common_locales_sr_mjs\"\n\t],\n\t\"./su-Latn.mjs\": [\n\t\t14704,\n\t\t\"node_modules_angular_common_locales_su-Latn_mjs\"\n\t],\n\t\"./su.mjs\": [\n\t\t55564,\n\t\t\"node_modules_angular_common_locales_su_mjs\"\n\t],\n\t\"./sv-AX.mjs\": [\n\t\t12091,\n\t\t\"node_modules_angular_common_locales_sv-AX_mjs\"\n\t],\n\t\"./sv-FI.mjs\": [\n\t\t20419,\n\t\t\"node_modules_angular_common_locales_sv-FI_mjs\"\n\t],\n\t\"./sv.mjs\": [\n\t\t75664,\n\t\t\"node_modules_angular_common_locales_sv_mjs\"\n\t],\n\t\"./sw-CD.mjs\": [\n\t\t69092,\n\t\t\"node_modules_angular_common_locales_sw-CD_mjs\"\n\t],\n\t\"./sw-KE.mjs\": [\n\t\t21117,\n\t\t\"node_modules_angular_common_locales_sw-KE_mjs\"\n\t],\n\t\"./sw-UG.mjs\": [\n\t\t49802,\n\t\t\"node_modules_angular_common_locales_sw-UG_mjs\"\n\t],\n\t\"./sw.mjs\": [\n\t\t28599,\n\t\t\"node_modules_angular_common_locales_sw_mjs\"\n\t],\n\t\"./ta-LK.mjs\": [\n\t\t24135,\n\t\t\"node_modules_angular_common_locales_ta-LK_mjs\"\n\t],\n\t\"./ta-MY.mjs\": [\n\t\t8082,\n\t\t\"node_modules_angular_common_locales_ta-MY_mjs\"\n\t],\n\t\"./ta-SG.mjs\": [\n\t\t80484,\n\t\t\"node_modules_angular_common_locales_ta-SG_mjs\"\n\t],\n\t\"./ta.mjs\": [\n\t\t78608,\n\t\t\"node_modules_angular_common_locales_ta_mjs\"\n\t],\n\t\"./te.mjs\": [\n\t\t2200,\n\t\t\"node_modules_angular_common_locales_te_mjs\"\n\t],\n\t\"./teo-KE.mjs\": [\n\t\t99489,\n\t\t\"node_modules_angular_common_locales_teo-KE_mjs\"\n\t],\n\t\"./teo.mjs\": [\n\t\t51733,\n\t\t\"node_modules_angular_common_locales_teo_mjs\"\n\t],\n\t\"./tg.mjs\": [\n\t\t16032,\n\t\t\"node_modules_angular_common_locales_tg_mjs\"\n\t],\n\t\"./th.mjs\": [\n\t\t1291,\n\t\t\"node_modules_angular_common_locales_th_mjs\"\n\t],\n\t\"./ti-ER.mjs\": [\n\t\t56287,\n\t\t\"node_modules_angular_common_locales_ti-ER_mjs\"\n\t],\n\t\"./ti.mjs\": [\n\t\t4046,\n\t\t\"node_modules_angular_common_locales_ti_mjs\"\n\t],\n\t\"./tk.mjs\": [\n\t\t98904,\n\t\t\"node_modules_angular_common_locales_tk_mjs\"\n\t],\n\t\"./to.mjs\": [\n\t\t92333,\n\t\t\"node_modules_angular_common_locales_to_mjs\"\n\t],\n\t\"./tr-CY.mjs\": [\n\t\t52558,\n\t\t\"node_modules_angular_common_locales_tr-CY_mjs\"\n\t],\n\t\"./tr.mjs\": [\n\t\t55763,\n\t\t\"node_modules_angular_common_locales_tr_mjs\"\n\t],\n\t\"./tt.mjs\": [\n\t\t49299,\n\t\t\"node_modules_angular_common_locales_tt_mjs\"\n\t],\n\t\"./twq.mjs\": [\n\t\t94050,\n\t\t\"node_modules_angular_common_locales_twq_mjs\"\n\t],\n\t\"./tzm.mjs\": [\n\t\t90327,\n\t\t\"node_modules_angular_common_locales_tzm_mjs\"\n\t],\n\t\"./ug.mjs\": [\n\t\t44475,\n\t\t\"node_modules_angular_common_locales_ug_mjs\"\n\t],\n\t\"./uk.mjs\": [\n\t\t21221,\n\t\t\"node_modules_angular_common_locales_uk_mjs\"\n\t],\n\t\"./ur-IN.mjs\": [\n\t\t73373,\n\t\t\"node_modules_angular_common_locales_ur-IN_mjs\"\n\t],\n\t\"./ur.mjs\": [\n\t\t71412,\n\t\t\"node_modules_angular_common_locales_ur_mjs\"\n\t],\n\t\"./uz-Arab.mjs\": [\n\t\t93969,\n\t\t\"node_modules_angular_common_locales_uz-Arab_mjs\"\n\t],\n\t\"./uz-Cyrl.mjs\": [\n\t\t59794,\n\t\t\"node_modules_angular_common_locales_uz-Cyrl_mjs\"\n\t],\n\t\"./uz-Latn.mjs\": [\n\t\t87218,\n\t\t\"node_modules_angular_common_locales_uz-Latn_mjs\"\n\t],\n\t\"./uz.mjs\": [\n\t\t26609,\n\t\t\"node_modules_angular_common_locales_uz_mjs\"\n\t],\n\t\"./vai-Latn.mjs\": [\n\t\t79381,\n\t\t\"node_modules_angular_common_locales_vai-Latn_mjs\"\n\t],\n\t\"./vai-Vaii.mjs\": [\n\t\t12504,\n\t\t\"node_modules_angular_common_locales_vai-Vaii_mjs\"\n\t],\n\t\"./vai.mjs\": [\n\t\t42057,\n\t\t\"node_modules_angular_common_locales_vai_mjs\"\n\t],\n\t\"./vi.mjs\": [\n\t\t40617,\n\t\t\"node_modules_angular_common_locales_vi_mjs\"\n\t],\n\t\"./vun.mjs\": [\n\t\t43722,\n\t\t\"node_modules_angular_common_locales_vun_mjs\"\n\t],\n\t\"./wae.mjs\": [\n\t\t78458,\n\t\t\"node_modules_angular_common_locales_wae_mjs\"\n\t],\n\t\"./wo.mjs\": [\n\t\t68424,\n\t\t\"node_modules_angular_common_locales_wo_mjs\"\n\t],\n\t\"./xh.mjs\": [\n\t\t49094,\n\t\t\"node_modules_angular_common_locales_xh_mjs\"\n\t],\n\t\"./xog.mjs\": [\n\t\t80083,\n\t\t\"node_modules_angular_common_locales_xog_mjs\"\n\t],\n\t\"./yav.mjs\": [\n\t\t95397,\n\t\t\"node_modules_angular_common_locales_yav_mjs\"\n\t],\n\t\"./yi.mjs\": [\n\t\t52007,\n\t\t\"node_modules_angular_common_locales_yi_mjs\"\n\t],\n\t\"./yo-BJ.mjs\": [\n\t\t69969,\n\t\t\"node_modules_angular_common_locales_yo-BJ_mjs\"\n\t],\n\t\"./yo.mjs\": [\n\t\t14412,\n\t\t\"node_modules_angular_common_locales_yo_mjs\"\n\t],\n\t\"./yue-Hans.mjs\": [\n\t\t43280,\n\t\t\"node_modules_angular_common_locales_yue-Hans_mjs\"\n\t],\n\t\"./yue-Hant.mjs\": [\n\t\t73765,\n\t\t\"node_modules_angular_common_locales_yue-Hant_mjs\"\n\t],\n\t\"./yue.mjs\": [\n\t\t68547,\n\t\t\"node_modules_angular_common_locales_yue_mjs\"\n\t],\n\t\"./zgh.mjs\": [\n\t\t93235,\n\t\t\"node_modules_angular_common_locales_zgh_mjs\"\n\t],\n\t\"./zh-Hans-HK.mjs\": [\n\t\t20318,\n\t\t\"node_modules_angular_common_locales_zh-Hans-HK_mjs\"\n\t],\n\t\"./zh-Hans-MO.mjs\": [\n\t\t20741,\n\t\t\"node_modules_angular_common_locales_zh-Hans-MO_mjs\"\n\t],\n\t\"./zh-Hans-SG.mjs\": [\n\t\t54023,\n\t\t\"node_modules_angular_common_locales_zh-Hans-SG_mjs\"\n\t],\n\t\"./zh-Hans.mjs\": [\n\t\t5138,\n\t\t\"node_modules_angular_common_locales_zh-Hans_mjs\"\n\t],\n\t\"./zh-Hant-HK.mjs\": [\n\t\t5040,\n\t\t\"node_modules_angular_common_locales_zh-Hant-HK_mjs\"\n\t],\n\t\"./zh-Hant-MO.mjs\": [\n\t\t74723,\n\t\t\"node_modules_angular_common_locales_zh-Hant-MO_mjs\"\n\t],\n\t\"./zh-Hant.mjs\": [\n\t\t78324,\n\t\t\"node_modules_angular_common_locales_zh-Hant_mjs\"\n\t],\n\t\"./zh.mjs\": [\n\t\t98537,\n\t\t\"node_modules_angular_common_locales_zh_mjs\"\n\t],\n\t\"./zu.mjs\": [\n\t\t15532,\n\t\t\"node_modules_angular_common_locales_zu_mjs\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(() => {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 14300;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./ar.mjs\": [\n\t\t46310,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_ar_mjs\"\n\t],\n\t\"./bg.mjs\": [\n\t\t32271,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_bg_mjs\"\n\t],\n\t\"./ca.mjs\": [\n\t\t42831,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_ca_mjs\"\n\t],\n\t\"./cs.mjs\": [\n\t\t82167,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_cs_mjs\"\n\t],\n\t\"./da.mjs\": [\n\t\t832,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_da_mjs\"\n\t],\n\t\"./de.mjs\": [\n\t\t29712,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_de_mjs\"\n\t],\n\t\"./en-gb.mjs\": [\n\t\t4807,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_en-gb_mjs\"\n\t],\n\t\"./es-do.mjs\": [\n\t\t75904,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_es-do_mjs\"\n\t],\n\t\"./es-pr.mjs\": [\n\t\t1554,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_es-pr_mjs\"\n\t],\n\t\"./es-us.mjs\": [\n\t\t77661,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_es-us_mjs\"\n\t],\n\t\"./es.mjs\": [\n\t\t78598,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_es_mjs\"\n\t],\n\t\"./et.mjs\": [\n\t\t50658,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_et_mjs\"\n\t],\n\t\"./fi.mjs\": [\n\t\t31581,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_fi_mjs\"\n\t],\n\t\"./fr.mjs\": [\n\t\t80377,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_fr_mjs\"\n\t],\n\t\"./gl.mjs\": [\n\t\t68835,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_gl_mjs\"\n\t],\n\t\"./he.mjs\": [\n\t\t18676,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_he_mjs\"\n\t],\n\t\"./hi.mjs\": [\n\t\t77456,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_hi_mjs\"\n\t],\n\t\"./hr.mjs\": [\n\t\t91683,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_hr_mjs\"\n\t],\n\t\"./hu.mjs\": [\n\t\t88946,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_hu_mjs\"\n\t],\n\t\"./id.mjs\": [\n\t\t74099,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_id_mjs\"\n\t],\n\t\"./it.mjs\": [\n\t\t31159,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_it_mjs\"\n\t],\n\t\"./ja.mjs\": [\n\t\t98895,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_ja_mjs\"\n\t],\n\t\"./ka.mjs\": [\n\t\t93120,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_ka_mjs\"\n\t],\n\t\"./kk.mjs\": [\n\t\t16517,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_kk_mjs\"\n\t],\n\t\"./ko.mjs\": [\n\t\t43147,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_ko_mjs\"\n\t],\n\t\"./lt.mjs\": [\n\t\t34429,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_lt_mjs\"\n\t],\n\t\"./lv.mjs\": [\n\t\t66420,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_lv_mjs\"\n\t],\n\t\"./mn.mjs\": [\n\t\t20634,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_mn_mjs\"\n\t],\n\t\"./nb.mjs\": [\n\t\t93210,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_nb_mjs\"\n\t],\n\t\"./nl-be.mjs\": [\n\t\t98556,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_nl-be_mjs\"\n\t],\n\t\"./nl.mjs\": [\n\t\t5352,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_nl_mjs\"\n\t],\n\t\"./pl.mjs\": [\n\t\t46190,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_pl_mjs\"\n\t],\n\t\"./pt-br.mjs\": [\n\t\t11879,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_pt-br_mjs\"\n\t],\n\t\"./ro.mjs\": [\n\t\t39117,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_ro_mjs\"\n\t],\n\t\"./ru.mjs\": [\n\t\t84249,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_ru_mjs\"\n\t],\n\t\"./sk.mjs\": [\n\t\t25349,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_sk_mjs\"\n\t],\n\t\"./sl.mjs\": [\n\t\t75594,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_sl_mjs\"\n\t],\n\t\"./sq.mjs\": [\n\t\t7671,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_sq_mjs\"\n\t],\n\t\"./sv.mjs\": [\n\t\t19578,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_sv_mjs\"\n\t],\n\t\"./th-be.mjs\": [\n\t\t83134,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_th-be_mjs\"\n\t],\n\t\"./th.mjs\": [\n\t\t8956,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_th_mjs\"\n\t],\n\t\"./tr.mjs\": [\n\t\t22613,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_tr_mjs\"\n\t],\n\t\"./uk.mjs\": [\n\t\t3366,\n\t\t\"default-node_modules_ngx-bootstrap_chronos_esm2020_locale_locales_mjs-node_modules_ngx-bootst-f2107c\",\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_uk_mjs\"\n\t],\n\t\"./vi.mjs\": [\n\t\t32037,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_vi_mjs\"\n\t],\n\t\"./zh-cn.mjs\": [\n\t\t51277,\n\t\t\"node_modules_ngx-bootstrap_chronos_esm2020_i18n_zh-cn_mjs\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(() => {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 12286;\nmodule.exports = webpackAsyncContext;"],"names":[],"sourceRoot":"webpack:///"}