{"version":3,"sources":["/./$_lazy_route_resource lazy namespace object","/./node_modules/@ionic/core/dist/esm-es5 lazy ^\\.\\/.*\\.entry\\.js$ include: \\.entry\\.js$ exclude: \\.system\\.entry\\.js$ namespace object","/./node_modules/moment/locale sync ^\\.\\/.*$","/./src/app/account/login/login.page.html","/./src/app/account/logout/logout.page.html","/./src/app/account/password-reset/password-reset.page.html","/./src/app/account/register/register.page.html","/./src/app/account/register/security-question/security-question.page.html","/./src/app/app.component.html","/./src/app/components/accordion/accordion-panel/accordion-panel.component.html","/./src/app/components/accordion/accordion/accordion.component.html","/./src/app/main/admin/admin.page.html","/./src/app/main/certification-score/certification-score.page.html","/./src/app/main/certification/certification-answer/certification-answer.component.html","/./src/app/main/certification/certification-category/certfication-category.component.html","/./src/app/main/certification/certification-validation/certification-validation.page.html","/./src/app/main/certification/certification.page.html","/./src/app/main/dashboard/dashboard.page.html","/./src/app/main/farmer/farmer.page.html","/./src/app/main/farmer/manure-storage/manure-storage.page.html","/./src/app/main/farmers/farmers.page.html","/./src/app/main/farmers/profile/profile.page.html","/./src/app/main/help-desk/help-desk.page.html","/./src/app/main/home/home.page.html","/./src/app/main/privacy/privacy.page.html","/./src/app/main/privacy/private-data.page.html","/./src/app/main/user/user.page.html","/./src/app/main/users/users.page.html","/./src/app/main/verification/verification-question-note/verification-question-note.page.html","/./src/app/main/verification/verification.page.html","/./src/app/main/verifications/verifications.page.html","/./src/app/AppPreBootstrap.ts","/./src/app/account/account-routing-paths.ts","/./src/app/account/login/login.module.ts","/./src/app/account/login/login.page.scss","/./src/app/account/login/login.page.ts","/./src/app/account/login/login.service.ts","/./src/app/account/logout/logout.module.ts","/./src/app/account/logout/logout.page.scss","/./src/app/account/logout/logout.page.ts","/./src/app/account/password-reset/password-reset.module.ts","/./src/app/account/password-reset/password-reset.page.scss","/./src/app/account/password-reset/password-reset.page.ts","/./src/app/account/register/email.validator.ts","/./src/app/account/register/register.module.ts","/./src/app/account/register/register.page.scss","/./src/app/account/register/register.page.ts","/./src/app/account/register/security-question/security-question.module.ts","/./src/app/account/register/security-question/security-question.page.scss","/./src/app/account/register/security-question/security-question.page.ts","/./src/app/account/register/user-name.validator.ts","/./src/app/app-routing.module.ts","/./src/app/app-theme-colors-enum.ts","/./src/app/app.component.scss","/./src/app/app.component.ts","/./src/app/app.globals.ts","/./src/app/app.module.ts","/./src/app/components/accordion/accordion-panel/accordion-panel.component.scss","/./src/app/components/accordion/accordion-panel/accordion-panel.component.ts","/./src/app/components/accordion/accordion/accordion.component.scss","/./src/app/components/accordion/accordion/accordion.component.ts","/./src/app/main/admin/admin-routing.module.ts","/./src/app/main/admin/admin.module.ts","/./src/app/main/admin/admin.page.scss","/./src/app/main/admin/admin.page.ts","/./src/app/main/certification-score/certification-score.module.ts","/./src/app/main/certification-score/certification-score.page.scss","/./src/app/main/certification-score/certification-score.page.ts","/./src/app/main/certification/certification-answer/certification-answer.component.scss","/./src/app/main/certification/certification-answer/certification-answer.component.ts","/./src/app/main/certification/certification-category/certfication-category.component.scss","/./src/app/main/certification/certification-category/certfication-category.component.ts","/./src/app/main/certification/certification-validation/certification-validation.module.ts","/./src/app/main/certification/certification-validation/certification-validation.page.scss","/./src/app/main/certification/certification-validation/certification-validation.page.ts","/./src/app/main/certification/certification.module.ts","/./src/app/main/certification/certification.page.scss","/./src/app/main/certification/certification.page.ts","/./src/app/main/certification/model/certification-master-section-enum.ts","/./src/app/main/dashboard/dashboard-routing.module.ts","/./src/app/main/dashboard/dashboard.module.ts","/./src/app/main/dashboard/dashboard.page.scss","/./src/app/main/dashboard/dashboard.page.ts","/./src/app/main/farmer/farmer.module.ts","/./src/app/main/farmer/farmer.page.scss","/./src/app/main/farmer/farmer.page.ts","/./src/app/main/farmer/manure-storage/manure-storage.module.ts","/./src/app/main/farmer/manure-storage/manure-storage.page.scss","/./src/app/main/farmer/manure-storage/manure-storage.page.ts","/./src/app/main/farmers/farmers.module.ts","/./src/app/main/farmers/farmers.page.scss","/./src/app/main/farmers/farmers.page.ts","/./src/app/main/farmers/profile/profile.module.ts","/./src/app/main/farmers/profile/profile.page.scss","/./src/app/main/farmers/profile/profile.page.ts","/./src/app/main/help-desk/help-desk.module.ts","/./src/app/main/help-desk/help-desk.page.scss","/./src/app/main/help-desk/help-desk.page.ts","/./src/app/main/home/home.module.ts","/./src/app/main/home/home.page.scss","/./src/app/main/home/home.page.ts","/./src/app/main/main-routing-paths.ts","/./src/app/main/privacy/privacy.module.ts","/./src/app/main/privacy/privacy.page.scss","/./src/app/main/privacy/privacy.page.ts","/./src/app/main/privacy/private-data.page.scss","/./src/app/main/privacy/private-data.page.ts","/./src/app/main/user/user.module.ts","/./src/app/main/user/user.page.scss","/./src/app/main/user/user.page.ts","/./src/app/main/users/users.module.ts","/./src/app/main/users/users.page.scss","/./src/app/main/users/users.page.ts","/./src/app/main/verification/model/verification-question-type-enum.ts","/./src/app/main/verification/verification-question-note/verification-question-note.module.ts","/./src/app/main/verification/verification-question-note/verification-question-note.page.scss","/./src/app/main/verification/verification-question-note/verification-question-note.page.ts","/./src/app/main/verification/verification.module.ts","/./src/app/main/verification/verification.page.scss","/./src/app/main/verification/verification.page.ts","/./src/app/main/verifications/verifications.module.ts","/./src/app/main/verifications/verifications.page.scss","/./src/app/main/verifications/verifications.page.ts","/./src/environments/environment.ts","/./src/main.ts","/./src/model/page.ts","/./src/shared/AppConsts.ts","/./src/shared/app-component-base.ts","/./src/shared/app-http-interceptor.ts","/./src/shared/auth/auth-route-guard.ts","/./src/shared/auth/auth.service.ts","/./src/shared/auth/permission-checker.service.ts","/./src/shared/export/export.service.ts","/./src/shared/help-desk/help-desk.service.ts","/./src/shared/helpers/UrlHelper.ts","/./src/shared/log/log.service.ts","/./src/shared/message/message.service.ts","/./src/shared/multi-tenancy/feature-checker.service.ts","/./src/shared/multi-tenancy/mult-tenancy.service.ts","/./src/shared/nav/app-url.service.ts","/./src/shared/notify/notify.service.ts","/./src/shared/service-proxies/service-proxies.ts","/./src/shared/session/app-session.service.ts","/./src/shared/settings/settings.service.ts","/./src/shared/shared.module.ts","/./src/shared/storage/app-storage.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA,qC;;;;;;;;;;;ACtZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC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","file":"main-es5.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","var map = {\n\t\"./ion-action-sheet-controller_8.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-action-sheet-controller_8.entry.js\",\n\t\t\"common\",\n\t\t2\n\t],\n\t\"./ion-action-sheet-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-action-sheet-ios.entry.js\",\n\t\t\"common\",\n\t\t3\n\t],\n\t\"./ion-action-sheet-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-action-sheet-md.entry.js\",\n\t\t\"common\",\n\t\t4\n\t],\n\t\"./ion-alert-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-alert-ios.entry.js\",\n\t\t\"common\",\n\t\t5\n\t],\n\t\"./ion-alert-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-alert-md.entry.js\",\n\t\t\"common\",\n\t\t6\n\t],\n\t\"./ion-app_8-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-app_8-ios.entry.js\",\n\t\t0,\n\t\t\"common\",\n\t\t7\n\t],\n\t\"./ion-app_8-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-app_8-md.entry.js\",\n\t\t0,\n\t\t\"common\",\n\t\t8\n\t],\n\t\"./ion-avatar_3-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-avatar_3-ios.entry.js\",\n\t\t\"common\",\n\t\t9\n\t],\n\t\"./ion-avatar_3-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-avatar_3-md.entry.js\",\n\t\t\"common\",\n\t\t10\n\t],\n\t\"./ion-back-button-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-back-button-ios.entry.js\",\n\t\t\"common\",\n\t\t11\n\t],\n\t\"./ion-back-button-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-back-button-md.entry.js\",\n\t\t\"common\",\n\t\t12\n\t],\n\t\"./ion-backdrop-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-backdrop-ios.entry.js\",\n\t\t13\n\t],\n\t\"./ion-backdrop-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-backdrop-md.entry.js\",\n\t\t14\n\t],\n\t\"./ion-button_2-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-button_2-ios.entry.js\",\n\t\t\"common\",\n\t\t15\n\t],\n\t\"./ion-button_2-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-button_2-md.entry.js\",\n\t\t\"common\",\n\t\t16\n\t],\n\t\"./ion-card_5-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-card_5-ios.entry.js\",\n\t\t\"common\",\n\t\t17\n\t],\n\t\"./ion-card_5-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-card_5-md.entry.js\",\n\t\t\"common\",\n\t\t18\n\t],\n\t\"./ion-checkbox-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-checkbox-ios.entry.js\",\n\t\t\"common\",\n\t\t19\n\t],\n\t\"./ion-checkbox-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-checkbox-md.entry.js\",\n\t\t\"common\",\n\t\t20\n\t],\n\t\"./ion-chip-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-chip-ios.entry.js\",\n\t\t\"common\",\n\t\t21\n\t],\n\t\"./ion-chip-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-chip-md.entry.js\",\n\t\t\"common\",\n\t\t22\n\t],\n\t\"./ion-col_3.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-col_3.entry.js\",\n\t\t23\n\t],\n\t\"./ion-datetime_3-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-datetime_3-ios.entry.js\",\n\t\t\"common\",\n\t\t24\n\t],\n\t\"./ion-datetime_3-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-datetime_3-md.entry.js\",\n\t\t\"common\",\n\t\t25\n\t],\n\t\"./ion-fab_3-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-fab_3-ios.entry.js\",\n\t\t\"common\",\n\t\t26\n\t],\n\t\"./ion-fab_3-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-fab_3-md.entry.js\",\n\t\t\"common\",\n\t\t27\n\t],\n\t\"./ion-img.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-img.entry.js\",\n\t\t28\n\t],\n\t\"./ion-infinite-scroll_2-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-infinite-scroll_2-ios.entry.js\",\n\t\t\"common\",\n\t\t29\n\t],\n\t\"./ion-infinite-scroll_2-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-infinite-scroll_2-md.entry.js\",\n\t\t\"common\",\n\t\t30\n\t],\n\t\"./ion-input-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-input-ios.entry.js\",\n\t\t\"common\",\n\t\t31\n\t],\n\t\"./ion-input-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-input-md.entry.js\",\n\t\t\"common\",\n\t\t32\n\t],\n\t\"./ion-item-option_3-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-item-option_3-ios.entry.js\",\n\t\t\"common\",\n\t\t33\n\t],\n\t\"./ion-item-option_3-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-item-option_3-md.entry.js\",\n\t\t\"common\",\n\t\t34\n\t],\n\t\"./ion-item_8-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-item_8-ios.entry.js\",\n\t\t\"common\",\n\t\t35\n\t],\n\t\"./ion-item_8-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-item_8-md.entry.js\",\n\t\t\"common\",\n\t\t36\n\t],\n\t\"./ion-loading-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-loading-ios.entry.js\",\n\t\t\"common\",\n\t\t37\n\t],\n\t\"./ion-loading-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-loading-md.entry.js\",\n\t\t\"common\",\n\t\t38\n\t],\n\t\"./ion-menu_4-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-menu_4-ios.entry.js\",\n\t\t\"common\",\n\t\t39\n\t],\n\t\"./ion-menu_4-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-menu_4-md.entry.js\",\n\t\t\"common\",\n\t\t40\n\t],\n\t\"./ion-modal-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-modal-ios.entry.js\",\n\t\t0,\n\t\t\"common\",\n\t\t41\n\t],\n\t\"./ion-modal-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-modal-md.entry.js\",\n\t\t0,\n\t\t\"common\",\n\t\t42\n\t],\n\t\"./ion-nav_5.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-nav_5.entry.js\",\n\t\t0,\n\t\t\"common\",\n\t\t43\n\t],\n\t\"./ion-popover-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-popover-ios.entry.js\",\n\t\t0,\n\t\t\"common\",\n\t\t44\n\t],\n\t\"./ion-popover-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-popover-md.entry.js\",\n\t\t0,\n\t\t\"common\",\n\t\t45\n\t],\n\t\"./ion-progress-bar-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-progress-bar-ios.entry.js\",\n\t\t\"common\",\n\t\t46\n\t],\n\t\"./ion-progress-bar-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-progress-bar-md.entry.js\",\n\t\t\"common\",\n\t\t47\n\t],\n\t\"./ion-radio_2-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-radio_2-ios.entry.js\",\n\t\t\"common\",\n\t\t48\n\t],\n\t\"./ion-radio_2-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-radio_2-md.entry.js\",\n\t\t\"common\",\n\t\t49\n\t],\n\t\"./ion-range-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-range-ios.entry.js\",\n\t\t\"common\",\n\t\t50\n\t],\n\t\"./ion-range-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-range-md.entry.js\",\n\t\t\"common\",\n\t\t51\n\t],\n\t\"./ion-refresher_2-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-refresher_2-ios.entry.js\",\n\t\t\"common\",\n\t\t52\n\t],\n\t\"./ion-refresher_2-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-refresher_2-md.entry.js\",\n\t\t\"common\",\n\t\t53\n\t],\n\t\"./ion-reorder_2-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-reorder_2-ios.entry.js\",\n\t\t\"common\",\n\t\t54\n\t],\n\t\"./ion-reorder_2-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-reorder_2-md.entry.js\",\n\t\t\"common\",\n\t\t55\n\t],\n\t\"./ion-ripple-effect.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-ripple-effect.entry.js\",\n\t\t56\n\t],\n\t\"./ion-route_4.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-route_4.entry.js\",\n\t\t\"common\",\n\t\t57\n\t],\n\t\"./ion-searchbar-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-searchbar-ios.entry.js\",\n\t\t\"common\",\n\t\t58\n\t],\n\t\"./ion-searchbar-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-searchbar-md.entry.js\",\n\t\t\"common\",\n\t\t59\n\t],\n\t\"./ion-segment_2-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-segment_2-ios.entry.js\",\n\t\t\"common\",\n\t\t60\n\t],\n\t\"./ion-segment_2-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-segment_2-md.entry.js\",\n\t\t\"common\",\n\t\t61\n\t],\n\t\"./ion-select_3-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-select_3-ios.entry.js\",\n\t\t\"common\",\n\t\t62\n\t],\n\t\"./ion-select_3-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-select_3-md.entry.js\",\n\t\t\"common\",\n\t\t63\n\t],\n\t\"./ion-slide_2-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-slide_2-ios.entry.js\",\n\t\t64\n\t],\n\t\"./ion-slide_2-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-slide_2-md.entry.js\",\n\t\t65\n\t],\n\t\"./ion-spinner.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-spinner.entry.js\",\n\t\t\"common\",\n\t\t66\n\t],\n\t\"./ion-split-pane-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-split-pane-ios.entry.js\",\n\t\t67\n\t],\n\t\"./ion-split-pane-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-split-pane-md.entry.js\",\n\t\t68\n\t],\n\t\"./ion-tab-bar_2-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-tab-bar_2-ios.entry.js\",\n\t\t\"common\",\n\t\t69\n\t],\n\t\"./ion-tab-bar_2-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-tab-bar_2-md.entry.js\",\n\t\t\"common\",\n\t\t70\n\t],\n\t\"./ion-tab_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-tab_2.entry.js\",\n\t\t1\n\t],\n\t\"./ion-text.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-text.entry.js\",\n\t\t\"common\",\n\t\t71\n\t],\n\t\"./ion-textarea-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-textarea-ios.entry.js\",\n\t\t\"common\",\n\t\t72\n\t],\n\t\"./ion-textarea-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-textarea-md.entry.js\",\n\t\t\"common\",\n\t\t73\n\t],\n\t\"./ion-toast-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-toast-ios.entry.js\",\n\t\t\"common\",\n\t\t74\n\t],\n\t\"./ion-toast-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-toast-md.entry.js\",\n\t\t\"common\",\n\t\t75\n\t],\n\t\"./ion-toggle-ios.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-toggle-ios.entry.js\",\n\t\t\"common\",\n\t\t76\n\t],\n\t\"./ion-toggle-md.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-toggle-md.entry.js\",\n\t\t\"common\",\n\t\t77\n\t],\n\t\"./ion-virtual-scroll.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-virtual-scroll.entry.js\",\n\t\t78\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\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(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"./node_modules/@ionic/core/dist/esm-es5 lazy recursive ^\\\\.\\\\/.*\\\\.entry\\\\.js$ include: \\\\.entry\\\\.js$ exclude: \\\\.system\\\\.entry\\\\.js$\";\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ps\": \"./node_modules/moment/locale/ar-ps.js\",\n\t\"./ar-ps.js\": \"./node_modules/moment/locale/ar-ps.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn-bd\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn-bd.js\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-in\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-in.js\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-sg\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./en-sg.js\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-mx\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-mx.js\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fil\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fil.js\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-deva\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-deva.js\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku-kmr\": \"./node_modules/moment/locale/ku-kmr.js\",\n\t\"./ku-kmr.js\": \"./node_modules/moment/locale/ku-kmr.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./oc-lnc\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./oc-lnc.js\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tk\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tk.js\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-mo\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-mo.js\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Log In\\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 This is the Ohio Agriculture Conservation Initiative (OACI) Test Site.
Unless you have been requested to come here to test a new feature please go to https://ohioaci.org/ to register, complete your profile, and complete your certification for OACI
\\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 User Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Password\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Remember Me\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Forgot Password?\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Log In\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

Need an account? Click the button below to register.

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Register\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Version {{globals.versionMajor}}.{{globals.versionMinor}}.{{globals.versionBuild}}.{{globals.versionRevision}}\\r\\n

\\r\\n
\\r\\n
\"","module.exports = \"\\r\\n \\r\\n logout\\r\\n \\r\\n\\r\\n\\r\\n\\r\\nYou have been logged out of the OACI system. Click HERE to log back in.\\r\\n\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Password Reset\\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 Email Address\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n User Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Get Reset Link via Email\\r\\n \\r\\n \\r\\n Reset with Security Question\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Password\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Password Confirm\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Security Question: {{securityQuestion ? securityQuestion.label : ''}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{ token ? 'Save' : 'Submit'}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Register\\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 First Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Last Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n User Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Email Address\\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 Password\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Password Confirm\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Security Question #{{userSecurityQuestionAnswers[0].id}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Answer\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Security Question #{{userSecurityQuestionAnswers[1].id}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Answer\\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 Register\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Error\\r\\n
    \\r\\n \\r\\n
  • User Name must be valid (only characters and numbers, no spaces) and be at least 3 characters long
  • \\r\\n
  • Email must be valid syntax
  • \\r\\n \\r\\n \\r\\n
  • Passwords must match and be at least 5 characters long
  • \\r\\n \\r\\n
  • Must answer all security questions
  • \\r\\n
  • Must enter captcha security code
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n Security Question #{{number}}\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n {{question.label}}\\r\\n \\r\\n \\r\\n\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Menu\\r\\n \\r\\n
\\r\\n \\r\\n This is a non-production environment.
Changes you make here will not affect the production environment.\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{p.title}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\"","module.exports = \"\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Admin\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n On this page you can click the respective button to perform the operation you are requesting.
\\r\\n Note that these operations can only be performed during non-work hours (outside M-F 9-5).
\\r\\n Also note that these opertions may take a long time depending on how many records need to be updated.
\\r\\n These tasks should only ber performed if you're certain the fields are inaccurate in the database.

\\r\\n If you would like to update a specific Farmers Certification scores
\\r\\n you can do so on the Farmers tab when you open their profile popup by clicking the row.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n It is currently working hours so you can not perform these operations.
\\r\\n Please check back before or after 9-5 work time or on the weekend.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n Update all Farmer Profile Errors / Missing Fields\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n Update all Farmer Certification Scores\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Certification Score\\r\\n \\r\\n Print\\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 Certification passing score must be ({{certificationPassingPoints}}/{{certificationTotalPossiblePoints}}) or higher.\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n For further details on your score select the to expand the section.\\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 {{certificationScores.soilTestFrequency.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n ({{certificationScores.soilTestFrequency.soilTestingFrequency.points}}/{{certificationScores.soilTestFrequency.soilTestingFrequency.weightedPoints}})\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.soilTestFrequency.soilTestingFrequency.soilTestingFrequencyScoring.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.soilTestFrequency.soilTestingFrequency.soilTestingFrequencyScoring.points}} /\\r\\n {{certificationScores.soilTestFrequency.soilTestingFrequency.weightedPoints}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.soilTestIntensity.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n ({{certificationScores.soilTestIntensity.soilTestingIntensity.points}}/{{certificationScores.soilTestIntensity.soilTestingIntensity.weightedPoints}})\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.soilTestIntensity.soilTestingIntensity.soilTestingIntensityScoring.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.soilTestIntensity.soilTestingIntensity.soilTestingIntensityScoring.points}} /\\r\\n {{certificationScores.soilTestIntensity.soilTestingIntensity.weightedPoints}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n ({{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.points}}/{{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.weightedPoints}})\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.manureApplicationRecommendation.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.manureApplicationRecommendation.points}} /\\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.biosolidsApplicationRecommendation.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.biosolidsApplicationRecommendation.points}} /\\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.otherOrganicNutrientSources.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.otherOrganicNutrientSources.points}} /\\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.commericalPhosphorusFertilizerRecommendations.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.commericalPhosphorusFertilizerRecommendations.points}} /\\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.commericalNitrogenFertilizerRecommendations.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.commericalNitrogenFertilizerRecommendations.points}} /\\r\\n {{certificationScores.nutrientApplicationRate.nutrientApplicationRecommendations.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n ({{certificationScores.nutrientApplicationPlacement.nutrientApplications.points}}/{{certificationScores.nutrientApplicationPlacement.nutrientApplications.weightedPoints}})\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.commercialPhosphorusFertilizerApplication.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.commercialPhosphorusFertilizerApplication.points}} /\\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.commercialNitrogenFertilizerApplication.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.commercialNitrogenFertilizerApplication.points}} /\\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.manureApplication.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.manureApplication.points}} /\\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.biosolidsApplication.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.biosolidsApplication.points}} /\\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.otherOrganicSources.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.otherOrganicSources.points}} /\\r\\n {{certificationScores.nutrientApplicationPlacement.nutrientApplications.weightedPoints}}\\r\\n \\r\\n \\r\\n N/A\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.inFieldManagement.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n ({{certificationScores.inFieldManagement.inFieldManagementTillage.points + certificationScores.inFieldManagement.inFieldManagementCoverCrops.points}}\\r\\n /\\r\\n {{certificationScores.inFieldManagement.inFieldManagementTillage.weightedPoints + certificationScores.inFieldManagement.inFieldManagementCoverCrops.weightedPoints}})\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.inFieldManagement.inFieldManagementTillage.tillage.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.inFieldManagement.inFieldManagementTillage.tillage.points}} /\\r\\n {{certificationScores.inFieldManagement.inFieldManagementTillage.weightedPoints}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.inFieldManagement.inFieldManagementCoverCrops.coverCrops.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.inFieldManagement.inFieldManagementCoverCrops.coverCrops.points}} /\\r\\n {{certificationScores.inFieldManagement.inFieldManagementCoverCrops.weightedPoints}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{certificationScores.structuralPracticesBonus.label}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n ({{certificationScores.structuralPracticesBonus.bonusPoints}}/{{certificationScores.structuralPracticesBonus.capPoints}}) ** Bonus points are capped at 10 **\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'Grassed Waterways'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'Grade Stabilization Structures'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'Blind Inlets'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'Drainage Water Control Structures'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'Filter Strips or Buffer Strips'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'Wetlands'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'Two Stage Ditch or Natural Stream Channel Restoration'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'Denitrifying Bioreactor'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'Phosphorus Removal Bed (P-Filter)'}}\\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\\t\\r\\n
\\r\\n Return to Home\\r\\n Return to Farmer Profile\\r\\n
\\r\\n\\t
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \"","module.exports = \"
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

{{ category.label }}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{ccategory.label}}\\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

Owned

\\r\\n
\\r\\n
\\r\\n \\r\\n Requirement\\r\\n UoM\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

Rented

\\r\\n
\\r\\n
\\r\\n \\r\\n Requirement\\r\\n UoM\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{category.label}}\\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  {{category.label}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{farmerCrop.cropName}}\\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
\"","module.exports = \"\\r\\n \\r\\n Certification Validation\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Missing Fields Below:\\r\\n

\\r\\n Click Cancel to continue go back to the Certification to adjust or Complete to ignore and finalize the Certification.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Cancel\\r\\n \\r\\n \\r\\n Complete\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Certification\\r\\n \\r\\n ** View Mode **\\r\\n Back to Farmer\\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

{{ topLevelCategory.label }}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{category.label}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n Add number of acres that apply to each section\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n A grassed waterway is a constructed grade channel seeded \\r\\n to grass or other suitable vegetation.\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n A blind inlet, similar to a French drain, is a structure \\r\\n that replaces a tile riser.\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n Drainage Water Control Structures are structures that adjust \\r\\n the elevation of a drainage system outlet.\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n A filter strip is an area of herbaceous vegetation \\r\\n that removes contaminants from overland flow.\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n The return of a wetland and its functions to a close approximation \\r\\n of its original condition as it existed prior to disturbance on a \\r\\n former or degraded wetland site.\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n A two-stage ditch is a design conversion that modifies the geometry of a \\r\\n ditch to establish benches within the ditch. The ditch provides a low-flow channel \\r\\n and then a vegetated bench that is flooded during higher flows.\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n The primary purpose of a wood chip bioreactor is to remove nitrates \\r\\n from subsurface tile drainage water at the edge of a field prior to the \\r\\n water entering a ditch or a stream\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n The primary purpose of a wood chip bioreactor is to remove nitrates \\r\\n from subsurface tile drainage water at the edge of a field prior to the \\r\\n water entering a ditch or a stream\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n

Owned

\\r\\n
\\r\\n \\r\\n
\\r\\n

Owned Acres: {{farmer.ownedAcres}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

{{farmerCrop.cropName}} Acres: {{farmerCrop.quantity}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

Owned

\\r\\n
\\r\\n \\r\\n
\\r\\n

{{getFarmerNutrientSource(category).nutrientSourceName}} Owned Acres: {{getFarmerNutrientSource(category).ownedQuantity}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Requirement\\r\\n \\r\\n {{ topLevelCategory.id == 4 ? 'Units' : 'Acres' }}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{categoryQuestion.label}}\\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  {{categoryQuestion.label}}\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{farmerCrop.cropName}}\\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

Rented

\\r\\n
\\r\\n \\r\\n
\\r\\n

Rented Acres: {{farmer.rentedAcres}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

Rented

\\r\\n
\\r\\n \\r\\n
\\r\\n

{{getFarmerNutrientSource(category).nutrientSourceName}} Rented Acres: {{getFarmerNutrientSource(category).rentedQuantity}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Requirement\\r\\n \\r\\n {{ topLevelCategory.id == 4 ? 'Units' : 'Acres' }}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{categoryQuestion.label}}\\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  {{categoryQuestion.label}}\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{farmerCrop.cropName}}\\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 Cancel\\r\\n \\r\\n \\r\\n Complete\\r\\n \\r\\n \\r\\n \\r\\n
\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Dashboard\\r\\n \\r\\n Print\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Export Certification Data\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Farmer Profile\\r\\n \\r\\n Print\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Profile\\r\\n \\r\\n \\r\\n
\\r\\n ** Information subject to audit by independent auditor **\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n First Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Last Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Email Address\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Phone #\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n User Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Farm Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Address\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n City\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Zip Code\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n County(s)\\r\\n \\r\\n \\r\\n 0\\\">\\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 Add County\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Watershed(s)\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\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 Add Watershed\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Total Acres Farmed\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Owned/Controlled\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Rented\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Acres Per Crop Rotation\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{farmerCropQuantities[i].cropName}}\\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 {{farmerCropQuantities[i+1].cropName}}\\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 Add Crop\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Nutrient Sources - Fill out each section that applies to your farm\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n  {{fnsq.nutrientSourceName}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Owned/Controlled\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Rented\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Who provides your nutrient recommendations?\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n  {{fnrq.nutrientRecommendationName}}\\r\\n  \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Owned/Controlled\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Rented\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Add Nutrient Recommendation\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n NMP\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n NMP Complete\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Date Completed\\r\\n \\r\\n \\r\\n \\r\\n Has it been started?\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n NMP Type\\r\\n \\r\\n \\r\\n {{nmpType.name}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n NMP Acreage Quantity\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Fertilizer Applicator Certification\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Fertilizer Applicator Certification Complete\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Date Completed\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Nutrient Application\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Frozen/Snow Covered Ground\\r\\n \\r\\n Yes\\r\\n No\\r\\n I don't know\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Sensitive Areas\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Sensitive Areas Located in Each Field\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Current Manure Storage\\r\\n \\r\\n \\r\\n 0\\\">\\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 Add Manure Storage\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Cost Share Program(s) Enrolled\\r\\n \\r\\n \\r\\n 0\\\">\\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 Add Cost Share\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n Must Acknowledge Following Disclaimers to Proceed\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n My information added into the system represents my entire farming operation.\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n My information will be subject to audit by independent auditors contracted by OACI.\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n My information entered into the system is fair and accurate to the best of my ability.\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Cancel\\r\\n \\r\\n \\r\\n Save\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n Missing Required Fields\\r\\n
    0 ? '0px' : '1em'\\r\\n }\\\"\\r\\n >\\r\\n
  • {{field}}
  • \\r\\n
\\r\\n
\\r\\n 0\\\">\\r\\n Form Errors\\r\\n
    \\r\\n
  • {{error}}
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Certification List\\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 In Progress\\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n \\r\\n {{(isCertificationCompleteStatus(row) ? row.lastModificationTime : row.creationTime) | date:'MM/dd/yyyy h:mm a'}}\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Edit\\r\\n \\r\\n \\r\\n \\r\\n View\\r\\n \\r\\n \\r\\n \\r\\n Score Breakdown\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Add OACI Certification\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\"","module.exports = \"\\r\\n \\r\\n Add Manure Storage\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Source\\r\\n \\r\\n {{manureStorageSource.name}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Duration\\r\\n \\r\\n {{manureStorageDuration.name}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Type\\r\\n \\r\\n {{manureStorageType.name}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Cancel\\r\\n \\r\\n \\r\\n Save\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Farmers\\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 Farmer\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Pass/Fail/Incomplete?\\r\\n \\r\\n Pass\\r\\n Fail\\r\\n Incomplete\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n County(s)\\r\\n \\r\\n {{county.name}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Watershed(s)\\r\\n \\r\\n {{watershed.name}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Has Profile Missing Fields?\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Has Profile Errors?\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Farmers\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

Click ⓘ for more information

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Add New\\r\\n Refresh\\r\\n Clear Filters\\r\\n Export\\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 {{ value == 1 ? 'Pass' : value == 0 ? 'Fail' : 'Incomplete' }}\\r\\n \\r\\n \\r\\n {{ value ? 'Yes ⓘ' : 'No' }}\\r\\n \\r\\n \\r\\n {{ value ? 'Yes ⓘ' : 'No' }}\\r\\n \\r\\n \\r\\n {{value | date:'MM/dd/yyyy'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n Farmer Profile\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n First Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Last Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Email Address\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Phone Number\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Farm\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Pass/Fail\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n County(s)\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Watershed(s)\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Profile Missing Fields\\r\\n

{{profile.profileMissingFields}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Profile Errors\\r\\n

{{profile.profileErrors}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Last Modified\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Last Modified User\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Update Farmer Certification Scores\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Edit\\r\\n \\r\\n \\r\\n OK\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n Help Desk\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
Have a question or an issue to report? Send a message to the OACI help desk and hopefully your issue can get resolved quickly.
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Subject\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Message\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Send\\r\\n \\r\\n \\r\\n Cancel\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Home\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n This is the Ohio Agriculture Conservation Initiative (OACI) Test Site.
Unless you have been requested to come here to test a new feature please go to https://ohioaci.org/ to register, complete your profile, and complete your certification for OACI
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

\\r\\n Please fill out Farmer Profile on the left side of the screen to get started\\r\\n

\\r\\n
\\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n Working Together To Recognize Ohio’s Farmers And Protect Ohio’s Waterways\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n

About Us

\\r\\n

\\r\\n The Ohio Agriculture Conservation Initiative (OACI) is an unprecedented partnership between agriculture, conservation, environmental, and research communities to recognize \\r\\n farmers for their dedication to utilize established methods to improve water quality in Ohio and to increase the number of best management practices being implemented on farms.\\r\\n \\r\\n

\\r\\n OACI will offer resources and education that farmers need to implement science-based practices on their farms and better show how those efforts are improving water quality over time.\\r\\n \\r\\n

\\r\\n By collaboratively learning and sharing information across environmental and agricultural communities, Ohio’s water quality advocates stand as a united front dedicated to identifying \\r\\n solutions and helping farmers implement them.\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n

Our Mission

\\r\\n

\\r\\n Create a universally recognized farmer certification program, with a pilot program beginning in early 2020, that will help increase adoption of best management practices and recognize\\r\\n farmers who demonstrate a commitment to continuous improvement.\\r\\n \\r\\n

\\r\\n Create a confidential farm practices assessment that will benchmark best management practices adoption and track progress toward our goals.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\t\\r\\n
\\r\\n \\r\\n Need Help\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

Have an account?

\\r\\n  \\r\\n \\r\\n Log In\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Need to register?

\\r\\n  \\r\\n \\r\\n Register\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\t
\\r\\n
\\r\\n\"","module.exports = \"

This privacy policy applies to the OACI Certifications app (hereby referred to as \\\"Application\\\") for mobile devices that was created by Ohio Agricultural Conservation Initiative (hereby referred to as \\\"Service Provider\\\") as a Free service. This service is intended for use \\\"AS IS\\\".

\\r\\n\\r\\n

Information Collection and Use

\\r\\n \\r\\n

The Application collects information when you download and use it. This information may include information such as

\\r\\n \\r\\n
  • Your device's Internet Protocol address (e.g. IP address)
  • \\r\\n
  • The pages of the Application that you visit, the time and date of your visit, the time spent on those pages
  • \\r\\n
  • The time spent on the Application
  • \\r\\n
  • The operating system you use on your mobile device
  • \\r\\n

The Application does not gather precise information about the location of your mobile device.

\\r\\n \\r\\n

The Application collects your device's location, which helps the Service Provider determine your approximate geographical location and make use of in below ways:

\\r\\n \\r\\n
  • Geolocation Services: The Service Provider utilizes location data to provide features such as personalized content, relevant recommendations, and location-based services.
  • \\r\\n
  • Analytics and Improvements: Aggregated and anonymized location data helps the Service Provider to analyze user behavior, identify trends, and improve the overall performance and functionality of the Application.
  • \\r\\n
  • Third-Party Services: Periodically, the Service Provider may transmit anonymized location data to external services. These services assist them in enhancing the Application and optimizing their offerings.
  • \\r\\n

The Service Provider may use the information you provided to contact you from time to time to provide you with important information, required notices and marketing promotions.

\\r\\n \\r\\n

For a better experience, while using the Application, the Service Provider may require you to provide us with certain personally identifiable information, including but not limited to Email, userid. The information that the Service Provider request will be retained by them and used as described in this privacy policy.

\\r\\n \\r\\n

Third Party Access

\\r\\n \\r\\n

Only aggregated, anonymized data is periodically transmitted to external services to aid the Service Provider in improving the Application and their service. The Service Provider may share your information with third parties in the ways that are described in this privacy statement.

\\r\\n \\r\\n

Please note that the Application utilizes third-party services that have their own Privacy Policy about handling data. Below are the links to the Privacy Policy of the third-party service providers used by the Application:

\\r\\n \\r\\n

The Service Provider may disclose User Provided and Automatically Collected Information:

\\r\\n \\r\\n
  • as required by law, such as to comply with a subpoena, or similar legal process;
  • \\r\\n
  • when they believe in good faith that disclosure is necessary to protect their rights, protect your safety or the safety of others, investigate fraud, or respond to a government request;
  • \\r\\n
  • with their trusted services providers who work on their behalf, do not have an independent use of the information we disclose to them, and have agreed to adhere to the rules set forth in this privacy statement.
  • \\r\\n

Opt-Out Rights

\\r\\n \\r\\n

You can stop all collection of information by the Application easily by uninstalling it. You may use the standard uninstall processes as may be available as part of your mobile device or via the mobile application marketplace or network.

\\r\\n \\r\\n

Data Retention Policy

\\r\\n \\r\\n

The Service Provider will retain User Provided data for as long as you use the Application and for a reasonable time thereafter. If you'd like them to delete User Provided Data that you have provided via the Application, please contact them at jtmead@ofswcd.org and they will respond in a reasonable time.

\\r\\n \\r\\n

Children

\\r\\n \\r\\n

The Service Provider does not use the Application to knowingly solicit data from or market to children under the age of 13.

\\r\\n \\r\\n

The Application does not address anyone under the age of 13. The Service Provider does not knowingly collect personally identifiable information from children under 13 years of age. In the case the Service Provider discover that a child under 13 has provided personal information, the Service Provider will immediately delete this from their servers. If you are a parent or guardian and you are aware that your child has provided us with personal information, please contact the Service Provider (jtmead@ofswcd.org) so that they will be able to take the necessary actions.

\\r\\n \\r\\n

Security

\\r\\n \\r\\n

The Service Provider is concerned about safeguarding the confidentiality of your information. The Service Provider provides physical, electronic, and procedural safeguards to protect information the Service Provider processes and maintains.

\\r\\n \\r\\n

Changes

\\r\\n \\r\\n

This Privacy Policy may be updated from time to time for any reason. The Service Provider will notify you of any changes to the Privacy Policy by updating this page with the new Privacy Policy. You are advised to consult this Privacy Policy regularly for any changes, as continued use is deemed approval of all changes.

\\r\\n \\r\\n

This privacy policy is effective as of 2024-04-10

\\r\\n \\r\\n

Your Consent

\\r\\n \\r\\n

By using the Application, you are consenting to the processing of your information as set forth in this Privacy Policy now and as amended by us.

\\r\\n \\r\\n

Contact Us

\\r\\n \\r\\n

If you have any questions regarding privacy while using the Application, or have questions about the practices, please contact the Service Provider via email at jtmead@ofswcd.org.

\\r\\n \\r\\n

This privacy policy page was generated by App Privacy Policy Generator

\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n To request your private data to be removed, submit this form with your email address:\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Email Address\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Save\\r\\n \\r\\n \\r\\n
\\r\\n

{{message}}

\\r\\n
\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n User\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n First Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Last Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n User Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Surname\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Email Address\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Full Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Roles\\r\\n \\r\\n {{rolesOption}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Is Active\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Cancel\\r\\n \\r\\n \\r\\n Save\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Users\\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 User\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Users\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n Add New\\r\\n Refresh\\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 {{value | date:'MM/dd/yyyy'}}\\r\\n \\r\\n \\r\\n {{value ? 'Yes' : 'No'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n Notes\\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 Last Modified By: {{vVQN.lastModifiedUserName}} on {{vVQN.lastModifiedTime | date:'MM/dd/yyyy h:mm a'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Cancel\\r\\n \\r\\n \\r\\n Save\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Assessment\\r\\n \\r\\n Print\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Farm Name\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n County\\r\\n \\r\\n \\r\\n {{county.name}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Latitude\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Longitude\\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 ** Assessment is not 'Complete' until all questions have been answered. **\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Assessment Survey Questions\\r\\n \\r\\n \\r\\n
\\r\\n

Click to leave notes

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{ vqag.sort + '. ' + vqag.description }}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{\\r\\n (vqag.isMultiQuestionGroup ? getMultiQuestionLetter(vqa.vQuestionDto.sort) + ') ' : '') +\\r\\n vqa.vQuestionDto.description\\r\\n }}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n {{answer.description}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{answer.description}}\\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 Cancel\\r\\n \\r\\n \\r\\n Complete\\r\\n \\r\\n Save ({{numberOfQuestionsAnswered()}}/{{numberOfQuestions()}})\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Assessments\\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 ** An Assessment is not 'Complete' until all questions have been answered. **\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n Assessments\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n Add New\\r\\n Refresh\\r\\n Export\\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 {{value | date:'MM/dd/yyyy'}}\\r\\n \\r\\n \\r\\n {{value | date:'MM/dd/yyyy'}}\\r\\n \\r\\n \\r\\n {{value == 0 ? 'New' : value == 1 ? 'In Progress' : 'Completed'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\"","import * as moment from 'moment';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\nimport { Type, CompilerOptions, NgModuleRef } from '@angular/core';\r\nimport { environment } from '../environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MultiTenancyService } from '@shared/multi-tenancy/mult-tenancy.service';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { InterceptorSkipHeader } from '@shared/app-http-interceptor';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\n\r\nexport class AppPreBootstrap {\r\n\r\n token: string;\r\n constructor(\r\n private http: HttpClient,\r\n private multiTenantService: MultiTenancyService,\r\n private storageService: AppStorageService,\r\n private appSessionService: AppSessionService\r\n ) {\r\n storageService.TokenSubject.subscribe(t => {\r\n this.token = t;\r\n this.getUserConfiguration(() => { }).then();\r\n });\r\n }\r\n async run(appRootUrl: string, callback: () => void): Promise {\r\n await this.storageService.init().then(() => {\r\n this.getUserConfiguration(callback);\r\n })\r\n\r\n }\r\n\r\n bootstrap(moduleType: Type, compilerOptions?: CompilerOptions | CompilerOptions[]): Promise> {\r\n return platformBrowserDynamic().bootstrapModule(moduleType, compilerOptions);\r\n }\r\n\r\n private getApplicationConfig(appRootUrl: string, callback: () => void) {\r\n return this.http.get(\r\n appRootUrl + '/assets/' + environment.appConfig,\r\n {\r\n headers: {\r\n 'Abp.TenantId': this.multiTenantService.getTenantIdCookie()\r\n }\r\n }).subscribe((result: any) => {\r\n AppConsts.appBaseUrl = result.appBaseUrl;\r\n AppConsts.remoteServiceBaseUrl = result.remoteServiceBaseUrl;\r\n AppConsts.localeMappings = result.localeMappings;\r\n\r\n callback();\r\n });\r\n }\r\n\r\n\r\n private getUserConfiguration(callback: () => void): Promise {\r\n if (this.token) {\r\n this.appSessionService.init();\r\n return this.http.get(\r\n AppConsts.remoteServiceBaseUrl + '/AbpUserConfiguration/GetAll',\r\n {\r\n headers: {\r\n InterceptorSkipHeader: InterceptorSkipHeader,\r\n Authorization: 'Bearer ' + this.token,\r\n // '.AspNetCore.Culture': this.utilService.getCookieValue('Abp.Localization.CultureName'),\r\n 'Abp.TenantId': this.multiTenantService.getTenantIdCookie()\r\n }\r\n }).toPromise().then((result: any) => {\r\n this.storageService.setAllPermissions(result.result.auth.allPermissions);\r\n this.storageService.setGrantedPermissions(result.result.auth.grantedPermissions);\r\n if (callback)\r\n callback();\r\n });\r\n }\r\n return Promise.resolve();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { RegisterPage } from './register/register.page';\r\nimport { LoginPage } from './login/login.page';\r\nimport { LogoutPage } from './logout/logout.page';\r\nimport { FarmerPage } from '../main/farmer/farmer.page';\r\nimport { PasswordResetPage } from './password-reset/password-reset.page';\r\n\r\nexport const AccountsRoutingModule_routes: Routes = [\r\n {\r\n path: '',\r\n component: FarmerPage\r\n },\r\n {\r\n path: 'register',\r\n component: RegisterPage\r\n },\r\n {\r\n path: 'password-reset',\r\n component: PasswordResetPage\r\n },\r\n {\r\n path: 'login',\r\n component: LoginPage\r\n },\r\n {\r\n path:'logout',\r\n component: LogoutPage\r\n }\r\n];\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\n\r\nimport { LoginPage } from './login.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule\r\n ],\r\n declarations: [LoginPage]\r\n})\r\nexport class LoginPageModule {}\r\n","module.exports = \".passwordIcon {\\n font-size: 2rem !important;\\n position: relative !important;\\n top: 22px !important;\\n margin: 0 auto !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvYWNjb3VudC9sb2dpbi9aOlxcc291cmNlXFxPQUNJXFxPQUNJXFxvYWNpLWNlcnRpZmljYXRpb24vc3JjXFxhcHBcXGFjY291bnRcXGxvZ2luXFxsb2dpbi5wYWdlLnNjc3MiLCJzcmMvYXBwL2FjY291bnQvbG9naW4vbG9naW4ucGFnZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksMEJBQUE7RUFDQSw2QkFBQTtFQUNBLG9CQUFBO0VBQ0EseUJBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL2FjY291bnQvbG9naW4vbG9naW4ucGFnZS5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnBhc3N3b3JkSWNvbntcclxuICAgIGZvbnQtc2l6ZToycmVtICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgIHRvcDogMjJweCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcclxuIH0iLCIucGFzc3dvcmRJY29uIHtcbiAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICB0b3A6IDIycHggIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbn0iXX0= */\"","import { Component, OnInit, Injector } from '@angular/core';\r\nimport { AppComponentBase } from '@shared/app-component-base';\r\nimport { LoginService } from './login.service';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { Router } from '@angular/router';\r\nimport { AuthenticateModel } from '@shared/service-proxies/service-proxies';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { Globals } from 'src/app/app.globals';\r\nimport { Platform } from '@ionic/angular';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConsts } from '@shared/AppConsts';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.page.html',\r\n styleUrls: ['./login.page.scss'],\r\n})\r\nexport class LoginPage extends AppComponentBase implements OnInit {\r\n AppConsts: AppConsts = AppConsts;\r\n ngForm: FormGroup;\r\n passwordType: string = 'password';\r\n passwordIcon: string = 'eye-off';\r\n constructor(\r\n injector: Injector,\r\n public loginService: LoginService,\r\n private _sessionService: AppSessionService,\r\n private router: Router,\r\n public globals: Globals,\r\n private platform: Platform,\r\n private titleService: Title\r\n ) {\r\n super(injector);\r\n this.titleService.setTitle('OACI - Log In');\r\n }\r\n \r\n submitting = false;\r\n ngOnInit() {\r\n }\r\n\r\n ionViewWillEnter() {\r\n this.loginService.authenticateModel = new AuthenticateModel();\r\n this.loginService.rememberMe = null;\r\n // this.ngForm.markAsUntouched();\r\n }\r\n\r\n login(): void {\r\n this.submitting = true;\r\n this.loginService.authenticate(() => (this.submitting = false));\r\n }\r\n forgotPassword() {\r\n this.router.navigate(['/account/password-reset']);\r\n }\r\n register() {\r\n this.router.navigate(['/account/register']);\r\n }\r\n\r\n hideShowPassword() {\r\n this.passwordType = this.passwordType === 'text' ? 'password' : 'text';\r\n this.passwordIcon = this.passwordIcon === 'eye-off' ? 'eye' : 'eye-off';\r\n }\r\n\r\n isMobile() {\r\n return this.platform.is('cordova');\r\n }\r\n}\r\n","import { AuthenticateModel, AuthenticateResultModel, TokenAuthServiceProxy } from 'src/shared/service-proxies/service-proxies';\r\nimport { Router, NavigationExtras } from '@angular/router';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { UrlHelper } from 'src/shared/helpers/UrlHelper';\r\nimport { AppConsts } from 'src/shared/AppConsts';\r\nimport { LogService } from '@shared/log/log.service';\r\nimport { Injectable } from '@angular/core';\r\nimport { MessageService } from '@shared/message/message.service';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { Platform, LoadingController, AlertController } from '@ionic/angular';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoginService {\r\n\r\n static readonly twoFactorRememberClientTokenName = 'TwoFactorRememberClientToken';\r\n\r\n authenticateModel: AuthenticateModel;\r\n authenticateResult: AuthenticateResultModel;\r\n\r\n rememberMe: boolean;\r\n\r\n postLoginPage = '/main/home';\r\n\r\n constructor(\r\n private _tokenAuthService: TokenAuthServiceProxy,\r\n private _router: Router,\r\n private _messageService: MessageService,\r\n private _logService: LogService,\r\n private _appSessionService: AppSessionService,\r\n private _appStorageService: AppStorageService,\r\n private _platform: Platform,\r\n private loadingController: LoadingController,\r\n private alertController: AlertController\r\n ) {\r\n this.clear();\r\n }\r\n\r\n async authenticate(finallyCallback?: () => void): Promise {\r\n finallyCallback = finallyCallback || (() => { });\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Authenticating user...',\r\n });\r\n await loading.present();\r\n\r\n this._tokenAuthService\r\n .authenticate(this.authenticateModel)\r\n .pipe(finalize(() => { finallyCallback(); }))\r\n .subscribe(\r\n async (result: AuthenticateResultModel) => {\r\n this.processAuthenticateResult(result);\r\n await loading.dismiss();\r\n },\r\n async (error) => {\r\n await loading.dismiss();\r\n\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n message: 'Login Failed',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n }\r\n );\r\n }\r\n\r\n private processAuthenticateResult(authenticateResult: AuthenticateResultModel) {\r\n this.authenticateResult = authenticateResult;\r\n\r\n if (authenticateResult.accessToken) {\r\n // Successfully logged in\r\n this.login(\r\n authenticateResult.accessToken,\r\n authenticateResult.encryptedAccessToken,\r\n authenticateResult.expireInSeconds,\r\n this.rememberMe);\r\n\r\n } else {\r\n // Unexpected result!\r\n\r\n this._logService.warn('Unexpected authenticateResult!');\r\n this._router.navigate(['account/login']);\r\n }\r\n }\r\n\r\n private login(accessToken: string, encryptedAccessToken: string, expireInSeconds: number, rememberMe?: boolean): void {\r\n\r\n const tokenExpireDate = rememberMe ? (new Date(new Date().getTime() + 1000 * expireInSeconds)) : undefined;\r\n\r\n this._appStorageService.setToken(accessToken,\r\n encryptedAccessToken,\r\n tokenExpireDate)\r\n\r\n this._appSessionService.init().then(() => {\r\n let initialUrl = UrlHelper.initialUrl;\r\n if (initialUrl.indexOf('/login') > 0) {\r\n initialUrl = AppConsts.appBaseUrl;\r\n }\r\n initialUrl = UrlHelper.striphost(location);\r\n // if (this._platform.is('cordova')) {\r\n // const navigationExtras: NavigationExtras = {\r\n // queryParams: {\r\n // farmerId: null // we need to fetch users farmerId....\r\n // }\r\n // };\r\n // this._router.navigate(['/account/profile'], navigationExtras); // this is actually the farmer profile page...\r\n // } else {\r\n this._router.navigate([this.postLoginPage]); // User Dashboard (Admin and Data Collector)\r\n // }\r\n })\r\n\r\n }\r\n\r\n private clear(): void {\r\n this.authenticateModel = new AuthenticateModel();\r\n this.authenticateModel.rememberClient = false;\r\n this.authenticateResult = null;\r\n this.rememberMe = false;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\n\r\nimport { LogoutPage } from './logout.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule\r\n ],\r\n declarations: [LogoutPage]\r\n})\r\nexport class LogoutPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FjY291bnQvbG9nb3V0L2xvZ291dC5wYWdlLnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-logout',\r\n templateUrl: './logout.page.html',\r\n styleUrls: ['./logout.page.scss'],\r\n})\r\nexport class LogoutPage implements OnInit {\r\n\r\n constructor(private appStorageService:AppStorageService, private router:Router) { }\r\n\r\n ngOnInit() {\r\n this.appStorageService.clearToken(); \r\n }\r\n goToLogin(){\r\n this.router.navigate([\"/account/login\"])\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { PasswordResetPage } from './password-reset.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n IonicModule\r\n ],\r\n declarations: [PasswordResetPage]\r\n})\r\nexport class PasswordResetPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FjY291bnQvcGFzc3dvcmQtcmVzZXQvcGFzc3dvcmQtcmVzZXQucGFnZS5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { PasswordResetTokenDto, PasswordResetServiceServiceProxy, PasswordResetRequestDto, SecurityQuestion, UserSecurityQuestionAnswerServiceServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { AlertController, LoadingController } from '@ionic/angular';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport * as moment from 'moment';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-password-reset',\r\n templateUrl: './password-reset.page.html',\r\n styleUrls: ['./password-reset.page.scss'],\r\n})\r\nexport class PasswordResetPage implements OnInit {\r\n\r\n token: string;\r\n securityQuestion: SecurityQuestion;\r\n passwordResetToken: PasswordResetTokenDto;\r\n passwordType: string = 'password';\r\n passwordIcon: string = 'eye-off';\r\n passwordConfirmType: string = 'password';\r\n passwordConfirmIcon: string = 'eye-off';\r\n formGroup: FormGroup;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private alertController: AlertController,\r\n private loadingController: LoadingController,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private passwordResetSvc: PasswordResetServiceServiceProxy,\r\n private titleService: Title,\r\n private userSecurityQuestionAnswerSvc: UserSecurityQuestionAnswerServiceServiceProxy\r\n ) {\r\n this.route.queryParams.subscribe(params => {\r\n if (params && params.token) {\r\n this.token = params.token;\r\n if (this.token) {\r\n this.getPasswordResetToken(params.token);\r\n } else {\r\n this.initializeNewPasswordReset();\r\n }\r\n } else {\r\n this.initializeNewPasswordReset();\r\n }\r\n this.setupForm();\r\n });\r\n this.titleService.setTitle('OACI - Password Reset');\r\n }\r\n\r\n setupForm() {\r\n if (this.formGroup) {\r\n this.formGroup.reset();\r\n }\r\n this.formGroup = this.formBuilder.group({\r\n emailAddress: [''/*, this.token ? null : Validators.required*/],\r\n userName: ['', this.token ? null : Validators.required],\r\n password: ['', this.token ? Validators.required : null],\r\n passwordConfirm: ['', this.token ? Validators.required : null],\r\n securityQuestionAnswer: ['', this.securityQuestion ? Validators.required : null]\r\n });\r\n }\r\n\r\n getPasswordResetToken(idOrToken) {\r\n this.passwordResetSvc.getByToken(idOrToken).subscribe(async passwordResetToken => {\r\n if (passwordResetToken) {\r\n this.token = passwordResetToken.token;\r\n this.passwordResetToken = passwordResetToken;\r\n this.formGroup.patchValue({\r\n 'emailAddress': this.passwordResetToken.userEmailAddress,\r\n 'userName': this.passwordResetToken.userUserName\r\n });\r\n if (\r\n !this.passwordResetToken.isActive ||\r\n this.passwordResetToken.expirationDate < moment()\r\n ) {\r\n this.formGroup.disable();\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n message: 'This password reset token is expired and/or in-active.',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n this.router.navigate(['/account/login']);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ionViewWillEnter() {\r\n this.setupForm();\r\n }\r\n\r\n async submitForm() {\r\n if (!this.securityQuestion) { // default\r\n if (\r\n this.formGroup.valid &&\r\n this.passwordsMatch()\r\n ) {\r\n this.resetPassword(true).then();\r\n } else {\r\n const errorMessages = [];\r\n if (!this.formGroup.valid) errorMessages.push('· Missing Form Fields.');\r\n if (!this.passwordsMatch()) errorMessages.push('· Passwords do not match.');\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n // subHeader: 'Error',\r\n message: errorMessages.join('
'),\r\n buttons: ['OK']\r\n });\r\n \r\n await alert.present();\r\n }\r\n } else {\r\n if (this.formGroup.valid) {\r\n this.checkSecurityQuestionAnswer().then();\r\n }\r\n }\r\n }\r\n\r\n passwordsMatch() { // stupid chrome autofill puts password value in\r\n return this.passwordResetToken ? this.formGroup.controls.password.value == this.formGroup.controls.passwordConfirm.value : true;\r\n }\r\n\r\n async resetPassword(doRedirect: boolean) {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Requesting password reset...',\r\n });\r\n await loading.present();\r\n\r\n if (!this.token) {\r\n this.passwordResetSvc.create(\r\n this.formGroup.controls.userName.value,\r\n // this.formGroup.controls.emailAddress.value,\r\n doRedirect\r\n ).subscribe(async repsonse => {\r\n if (repsonse > -1) {\r\n await loading.dismiss();\r\n \r\n if (doRedirect) {\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'Please check your email for a password reset link.',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n this.router.navigate(['/account/login']);\r\n }\r\n }\r\n ]\r\n });\r\n \r\n await alert.present();\r\n } else {\r\n this.getPasswordResetToken(repsonse);\r\n }\r\n } else {\r\n await loading.dismiss();\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n // subHeader: 'Error',\r\n message: 'User was not found.',\r\n buttons: ['OK']\r\n });\r\n \r\n await alert.present();\r\n }\r\n });\r\n } else {\r\n \r\n const passwordResetRequest = new PasswordResetRequestDto();\r\n passwordResetRequest.token = this.token;\r\n passwordResetRequest.password = this.formGroup.controls.password.value;\r\n this.passwordResetSvc.resetPassword(passwordResetRequest).subscribe(async response => {\r\n if (response == true) {\r\n await loading.dismiss();\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'Password has been reset.',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n this.router.navigate(['/account/login']);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n } else {\r\n await loading.dismiss();\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n // subHeader: 'Error',\r\n message: 'Error resseting password.',\r\n buttons: ['OK']\r\n });\r\n \r\n await alert.present();\r\n }\r\n });\r\n\r\n }\r\n }\r\n\r\n async checkSecurityQuestionAnswer() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Authenticating Security Question answer...',\r\n });\r\n await loading.present();\r\n\r\n this.userSecurityQuestionAnswerSvc.checkIsAnswerCorrect(\r\n this.formGroup.controls.userName.value,\r\n this.securityQuestion.id,\r\n this.formGroup.controls.securityQuestionAnswer.value\r\n ).subscribe(async isCorrect => {\r\n await loading.dismiss();\r\n if (isCorrect) {\r\n this.securityQuestion = null;\r\n this.formGroup.controls.securityQuestionAnswer.clearValidators();\r\n this.formGroup.controls.securityQuestionAnswer.updateValueAndValidity();\r\n this.resetPassword(false);\r\n } else {\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n // subHeader: 'Error',\r\n message: 'Answer was incorrect.',\r\n buttons: ['OK']\r\n });\r\n \r\n await alert.present();\r\n }\r\n });\r\n\r\n }\r\n\r\n initializeNewPasswordReset() {\r\n this.token = null;\r\n this.passwordResetToken = new PasswordResetTokenDto();\r\n }\r\n\r\n hideShowPassword() {\r\n this.passwordType = this.passwordType === 'text' ? 'password' : 'text';\r\n this.passwordIcon = this.passwordIcon === 'eye-off' ? 'eye' : 'eye-off';\r\n }\r\n\r\n hideShowPasswordConfirm() {\r\n this.passwordConfirmType = this.passwordConfirmType === 'text' ? 'password' : 'text';\r\n this.passwordConfirmIcon = this.passwordConfirmIcon === 'eye-off' ? 'eye' : 'eye-off';\r\n }\r\n\r\n async resetViaEmail() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Searching for User...',\r\n });\r\n await loading.present();\r\n \r\n this.passwordResetSvc.canFindUser(this.formGroup.controls.userName.value).subscribe(async didFindUser => {\r\n if (didFindUser) {\r\n await loading.dismiss();\r\n \r\n this.resetPassword(true).then();\r\n } else {\r\n await loading.dismiss();\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n // subHeader: 'Error',\r\n message: 'User was not found.',\r\n buttons: ['OK']\r\n });\r\n \r\n await alert.present();\r\n }\r\n });\r\n }\r\n\r\n async resetViaSecurityQuestion() {\r\n \r\n const loading1 = await this.loadingController.create({\r\n message: 'Searching for User...',\r\n });\r\n await loading1.present();\r\n \r\n this.passwordResetSvc.canFindUser(this.formGroup.controls.userName.value).subscribe(async didFindUser => {\r\n if (didFindUser) {\r\n await loading1.dismiss();\r\n \r\n const loading2 = await this.loadingController.create({\r\n message: 'Getting Security Question...',\r\n });\r\n await loading2.present();\r\n\r\n this.userSecurityQuestionAnswerSvc.getSecurityQuestion(this.formGroup.controls.userName.value).subscribe(async securityQuestion => {\r\n await loading2.dismiss();\r\n\r\n if (securityQuestion) {\r\n this.securityQuestion = securityQuestion;\r\n this.formGroup.controls.securityQuestionAnswer.setValidators([Validators.required]);\r\n this.formGroup.controls.securityQuestionAnswer.updateValueAndValidity();\r\n } else {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n // subHeader: 'Error',\r\n message: 'No Security Question found for User. Please Reset Password via Email.',\r\n buttons: ['OK']\r\n });\r\n \r\n await alert.present();\r\n }\r\n })\r\n } else {\r\n await loading1.dismiss();\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n // subHeader: 'Error',\r\n message: 'User was not found.',\r\n buttons: ['OK']\r\n });\r\n \r\n await alert.present();\r\n }\r\n });\r\n\r\n }\r\n\r\n}\r\n","import { FormControl } from '@angular/forms';\r\n \r\nexport class EmailValidator {\r\n \r\n static isValid(control: FormControl){\r\n \r\n \t// let re = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n let re = /^[a-zA-Z0-9._]+[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/;\r\n let result = re.test(control.value);\r\n \r\n if (!result) {\r\n \treturn {\r\n \t\t'email:validation:fail' : true\r\n \t}\r\n }\r\n \r\n return null;\r\n }\r\n \r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\n\r\nimport { RegisterPage } from './register.page';\r\nimport { BotDetectCaptchaModule } from 'angular-captcha';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n IonicModule,\r\n BotDetectCaptchaModule\r\n ],\r\n declarations: [RegisterPage]\r\n})\r\nexport class RegisterPageModule {}\r\n","module.exports = \".error-label {\\n font-weight: bold;\\n color: red;\\n}\\n\\nion-alert.security-question-alert {\\n --min-width: 25% !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvYWNjb3VudC9yZWdpc3Rlci9aOlxcc291cmNlXFxPQUNJXFxPQUNJXFxvYWNpLWNlcnRpZmljYXRpb24vc3JjXFxhcHBcXGFjY291bnRcXHJlZ2lzdGVyXFxyZWdpc3Rlci5wYWdlLnNjc3MiLCJzcmMvYXBwL2FjY291bnQvcmVnaXN0ZXIvcmVnaXN0ZXIucGFnZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksaUJBQUE7RUFDQSxVQUFBO0FDQ0o7O0FERUE7RUFDSSwyQkFBQTtBQ0NKIiwiZmlsZSI6InNyYy9hcHAvYWNjb3VudC9yZWdpc3Rlci9yZWdpc3Rlci5wYWdlLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuZXJyb3ItbGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBjb2xvcjogcmVkO1xyXG59XHJcblxyXG5pb24tYWxlcnQuc2VjdXJpdHktcXVlc3Rpb24tYWxlcnQge1xyXG4gICAgLS1taW4td2lkdGg6IDI1JSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLyAuc2VjdXJpdHktcXVlc3Rpb24tYWxlcnQgPiAuYWxlcnQtd3JhcHBlciA+IC5hbGVydC1yYWRpby1ncm91cCB7XHJcbi8vICAgICBtYXgtaGVpZ2h0OiAzMCUgIWltcG9ydGFudDtcclxuLy8gfSIsIi5lcnJvci1sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogcmVkO1xufVxuXG5pb24tYWxlcnQuc2VjdXJpdHktcXVlc3Rpb24tYWxlcnQge1xuICAtLW1pbi13aWR0aDogMjUlICFpbXBvcnRhbnQ7XG59Il19 */\"","import { Component, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControl } from '@angular/forms';\r\nimport { AlertController, LoadingController, ModalController } from '@ionic/angular';\r\nimport { CreateUserDto, UserServiceProxy, FarmerCreateDto, FarmerServiceServiceProxy, RegistrationTokenServiceServiceProxy, RegistrationTokenDto, TokenAuthServiceProxy, AuthenticateModel, SecurityQuestionDto, SecurityQuestionServiceServiceProxy, UserSecurityQuestionAnswer, UserSecurityQuestionAnswerServiceServiceProxy, ServiceProxy, CaptchaModel } from '@shared/service-proxies/service-proxies';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport * as moment from 'moment';\r\nimport { HttpClient, HttpHeaders, HttpResponse } from '@angular/common/http';\r\nimport { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\r\nimport { LoginService } from '../login/login.service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { UserNameValidator } from './user-name.validator';\r\nimport { EmailValidator } from './email.validator';\r\nimport { CaptchaComponent } from 'angular-captcha';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { SecurityQuestionPage } from './security-question/security-question.page';\r\n\r\n@Component({\r\n selector: 'app-register',\r\n templateUrl: './register.page.html',\r\n styleUrls: ['./register.page.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class RegisterPage implements OnInit {\r\n\r\n token: string;\r\n registrationToken: RegistrationTokenDto;\r\n passwordType: string = 'password';\r\n passwordIcon: string = 'eye-off';\r\n passwordConfirmType: string = 'password';\r\n passwordConfirmIcon: string = 'eye-off';\r\n formGroup: FormGroup;\r\n securityQuestions: SecurityQuestionDto[];\r\n availableSecurityQuestions1: SecurityQuestionDto[];\r\n availableSecurityQuestions2: SecurityQuestionDto[];\r\n userSecurityQuestionAnswers: UserSecurityQuestionAnswer[]; // = [\r\n // {\r\n // id: null,\r\n // answer: null,\r\n // securityQuestion: { id: null, label: null, init: null, toJSON: null, clone: null },\r\n // securityQuestionId: null,\r\n // user: null,\r\n // userId: null,\r\n // init: null,\r\n // toJSON: null,\r\n // clone: null\r\n // },\r\n // {\r\n // id: null,\r\n // answer: null,\r\n // securityQuestion: { id: null, label: null, init: null, toJSON: null, clone: null },\r\n // securityQuestionId: null,\r\n // user: null,\r\n // userId: null,\r\n // init: null,\r\n // toJSON: null,\r\n // clone: null\r\n // }\r\n // ];\r\n \r\n private baseUrl: string = AppConsts.remoteServiceBaseUrl;\r\n @ViewChild(CaptchaComponent, { static: true }) captchaComponent: CaptchaComponent;\r\n\r\n customAlertOptions: any = {\r\n cssClass: 'security-question-alert'\r\n };\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private alertController: AlertController,\r\n private userService: UserServiceProxy,\r\n private farmerSvc: FarmerServiceServiceProxy,\r\n private loadingController: LoadingController,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private registrationSvc: RegistrationTokenServiceServiceProxy,\r\n private _tokenAuthService: TokenAuthServiceProxy,\r\n private loginService: LoginService,\r\n private titleService: Title,\r\n private securityQuestionSvc: SecurityQuestionServiceServiceProxy,\r\n private userSecurityQuestionAnswerSvc: UserSecurityQuestionAnswerServiceServiceProxy,\r\n private http: HttpClient,\r\n private modalController: ModalController\r\n // private captchaSvc: ServiceProxy\r\n ) {\r\n this.route.queryParams.subscribe(params => {\r\n // if (params && params.token) {\r\n // this.token = params.token;\r\n // if (this.token) {\r\n // this.getUserRegistration();\r\n // } else {\r\n // this.initializeNewRegistration();\r\n // }\r\n // } else {\r\n // this.initializeNewRegistration();\r\n // }\r\n this.setupForm();\r\n this.getSecurityQuestions();\r\n });\r\n this.titleService.setTitle('OACI - Register');\r\n }\r\n\r\n setupForm() {\r\n if (this.formGroup) {\r\n this.formGroup.reset();\r\n }\r\n this.formGroup = this.formBuilder.group({\r\n firstName: ['', /*this.token ? */Validators.required/* : null*/],\r\n lastName: ['', /*this.token ? */Validators.required/* : null*/],\r\n userName: ['', /*this.token ? */[Validators.required, UserNameValidator.isValid]/* : null*/],\r\n emailAddress: ['', [Validators.required, EmailValidator.isValid]/*, Validators.email*/],\r\n // emailAddressConfirm: ['', [Validators.required, EmailValidator.isValid]/*, Validators.email*/],\r\n password: ['', /*this.token ? */[Validators.required,Validators.minLength(5)]/* : null*/],\r\n passwordConfirm: ['', /*this.token ? */[Validators.required,Validators.minLength(5)]/* : null*/]\r\n });\r\n const uSQA1 = new UserSecurityQuestionAnswer();\r\n uSQA1.id = 1;\r\n // uSQA1.securityQuestion = { id: null, label: null, init: null, toJSON: null, clone: null };\r\n const uSQA2 = new UserSecurityQuestionAnswer();\r\n uSQA2.id = 2;\r\n // uSQA2.securityQuestion = { id: null, label: null, init: null, toJSON: null, clone: null };\r\n this.userSecurityQuestionAnswers = [uSQA1, uSQA2];\r\n }\r\n\r\n getSecurityQuestions() {\r\n this.securityQuestionSvc.getAll().subscribe(questions => {\r\n this.securityQuestions = questions;\r\n this.availableSecurityQuestions1 = JSON.parse(JSON.stringify(questions));\r\n this.availableSecurityQuestions2 = JSON.parse(JSON.stringify(questions));\r\n });\r\n }\r\n\r\n // getUserRegistration() {\r\n // this.registrationSvc.getByToken(this.token).subscribe(async registrationToken => {\r\n // if (registrationToken) {\r\n // this.registrationToken = registrationToken;\r\n // this.formGroup.patchValue({\r\n // 'emailAddress': this.registrationToken.emailAddress,\r\n // 'emailAddressConfirm': this.registrationToken.emailAddress\r\n // });\r\n // if (\r\n // !this.registrationToken.isActive ||\r\n // this.registrationToken.expirationDate < moment()\r\n // ) {\r\n // this.formGroup.disable();\r\n\r\n // const alert = await this.alertController.create({\r\n // header: 'Error',\r\n // message: 'This registration token is expired and/or in-active.',\r\n // buttons: [\r\n // {\r\n // text: 'Okay',\r\n // handler: () => {\r\n // this.router.navigate(['/account/login']);\r\n // }\r\n // }\r\n // ]\r\n // });\r\n\r\n // await alert.present();\r\n // }\r\n // }\r\n // });\r\n // }\r\n\r\n ngOnInit() {\r\n this.captchaComponent.captchaEndpoint = this.baseUrl + '/simple-captcha-endpoint.ashx';\r\n }\r\n\r\n ionViewWillEnter() {\r\n this.setupForm();\r\n }\r\n\r\n async submitForm() {\r\n if (this.isValid()) {\r\n const alert1 = await this.alertController.create({\r\n header: 'Registration Confirmation',\r\n message: 'The information you have entered including your email is correct?

Email: ' + this.formGroup.controls.emailAddress.value,\r\n buttons: [\r\n {\r\n text: 'No',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: (blah) => {\r\n \r\n }\r\n }, {\r\n text: 'Yes',\r\n handler: async () => {\r\n // const alert2 = await this.alertController.create({\r\n // header: 'Registration Confirmation',\r\n // message: 'Are you sure the information you have entered including your email is correct?

Email: ' + this.formGroup.controls.emailAddress.value,\r\n // buttons: [\r\n // {\r\n // text: 'No',\r\n // role: 'cancel',\r\n // cssClass: 'secondary',\r\n // handler: (blah) => {\r\n \r\n // }\r\n // }, {\r\n // text: 'Yes',\r\n // handler: () => {\r\n this.registerUser().then();\r\n // }\r\n // }\r\n // ]\r\n // });\r\n // await alert2.present();\r\n }\r\n }\r\n ]\r\n });\r\n await alert1.present();\r\n } else {\r\n // const errorMessages = [];\r\n // if (!this.formGroup.valid) errorMessages.push('· Missing Form Fields.');\r\n // if (!this.passwordsMatch()) errorMessages.push('· Passwords do not match.');\r\n // const alert = await this.alertController.create({\r\n // header: 'Error',\r\n // // subHeader: 'Error',\r\n // message: errorMessages.join('
'),\r\n // buttons: ['OK']\r\n // });\r\n\r\n // await alert.present();\r\n }\r\n }\r\n\r\n passwordsMatch() { // stupid chrome autofill puts password value in\r\n return /*this.registrationToken ? */this.formGroup.controls.password.value == this.formGroup.controls.passwordConfirm.value/* : true*/;\r\n }\r\n\r\n async registerUser() {\r\n\r\n const loading = await this.loadingController.create({\r\n message: 'Registering user...',\r\n });\r\n await loading.present();\r\n\r\n // if (!this.token) {\r\n // this.registrationSvc.create(this.formGroup.controls.emailAddress.value).subscribe(async repsonse => {\r\n // if (repsonse) {\r\n // await loading.dismiss();\r\n\r\n // const alert = await this.alertController.create({\r\n // header: 'Success',\r\n // message: 'Please check your email for a confirmation link.',\r\n // buttons: [\r\n // {\r\n // text: 'Okay',\r\n // handler: () => {\r\n // this.router.navigate(['/account/login']);\r\n // }\r\n // }\r\n // ]\r\n // });\r\n\r\n // await alert.present();\r\n // }\r\n // });\r\n // } else {\r\n\r\n const user: CreateUserDto = this.formGroup.getRawValue();\r\n const fullName = user.firstName + ' ' + user.lastName;\r\n user.name = fullName;\r\n user.surname = fullName;\r\n user.fullName = fullName;\r\n user.isActive = true;\r\n user.sendPasswordResetLink = false;\r\n user.sendConfirmationEmail = true;\r\n this.userService.doesUserExist(user.userName).subscribe(async exist => {\r\n if (exist) {\r\n await loading.dismiss();\r\n\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n message: 'This username is taken',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n } else {\r\n var captchaPostData = { userEnteredCaptchaCode: null, captchaId: null }; // new CaptchaModel();\r\n captchaPostData.userEnteredCaptchaCode = this.captchaComponent.userEnteredCaptchaCode;\r\n captchaPostData.captchaId = this.captchaComponent.captchaId;\r\n this.captchaSend(captchaPostData).subscribe(\r\n async response => {\r\n if (response.success == false) {\r\n await loading.dismiss();\r\n\r\n this.captchaComponent.reloadImage();\r\n\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n message: 'Captcha code was invalid. Try again.',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n \r\n }\r\n }\r\n ]\r\n });\r\n \r\n await alert.present();\r\n } else {\r\n this.userService.create(user).subscribe(\r\n userResponse => {\r\n const farmer: FarmerCreateDto = new FarmerCreateDto();\r\n farmer.userId = userResponse.id;\r\n farmer.token = this.token;\r\n this.farmerSvc.create(farmer).subscribe(\r\n async farmerResponse => {\r\n \r\n // fire and forget\r\n this.userSecurityQuestionAnswers[0].userId = userResponse.id;\r\n this.userSecurityQuestionAnswers[1].userId = userResponse.id;\r\n this.userSecurityQuestionAnswerSvc.addAll(this.userSecurityQuestionAnswers).subscribe(() => {});\r\n \r\n this.userService.sendConfirmationEmail(userResponse.id, farmerResponse.id).subscribe(() => {});\r\n \r\n // this.registrationSvc.expireToken(this.token).subscribe(async tokenExpResponse => {\r\n await loading.dismiss();\r\n this.loginService.rememberMe = true;\r\n this.loginService.authenticateModel = new AuthenticateModel({\r\n password: user.password,\r\n rememberClient: true,\r\n userName: user.userName\r\n });\r\n this.loginService.postLoginPage = '/main/farmer';\r\n this.loginService.authenticate().then().catch(async () => {\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'User has been registered but could not be logged in',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n this.router.navigate(['/account/login']);\r\n }\r\n }\r\n ]\r\n });\r\n \r\n await alert.present();\r\n });\r\n // });\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n },\r\n async error => {\r\n await loading.dismiss();\r\n \r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n message: 'There was an error registering new User',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n \r\n }\r\n }\r\n ]\r\n });\r\n \r\n await alert.present();\r\n }\r\n );\r\n }\r\n });\r\n }\r\n })\r\n // }\r\n }\r\n\r\n // initializeNewRegistration() {\r\n // this.token = null;\r\n // this.registrationToken = new RegistrationTokenDto();\r\n // }\r\n\r\n hideShowPassword() {\r\n this.passwordType = this.passwordType === 'text' ? 'password' : 'text';\r\n this.passwordIcon = this.passwordIcon === 'eye-off' ? 'eye' : 'eye-off';\r\n }\r\n\r\n hideShowPasswordConfirm() {\r\n this.passwordConfirmType = this.passwordConfirmType === 'text' ? 'password' : 'text';\r\n this.passwordConfirmIcon = this.passwordConfirmIcon === 'eye-off' ? 'eye' : 'eye-off';\r\n }\r\n\r\n // emailsMatch() {\r\n // return this.formGroup.controls.emailAddress.value == this.formGroup.controls.emailAddressConfirm.value;\r\n // }\r\n\r\n userNameMeetsRequirements() {\r\n let re = /^[a-zA-Z0-9]{3}[a-zA-Z0-9]*$/;\r\n return re.test(this.formGroup.controls.userName.value);\r\n }\r\n\r\n passwordsMatchAndMeetRequirements() {\r\n return this.formGroup.controls.password.value == this.formGroup.controls.passwordConfirm.value && this.formGroup.controls.password.value.length >= 5;\r\n }\r\n\r\n emailValid() {\r\n // const result = EmailValidator.isValid(this.formGroup.controls.emailAddress);\r\n // return !result['email:validation:fail'];\r\n let re = /^[a-zA-Z0-9._]+[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/;\r\n return re.test(this.formGroup.controls.emailAddress.value);\r\n }\r\n\r\n isValid() {\r\n return this.formGroup.valid && !this.hasError();\r\n }\r\n\r\n hasError() {\r\n // return this.formGroup.controls.emailAddress.value && !this.emailValid() ||\r\n // this.formGroup.controls.emailAddressConfirm.value && !this.emailsMatch() ||\r\n return !this.emailValid() ||\r\n !this.userNameMeetsRequirements() ||\r\n // !this.emailsMatch() ||\r\n !this.passwordsMatchAndMeetRequirements() ||\r\n !this.userHasAnsweredAllQuestions() ||\r\n !this.hasEnteredCaptchaCode();\r\n }\r\n\r\n userHasSelctedAllQuestions() {\r\n return this.userHasSelctedQuestion(0) && this.userHasSelctedQuestion(1);\r\n }\r\n\r\n userHasSelctedQuestion(index) {\r\n return this.userSecurityQuestionAnswers[index].securityQuestionId != null;\r\n }\r\n\r\n userHasAnsweredAllQuestions() {\r\n return this.userHasAnsweredQuestion(0) && this.userHasAnsweredQuestion(1);\r\n }\r\n\r\n userHasAnsweredQuestion(index) {\r\n return this.userSecurityQuestionAnswers[index].answer != null;\r\n }\r\n\r\n securityQuestionOnChange(event, index: number) {\r\n this.userSecurityQuestionAnswers[index].answer = null;\r\n if (index == 0) {\r\n this.availableSecurityQuestions2 = JSON.parse(JSON.stringify(\r\n this.securityQuestions.filter(x => x.id != this.userSecurityQuestionAnswers[index].securityQuestionId)\r\n ));\r\n } else {\r\n this.availableSecurityQuestions1 = JSON.parse(JSON.stringify(\r\n this.securityQuestions.filter(x => x.id != this.userSecurityQuestionAnswers[index].securityQuestionId)\r\n ));\r\n }\r\n }\r\n\r\n \r\n // // Process the form on submit event.\r\n // validate(value, valid): void {\r\n\r\n // // get the user-entered captcha code value to be validated at the backend side \r\n // let userEnteredCaptchaCode = this.captchaComponent.userEnteredCaptchaCode;\r\n\r\n // // get the id of a captcha instance that the user tried to solve\r\n // let captchaId = this.captchaComponent.captchaId;\r\n\r\n // const postData = {\r\n // userEnteredCaptchaCode: userEnteredCaptchaCode,\r\n // captchaId: captchaId\r\n // };\r\n\r\n // // post the captcha data to the backend\r\n // this.captchaSend(postData)\r\n // .subscribe(\r\n // response => {\r\n // if (response.success == false) {\r\n // // captcha validation failed; reload image\r\n // this.captchaComponent.reloadImage();\r\n // // TODO: maybe display an error message, too\r\n // } else {\r\n // // TODO: captcha validation succeeded; proceed with the workflow\r\n // }\r\n // });\r\n // }\r\n\r\n captchaSend(data: Object): Observable {\r\n const options = {\r\n headers: new HttpHeaders(\r\n {'Content-Type': 'application/json; charset=utf-8'}\r\n )\r\n };\r\n\r\n return this.http.post(this.baseUrl + '/Captcha', data, options);\r\n }\r\n\r\n hasEnteredCaptchaCode() {\r\n return this.captchaComponent && this.captchaComponent.userEnteredCaptchaCode != null && this.captchaComponent.userEnteredCaptchaCode!= '';\r\n }\r\n\r\n async openSecurityQuestion(event, number) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n const questions = number == 1 ? this.availableSecurityQuestions1 : number == 2 ? this.availableSecurityQuestions2 : [];\r\n const modal = await this.modalController.create({\r\n component: SecurityQuestionPage,\r\n componentProps: {\r\n 'number': number,\r\n 'questions': questions,\r\n }\r\n });\r\n modal.onDidDismiss().then((param) => {\r\n if (param && param.data && param.data['question']) {\r\n if (number == 1) {\r\n // this.userSecurityQuestionAnswers[0].securityQuestion = param.data['question'];\r\n this.userSecurityQuestionAnswers[0].securityQuestionId = param.data['question'].id;\r\n } else if (number == 2) {\r\n // this.userSecurityQuestionAnswers[1].securityQuestion = param.data['question'];\r\n this.userSecurityQuestionAnswers[1].securityQuestionId = param.data['question'].id;\r\n } else {\r\n\r\n }\r\n this.securityQuestionOnChange(null, --number);\r\n }\r\n });\r\n return await modal.present();\r\n }\r\n\r\n getUserSecurityQuestionLabel(index) {\r\n if (this.userSecurityQuestionAnswers[index].securityQuestionId) {\r\n return this.securityQuestions.find(x => x.id == this.userSecurityQuestionAnswers[index].securityQuestionId).label;\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { SecurityQuestionPage } from './security-question.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule\r\n ],\r\n declarations: [SecurityQuestionPage]\r\n})\r\nexport class SecurityQuestionPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FjY291bnQvcmVnaXN0ZXIvc2VjdXJpdHktcXVlc3Rpb24vc2VjdXJpdHktcXVlc3Rpb24ucGFnZS5zY3NzIn0= */\"","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ModalController } from '@ionic/angular';\r\nimport { SecurityQuestionDto } from '@shared/service-proxies/service-proxies';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\n\r\n@Component({\r\n selector: 'app-security-question',\r\n templateUrl: './security-question.page.html',\r\n styleUrls: ['./security-question.page.scss'],\r\n})\r\nexport class SecurityQuestionPage implements OnInit {\r\n \r\n isLoaded: boolean = false;\r\n\r\n @Input() number: number;\r\n @Input() questions: SecurityQuestionDto[] = [];\r\n\r\n constructor(\r\n storageService: AppStorageService,\r\n private modalController: ModalController\r\n ) { \r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n \r\n this.isLoaded = true;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n selectedQuestion(securityQuestion) {\r\n this.modalController.dismiss({\r\n 'question': securityQuestion\r\n });\r\n }\r\n\r\n}\r\n","import { FormControl } from '@angular/forms';\r\n \r\nexport class UserNameValidator {\r\n \r\n static isValid(control: FormControl){\r\n \r\n let re = /^[a-zA-Z0-9]{3}[a-zA-Z0-9]*$/;\r\n let result = re.test(control.value);\r\n \r\n if (!result) {\r\n \treturn {\r\n \t\t'userName:validation:fail' : true\r\n \t}\r\n }\r\n \r\n return null;\r\n }\r\n \r\n}","import { NgModule } from '@angular/core';\r\nimport { PreloadAllModules, RouterModule, Routes } from '@angular/router';\r\nimport { AccountsRoutingModule_routes } from './account/account-routing-paths';\r\nimport { MainRoutingModule_routes } from './main/main-routing-paths';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: '/main/home',\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'account',\r\n children: AccountsRoutingModule_routes\r\n },\r\n // {\r\n // path: 'account/login',\r\n // component: LoginPage\r\n // },\r\n // {\r\n // path: 'account/register',\r\n // component: RegisterPage\r\n // },\r\n {\r\n path: 'main', children: MainRoutingModule_routes\r\n }\r\n\r\n\r\n\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules }),\r\n\r\n ],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","export enum AppThemeColors{\r\n Primary = \"primary\",\r\n Secondary = \"secondary\",\r\n Tertiary = \"tertiary\",\r\n Success = \"success\",\r\n Warning = \"warning\",\r\n Danger = \"danger\",\r\n Dark = \"dark\",\r\n Medium = \"medium\",\r\n Light = \"light\",\r\n OliveGreen = \"olive-green\",\r\n DarkCyan = \"dark-cyan\",\r\n BabyBlue = \"baby-blue\",\r\n Purple = \"purple\"\r\n}","module.exports = \".pointer {\\n cursor: pointer;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvWjpcXHNvdXJjZVxcT0FDSVxcT0FDSVxcb2FjaS1jZXJ0aWZpY2F0aW9uL3NyY1xcYXBwXFxhcHAuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2FwcC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGVBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL2FwcC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5wb2ludGVyIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufSIsIi5wb2ludGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufSJdfQ== */\"","import { Component } from '@angular/core';\r\n\r\nimport { NavController, Platform } from '@ionic/angular';\r\nimport { SplashScreen } from '@ionic-native/splash-screen/ngx';\r\nimport { StatusBar } from '@ionic-native/status-bar/ngx';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router, NavigationExtras } from '@angular/router';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { FarmerServiceServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { HelpDeskService } from '@shared/help-desk/help-desk.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: 'app.component.html',\r\n styleUrls: ['app.component.scss']\r\n})\r\nexport class AppComponent {\r\n AppConsts: AppConsts = AppConsts;\r\n public appPages = [\r\n {\r\n title: 'Home',\r\n url: '/main/home',\r\n icon: 'home',\r\n featureEnabled: true\r\n },\r\n {\r\n title:'Admin',\r\n url:'/main/admin',\r\n icon:'construct',\r\n roles: [\"Role.Admin\"],\r\n authorize:true,\r\n featureEnabled: true\r\n },\r\n {\r\n title:'Dashboard',\r\n url:'/main/dashboard',\r\n icon:'analytics',\r\n roles: [\"Role.Admin\"],\r\n authorize:true,\r\n featureEnabled: true\r\n },\r\n {\r\n title: 'Farmer Profile',\r\n url: '/main/farmer',\r\n icon: 'person',\r\n authorize: true,\r\n roles: [\"Pages.Farmer\"],\r\n featureEnabled: true\r\n },\r\n // {\r\n // title: 'Certifications',\r\n // url: \"/main/certifications\",\r\n // icon: \"list\",\r\n // authorize: true,\r\n // roles: [\"Pages.Certifications\"],\r\n // featureEnabled: AppConsts.enabledFeatures.main.certifications.menu\r\n // },\r\n {\r\n title: 'Farmers',\r\n url: \"/main/farmers\",\r\n icon: \"list\",\r\n authorize: true,\r\n roles: [\"Pages.Farmers\"],\r\n featureEnabled: AppConsts.enabledFeatures.main.farmers.menu\r\n },\r\n {\r\n title: 'Assessments',\r\n url: \"/main/verifications\",\r\n icon: \"list\",\r\n authorize: true,\r\n roles: [\"Pages.Verifications\"],\r\n featureEnabled: AppConsts.enabledFeatures.main.verifications.menu\r\n },\r\n {\r\n title: 'Users',\r\n url: '/main/users',\r\n icon: 'people',\r\n authorize: true,\r\n roles: [\"Pages.Users\"],\r\n featureEnabled: AppConsts.enabledFeatures.main.users.menu\r\n },\r\n {\r\n title: 'Help Desk',\r\n url: '',\r\n icon: 'help',\r\n authorize: true,\r\n roles: [],\r\n featureEnabled: true\r\n },\r\n {\r\n title: \"Log Out\",\r\n url: \"/account/login\", // url: \"/account/logout\",\r\n icon: \"log-out\",\r\n authorize: true,\r\n featureEnabled: true\r\n },\r\n {\r\n title: \"Log In\",\r\n url: \"/account/login\",\r\n icon: \"log-in\",\r\n notLoggedIn: true,\r\n featureEnabled: true\r\n },\r\n {\r\n title: \"Register\",\r\n url: \"/account/register\",\r\n icon: \"create\",\r\n notLoggedIn: true,\r\n featureEnabled: true\r\n }\r\n ];\r\n\r\n constructor(\r\n private platform: Platform,\r\n private splashScreen: SplashScreen,\r\n private statusBar: StatusBar,\r\n private sessionService: AppSessionService,\r\n private permissionChecker: PermissionCheckerService,\r\n private router: Router,\r\n private appStorageService: AppStorageService,\r\n private farmerSvc: FarmerServiceServiceProxy,\r\n private helpDeskService: HelpDeskService,\r\n private navCtrl: NavController\r\n ) {\r\n this.initializeApp();\r\n }\r\n\r\n initializeApp() {\r\n this.platform.ready().then(() => {\r\n this.statusBar.styleDefault();\r\n this.splashScreen.hide();\r\n });\r\n }\r\n shouldShowPage(p): boolean {\r\n if (!p.featureEnabled)return false;\r\n if (p.notLoggedIn) return this.sessionService.user == null;\r\n if (p.authorize === undefined || p.authorize == false) return true;\r\n if (p.authorize && (p.roles == null || p.roles.length == 0))\r\n return this.sessionService.user != null;\r\n for (let r in p.roles) {\r\n if (this.permissionChecker.isGranted(p.roles[r])) return true;\r\n }\r\n return false;\r\n }\r\n\r\n goToPage(p) {\r\n if (\r\n p.title == 'Profile' &&\r\n this.sessionService.user != null\r\n ) {\r\n this.farmerSvc.getFarmerIdByUserId(this.sessionService.user.id).subscribe(farmerKunId => {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n farmerId: farmerKunId\r\n }\r\n };\r\n this.router.navigate([p.url], navigationExtras);\r\n });\r\n return;\r\n }\r\n if (p.title == 'Help Desk') this.openHelpDeskPopup();\r\n // if logging out on farmer profile clear token over there after saving all the things\r\n if (p.title == 'Log Out' && this.router.url.indexOf('/main/farmer') == -1) this.appStorageService.clearToken();\r\n this.router.navigate([p.url]);\r\n }\r\n\r\n openHelpDeskPopup() {\r\n this.helpDeskService.openHelpDeskPopup();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class Globals {\r\n public versionBuild: number = 20210923;\r\n public versionMajor: number = 1;\r\n public versionMinor: number = 0;\r\n public versionRevision: number = 0;\r\n}\r\n","import { NgModule, APP_INITIALIZER, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { RouteReuseStrategy } from '@angular/router';\r\n\r\nimport { IonicModule, IonicRouteStrategy } from '@ionic/angular';\r\nimport { SplashScreen } from '@ionic-native/splash-screen/ngx';\r\nimport { StatusBar } from '@ionic-native/status-bar/ngx';\r\n\r\nimport { AppComponent } from './app.component';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { HTTP_INTERCEPTORS, HttpClient, HttpHandler } from '@angular/common/http';\r\nimport {\r\n API_BASE_URL,\r\n SessionServiceProxy,\r\n TokenAuthServiceProxy,\r\n FarmerServiceServiceProxy,\r\n CountyServiceServiceProxy,\r\n UserServiceProxy,\r\n CropServiceServiceProxy,\r\n NutrientSourceServiceServiceProxy,\r\n RegistrationTokenServiceServiceProxy,\r\n FarmerCountyServiceServiceProxy,\r\n FarmerCropQuantityServiceServiceProxy,\r\n FarmerNutrientSourceQuantityServiceServiceProxy,\r\n PasswordResetServiceServiceProxy,\r\n VVerificationServiceServiceProxy,\r\n VVerificationQuestionAnswerServiceServiceProxy,\r\n ManureStorageSourceServiceServiceProxy,\r\n ManureStorageDurationServiceServiceProxy,\r\n ManureStorageTypeServiceServiceProxy,\r\n FarmerManureStorageServiceServiceProxy,\r\n CostShareServiceServiceProxy,\r\n FarmerCostShareServiceServiceProxy,\r\n WatershedServiceServiceProxy,\r\n FarmerWatershedServiceServiceProxy,\r\n CertificationCategoryServiceServiceProxy,\r\n CertificationAnswerServiceServiceProxy,\r\n NMPTypeServiceServiceProxy,\r\n NutrientRecommendationServiceServiceProxy,\r\n FarmerNutrientRecommendationQuantityServiceServiceProxy,\r\n CertificationServiceServiceProxy,\r\n RoleServiceProxy,\r\n AccountServiceProxy,\r\n DashboardServiceServiceProxy,\r\n ExportServiceServiceProxy,\r\n VVerificationQuestionNoteServiceServiceProxy,\r\n SecurityQuestionServiceServiceProxy,\r\n UserSecurityQuestionAnswerServiceServiceProxy\r\n} from '@shared/service-proxies/service-proxies';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { SharedModule } from '@shared/shared.module';\r\nimport { LoginPage } from './account/login/login.page';\r\nimport { HomePage } from './main/home/home.page';\r\nimport { LoginPageModule } from './account/login/login.module';\r\nimport { HomePageModule } from './main/home/home.module';\r\nimport { RegisterPage } from './account/register/register.page';\r\nimport { RegisterPageModule } from './account/register/register.module';\r\nimport { PasswordResetPage } from './account/password-reset/password-reset.page';\r\nimport { PasswordResetPageModule } from './account/password-reset/password-reset.module';\r\nimport { AppRouteGuard } from '@shared/auth/auth-route-guard';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { AppHttpInterceptor } from '@shared/app-http-interceptor';\r\nimport { AppPreBootstrap } from './AppPreBootstrap';\r\nimport { IonicStorageModule } from '@ionic/storage';\r\nimport { CertificationPageModule } from './main/certification/certification.module';\r\nimport { CertificationPage } from './main/certification/certification.page';\r\nimport { FarmerPageModule } from './main/farmer/farmer.module';\r\nimport { FarmersPageModule } from './main/farmers/farmers.module';\r\nimport { FarmerPage } from './main/farmer/farmer.page';\r\nimport { FarmersPage } from './main/farmers/farmers.page';\r\nimport { LogoutPage } from './account/logout/logout.page';\r\nimport { LogoutPageModule } from './account/logout/logout.module';\r\nimport { ManureStoragePage } from './main/farmer/manure-storage/manure-storage.page';\r\nimport { ManureStoragePageModule } from './main/farmer/manure-storage/manure-storage.module';\r\nimport { UsersPage } from './main/users/users.page';\r\nimport { UsersPageModule } from './main/users/users.module';\r\nimport { UserPage } from './main/user/user.page';\r\nimport { UserPageModule } from './main/user/user.module';\r\nimport { VerificationPage } from './main/verification/verification.page';\r\nimport { VerificationsPage } from './main/verifications/verifications.page';\r\nimport { VerificationPageModule } from './main/verification/verification.module';\r\nimport { VerificationsPageModule } from './main/verifications/verifications.module';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { Ionic4DatepickerModule } from '@logisticinfotech/ionic4-datepicker';\r\nimport { CertificationScorePage } from './main/certification-score/certification-score.page';\r\nimport { CertificationScorePageModule } from './main/certification-score/certification-score.module';\r\nimport { HelpDeskPage } from './main/help-desk/help-desk.page';\r\nimport { HelpDeskPageModule } from './main/help-desk/help-desk.module';\r\nimport { HelpDeskService } from '@shared/help-desk/help-desk.service';\r\nimport { DashboardPageModule } from './main/dashboard/dashboard.module';\r\nimport { ExportService } from '@shared/export/export.service';\r\nimport { Globals } from './app.globals';\r\nimport { ProfilePage } from './main/farmers/profile/profile.page';\r\nimport { ProfilePageModule } from './main/farmers/profile/profile.module';\r\nimport { VerificationQuestionNotePage } from './main/verification/verification-question-note/verification-question-note.page';\r\nimport { VerificationQuestionNotePageModule } from './main/verification/verification-question-note/verification-question-note.module';\r\nimport { SecurityQuestionPage } from './account/register/security-question/security-question.page';\r\nimport { SecurityQuestionPageModule } from './account/register/security-question/security-question.module';\r\nimport { CertificationValidationPage } from './main/certification/certification-validation/certification-validation.page';\r\nimport { CertificationValidationPageModule } from './main/certification/certification-validation/certification-validation.module';\r\nimport { AdminPage } from './main/admin/admin.page';\r\nimport { AdminPageModule } from './main/admin/admin.module';\r\nimport { PrivacyPage } from './main/privacy/privacy.page';\r\nimport { PrivateDataPage } from './main/privacy/private-data.page';\r\nimport { PrivacyPageModule } from './main/privacy/privacy.module';\r\n\r\nexport function getRemoteServiceBaseUrl(): string {\r\n return AppConsts.remoteServiceBaseUrl;\r\n}\r\n\r\nexport function init_app(appbootstrap: AppPreBootstrap) {\r\n return () => appbootstrap.run(AppConsts.remoteServiceBaseUrl, null);\r\n}\r\n@NgModule({\r\n declarations: [AppComponent],\r\n entryComponents: [\r\n LoginPage,\r\n HomePage,\r\n RegisterPage,\r\n SecurityQuestionPage,\r\n PasswordResetPage,\r\n CertificationPage,\r\n CertificationValidationPage,\r\n CertificationScorePage,\r\n FarmerPage,\r\n FarmersPage,\r\n ProfilePage,\r\n LogoutPage,\r\n ManureStoragePage,\r\n UsersPage,\r\n UserPage,\r\n VerificationPage,\r\n VerificationsPage,\r\n VerificationQuestionNotePage,\r\n HelpDeskPage,\r\n AdminPage,\r\n PrivacyPage,\r\n PrivateDataPage\r\n ],\r\n imports: [\r\n BrowserModule,\r\n IonicModule.forRoot(),\r\n AppRoutingModule,\r\n SharedModule.forRoot(),\r\n LoginPageModule,\r\n HomePageModule,\r\n RegisterPageModule,\r\n SecurityQuestionPageModule,\r\n PasswordResetPageModule,\r\n CertificationPageModule,\r\n CertificationValidationPageModule,\r\n CertificationScorePageModule,\r\n FarmerPageModule,\r\n FarmersPageModule,\r\n ProfilePageModule,\r\n LogoutPageModule,\r\n ManureStoragePageModule,\r\n UsersPageModule,\r\n UserPageModule,\r\n VerificationPageModule,\r\n VerificationsPageModule,\r\n VerificationQuestionNotePageModule,\r\n HttpClientModule,\r\n IonicStorageModule.forRoot(),\r\n NgxDatatableModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n Ionic4DatepickerModule,\r\n HelpDeskPageModule,\r\n DashboardPageModule,\r\n AdminPageModule,\r\n PrivacyPageModule\r\n ],\r\n providers: [\r\n StatusBar,\r\n SplashScreen,\r\n AppRouteGuard,\r\n AppSessionService,\r\n AccountServiceProxy,\r\n SessionServiceProxy,\r\n HttpClient,\r\n TokenAuthServiceProxy,\r\n FarmerServiceServiceProxy,\r\n CountyServiceServiceProxy,\r\n CropServiceServiceProxy,\r\n NutrientSourceServiceServiceProxy,\r\n RegistrationTokenServiceServiceProxy,\r\n FarmerCountyServiceServiceProxy,\r\n FarmerCropQuantityServiceServiceProxy,\r\n FarmerNutrientSourceQuantityServiceServiceProxy,\r\n PasswordResetServiceServiceProxy,\r\n VVerificationServiceServiceProxy,\r\n VVerificationQuestionAnswerServiceServiceProxy,\r\n VVerificationQuestionNoteServiceServiceProxy,\r\n ManureStorageSourceServiceServiceProxy,\r\n ManureStorageDurationServiceServiceProxy,\r\n ManureStorageTypeServiceServiceProxy,\r\n FarmerManureStorageServiceServiceProxy,\r\n CostShareServiceServiceProxy,\r\n FarmerCostShareServiceServiceProxy,\r\n WatershedServiceServiceProxy,\r\n FarmerWatershedServiceServiceProxy,\r\n CertificationCategoryServiceServiceProxy,\r\n CertificationAnswerServiceServiceProxy,\r\n NMPTypeServiceServiceProxy,\r\n NutrientRecommendationServiceServiceProxy,\r\n FarmerNutrientRecommendationQuantityServiceServiceProxy,\r\n CertificationServiceServiceProxy,\r\n RoleServiceProxy,\r\n UserServiceProxy,\r\n SecurityQuestionServiceServiceProxy,\r\n UserSecurityQuestionAnswerServiceServiceProxy,\r\n Storage,\r\n AppPreBootstrap,\r\n HelpDeskService,\r\n DashboardServiceServiceProxy,\r\n ExportServiceServiceProxy,\r\n ExportService,\r\n Globals,\r\n { provide: HTTP_INTERCEPTORS, useClass: AppHttpInterceptor, multi: true },\r\n { provide: API_BASE_URL, useFactory: getRemoteServiceBaseUrl },\r\n { provide: RouteReuseStrategy, useClass: IonicRouteStrategy },\r\n { provide: APP_INITIALIZER, useFactory: init_app, deps: [AppPreBootstrap], multi: true }\r\n ],\r\n bootstrap: [AppComponent],\r\n schemas:[CUSTOM_ELEMENTS_SCHEMA]\r\n})\r\nexport class AppModule { }\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi1wYW5lbC9hY2NvcmRpb24tcGFuZWwuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit, ContentChild, TemplateRef, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-accordion-panel',\r\n templateUrl: './accordion-panel.component.html',\r\n styleUrls: ['./accordion-panel.component.scss'],\r\n})\r\nexport class AccordionPanelComponent implements OnInit {\r\n\r\n @Input() color: string;\r\n @Input() panelData: any;\r\n @Input() public collapsed: boolean;\r\n @Input() public headerIndex:number;\r\n @Input() public currentIndex:number;\r\n @ContentChild('panelHeader', {static: false}) panelHeader: TemplateRef;\r\n @ContentChild('panelBody', {static: false}) panelBody: TemplateRef;\r\n\r\n constructor() {\r\n // If an initial collapse status wasn't specified then default to collapsed\r\n if (this.collapsed === undefined)\r\n {\r\n this.collapsed = true;\r\n }\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n}\r\n","module.exports = \".panel-header {\\n cursor: pointer;\\n}\\n\\n.panel-body {\\n padding: 0.5rem;\\n transition: padding 0.5s, max-height 0.5s;\\n}\\n\\n.collapsed {\\n max-height: 0;\\n padding: 0;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hY2NvcmRpb24vYWNjb3JkaW9uL1o6XFxzb3VyY2VcXE9BQ0lcXE9BQ0lcXG9hY2ktY2VydGlmaWNhdGlvbi9zcmNcXGFwcFxcY29tcG9uZW50c1xcYWNjb3JkaW9uXFxhY2NvcmRpb25cXGFjY29yZGlvbi5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9hY2NvcmRpb24vYWNjb3JkaW9uL2FjY29yZGlvbi5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGVBQUE7QUNDSjs7QURFQTtFQUNJLGVBQUE7RUFFQSx5Q0FBQTtBQ0FKOztBREdBO0VBQ0ksYUFBQTtFQUNBLFVBQUE7QUNBSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi9hY2NvcmRpb24uY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucGFuZWwtaGVhZGVye1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ucGFuZWwtYm9keXtcclxuICAgIHBhZGRpbmc6IDAuNXJlbTsgICAgXHJcbiAgICAvLyBtYXgtaGVpZ2h0OiAxMDByZW07XHJcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIDAuNXMsIG1heC1oZWlnaHQgMC41cztcclxufVxyXG5cclxuLmNvbGxhcHNlZHtcclxuICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG59IiwiLnBhbmVsLWhlYWRlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMC41cywgbWF4LWhlaWdodCAwLjVzO1xufVxuXG4uY29sbGFwc2VkIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbn0iXX0= */\"","import { Component, OnInit, AfterContentInit, ContentChildren, QueryList, Input } from '@angular/core';\r\nimport { AccordionPanelComponent } from '../accordion-panel/accordion-panel.component';\r\n\r\n@Component({\r\n selector: 'app-accordion',\r\n templateUrl: './accordion.component.html',\r\n styleUrls: ['./accordion.component.scss'],\r\n})\r\nexport class AccordionComponent implements OnInit {\r\n\r\n @Input() allowMultipleOpenPanels: boolean;\r\n\r\n @ContentChildren(AccordionPanelComponent) panelsQuery: QueryList;\r\n public panels: Array;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {}\r\n\r\n ngAfterContentInit()\r\n {\r\n this.panels = this.panelsQuery.toArray();\r\n }\r\n\r\n public toggle(panelToToggle: AccordionPanelComponent)\r\n {\r\n if (this.allowMultipleOpenPanels)\r\n {\r\n panelToToggle.collapsed = !panelToToggle.collapsed;\r\n }\r\n else\r\n {\r\n this.panels.forEach((panel: AccordionPanelComponent) => {\r\n if (panelToToggle === panel)\r\n {\r\n panel.collapsed = !panel.collapsed\r\n }\r\n else\r\n {\r\n panel.collapsed = true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n hasPanel(panel: AccordionPanelComponent) {\r\n return this.panels.find(x => x == panel) != null;\r\n }\r\n\r\n collapse(panelToOpen: AccordionPanelComponent) {\r\n this.panels.forEach((panel: AccordionPanelComponent) => {\r\n if (panelToOpen === panel)\r\n {\r\n panel.collapsed = false;\r\n }\r\n else\r\n {\r\n panel.collapsed = true;\r\n }\r\n });\r\n }\r\n\r\n closeAll() {\r\n this.panels.forEach((panel: AccordionPanelComponent) => {\r\n panel.collapsed = true;\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { AdminPage } from './admin.page';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: AdminPage\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class AdminPageRoutingModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { AdminPageRoutingModule } from './admin-routing.module';\r\n\r\nimport { AdminPage } from './admin.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n AdminPageRoutingModule\r\n ],\r\n declarations: [AdminPage]\r\n})\r\nexport class AdminPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vYWRtaW4vYWRtaW4ucGFnZS5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { AlertController, LoadingController } from '@ionic/angular';\r\nimport { CertificationServiceServiceProxy, FarmerServiceServiceProxy } from '@shared/service-proxies/service-proxies';\r\n\r\n@Component({\r\n selector: 'app-admin',\r\n templateUrl: './admin.page.html',\r\n styleUrls: ['./admin.page.scss'],\r\n})\r\nexport class AdminPage implements OnInit {\r\n\r\n constructor(\r\n public alertController: AlertController,\r\n public loadingController: LoadingController,\r\n private farmerSvc: FarmerServiceServiceProxy,\r\n private certificationService: CertificationServiceServiceProxy\r\n ) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n async errorMissingFields() {\r\n const alert = await this.alertController.create({\r\n header: 'Confirm',\r\n message: 'Are you sure you want to update all Farmer errors / missing fields? This may take a while.',\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: (blah) => {\r\n \r\n }\r\n }, {\r\n text: 'Yes',\r\n handler: async () => {\r\n const loading = await this.loadingController.create({\r\n message: 'Please wait...'\r\n });\r\n await loading.present();\r\n this.farmerSvc.updateFarmerProfileErrorFields(undefined).subscribe(async response => {\r\n loading.dismiss();\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'All Farmer errors / missing fields have been updated',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n }, async (error) => {\r\n loading.dismiss();\r\n const alert = await this.alertController.create({\r\n header: 'ERROR',\r\n message: 'There was an issue updating all Farmer errors / missing fields. Please contact IT for assistance.',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n });\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n async certificationScores() {\r\n const alert = await this.alertController.create({\r\n header: 'Confirm',\r\n message: 'Are you sure you want to update all Certification Scores? This may take a while.',\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: (blah) => {\r\n \r\n }\r\n }, {\r\n text: 'Yes',\r\n handler: async () => {\r\n const loading = await this.loadingController.create({\r\n message: 'Please wait...'\r\n });\r\n await loading.present();\r\n this.certificationService.updateCertificationScores(undefined).subscribe(async response => {\r\n loading.dismiss();\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'All Certification scores have been updated',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n }, async (error) => {\r\n loading.dismiss();\r\n const alert = await this.alertController.create({\r\n header: 'ERROR',\r\n message: 'There was an issue updating all Certification scores. Please contact IT for assistance.',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n });\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n isInsideWorkHours() { // return false;\r\n let date = new Date(); // current time\r\n let hours = date.getHours();\r\n let day = date.getDay();\r\n let workDays = [ 1, 2, 3, 4, 5 ]; // Mon-Fri\r\n return workDays.includes( day ) && hours >= 9 && hours < 17;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { CertificationScorePage } from './certification-score.page';\r\n\r\nimport { NgCircleProgressModule } from 'ng-circle-progress';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n NgCircleProgressModule.forRoot({})\r\n ],\r\n declarations: [CertificationScorePage]\r\n})\r\nexport class CertificationScorePageModule {}\r\n","module.exports = \".category-label-left {\\n font-size: small !important;\\n margin-left: 20px;\\n}\\n\\n.category-label-right {\\n font-size: small !important;\\n margin-right: 20px;\\n}\\n\\n.category-score-toggle {\\n font-size: 25px;\\n cursor: pointer;\\n padding-right: 5px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi9jZXJ0aWZpY2F0aW9uLXNjb3JlL1o6XFxzb3VyY2VcXE9BQ0lcXE9BQ0lcXG9hY2ktY2VydGlmaWNhdGlvbi9zcmNcXGFwcFxcbWFpblxcY2VydGlmaWNhdGlvbi1zY29yZVxcY2VydGlmaWNhdGlvbi1zY29yZS5wYWdlLnNjc3MiLCJzcmMvYXBwL21haW4vY2VydGlmaWNhdGlvbi1zY29yZS9jZXJ0aWZpY2F0aW9uLXNjb3JlLnBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLDJCQUFBO0VBQ0EsaUJBQUE7QUNDSjs7QURFQTtFQUNJLDJCQUFBO0VBQ0Esa0JBQUE7QUNDSjs7QURFQTtFQUNJLGVBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL21haW4vY2VydGlmaWNhdGlvbi1zY29yZS9jZXJ0aWZpY2F0aW9uLXNjb3JlLnBhZ2Uuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5jYXRlZ29yeS1sYWJlbC1sZWZ0IHtcclxuICAgIGZvbnQtc2l6ZTogc21hbGwgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG59XHJcblxyXG4uY2F0ZWdvcnktbGFiZWwtcmlnaHQge1xyXG4gICAgZm9udC1zaXplOiBzbWFsbCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG4uY2F0ZWdvcnktc2NvcmUtdG9nZ2xlIHtcclxuICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxufSIsIi5jYXRlZ29yeS1sYWJlbC1sZWZ0IHtcbiAgZm9udC1zaXplOiBzbWFsbCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbn1cblxuLmNhdGVnb3J5LWxhYmVsLXJpZ2h0IHtcbiAgZm9udC1zaXplOiBzbWFsbCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG5cbi5jYXRlZ29yeS1zY29yZS10b2dnbGUge1xuICBmb250LXNpemU6IDI1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xufSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { CertificationServiceServiceProxy, CCertificationDto, CertificationScore, CCertificationStatusEnum } from '@shared/service-proxies/service-proxies';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\r\nimport { LoadingController, AlertController, Platform, NavController } from '@ionic/angular';\r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport domtoimage from 'dom-to-image';\r\nimport html2canvas from 'html2canvas';\r\n\r\n@Component({\r\n selector: 'app-certification-score',\r\n templateUrl: './certification-score.page.html',\r\n styleUrls: ['./certification-score.page.scss'],\r\n})\r\nexport class CertificationScorePage implements OnInit {\r\n\r\n id: number = 0;\r\n certification: CCertificationDto;\r\n certificationScores: CertificationScore;\r\n isLoaded: boolean = false;\r\n outerStrokeColor: string;\r\n innerStrokeColor: string;\r\n showCategoryPoints: boolean = false;\r\n certificationPassingScore: number = 63;\r\n certificationPassingPoints: number = 126;\r\n certificationTotalPossiblePoints: number = 200;\r\n\r\n constructor(\r\n private certificationService: CertificationServiceServiceProxy,\r\n storageService: AppStorageService,\r\n private route: ActivatedRoute,\r\n private loadingController: LoadingController,\r\n private alertController: AlertController,\r\n private router: Router,\r\n private permissionChecker: PermissionCheckerService,\r\n private titleService: Title,\r\n public platform: Platform,\r\n private navCtrl: NavController\r\n ) {\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.route.queryParams.subscribe(params => {\r\n if (params && params.certificationId) {\r\n this.id = +params.certificationId;\r\n if (this.id > 0) { // id is required\r\n this.getCertification();\r\n }\r\n }\r\n this.isLoaded = true;\r\n });\r\n }\r\n });\r\n this.titleService.setTitle('OACI - Certification Score');\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n async getCertification() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Fetching certification score...',\r\n });\r\n await loading.present();\r\n\r\n this.certificationService.get(this.id).subscribe(async certification => {\r\n this.certification = certification;\r\n if (this.certification) {\r\n if (this.certification.statusId != CCertificationStatusEnum._2) {\r\n await loading.dismiss();\r\n\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n message: 'This certification has not been completed. Redirecting to certification page.',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n certificationId: this.id\r\n }\r\n };\r\n this.router.navigate(['/main/certification'], navigationExtras);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n return;\r\n }\r\n this.certificationService.getCertificationScores(this.id).subscribe(async certificationScores => {\r\n await loading.dismiss();\r\n this.certificationScores = certificationScores;\r\n });\r\n }\r\n \r\n setTimeout(() => {\r\n this.showCategoryPoints = true; // this.permissionChecker.isGranted(\"Pages.Certifications\");\r\n }, 100);\r\n });\r\n }\r\n\r\n getCertificationScoreMessage() {\r\n if (this.certificationScores) {\r\n if (this.isPassing()) {\r\n return 'Congratulations! You are now certified. You have passed with a score of ' +\r\n this.certificationScores.points + '/' + this.certificationScores.weightedPoints; // +\r\n // ' (' + Math.round(this.certificationScores.percentageScore) + '%)';\r\n } else {\r\n return 'Sorry. Your score of ' +\r\n this.certificationScores.points + '/' + this.certificationScores.weightedPoints +\r\n ' was not enough to pass and be certified.
Please see the information icon below for more details.';\r\n // ' (' + Math.round(this.certificationScores.percentageScore) + '%) was not enough to pass and be certified.
Please see the information icon below for more details.';\r\n }\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n getScore() {\r\n if (this.certificationScores) {\r\n return this.certificationScores.percentageScore;\r\n } else {\r\n return 0;\r\n }\r\n }\r\n\r\n scoreBelowPassing() {\r\n if (this.certificationScores) {\r\n return this.certificationScores.percentageScore < this.certificationPassingScore;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n formatSubtitle = (percent: number) => {\r\n if (this.isPassing()) {\r\n this.outerStrokeColor = '#3880ff';\r\n this.innerStrokeColor = '#9bbfff';\r\n // return \"Certified\";\r\n } else {\r\n this.outerStrokeColor = '#f04141';\r\n this.innerStrokeColor = '#f7a0a0';\r\n // return \"Non-Certified\";\r\n }\r\n if (this.certificationScores) return '(' + this.certificationScores.points + '/' + this.certificationScores.weightedPoints + ')';\r\n else return '';\r\n }\r\n\r\n didLoad() {\r\n return this.id > 0 && this.certificationScores != null;\r\n }\r\n\r\n isPassing() {\r\n return this.certification && this.certification.isPassing;\r\n }\r\n\r\n async presentFailAlert(msg) {\r\n const alert = await this.alertController.create({\r\n header: '',\r\n message: this.certification && this.certification.completionMessage ? this.certification.completionMessage : 'Failed',\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n async presentAlert(msg) {\r\n const alert = await this.alertController.create({\r\n header: '',\r\n message: msg,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n goToHome() {\r\n this.navCtrl.back();\r\n // this.router.navigate(['/main/home']);\r\n }\r\n\r\n goToFarmerProfile() {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n farmerId: this.certification.farmerId\r\n }\r\n };\r\n this.router.navigate(['/main/farmer'], navigationExtras);\r\n }\r\n\r\n print() {\r\n window.print();\r\n }\r\n\r\n}\r\n","module.exports = \".panel-header {\\n cursor: pointer;\\n}\\n\\n.panel-body {\\n padding: 0.5rem;\\n transition: padding 0.5s, max-height 0.5s;\\n}\\n\\n.collapsed {\\n max-height: 0;\\n padding: 0;\\n}\\n\\n.input {\\n background-color: rgba(0, 0, 0, 0.1);\\n}\\n\\n.sub-section-title {\\n font-weight: bold;\\n}\\n\\n.table-header {\\n color: white;\\n border: 1px solid white;\\n background-color: rgba(0, 0, 0, 0.5);\\n}\\n\\n.last-row {\\n border-bottom: 1px solid rgba(0, 0, 0, 0.5);\\n}\\n\\n.crop-category-label {\\n color: black;\\n font-weight: bold;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi9jZXJ0aWZpY2F0aW9uL2NlcnRpZmljYXRpb24tYW5zd2VyL1o6XFxzb3VyY2VcXE9BQ0lcXE9BQ0lcXG9hY2ktY2VydGlmaWNhdGlvbi9zcmNcXGFwcFxcbWFpblxcY2VydGlmaWNhdGlvblxcY2VydGlmaWNhdGlvbi1hbnN3ZXJcXGNlcnRpZmljYXRpb24tYW5zd2VyLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9tYWluL2NlcnRpZmljYXRpb24vY2VydGlmaWNhdGlvbi1hbnN3ZXIvY2VydGlmaWNhdGlvbi1hbnN3ZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxlQUFBO0FDQ0o7O0FERUE7RUFDSSxlQUFBO0VBRUEseUNBQUE7QUNBSjs7QURHQTtFQUNJLGFBQUE7RUFDQSxVQUFBO0FDQUo7O0FER0E7RUFDSSxvQ0FBQTtBQ0FKOztBREdBO0VBQ0ksaUJBQUE7QUNBSjs7QURHQTtFQUNJLFlBQUE7RUFDQSx1QkFBQTtFQUNBLG9DQUFBO0FDQUo7O0FER0E7RUFDSSwyQ0FBQTtBQ0FKOztBREdBO0VBQ0ksWUFBQTtFQUNBLGlCQUFBO0FDQUoiLCJmaWxlIjoic3JjL2FwcC9tYWluL2NlcnRpZmljYXRpb24vY2VydGlmaWNhdGlvbi1hbnN3ZXIvY2VydGlmaWNhdGlvbi1hbnN3ZXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucGFuZWwtaGVhZGVye1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ucGFuZWwtYm9keXtcclxuICAgIHBhZGRpbmc6IDAuNXJlbTsgICAgXHJcbiAgICAvLyBtYXgtaGVpZ2h0OiAxMDByZW07XHJcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIDAuNXMsIG1heC1oZWlnaHQgMC41cztcclxufVxyXG5cclxuLmNvbGxhcHNlZHtcclxuICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uaW5wdXR7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi5zdWItc2VjdGlvbi10aXRsZXtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4udGFibGUtaGVhZGVye1xyXG4gICAgY29sb3I6d2hpdGU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcclxufVxyXG5cclxuLmxhc3Qtcm93e1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC41KTtcclxufVxyXG5cclxuLmNyb3AtY2F0ZWdvcnktbGFiZWwge1xyXG4gICAgY29sb3I6IGJsYWNrO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbiIsIi5wYW5lbC1oZWFkZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogMC41cmVtO1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDAuNXMsIG1heC1oZWlnaHQgMC41cztcbn1cblxuLmNvbGxhcHNlZCB7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5pbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnN1Yi1zZWN0aW9uLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi50YWJsZS1oZWFkZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5sYXN0LXJvdyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5jcm9wLWNhdGVnb3J5LWxhYmVsIHtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogYm9sZDtcbn0iXX0= */\"","import { Component, OnInit, Input, QueryList, ViewChildren } from '@angular/core';\r\nimport { CCategoryAnswerDto, CAnswerDto, FarmerCropQuantityDto, FarmerNutrientRecommendationQuantityDto, CAnswerLevelEnum, CBehaviorTypeEnum, CCertificationStatusEnum, CertificationAnswerServiceServiceProxy, CAnswerTypeEnum, FarmerDto, FarmerNutrientSourceQuantityDto } from '@shared/service-proxies/service-proxies';\r\nimport { CertificationCategoryComponent } from '../certification-category/certfication-category.component';\r\nimport { AccordionComponent } from 'src/app/components/accordion/accordion/accordion.component';\r\nimport { AccordionPanelComponent } from 'src/app/components/accordion/accordion-panel/accordion-panel.component';\r\nimport { CertificationPage } from '../certification.page';\r\nimport { AlertController, Platform } from '@ionic/angular';\r\n\r\n@Component({\r\n selector: 'app-certification-answer',\r\n templateUrl: './certification-answer.component.html',\r\n styleUrls: ['./certification-answer.component.scss'],\r\n})\r\nexport class CertificationAnswerComponent implements OnInit {\r\n id: number;\r\n answer: CAnswerDto;\r\n\r\n @Input() isView: boolean = false;\r\n\r\n @Input() certificationId: number;\r\n @Input() farmerCrops: FarmerCropQuantityDto[]=[];\r\n @Input() farmerNutrientSources: FarmerNutrientSourceQuantityDto[]=[];\r\n\r\n @Input() category: CCategoryAnswerDto;\r\n @Input() categoryQuestion: CCategoryAnswerDto;\r\n @Input() answerLevels: number[];\r\n @Input() answerLevel: number;\r\n @Input() farmer: FarmerDto;\r\n @Input() farmerCrop: FarmerCropQuantityDto;\r\n @Input() farmerNutrientRecommendations: FarmerNutrientRecommendationQuantityDto[]=[];\r\n @ViewChildren('categoryLevelPanels') categoryLevelPanels: QueryList;\r\n @Input() accordion: AccordionComponent;\r\n @Input() panel: AccordionPanelComponent;\r\n @Input() certificationPage: CertificationPage;\r\n answerValue: any;\r\n oldAnswerValue: any;\r\n\r\n isIOS: boolean;\r\n\r\n constructor(\r\n private answerService: CertificationAnswerServiceServiceProxy,\r\n public alertController: AlertController,\r\n public platform: Platform\r\n ) {\r\n this.isIOS = platform.is('ios');\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n ngAfterViewInit(){ // ngOnInit() {\r\n if (this.categoryQuestion) {\r\n let hasAnswer = false;\r\n if (this.categoryQuestion.answers) {\r\n if (\r\n this.answerLevel == CAnswerLevelEnum._0\r\n ) {\r\n if (\r\n this.categoryQuestion.behaviorTypeId == CBehaviorTypeEnum._3 &&\r\n this.categoryQuestion.answers.owned &&\r\n this.farmerCrop &&\r\n this.categoryQuestion.answers.owned.find(x => x.objectId == this.farmerCrop.cropId)\r\n ) {\r\n hasAnswer = true;\r\n this.answer = this.categoryQuestion.answers.owned.find(x => x.objectId == this.farmerCrop.cropId);\r\n } else if (\r\n this.categoryQuestion.behaviorTypeId != CBehaviorTypeEnum._3 &&\r\n this.categoryQuestion.answers.owned &&\r\n this.categoryQuestion.answers.owned[0]\r\n ) {\r\n hasAnswer = true;\r\n this.answer = this.categoryQuestion.answers.owned[0];\r\n }\r\n } else if (\r\n this.answerLevel == CAnswerLevelEnum._1\r\n ) {\r\n if(\r\n this.categoryQuestion.behaviorTypeId == CBehaviorTypeEnum._3 &&\r\n this.categoryQuestion.answers.rented &&\r\n this.farmerCrop &&\r\n this.categoryQuestion.answers.rented.find(x => x.objectId == this.farmerCrop.cropId)\r\n ) {\r\n hasAnswer = true;\r\n this.answer = this.categoryQuestion.answers.rented.find(x => x.objectId == this.farmerCrop.cropId);\r\n } else if(\r\n this.categoryQuestion.behaviorTypeId != CBehaviorTypeEnum._3 &&\r\n this.categoryQuestion.answers.rented &&\r\n this.categoryQuestion.answers.rented[0]\r\n ) {\r\n hasAnswer = true;\r\n this.answer = this.categoryQuestion.answers.rented[0];\r\n }\r\n }\r\n }\r\n if (hasAnswer) {\r\n this.id = this.answer.id;\r\n this.answerValue = this.answer.answer;\r\n this.oldAnswerValue = this.answerValue;\r\n } else {\r\n if (\r\n this.categoryQuestion.id == 30 &&\r\n this.farmerNutrientRecommendations &&\r\n this.farmerNutrientRecommendations.find(x => x.nutrientRecommendationIsFullService)\r\n ) { // 3-4 years\r\n if (this.answerLevel == CAnswerLevelEnum._0) {\r\n this.answerValue = this.farmerNutrientRecommendations.find(x => x.nutrientRecommendationIsFullService).ownedQuantity;\r\n this.oldAnswerValue = this.answerValue;\r\n } else if (this.answerLevel == CAnswerLevelEnum._1) {\r\n this.answerValue = this.farmerNutrientRecommendations.find(x => x.nutrientRecommendationIsFullService).rentedQuantity;\r\n this.oldAnswerValue = this.answerValue;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n async saveAnswer(event, didAcceptQuantityOver) {\r\n const answerValue = this.isIOS && this.categoryQuestion.answerTypeId == 1 ? event : this.answerValue;\r\n if (\r\n !didAcceptQuantityOver &&\r\n // this.categoryQuestion.answerTypeId == 1 && idk ||\r\n this.categoryQuestion.answerTypeId == 2\r\n ) {\r\n if (!this.isBonusQuestion()) {\r\n if (\r\n this.isCropQuestion() ? answerValue > this.farmerCrop.quantity :\r\n (this.isManureApplication() || this.isBiosolidsApplication() || this.isOtherOrganic()) ?\r\n (\r\n this.answerLevel == CAnswerLevelEnum._0 ? answerValue > this.getFarmerNutrientSource().ownedQuantity :\r\n this.answerLevel == CAnswerLevelEnum._1 ? answerValue > this.getFarmerNutrientSource().rentedQuantity : false // idk lol\r\n ) :\r\n (\r\n this.answerLevel == CAnswerLevelEnum._0 ? answerValue > this.farmer.ownedAcres :\r\n this.answerLevel == CAnswerLevelEnum._1 ? answerValue > this.farmer.rentedAcres : false // idk lol\r\n )\r\n ) {\r\n const alert = await this.alertController.create({\r\n header: 'Certification Question Confirmation',\r\n message: 'You have submitted more acres for this question than you have put on your farmer profile. Is this correct?',\r\n buttons: [\r\n {\r\n text: 'No',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: (blah) => {\r\n this.answerValue = null;\r\n }\r\n }, {\r\n text: 'Yes',\r\n handler: () => {\r\n this.saveAnswer(event, true);\r\n }\r\n }\r\n ]\r\n });\r\n await alert.present();\r\n return;\r\n } else {\r\n this.saveAnswer(event, true);\r\n return;\r\n }\r\n }\r\n }\r\n let doSave = true;\r\n const request = this.answer ? this.answer : new CAnswerDto();\r\n request.answer = answerValue;\r\n // if (answerValue == null || answerValue === '') {\r\n // doSave = false;\r\n // }\r\n if (this.oldAnswerValue == answerValue) {\r\n doSave = false;\r\n }\r\n request.answerLevelId = this.answerLevel;\r\n request.categoryId = this.categoryQuestion.id;\r\n request.certificationId = this.certificationId;\r\n if (\r\n answerValue != null && \r\n this.categoryQuestion.behaviorTypeId == CBehaviorTypeEnum._3 &&\r\n this.farmerCrop\r\n ) {\r\n request.objectId = this.farmerCrop.cropId;\r\n // if (this.categoryQuestion.answerTypeId == CAnswerTypeEnum._1) {\r\n // request.answer = event.detail.checked;\r\n // }\r\n doSave = true;\r\n }\r\n if (doSave) {\r\n if (\r\n request.id > 0 &&\r\n (\r\n request.answer == null ||\r\n request.answer == ''\r\n )\r\n ) {\r\n this.answerService.delete(request.id).subscribe(() => {\r\n this.id = null;\r\n this.updateCategoryQuestionAnswer(null); // do before in case it exists\r\n this.answer = null;\r\n this.answerValue = null;\r\n this.oldAnswerValue = null;\r\n });\r\n } else {\r\n this.answerService.save(request).subscribe(answer => {\r\n this.id = answer.id;\r\n this.answer = answer;\r\n this.updateCategoryQuestionAnswer(answer);\r\n this.oldAnswerValue = answerValue;\r\n // ok we saved an answer.. if new cert we need to say it's in progress now\r\n if (this.certificationPage.certification.statusId == CCertificationStatusEnum._0) {\r\n this.certificationPage.setInProgress();\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n updateCategoryQuestionAnswer(answer: CAnswerDto) {\r\n if (\r\n this.answerLevel == CAnswerLevelEnum._0\r\n ) {\r\n if (!this.categoryQuestion.answers.owned) {\r\n this.categoryQuestion.answers.owned = [];\r\n }\r\n if (answer == null && this.answer != null && this.categoryQuestion.answers.owned.find(x => x.id == this.answer.id)) {\r\n const index = this.categoryQuestion.answers.owned.findIndex(x => x.id == this.answer.id);\r\n this.categoryQuestion.answers.owned.splice(index, 1);\r\n } else if (!this.categoryQuestion.answers.owned.find(x => x.id == answer.id)) {\r\n this.categoryQuestion.answers.owned.push(answer);\r\n } else {\r\n const index = this.categoryQuestion.answers.owned.findIndex(x => x.id == answer.id);\r\n this.categoryQuestion.answers.owned.splice(index, 1, answer);\r\n }\r\n } else if (\r\n this.answerLevel == CAnswerLevelEnum._1\r\n ) {\r\n if (!this.categoryQuestion.answers.rented) {\r\n this.categoryQuestion.answers.rented = [];\r\n }\r\n if (answer == null && this.answer != null && this.categoryQuestion.answers.rented.find(x => x.id == this.answer.id)) {\r\n const index = this.categoryQuestion.answers.rented.findIndex(x => x.id == this.answer.id);\r\n this.categoryQuestion.answers.rented.splice(index, 1);\r\n } else if (!this.categoryQuestion.answers.rented.find(x => x.id == answer.id)) {\r\n this.categoryQuestion.answers.rented.push(answer);\r\n } else {\r\n const index = this.categoryQuestion.answers.rented.findIndex(x => x.id == answer.id);\r\n this.categoryQuestion.answers.rented.splice(index, 1, answer);\r\n }\r\n }\r\n }\r\n\r\n getFarmerNutrientSource () {\r\n switch(this.categoryQuestion.parentId) {\r\n case 7: // Manure Application Recommendation\r\n case 14: // Manure Application\r\n return this.farmerNutrientSources.find(x => x.nutrientSourceId == 2);\r\n case 8: // Biosolids Application Recommendation\r\n case 15: // Biosolids Application\r\n return this.farmerNutrientSources.find(x => x.nutrientSourceId == 3);\r\n case 9: // Other Organic Nutrient Sources\r\n case 16: // Other Organic Sources\r\n return this.farmerNutrientSources.find(x => x.nutrientSourceId == 6);\r\n default: return null;\r\n }\r\n }\r\n\r\n getCropToggleAnswerValue() {\r\n if (\r\n this.answer &&\r\n this.farmerCrop &&\r\n this.answer.objectId == this.farmerCrop.cropId\r\n ) {\r\n return this.answer.answer;\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n openAccordion(event) {\r\n console.log(event);\r\n // if (event.srcElement.localName == 'ion-toggle') {\r\n\r\n // } else {\r\n // this.certificationPage.collapseExcept(this.panel);\r\n this.certificationPage.collapseExcept(this.category);\r\n // }\r\n }\r\n\r\n isCropQuestion() {\r\n return [\r\n 10, // Commercial Phosphorus Fertilizer Recommendations\r\n 11, // Commercial Nitrogen Fertilizer Recommendations\r\n 12, // Commercial Phosphorus Fertilizer Application\r\n 13, // Commercial Nitrogen Fertilizer Application\r\n 17 // Tillage\r\n ].indexOf(this.categoryQuestion.parentId) > -1;\r\n }\r\n isManureApplication() {\r\n return [\r\n 7, // Manure Application Recommendation\r\n 14, // Manure Application\r\n ].indexOf(this.categoryQuestion.parentId) > -1;\r\n }\r\n isBiosolidsApplication() {\r\n return [\r\n 8, // Biosolids Application Recommendation\r\n 15, // Biosolids Application\r\n ].indexOf(this.categoryQuestion.parentId) > -1;\r\n }\r\n isOtherOrganic() {\r\n return [\r\n 9, // Other Organic Nutrient Sources\r\n 16, // Other Organic Sources\r\n ].indexOf(this.categoryQuestion.parentId) > -1;\r\n }\r\n\r\n isBonusQuestion() {\r\n return [\r\n 19, // Grassed Waterways\r\n 20, // Grade Stabilization Structures\r\n 21, // Blind Inlets\r\n 22, // Drainage Water Control Structures\r\n 23, // Filter Strips or Buffer Strips\r\n 24, // Wetlands\r\n 25, // Two-Stage Ditch or Natural Stream Channel Restoration\r\n 26, // Denitrifying Bioreactor\r\n 27 // Phosphorus Removal Bed (P-filter)\r\n ].indexOf(this.categoryQuestion.parentId) > -1;\r\n }\r\n\r\n}\r\n","module.exports = \".input {\\n background-color: rgba(0, 0, 0, 0.1);\\n}\\n\\n.sub-section-title {\\n font-weight: bold;\\n}\\n\\n.table-header {\\n color: white;\\n border: 1px solid white;\\n background-color: rgba(0, 0, 0, 0.5);\\n}\\n\\n.last-row {\\n border-bottom: 1px solid rgba(0, 0, 0, 0.5);\\n}\\n\\n.crop-category-label {\\n color: black;\\n font-weight: bold;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi9jZXJ0aWZpY2F0aW9uL2NlcnRpZmljYXRpb24tY2F0ZWdvcnkvWjpcXHNvdXJjZVxcT0FDSVxcT0FDSVxcb2FjaS1jZXJ0aWZpY2F0aW9uL3NyY1xcYXBwXFxtYWluXFxjZXJ0aWZpY2F0aW9uXFxjZXJ0aWZpY2F0aW9uLWNhdGVnb3J5XFxjZXJ0ZmljYXRpb24tY2F0ZWdvcnkuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL21haW4vY2VydGlmaWNhdGlvbi9jZXJ0aWZpY2F0aW9uLWNhdGVnb3J5L2NlcnRmaWNhdGlvbi1jYXRlZ29yeS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLG9DQUFBO0FDQ0o7O0FERUE7RUFDSSxpQkFBQTtBQ0NKOztBREVBO0VBQ0ksWUFBQTtFQUNBLHVCQUFBO0VBQ0Esb0NBQUE7QUNDSjs7QURFQTtFQUNJLDJDQUFBO0FDQ0o7O0FERUE7RUFDSSxZQUFBO0VBQ0EsaUJBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL21haW4vY2VydGlmaWNhdGlvbi9jZXJ0aWZpY2F0aW9uLWNhdGVnb3J5L2NlcnRmaWNhdGlvbi1jYXRlZ29yeS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5pbnB1dHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnN1Yi1zZWN0aW9uLXRpdGxle1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi50YWJsZS1oZWFkZXJ7XHJcbiAgICBjb2xvcjp3aGl0ZTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG59XHJcblxyXG4ubGFzdC1yb3d7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG59XHJcblxyXG4uY3JvcC1jYXRlZ29yeS1sYWJlbCB7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufSIsIi5pbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnN1Yi1zZWN0aW9uLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi50YWJsZS1oZWFkZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5sYXN0LXJvdyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5jcm9wLWNhdGVnb3J5LWxhYmVsIHtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogYm9sZDtcbn0iXX0= */\"","import { Component, Input, ViewChildren, QueryList, AfterViewInit } from '@angular/core';\r\nimport { CCategoryAnswerDto, CropDto, CertificationAnswerServiceServiceProxy, CAnswerDto, CBehaviorTypeEnum, CAnswerLevelEnum, FarmerNutrientRecommendationQuantityDto, FarmerCropQuantityDto, CCertificationStatusEnum } from '@shared/service-proxies/service-proxies';\r\nimport { AppThemeColors } from 'src/app/app-theme-colors-enum';\r\nimport { CertificationMasterSectionEnum } from '../model/certification-master-section-enum';\r\nimport { AccordionComponent } from '../../../components/accordion/accordion/accordion.component';\r\nimport { AccordionPanelComponent } from 'src/app/components/accordion/accordion-panel/accordion-panel.component';\r\nimport { CertificationPage } from '../certification.page';\r\n\r\n@Component({\r\n selector: 'app-certification-category',\r\n templateUrl: './certfication-category.component.html',\r\n styleUrls: ['./certfication-category.component.scss'],\r\n})\r\nexport class CertificationCategoryComponent implements AfterViewInit {\r\n id: number;\r\n answer: CAnswerDto;\r\n\r\n @Input() certificationId: number;\r\n @Input() farmerCrops: FarmerCropQuantityDto[]=[];\r\n\r\n @Input() category: CCategoryAnswerDto;\r\n @Input() answerLevels: number[];\r\n @Input() answerLevel: number;\r\n @Input() farmerCrop: FarmerCropQuantityDto;\r\n @Input() farmerNutrientRecommendations: FarmerNutrientRecommendationQuantityDto[]=[];\r\n @ViewChildren('categoryLevelPanels') categoryLevelPanels: QueryList;\r\n @Input() accordion: AccordionComponent;\r\n @Input() panel: AccordionPanelComponent;\r\n @Input() certificationPage: CertificationPage;\r\n answerValue: any;\r\n constructor(\r\n private answerService: CertificationAnswerServiceServiceProxy\r\n ) { }\r\n\r\n ngAfterViewInit(){ // ngOnInit() {\r\n if (this.category) {\r\n let hasAnswer = false;\r\n if (this.category.answers) {\r\n if (\r\n this.answerLevel == CAnswerLevelEnum._0 &&\r\n this.category.answers.owned &&\r\n this.category.answers.owned[0]\r\n ) {\r\n hasAnswer = true;\r\n this.answer = this.category.answers.owned[0];\r\n } else if (\r\n this.answerLevel == CAnswerLevelEnum._1 &&\r\n this.category.answers.rented &&\r\n this.category.answers.rented[0]\r\n ) {\r\n hasAnswer = true;\r\n this.answer = this.category.answers.rented[0];\r\n }\r\n }\r\n if (hasAnswer) {\r\n this.id = this.answer.id;\r\n this.answerValue = this.answer.answer;\r\n } else {\r\n if (\r\n this.category.id == 30 &&\r\n this.farmerNutrientRecommendations &&\r\n this.farmerNutrientRecommendations.find(x => x.nutrientRecommendationIsFullService)\r\n ) { // 3-4 years\r\n if (this.answerLevel == CAnswerLevelEnum._0) {\r\n this.answerValue = this.farmerNutrientRecommendations.find(x => x.nutrientRecommendationIsFullService).ownedQuantity;\r\n } else if (this.answerLevel == CAnswerLevelEnum._1) {\r\n this.answerValue = this.farmerNutrientRecommendations.find(x => x.nutrientRecommendationIsFullService).rentedQuantity;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n shouldShowOwned(): boolean {\r\n return this.answerLevels.includes(0);\r\n }\r\n shouldShowRented(): boolean {\r\n return this.answerLevels.includes(1);\r\n }\r\n getCategoryColor(category: CCategoryAnswerDto) {\r\n switch(category.id) {\r\n case CertificationMasterSectionEnum.NutrientApplicationRate:\r\n return AppThemeColors.OliveGreen;\r\n case CertificationMasterSectionEnum.NutrientApplicationPlacement:\r\n return AppThemeColors.DarkCyan;\r\n case CertificationMasterSectionEnum.InFieldManagement:\r\n return AppThemeColors.BabyBlue;\r\n case CertificationMasterSectionEnum.StructuralPractices:\r\n return AppThemeColors.Purple;\r\n }\r\n }\r\n saveAnswer(event) {\r\n let doSave = true;\r\n const request = this.answer ? this.answer : new CAnswerDto();\r\n request.answer = this.answerValue;\r\n if (!this.answerValue) {\r\n doSave = false;\r\n }\r\n request.answerLevelId = this.answerLevel;\r\n request.categoryId = this.category.id;\r\n request.certificationId = this.certificationId;\r\n if (\r\n this.answerValue && \r\n this.category.behaviorTypeId == CBehaviorTypeEnum._3 &&\r\n this.farmerCrop\r\n ) {\r\n request.objectId = this.farmerCrop.cropId;\r\n request.answer = event.detail.checked;\r\n doSave = true;\r\n }\r\n if (doSave) {\r\n this.answerService.save(request).subscribe(answer => {\r\n this.id = answer.id;\r\n this.answer = answer;\r\n // ok we saved an answer.. if new cert we need to say it's in progress now\r\n if (this.certificationPage.certification.statusId == CCertificationStatusEnum._0) {\r\n this.certificationPage.setInProgress();\r\n }\r\n });\r\n }\r\n }\r\n\r\n getCropToggleAnswerValue() {\r\n if (\r\n this.answer &&\r\n this.farmerCrop &&\r\n this.answer.objectId == this.farmerCrop.cropId\r\n ) {\r\n return this.answer.answer;\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n openAccordion(event) {\r\n console.log(event);\r\n // if (event.srcElement.localName == 'ion-toggle') {\r\n\r\n // } else {\r\n // this.certificationPage.collapseExcept(this.panel);\r\n // }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { CertificationValidationPage } from './certification-validation.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule\r\n ],\r\n declarations: [CertificationValidationPage]\r\n})\r\nexport class CertificationValidationPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vY2VydGlmaWNhdGlvbi9jZXJ0aWZpY2F0aW9uLXZhbGlkYXRpb24vY2VydGlmaWNhdGlvbi12YWxpZGF0aW9uLnBhZ2Uuc2NzcyJ9 */\"","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ModalController } from '@ionic/angular';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\n\r\n@Component({\r\n selector: 'app-certification-validation',\r\n templateUrl: './certification-validation.page.html',\r\n styleUrls: ['./certification-validation.page.scss'],\r\n})\r\nexport class CertificationValidationPage implements OnInit {\r\n \r\n @Input() missingFields: string;\r\n isLoaded: boolean = false;\r\n\r\n constructor(\r\n storageService: AppStorageService,\r\n private modalController: ModalController\r\n ) {\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.isLoaded = true;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ok(didConfirm: boolean) {\r\n this.modalController.dismiss({\r\n didConfirm: didConfirm\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\n\r\nimport { CertificationPage } from './certification.page';\r\nimport { AccordionComponent } from '../../components/accordion/accordion/accordion.component'\r\nimport { AccordionPanelComponent } from '../../components/accordion/accordion-panel/accordion-panel.component'\r\nimport { CertificationCategoryComponent } from './certification-category/certfication-category.component';\r\nimport { CertificationAnswerComponent } from './certification-answer/certification-answer.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n IonicModule\r\n ],\r\n declarations: [\r\n CertificationPage,\r\n AccordionComponent,\r\n AccordionPanelComponent, \r\n CertificationCategoryComponent,\r\n CertificationAnswerComponent\r\n ]\r\n})\r\nexport class CertificationPageModule {}\r\n","module.exports = \".panel-header {\\n cursor: pointer;\\n}\\n\\n.panel-body {\\n padding: 0.5rem;\\n transition: padding 0.5s, max-height 0.5s;\\n}\\n\\n.collapsed {\\n max-height: 0;\\n padding: 0;\\n}\\n\\n.input {\\n background-color: rgba(0, 0, 0, 0.1);\\n}\\n\\n.sub-section-title {\\n font-weight: bold;\\n}\\n\\n.table-header {\\n color: white;\\n border: 1px solid white;\\n background-color: rgba(0, 0, 0, 0.5);\\n}\\n\\n.last-row {\\n border-bottom: 1px solid rgba(0, 0, 0, 0.5);\\n}\\n\\n.crop-category-label {\\n color: black;\\n font-weight: bold;\\n}\\n\\n.collapsed, [collapsed=true] {\\n height: 50%;\\n}\\n\\n.hydrated {\\n line-height: 22px;\\n}\\n\\nion-card {\\n width: 100%;\\n margin: 5px !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi9jZXJ0aWZpY2F0aW9uL1o6XFxzb3VyY2VcXE9BQ0lcXE9BQ0lcXG9hY2ktY2VydGlmaWNhdGlvbi9zcmNcXGFwcFxcbWFpblxcY2VydGlmaWNhdGlvblxcY2VydGlmaWNhdGlvbi5wYWdlLnNjc3MiLCJzcmMvYXBwL21haW4vY2VydGlmaWNhdGlvbi9jZXJ0aWZpY2F0aW9uLnBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGVBQUE7QUNDSjs7QURFQTtFQUNJLGVBQUE7RUFFQSx5Q0FBQTtBQ0FKOztBREdBO0VBQ0ksYUFBQTtFQUNBLFVBQUE7QUNBSjs7QURHQTtFQUNJLG9DQUFBO0FDQUo7O0FER0E7RUFDSSxpQkFBQTtBQ0FKOztBREdBO0VBQ0ksWUFBQTtFQUNBLHVCQUFBO0VBQ0Esb0NBQUE7QUNBSjs7QURHQTtFQUNJLDJDQUFBO0FDQUo7O0FER0E7RUFDSSxZQUFBO0VBQ0EsaUJBQUE7QUNBSjs7QURHQTtFQUNJLFdBQUE7QUNBSjs7QURHQTtFQUNJLGlCQUFBO0FDQUo7O0FER0E7RUFDSSxXQUFBO0VBQ0Esc0JBQUE7QUNBSiIsImZpbGUiOiJzcmMvYXBwL21haW4vY2VydGlmaWNhdGlvbi9jZXJ0aWZpY2F0aW9uLnBhZ2Uuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5wYW5lbC1oZWFkZXJ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5wYW5lbC1ib2R5e1xyXG4gICAgcGFkZGluZzogMC41cmVtOyAgICBcclxuICAgIC8vIG1heC1oZWlnaHQ6IDEwMHJlbTtcclxuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMC41cywgbWF4LWhlaWdodCAwLjVzO1xyXG59XHJcblxyXG4uY29sbGFwc2Vke1xyXG4gICAgbWF4LWhlaWdodDogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5pbnB1dHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnN1Yi1zZWN0aW9uLXRpdGxle1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi50YWJsZS1oZWFkZXJ7XHJcbiAgICBjb2xvcjp3aGl0ZTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG59XHJcblxyXG4ubGFzdC1yb3d7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG59XHJcblxyXG4uY3JvcC1jYXRlZ29yeS1sYWJlbCB7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLmNvbGxhcHNlZCwgW2NvbGxhcHNlZD0ndHJ1ZSddIHsgXHJcbiAgICBoZWlnaHQ6IDUwJTtcclxufVxyXG5cclxuLmh5ZHJhdGVkIHtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG59XHJcblxyXG5pb24tY2FyZCB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgbWFyZ2luOiA1cHggIWltcG9ydGFudDtcclxufVxyXG4gICAgIiwiLnBhbmVsLWhlYWRlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMC41cywgbWF4LWhlaWdodCAwLjVzO1xufVxuXG4uY29sbGFwc2VkIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uc3ViLXNlY3Rpb24tdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnRhYmxlLWhlYWRlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLmxhc3Qtcm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLmNyb3AtY2F0ZWdvcnktbGFiZWwge1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uY29sbGFwc2VkLCBbY29sbGFwc2VkPXRydWVdIHtcbiAgaGVpZ2h0OiA1MCU7XG59XG5cbi5oeWRyYXRlZCB7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xufVxuXG5pb24tY2FyZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDVweCAhaW1wb3J0YW50O1xufSJdfQ== */\"","import { Component, OnInit, ViewChildren, QueryList, ViewChild } from '@angular/core';\r\nimport { CertificationCategoryServiceServiceProxy, CCertificationDto, CertificationServiceServiceProxy, CCategoryAnswerDto, FarmerServiceServiceProxy, FarmerDto, CAnswerLevelEnum, FarmerCropQuantityServiceServiceProxy, FarmerNutrientRecommendationQuantityServiceServiceProxy, FarmerNutrientRecommendationQuantityDto, FarmerCropQuantityDto, CBehaviorTypeEnum, CCertificationStatusEnum, FarmerNutrientSourceQuantityDto, FarmerNutrientSourceQuantityServiceServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\r\nimport { AlertController, LoadingController, IonCard, IonContent, NavController, ModalController } from '@ionic/angular';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { CertificationCategoryComponent } from './certification-category/certfication-category.component';\r\nimport { AccordionPanelComponent } from 'src/app/components/accordion/accordion-panel/accordion-panel.component';\r\nimport { CertificationMasterSectionEnum } from './model/certification-master-section-enum';\r\nimport { AppThemeColors } from 'src/app/app-theme-colors-enum';\r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { CertificationValidationPage } from './certification-validation/certification-validation.page';\r\n\r\n\r\n@Component({\r\n selector: 'app-certification',\r\n templateUrl: './certification.page.html',\r\n styleUrls: ['./certification.page.scss'],\r\n})\r\nexport class CertificationPage implements OnInit {\r\n\r\n id: number = 0;\r\n certification: CCertificationDto;\r\n farmer: FarmerDto;\r\n farmerCrops: FarmerCropQuantityDto[];\r\n farmerNutrientSources: FarmerNutrientSourceQuantityDto[];\r\n farmerNutrientRecommendations: FarmerNutrientRecommendationQuantityDto[];\r\n answerLevels: number[] = [];\r\n categories: CCategoryAnswerDto[] = [];\r\n isLoaded: boolean = false;\r\n isView: boolean = false;\r\n\r\n @ViewChild(IonContent, {static: false}) content: IonContent;\r\n @ViewChildren('topLevelPanels') topLevelPanels: QueryList;\r\n constructor(\r\n private certificationService: CertificationServiceServiceProxy,\r\n private certificationCategoryService: CertificationCategoryServiceServiceProxy,\r\n storageService: AppStorageService,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private loadingController: LoadingController,\r\n private alertController: AlertController,\r\n private farmerSvc: FarmerServiceServiceProxy,\r\n private farmerCropQuantityServiceService: FarmerCropQuantityServiceServiceProxy,\r\n private farmerNutrientSourceQuantityService: FarmerNutrientSourceQuantityServiceServiceProxy,\r\n private farmerNutrientRecommendationQuantityService: FarmerNutrientRecommendationQuantityServiceServiceProxy,\r\n private permissionChecker: PermissionCheckerService,\r\n private titleService: Title,\r\n private navCtrl: NavController,\r\n private modalController: ModalController\r\n ) {\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.route.queryParams.subscribe(params => {\r\n if (params && params.isView) {\r\n this.isView = params.isView == 'true';\r\n }\r\n if (params && params.farmer) {\r\n this.farmer = JSON.parse(params.farmer);\r\n this.determineAnswerLevels();\r\n }\r\n if (params && params.farmerCrops) {\r\n this.farmerCrops = JSON.parse(params.farmerCrops);\r\n if (this.farmerCrops) {\r\n this.farmerCrops = this.farmerCrops.filter(x => x.quantity > 0);\r\n }\r\n }\r\n if (params && params.farmerNutrientSources) {\r\n this.farmerNutrientSources = JSON.parse(params.farmerNutrientSources);\r\n }\r\n if (params && params.farmerNutrientRecommendations) {\r\n this.farmerNutrientRecommendations = JSON.parse(params.farmerNutrientRecommendations);\r\n }\r\n if (params && params.certificationId) {\r\n this.id = +params.certificationId;\r\n if (this.id > 0) { // id is required\r\n this.getCertification();\r\n }\r\n }\r\n this.isLoaded = true;\r\n });\r\n }\r\n });\r\n this.titleService.setTitle('OACI - Certification');\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n ionViewWillEnter() {\r\n\r\n }\r\n\r\n async getCertification() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Fetching certification...',\r\n });\r\n await loading.present();\r\n\r\n this.certificationService.get(this.id).subscribe(async certification => {\r\n this.certification = certification;\r\n if (this.certification) {\r\n if (\r\n !this.isView &&\r\n this.certification.statusId == CCertificationStatusEnum._2 &&\r\n !this.isAdmin()\r\n ) {\r\n await loading.dismiss();\r\n\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n message: 'This certification has already been completed. Redirecting to certification score page.',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n certificationId: this.id\r\n }\r\n };\r\n this.router.navigate(['/main/certification-score'], navigationExtras);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n return;\r\n }\r\n if (!this.farmer) {\r\n this.getFarmer();\r\n }\r\n if (!this.farmerCrops) {\r\n this.getFarmerCrops();\r\n }\r\n if (!this.farmerNutrientSources) {\r\n this.getFarmerNutrientSources();\r\n }\r\n if (!this.farmerNutrientRecommendations) {\r\n this.getFarmerNutrientRecommendations();\r\n }\r\n this.certificationCategoryService.getCategories(this.id).subscribe(async x => {\r\n // x[0].children[0].collapsed = false;\r\n this.categories = x;\r\n await loading.dismiss();\r\n });\r\n }\r\n });\r\n }\r\n\r\n getFarmer() {\r\n this.farmerSvc.get(this.certification.farmerId).subscribe(farmer => {\r\n this.farmer = farmer;\r\n this.determineAnswerLevels();\r\n });\r\n }\r\n\r\n determineAnswerLevels() {\r\n if (this.farmer) {\r\n if (this.farmer.ownedAcres && this.farmer.ownedAcres > 0) {\r\n this.answerLevels.push(CAnswerLevelEnum._0);\r\n }\r\n if (this.farmer.rentedAcres && this.farmer.rentedAcres > 0) {\r\n this.answerLevels.push(CAnswerLevelEnum._1);\r\n }\r\n }\r\n }\r\n\r\n getFarmerCrops() {\r\n this.farmerCropQuantityServiceService.getAllByFarmerId(this.certification.farmerId).subscribe(farmerCrops => {\r\n this.farmerCrops = farmerCrops.filter(x => x.quantity > 0);\r\n });\r\n }\r\n\r\n getFarmerNutrientSources() {\r\n this.farmerNutrientSourceQuantityService.getAllByFarmerId(this.certification.farmerId).subscribe(farmerNSs => {\r\n this.farmerNutrientSources = farmerNSs;\r\n });\r\n }\r\n\r\n getFarmerNutrientRecommendations() {\r\n this.farmerNutrientRecommendationQuantityService.getAllByFarmerId(this.certification.farmerId).subscribe(farmerNRs => {\r\n this.farmerNutrientRecommendations = farmerNRs;\r\n });\r\n }\r\n\r\n // collapseExcept(panelToCollapse: AccordionPanelComponent){\r\n // this.topLevelPanels.forEach(topLevelPanel => {\r\n // topLevelPanel.categoryLevelPanels.forEach(categoryLevelPanel => {\r\n // if(categoryLevelPanel.accordion.hasPanel(panelToCollapse)) {\r\n // if (panelToCollapse.collapsed) {\r\n // categoryLevelPanel.accordion.collapse(panelToCollapse);\r\n // }\r\n // } else {\r\n // categoryLevelPanel.accordion.closeAll();\r\n // }\r\n // });\r\n // });\r\n // }\r\n\r\n cancel() {\r\n this.navCtrl.back();\r\n // this.router.navigate(['/main/home']);\r\n }\r\n\r\n setInProgress() {\r\n \r\n this.certification.statusId = CCertificationStatusEnum._1;\r\n this.certificationService.save(this.certification).subscribe();\r\n\r\n }\r\n\r\n async complete(didValidate: boolean) {\r\n\r\n if (!didValidate) {\r\n const missingFields = this.validateForMissingFields();\r\n if (missingFields) {\r\n \r\n const modal = await this.modalController.create({\r\n component: CertificationValidationPage,\r\n componentProps: {\r\n 'missingFields': missingFields,\r\n }\r\n });\r\n modal.onDidDismiss().then((param) => {\r\n if (param && param.data && param.data['didConfirm'] == true) {\r\n this.complete(true);\r\n }\r\n });\r\n return await modal.present();\r\n\r\n // const alert = await this.alertController.create({\r\n // header: 'Certification Validation',\r\n // message: missingFields,\r\n // buttons: [\r\n // {\r\n // text: 'No',\r\n // role: 'cancel',\r\n // cssClass: 'secondary',\r\n // handler: (blah) => {\r\n \r\n // }\r\n // }, {\r\n // text: 'Yes',\r\n // handler: async () => {\r\n // this.complete(true);\r\n // }\r\n // }\r\n // ]\r\n // });\r\n // await alert.present();\r\n return;\r\n }\r\n }\r\n\r\n const loading = await this.loadingController.create({\r\n message: 'Completing Certification...',\r\n });\r\n await loading.present();\r\n \r\n this.certification.statusId = CCertificationStatusEnum._2;\r\n this.certification.ownedAcres = this.farmer.ownedAcres;\r\n this.certification.rentedAcres = this.farmer.rentedAcres;\r\n this.certificationService.save(this.certification).subscribe(\r\n async certification => {\r\n \r\n await loading.dismiss();\r\n \r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n certificationId: this.id\r\n }\r\n };\r\n \r\n this.router.navigate(['/main/certification-score'], navigationExtras);\r\n\r\n },\r\n async error => {\r\n this.saveError(error).then();\r\n await loading.dismiss();\r\n }\r\n );\r\n }\r\n\r\n // Format (ex):\r\n // Nutrient Application RATE:\r\n // > Soil Test Frequency\r\n // • Owned - Expected: ** - Actual: ** \r\n validateForMissingFields() {\r\n let missingFields = '';\r\n const topLevelCategoryAdded = [];\r\n if (!this.categories) return;\r\n this.categories.forEach(topLevelCategory => {\r\n topLevelCategory.children.forEach(category => {\r\n const categoryAdded = [];\r\n if (this.shouldShowCategory(category.id) && !this.isBonusQuestion(category.id)) {\r\n if (this.shouldShowOwned(category.id)) {\r\n let hasEnteredAnswer = false, isCropCategory = false;\r\n const cropIdsHaveEntered = [];\r\n category.children.forEach(categoryQuestion => {\r\n if (categoryQuestion.behaviorTypeId == 2) {\r\n if (categoryQuestion.answerTypeId == 1) {\r\n if (\r\n categoryQuestion.answers &&\r\n categoryQuestion.answers.owned &&\r\n categoryQuestion.answers.owned[0] &&\r\n categoryQuestion.answers.owned[0].answer &&\r\n categoryQuestion.answers.owned[0].answer == \"true\"\r\n ) {\r\n hasEnteredAnswer = true;\r\n }\r\n }\r\n if (categoryQuestion.answerTypeId == 2) {\r\n if (\r\n categoryQuestion.answers &&\r\n categoryQuestion.answers.owned &&\r\n categoryQuestion.answers.owned[0] &&\r\n categoryQuestion.answers.owned[0].answer &&\r\n parseFloat(categoryQuestion.answers.owned[0].answer) > -1\r\n ) {\r\n hasEnteredAnswer = true;\r\n }\r\n }\r\n }\r\n if (categoryQuestion.behaviorTypeId == 3) {\r\n isCropCategory = true;\r\n this.farmerCrops.forEach(farmerCrop => {\r\n if (this.shouldShowCrop(category.id, farmerCrop.cropId)) {\r\n if (categoryQuestion.answerTypeId == 1) {\r\n if (\r\n categoryQuestion.answers &&\r\n categoryQuestion.answers.owned &&\r\n categoryQuestion.answers.owned.find(x => x.objectId == farmerCrop.cropId) &&\r\n categoryQuestion.answers.owned.find(x => x.objectId == farmerCrop.cropId).answer &&\r\n categoryQuestion.answers.owned.find(x => x.objectId == farmerCrop.cropId).answer == \"true\"\r\n ) {\r\n if (cropIdsHaveEntered.indexOf(farmerCrop.cropId) == -1) cropIdsHaveEntered.push(farmerCrop.cropId);\r\n }\r\n }\r\n if (categoryQuestion.answerTypeId == 2) {\r\n if (\r\n categoryQuestion.answers &&\r\n categoryQuestion.answers.owned &&\r\n categoryQuestion.answers.owned.find(x => x.objectId == farmerCrop.cropId) &&\r\n categoryQuestion.answers.owned.find(x => x.objectId == farmerCrop.cropId).answer &&\r\n parseFloat(categoryQuestion.answers.owned.find(x => x.objectId == farmerCrop.cropId).answer) > -1\r\n ) {\r\n if (cropIdsHaveEntered.indexOf(farmerCrop.cropId) == -1) cropIdsHaveEntered.push(farmerCrop.cropId);\r\n }\r\n }\r\n }\r\n });\r\n\r\n }\r\n });\r\n if (!isCropCategory) {\r\n if (!hasEnteredAnswer) {\r\n if (topLevelCategoryAdded.indexOf(topLevelCategory.label) == -1) {\r\n if (!missingFields) missingFields = topLevelCategory.label + \":\";\r\n else missingFields = missingFields + \"
\" + topLevelCategory.label + \":\";\r\n topLevelCategoryAdded.push(topLevelCategory.label);\r\n } \r\n if (categoryAdded.indexOf(category.label) == -1) {\r\n missingFields = missingFields + \"
 - \" + category.label + \" (Owned)\";\r\n categoryAdded.push(category.label);\r\n }\r\n }\r\n } else {\r\n if (cropIdsHaveEntered.length != this.farmerCrops.length) {\r\n const cropsNotEntered = this.farmerCrops.filter(x => cropIdsHaveEntered.indexOf(x.cropId) == -1);\r\n cropsNotEntered.forEach(cropNotEntered => {\r\n if (this.shouldShowCrop(category.id, cropNotEntered.cropId)) {\r\n if (topLevelCategoryAdded.indexOf(topLevelCategory.label) == -1) {\r\n if (!missingFields) missingFields = topLevelCategory.label + \":\";\r\n else missingFields = missingFields + \"
\" + topLevelCategory.label + \":\";\r\n topLevelCategoryAdded.push(topLevelCategory.label);\r\n } \r\n if (categoryAdded.indexOf(category.label) == -1) {\r\n missingFields = missingFields + \"
 - \" + category.label + \":\";\r\n categoryAdded.push(category.label);\r\n }\r\n missingFields = missingFields + \"
   • \" + cropNotEntered.cropName;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n if (this.shouldShowRented(category.id)) {\r\n let hasEnteredAnswer = false, isCropCategory = false;\r\n const cropIdsHaveEntered = [];\r\n category.children.forEach(categoryQuestion => {\r\n if (categoryQuestion.behaviorTypeId == 2) {\r\n if (categoryQuestion.answerTypeId == 1) {\r\n if (\r\n categoryQuestion.answers &&\r\n categoryQuestion.answers.rented &&\r\n categoryQuestion.answers.rented[0] &&\r\n categoryQuestion.answers.rented[0].answer &&\r\n categoryQuestion.answers.rented[0].answer == \"true\"\r\n ) {\r\n hasEnteredAnswer = true;\r\n }\r\n }\r\n if (categoryQuestion.answerTypeId == 2) {\r\n if (\r\n categoryQuestion.answers &&\r\n categoryQuestion.answers.rented &&\r\n categoryQuestion.answers.rented[0] &&\r\n categoryQuestion.answers.rented[0].answer &&\r\n parseFloat(categoryQuestion.answers.rented[0].answer) > -1\r\n ) {\r\n hasEnteredAnswer = true;\r\n }\r\n }\r\n }\r\n if (categoryQuestion.behaviorTypeId == 3) {\r\n isCropCategory = true;\r\n this.farmerCrops.forEach(farmerCrop => {\r\n if (this.shouldShowCrop(category.id, farmerCrop.cropId)) {\r\n if (categoryQuestion.answerTypeId == 1) {\r\n if (\r\n categoryQuestion.answers &&\r\n categoryQuestion.answers.rented &&\r\n categoryQuestion.answers.rented.find(x => x.objectId == farmerCrop.cropId) &&\r\n categoryQuestion.answers.rented.find(x => x.objectId == farmerCrop.cropId).answer &&\r\n categoryQuestion.answers.rented.find(x => x.objectId == farmerCrop.cropId).answer == \"true\"\r\n ) {\r\n if (cropIdsHaveEntered.indexOf(farmerCrop.cropId) == -1) cropIdsHaveEntered.push(farmerCrop.cropId);\r\n }\r\n }\r\n if (categoryQuestion.answerTypeId == 2) {\r\n if (\r\n categoryQuestion.answers &&\r\n categoryQuestion.answers.rented &&\r\n categoryQuestion.answers.rented.find(x => x.objectId == farmerCrop.cropId) &&\r\n categoryQuestion.answers.rented.find(x => x.objectId == farmerCrop.cropId).answer &&\r\n parseFloat(categoryQuestion.answers.rented.find(x => x.objectId == farmerCrop.cropId).answer) > -1\r\n ) {\r\n if (cropIdsHaveEntered.indexOf(farmerCrop.cropId) == -1) cropIdsHaveEntered.push(farmerCrop.cropId);\r\n }\r\n }\r\n }\r\n });\r\n\r\n }\r\n });\r\n if (!isCropCategory) {\r\n if (!hasEnteredAnswer) {\r\n if (topLevelCategoryAdded.indexOf(topLevelCategory.label) == -1) {\r\n if (!missingFields) missingFields = topLevelCategory.label + \":\";\r\n else missingFields = missingFields + \"
\" + topLevelCategory.label + \":\";\r\n topLevelCategoryAdded.push(topLevelCategory.label);\r\n } \r\n if (categoryAdded.indexOf(category.label) == -1) {\r\n missingFields = missingFields + \"
 - \" + category.label + \" (Rented)\";\r\n categoryAdded.push(category.label);\r\n }\r\n }\r\n } else {\r\n if (cropIdsHaveEntered.length != this.farmerCrops.length) {\r\n const cropsNotEntered = this.farmerCrops.filter(x => cropIdsHaveEntered.indexOf(x.cropId) == -1);\r\n cropsNotEntered.forEach(cropNotEntered => {\r\n if (this.shouldShowCrop(category.id, cropNotEntered.cropId)) {\r\n if (topLevelCategoryAdded.indexOf(topLevelCategory.label) == -1) {\r\n if (!missingFields) missingFields = topLevelCategory.label + \":\";\r\n else missingFields = missingFields + \"
\" + topLevelCategory.label + \":\";\r\n topLevelCategoryAdded.push(topLevelCategory.label);\r\n } \r\n if (categoryAdded.indexOf(category.label) == -1) {\r\n missingFields = missingFields + \"
 - \" + category.label + \":\";\r\n categoryAdded.push(category.label);\r\n }\r\n missingFields = missingFields + \"
   • \" + cropNotEntered.cropName;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n });\r\n // console.log(missingFields);\r\n return missingFields;\r\n }\r\n\r\n async saveError(errorMessage) {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n subHeader: 'Error',\r\n message: errorMessage,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n didLoad() {\r\n return this.id > 0 && this.categories.length > 0;\r\n }\r\n \r\n shouldShowOwned(categoryId: number): boolean {\r\n return (\r\n (this.answerLevels.includes(0) && this.shouldShowCategoryByAnswerLevel(categoryId, 0))\r\n ||\r\n (this.isCropQuestion(categoryId) && this.hasFarmerCrops())\r\n ||\r\n this.isBonusQuestion(categoryId)\r\n );\r\n }\r\n shouldShowOwnedLabel(categoryId: number): boolean {\r\n return !this.isCropQuestion(categoryId) &&\r\n !this.isManureApplication(categoryId) &&\r\n !this.isBonusQuestion(categoryId);\r\n }\r\n shouldShowRented(categoryId: number): boolean {\r\n return this.answerLevels.includes(1) &&\r\n !this.isCropQuestion(categoryId) &&\r\n !this.isBonusQuestion(categoryId) &&\r\n this.shouldShowCategoryByAnswerLevel(categoryId, 1);\r\n }\r\n shouldShowRentedLabel(categoryId: number): boolean {\r\n return !this.isCropQuestion(categoryId) &&\r\n !this.isManureApplication(categoryId) &&\r\n !this.isBiosolidsApplication(categoryId) &&\r\n !this.isOtherOrganic(categoryId) &&\r\n !this.isBonusQuestion(categoryId);\r\n }\r\n shouldShowCategoryByAnswerLevel(categoryId: number, answerLevel: number) {\r\n switch(categoryId) {\r\n case 10: // Commercial Phosphorus Fertilizer Recommendations\r\n case 11: // Commercial Nitrogen Fertilizer Recommendations\r\n case 12: // Commercial Phosphorus Fertilizer Application\r\n case 13: // Commercial Nitrogen Fertilizer Application\r\n const fns = this.farmerNutrientSources.find(x => x.nutrientSourceId == 1);\r\n return fns ? answerLevel == 0 ? fns.ownedQuantity > 0 : fns.rentedQuantity > 0 : false;\r\n case 7: // Manure Application Recommendation\r\n case 14: // Manure Application\r\n const mns = this.farmerNutrientSources.find(x => x.nutrientSourceId == 2);\r\n return mns ? answerLevel == 0 ? mns.ownedQuantity > 0 : mns.rentedQuantity > 0 : false;\r\n case 8: // Biosolids Application Recommendation\r\n case 15: // Biosolids Application\r\n const bns = this.farmerNutrientSources.find(x => x.nutrientSourceId == 3);\r\n return bns ? answerLevel == 0 ? bns.ownedQuantity > 0 : bns.rentedQuantity > 0 : false;\r\n case 9: // Other Organic Nutrient Sources\r\n case 16: // Other Organic Sources\r\n const ons = this.farmerNutrientSources.find(x => x.nutrientSourceId == 6);\r\n return ons ? answerLevel == 0 ? ons.ownedQuantity > 0 : ons.rentedQuantity > 0 : false;\r\n default:\r\n return true;\r\n }\r\n }\r\n shouldShowCrop(categoryId: number, cropId: number) {\r\n if ([\r\n 11, // Commercial Nitrogen Fertilizer Recommendations\r\n 13 // Commercial Nitrogen Fertilizer Application\r\n ].indexOf(categoryId) > -1) {\r\n return cropId != 11 // Soy\r\n } else return true;\r\n }\r\n isCropQuestion(categoryId: number) {\r\n return [\r\n 10, // Commercial Phosphorus Fertilizer Recommendations\r\n 11, // Commercial Nitrogen Fertilizer Recommendations\r\n 12, // Commercial Phosphorus Fertilizer Application\r\n 13, // Commercial Nitrogen Fertilizer Application\r\n 17 // Tillage\r\n ].indexOf(categoryId) > -1;\r\n }\r\n isManureApplication(categoryId: number) {\r\n return [\r\n 7, // Manure Application Recommendation\r\n 14, // Manure Application\r\n ].indexOf(categoryId) > -1;\r\n }\r\n isBiosolidsApplication(categoryId: number) {\r\n return [\r\n 8, // Biosolids Application Recommendation\r\n 15, // Biosolids Application\r\n ].indexOf(categoryId) > -1;\r\n }\r\n isOtherOrganic(categoryId: number) {\r\n return [\r\n 9, // Other Organic Nutrient Sources\r\n 16, // Other Organic Sources\r\n ].indexOf(categoryId) > -1;\r\n }\r\n\r\n isBonusQuestion(categoryId: number) {\r\n return [\r\n 19, // Grassed Waterways\r\n 20, // Grade Stabilization Structures\r\n 21, // Blind Inlets\r\n 22, // Drainage Water Control Structures\r\n 23, // Filter Strips or Buffer Strips\r\n 24, // Wetlands\r\n 25, // Two-Stage Ditch or Natural Stream Channel Restoration\r\n 26, // Denitrifying Bioreactor\r\n 27 // Phosphorus Removal Bed (P-filter)\r\n ].indexOf(categoryId) > -1;\r\n }\r\n\r\n getFarmerNutrientSource (category: CCategoryAnswerDto) {\r\n switch(category.id) {\r\n case 7: // Manure Application Recommendation\r\n case 14: // Manure Application\r\n return this.farmerNutrientSources.find(x => x.nutrientSourceId == 2);\r\n case 8: // Biosolids Application Recommendation\r\n case 15: // Biosolids Application\r\n return this.farmerNutrientSources.find(x => x.nutrientSourceId == 3);\r\n case 9: // Other Organic Nutrient Sources\r\n case 16: // Other Organic Sources\r\n return this.farmerNutrientSources.find(x => x.nutrientSourceId == 6);\r\n default: return null;\r\n }\r\n }\r\n getCategoryColor(category: CCategoryAnswerDto) {\r\n switch(category.id) {\r\n case CertificationMasterSectionEnum.NutrientApplicationRate:\r\n return AppThemeColors.OliveGreen;\r\n case CertificationMasterSectionEnum.NutrientApplicationPlacement:\r\n return AppThemeColors.DarkCyan;\r\n case CertificationMasterSectionEnum.InFieldManagement:\r\n return AppThemeColors.BabyBlue;\r\n case CertificationMasterSectionEnum.StructuralPractices:\r\n return AppThemeColors.Purple;\r\n }\r\n }\r\n\r\n public toggle(category: CCategoryAnswerDto)\r\n {\r\n this.categories.forEach(c => {\r\n c.children.forEach(child => {\r\n if (c.id == category.parentId) {\r\n if (child.id != category.id) {\r\n child.collapsed = true;\r\n } else {\r\n child.collapsed = !child.collapsed;\r\n }\r\n } else {\r\n child.collapsed = true;\r\n }\r\n });\r\n });\r\n\r\n setTimeout(() => {\r\n this.scrollToTop(category.id.toString()); \r\n }, 100);\r\n }\r\n\r\n scrollToTop(id: string){\r\n //Scroll accordion list item to top\r\n let doc = document.getElementById(id);\r\n doc.scrollIntoView({ block: 'start', behavior: 'smooth' });\r\n }\r\n\r\n public collapseExcept(category: CCategoryAnswerDto)\r\n {\r\n this.categories.forEach(c => {\r\n c.children.forEach(child => {\r\n if (c.id == category.parentId) {\r\n if (child.id != category.id) {\r\n child.collapsed = true;\r\n } else {\r\n child.collapsed = false\r\n }\r\n } else {\r\n child.collapsed = true;\r\n }\r\n });\r\n });\r\n }\r\n\r\n shouldShowCategory(categoryId: number) {\r\n switch(categoryId) {\r\n case 10: // Commercial Phosphorus Fertilizer Recommendations\r\n case 11: // Commercial Nitrogen Fertilizer Recommendations\r\n case 12: // Commercial Phosphorus Fertilizer Application\r\n case 13: // Commercial Nitrogen Fertilizer Application\r\n const fns = this.farmerNutrientSources.find(x => x.nutrientSourceId == 1);\r\n return fns ? fns.ownedQuantity > 0 || fns.rentedQuantity > 0 : false;\r\n case 7: // Manure Application Recommendation\r\n case 14: // Manure Application\r\n const mns = this.farmerNutrientSources.find(x => x.nutrientSourceId == 2);\r\n return mns ? mns.ownedQuantity > 0 || mns.rentedQuantity > 0 : false;\r\n case 8: // Biosolids Application Recommendation\r\n case 15: // Biosolids Application\r\n const bns = this.farmerNutrientSources.find(x => x.nutrientSourceId == 3);\r\n return bns ? bns.ownedQuantity > 0 || bns.rentedQuantity > 0 : false;\r\n case 9: // Other Organic Nutrient Sources\r\n case 16: // Other Organic Sources\r\n const ons = this.farmerNutrientSources.find(x => x.nutrientSourceId == 6);\r\n return ons ? ons.ownedQuantity > 0 || ons.rentedQuantity > 0 : false;\r\n default:\r\n return true;\r\n }\r\n }\r\n\r\n isAdmin() {\r\n return this.permissionChecker.isGranted(\"Pages.Certifications\");\r\n }\r\n\r\n hasFarmerCrops() {\r\n return this.farmerCrops && this.farmerCrops.length > 0;\r\n }\r\n\r\n back() {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n farmerId: this.farmer.id\r\n }\r\n };\r\n this.router.navigate(['/main/farmer'], navigationExtras);\r\n }\r\n\r\n isBooleanQuestion(category: CCategoryAnswerDto) {\r\n return category ? category.children ? category.children[0] ? category.children[0].answerTypeId == 1 : false : false : false;\r\n }\r\n\r\n}\r\n","export enum CertificationMasterSectionEnum{\r\n NutrientApplicationRate = 1,\r\n NutrientApplicationPlacement = 2,\r\n InFieldManagement = 3,\r\n StructuralPractices = 4\r\n}","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { DashboardPage } from './dashboard.page';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: DashboardPage\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class DashboardPageRoutingModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { DashboardPageRoutingModule } from './dashboard-routing.module';\r\n\r\nimport { DashboardPage } from './dashboard.page';\r\nimport { ChartsModule } from 'ng2-charts';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n DashboardPageRoutingModule,\r\n ChartsModule\r\n ],\r\n declarations: [DashboardPage]\r\n})\r\nexport class DashboardPageModule {}\r\n","module.exports = \"canvas {\\n display: unset !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi9kYXNoYm9hcmQvWjpcXHNvdXJjZVxcT0FDSVxcT0FDSVxcb2FjaS1jZXJ0aWZpY2F0aW9uL3NyY1xcYXBwXFxtYWluXFxkYXNoYm9hcmRcXGRhc2hib2FyZC5wYWdlLnNjc3MiLCJzcmMvYXBwL21haW4vZGFzaGJvYXJkL2Rhc2hib2FyZC5wYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSx5QkFBQTtBQ0NKIiwiZmlsZSI6InNyYy9hcHAvbWFpbi9kYXNoYm9hcmQvZGFzaGJvYXJkLnBhZ2Uuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbImNhbnZhcyB7XHJcbiAgICBkaXNwbGF5OiB1bnNldCAhaW1wb3J0YW50O1xyXG59IiwiY2FudmFzIHtcbiAgZGlzcGxheTogdW5zZXQgIWltcG9ydGFudDtcbn0iXX0= */\"","import { Component, OnInit, ViewEncapsulation } from \"@angular/core\";\r\nimport {\r\n DashboardServiceServiceProxy,\r\n} from \"@shared/service-proxies/service-proxies\";\r\nimport { ExportService } from \"@shared/export/export.service\";\r\nimport { Title } from \"@angular/platform-browser\";\r\nimport { Platform } from '@ionic/angular';\r\n\r\n@Component({\r\n selector: \"app-dashbaord\",\r\n templateUrl: \"./dashboard.page.html\",\r\n styleUrls: [\"./dashboard.page.scss\"],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class DashboardPage implements OnInit {\r\n\r\n constructor(\r\n private dashboardService: DashboardServiceServiceProxy,\r\n private exportService: ExportService,\r\n private titleService: Title,\r\n public platform: Platform\r\n ) {}\r\n ngOnInit() {\r\n this.titleService.setTitle(\"OACI - Dashboard\");\r\n }\r\n\r\n setupDataSets() {}\r\n\r\n export() {\r\n this.dashboardService.export().subscribe((fileResponse) => {\r\n this.exportService.saveFile(fileResponse, \"Certifications\");\r\n });\r\n }\r\n\r\n print() {\r\n\r\n window.print();\r\n\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { FarmerPage } from './farmer.page';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\nimport { Ionic4DatepickerModule } from '@logisticinfotech/ionic4-datepicker';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n IonicModule,\r\n NgxDatatableModule,\r\n Ionic4DatepickerModule\r\n ],\r\n declarations: [FarmerPage]\r\n})\r\nexport class FarmerPageModule {}\r\n\r\n","module.exports = \".error-label {\\n font-weight: bold;\\n color: red;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi9mYXJtZXIvWjpcXHNvdXJjZVxcT0FDSVxcT0FDSVxcb2FjaS1jZXJ0aWZpY2F0aW9uL3NyY1xcYXBwXFxtYWluXFxmYXJtZXJcXGZhcm1lci5wYWdlLnNjc3MiLCJzcmMvYXBwL21haW4vZmFybWVyL2Zhcm1lci5wYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxpQkFBQTtFQUNBLFVBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL21haW4vZmFybWVyL2Zhcm1lci5wYWdlLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuZXJyb3ItbGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBjb2xvcjogcmVkO1xyXG59IiwiLmVycm9yLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiByZWQ7XG59Il19 */\"","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormControl } from '@angular/forms';\r\nimport {\r\n CountyDto,\r\n CountyServiceServiceProxy,\r\n FarmerDto,\r\n FarmerServiceServiceProxy,\r\n FarmerCountyDto,\r\n UserServiceProxy,\r\n FarmerCropQuantityDto,\r\n CropDto,\r\n CropServiceServiceProxy,\r\n NutrientSourceServiceServiceProxy,\r\n NutrientSourceDto,\r\n FarmerNutrientSourceQuantityDto,\r\n FarmerCountyServiceServiceProxy,\r\n FarmerCropQuantityServiceServiceProxy,\r\n FarmerNutrientSourceQuantityServiceServiceProxy,\r\n UserDto,\r\n FarmerManureStorageServiceServiceProxy,\r\n FarmerManureStorageDto,\r\n CostShareDto,\r\n FarmerCostShareDto,\r\n FarmerCostShareServiceServiceProxy,\r\n CostShareServiceServiceProxy,\r\n WatershedServiceServiceProxy,\r\n FarmerWatershedServiceServiceProxy,\r\n FarmerWatershedDto,\r\n WatershedDto,\r\n NMPTypeDto,\r\n NMPTypeServiceServiceProxy,\r\n FarmerNutrientRecommendationQuantityDto,\r\n NutrientRecommendationDto,\r\n NutrientRecommendationServiceServiceProxy,\r\n FarmerNutrientRecommendationQuantityServiceServiceProxy,\r\n CCertificationDto,\r\n CertificationServiceServiceProxy,\r\n CreateUserDto,\r\n FarmerCreateDto,\r\n FarmerSaveDto,\r\n CCertificationCreateInput,\r\n CCertificationStatusEnum\r\n} from '@shared/service-proxies/service-proxies';\r\nimport { AlertController, LoadingController, ModalController, IonInput, Platform, NavController } from '@ionic/angular';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { ActivatedRoute, Router, NavigationExtras } from '@angular/router';\r\nimport { IonRadioGroup } from '@ionic/angular';\r\nimport { ManureStoragePage } from './manure-storage/manure-storage.page';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { FeatureMap } from '@shared/models/feature-map';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { createTextMaskInputElement } from 'text-mask-core';\r\nimport * as moment from 'moment'; \r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-farmer',\r\n templateUrl: './farmer.page.html',\r\n styleUrls: ['./farmer.page.scss']\r\n})\r\nexport class FarmerPage implements OnInit {\r\n\r\n id: number;\r\n farmer: FarmerDto;\r\n user: UserDto;\r\n farmerCounties: FarmerCountyDto[] = [];\r\n farmerCropQuantities: FarmerCropQuantityDto[] = [];\r\n farmerNutrientSourceQuantities: FarmerNutrientSourceQuantityDto[] = [];\r\n farmerNutrientRecommendationQuantities: FarmerNutrientRecommendationQuantityDto[] = [];\r\n farmerManureStorages: FarmerManureStorageDto[] = [];\r\n farmerCostShares: FarmerCostShareDto[] = [];\r\n farmerWatersheds: FarmerWatershedDto[] = [];\r\n formGroup: FormGroup;\r\n counties: CountyDto[] = [];\r\n crops: CropDto[] = [];\r\n nutrientSources: NutrientSourceDto[] = [];\r\n nutrientRecommendations: NutrientRecommendationDto[] = [];\r\n costShares: CostShareDto[] = [];\r\n watersheds: WatershedDto[] = [];\r\n nmpTypes: NMPTypeDto[] = [];\r\n certifications: CCertificationDto[];\r\n watershedlink = 'https://www.epa.ohio.gov/portals/35/tmdl/2010IntReport/Section%20K%20-%20HUC8_basemap.pdf';\r\n maxDate: string = (new Date()).toISOString();\r\n isLoaded: boolean = false;\r\n intervalId: any;\r\n isSaving: boolean = false;\r\n isSavingFarmerCounties: boolean = false;\r\n isSavingFarmerCropQuantities: boolean = false;\r\n isSavingFarmerNutrientSourceQuantities: boolean = false;\r\n isSavingFarmerNutrientRecommendationQuantities: boolean = false;\r\n isSavingFarmerCostShares: boolean = false;\r\n isSavingFarmerWatersheds: boolean = false;\r\nencToken :string;\r\n // prettier-ignore\r\n private phoneMask = ['(', /[1-9]/, /\\d/, /\\d/, ')', ' ', /\\d/, /\\d/, /\\d/, '-', /\\d/, /\\d/, /\\d/, /\\d/];\r\n\r\n get phoneNumber() {\r\n return this.formGroup.get('phoneNumber') as FormControl;\r\n }\r\n\r\n @ViewChild('phoneInput', { static: false })\r\n public set phoneInput(value: IonInput) {\r\n if (!value) {\r\n return;\r\n }\r\n\r\n value.getInputElement().then(input => this.registerTextMask(input));\r\n }\r\n\r\n nmpDatePickerObj: any = {\r\n inputDate: new Date(),\r\n toDate: new Date(),\r\n showTodayButton: false,\r\n // closeOnSelect: true,\r\n setLabel: 'Select',\r\n titleLabel: 'Select a Date',\r\n dateFormat: 'MM/DD/YYYY'\r\n };\r\n\r\n factDatePickerObj: any = {\r\n inputDate: new Date(),\r\n toDate: new Date(),\r\n showTodayButton: false,\r\n // closeOnSelect: true,\r\n setLabel: 'Select',\r\n titleLabel: 'Select a Date',\r\n dateFormat: 'MM/DD/YYYY'\r\n };\r\n\r\n private baseUrl: string = AppConsts.remoteServiceBaseUrl;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private countyService: CountyServiceServiceProxy,\r\n private alertController: AlertController,\r\n private modalController: ModalController,\r\n storageService: AppStorageService,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private farmerSvc: FarmerServiceServiceProxy,\r\n private userService: UserServiceProxy,\r\n private cropService: CropServiceServiceProxy,\r\n private nutrientSourceService: NutrientSourceServiceServiceProxy,\r\n private nutrientRecommendationService: NutrientRecommendationServiceServiceProxy,\r\n private costShareService: CostShareServiceServiceProxy,\r\n private watershedService: WatershedServiceServiceProxy,\r\n private nmpTypeService: NMPTypeServiceServiceProxy,\r\n private loadingController: LoadingController,\r\n private farmerCountyService: FarmerCountyServiceServiceProxy,\r\n private farmerCropQuantityService: FarmerCropQuantityServiceServiceProxy,\r\n private farmerNutrientSourceQuantityService: FarmerNutrientSourceQuantityServiceServiceProxy,\r\n private farmerNutrientRecommendationQuantityService: FarmerNutrientRecommendationQuantityServiceServiceProxy,\r\n private farmerManureStorageService: FarmerManureStorageServiceServiceProxy,\r\n private farmerCostShareService: FarmerCostShareServiceServiceProxy,\r\n private farmerWatershedService: FarmerWatershedServiceServiceProxy,\r\n private certificationService: CertificationServiceServiceProxy,\r\n private appSessionService: AppSessionService,\r\n private permissionChecker: PermissionCheckerService,\r\n private platform: Platform,\r\n private titleService: Title, \r\n private appStorageService: AppStorageService,\r\n private navCtrl: NavController\r\n ) {\r\n storageService.IsLoadedSubject.subscribe(x => {\r\n if (!this.isLoaded && x) {\r\n appStorageService.EncryptedTokenSubject.subscribe(y => this.encToken = y);\r\n this.route.queryParams.subscribe(params => {\r\n if (params && params.farmerId) {\r\n this.id = +params.farmerId;\r\n // so for whatever reason navigating with params from app.component will not set the\r\n // farmer id in the url so have to force it here....................................\r\n this.router.navigate([], { queryParams: { farmerId: this.id } });\r\n if (this.id > 0) {\r\n this.getFarmer();\r\n } else {\r\n this.initializeNewFarmer();\r\n }\r\n }\r\n else if (appSessionService.farmerId) {\r\n this.id = appSessionService.farmerId;\r\n // so for whatever reason navigating with params from app.component will not set the\r\n // farmer id in the url so have to force it here....................................\r\n this.router.navigate([], { queryParams: { farmerId: this.id } });\r\n this.getFarmer();\r\n } else {\r\n this.initializeNewFarmer();\r\n }\r\n this.getCounties();\r\n this.getCrops();\r\n this.getNutrientSources();\r\n this.getNutrientRecommendations();\r\n this.getCostShares();\r\n this.getWatersheds();\r\n this.getNMPTypes();\r\n this.isLoaded = true;\r\n });\r\n }\r\n });\r\n this.setupForm();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ionViewWillEnter() {\r\n this.titleService.setTitle('OACI - Farmer Profile');\r\n this.setupForm();\r\n this.clearRelatedEntities();\r\n this.intervalId = setInterval(() => {\r\n if (!this.isSaving) this.saveFarmer(true, true);\r\n }, 1 * 60 * 1000); // every minute\r\n }\r\n\r\n // ionViewWillLeave(){\r\n ionViewDidLeave(){\r\n clearInterval(this.intervalId);\r\n /*if (this.router.url.indexOf('/account/login') == -1)*/ this.saveFarmer(true, true);\r\n this.initializeNewFarmer();\r\n }\r\n\r\n setupForm() {\r\n if (this.formGroup) {\r\n this.formGroup.reset();\r\n }\r\n this.formGroup = this.formBuilder.group({\r\n firstName: ['', Validators.required],\r\n lastName: ['', Validators.required],\r\n emailAddress: ['', Validators.required],\r\n phoneNumber: ['', Validators.required],\r\n userName:['',Validators.required],\r\n farmName: ['', this.id ? Validators.required : null],\r\n address: ['', this.id ? Validators.required : null],\r\n city: ['', this.id ? Validators.required : null],\r\n zipCode: ['', this.id ? Validators.required : null],\r\n ownedAcres: ['', this.id ? Validators.required : null],\r\n rentedAcres: ['', this.id ? Validators.required : null],\r\n nmpComplete: ['', this.id ? Validators.required : null],\r\n nmpCompletionDate: [''],\r\n nmpHasBeenStarted: [''],\r\n nmpTypeId: [''],\r\n nmpAcreageQuantity: [''],\r\n factComplete: ['', this.id ? Validators.required : null],\r\n factCompletionDate: [''],\r\n nutrientApplication: ['', this.id ? Validators.required : null],\r\n sensitiveAreas: ['', this.id ? Validators.required : null],\r\n infoRepresentsEntireFarmingOperation: [null, this.id ? Validators.requiredTrue : null],\r\n infoSubjectToAuditByIndependentAuditors: [null, this.id ? Validators.requiredTrue : null],\r\n infoFairAndAccurateToBestAbility: [null, this.id ? Validators.requiredTrue : null]\r\n });\r\n }\r\n\r\n makeFarmerFieldsRequired() {\r\n this.formGroup.controls.farmName.setValidators([Validators.required]);\r\n this.formGroup.controls.address.setValidators([Validators.required]);\r\n this.formGroup.controls.city.setValidators([Validators.required]);\r\n this.formGroup.controls.zipCode.setValidators([Validators.required]);\r\n this.formGroup.controls.ownedAcres.setValidators([Validators.required]);\r\n this.formGroup.controls.rentedAcres.setValidators([Validators.required]);\r\n this.formGroup.controls.nmpComplete.setValidators([Validators.required]);\r\n this.formGroup.controls.factComplete.setValidators([Validators.required]);\r\n this.formGroup.controls.nutrientApplication.setValidators([Validators.required]);\r\n this.formGroup.controls.sensitiveAreas.setValidators([Validators.required]);\r\n this.formGroup.controls.infoRepresentsEntireFarmingOperation.setValidators([Validators.requiredTrue]);\r\n this.formGroup.controls.infoSubjectToAuditByIndependentAuditors.setValidators([Validators.requiredTrue]);\r\n this.formGroup.controls.infoFairAndAccurateToBestAbility.setValidators([Validators.requiredTrue]);\r\n this.formGroup.controls.farmName.updateValueAndValidity();\r\n this.formGroup.controls.address.updateValueAndValidity();\r\n this.formGroup.controls.city.updateValueAndValidity();\r\n this.formGroup.controls.zipCode.updateValueAndValidity();\r\n this.formGroup.controls.ownedAcres.updateValueAndValidity();\r\n this.formGroup.controls.rentedAcres.updateValueAndValidity();\r\n this.formGroup.controls.nmpComplete.updateValueAndValidity();\r\n this.formGroup.controls.factComplete.updateValueAndValidity();\r\n this.formGroup.controls.nutrientApplication.updateValueAndValidity();\r\n this.formGroup.controls.sensitiveAreas.updateValueAndValidity();\r\n this.formGroup.controls.infoRepresentsEntireFarmingOperation.updateValueAndValidity();\r\n this.formGroup.controls.infoSubjectToAuditByIndependentAuditors.updateValueAndValidity();\r\n this.formGroup.controls.infoFairAndAccurateToBestAbility.updateValueAndValidity();\r\n }\r\n\r\n getCounties() {\r\n this.countyService.getAll().subscribe(counties => {\r\n this.counties = counties;\r\n });\r\n }\r\n\r\n getCrops() {\r\n this.cropService.getAll().subscribe(crops => {\r\n this.crops = crops;\r\n if (!this.id) {\r\n // this.addDefaultCropQuantitiesIfNeeded();\r\n }\r\n });\r\n }\r\n\r\n getNutrientSources() {\r\n this.nutrientSourceService.getAll().subscribe(nutrientSources => {\r\n this.nutrientSources = nutrientSources;\r\n if (!this.id) {\r\n this.addDefaultNutrientSourceQuantitiesIfNeeded();\r\n }\r\n });\r\n }\r\n\r\n getNutrientRecommendations() {\r\n this.nutrientRecommendationService.getAll().subscribe(nutrientRecommendations => {\r\n this.nutrientRecommendations = nutrientRecommendations;\r\n });\r\n }\r\n\r\n getCostShares() {\r\n this.costShareService.getAll().subscribe(costShares => {\r\n this.costShares = costShares;\r\n });\r\n }\r\n\r\n getWatersheds() {\r\n this.watershedService.getAll().subscribe(watersheds => {\r\n this.watersheds = watersheds;\r\n });\r\n }\r\n\r\n getNMPTypes() {\r\n this.nmpTypeService.getAll().subscribe(nmpTypes => {\r\n this.nmpTypes = nmpTypes;\r\n });\r\n }\r\n\r\n async getFarmer() {\r\n\r\n const loading = await this.loadingController.create({\r\n message: 'Fetching farmer profile...',\r\n });\r\n await loading.present();\r\n\r\n this.farmerSvc.get(this.id).subscribe(async farmer => {\r\n this.farmer = farmer;\r\n if (this.farmer) {\r\n this.getUser();\r\n this.loadFarmerFields();\r\n this.getAllRelatedEntities();\r\n await loading.dismiss();\r\n }\r\n });\r\n }\r\n\r\n async getUser() {\r\n\r\n this.userService.get(this.farmer.userId).subscribe(async user => {\r\n this.user = user;\r\n if (this.user) {\r\n this.loadUserFields();\r\n }\r\n });\r\n }\r\n\r\n getAllRelatedEntities() {\r\n this.getFarmerCounties();\r\n this.getFarmerCropQuantities();\r\n this.getFarmerNutrientSourceQuantities();\r\n this.getFarmerNutrientRecommendationQuantities();\r\n this.getFarmerManureStorages();\r\n this.getFarmerCostShares();\r\n this.getFarmerWatersheds();\r\n this.getFarmerCertifications();\r\n }\r\n\r\n clearRelatedEntities() {\r\n this.farmerCounties = [];\r\n this.farmerCropQuantities = [];\r\n this.farmerNutrientSourceQuantities = [];\r\n this.farmerNutrientRecommendationQuantities = [];\r\n this.farmerManureStorages = [];\r\n this.farmerCostShares = [];\r\n this.farmerWatersheds = [];\r\n }\r\n\r\n getFarmerCounties() {\r\n this.farmerCountyService.getAllByFarmerId(this.id).subscribe(farmerCountiesResponse => {\r\n this.farmerCounties = farmerCountiesResponse;\r\n this.sortFarmerCounties();\r\n });\r\n }\r\n\r\n getFarmerCropQuantities() {\r\n this.farmerCropQuantityService.getAllByFarmerId(this.id).subscribe(farmerCropQuantitiesResponse => {\r\n this.farmerCropQuantities = farmerCropQuantitiesResponse;\r\n // this.addDefaultCropQuantitiesIfNeeded();\r\n this.sortfarmerCropQuantities();\r\n });\r\n }\r\n\r\n getFarmerNutrientSourceQuantities() {\r\n this.farmerNutrientSourceQuantityService.getAllByFarmerId(this.id).subscribe(farmerNutrientSourceQuantitiesResponse => {\r\n this.farmerNutrientSourceQuantities = farmerNutrientSourceQuantitiesResponse;\r\n this.addDefaultNutrientSourceQuantitiesIfNeeded();\r\n this.sortFarmerNutrientSourceQuantities();\r\n });\r\n }\r\n\r\n getFarmerNutrientRecommendationQuantities() {\r\n this.farmerNutrientRecommendationQuantityService.getAllByFarmerId(this.id).subscribe(farmerNutrientRecommendationQuantitiesResponse => {\r\n this.farmerNutrientRecommendationQuantities = farmerNutrientRecommendationQuantitiesResponse;\r\n this.sortFarmerNutrientRecommendationQuantities();\r\n });\r\n }\r\n\r\n getFarmerManureStorages() {\r\n this.farmerManureStorageService.getAllByFarmerId(this.id).subscribe(farmerManureStoragesResponse => {\r\n this.farmerManureStorages = farmerManureStoragesResponse;\r\n this.sortFarmerManureStorages();\r\n });\r\n }\r\n\r\n getFarmerCostShares() {\r\n this.farmerCostShareService.getAllByFarmerId(this.id).subscribe(farmerCostSharesResponse => {\r\n this.farmerCostShares = farmerCostSharesResponse;\r\n this.sortFarmerCostShares();\r\n });\r\n }\r\n\r\n getFarmerWatersheds() {\r\n this.farmerWatershedService.getAllByFarmerId(this.id).subscribe(farmerWatershedsResponse => {\r\n this.farmerWatersheds = farmerWatershedsResponse;\r\n this.sortFarmerWatersheds();\r\n });\r\n }\r\n\r\n loadFarmerFields() {\r\n const farmer = this.farmer;\r\n this.formGroup.patchValue({\r\n farmName: farmer.farmName,\r\n address: farmer.address,\r\n city: farmer.city,\r\n zipCode: farmer.zipCode,\r\n ownedAcres: farmer.ownedAcres,\r\n rentedAcres: farmer.rentedAcres,\r\n nmpComplete: farmer.nmpComplete,\r\n nmpCompletionDate: farmer.nmpCompletionDate ? moment(farmer.nmpCompletionDate).format('MM/DD/YYYY') : null,\r\n nmpHasBeenStarted: farmer.nmpHasBeenStarted,\r\n nmpTypeId: farmer.nmpTypeId,\r\n nmpAcreageQuantity: farmer.nmpAcreageQuantity,\r\n factComplete: farmer.factComplete,\r\n factCompletionDate: farmer.factCompletionDate ? moment(farmer.factCompletionDate).format('MM/DD/YYYY') : null,\r\n nutrientApplication: farmer.nutrientApplication,\r\n sensitiveAreas: farmer.sensitiveAreas,\r\n infoRepresentsEntireFarmingOperation: farmer.infoRepresentsEntireFarmingOperation,\r\n infoSubjectToAuditByIndependentAuditors: farmer.infoSubjectToAuditByIndependentAuditors,\r\n infoFairAndAccurateToBestAbility: farmer.infoFairAndAccurateToBestAbility\r\n });\r\n this.enableOrDisableInformationCheckboxes();\r\n if (farmer.nmpCompletionDate) {\r\n this.nmpDatePickerObj.inputDate = farmer.nmpCompletionDate;\r\n }\r\n if (farmer.factCompletionDate) {\r\n this.factDatePickerObj.inputDate = farmer.factCompletionDate;\r\n }\r\n this.nmpCompleteRadioSelect(null);\r\n this.factCompleteRadioSelect(null);\r\n }\r\n\r\n loadUserFields() {\r\n const user = this.user;\r\n this.formGroup.patchValue({\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n emailAddress: user.emailAddress,\r\n phoneNumber: user.phoneNumber,\r\n userName:user.userName\r\n });\r\n }\r\n\r\n getFarmerCertifications() {\r\n this.certificationService.getAll(true, this.id).subscribe(response => {\r\n const completedCerts = response.items\r\n .filter(x => x.statusId == CCertificationStatusEnum._2);\r\n const completedCertYears = Array.from(new Set(completedCerts.map(x => x.year)));\r\n const completedCertIdsToRemove = [];\r\n completedCertYears.forEach(year => {\r\n const certsForYear = completedCerts.filter(x => x.year == year);\r\n const certWithBestScoreId = certsForYear\r\n .reduce((prev, current) => (prev.score > current.score) ? prev : current).id;\r\n completedCertIdsToRemove.push.apply(\r\n completedCertIdsToRemove,\r\n certsForYear.filter(x => x.id != certWithBestScoreId).map(x => x.id)\r\n );\r\n });\r\n this.certifications = response.items.filter(x => completedCertIdsToRemove.indexOf(x.id) == -1);\r\n });\r\n }\r\n\r\n removeCounty(farmerCounty: FarmerCountyDto) {\r\n if (farmerCounty.id > 0) {\r\n this.farmerCountyService.delete(farmerCounty.id).subscribe(() => { });\r\n }\r\n const index = this.farmerCounties.indexOf(farmerCounty);\r\n this.farmerCounties.splice(index, 1);\r\n }\r\n\r\n removeCrop(farmerCropQuantity: FarmerCropQuantityDto) {\r\n if (farmerCropQuantity.id > 0) {\r\n this.farmerCropQuantityService.delete(farmerCropQuantity.id).subscribe(() => { });\r\n }\r\n const index = this.farmerCropQuantities.indexOf(farmerCropQuantity);\r\n this.farmerCropQuantities.splice(index, 1);\r\n }\r\n\r\n removeWatershed(farmerWatershed: FarmerWatershedDto) {\r\n if (farmerWatershed.id > 0) {\r\n this.farmerWatershedService.delete(farmerWatershed.id).subscribe(() => { });\r\n }\r\n const index = this.farmerWatersheds.indexOf(farmerWatershed);\r\n this.farmerWatersheds.splice(index, 1);\r\n }\r\n\r\n async addNewCounty() {\r\n const checkBoxes = [];\r\n this.counties\r\n .filter(county =>\r\n this.farmerCounties.map(fc => fc.countyId).indexOf(county.id) == -1\r\n )\r\n .forEach(county => {\r\n checkBoxes.push({\r\n name: county.name,\r\n type: 'checkbox',\r\n label: county.name,\r\n value: county.id,\r\n checked: false\r\n });\r\n });\r\n const alert = await this.alertController.create({\r\n header: 'County(s)',\r\n inputs: checkBoxes,\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: () => {\r\n console.log('Confirm Cancel');\r\n }\r\n }, {\r\n text: 'Ok',\r\n handler: (countyIds) => {\r\n countyIds.forEach(countyId => {\r\n const farmerCounty = new FarmerCountyDto();\r\n farmerCounty.countyId = countyId;\r\n farmerCounty.countyName = this.counties.find(c => c.id == countyId).name;\r\n farmerCounty.farmerId = this.id ? this.id : 0;\r\n this.farmerCounties.push(farmerCounty);\r\n });\r\n this.sortFarmerCounties();\r\n this.saveFarmer(true, true);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n sortFarmerCounties() {\r\n this.farmerCounties = this.farmerCounties.sort(this.sortFarmerCounty);\r\n }\r\n\r\n sortFarmerCounty(a: FarmerCountyDto, b: FarmerCountyDto) {\r\n return a.countyName > b.countyName ? 1 : a.countyName < b.countyName ? -1 : 0;\r\n }\r\n\r\n async addCrop() {\r\n const checkBoxes = [];\r\n this.crops\r\n .filter(crop =>\r\n this.farmerCropQuantities.map(fc => fc.cropId).indexOf(crop.id) == -1\r\n )\r\n .forEach(crop => {\r\n checkBoxes.push({\r\n name: crop.name,\r\n type: 'checkbox',\r\n label: crop.name,\r\n value: crop.id,\r\n checked: false\r\n });\r\n });\r\n const alert = await this.alertController.create({\r\n header: 'Crop(s)',\r\n inputs: checkBoxes,\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: () => {\r\n console.log('Confirm Cancel');\r\n }\r\n }, {\r\n text: 'Ok',\r\n handler: (cropIds) => {\r\n cropIds.forEach(cropId => {\r\n const farmerCropQuantity = new FarmerCropQuantityDto();\r\n farmerCropQuantity.cropId = cropId;\r\n farmerCropQuantity.cropName = this.crops.find(c => c.id == cropId).name;\r\n farmerCropQuantity.cropIsDefault = this.crops.find(c => c.id == cropId).isDefault;\r\n farmerCropQuantity.quantity = null; // 0;\r\n farmerCropQuantity.farmerId = this.id ? this.id : 0;\r\n this.farmerCropQuantities.push(farmerCropQuantity);\r\n });\r\n this.sortfarmerCropQuantities();\r\n this.saveFarmer(true, true);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n async addNutrientRecommendation() {\r\n const checkBoxes = [];\r\n this.nutrientRecommendations\r\n .filter(nr =>\r\n this.farmerNutrientRecommendationQuantities.map(fnrq => fnrq.nutrientRecommendationId).indexOf(nr.id) == -1\r\n )\r\n .forEach(nr => {\r\n checkBoxes.push({\r\n name: nr.name,\r\n type: 'checkbox',\r\n label: nr.name,\r\n value: nr.id,\r\n checked: false\r\n });\r\n });\r\n const alert = await this.alertController.create({\r\n header: 'Nutrient Recommendation(s)',\r\n inputs: checkBoxes,\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: () => {\r\n console.log('Confirm Cancel');\r\n }\r\n }, {\r\n text: 'Ok',\r\n handler: (nrIds) => {\r\n nrIds.forEach(nrId => {\r\n const farmerNutrientRecommendationQuantity = new FarmerNutrientRecommendationQuantityDto();\r\n farmerNutrientRecommendationQuantity.nutrientRecommendationId = nrId;\r\n farmerNutrientRecommendationQuantity.nutrientRecommendationName = this.nutrientRecommendations.find(nr => nr.id == nrId).name;\r\n // if (this.nutrientRecommendations.find(nr => nr.id == nrId).isFullService) {\r\n // farmerNutrientRecommendationQuantity.ownedQuantity = this.formGroup.controls.ownedAcres.value ? this.formGroup.controls.ownedAcres.value : null; // 0;\r\n // farmerNutrientRecommendationQuantity.rentedQuantity = this.formGroup.controls.rentedAcres.value ? this.formGroup.controls.rentedAcres.value : null; // 0;\r\n // } else {\r\n farmerNutrientRecommendationQuantity.ownedQuantity = null; // 0;\r\n farmerNutrientRecommendationQuantity.rentedQuantity = null; // 0;\r\n // }\r\n farmerNutrientRecommendationQuantity.farmerId = this.id ? this.id : 0;\r\n this.farmerNutrientRecommendationQuantities.push(farmerNutrientRecommendationQuantity);\r\n });\r\n this.sortFarmerNutrientRecommendationQuantities();\r\n this.saveFarmer(true, true);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n sortfarmerCropQuantities() {\r\n this.farmerCropQuantities = this.farmerCropQuantities.sort(this.sortfarmerCropQuantity);\r\n }\r\n\r\n sortfarmerCropQuantity(a: FarmerCropQuantityDto, b: FarmerCropQuantityDto) {\r\n if (\r\n (a.cropIsDefault && !b.cropIsDefault) ||\r\n (b.cropIsDefault && !a.cropIsDefault)\r\n ) return 1;\r\n return a.cropName > b.cropName ? 1 : a.cropName < b.cropName ? -1 : 0;\r\n }\r\n\r\n sortFarmerNutrientSourceQuantities() {\r\n this.farmerNutrientSourceQuantities = this.farmerNutrientSourceQuantities.sort(this.sortFarmerNutrientSourceQuantity);\r\n }\r\n\r\n sortFarmerNutrientSourceQuantity(a: FarmerNutrientSourceQuantityDto, b: FarmerNutrientSourceQuantityDto) {\r\n return a.nutrientSourceSort > b.nutrientSourceSort ? 1 : a.nutrientSourceSort < b.nutrientSourceSort ? -1 : 0;\r\n }\r\n\r\n sortFarmerNutrientRecommendationQuantities() {\r\n this.farmerNutrientRecommendationQuantities = this.farmerNutrientRecommendationQuantities.sort(this.sortFarmerNutrientRecommendationQuantity);\r\n }\r\n\r\n sortFarmerNutrientRecommendationQuantity(a: FarmerNutrientRecommendationQuantityDto, b: FarmerNutrientRecommendationQuantityDto) {\r\n return a.nutrientRecommendationName > b.nutrientRecommendationName ? 1 : a.nutrientRecommendationName < b.nutrientRecommendationName ? -1 : 0;\r\n }\r\n\r\n sortFarmerManureStorages() {\r\n this.farmerManureStorages = this.farmerManureStorages.sort(this.sortFarmerManureStorage);\r\n }\r\n\r\n sortFarmerManureStorage(a: FarmerManureStorageDto, b: FarmerManureStorageDto) {\r\n return a.manureStorageSourceName > b.manureStorageSourceName ? 1 : a.manureStorageSourceName < b.manureStorageSourceName ? -1 : 0;\r\n }\r\n\r\n sortFarmerCostShares() {\r\n this.farmerCostShares = this.farmerCostShares.sort(this.sortFarmerCostShare);\r\n }\r\n\r\n sortFarmerCostShare(a: FarmerCostShareDto, b: FarmerCostShareDto) {\r\n return a.costShareName > b.costShareName ? 1 : a.costShareName < b.costShareName ? -1 : 0;\r\n }\r\n\r\n sortFarmerWatersheds() {\r\n this.farmerWatersheds = this.farmerWatersheds.sort(this.sortFarmerWatershed);\r\n }\r\n\r\n sortFarmerWatershed(a: FarmerWatershedDto, b: FarmerWatershedDto) {\r\n return a.watershedName > b.watershedName ? 1 : a.watershedName < b.watershedName ? -1 : 0;\r\n }\r\n\r\n sortAllRelatedEntities() {\r\n this.sortFarmerCounties();\r\n this.sortfarmerCropQuantities();\r\n this.sortFarmerNutrientSourceQuantities();\r\n this.sortFarmerNutrientRecommendationQuantities();\r\n this.sortFarmerManureStorages();\r\n this.sortFarmerCostShares();\r\n this.sortFarmerWatersheds();\r\n }\r\n\r\n\r\n // addDefaultCropQuantitiesIfNeeded() {\r\n // this.crops.filter(crop => crop.isDefault).forEach(crop => {\r\n // if (!this.farmerCropQuantities.find(fcq => fcq.cropId == crop.id)) {\r\n // const farmerCropQuantity = new FarmerCropQuantityDto();\r\n // if (this.id) {\r\n // farmerCropQuantity.farmerId = this.id;\r\n // }\r\n // farmerCropQuantity.cropId = crop.id;\r\n // farmerCropQuantity.cropName = crop.name;\r\n // farmerCropQuantity.cropIsDefault = true;\r\n // farmerCropQuantity.quantity = null; // 0;\r\n // this.farmerCropQuantities.push(farmerCropQuantity);\r\n // }\r\n // });\r\n // }\r\n\r\n addDefaultNutrientSourceQuantitiesIfNeeded() {\r\n this.nutrientSources.forEach(ns => {\r\n if (!this.farmerNutrientSourceQuantities.find(fnsq => fnsq.nutrientSourceId == ns.id)) {\r\n const farmerNutrientSourceQuantityDto = new FarmerNutrientSourceQuantityDto();\r\n if (this.id) {\r\n farmerNutrientSourceQuantityDto.farmerId = this.id;\r\n }\r\n farmerNutrientSourceQuantityDto.nutrientSourceId = ns.id;\r\n farmerNutrientSourceQuantityDto.nutrientSourceName = ns.name;\r\n farmerNutrientSourceQuantityDto.ownedQuantity = null; // 0;\r\n farmerNutrientSourceQuantityDto.rentedQuantity = null; // 0;\r\n this.farmerNutrientSourceQuantities.push(farmerNutrientSourceQuantityDto);\r\n }\r\n });\r\n }\r\n\r\n nmpCompleteRadioSelect(event) {\r\n if (this.formGroup.controls.nmpComplete.value != null) {\r\n if (this.formGroup.controls.nmpComplete.value) {\r\n this.formGroup.controls.nmpCompletionDate.setValidators([Validators.required]);\r\n this.formGroup.controls.nmpTypeId.setValidators([Validators.required]);\r\n this.formGroup.controls.nmpAcreageQuantity.setValidators([Validators.required]);\r\n this.formGroup.controls.nmpHasBeenStarted.clearValidators();\r\n } else {\r\n this.formGroup.controls.nmpCompletionDate.clearValidators();\r\n this.formGroup.controls.nmpTypeId.clearValidators();\r\n this.formGroup.controls.nmpAcreageQuantity.clearValidators();\r\n this.formGroup.controls.nmpHasBeenStarted.setValidators([Validators.required]);\r\n }\r\n this.formGroup.controls.nmpCompletionDate.updateValueAndValidity();\r\n this.formGroup.controls.nmpTypeId.updateValueAndValidity();\r\n this.formGroup.controls.nmpAcreageQuantity.updateValueAndValidity();\r\n this.formGroup.controls.nmpHasBeenStarted.updateValueAndValidity();\r\n }\r\n }\r\n\r\n factCompleteRadioSelect(event) {\r\n if (this.formGroup.controls.factComplete.value != null) {\r\n if (this.formGroup.controls.factComplete.value) {\r\n this.formGroup.controls.factCompletionDate.setValidators([Validators.required]);\r\n } else {\r\n this.formGroup.controls.factCompletionDate.clearValidators();\r\n }\r\n this.formGroup.controls.factCompletionDate.updateValueAndValidity();\r\n }\r\n }\r\n\r\n async submitForm() {\r\n if (this.isFormValid()) {\r\n this.saveFarmer(false, false);\r\n } else {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n // subHeader: 'Error',\r\n message: 'Please fill in all required fields and/or correct form errors',\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n }\r\n\r\n isFormValid() {\r\n return this.getMissingRequiredFields().length == 0 && this.getSecondaryErrors().length == 0\r\n }\r\n\r\n getMissingRequiredFields() {\r\n let missingRequiredFields = [];\r\n\r\n if (!this.formGroup.valid) {\r\n if (!this.formGroup.controls.firstName.value) {\r\n missingRequiredFields.push('First Name');\r\n }\r\n if (!this.formGroup.controls.lastName.value) {\r\n missingRequiredFields.push('Last Name');\r\n }\r\n if (!this.formGroup.controls.emailAddress.value) {\r\n missingRequiredFields.push('Email Address');\r\n }\r\n if (!this.formGroup.controls.phoneNumber.value) {\r\n missingRequiredFields.push('Phone Number');\r\n }\r\n if (!this.formGroup.controls.userName.value) {\r\n missingRequiredFields.push('User Name');\r\n }\r\n if (this.id) {\r\n if (!this.formGroup.controls.farmName.value) {\r\n missingRequiredFields.push('Farm Name');\r\n }\r\n if (!this.formGroup.controls.address.value) {\r\n missingRequiredFields.push('Address');\r\n }\r\n if (!this.formGroup.controls.city.value) {\r\n missingRequiredFields.push('City');\r\n }\r\n if (!this.formGroup.controls.zipCode.value) {\r\n missingRequiredFields.push('Zip Code');\r\n }\r\n if (\r\n !this.formGroup.controls.ownedAcres.value && \r\n this.formGroup.controls.ownedAcres.value != 0\r\n ) {\r\n missingRequiredFields.push('Owned/Controlled Acres');\r\n }\r\n if (\r\n !this.formGroup.controls.rentedAcres.value && \r\n this.formGroup.controls.rentedAcres.value != 0\r\n ) {\r\n missingRequiredFields.push('Rented Acres');\r\n }\r\n if (this.formGroup.controls.nmpComplete.value == null) {\r\n missingRequiredFields.push('NMP Complete');\r\n } else {\r\n if (this.formGroup.controls.nmpComplete.value) {\r\n if (!this.formGroup.controls.nmpCompletionDate.value) {\r\n missingRequiredFields.push('NMP Date Completed');\r\n }\r\n if (!this.formGroup.controls.nmpTypeId.value) {\r\n missingRequiredFields.push('NMP Type');\r\n }\r\n if (\r\n !this.formGroup.controls.nmpAcreageQuantity.value &&\r\n this.formGroup.controls.nmpAcreageQuantity.value != 0\r\n ) {\r\n missingRequiredFields.push('NMP Acreage Quantity');\r\n }\r\n } else {\r\n if (this.formGroup.controls.nmpHasBeenStarted.value == null) {\r\n missingRequiredFields.push('NMP has been started?');\r\n }\r\n }\r\n }\r\n if (this.formGroup.controls.factComplete.value == null) {\r\n missingRequiredFields.push('FACT Complete');\r\n } else {\r\n if (this.formGroup.controls.factComplete.value) {\r\n if (!this.formGroup.controls.factCompletionDate.value) {\r\n missingRequiredFields.push('FACT Date Completed');\r\n }\r\n }\r\n }\r\n if (\r\n !this.formGroup.controls.nutrientApplication.value &&\r\n this.formGroup.controls.nutrientApplication.value != 0\r\n ) {\r\n missingRequiredFields.push('Nutrient Application Frozen/Snow Covered Grounds');\r\n }\r\n if (\r\n !this.formGroup.controls.sensitiveAreas.value &&\r\n this.formGroup.controls.sensitiveAreas.value != 0\r\n ) {\r\n missingRequiredFields.push('Sensitive Areas Located and Mapped');\r\n }\r\n if (\r\n this.formGroup.controls.infoRepresentsEntireFarmingOperation.value == null ||\r\n this.formGroup.controls.infoRepresentsEntireFarmingOperation.value == false\r\n ) {\r\n missingRequiredFields.push('Information represents farming operation');\r\n }\r\n if (\r\n this.formGroup.controls.infoSubjectToAuditByIndependentAuditors.value == null ||\r\n this.formGroup.controls.infoSubjectToAuditByIndependentAuditors.value == false\r\n ) {\r\n missingRequiredFields.push('Information subject to audit by independent auditors');\r\n }\r\n if (\r\n this.formGroup.controls.infoFairAndAccurateToBestAbility.value == null ||\r\n this.formGroup.controls.infoFairAndAccurateToBestAbility.value == false\r\n ) {\r\n missingRequiredFields.push('Information fair and accurate to best of ability');\r\n }\r\n }\r\n }\r\n\r\n return missingRequiredFields;\r\n }\r\n\r\n getSecondaryErrors() {\r\n let secondaryErrors = [];\r\n\r\n // // Need crops to add up to total acres\r\n // const totalAcresFarmed = this.formGroup.controls.ownedAcres.value + this.formGroup.controls.rentedAcres.value;\r\n // let totalAcresPerCropRotation = 0;\r\n // this.farmerCropQuantities.forEach(fcq => totalAcresPerCropRotation += fcq.quantity);\r\n // if (totalAcresFarmed != totalAcresPerCropRotation) {\r\n // secondaryErrors.push('Total crop acres in rotation doesn\\'t add up to total acres farmed')\r\n // }\r\n\r\n if (this.id) {\r\n if (\r\n !(this.farmerCropQuantities && this.farmerCropQuantities.length > 0)\r\n ) {\r\n secondaryErrors.push('Crops are required');\r\n } else if(\r\n this.farmerCropQuantities.filter(x => x.quantity == null).length > 0\r\n ) {\r\n secondaryErrors.push('Acres quantity required for all Crops');\r\n }\r\n }\r\n\r\n return secondaryErrors;\r\n }\r\n\r\n async saveFarmer(didCheckUserExists: boolean, noConfirmationMessage: boolean) {\r\n\r\n if (!didCheckUserExists && !(this.user && this.user.id)) {\r\n\r\n const loading = await this.loadingController.create({\r\n message: 'Checking if User with provided Email exists...',\r\n });\r\n await loading.present();\r\n\r\n this.userService.doesUserExist(this.formGroup.controls.userName.value).subscribe(async response => {\r\n await loading.dismiss();\r\n\r\n if (response) {\r\n\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n message: 'There is already a user with this User Name',\r\n buttons: [\r\n {\r\n text: 'Okay',\r\n handler: () => {\r\n\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n } else {\r\n this.saveFarmer(true, false);\r\n }\r\n });\r\n return;\r\n }\r\n\r\n if (!this.id && !this.formGroup.valid) return;\r\n\r\n if (this.isSaving) {\r\n setTimeout(() => {\r\n this.saveFarmer(true, false);\r\n }, 250);\r\n return\r\n }\r\n\r\n this.isSaving = true;\r\n\r\n let loading = null;\r\n\r\n if(!noConfirmationMessage){\r\n loading = await this.loadingController.create({\r\n message: 'Saving Farmer Profile...',\r\n });\r\n await loading.present();\r\n }\r\n\r\n const request = new FarmerSaveDto();\r\n\r\n const formValues = this.formGroup.getRawValue();\r\n\r\n const userDto = this.user ? this.user : new UserDto();\r\n const fullName = formValues.firstName + ' ' + formValues.lastName;\r\n userDto.firstName = formValues.firstName;\r\n userDto.lastName = formValues.lastName;\r\n userDto.emailAddress = formValues.emailAddress;\r\n userDto.phoneNumber = formValues.phoneNumber;\r\n userDto.name = fullName;\r\n userDto.surname = fullName;\r\n userDto.fullName = fullName;\r\n userDto.userName = formValues.userName;\r\n userDto.isActive = true;\r\n\r\n const farmerDto = this.farmer ? this.farmer : new FarmerDto();\r\n farmerDto.farmName = formValues.farmName;\r\n farmerDto.address = formValues.address;\r\n farmerDto.city = formValues.city;\r\n farmerDto.zipCode = formValues.zipCode;\r\n farmerDto.ownedAcres = formValues.ownedAcres;\r\n farmerDto.rentedAcres = formValues.rentedAcres;\r\n farmerDto.nmpComplete = formValues.nmpComplete;\r\n farmerDto.nmpCompletionDate = formValues.nmpCompletionDate ? new Date(formValues.nmpCompletionDate) : formValues.nmpCompletionDate;\r\n farmerDto.nmpHasBeenStarted = formValues.nmpHasBeenStarted;\r\n farmerDto.nmpTypeId = formValues.nmpTypeId;\r\n farmerDto.nmpAcreageQuantity = formValues.nmpAcreageQuantity;\r\n farmerDto.factComplete = formValues.factComplete;\r\n farmerDto.factCompletionDate = formValues.factCompletionDate ? new Date(formValues.factCompletionDate) : formValues.factCompletionDate;\r\n farmerDto.nutrientApplication = formValues.nutrientApplication;\r\n farmerDto.sensitiveAreas = formValues.sensitiveAreas;\r\n farmerDto.infoRepresentsEntireFarmingOperation = formValues.infoRepresentsEntireFarmingOperation;\r\n farmerDto.infoSubjectToAuditByIndependentAuditors = formValues.infoSubjectToAuditByIndependentAuditors;\r\n farmerDto.infoFairAndAccurateToBestAbility = formValues.infoFairAndAccurateToBestAbility;\r\n\r\n request.userDto = userDto;\r\n request.farmerDto = farmerDto;\r\n\r\n this.farmerSvc.save(request).subscribe(\r\n async response => {\r\n if (!this.id) { // new farmer\r\n this.makeFarmerFieldsRequired();\r\n }\r\n this.id = response.farmerDto.id;\r\n this.farmer = response.farmerDto;\r\n this.user = response.userDto;\r\n this.enableOrDisableInformationCheckboxes();\r\n this.saveAllRelatedEntities();\r\n if(!noConfirmationMessage){\r\n await loading.dismiss();\r\n }\r\n \r\n if(!noConfirmationMessage){\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'Farmer Profile has been saved',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n }\r\n\r\n },\r\n async error => {\r\n this.saveFarmerError(error).then();\r\n await loading.dismiss();\r\n }\r\n );\r\n }\r\n\r\n saveAllRelatedEntities() {\r\n this.assignFarmerIdToJoinTableEntities();\r\n this.isSavingFarmerCounties = true;\r\n this.isSavingFarmerCropQuantities = true;\r\n this.isSavingFarmerNutrientSourceQuantities = true;\r\n this.isSavingFarmerNutrientRecommendationQuantities = true;\r\n this.isSavingFarmerCostShares = true;\r\n this.isSavingFarmerWatersheds = true;\r\n this.farmerCountyService.createOrUpdateAll(this.farmerCounties).subscribe(farmerCountiesResponse => {\r\n this.farmerCounties = farmerCountiesResponse;\r\n this.sortFarmerCounties();\r\n this.isSavingFarmerCounties = false;\r\n this.checkIfAllRelatedEntitiesAreDoneSaving();\r\n });\r\n this.farmerCropQuantityService.createOrUpdateAll(this.farmerCropQuantities).subscribe(farmerCropQuantitiesResponse => {\r\n this.farmerCropQuantities = farmerCropQuantitiesResponse;\r\n this.sortfarmerCropQuantities();\r\n this.isSavingFarmerCropQuantities = false;\r\n this.checkIfAllRelatedEntitiesAreDoneSaving();\r\n });\r\n this.farmerNutrientSourceQuantityService.createOrUpdateAll(this.farmerNutrientSourceQuantities).subscribe(farmerNutrientSourceQuantitiesResponse => {\r\n this.farmerNutrientSourceQuantities = farmerNutrientSourceQuantitiesResponse;\r\n this.sortFarmerNutrientSourceQuantities();\r\n this.isSavingFarmerNutrientSourceQuantities = false;\r\n this.checkIfAllRelatedEntitiesAreDoneSaving();\r\n });\r\n this.farmerNutrientRecommendationQuantityService.createOrUpdateAll(this.farmerNutrientRecommendationQuantities).subscribe(farmerNutrientRecommendationQuantitiesResponse => {\r\n this.farmerNutrientRecommendationQuantities = farmerNutrientRecommendationQuantitiesResponse;\r\n this.sortFarmerNutrientRecommendationQuantities();\r\n this.isSavingFarmerNutrientRecommendationQuantities = false;\r\n this.checkIfAllRelatedEntitiesAreDoneSaving();\r\n });\r\n // manure storage done in modal\r\n this.farmerCostShareService.createOrUpdateAll(this.farmerCostShares).subscribe(farmerCostSharesResponse => {\r\n this.farmerCostShares = farmerCostSharesResponse;\r\n this.sortFarmerCostShares();\r\n this.isSavingFarmerCostShares = false;\r\n this.checkIfAllRelatedEntitiesAreDoneSaving();\r\n });\r\n this.farmerWatershedService.createOrUpdateAll(this.farmerWatersheds).subscribe(farmerWatershedsResponse => {\r\n this.farmerWatersheds = farmerWatershedsResponse;\r\n this.sortFarmerWatersheds();\r\n this.isSavingFarmerWatersheds = false;\r\n this.checkIfAllRelatedEntitiesAreDoneSaving();\r\n });\r\n }\r\n\r\n checkIfAllRelatedEntitiesAreDoneSaving() {\r\n if (\r\n !this.isSavingFarmerCounties &&\r\n !this.isSavingFarmerCropQuantities &&\r\n !this.isSavingFarmerNutrientSourceQuantities &&\r\n !this.isSavingFarmerNutrientRecommendationQuantities &&\r\n !this.isSavingFarmerCostShares &&\r\n !this.isSavingFarmerWatersheds\r\n ) {\r\n this.isSaving = false;\r\n // no longer clear in app.component so have to do it here\r\n if (this.router.url.indexOf('/account/login') > -1) this.appStorageService.clearToken();\r\n }\r\n }\r\n\r\n assignFarmerIdToJoinTableEntities() {\r\n this.farmerCounties.forEach(x => x.farmerId = this.id);\r\n this.farmerCropQuantities.forEach(x => x.farmerId = this.id);\r\n this.farmerNutrientSourceQuantities.forEach(x => x.farmerId = this.id);\r\n this.farmerNutrientRecommendationQuantities.forEach(x => x.farmerId = this.id);\r\n this.farmerCostShares.forEach(x => x.farmerId = this.id);\r\n this.farmerWatersheds.forEach(x => x.farmerId = this.id);\r\n }\r\n\r\n async saveFarmerError(errorMessage) {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n subHeader: 'Error',\r\n message: errorMessage,\r\n buttons: ['OK']\r\n });\r\n\r\n // await alert.present();\r\n }\r\n\r\n cancel() {\r\n this.navCtrl.back();\r\n // this.router.navigate(['/main/home']);\r\n }\r\n\r\n async addNewCertification() {\r\n\r\n const loading = await this.loadingController.create({\r\n message: 'Creating certification...',\r\n });\r\n await loading.present();\r\n \r\n const request = new CCertificationDto();\r\n request.farmerId = this.id;\r\n request.year = (new Date()).getFullYear();\r\n this.certificationService.save(request).subscribe(async cert => {\r\n await loading.dismiss();\r\n this.goToCertification(cert.id);\r\n });\r\n }\r\n\r\n goToCertification(id: number, isView: boolean = false) {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n isView: isView,\r\n certificationId: id,\r\n farmer: JSON.stringify(this.farmer),\r\n farmerCrops: JSON.stringify(this.farmerCropQuantities),\r\n farmerNutrientSources: JSON.stringify(this.farmerNutrientSourceQuantities),\r\n farmerNutrientRecommendations: JSON.stringify(this.farmerNutrientRecommendationQuantities)\r\n }\r\n };\r\n this.router.navigate(['/main/certification'], navigationExtras);\r\n }\r\n\r\n goToCertificationScore(id: number) {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n certificationId: id\r\n }\r\n };\r\n this.router.navigate(['/main/certification-score'], navigationExtras);\r\n }\r\n\r\n hasOwnedAcres() {\r\n return this.formGroup.controls.ownedAcres.value && this.formGroup.controls.ownedAcres.value > 0\r\n }\r\n\r\n hasRentedAcres() {\r\n return this.formGroup.controls.rentedAcres.value && this.formGroup.controls.rentedAcres.value > 0\r\n }\r\n\r\n async addManureStorage() {\r\n const modal = await this.modalController.create({\r\n component: ManureStoragePage,\r\n componentProps: {\r\n 'farmerId': this.id,\r\n }\r\n });\r\n modal.onDidDismiss().then((param) => {\r\n if (param && param.data && param.data['dto']) {\r\n this.farmerManureStorages.push(param.data['dto']);\r\n this.sortFarmerManureStorages();\r\n }\r\n this.saveFarmer(true, true);\r\n });\r\n return await modal.present();\r\n }\r\n\r\n getFarmerManureStorageDescription(fms: FarmerManureStorageDto) {\r\n return fms.manureStorageSourceName + ' - ' +\r\n fms.manureStorageDurationName + ' - ' +\r\n fms.manureStorageTypeName;\r\n }\r\n\r\n removeManureStorage(fms: FarmerManureStorageDto) {\r\n if (fms.id > 0) {\r\n this.farmerManureStorageService.delete(fms.id).subscribe(() => { });\r\n }\r\n const index = this.farmerManureStorages.indexOf(fms);\r\n this.farmerManureStorages.splice(index, 1);\r\n }\r\n\r\n removeCostShare(fcs: FarmerCostShareDto) {\r\n if (fcs.id > 0) {\r\n this.farmerCostShareService.delete(fcs.id).subscribe(() => { });\r\n }\r\n const index = this.farmerCostShares.indexOf(fcs);\r\n this.farmerCostShares.splice(index, 1);\r\n }\r\n\r\n async addCostShare() {\r\n const checkBoxes = [];\r\n this.costShares\r\n .filter(costShare =>\r\n this.farmerCostShares.map(fc => fc.costShareId).indexOf(costShare.id) == -1\r\n )\r\n .forEach(costShare => {\r\n checkBoxes.push({\r\n name: costShare.name,\r\n type: 'checkbox',\r\n label: costShare.name,\r\n value: costShare.id,\r\n checked: false\r\n });\r\n });\r\n const alert = await this.alertController.create({\r\n header: 'Cost Share(s)',\r\n inputs: checkBoxes,\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: () => {\r\n console.log('Confirm Cancel');\r\n }\r\n }, {\r\n text: 'Ok',\r\n handler: (costShareIds) => {\r\n costShareIds.forEach(costShareId => {\r\n const farmerCostShare = new FarmerCostShareDto();\r\n farmerCostShare.costShareId = costShareId;\r\n farmerCostShare.costShareName = this.costShares.find(c => c.id == costShareId).name;\r\n farmerCostShare.farmerId = this.id ? this.id : 0;\r\n this.farmerCostShares.push(farmerCostShare);\r\n });\r\n this.sortFarmerCostShares();\r\n this.saveFarmer(true, true);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n async addNewWatershed() {\r\n const checkBoxes = [];\r\n this.watersheds\r\n .filter(watershed =>\r\n this.farmerWatersheds.map(fw => fw.watershedId).indexOf(watershed.id) == -1\r\n )\r\n .forEach(watershed => {\r\n checkBoxes.push({\r\n name: watershed.name + ' ' + watershed.code,\r\n type: 'checkbox',\r\n label: watershed.name + ' ' + watershed.code,\r\n value: watershed.id,\r\n checked: false\r\n });\r\n });\r\n const alert = await this.alertController.create({\r\n header: 'Watershed(s)',\r\n inputs: checkBoxes,\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n role: 'cancel',\r\n cssClass: 'secondary',\r\n handler: () => {\r\n console.log('Confirm Cancel');\r\n }\r\n }, {\r\n text: 'Ok',\r\n handler: (watershedIds) => {\r\n watershedIds.forEach(watershedId => {\r\n const farmerWatershed = new FarmerWatershedDto();\r\n farmerWatershed.watershedId = watershedId;\r\n farmerWatershed.watershedName = this.watersheds.find(c => c.id == watershedId).name;\r\n farmerWatershed.watershedCode = this.watersheds.find(c => c.id == watershedId).code;\r\n farmerWatershed.farmerId = this.id ? this.id : 0;\r\n this.farmerWatersheds.push(farmerWatershed);\r\n });\r\n this.sortFarmerWatersheds();\r\n this.saveFarmer(true, true);\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n initializeNewFarmer() {\r\n this.id = null;\r\n this.farmer = new FarmerDto();\r\n this.user = new UserDto();\r\n }\r\n\r\n isCertificationCompleteStatus(certification: CCertificationDto) {\r\n if (!this.certifications) return false;\r\n return this.certifications.find(cert => cert.id == certification.id).statusId == 2;\r\n }\r\n\r\n isAdmin() {\r\n return this.permissionChecker.isGranted(\"Pages.Certifications\");\r\n }\r\n\r\n getEnabledFeatures() : FeatureMap{\r\n return AppConsts.enabledFeatures;\r\n }\r\n\r\n private registerTextMask(inputElement: HTMLInputElement) {\r\n const maskedInput = createTextMaskInputElement({\r\n inputElement,\r\n mask: this.phoneMask,\r\n guide: false,\r\n });\r\n this.phoneNumber.valueChanges.subscribe(value => {\r\n maskedInput.update(value);\r\n });\r\n }\r\n\r\n removeNutrientRecommendation(farmerNutrientRecommendation: FarmerNutrientRecommendationQuantityDto) {\r\n if (farmerNutrientRecommendation.id > 0) {\r\n this.farmerNutrientRecommendationQuantityService.delete(farmerNutrientRecommendation.id).subscribe(() => {});\r\n }\r\n const index = this.farmerNutrientRecommendationQuantities.indexOf(farmerNutrientRecommendation);\r\n this.farmerNutrientRecommendationQuantities.splice(index, 1);\r\n }\r\n\r\n async presentAlert(msg) {\r\n const alert = await this.alertController.create({\r\n header: '',\r\n message: msg,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n disableNewCertButton() {\r\n if (this.certifications && this.isFormValid()) {\r\n return (this.certifications.find(x => x.year == (new Date()).getFullYear() && x.isPassing) != null ||\r\n this.certifications.find(x => x.statusId < CCertificationStatusEnum._2) != null) // &&\r\n // !this.isAdmin();\r\n } else if(!this.isFormValid()){\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n\r\n openWatershedLink() {\r\n window.open(this.watershedlink, \"_blank\");\r\n }\r\n\r\n print() {\r\n\r\n window.open(`${this.baseUrl}/print/farmer/${this.id}?${AppConsts.authorization.encryptedAuthTokenName}=${encodeURIComponent(this.encToken)}`, '_blank');\r\n\r\n }\r\n\r\n enableOrDisableInformationCheckboxes() {\r\n if (!this.formGroup.controls.infoRepresentsEntireFarmingOperation.value) {\r\n this.formGroup.controls.infoRepresentsEntireFarmingOperation.enable();\r\n } else {\r\n this.formGroup.controls.infoRepresentsEntireFarmingOperation.disable();\r\n }\r\n if (!this.formGroup.controls.infoSubjectToAuditByIndependentAuditors.value) {\r\n this.formGroup.controls.infoSubjectToAuditByIndependentAuditors.enable();\r\n } else {\r\n this.formGroup.controls.infoSubjectToAuditByIndependentAuditors.disable();\r\n }\r\n if (!this.formGroup.controls.infoFairAndAccurateToBestAbility.value) {\r\n this.formGroup.controls.infoFairAndAccurateToBestAbility.enable();\r\n } else {\r\n this.formGroup.controls.infoFairAndAccurateToBestAbility.disable();\r\n }\r\n }\r\n\r\n acreageChange(type, value) {\r\n if (!this.farmer) return;\r\n if (!value || value == 0) {\r\n if (type == 0) {\r\n this.farmerNutrientSourceQuantities.forEach(x => x.ownedQuantity = null);\r\n }\r\n if (type == 1) {\r\n this.farmerNutrientSourceQuantities.forEach(x => x.rentedQuantity = null);\r\n }\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { ManureStoragePage } from './manure-storage.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n ReactiveFormsModule\r\n ],\r\n declarations: [ManureStoragePage]\r\n})\r\nexport class ManureStoragePageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vZmFybWVyL21hbnVyZS1zdG9yYWdlL21hbnVyZS1zdG9yYWdlLnBhZ2Uuc2NzcyJ9 */\"","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport {\r\n ManureStorageSourceDto,\r\n ManureStorageDurationDto,\r\n ManureStorageTypeDto,\r\n ManureStorageSourceServiceServiceProxy,\r\n ManureStorageDurationServiceServiceProxy,\r\n ManureStorageTypeServiceServiceProxy,\r\n FarmerManureStorageServiceServiceProxy\r\n} from '@shared/service-proxies/service-proxies';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { LoadingController, AlertController, ModalController } from '@ionic/angular';\r\n\r\n@Component({\r\n selector: 'app-manure-storage',\r\n templateUrl: './manure-storage.page.html',\r\n styleUrls: ['./manure-storage.page.scss'],\r\n})\r\nexport class ManureStoragePage implements OnInit {\r\n\r\n formGroup: FormGroup;\r\n manureStorageSources: ManureStorageSourceDto[] = [];\r\n manureStorageDurations: ManureStorageDurationDto[] = [];\r\n manureStorageTypes: ManureStorageTypeDto[] = [];\r\n isLoaded: boolean = false;\r\n\r\n @Input() farmerId: number;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n storageService: AppStorageService,\r\n private loadingController: LoadingController,\r\n private alertController: AlertController,\r\n private modalController: ModalController,\r\n private manureStorageSourceService: ManureStorageSourceServiceServiceProxy,\r\n private manureStorageDurationService: ManureStorageDurationServiceServiceProxy,\r\n private manureStorageTypeService: ManureStorageTypeServiceServiceProxy,\r\n private farmerManureStorageService: FarmerManureStorageServiceServiceProxy\r\n ) { \r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.getDropdownData();\r\n this.isLoaded = true;\r\n }\r\n });\r\n this.setupForm();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n getDropdownData() {\r\n this.manureStorageSourceService.getAll().subscribe(items => {\r\n this.manureStorageSources = items;\r\n });\r\n this.manureStorageDurationService.getAll().subscribe(items => {\r\n this.manureStorageDurations = items.sort((a,b) => parseInt(a.name) - parseInt(b.name)); \r\n });\r\n this.manureStorageTypeService.getAll().subscribe(items => {\r\n this.manureStorageTypes = items;\r\n });\r\n }\r\n\r\n setupForm() {\r\n this.formGroup = this.formBuilder.group({\r\n manureStorageSourceId: ['', [Validators.required]],\r\n manureStorageDurationId: ['', [Validators.required]],\r\n manureStorageTypeId: ['', [Validators.required]],\r\n });\r\n }\r\n\r\n submitForm() {\r\n this.saveManureStorage();\r\n }\r\n\r\n async saveManureStorage() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Saving...',\r\n });\r\n await loading.present();\r\n \r\n const ms = this.formGroup.getRawValue();\r\n ms.farmerId = this.farmerId;\r\n this.farmerManureStorageService.create(ms).subscribe(\r\n async dto => {\r\n await loading.dismiss();\r\n this.modalController.dismiss({\r\n 'dto': dto\r\n });\r\n },\r\n async error => {\r\n this.saveError(error).then();\r\n await loading.dismiss();\r\n }\r\n );\r\n \r\n }\r\n\r\n async saveError(errorMessage) {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n subHeader: 'Error',\r\n message: errorMessage,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n cancel() {\r\n this.modalController.dismiss();\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { FarmersPage } from './farmers.page';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n NgxDatatableModule\r\n ],\r\n declarations: [FarmersPage]\r\n})\r\nexport class FarmersPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vZmFybWVycy9mYXJtZXJzLnBhZ2Uuc2NzcyJ9 */\"","import { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FarmerServiceServiceProxy, FarmerDto, CountyDto, CountyServiceServiceProxy, WatershedServiceServiceProxy, WatershedDto, ExportRequestDto } from '@shared/service-proxies/service-proxies';\r\nimport { AlertController, LoadingController, ModalController } from '@ionic/angular';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { Router, NavigationExtras } from '@angular/router';\r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\nimport { ExportService } from '@shared/export/export.service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Page } from 'src/model/page';\r\nimport { ColumnMode, DatatableComponent } from '@swimlane/ngx-datatable';\r\nimport * as moment from 'moment'; \r\nimport { ProfilePage } from './profile/profile.page';\r\n\r\n@Component({\r\n selector: 'app-farmers',\r\n templateUrl: './farmers.page.html',\r\n styleUrls: ['./farmers.page.scss'],\r\n})\r\nexport class FarmersPage implements OnInit {\r\n\r\n rows: FarmerDto[];\r\n page = new Page();\r\n ColumnMode = ColumnMode;\r\n sortTerm: string = 'farmName';\r\n sortDirection: string = 'ASC';\r\n name: string;\r\n hasPassedCertification: number;\r\n counties: CountyDto[] = [];\r\n countyIds: number[] = [];\r\n watersheds: WatershedDto[] = [];\r\n watershedIds: number[] = [];\r\n hasProfileMissingFields: boolean;\r\n hasProfileErrors: boolean;\r\n isLoaded: boolean = false;\r\n @ViewChild('datatable', { static: false }) datatable: DatatableComponent;\r\n selected = [];\r\n constructor(\r\n private farmerSvc: FarmerServiceServiceProxy,\r\n private alertController: AlertController,\r\n storageService: AppStorageService,\r\n private router: Router,\r\n private countySvc: CountyServiceServiceProxy,\r\n private watershedSvc: WatershedServiceServiceProxy,\r\n private permissionChecker: PermissionCheckerService,\r\n private exportService: ExportService,\r\n private titleService: Title,\r\n private modalController: ModalController,\r\n private cdr: ChangeDetectorRef,\r\n public loadingController: LoadingController\r\n ) {\r\n this.titleService.setTitle('OACI - Farmers List');\r\n this.page.pageNumber = 0;\r\n this.page.size = 10;\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.getFarmers();\r\n this.getCounties();\r\n this.getWatersheds();\r\n this.isLoaded = true;\r\n }\r\n });\r\n }\r\n\r\n ionViewWillEnter() {\r\n if (this.isLoaded) {\r\n this.getFarmers();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.setPage({ offset: 0 });\r\n }\r\n\r\n clearFilters() {\r\n this.name = undefined;\r\n this.hasPassedCertification = undefined;\r\n this.countyIds = [];\r\n this.watershedIds = [];\r\n this.hasProfileMissingFields = undefined;\r\n this.hasProfileErrors = undefined;\r\n this.getFarmers();\r\n }\r\n\r\n search() {\r\n this.page.pageNumber = 0; // in case they are on another page and search filters to only one page\r\n this.getFarmers();\r\n }\r\n\r\n getFarmers() {\r\n this.farmerSvc.getAll(\r\n this.name,\r\n this.hasPassedCertification,\r\n true,\r\n this.watershedIds,\r\n this.countyIds,\r\n this.hasProfileMissingFields,\r\n this.hasProfileErrors,\r\n this.sortTerm + ' ' + this.sortDirection,\r\n this.page.pageNumber * this.page.size,\r\n this.page.size\r\n ).subscribe(response => {\r\n this.rows = response.items;\r\n this.page.totalElements = response.totalCount;\r\n this.page.totalPages = Math.ceil(response.totalCount / this.page.size);\r\n });\r\n }\r\n\r\n getCounties() {\r\n this.countySvc.getAll().subscribe(counties => this.counties = counties);\r\n }\r\n\r\n getWatersheds() {\r\n this.watershedSvc.getAll().subscribe(watersheds => this.watersheds = watersheds);\r\n }\r\n\r\n newFarmer() {\r\n this.router.navigate(['/main/farmer']);\r\n }\r\n\r\n editFarmer(id) {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n farmerId: id\r\n }\r\n };\r\n this.router.navigate(['/main/farmer'], navigationExtras);\r\n }\r\n\r\n async deleteFarmer(id) {\r\n const alert = await this.alertController.create({\r\n header: 'Delete',\r\n message: 'Are you sure you want to delete this Farmer?',\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n handler: () => {\r\n console.log('Confirm Okay');\r\n }\r\n },\r\n {\r\n text: 'Delete',\r\n cssClass: 'danger',\r\n handler: (blah) => {\r\n this.farmerSvc.delete(id).subscribe(() => {\r\n this.rows = this.rows.filter(x => x.id != id);\r\n });\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n isAdmin() {\r\n return this.permissionChecker.isGranted(\"Role.Admin\");\r\n }\r\n\r\n async export() {\r\n const loading = await this.loadingController.create({\r\n message: 'Please wait...'\r\n });\r\n await loading.present();\r\n this.farmerSvc.getAll(\r\n this.name,\r\n this.hasPassedCertification,\r\n true,\r\n this.watershedIds,\r\n this.countyIds,\r\n this.hasProfileMissingFields,\r\n this.hasProfileErrors,\r\n this.sortTerm + ' ' + this.sortDirection,\r\n 0,\r\n 2147483647\r\n ).subscribe(response => {\r\n const request = new ExportRequestDto();\r\n request.entity = 'Farmers';\r\n request.columnNames = [\r\n 'First Name',\r\n 'Last Name',\r\n 'User Name',\r\n 'Email Address',\r\n 'Phone Number',\r\n 'Farm',\r\n 'County(s)',\r\n 'Watershed(s)',\r\n 'Pass/Fail',\r\n 'Profile Missing Fields',\r\n 'Profile Errors',\r\n 'Last Modified',\r\n 'Last Modified User'\r\n ];\r\n request.data = response.items.map(row => {\r\n return [\r\n row.userFirstName,\r\n row.userLastName,\r\n row.userUserName,\r\n row.userEmailAddress,\r\n row.userPhoneNumber,\r\n row.farmName,\r\n row.countyNames,\r\n row.watershedNames,\r\n row.hasPassedCertification == 1 ? 'Pass' : row.hasPassedCertification == 0 ? 'Fail' : 'Incomplete',\r\n row.profileMissingFields,\r\n row.profileErrors,\r\n row.lastModificationTime ? moment(row.lastModificationTime).format('MM/DD/YYYY') : '',\r\n row.lastModifierUserName\r\n ];\r\n });\r\n this.exportService.export(request, loading);\r\n });\r\n }\r\n\r\n setPage(pageInfo) {\r\n this.page.pageNumber = pageInfo.offset;\r\n this.getFarmers();\r\n }\r\n\r\n onSort(event) {\r\n this.sortTerm = event.column.prop;\r\n this.sortDirection = event.newValue.toUpperCase();\r\n this.getFarmers();\r\n }\r\n\r\n async onActivate(event) {\r\n if(event.type == 'click' && event.column.cellClass != 'editDeleteCell') {\r\n // console.log(event.row);\r\n const modal = await this.modalController.create({\r\n component: ProfilePage,\r\n componentProps: {\r\n 'profile': event.row,\r\n }\r\n });\r\n modal.onDidDismiss().then((param) => {\r\n if (param && param.data && param.data['doEdit'] == true) {\r\n this.editFarmer(param.data['farmer'].id);\r\n } else {\r\n // this.datatable.selected = [param.data['farmer']];\r\n // this.selected = [param.data['farmer']];\r\n // this.cdr.detectChanges();\r\n this.getFarmers();\r\n }\r\n });\r\n return await modal.present();\r\n }\r\n }\r\n\r\n async presentAlert(msg) {\r\n const alert = await this.alertController.create({\r\n header: '',\r\n message: msg,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { ProfilePage } from './profile.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule\r\n ],\r\n declarations: [ProfilePage]\r\n})\r\nexport class ProfilePageModule {}\r\n","module.exports = \"input[disabled], textarea[disabled] {\\n opacity: 1 !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi9mYXJtZXJzL3Byb2ZpbGUvWjpcXHNvdXJjZVxcT0FDSVxcT0FDSVxcb2FjaS1jZXJ0aWZpY2F0aW9uL3NyY1xcYXBwXFxtYWluXFxmYXJtZXJzXFxwcm9maWxlXFxwcm9maWxlLnBhZ2Uuc2NzcyIsInNyYy9hcHAvbWFpbi9mYXJtZXJzL3Byb2ZpbGUvcHJvZmlsZS5wYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxxQkFBQTtBQ0NKIiwiZmlsZSI6InNyYy9hcHAvbWFpbi9mYXJtZXJzL3Byb2ZpbGUvcHJvZmlsZS5wYWdlLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJpbnB1dFtkaXNhYmxlZF0sIHRleHRhcmVhW2Rpc2FibGVkXSB7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbn0iLCJpbnB1dFtkaXNhYmxlZF0sIHRleHRhcmVhW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn0iXX0= */\"","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { AlertController, LoadingController, ModalController } from '@ionic/angular';\r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\nimport { CertificationServiceServiceProxy, FarmerDto, FarmerServiceServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\n\r\n@Component({\r\n selector: 'app-profile',\r\n templateUrl: './profile.page.html',\r\n styleUrls: ['./profile.page.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class ProfilePage implements OnInit {\r\n \r\n @Input() profile: FarmerDto;\r\n isLoaded: boolean = false;\r\n\r\n constructor(\r\n storageService: AppStorageService,\r\n private modalController: ModalController,\r\n public alertController: AlertController,\r\n public loadingController: LoadingController,\r\n private permissionChecker: PermissionCheckerService,\r\n private farmerSvc: FarmerServiceServiceProxy,\r\n private certificationService: CertificationServiceServiceProxy\r\n ) {\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.isLoaded = true;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ok(doEdit: boolean) {\r\n this.modalController.dismiss({\r\n doEdit: doEdit,\r\n farmer: this.profile\r\n });\r\n }\r\n\r\n isAdmin() {\r\n return this.permissionChecker.isGranted(\"Role.Admin\");\r\n }\r\n\r\n async errorMissingFields() {\r\n const loading = await this.loadingController.create({\r\n message: 'Please wait...'\r\n });\r\n await loading.present();\r\n this.farmerSvc.updateFarmerProfileErrorFields(this.profile.id).subscribe(async response => {\r\n this.farmerSvc.get(this.profile.id).subscribe(async profile => {\r\n this.profile = profile;\r\n loading.dismiss();\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'Farmer profile errors / missing fields have been updated',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n });\r\n }, async (error) => {\r\n loading.dismiss();\r\n const alert = await this.alertController.create({\r\n header: 'ERROR',\r\n message: 'There was an issue updating Farmer profile errors / missing fields. Please contact IT for assistance.',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n });\r\n }\r\n\r\n async certificationScores() {\r\n const loading = await this.loadingController.create({\r\n message: 'Please wait...'\r\n });\r\n await loading.present();\r\n this.certificationService.updateCertificationScores(this.profile.id).subscribe(async response => {\r\n loading.dismiss();\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'Farmer Certification scores have been updated',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n }, async (error) => {\r\n loading.dismiss();\r\n const alert = await this.alertController.create({\r\n header: 'ERROR',\r\n message: 'There was an issue updating Farmer Certification scores. Please contact IT for assistance.',\r\n buttons: ['OK']\r\n });\r\n await alert.present();\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { HelpDeskPage } from './help-desk.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n IonicModule\r\n ],\r\n declarations: [HelpDeskPage]\r\n})\r\nexport class HelpDeskPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vaGVscC1kZXNrL2hlbHAtZGVzay5wYWdlLnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { AccountServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { LoadingController, AlertController, ModalController } from '@ionic/angular';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-help-desk',\r\n templateUrl: './help-desk.page.html',\r\n styleUrls: ['./help-desk.page.scss'],\r\n})\r\nexport class HelpDeskPage implements OnInit {\r\n\r\n formGroup : FormGroup;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private acctService: AccountServiceProxy,\r\n private loadingController: LoadingController,\r\n private alertController: AlertController,\r\n private modalController: ModalController,\r\n private titleService: Title\r\n ) { \r\n this.titleService.setTitle('OACI - Help Desk');\r\n this.setupForm();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setupForm() {\r\n this.formGroup = this.formBuilder.group({\r\n subject: ['', [Validators.required]],\r\n message: ['', [Validators.required]],\r\n });\r\n }\r\n\r\n async submitForm() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Sending message...',\r\n });\r\n await loading.present();\r\n \r\n const request = this.formGroup.getRawValue();\r\n this.acctService.sendHelpDeskEmail(request).subscribe(\r\n async dto => {\r\n await loading.dismiss();\r\n this.modalController.dismiss({\r\n 'didSend': true\r\n });\r\n },\r\n async error => {\r\n this.sendError(error).then();\r\n await loading.dismiss();\r\n }\r\n );\r\n }\r\n\r\n async sendError(errorMessage) {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n subHeader: 'Error',\r\n message: errorMessage,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n cancel() {\r\n this.modalController.dismiss();\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\n\r\nimport { HomePage } from './home.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule\r\n ],\r\n declarations: [HomePage]\r\n})\r\nexport class HomePageModule {}\r\n","module.exports = \"h1, h4, p {\\n padding-left: 2rem;\\n padding-right: 2rem;\\n}\\n\\nh4 {\\n font-weight: bold;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi9ob21lL1o6XFxzb3VyY2VcXE9BQ0lcXE9BQ0lcXG9hY2ktY2VydGlmaWNhdGlvbi9zcmNcXGFwcFxcbWFpblxcaG9tZVxcaG9tZS5wYWdlLnNjc3MiLCJzcmMvYXBwL21haW4vaG9tZS9ob21lLnBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGtCQUFBO0VBQ0EsbUJBQUE7QUNDSjs7QURFQTtFQUNJLGlCQUFBO0FDQ0oiLCJmaWxlIjoic3JjL2FwcC9tYWluL2hvbWUvaG9tZS5wYWdlLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJoMSwgaDQsIHB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xyXG59XHJcblxyXG5oNHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59IiwiaDEsIGg0LCBwIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xufVxuXG5oNCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { HelpDeskService } from '@shared/help-desk/help-desk.service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router } from '@angular/router';\r\nimport { AppConsts } from '@shared/AppConsts';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.page.html',\r\n styleUrls: ['./home.page.scss'],\r\n})\r\nexport class HomePage implements OnInit {\r\n AppConsts: AppConsts = AppConsts;\r\n constructor(\r\n private permissionChecker: PermissionCheckerService,\r\n private sessionService: AppSessionService,\r\n private helpDeskService: HelpDeskService,\r\n private titleService: Title,\r\n private router: Router\r\n ) { \r\n this.titleService.setTitle('OACI - Home');\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n isUserLoggedIn(): boolean {\r\n return this.sessionService.user != null;\r\n }\r\n shouldShowInfobar(): boolean {\r\n return this.sessionService.user && !this.permissionChecker.isGranted(\"Pages.Certifications\") && this.permissionChecker.isGranted(\"Pages.Farmer\");\r\n }\r\n openHelpDeskPopup() {\r\n this.helpDeskService.openHelpDeskPopup();\r\n }\r\n goToLogin() {\r\n this.router.navigate([\"/account/login\"]);\r\n }\r\n goToRegister() {\r\n this.router.navigate([\"/account/register\"]);\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { PreloadAllModules, RouterModule, Routes } from \"@angular/router\";\r\nimport { AppRouteGuard } from \"@shared/auth/auth-route-guard\";\r\nimport { HomePage } from \"./home/home.page\";\r\nimport { CertificationPage } from \"./certification/certification.page\";\r\nimport { FarmersPage } from \"./farmers/farmers.page\";\r\nimport { FarmerPage } from \"./farmer/farmer.page\";\r\nimport { UsersPage } from \"./users/users.page\";\r\nimport { UserPage } from \"./user/user.page\";\r\nimport { VerificationsPage } from \"./verifications/verifications.page\";\r\nimport { VerificationPage } from \"./verification/verification.page\";\r\nimport { CertificationScorePage } from \"./certification-score/certification-score.page\";\r\nimport { DashboardPage } from \"./dashboard/dashboard.page\";\r\nimport { AdminPage } from \"./admin/admin.page\";\r\nimport { PrivacyPage } from \"./privacy/privacy.page\";\r\nimport { PrivateDataPage } from \"./privacy/private-data.page\";\r\n\r\nexport const MainRoutingModule_routes: Routes = [\r\n {\r\n path: \"\",\r\n redirectTo: \"home\",\r\n pathMatch: \"full\",\r\n },\r\n // {\r\n // path: 'account/login',\r\n // component: LoginPage\r\n // },\r\n // {\r\n // path: 'account/register',\r\n // component: RegisterPage\r\n // },\r\n {\r\n path: \"home\",\r\n component: HomePage,\r\n },\r\n {\r\n path: \"certification\",\r\n component: CertificationPage,\r\n // canActivate: [AppRouteGuard],\r\n data: {\r\n permission: \"Pages.Certification\",\r\n },\r\n },\r\n {\r\n path: \"certification-score\",\r\n component: CertificationScorePage,\r\n // canActivate: [AppRouteGuard],\r\n data: {\r\n permission: \"Pages.Certification\",\r\n },\r\n },\r\n {\r\n path: \"farmers\",\r\n component: FarmersPage,\r\n // canActivate: [AppRouteGuard],\r\n data: {\r\n permission: \"Pages.Farmers\",\r\n },\r\n },\r\n {\r\n path: \"farmer\",\r\n component: FarmerPage,\r\n // canActivate: [AppRouteGuard],\r\n data: {\r\n permission: \"Pages.Farmer\",\r\n },\r\n },\r\n {\r\n path: \"users\",\r\n component: UsersPage,\r\n // canActivate: [AppRouteGuard],\r\n data: {\r\n permission: \"Pages.Users\",\r\n },\r\n },\r\n {\r\n path: \"user\",\r\n component: UserPage,\r\n // canActivate: [AppRouteGuard],\r\n data: {\r\n permission: \"Pages.User\",\r\n },\r\n },\r\n {\r\n path: \"verifications\",\r\n component: VerificationsPage,\r\n // canActivate: [AppRouteGuard],\r\n data: {\r\n permission: \"Pages.Verifications\",\r\n },\r\n },\r\n {\r\n path: \"verification\",\r\n component: VerificationPage,\r\n // canActivate: [AppRouteGuard],\r\n data: {\r\n permission: \"Pages.Verification\",\r\n },\r\n },\r\n {\r\n path: \"dashboard\",\r\n component: DashboardPage,\r\n data: {\r\n permission: \"Role.Admin\",\r\n },\r\n },\r\n {\r\n path: \"admin\",\r\n component: AdminPage,\r\n data: {\r\n permission: \"Role.Admin\",\r\n },\r\n },\r\n { path: \"privacy\", component: PrivacyPage },\r\n { path: \"private-data\", component: PrivateDataPage },\r\n];\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { PrivacyPage } from './privacy.page';\r\nimport { PrivateDataPage } from './private-data.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n ReactiveFormsModule\r\n ],\r\n declarations: [PrivacyPage,PrivateDataPage]\r\n})\r\nexport class PrivacyPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vcHJpdmFjeS9wcml2YWN5LnBhZ2Uuc2NzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\n@Component({\r\n selector: 'app-privacy',\r\n templateUrl: './privacy.page.html',\r\n styleUrls: ['./privacy.page.scss'],\r\n })\r\n export class PrivacyPage implements OnInit {\r\n ngOnInit(): void {\r\n }\r\n }","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vcHJpdmFjeS9wcml2YXRlLWRhdGEucGFnZS5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { UserServiceProxy } from '@shared/service-proxies/service-proxies';\r\n@Component({\r\n selector: 'app-private-data',\r\n templateUrl: './private-data.page.html',\r\n styleUrls: ['./private-data.page.scss'],\r\n })\r\n export class PrivateDataPage implements OnInit {\r\n \r\n message:string;\r\n formGroup : FormGroup;\r\n ngOnInit(): void {\r\n \r\n }\r\n constructor( private formBuilder: FormBuilder, private userService: UserServiceProxy){\r\nthis.setupForm();\r\n }\r\n setupForm() {\r\n if (this.formGroup) {\r\n this.formGroup.reset();\r\n }\r\n this.formGroup = this.formBuilder.group({\r\n emailAddress: ['', Validators.required],\r\n });\r\n \r\n }\r\n submitForm(){\r\n this.userService.requestDeletePrivateData(this.formGroup.controls['emailAddress'].value).subscribe(x=>\r\n this.message = \"Your information has been submitted\"\r\n )\r\n }\r\n }","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { UserPage } from './user.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n ReactiveFormsModule\r\n ],\r\n declarations: [UserPage]\r\n})\r\nexport class UserPageModule {}\r\n","module.exports = \".passwordIcon {\\n font-size: 2rem !important;\\n position: relative !important;\\n top: 22px !important;\\n margin: 0 auto !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbWFpbi91c2VyL1o6XFxzb3VyY2VcXE9BQ0lcXE9BQ0lcXG9hY2ktY2VydGlmaWNhdGlvbi9zcmNcXGFwcFxcbWFpblxcdXNlclxcdXNlci5wYWdlLnNjc3MiLCJzcmMvYXBwL21haW4vdXNlci91c2VyLnBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLDBCQUFBO0VBQ0EsNkJBQUE7RUFDQSxvQkFBQTtFQUNBLHlCQUFBO0FDQ0oiLCJmaWxlIjoic3JjL2FwcC9tYWluL3VzZXIvdXNlci5wYWdlLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucGFzc3dvcmRJY29ue1xyXG4gICAgZm9udC1zaXplOjJyZW0gIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiAyMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xyXG4gfSIsIi5wYXNzd29yZEljb24ge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHRvcDogMjJweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xufSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { UserDto, UserServiceProxy, RoleServiceProxy, RoleListDtoListResultDto, CreateUserDto } from '@shared/service-proxies/service-proxies';\r\nimport { AlertController, LoadingController, NavController } from '@ionic/angular';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-user',\r\n templateUrl: './user.page.html',\r\n styleUrls: ['./user.page.scss'],\r\n})\r\nexport class UserPage implements OnInit {\r\n\r\n id: number;\r\n user: UserDto;\r\n formGroup : FormGroup;\r\n roles: RoleListDtoListResultDto;\r\n rolesOptions: string[];\r\n isLoaded: boolean = false;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private alertController: AlertController,\r\n storageService: AppStorageService,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private loadingController: LoadingController,\r\n private userSvc: UserServiceProxy,\r\n private roleSvc: RoleServiceProxy,\r\n private titleService: Title,\r\n private navCtrl: NavController\r\n ) {\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.getRoles();\r\n this.route.queryParams.subscribe(params => {\r\n if (params && params.userId) {\r\n this.id = +params.userId;\r\n if (this.id > 0) {\r\n this.getUser();\r\n } else {\r\n this.initializeNewUser();\r\n }\r\n } else {\r\n this.initializeNewUser();\r\n }\r\n this.isLoaded = true;\r\n });\r\n }\r\n });\r\n this.titleService.setTitle('OACI - User Form');\r\n this.setupForm();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n ionViewWillEnter() {\r\n this.setupForm();\r\n }\r\n\r\n setupForm() {\r\n if (this.formGroup) {\r\n this.formGroup.reset();\r\n }\r\n this.formGroup = this.formBuilder.group({\r\n name: [''],\r\n firstName: ['', Validators.required],\r\n lastName: ['', Validators.required],\r\n userName: [''],\r\n surname: [''],\r\n emailAddress: ['', Validators.required],\r\n fullName: [''],\r\n roleNames: [[]],\r\n isActive: [true, Validators.required]\r\n });\r\n }\r\n\r\n async getUser() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Fetching User...',\r\n });\r\n await loading.present();\r\n\r\n this.userSvc.get(this.id).subscribe(async user => {\r\n this.user = user;\r\n if (this.user) {\r\n this.loadUserFields();\r\n await loading.dismiss();\r\n }\r\n });\r\n }\r\n\r\n initializeNewUser() {\r\n this.id = null;\r\n this.user = new UserDto();\r\n }\r\n\r\n loadUserFields() {\r\n const user = this.user;\r\n this.formGroup.patchValue({\r\n name: user.name,\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n userName: user.userName,\r\n surname: user.surname,\r\n emailAddress: user.emailAddress,\r\n fullName: user.fullName,\r\n roleNames: user.roleNames,\r\n isActive: user.isActive\r\n });\r\n }\r\n\r\n async submitForm() {\r\n if (this.formGroup.valid) {\r\n this.saveUser();\r\n } else {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n subHeader: 'Error',\r\n message: 'Missing Form Fields.',\r\n buttons: ['OK']\r\n });\r\n \r\n await alert.present();\r\n }\r\n }\r\n\r\n async saveUser() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Saving User...',\r\n });\r\n await loading.present();\r\n \r\n const saveUser = this.formGroup.getRawValue();\r\n const request = new CreateUserDto();\r\n const fullName = saveUser.firstName + ' ' + saveUser.lastName;\r\n request.emailAddress = saveUser.emailAddress;\r\n request.firstName = saveUser.firstName;\r\n request.lastName = saveUser.lastName;\r\n request.name = fullName;\r\n request.surname = fullName;\r\n request.fullName = fullName;\r\n request.userName = saveUser.emailAddress;\r\n request.isActive = true;\r\n request.roleNames = saveUser.roleNames;\r\n request.sendPasswordResetLink = true;\r\n request.sendConfirmationEmail = false;\r\n if (!this.id) {\r\n this.userSvc.create(request).subscribe(\r\n async userResponse => {\r\n this.id = userResponse.id;\r\n this.user = userResponse;\r\n await loading.dismiss();\r\n this.saveUserSuccess();\r\n },\r\n async error => {\r\n this.saveUserError(error).then();\r\n await loading.dismiss();\r\n }\r\n );\r\n } else {\r\n saveUser.id = this.id;\r\n saveUser.password = null;\r\n this.userSvc.update(saveUser).subscribe(\r\n async userResponse => {\r\n this.user = userResponse;\r\n await loading.dismiss();\r\n },\r\n async error => {\r\n this.saveUserError(error).then();\r\n await loading.dismiss();\r\n }\r\n );\r\n }\r\n }\r\n\r\n async saveUserSuccess() {\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'User has been saved',\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n async saveUserError(errorMessage) {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n subHeader: 'Error',\r\n message: errorMessage,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n cancel() {\r\n this.navCtrl.back();\r\n // this.router.navigate(['/main/home']);\r\n }\r\n\r\n getRoles() {\r\n this.roleSvc.getRoles('').subscribe(roles => {\r\n this.roles = roles;\r\n this.rolesOptions = this.roles.items.map(role => role.name);\r\n })\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { UsersPage } from './users.page';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n NgxDatatableModule\r\n ],\r\n declarations: [UsersPage]\r\n})\r\nexport class UsersPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vdXNlcnMvdXNlcnMucGFnZS5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { UserDto, UserServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { AlertController } from '@ionic/angular';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { Router, NavigationExtras } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Page } from 'src/model/page';\r\nimport { ColumnMode } from '@swimlane/ngx-datatable';\r\n\r\n@Component({\r\n selector: 'app-users',\r\n templateUrl: './users.page.html',\r\n styleUrls: ['./users.page.scss'],\r\n})\r\nexport class UsersPage implements OnInit {\r\n\r\n rows: UserDto[];\r\n page = new Page();\r\n ColumnMode = ColumnMode;\r\n sortTerm: string = 'lastName';\r\n sortDirection: string = 'ASC';\r\n user: string;\r\n isLoaded: boolean = false;\r\n constructor(\r\n private userSvc: UserServiceProxy,\r\n private alertController: AlertController,\r\n storageService: AppStorageService,\r\n private router: Router,\r\n private titleService: Title\r\n ) {\r\n this.titleService.setTitle('OACI - Users List');\r\n this.page.pageNumber = 0;\r\n this.page.size = 10;\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.getUsers();\r\n this.isLoaded = true;\r\n }\r\n });\r\n }\r\n\r\n ionViewWillEnter() {\r\n if (this.isLoaded) {\r\n this.getUsers();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.setPage({ offset: 0 });\r\n }\r\n\r\n search() {\r\n this.page.pageNumber = 0; // in case they are on another page and search filters to only one page\r\n this.getUsers();\r\n }\r\n\r\n getUsers() {\r\n this.userSvc.getAll(\r\n this.user,\r\n true,\r\n this.sortTerm + ' ' + this.sortDirection,\r\n this.page.pageNumber * this.page.size,\r\n this.page.size\r\n ).subscribe(response => {\r\n this.rows = response.items;\r\n this.page.totalElements = response.totalCount;\r\n this.page.totalPages = Math.ceil(response.totalCount / this.page.size);\r\n });\r\n }\r\n\r\n newUser() {\r\n this.router.navigate(['/main/user']);\r\n }\r\n\r\n editUser(id) {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n userId: id\r\n }\r\n };\r\n this.router.navigate(['/main/user'], navigationExtras);\r\n }\r\n\r\n async deleteUser(id) {\r\n const alert = await this.alertController.create({\r\n header: 'Delete',\r\n message: 'Are you sure you want to delete this User?',\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n handler: () => {\r\n console.log('Confirm Okay');\r\n }\r\n },\r\n {\r\n text: 'Delete',\r\n cssClass: 'danger',\r\n handler: (blah) => {\r\n this.userSvc.delete(id).subscribe(() => {\r\n this.rows = this.rows.filter(x => x.id != id);\r\n });\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n setPage(pageInfo) {\r\n this.page.pageNumber = pageInfo.offset;\r\n this.getUsers();\r\n }\r\n\r\n onSort(event) {\r\n this.sortTerm = event.column.prop;\r\n this.sortDirection = event.newValue.toUpperCase();\r\n this.getUsers();\r\n }\r\n\r\n}\r\n","export enum VerificationQuestionTypeEnum{\r\n SingleSelect = 0,\r\n MultiSelect = 1,\r\n FreeText = 2,\r\n SingleSelectOrFreeText = 3,\r\n MultiSelectAndOrFreeText = 4\r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { VerificationQuestionNotePage } from './verification-question-note.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule\r\n ],\r\n declarations: [VerificationQuestionNotePage]\r\n})\r\nexport class VerificationQuestionNotePageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vdmVyaWZpY2F0aW9uL3ZlcmlmaWNhdGlvbi1xdWVzdGlvbi1ub3RlL3ZlcmlmaWNhdGlvbi1xdWVzdGlvbi1ub3RlLnBhZ2Uuc2NzcyJ9 */\"","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ModalController } from '@ionic/angular';\r\nimport { VVerificationQuestionNoteDto } from '@shared/service-proxies/service-proxies';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\n\r\n@Component({\r\n selector: 'app-verification-question-note',\r\n templateUrl: './verification-question-note.page.html',\r\n styleUrls: ['./verification-question-note.page.scss'],\r\n})\r\nexport class VerificationQuestionNotePage implements OnInit {\r\n\r\n @Input() vVQN: VVerificationQuestionNoteDto;\r\n isLoaded: boolean = false;\r\n\r\n constructor(\r\n storageService: AppStorageService,\r\n private modalController: ModalController\r\n ) {\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.isLoaded = true;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n cancel() {\r\n this.modalController.dismiss({\r\n 'doSave': false\r\n });\r\n }\r\n\r\n save() {\r\n this.modalController.dismiss({\r\n 'doSave': true\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { VerificationPage } from './verification.page';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n IonicModule\r\n ],\r\n declarations: [VerificationPage]\r\n})\r\nexport class VerificationPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vdmVyaWZpY2F0aW9uL3ZlcmlmaWNhdGlvbi5wYWdlLnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { VVerificationDto, VVerificationServiceServiceProxy, VVerificationQuestionAnswerServiceServiceProxy, VVerificationQuestionWithAnswersDto, VVerificationQuestionAnswerDto, VAnswerDto, VVerificationCreateDto, VVerificationStatusEnum, VVerificationQuestionNoteServiceServiceProxy, VVerificationQuestionNoteDto, VVerificationQuestionWithAnswersGroupDto, CountyDto, CountyServiceServiceProxy } from '@shared/service-proxies/service-proxies';\r\nimport { AlertController, LoadingController, ModalController, NavController, Platform } from '@ionic/angular';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { VerificationQuestionTypeEnum } from './model/verification-question-type-enum';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Map, tileLayer, marker } from 'leaflet';\r\nimport { Title } from '@angular/platform-browser';\r\nimport domtoimage from 'dom-to-image';\r\nimport html2canvas from 'html2canvas';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { VerificationQuestionNotePage } from './verification-question-note/verification-question-note.page';\r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\n\r\n@Component({\r\n selector: 'app-verification',\r\n templateUrl: './verification.page.html',\r\n styleUrls: ['./verification.page.scss'],\r\n})\r\nexport class VerificationPage implements OnInit {\r\n\r\n public readonly QuestionTypes = VerificationQuestionTypeEnum;\r\n public readonly StatusTypes = VVerificationStatusEnum;\r\n\r\n id: number;\r\n formGroup: FormGroup;\r\n verification: VVerificationDto;\r\n verificationQuestionsWithAnswersGroups: VVerificationQuestionWithAnswersGroupDto[] = [];\r\n map: Map;\r\n isLoaded: boolean = false;\r\n encToken: string;\r\n counties: CountyDto[] = [];\r\n\r\n private baseUrl: string = AppConsts.remoteServiceBaseUrl;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private alertController: AlertController,\r\n private loadingController: LoadingController,\r\n storageService: AppStorageService,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private verificationService: VVerificationServiceServiceProxy,\r\n private verificationQuestionAnswerService: VVerificationQuestionAnswerServiceServiceProxy,\r\n private verificationQuestionNoteService: VVerificationQuestionNoteServiceServiceProxy,\r\n private sessionService: AppSessionService,\r\n private titleService: Title,\r\n public platform: Platform,\r\n appStorageService:AppStorageService,\r\n private modalController: ModalController,\r\n private navCtrl: NavController,\r\n private countyService: CountyServiceServiceProxy,\r\n private permissionChecker: PermissionCheckerService\r\n ) {\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.route.queryParams.subscribe(params => {\r\n if (params && params.verificationId) {\r\n this.id = +params.verificationId;\r\n if (this.id > 0) { // id is required\r\n this.getVerification();\r\n }\r\n }\r\n appStorageService.EncryptedTokenSubject.subscribe(x=> this.encToken = x);\r\n this.getCounties();\r\n this.isLoaded = true;\r\n });\r\n }\r\n });\r\n this.titleService.setTitle('OACI - Assessment');\r\n this.setupForm();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n ionViewDidEnter(){\r\n this.loadMap();\r\n }\r\n\r\n setupForm() {\r\n if (this.formGroup) {\r\n this.formGroup.reset();\r\n }\r\n this.formGroup = this.formBuilder.group({\r\n farmName: ['', Validators.required],\r\n countyId: ['', Validators.required],\r\n longitude: ['', Validators.required],\r\n latitude: ['', Validators.required],\r\n });\r\n }\r\n\r\n getCounties() {\r\n this.countyService.getAll().subscribe(counties => {\r\n this.counties = counties;\r\n });\r\n }\r\n \r\n loadMap(){\r\n this.map = new Map(\"mapId\").setView([17.3850,78.4867], 13);\r\n }\r\n\r\n getLocation(){\r\n this.map.locate({setView:true}).on(\"locationfound\", (e: any)=> {\r\n this.formGroup.patchValue({\r\n latitude: e.latitude,\r\n longitude: e.longitude\r\n });\r\n this.setInProgress();\r\n });\r\n }\r\n\r\n async getVerification() {\r\n \r\n const loading = await this.loadingController.create({\r\n message: 'Fetching assessment...',\r\n });\r\n await loading.present();\r\n\r\n this.verificationService.get(this.id).subscribe(async verification => {\r\n this.verification = verification;\r\n this.formGroup.patchValue({\r\n farmName: verification.farmName,\r\n countyId: verification.countyId,\r\n longitude: verification.longitude,\r\n latitude: verification.latitude,\r\n });\r\n this.verificationQuestionAnswerService.getAllByVerificationId(this.id).subscribe(async verificationQuestionsWithAnswersGroups => {\r\n this.verificationQuestionsWithAnswersGroups = verificationQuestionsWithAnswersGroups;\r\n if (this.verification.statusId == VVerificationStatusEnum._2 && !this.permissionChecker.isGranted(\"Role.Admin\")) {\r\n if (this.canComplete()) {\r\n this.formGroup.disable();\r\n }\r\n }\r\n await loading.dismiss();\r\n });\r\n });\r\n }\r\n\r\n isSingleSelect(questionTypeId) {\r\n return questionTypeId == this.QuestionTypes.SingleSelect || questionTypeId == this.QuestionTypes.SingleSelectOrFreeText;\r\n }\r\n\r\n isMultiSelect(questionTypeId) {\r\n return questionTypeId == this.QuestionTypes.MultiSelect || questionTypeId == this.QuestionTypes.MultiSelectAndOrFreeText;\r\n }\r\n\r\n isFreeText(questionTypeId) {\r\n return questionTypeId == this.QuestionTypes.FreeText;\r\n }\r\n\r\n isAnswerWithFreeText(answer: VAnswerDto) {\r\n return answer.requiresFreeText;\r\n }\r\n\r\n isAnswerSelected(vqa: VVerificationQuestionAnswerDto, answer: VAnswerDto) {\r\n return vqa ? vqa.vAnswerId == answer.id : false;\r\n }\r\n\r\n isAnswerSelectedMultiple(vqas: VVerificationQuestionAnswerDto[], answer: VAnswerDto) {\r\n return vqas && answer ? vqas.find(x => x.vAnswerId == answer.id) != null : false;\r\n }\r\n\r\n selectedMultipleAnswerAlternate(vqas: VVerificationQuestionAnswerDto[], answer: VAnswerDto) {\r\n return vqas && answer ? vqas.find(x => x.vAnswerId == answer.id) ? vqas.find(x => x.vAnswerId == answer.id).alternateAnswer : null : null;\r\n }\r\n\r\n selectAnswer(event, vqa: VVerificationQuestionAnswerDto, answer: VAnswerDto) {\r\n if (event.detail.checked) {\r\n vqa.vAnswerId = answer.id;\r\n } else {\r\n vqa.vAnswerId = null;\r\n }\r\n }\r\n\r\n selectAnswerMultiple(event, questionId: number, vqwa: VVerificationQuestionWithAnswersDto, answer: VAnswerDto) {\r\n if (event.detail.checked) {\r\n const newVqa = new VVerificationQuestionAnswerDto();\r\n newVqa.vQuestionId = questionId;\r\n newVqa.vAnswerId = answer.id;\r\n vqwa.vVQAMultipleDto.push(newVqa);\r\n if (this.isAnswerWithFreeText(answer)) { // idk it wouldn't do the focusout for some reason\r\n this.saveAnswer(null, vqwa, answer);\r\n }\r\n } else if (vqwa) {\r\n const vqa = vqwa.vVQAMultipleDto.find(x => x.vAnswerId == answer.id);\r\n if (vqa && vqa.id > 0) {\r\n this.verificationQuestionAnswerService.delete(vqa.id).subscribe(() => {});\r\n }\r\n const index = vqwa.vVQAMultipleDto.findIndex(x => x.vAnswerId == answer.id);\r\n if (index != -1) {\r\n vqwa.vVQAMultipleDto.splice(index, 1);\r\n }\r\n }\r\n }\r\n\r\n setInProgress() {\r\n \r\n this.verification.farmName = this.formGroup.controls.farmName.value;\r\n this.verification.countyId = this.formGroup.controls.countyId.value;\r\n this.verification.latitude = this.formGroup.controls.latitude.value;\r\n this.verification.longitude = this.formGroup.controls.longitude.value;\r\n this.verification.statusId = VVerificationStatusEnum._1;\r\n this.verificationService.save(this.verification).subscribe();\r\n\r\n }\r\n\r\n async save(status: VVerificationStatusEnum) {\r\n\r\n const isCompleting = status == VVerificationStatusEnum._2;\r\n\r\n const errors = [];\r\n if (!this.formGroup.controls.farmName.value) {\r\n errors.push('• Farm name is required');\r\n }\r\n if (\r\n !this.formGroup.controls.latitude.value ||\r\n !this.formGroup.controls.longitude.value\r\n ) {\r\n errors.push('• Location is required');\r\n }\r\n if (errors.length > 0) {\r\n this.saveError(errors.join('
'));\r\n return;\r\n }\r\n\r\n const loadingMsg = isCompleting ? 'Completing Assessment...' : 'Saving Assessment...';\r\n const loading = await this.loadingController.create({\r\n message: loadingMsg,\r\n });\r\n await loading.present();\r\n \r\n this.verification.statusId = status;\r\n this.verification.farmName = this.formGroup.controls.farmName.value;\r\n this.verification.countyId = this.formGroup.controls.countyId.value;\r\n this.verification.latitude = this.formGroup.controls.latitude.value;\r\n this.verification.longitude = this.formGroup.controls.longitude.value;\r\n this.verificationService.save(this.verification).subscribe(\r\n async verification => {\r\n \r\n await loading.dismiss();\r\n\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'Assessment has been saved',\r\n buttons: ['OK']\r\n });\r\n if (!isCompleting) await alert.present();\r\n\r\n if (isCompleting) this.router.navigate(['/main/verifications']);\r\n\r\n },\r\n async error => {\r\n this.saveError(error).then();\r\n await loading.dismiss();\r\n }\r\n );\r\n }\r\n\r\n async saveError(errorMessage) {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n subHeader: 'Error',\r\n message: errorMessage,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n // saveVerificationQuestionAnswers() {\r\n // const dtos = [];\r\n // this.verificationQuestionsWithAnswers.forEach(vqa => {\r\n // if (\r\n // this.isSingleSelect(vqa.vQuestionDto.typeId) ||\r\n // this.isFreeText(vqa.vQuestionDto.typeId)\r\n // ) {\r\n // vqa.vVQASingleDto.vVerificationId = this.id;\r\n // dtos.push(vqa.vVQASingleDto);\r\n // } else {\r\n // if (vqa.vVQAMultipleDto && vqa.vVQAMultipleDto.length > 0) {\r\n // vqa.vVQAMultipleDto.forEach(dto => {\r\n // dto.vVerificationId = this.id;\r\n // dtos.push(dto);\r\n // });\r\n // }\r\n // }\r\n // });\r\n // this.verificationQuestionAnswerService.createOrUpdateAll(dtos).subscribe(async dtoResponse => {\r\n // this.getVerificationQuestionsWithAnswers(false);\r\n // const alert = await this.alertController.create({\r\n // header: 'Success',\r\n // message: 'Verification has been saved',\r\n // buttons: ['OK']\r\n // });\r\n \r\n // await alert.present();\r\n // });\r\n // }\r\n\r\n async saveVerificationError(errorMessage) {\r\n const alert = await this.alertController.create({\r\n header: 'Error',\r\n subHeader: 'Error',\r\n message: errorMessage,\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n cancel() {\r\n this.navCtrl.back();\r\n // this.router.navigate(['/main/home']);\r\n }\r\n \r\n selectAnswerMultipleFreeTextSave(event, vqa: VVerificationQuestionWithAnswersDto, answer: VAnswerDto) {\r\n // console.log(event);\r\n vqa.vVQAMultipleDto.find(x => x.vAnswerId == answer.id).alternateAnswer = event.srcElement.value;\r\n this.saveAnswer(null, vqa, answer);\r\n }\r\n\r\n saveAnswer(event, vqa: VVerificationQuestionWithAnswersDto, answer: VAnswerDto) {\r\n let dto: VVerificationQuestionAnswerDto = null;\r\n if (\r\n this.isFreeText(vqa.vQuestionDto.typeId) ||\r\n this.isSingleSelect(vqa.vQuestionDto.typeId) ||\r\n (this.isSingleSelect(vqa.vQuestionDto.typeId) && this.isAnswerWithFreeText(answer))\r\n ) { // grab single answer\r\n dto = vqa.vVQASingleDto;\r\n } else { // grab multi answer by answer id\r\n dto = vqa.vVQAMultipleDto.find(x => x.vAnswerId == answer.id);\r\n }\r\n dto.vVerificationId = this.id;\r\n this.verificationQuestionAnswerService.save(dto).subscribe(savedDto => {\r\n if (\r\n this.isFreeText(vqa.vQuestionDto.typeId) ||\r\n this.isSingleSelect(vqa.vQuestionDto.typeId) ||\r\n (this.isSingleSelect(vqa.vQuestionDto.typeId) && this.isAnswerWithFreeText(answer))\r\n ) { // grab single answer\r\n vqa.vVQASingleDto.id = savedDto.id;\r\n } else { // grab multi answer by answer id\r\n vqa.vVQAMultipleDto.find(x => x.vAnswerId == answer.id).id = savedDto.id;\r\n }\r\n });\r\n if (\r\n this.verification.statusId == VVerificationStatusEnum._0 // ||\r\n // (\r\n // (this.verification.farmName == null || this.verification.farmName == '') &&\r\n // (this.formGroup.controls.farmName.value != null && this.formGroup.controls.farmName.value != '')\r\n // ) ||\r\n // (\r\n // (this.verification.latitude == null || this.verification.latitude == 0) &&\r\n // (this.formGroup.controls.latitude.value != null && this.formGroup.controls.latitude.value != 0)\r\n // ) ||\r\n // (\r\n // (this.verification.longitude == null || this.verification.longitude == 0) &&\r\n // (this.formGroup.controls.longitude.value != null && this.formGroup.controls.longitude.value != 0)\r\n // )\r\n ) {\r\n this.setInProgress();\r\n }\r\n }\r\n\r\n print() {\r\n window.open(`${this.baseUrl}/print/assessment/${this.id}?${AppConsts.authorization.encryptedAuthTokenName}=${encodeURIComponent(this.encToken)}`, '_blank');\r\n }\r\n\r\n async addEditNote(vVQN: VVerificationQuestionNoteDto) {\r\n // this.verificationQuestionNoteService.getVerificationQuestionNoteAuditHistory(verificationQuestionNoteId).subscribe(async auditLogs => {\r\n const modal = await this.modalController.create({\r\n component: VerificationQuestionNotePage,\r\n componentProps: {\r\n 'vVQN': vVQN,\r\n },\r\n backdropDismiss: false\r\n });\r\n modal.onDidDismiss().then((param) => {\r\n if (param && param.data && param.data['doSave'] && param.data['doSave'] == true) {\r\n vVQN.vVerificationId = this.id;\r\n this.verificationQuestionNoteService.save(vVQN).subscribe(response => {\r\n vVQN.id = response.id;\r\n vVQN.lastModifiedUserName = response.lastModifiedUserName;\r\n vVQN.lastModifiedTime = response.lastModifiedTime;\r\n });\r\n }\r\n });\r\n modal.present();\r\n // });\r\n }\r\n\r\n getMultiQuestionLetter(sort: number) {\r\n switch (sort) {\r\n case 1: return 'a';\r\n case 2: return 'b';\r\n case 3: return 'c';\r\n case 4: return 'd';\r\n case 5: return 'e';\r\n case 6: return 'f';\r\n case 7: return 'g';\r\n }\r\n }\r\n\r\n numberOfQuestionsAnswered() {\r\n var num = 0;\r\n if (this.verificationQuestionsWithAnswersGroups) {\r\n this.verificationQuestionsWithAnswersGroups.forEach(vQWAG => {\r\n var numAnswered = 0;\r\n vQWAG.vVQWADtos.forEach(vVQWADto => {\r\n vVQWADto.vAnswerDtos.forEach(vAnswerDto => {\r\n if (vVQWADto.vQuestionDto.typeId != VerificationQuestionTypeEnum.FreeText) {\r\n if (this.isSingleSelect(vVQWADto.vQuestionDto.typeId)) {\r\n if (this.isAnswerSelected(vVQWADto.vVQASingleDto, vAnswerDto)) {\r\n if (this.isAnswerWithFreeText(vAnswerDto)) {\r\n if (vVQWADto.vVQASingleDto.alternateAnswer) {\r\n numAnswered++;\r\n }\r\n } else {\r\n numAnswered++;\r\n }\r\n }\r\n } else if (this.isMultiSelect(vVQWADto.vQuestionDto.typeId)) {\r\n if (this.isAnswerSelectedMultiple(vVQWADto.vVQAMultipleDto, vAnswerDto)) {\r\n numAnswered++;\r\n }\r\n }\r\n } else {\r\n if (vVQWADto.vVQASingleDto.alternateAnswer) {\r\n numAnswered++;\r\n }\r\n }\r\n });\r\n });\r\n // if (numAnswered == vQWAG.vVQWADtos.length) num++;\r\n if (numAnswered >= vQWAG.vVQWADtos.length) num++;\r\n });\r\n }\r\n return num;\r\n }\r\n\r\n numberOfQuestions() {\r\n return this.verificationQuestionsWithAnswersGroups ? this.verificationQuestionsWithAnswersGroups.length : 0;\r\n }\r\n\r\n canComplete() {\r\n return this.verificationQuestionsWithAnswersGroups ? (this.numberOfQuestionsAnswered() / this.numberOfQuestions()) == 1 : false;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IonicModule } from '@ionic/angular';\r\n\r\nimport { VerificationsPage } from './verifications.page';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n IonicModule,\r\n NgxDatatableModule\r\n ],\r\n declarations: [VerificationsPage]\r\n})\r\nexport class VerificationsPageModule {}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL21haW4vdmVyaWZpY2F0aW9ucy92ZXJpZmljYXRpb25zLnBhZ2Uuc2NzcyJ9 */\"","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { VVerificationServiceServiceProxy, VVerificationDto, VVerificationCreateDto, ExportRequestDto } from '@shared/service-proxies/service-proxies';\r\nimport { AlertController, LoadingController } from '@ionic/angular';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { Router, NavigationExtras } from '@angular/router';\r\nimport { ExportService } from '@shared/export/export.service';\r\nimport * as moment from 'moment';\r\nimport { PermissionCheckerService } from '@shared/auth/permission-checker.service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Page } from 'src/model/page';\r\nimport { ColumnMode } from '@swimlane/ngx-datatable';\r\nimport { retryWhen } from 'rxjs/operators';\r\n\r\n\r\n@Component({\r\n selector: 'app-verifications',\r\n templateUrl: './verifications.page.html',\r\n styleUrls: ['./verifications.page.scss'],\r\n})\r\nexport class VerificationsPage implements OnInit {\r\n\r\n rows: VVerificationDto[];\r\n page = new Page();\r\n ColumnMode = ColumnMode;\r\n sortTerm: string = 'farmName';\r\n sortDirection: string = 'ASC';\r\n countyId: number;\r\n isLoaded: boolean = false;\r\n constructor(\r\n private verificationSvc: VVerificationServiceServiceProxy,\r\n private alertController: AlertController,\r\n storageService: AppStorageService,\r\n private router: Router,\r\n private permissionChecker: PermissionCheckerService,\r\n private exportService: ExportService,\r\n private titleService: Title,\r\n private loadingCtrl: LoadingController\r\n ) {\r\n this.titleService.setTitle('OACI - Assessments List');\r\n this.page.pageNumber = 0;\r\n this.page.size = 10;\r\n storageService.IsLoadedSubject.subscribe(x => { \r\n if (!this.isLoaded && x) {\r\n this.getVerifications();\r\n this.isLoaded = true;\r\n }\r\n });\r\n }\r\n\r\n ionViewWillEnter() {\r\n if (this.isLoaded) {\r\n this.getVerifications();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.setPage({ offset: 0 });\r\n }\r\n\r\n getVerifications() {\r\n this.verificationSvc.getAll(\r\n this.countyId,\r\n this.sortTerm + ' ' + this.sortDirection,\r\n this.page.pageNumber * this.page.size,\r\n this.page.size\r\n ).subscribe(response => {\r\n this.rows = response.items;\r\n this.page.totalElements = response.totalCount;\r\n this.page.totalPages = Math.ceil(response.totalCount / this.page.size);\r\n });\r\n }\r\n\r\n newVerification() {\r\n const request = new VVerificationCreateDto();\r\n this.verificationSvc.create(request).subscribe(verification => {\r\n this.goToVerification(verification.id);\r\n });\r\n }\r\n\r\n goToVerification(id) {\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: {\r\n verificationId: id\r\n }\r\n };\r\n this.router.navigate(['/main/verification'], navigationExtras);\r\n }\r\n\r\n async deleteVerification(id) {\r\n const alert = await this.alertController.create({\r\n header: 'Delete',\r\n message: 'Are you sure you want to delete this Assessment?',\r\n buttons: [\r\n {\r\n text: 'Cancel',\r\n handler: () => {\r\n console.log('Confirm Okay');\r\n }\r\n },\r\n {\r\n text: 'Delete',\r\n cssClass: 'danger',\r\n handler: (blah) => {\r\n this.verificationSvc.delete(id).subscribe(() => {\r\n this.rows = this.rows.filter(x => x.id != id);\r\n });\r\n }\r\n }\r\n ]\r\n });\r\n\r\n await alert.present();\r\n }\r\n\r\n isAdmin() {\r\n return this.permissionChecker.isGranted(\"Role.Admin\");\r\n }\r\n\r\n async export() {\r\n \r\n const loading = await this.loadingCtrl.create({\r\n message: 'Please wait while we generate your report...',\r\n });\r\n await loading.present();\r\n \r\n this.verificationSvc.getAllWithQuestionAnswers(\r\n this.countyId,\r\n this.sortTerm + ' ' + this.sortDirection,\r\n 0,\r\n 2147483647\r\n ).subscribe(response => {\r\n const request = new ExportRequestDto();\r\n request.entity = 'Assessments';\r\n request.columnNames = [\r\n 'Farm Name',\r\n 'County',\r\n 'Latitude',\r\n 'Longitude',\r\n 'Status',\r\n 'Creator',\r\n 'Created On',\r\n 'Last Modifier',\r\n 'Last Modified On'\r\n ];\r\n response.questions.forEach(q => request.columnNames.push(q));\r\n request.data = [];\r\n response.vVerificationWithQuestionAnswersDtos.forEach(vVerificationWithQuestionAnswersDto => {\r\n let row = [\r\n vVerificationWithQuestionAnswersDto.farmName,\r\n vVerificationWithQuestionAnswersDto.countyName,\r\n vVerificationWithQuestionAnswersDto.latitude ? vVerificationWithQuestionAnswersDto.latitude.toString() : null,\r\n vVerificationWithQuestionAnswersDto.longitude ? vVerificationWithQuestionAnswersDto.longitude.toString() : null,\r\n vVerificationWithQuestionAnswersDto.statusId == 0 ? 'New' : vVerificationWithQuestionAnswersDto.statusId == 1 ? 'In Progress' : 'Completed',\r\n vVerificationWithQuestionAnswersDto.creatorUserName,\r\n moment(vVerificationWithQuestionAnswersDto.creationTime).format('MM/DD/YYYY'),\r\n vVerificationWithQuestionAnswersDto.lastModifierUserName,\r\n moment(vVerificationWithQuestionAnswersDto.lastModificationTime).format('MM/DD/YYYY')\r\n ];\r\n vVerificationWithQuestionAnswersDto.questionAnswers.forEach(qA => row.push(qA));\r\n request.data.push(row);\r\n });\r\n this.exportService.export(request, loading);\r\n });\r\n }\r\n\r\n setPage(pageInfo) {\r\n this.page.pageNumber = pageInfo.offset;\r\n this.getVerifications();\r\n }\r\n\r\n onSort(event) {\r\n this.sortTerm = event.column.prop;\r\n this.sortDirection = event.newValue.toUpperCase();\r\n this.getVerifications();\r\n }\r\n\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false, \r\n appConfig: 'appconfig.json'\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","export class Page {\r\n // The number of elements in the page\r\n size: number = 0;\r\n // The total number of elements\r\n totalElements: number = 0;\r\n // The total number of pages\r\n totalPages: number = 0;\r\n // The current page number\r\n pageNumber: number = 0;\r\n }","import { FeatureMap } from './models/feature-map';\r\n\r\nexport class AppConsts {\r\n\r\n //gets loaded from env.js\r\n static remoteServiceBaseUrl: string = window[\"injectedURL\"] || \"http://localhost:21021\";\r\n static appBaseUrl: string = \"/home\";\r\n static appBaseHref: string; // returns angular's base-href parameter value if used during the publish\r\n\r\n static localeMappings: any = [];\r\n\r\n static readonly userManagement = {\r\n defaultAdminUserName: 'admin'\r\n };\r\n\r\n static readonly localization = {\r\n defaultLocalizationSourceName: 'OACI'\r\n };\r\n\r\n static readonly authorization = {\r\n encryptedAuthTokenName: 'enc_auth_token'\r\n };\r\n static appPath: string;\r\n\r\n //gets loaded from env.js\r\n static enabledFeatures:FeatureMap = window[\"enabledFeatures\"] || {\r\n app: {\r\n isProduction: false\r\n },\r\n main: {\r\n farmer: {\r\n menu: true,\r\n addNewCertification: true,\r\n certificationList: true,\r\n },\r\n certifications:{\r\n menu:true,\r\n },\r\n farmers:{\r\n menu:true,\r\n },\r\n verifications:{\r\n menu:true\r\n },\r\n users:{\r\n menu:true\r\n }\r\n }\r\n }\r\n\r\n}\r\n","import { Injector, ElementRef } from '@angular/core';\r\nimport { AppSessionService } from '@shared/session/app-session.service';\r\nimport { PermissionCheckerService } from './auth/permission-checker.service';\r\nimport { FeatureCheckerService } from './multi-tenancy/feature-checker.service';\r\nimport { MultiTenancyService } from './multi-tenancy/mult-tenancy.service';\r\nimport { NotifyService } from './notify/notify.service';\r\nimport { SettingService } from './settings/settings.service';\r\nimport { MessageService } from './message/message.service';\r\n\r\nexport abstract class AppComponentBase {\r\n\r\n\r\n permission: PermissionCheckerService;\r\n feature: FeatureCheckerService;\r\n notify: NotifyService;\r\n setting: SettingService;\r\n message: MessageService;\r\n multiTenancy: MultiTenancyService;\r\n appSession: AppSessionService;\r\n elementRef: ElementRef;\r\n\r\n constructor(injector: Injector) {\r\n this.permission = injector.get(PermissionCheckerService);\r\n this.feature = injector.get(FeatureCheckerService);\r\n this.notify = injector.get(NotifyService);\r\n this.setting = injector.get(SettingService);\r\n this.message = injector.get(MessageService);\r\n this.multiTenancy = injector.get(MultiTenancyService);\r\n this.appSession = injector.get(AppSessionService);\r\n this.elementRef = injector.get(ElementRef);\r\n }\r\n\r\n \r\n isGranted(permissionName: string): boolean {\r\n return this.permission.isGranted(permissionName);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject, of } from 'rxjs';\r\nimport { MessageService } from './message/message.service';\r\nimport { LogService } from './log/log.service';\r\n\r\nimport { HttpClient, HttpInterceptor, HttpHandler, HttpRequest, HttpEvent, HttpResponse, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { MultiTenancyService } from './multi-tenancy/mult-tenancy.service';\r\nimport { AppStorageService } from './storage/app-storage.service';\r\nimport { tap } from 'rxjs/operators';\r\n\r\nexport interface IValidationErrorInfo {\r\n\r\n message: string;\r\n\r\n members: string[];\r\n\r\n}\r\n\r\nexport interface IErrorInfo {\r\n\r\n code: number;\r\n\r\n message: string;\r\n\r\n details: string;\r\n\r\n validationErrors: IValidationErrorInfo[];\r\n\r\n}\r\n\r\nexport interface IAjaxResponse {\r\n\r\n success: boolean;\r\n\r\n result?: any;\r\n\r\n targetUrl?: string;\r\n\r\n error?: IErrorInfo;\r\n\r\n unAuthorizedRequest: boolean;\r\n\r\n __abp: boolean;\r\n\r\n}\r\n\r\nexport const InterceptorSkipHeader = 'X-Skip-Interceptor';\r\n\r\n@Injectable()\r\nexport class AppHttpConfiguration {\r\n\r\n constructor(\r\n private _messageService: MessageService,\r\n private _logService: LogService) {\r\n\r\n }\r\n\r\n defaultError = {\r\n message: 'An error has occurred!',\r\n details: 'Error details were not sent by server.'\r\n };\r\n\r\n defaultError401 = {\r\n message: 'You are not authenticated!',\r\n details: 'You should be authenticated (sign in) in order to perform this operation.'\r\n };\r\n\r\n defaultError403 = {\r\n message: 'You are not authorized!',\r\n details: 'You are not allowed to perform this operation.'\r\n };\r\n\r\n defaultError404 = {\r\n message: 'Resource not found!',\r\n details: 'The resource requested could not be found on the server.'\r\n };\r\n\r\n logError(error: IErrorInfo): void {\r\n this._logService.error(error);\r\n }\r\n\r\n showError(error: IErrorInfo): any {\r\n if (error.details) {\r\n return this._messageService.error(error.details, error.message || this.defaultError.message);\r\n } else {\r\n return this._messageService.error(error.message || this.defaultError.message);\r\n }\r\n }\r\n\r\n handleTargetUrl(targetUrl: string): void {\r\n if (!targetUrl) {\r\n location.href = '/';\r\n } else {\r\n location.href = targetUrl;\r\n }\r\n }\r\n\r\n handleUnAuthorizedRequest(messagePromise: any, targetUrl?: string) {\r\n const self = this;\r\n\r\n if (messagePromise) {\r\n messagePromise.done(() => {\r\n this.handleTargetUrl(targetUrl || '/');\r\n });\r\n } else {\r\n self.handleTargetUrl(targetUrl || '/');\r\n }\r\n }\r\n\r\n handleNonAbpErrorResponse(response: HttpResponse) {\r\n const self = this;\r\n\r\n switch (response.status) {\r\n case 401:\r\n self.handleUnAuthorizedRequest(\r\n self.showError(self.defaultError401),\r\n '/'\r\n );\r\n break;\r\n case 403:\r\n self.showError(self.defaultError403);\r\n break;\r\n case 404:\r\n self.showError(self.defaultError404);\r\n break;\r\n default:\r\n self.showError(self.defaultError);\r\n break;\r\n }\r\n }\r\n\r\n handleAbpResponse(response: HttpResponse, ajaxResponse: IAjaxResponse): HttpResponse {\r\n var newResponse: HttpResponse;\r\n\r\n if (ajaxResponse.success) {\r\n\r\n newResponse = response.clone({\r\n body: ajaxResponse.result\r\n });\r\n\r\n if (ajaxResponse.targetUrl) {\r\n this.handleTargetUrl(ajaxResponse.targetUrl);;\r\n }\r\n } else {\r\n\r\n newResponse = response.clone({\r\n body: ajaxResponse.result\r\n });\r\n\r\n if (!ajaxResponse.error) {\r\n ajaxResponse.error = this.defaultError;\r\n }\r\n\r\n this.logError(ajaxResponse.error);\r\n this.showError(ajaxResponse.error);\r\n\r\n if (response.status === 401) {\r\n this.handleUnAuthorizedRequest(null, ajaxResponse.targetUrl);\r\n }\r\n }\r\n\r\n return newResponse;\r\n }\r\n\r\n getAbpAjaxResponseOrNull(response: HttpResponse): IAjaxResponse | null {\r\n if (!response || !response.headers) {\r\n return null;\r\n }\r\n\r\n var contentType = response.headers.get('Content-Type');\r\n if (!contentType) {\r\n this._logService.warn('Content-Type is not sent!');\r\n return null;\r\n }\r\n\r\n if (contentType.indexOf(\"application/json\") < 0) {\r\n this._logService.warn('Content-Type is not application/json: ' + contentType);\r\n return null;\r\n }\r\n\r\n var responseObj = JSON.parse(JSON.stringify(response.body));\r\n if (!responseObj.__abp) {\r\n return null;\r\n }\r\n\r\n return responseObj as IAjaxResponse;\r\n }\r\n\r\n handleResponse(response: HttpResponse): HttpResponse {\r\n var ajaxResponse = this.getAbpAjaxResponseOrNull(response);\r\n if (ajaxResponse == null) {\r\n return response;\r\n }\r\n\r\n return this.handleAbpResponse(response, ajaxResponse);\r\n }\r\n\r\n 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 = function () {\r\n observer.next(this.result);\r\n observer.complete();\r\n }\r\n reader.readAsText(blob);\r\n }\r\n });\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AppHttpInterceptor implements HttpInterceptor {\r\n\r\n token: string;\r\n protected configuration: AppHttpConfiguration;\r\n private _logService: LogService = new LogService();\r\n\r\n constructor(configuration: AppHttpConfiguration,\r\n private multiTenancy: MultiTenancyService,\r\n storageService: AppStorageService) {\r\n this.configuration = configuration;\r\n storageService.TokenSubject.pipe(tap(_=> console.log(\"AppHttpInterceptor-storageService.TokenSubject-ea5cc98d-270a-4dca-ba98-e8f4055ead3c\") )).subscribe(t => this.token = t);\r\n }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n\r\n var interceptObservable = new Subject>();\r\n var modifiedRequest = this.normalizeRequestHeaders(request);\r\n\r\n next.handle(modifiedRequest)\r\n .subscribe((event: HttpEvent) => {\r\n this.handleSuccessResponse(event, interceptObservable);\r\n }, (error: any) => {\r\n return this.handleErrorResponse(error, interceptObservable);\r\n });\r\n\r\n return interceptObservable;\r\n }\r\n\r\n protected normalizeRequestHeaders(request: HttpRequest): HttpRequest {\r\n var modifiedHeaders = new HttpHeaders();\r\n modifiedHeaders = request.headers.set(\"Pragma\", \"no-cache\")\r\n .set(\"Cache-Control\", \"no-cache\")\r\n .set(\"Expires\", \"Sat, 01 Jan 2000 00:00:00 GMT\");\r\n\r\n modifiedHeaders = this.addXRequestedWithHeader(modifiedHeaders);\r\n modifiedHeaders = this.addAuthorizationHeaders(modifiedHeaders);\r\n // modifiedHeaders = this.addAspNetCoreCultureHeader(modifiedHeaders);\r\n // modifiedHeaders = this.addAcceptLanguageHeader(modifiedHeaders);\r\n modifiedHeaders = this.addTenantIdHeader(modifiedHeaders);\r\n\r\n return request.clone({\r\n headers: modifiedHeaders\r\n });\r\n }\r\n\r\n protected addXRequestedWithHeader(headers: HttpHeaders): HttpHeaders {\r\n if (headers) {\r\n headers = headers.set('X-Requested-With', 'XMLHttpRequest');\r\n }\r\n\r\n return headers;\r\n }\r\n\r\n // protected addAspNetCoreCultureHeader(headers:HttpHeaders):HttpHeaders {\r\n // let cookieLangValue = this._utilsService.getCookieValue(\"Abp.Localization.CultureName\");\r\n // if (cookieLangValue && headers && !headers.has('.AspNetCore.Culture')) {\r\n // headers = headers.set('.AspNetCore.Culture', cookieLangValue);\r\n // }\r\n\r\n // return headers;\r\n // }\r\n\r\n // protected addAcceptLanguageHeader(headers:HttpHeaders):HttpHeaders {\r\n // let cookieLangValue = this._utilsService.getCookieValue(\"Abp.Localization.CultureName\");\r\n // if (cookieLangValue && headers && !headers.has('Accept-Language')) {\r\n // headers = headers.set('Accept-Language', cookieLangValue);\r\n // }\r\n\r\n // return headers;\r\n // }\r\n\r\n protected addTenantIdHeader(headers: HttpHeaders): HttpHeaders {\r\n let cookieTenantIdValue = this.multiTenancy.getTenantIdCookie();\r\n\r\n if (cookieTenantIdValue && headers && !headers.has(this.multiTenancy.tenantIdCookieName)) {\r\n headers = headers.set(this.multiTenancy.tenantIdCookieName, cookieTenantIdValue);\r\n }\r\n\r\n return headers;\r\n }\r\n\r\n protected addAuthorizationHeaders(headers: HttpHeaders): HttpHeaders {\r\n if (headers.get(\"interceptorskipheader\")) {\r\n headers = headers.delete(InterceptorSkipHeader);\r\n return headers;\r\n }\r\n let authorizationHeaders = headers ? headers.getAll('Authorization') : null;\r\n if (!authorizationHeaders) {\r\n authorizationHeaders = [];\r\n }\r\n\r\n if (!this.itemExists(authorizationHeaders, (item: string) => item.indexOf('Bearer ') == 0)) {\r\n\r\n if (headers && this.token) {\r\n headers = headers.set('Authorization', 'Bearer ' + this.token);\r\n }\r\n }\r\n\r\n return headers;\r\n }\r\n\r\n protected handleSuccessResponse(event: HttpEvent, interceptObservable: Subject>): void {\r\n var self = this;\r\n\r\n if (event instanceof HttpResponse) {\r\n if (event.body instanceof Blob && event.body.type && event.body.type.indexOf(\"application/json\") >= 0) {\r\n var clonedResponse = event.clone();\r\n\r\n self.configuration.blobToText(event.body).subscribe(json => {\r\n const responseBody = json == \"null\" ? {} : JSON.parse(json);\r\n\r\n var modifiedResponse = self.configuration.handleResponse(event.clone({\r\n body: responseBody\r\n }));\r\n\r\n interceptObservable.next(modifiedResponse.clone({\r\n body: new Blob([JSON.stringify(modifiedResponse.body)], { type: 'application/json' })\r\n }));\r\n\r\n interceptObservable.complete();\r\n });\r\n } else {\r\n interceptObservable.next(event);\r\n interceptObservable.complete();\r\n }\r\n } else {\r\n interceptObservable.next(event);\r\n }\r\n }\r\n\r\n protected handleErrorResponse(error: any, interceptObservable: Subject>): Observable {\r\n var errorObservable = new Subject();\r\n\r\n if (!(error.error instanceof Blob)) {\r\n interceptObservable.error(error);\r\n interceptObservable.complete();\r\n return of({});\r\n }\r\n\r\n this.configuration.blobToText(error.error).subscribe(json => {\r\n const errorBody = (json == \"\" || json == \"null\") ? {} : JSON.parse(json);\r\n const errorResponse = new HttpResponse({\r\n headers: error.headers,\r\n status: error.status,\r\n body: errorBody\r\n });\r\n\r\n var ajaxResponse = this.configuration.getAbpAjaxResponseOrNull(errorResponse);\r\n\r\n if (ajaxResponse != null) {\r\n this.configuration.handleAbpResponse(errorResponse, ajaxResponse);\r\n } else {\r\n this.configuration.handleNonAbpErrorResponse(errorResponse);\r\n }\r\n\r\n errorObservable.complete();\r\n\r\n interceptObservable.error(error);\r\n interceptObservable.complete();\r\n });\r\n\r\n return errorObservable;\r\n }\r\n\r\n private itemExists(items: T[], predicate: (item: T) => boolean): boolean {\r\n for (let i = 0; i < items.length; i++) {\r\n if (predicate(items[i])) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { AppSessionService } from '../session/app-session.service';\r\n\r\nimport {\r\n CanActivate, Router,\r\n ActivatedRouteSnapshot,\r\n RouterStateSnapshot,\r\n CanActivateChild\r\n} from '@angular/router';\r\nimport { PermissionCheckerService } from './permission-checker.service';\r\n\r\n@Injectable()\r\nexport class AppRouteGuard implements CanActivate, CanActivateChild {\r\n\r\n constructor(\r\n private _permissionChecker: PermissionCheckerService,\r\n private _router: Router,\r\n private _sessionService: AppSessionService,\r\n ) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\r\n console.debug(\"canActivate\")\r\n if (!this._sessionService.user) { // this doesn't work\r\n this._router.navigate(['/account/login']);\r\n return false;\r\n }\r\n\r\n if (!route.data || !route.data['permission']) {\r\n return true;\r\n }\r\n\r\n if (this._permissionChecker.isGranted(route.data['permission'])) {\r\n return true;\r\n }\r\n\r\n this._router.navigate([this.selectBestRoute()]);\r\n return false;\r\n }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\r\n return this.canActivate(route, state);\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.Users')) {\r\n return '/app/admin/users';\r\n }\r\n\r\n return '/home';\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\n\r\n@Injectable()\r\nexport class AuthService {\r\n constructor(private storageService: AppStorageService) { }\r\n logout(reload?: boolean): void {\r\n this.storageService.clearToken();\r\n \r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { tap } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class PermissionCheckerService{\r\n constructor(storageService:AppStorageService){\r\n storageService.AllPermissionsSubject.pipe(tap(_=> console.debug(\"PermissionCheckerService-AllPermissionsSubject-bea28cb5-33a7-4f4c-867d-ad0a9c45eb48\"))).subscribe(x=> this.allPermissions=x);\r\n storageService.GrantedPermissionsSubject.pipe(tap(_=> console.debug(\"PermissionCheckerService-GrantedPermissionsSubject-ba428809-bf22-4702-a9f7-d6bb57155f66\"))).subscribe(x=> this.grantedPermissions=x);\r\n }\r\n allPermissions={};\r\n grantedPermissions={};\r\n isGranted(permissionName: any):boolean {\r\n /// TODO\r\n return this.allPermissions[permissionName] != undefined && this.grantedPermissions[permissionName] != undefined;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { LoadingController } from '@ionic/angular';\r\nimport { ExportServiceServiceProxy, ExportRequestDto } from '@shared/service-proxies/service-proxies';\r\nimport { saveAs } from 'file-saver';\r\n\r\n@Injectable()\r\nexport class ExportService {\r\n\r\n constructor(\r\n private exportService: ExportServiceServiceProxy,\r\n private loadingCtrl: LoadingController\r\n ) { }\r\n\r\n async export(request: ExportRequestDto, loading: HTMLIonLoadingElement) {\r\n this.exportService.export(request).subscribe(async fileResponse => {\r\n this.saveFile(fileResponse, request.entity);\r\n if (loading) await loading.dismiss();\r\n });\r\n }\r\n\r\n saveFile(fileResponse, entity) {\r\n const d = new Date();\r\n var data = new Blob([fileResponse.data], {type:'base64'});\r\n saveAs(data, `${entity}_${d.getMonth()+1}_${d.getDate()}_${d.getFullYear()}.xlsx`);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ModalController, AlertController } from '@ionic/angular';\r\nimport { HelpDeskPage } from 'src/app/main/help-desk/help-desk.page';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Injectable()\r\nexport class HelpDeskService {\r\n\r\n constructor(\r\n private modalController: ModalController,\r\n private alertController: AlertController,\r\n private titleService: Title\r\n ) { }\r\n\r\n async openHelpDeskPopup() {\r\n const modal = await this.modalController.create({\r\n component: HelpDeskPage\r\n });\r\n modal.onDidDismiss().then(async (param) => {\r\n if (\r\n param &&\r\n param.data &&\r\n param.data['didSend'] != null &&\r\n param.data['didSend'] == true\r\n ) {\r\n const alert = await this.alertController.create({\r\n header: 'Success',\r\n message: 'Message was sent to OACI Help Desk. Please watch your email for a response.',\r\n buttons: ['OK']\r\n });\r\n\r\n await alert.present();\r\n }\r\n this.titleService.setTitle('OACI - Home');\r\n });\r\n return await modal.present();\r\n }\r\n \r\n}\r\n","export class UrlHelper {\r\n /**\r\n * The URL requested, before initial routing.\r\n */\r\n static readonly initialUrl = location.href;\r\n\r\n static getQueryParameters(): any {\r\n return document.location.search\r\n .replace(/(^\\?)/, '')\r\n .split('&')\r\n .map(function (n) { return n = n.split('='), this[n[0]] = n[1], this; }.bind({}))[0];\r\n }\r\n static striphost(location: Location): string {\r\n return location.href.replace(location.protocol + \"//\" + location.host, \"\")\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class LogService {\r\n\r\n debug(logObject?: any): void {\r\n console.debug(logObject);\r\n }\r\n\r\n info(logObject?: any): void {\r\n console.info(logObject);\r\n }\r\n\r\n warn(logObject?: any): void {\r\n console.warn(logObject);\r\n }\r\n\r\n error(logObject?: any): void {\r\n console.error(logObject);\r\n }\r\n\r\n fatal(logObject?: any): void {\r\n console.exception(logObject);\r\n }\r\n\r\n}","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class MessageService{\r\n\r\n info(message: string, title?: string, options?: any): any {\r\n }\r\n\r\n success(message: string, title?: string, options?: any): any {\r\n }\r\n\r\n warn(message: string, title?: string, options?: any): any {\r\n }\r\n\r\n error(message: string, title?: string, options?: any): any {\r\n }\r\n\r\n confirm(message: string, title?: string, callback?: (result: boolean) => void, options?: any): any {\r\n }\r\n\r\n\r\n}","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class FeatureCheckerService{}","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class MultiTenancyService {\r\n getTenantIdCookie(): string | string[] {\r\n return \"Default\";\r\n }\r\n isEnabled: boolean;\r\n tenantIdCookieName = 'Abp.TenantId'\r\n}","import { Injectable } from '@angular/core';\r\nimport { AppConsts } from '@shared/AppConsts';\r\nimport { AppSessionService } from '../session/app-session.service';\r\n\r\n@Injectable()\r\nexport class AppUrlService {\r\n\r\n static tenancyNamePlaceHolder = '{TENANCY_NAME}';\r\n\r\n constructor(\r\n private readonly _appSessionService: AppSessionService\r\n ) {\r\n\r\n }\r\n\r\n get appRootUrl(): string {\r\n if (this._appSessionService.tenant) {\r\n return this.getAppRootUrlOfTenant(this._appSessionService.tenant.tenancyName);\r\n } else {\r\n return this.getAppRootUrlOfTenant(null);\r\n }\r\n }\r\n\r\n /**\r\n * Returning url ends with '/'.\r\n */\r\n getAppRootUrlOfTenant(tenancyName?: string): string {\r\n let baseUrl = this.ensureEndsWith(AppConsts.appBaseUrl, '/');\r\n\r\n if (baseUrl.indexOf(AppUrlService.tenancyNamePlaceHolder) < 0) {\r\n return baseUrl;\r\n }\r\n\r\n if (baseUrl.indexOf(AppUrlService.tenancyNamePlaceHolder + '.') >= 0) {\r\n baseUrl = baseUrl.replace(AppUrlService.tenancyNamePlaceHolder + '.', AppUrlService.tenancyNamePlaceHolder);\r\n if (tenancyName) {\r\n tenancyName = tenancyName + '.';\r\n }\r\n }\r\n\r\n if (!tenancyName) {\r\n return baseUrl.replace(AppUrlService.tenancyNamePlaceHolder, '');\r\n }\r\n\r\n return baseUrl.replace(AppUrlService.tenancyNamePlaceHolder, tenancyName);\r\n }\r\n\r\n private ensureEndsWith(str: string, c: string) {\r\n if (str.charAt(str.length - 1) !== c) {\r\n str = str + c;\r\n }\r\n\r\n return str;\r\n }\r\n\r\n private removeFromEnd(str: string, c: string) {\r\n if (str.charAt(str.length - 1) === c) {\r\n str = str.substr(0, str.length - 1);\r\n }\r\n\r\n return str;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class NotifyService{}","/* tslint:disable */\n/* eslint-disable */\n//----------------------\n// \n// Generated using the NSwag toolchain v13.2.5.0 (NJsonSchema v10.1.7.0 (Newtonsoft.Json v11.0.0.0)) (http://NSwag.org)\n// \n//----------------------\n// ReSharper disable InconsistentNaming\n\nimport { mergeMap as _observableMergeMap, catchError as _observableCatch } from 'rxjs/operators';\nimport { Observable, throwError as _observableThrow, of as _observableOf } from 'rxjs';\nimport { Injectable, Inject, Optional, InjectionToken } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpResponse, HttpResponseBase } from '@angular/common/http';\n\nimport * as moment from 'moment';\n\nexport const API_BASE_URL = new InjectionToken('API_BASE_URL');\n\n@Injectable()\nexport class AccountServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n isTenantAvailable(body: IsTenantAvailableInput | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Account/IsTenantAvailable\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processIsTenantAvailable(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processIsTenantAvailable(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processIsTenantAvailable(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = IsTenantAvailableOutput.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n register(body: RegisterInput | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Account/Register\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processRegister(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processRegister(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processRegister(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = RegisterOutput.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n sendHelpDeskEmail(body: HelpDeskEmailRequest | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Account/SendHelpDeskEmail\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSendHelpDeskEmail(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSendHelpDeskEmail(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSendHelpDeskEmail(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class ServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n captcha(body: CaptchaModel | undefined): Observable {\n let url_ = this.baseUrl + \"/Captcha\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCaptcha(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCaptcha(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCaptcha(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class CertificationAnswerServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: CAnswerCreateInput | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationAnswerService/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CAnswerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationAnswerService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationAnswerService/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CAnswerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: CAnswerUpdateInput | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationAnswerService/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CAnswerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n save(body: CAnswerDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationAnswerService/Save\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSave(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSave(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSave(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CAnswerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param certificationId (optional) \n * @return Success\n */\n getAll(certificationId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationAnswerService/GetAll?\";\n if (certificationId === null)\n throw new Error(\"The parameter 'certificationId' cannot be null.\");\n else if (certificationId !== undefined)\n url_ += \"CertificationId=\" + encodeURIComponent(\"\" + certificationId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CAnswerDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class CertificationCategoryServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param certificationId (optional) \n * @return Success\n */\n getCategories(certificationId: number | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationCategoryService/GetCategories?\";\n if (certificationId !== undefined)\n url_ += \"certificationId=\" + encodeURIComponent(\"\" + certificationId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetCategories(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetCategories(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetCategories(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(CCategoryAnswerDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class CertificationCategorySummaryServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param certificationId (optional) \n * @return Success\n */\n getAllByCertificationId(certificationId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationCategorySummaryService/GetAllByCertificationId?\";\n if (certificationId === null)\n throw new Error(\"The parameter 'certificationId' cannot be null.\");\n else if (certificationId !== undefined)\n url_ += \"certificationId=\" + encodeURIComponent(\"\" + certificationId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByCertificationId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByCertificationId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByCertificationId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(CCertificationCategorySummaryDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @return Success\n */\n updateAllCertificationCategorySummaries(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationCategorySummaryService/UpdateAllCertificationCategorySummaries\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdateAllCertificationCategorySummaries(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdateAllCertificationCategorySummaries(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdateAllCertificationCategorySummaries(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class CertificationServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: CCertificationCreateInput | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationService/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CCertificationDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: CCertificationUpdateInput | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationService/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CCertificationDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationService/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CCertificationDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param isActive (optional) \n * @param farmerId (optional) \n * @return Success\n */\n getAll(isActive: boolean | null | undefined, farmerId: number | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationService/GetAll?\";\n if (isActive !== undefined)\n url_ += \"IsActive=\" + encodeURIComponent(\"\" + isActive) + \"&\"; \n if (farmerId !== undefined)\n url_ += \"FarmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CCertificationDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param certificationId (optional) \n * @return Success\n */\n getCertificationScores(certificationId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationService/GetCertificationScores?\";\n if (certificationId === null)\n throw new Error(\"The parameter 'certificationId' cannot be null.\");\n else if (certificationId !== undefined)\n url_ += \"certificationId=\" + encodeURIComponent(\"\" + certificationId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetCertificationScores(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetCertificationScores(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetCertificationScores(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CertificationScore.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n save(body: CCertificationDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationService/Save\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSave(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSave(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSave(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CCertificationDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n updateCertificationScores(farmerId: number | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CertificationService/UpdateCertificationScores?\";\n if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdateCertificationScores(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdateCertificationScores(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdateCertificationScores(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class ConfigurationServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n changeUiTheme(body: ChangeUiThemeInput | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Configuration/ChangeUiTheme\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processChangeUiTheme(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processChangeUiTheme(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processChangeUiTheme(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class CostShareServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CostShareService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(CostShareDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class CountyServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CountyService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(CountyDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class CropServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/CropService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(CropDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class DashboardServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getFarmerRegistration(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/DashboardService/GetFarmerRegistration\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetFarmerRegistration(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetFarmerRegistration(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetFarmerRegistration(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = FarmerRegistrationCompleteDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @return Success\n */\n getCertificationScore(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/DashboardService/GetCertificationScore\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetCertificationScore(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetCertificationScore(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetCertificationScore(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = CertificationScoreDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @return Success\n */\n export(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/DashboardService/Export\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"application/octet-stream\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processExport(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processExport(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processExport(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200 || status === 206) {\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n return _observableOf({ fileName: fileName, data: responseBlob, status: status, headers: _headers });\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class ExportServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n export(body: ExportRequestDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/ExportService/Export\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"application/octet-stream\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processExport(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processExport(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processExport(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200 || status === 206) {\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n return _observableOf({ fileName: fileName, data: responseBlob, status: status, headers: _headers });\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class FarmerCostShareServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n getAllByFarmerId(farmerId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCostShareService/GetAllByFarmerId?\";\n if (farmerId === null)\n throw new Error(\"The parameter 'farmerId' cannot be null.\");\n else if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByFarmerId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByFarmerId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByFarmerId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerCostShareDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n createOrUpdateAll(body: FarmerCostShare[] | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCostShareService/CreateOrUpdateAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreateOrUpdateAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreateOrUpdateAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreateOrUpdateAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerCostShareDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCostShareService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class FarmerCountyServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n getAllByFarmerId(farmerId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCountyService/GetAllByFarmerId?\";\n if (farmerId === null)\n throw new Error(\"The parameter 'farmerId' cannot be null.\");\n else if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByFarmerId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByFarmerId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByFarmerId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerCountyDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n createOrUpdateAll(body: FarmerCounty[] | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCountyService/CreateOrUpdateAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreateOrUpdateAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreateOrUpdateAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreateOrUpdateAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerCountyDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCountyService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class FarmerCropQuantityServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n getAllByFarmerId(farmerId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCropQuantityService/GetAllByFarmerId?\";\n if (farmerId === null)\n throw new Error(\"The parameter 'farmerId' cannot be null.\");\n else if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByFarmerId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByFarmerId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByFarmerId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerCropQuantityDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n createOrUpdateAll(body: FarmerCropQuantity[] | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCropQuantityService/CreateOrUpdateAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreateOrUpdateAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreateOrUpdateAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreateOrUpdateAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerCropQuantityDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerCropQuantityService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class FarmerManureStorageServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n getAllByFarmerId(farmerId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerManureStorageService/GetAllByFarmerId?\";\n if (farmerId === null)\n throw new Error(\"The parameter 'farmerId' cannot be null.\");\n else if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByFarmerId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByFarmerId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByFarmerId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerManureStorageDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: FarmerManureStorage | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerManureStorageService/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = FarmerManureStorageDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerManureStorageService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class FarmerNutrientRecommendationQuantityServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n getAllByFarmerId(farmerId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerNutrientRecommendationQuantityService/GetAllByFarmerId?\";\n if (farmerId === null)\n throw new Error(\"The parameter 'farmerId' cannot be null.\");\n else if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByFarmerId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByFarmerId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByFarmerId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerNutrientRecommendationQuantityDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n createOrUpdateAll(body: FarmerNutrientRecommendationQuantity[] | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerNutrientRecommendationQuantityService/CreateOrUpdateAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreateOrUpdateAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreateOrUpdateAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreateOrUpdateAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerNutrientRecommendationQuantityDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerNutrientRecommendationQuantityService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class FarmerNutrientSourceQuantityServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n getAllByFarmerId(farmerId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerNutrientSourceQuantityService/GetAllByFarmerId?\";\n if (farmerId === null)\n throw new Error(\"The parameter 'farmerId' cannot be null.\");\n else if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByFarmerId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByFarmerId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByFarmerId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerNutrientSourceQuantityDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n createOrUpdateAll(body: FarmerNutrientSourceQuantity[] | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerNutrientSourceQuantityService/CreateOrUpdateAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreateOrUpdateAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreateOrUpdateAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreateOrUpdateAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerNutrientSourceQuantityDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class FarmerServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param name (optional) \n * @param hasPassedCertification (optional) \n * @param isActive (optional) \n * @param watershedIds (optional) \n * @param countyIds (optional) \n * @param hasProfileMissingFields (optional) \n * @param hasProfileErrors (optional) \n * @param sorting (optional) \n * @param skipCount (optional) \n * @param maxResultCount (optional) \n * @return Success\n */\n getAll(name: string | null | undefined, hasPassedCertification: number | null | undefined, isActive: boolean | null | undefined, watershedIds: number[] | null | undefined, countyIds: number[] | null | undefined, hasProfileMissingFields: boolean | null | undefined, hasProfileErrors: boolean | null | undefined, sorting: string | null | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerService/GetAll?\";\n if (name !== undefined)\n url_ += \"Name=\" + encodeURIComponent(\"\" + name) + \"&\"; \n if (hasPassedCertification !== undefined)\n url_ += \"HasPassedCertification=\" + encodeURIComponent(\"\" + hasPassedCertification) + \"&\"; \n if (isActive !== undefined)\n url_ += \"IsActive=\" + encodeURIComponent(\"\" + isActive) + \"&\"; \n if (watershedIds !== undefined)\n watershedIds && watershedIds.forEach(item => { url_ += \"WatershedIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\n if (countyIds !== undefined)\n countyIds && countyIds.forEach(item => { url_ += \"CountyIds=\" + encodeURIComponent(\"\" + item) + \"&\"; });\n if (hasProfileMissingFields !== undefined)\n url_ += \"HasProfileMissingFields=\" + encodeURIComponent(\"\" + hasProfileMissingFields) + \"&\"; \n if (hasProfileErrors !== undefined)\n url_ += \"HasProfileErrors=\" + encodeURIComponent(\"\" + hasProfileErrors) + \"&\"; \n if (sorting !== undefined)\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\"; \n if (skipCount === null)\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\n else if (skipCount !== undefined)\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\"; \n if (maxResultCount === null)\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\n else if (maxResultCount !== undefined)\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = FarmerDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerService/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = FarmerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: FarmerUpdateDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerService/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = FarmerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: FarmerCreateDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerService/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = FarmerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param userId (optional) \n * @return Success\n */\n getFarmerIdByUserId(userId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerService/GetFarmerIdByUserId?\";\n if (userId === null)\n throw new Error(\"The parameter 'userId' cannot be null.\");\n else if (userId !== undefined)\n url_ += \"userId=\" + encodeURIComponent(\"\" + userId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetFarmerIdByUserId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetFarmerIdByUserId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetFarmerIdByUserId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n save(body: FarmerSaveDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerService/Save\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSave(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSave(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSave(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = FarmerSaveDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n updateFarmerProfileErrorFields(farmerId: number | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerService/UpdateFarmerProfileErrorFields?\";\n if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdateFarmerProfileErrorFields(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdateFarmerProfileErrorFields(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdateFarmerProfileErrorFields(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class FarmerWatershedServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param farmerId (optional) \n * @return Success\n */\n getAllByFarmerId(farmerId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerWatershedService/GetAllByFarmerId?\";\n if (farmerId === null)\n throw new Error(\"The parameter 'farmerId' cannot be null.\");\n else if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByFarmerId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByFarmerId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByFarmerId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerWatershedDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n createOrUpdateAll(body: FarmerWatershed[] | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerWatershedService/CreateOrUpdateAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreateOrUpdateAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreateOrUpdateAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreateOrUpdateAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(FarmerWatershedDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/FarmerWatershedService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class ManureStorageDurationServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/ManureStorageDurationService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(ManureStorageDurationDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class ManureStorageSourceServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/ManureStorageSourceService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(ManureStorageSourceDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class ManureStorageTypeServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/ManureStorageTypeService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(ManureStorageTypeDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class NMPTypeServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/NMPTypeService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(NMPTypeDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class NotificationServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param emailAddress (optional) \n * @return Success\n */\n sendNotification(emailAddress: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/NotificationService/SendNotification?\";\n if (emailAddress !== undefined)\n url_ += \"emailAddress=\" + encodeURIComponent(\"\" + emailAddress) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSendNotification(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSendNotification(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSendNotification(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class NutrientRecommendationServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/NutrientRecommendationService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(NutrientRecommendationDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class NutrientSourceServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/NutrientSourceService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(NutrientSourceDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class PasswordResetServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param userName (optional) \n * @return Success\n */\n canFindUser(userName: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/PasswordResetService/CanFindUser?\";\n if (userName !== undefined)\n url_ += \"userName=\" + encodeURIComponent(\"\" + userName) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCanFindUser(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCanFindUser(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCanFindUser(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param userName (optional) \n * @param sendPasswordResetLink (optional) \n * @return Success\n */\n create(userName: string | null | undefined, sendPasswordResetLink: boolean | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/PasswordResetService/Create?\";\n if (userName !== undefined)\n url_ += \"userName=\" + encodeURIComponent(\"\" + userName) + \"&\"; \n if (sendPasswordResetLink === null)\n throw new Error(\"The parameter 'sendPasswordResetLink' cannot be null.\");\n else if (sendPasswordResetLink !== undefined)\n url_ += \"sendPasswordResetLink=\" + encodeURIComponent(\"\" + sendPasswordResetLink) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param token (optional) \n * @return Success\n */\n getByToken(token: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/PasswordResetService/GetByToken?\";\n if (token !== undefined)\n url_ += \"token=\" + encodeURIComponent(\"\" + token) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetByToken(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetByToken(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetByToken(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = PasswordResetTokenDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n resetPassword(body: PasswordResetRequestDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/PasswordResetService/ResetPassword\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processResetPassword(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processResetPassword(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processResetPassword(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class PrintServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n farmer(farmerId: number): Observable {\n let url_ = this.baseUrl + \"/Print/farmer/{farmerId}\";\n if (farmerId === undefined || farmerId === null)\n throw new Error(\"The parameter 'farmerId' must be defined.\");\n url_ = url_.replace(\"{farmerId}\", encodeURIComponent(\"\" + farmerId)); \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processFarmer(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processFarmer(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processFarmer(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @return Success\n */\n assessment(assessmentId: number): Observable {\n let url_ = this.baseUrl + \"/Print/assessment/{assessmentId}\";\n if (assessmentId === undefined || assessmentId === null)\n throw new Error(\"The parameter 'assessmentId' must be defined.\");\n url_ = url_.replace(\"{assessmentId}\", encodeURIComponent(\"\" + assessmentId)); \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processAssessment(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processAssessment(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processAssessment(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class RegistrationTokenServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param emailAddress (optional) \n * @return Success\n */\n create(emailAddress: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/RegistrationTokenService/Create?\";\n if (emailAddress !== undefined)\n url_ += \"emailAddress=\" + encodeURIComponent(\"\" + emailAddress) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param token (optional) \n * @return Success\n */\n getByToken(token: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/RegistrationTokenService/GetByToken?\";\n if (token !== undefined)\n url_ += \"token=\" + encodeURIComponent(\"\" + token) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetByToken(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetByToken(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetByToken(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = RegistrationTokenDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param token (optional) \n * @return Success\n */\n expireToken(token: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/RegistrationTokenService/ExpireToken?\";\n if (token !== undefined)\n url_ += \"token=\" + encodeURIComponent(\"\" + token) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processExpireToken(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processExpireToken(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processExpireToken(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class RoleServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: CreateRoleDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Role/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = RoleDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param permission (optional) \n * @return Success\n */\n getRoles(permission: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Role/GetRoles?\";\n if (permission !== undefined)\n url_ += \"Permission=\" + encodeURIComponent(\"\" + permission) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetRoles(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetRoles(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetRoles(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = RoleListDtoListResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: RoleDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Role/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = RoleDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Role/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @return Success\n */\n getAllPermissions(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Role/GetAllPermissions\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllPermissions(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllPermissions(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllPermissions(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = PermissionDtoListResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n getRoleForEdit(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Role/GetRoleForEdit?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetRoleForEdit(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetRoleForEdit(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetRoleForEdit(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = GetRoleForEditOutput.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Role/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = RoleDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param keyword (optional) \n * @param skipCount (optional) \n * @param maxResultCount (optional) \n * @return Success\n */\n getAll(keyword: string | null | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Role/GetAll?\";\n if (keyword !== undefined)\n url_ += \"Keyword=\" + encodeURIComponent(\"\" + keyword) + \"&\"; \n if (skipCount === null)\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\n else if (skipCount !== undefined)\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\"; \n if (maxResultCount === null)\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\n else if (maxResultCount !== undefined)\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = RoleDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class SecurityQuestionServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/SecurityQuestionService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(SecurityQuestionDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class SessionServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getCurrentLoginInformations(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Session/GetCurrentLoginInformations\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetCurrentLoginInformations(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetCurrentLoginInformations(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetCurrentLoginInformations(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = GetCurrentLoginInformationsOutput.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class TenantServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: CreateTenantDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Tenant/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = TenantDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Tenant/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Tenant/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = TenantDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param keyword (optional) \n * @param isActive (optional) \n * @param skipCount (optional) \n * @param maxResultCount (optional) \n * @return Success\n */\n getAll(keyword: string | null | undefined, isActive: boolean | null | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Tenant/GetAll?\";\n if (keyword !== undefined)\n url_ += \"Keyword=\" + encodeURIComponent(\"\" + keyword) + \"&\"; \n if (isActive !== undefined)\n url_ += \"IsActive=\" + encodeURIComponent(\"\" + isActive) + \"&\"; \n if (skipCount === null)\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\n else if (skipCount !== undefined)\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\"; \n if (maxResultCount === null)\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\n else if (maxResultCount !== undefined)\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = TenantDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: TenantDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/Tenant/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = TenantDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class TokenAuthServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n authenticate(body: AuthenticateModel | undefined): Observable {\n let url_ = this.baseUrl + \"/api/TokenAuth/Authenticate\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processAuthenticate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processAuthenticate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processAuthenticate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = AuthenticateResultModel.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @return Success\n */\n getExternalAuthenticationProviders(): Observable {\n let url_ = this.baseUrl + \"/api/TokenAuth/GetExternalAuthenticationProviders\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetExternalAuthenticationProviders(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetExternalAuthenticationProviders(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetExternalAuthenticationProviders(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(ExternalLoginProviderInfoModel.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n externalAuthenticate(body: ExternalAuthenticateModel | undefined): Observable {\n let url_ = this.baseUrl + \"/api/TokenAuth/ExternalAuthenticate\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processExternalAuthenticate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processExternalAuthenticate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processExternalAuthenticate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = ExternalAuthenticateResultModel.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class UserServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: CreateUserDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = UserDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param userId (optional) \n * @param farmerId (optional) \n * @return Success\n */\n sendConfirmationEmail(userId: number | undefined, farmerId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/SendConfirmationEmail?\";\n if (userId === null)\n throw new Error(\"The parameter 'userId' cannot be null.\");\n else if (userId !== undefined)\n url_ += \"userId=\" + encodeURIComponent(\"\" + userId) + \"&\"; \n if (farmerId === null)\n throw new Error(\"The parameter 'farmerId' cannot be null.\");\n else if (farmerId !== undefined)\n url_ += \"farmerId=\" + encodeURIComponent(\"\" + farmerId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSendConfirmationEmail(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSendConfirmationEmail(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSendConfirmationEmail(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: UserDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = UserDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = UserDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @return Success\n */\n getRoles(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/GetRoles\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetRoles(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetRoles(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetRoles(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = RoleDtoListResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n changeLanguage(body: ChangeUserLanguageDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/ChangeLanguage\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processChangeLanguage(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processChangeLanguage(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processChangeLanguage(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param emailAddress (optional) \n * @return Success\n */\n requestDeletePrivateData(emailAddress: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/RequestDeletePrivateData?\";\n if (emailAddress !== undefined)\n url_ += \"emailAddress=\" + encodeURIComponent(\"\" + emailAddress) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processRequestDeletePrivateData(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processRequestDeletePrivateData(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processRequestDeletePrivateData(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n changePassword(body: ChangePasswordDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/ChangePassword\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processChangePassword(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processChangePassword(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processChangePassword(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n resetPassword(body: ResetPasswordDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/ResetPassword\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processResetPassword(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processResetPassword(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processResetPassword(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param name (optional) \n * @return Success\n */\n doesUserExist(name: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/DoesUserExist?\";\n if (name !== undefined)\n url_ += \"name=\" + encodeURIComponent(\"\" + name) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDoesUserExist(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDoesUserExist(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDoesUserExist(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param keyword (optional) \n * @param isActive (optional) \n * @param sorting (optional) \n * @param skipCount (optional) \n * @param maxResultCount (optional) \n * @return Success\n */\n getAll(keyword: string | null | undefined, isActive: boolean | null | undefined, sorting: string | null | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/User/GetAll?\";\n if (keyword !== undefined)\n url_ += \"Keyword=\" + encodeURIComponent(\"\" + keyword) + \"&\"; \n if (isActive !== undefined)\n url_ += \"IsActive=\" + encodeURIComponent(\"\" + isActive) + \"&\"; \n if (sorting !== undefined)\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\"; \n if (skipCount === null)\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\n else if (skipCount !== undefined)\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\"; \n if (maxResultCount === null)\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\n else if (maxResultCount !== undefined)\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = UserDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class UserSecurityQuestionAnswerServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n addAll(body: UserSecurityQuestionAnswer[] | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/UserSecurityQuestionAnswerService/AddAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processAddAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processAddAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processAddAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param emailOrUserName (optional) \n * @param questionId (optional) \n * @param answer (optional) \n * @return Success\n */\n checkIsAnswerCorrect(emailOrUserName: string | null | undefined, questionId: number | undefined, answer: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/UserSecurityQuestionAnswerService/CheckIsAnswerCorrect?\";\n if (emailOrUserName !== undefined)\n url_ += \"emailOrUserName=\" + encodeURIComponent(\"\" + emailOrUserName) + \"&\"; \n if (questionId === null)\n throw new Error(\"The parameter 'questionId' cannot be null.\");\n else if (questionId !== undefined)\n url_ += \"questionId=\" + encodeURIComponent(\"\" + questionId) + \"&\"; \n if (answer !== undefined)\n url_ += \"answer=\" + encodeURIComponent(\"\" + answer) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCheckIsAnswerCorrect(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCheckIsAnswerCorrect(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCheckIsAnswerCorrect(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = resultData200 !== undefined ? resultData200 : null;\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param emailOrUserName (optional) \n * @return Success\n */\n getSecurityQuestion(emailOrUserName: string | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/UserSecurityQuestionAnswerService/GetSecurityQuestion?\";\n if (emailOrUserName !== undefined)\n url_ += \"emailOrUserName=\" + encodeURIComponent(\"\" + emailOrUserName) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetSecurityQuestion(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetSecurityQuestion(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetSecurityQuestion(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = SecurityQuestion.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class VVerificationQuestionAnswerServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param verificationId (optional) \n * @return Success\n */\n getAllByVerificationId(verificationId: number | null | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionAnswerService/GetAllByVerificationId?\";\n if (verificationId !== undefined)\n url_ += \"verificationId=\" + encodeURIComponent(\"\" + verificationId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllByVerificationId(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllByVerificationId(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllByVerificationId(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(VVerificationQuestionWithAnswersGroupDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: VVerificationQuestionAnswerCreateDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionAnswerService/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionAnswerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: VVerificationQuestionAnswerUpdateDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionAnswerService/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionAnswerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n save(body: VVerificationQuestionAnswerDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionAnswerService/Save\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSave(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSave(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSave(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionAnswerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionAnswerService/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionAnswerDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param verificationId (optional) \n * @return Success\n */\n getAll(verificationId: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionAnswerService/GetAll?\";\n if (verificationId === null)\n throw new Error(\"The parameter 'verificationId' cannot be null.\");\n else if (verificationId !== undefined)\n url_ += \"VerificationId=\" + encodeURIComponent(\"\" + verificationId) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionAnswerDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionAnswerService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class VVerificationQuestionNoteServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: VVerificationQuestionNoteCreateDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionNoteService/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionNoteDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: VVerificationQuestionNoteUpdateDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionNoteService/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionNoteDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n save(body: VVerificationQuestionNoteDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionNoteService/Save\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSave(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSave(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSave(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionNoteDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionNoteService/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionNoteDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param sorting (optional) \n * @param skipCount (optional) \n * @param maxResultCount (optional) \n * @return Success\n */\n getAll(sorting: string | null | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionNoteService/GetAll?\";\n if (sorting !== undefined)\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\"; \n if (skipCount === null)\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\n else if (skipCount !== undefined)\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\"; \n if (maxResultCount === null)\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\n else if (maxResultCount !== undefined)\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationQuestionNoteDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationQuestionNoteService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class VVerificationServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @param countyId (optional) \n * @param sorting (optional) \n * @param skipCount (optional) \n * @param maxResultCount (optional) \n * @return Success\n */\n getAll(countyId: number | null | undefined, sorting: string | null | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationService/GetAll?\";\n if (countyId !== undefined)\n url_ += \"CountyId=\" + encodeURIComponent(\"\" + countyId) + \"&\"; \n if (sorting !== undefined)\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\"; \n if (skipCount === null)\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\n else if (skipCount !== undefined)\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\"; \n if (maxResultCount === null)\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\n else if (maxResultCount !== undefined)\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationDtoPagedResultDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param countyId (optional) \n * @param sorting (optional) \n * @param skipCount (optional) \n * @param maxResultCount (optional) \n * @return Success\n */\n getAllWithQuestionAnswers(countyId: number | null | undefined, sorting: string | null | undefined, skipCount: number | undefined, maxResultCount: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationService/GetAllWithQuestionAnswers?\";\n if (countyId !== undefined)\n url_ += \"CountyId=\" + encodeURIComponent(\"\" + countyId) + \"&\"; \n if (sorting !== undefined)\n url_ += \"Sorting=\" + encodeURIComponent(\"\" + sorting) + \"&\"; \n if (skipCount === null)\n throw new Error(\"The parameter 'skipCount' cannot be null.\");\n else if (skipCount !== undefined)\n url_ += \"SkipCount=\" + encodeURIComponent(\"\" + skipCount) + \"&\"; \n if (maxResultCount === null)\n throw new Error(\"The parameter 'maxResultCount' cannot be null.\");\n else if (maxResultCount !== undefined)\n url_ += \"MaxResultCount=\" + encodeURIComponent(\"\" + maxResultCount) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAllWithQuestionAnswers(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAllWithQuestionAnswers(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAllWithQuestionAnswers(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = GetAllWithQuestionAnswersDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n get(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationService/Get?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGet(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGet(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGet(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n update(body: VVerificationUpdateDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationService/Update\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processUpdate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processUpdate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processUpdate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n create(body: VVerificationCreateDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationService/Create\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processCreate(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processCreate(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processCreate(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param body (optional) \n * @return Success\n */\n save(body: VVerificationDto | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationService/Save\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(body);\n\n let options_ : any = {\n body: content_,\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Content-Type\": \"application/json-patch+json\", \n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processSave(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processSave(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processSave(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n result200 = VVerificationDto.fromJS(resultData200);\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n\n /**\n * @param id (optional) \n * @return Success\n */\n delete(id: number | undefined): Observable {\n let url_ = this.baseUrl + \"/api/services/app/VVerificationService/Delete?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\"; \n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n })\n };\n\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processDelete(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processDelete(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processDelete(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return _observableOf(null);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\n@Injectable()\nexport class WatershedServiceServiceProxy {\n private http: HttpClient;\n private baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\n this.http = http;\n this.baseUrl = baseUrl ? baseUrl : \"\";\n }\n\n /**\n * @return Success\n */\n getAll(): Observable {\n let url_ = this.baseUrl + \"/api/services/app/WatershedService/GetAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_ : any = {\n observe: \"response\",\n responseType: \"blob\",\t\t\t\n headers: new HttpHeaders({\n \"Accept\": \"text/plain\"\n })\n };\n\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\n return this.processGetAll(response_);\n })).pipe(_observableCatch((response_: any) => {\n if (response_ instanceof HttpResponseBase) {\n try {\n return this.processGetAll(response_);\n } catch (e) {\n return >_observableThrow(e);\n }\n } else\n return >_observableThrow(response_);\n }));\n }\n\n protected processGetAll(response: HttpResponseBase): Observable {\n const status = response.status;\n const responseBlob = \n response instanceof HttpResponse ? response.body : \n (response).error instanceof Blob ? (response).error : undefined;\n\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};\n if (status === 200) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n let result200: any = null;\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200.push(WatershedDto.fromJS(item));\n }\n return _observableOf(result200);\n }));\n } else if (status !== 200 && status !== 204) {\n return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => {\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }));\n }\n return _observableOf(null);\n }\n}\n\nexport class IsTenantAvailableInput implements IIsTenantAvailableInput {\n tenancyName: string | undefined;\n\n constructor(data?: IIsTenantAvailableInput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenancyName = _data[\"tenancyName\"];\n }\n }\n\n static fromJS(data: any): IsTenantAvailableInput {\n data = typeof data === 'object' ? data : {};\n let result = new IsTenantAvailableInput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenancyName\"] = this.tenancyName;\n return data; \n }\n\n clone(): IsTenantAvailableInput {\n const json = this.toJSON();\n let result = new IsTenantAvailableInput();\n result.init(json);\n return result;\n }\n}\n\nexport interface IIsTenantAvailableInput {\n tenancyName: string | undefined;\n}\n\nexport enum TenantAvailabilityState {\n _1 = 1,\n _2 = 2,\n _3 = 3,\n}\n\nexport class IsTenantAvailableOutput implements IIsTenantAvailableOutput {\n state: TenantAvailabilityState;\n tenantId: number | undefined;\n\n constructor(data?: IIsTenantAvailableOutput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.state = _data[\"state\"];\n this.tenantId = _data[\"tenantId\"];\n }\n }\n\n static fromJS(data: any): IsTenantAvailableOutput {\n data = typeof data === 'object' ? data : {};\n let result = new IsTenantAvailableOutput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"state\"] = this.state;\n data[\"tenantId\"] = this.tenantId;\n return data; \n }\n\n clone(): IsTenantAvailableOutput {\n const json = this.toJSON();\n let result = new IsTenantAvailableOutput();\n result.init(json);\n return result;\n }\n}\n\nexport interface IIsTenantAvailableOutput {\n state: TenantAvailabilityState;\n tenantId: number | undefined;\n}\n\nexport class RegisterInput implements IRegisterInput {\n name: string | undefined;\n surname: string | undefined;\n userName: string | undefined;\n emailAddress: string | undefined;\n password: string | undefined;\n captchaResponse: string | undefined;\n\n constructor(data?: IRegisterInput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.surname = _data[\"surname\"];\n this.userName = _data[\"userName\"];\n this.emailAddress = _data[\"emailAddress\"];\n this.password = _data[\"password\"];\n this.captchaResponse = _data[\"captchaResponse\"];\n }\n }\n\n static fromJS(data: any): RegisterInput {\n data = typeof data === 'object' ? data : {};\n let result = new RegisterInput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"surname\"] = this.surname;\n data[\"userName\"] = this.userName;\n data[\"emailAddress\"] = this.emailAddress;\n data[\"password\"] = this.password;\n data[\"captchaResponse\"] = this.captchaResponse;\n return data; \n }\n\n clone(): RegisterInput {\n const json = this.toJSON();\n let result = new RegisterInput();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRegisterInput {\n name: string | undefined;\n surname: string | undefined;\n userName: string | undefined;\n emailAddress: string | undefined;\n password: string | undefined;\n captchaResponse: string | undefined;\n}\n\nexport class RegisterOutput implements IRegisterOutput {\n canLogin: boolean;\n\n constructor(data?: IRegisterOutput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.canLogin = _data[\"canLogin\"];\n }\n }\n\n static fromJS(data: any): RegisterOutput {\n data = typeof data === 'object' ? data : {};\n let result = new RegisterOutput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"canLogin\"] = this.canLogin;\n return data; \n }\n\n clone(): RegisterOutput {\n const json = this.toJSON();\n let result = new RegisterOutput();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRegisterOutput {\n canLogin: boolean;\n}\n\nexport class HelpDeskEmailRequest implements IHelpDeskEmailRequest {\n subject: string | undefined;\n message: string | undefined;\n\n constructor(data?: IHelpDeskEmailRequest) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.subject = _data[\"subject\"];\n this.message = _data[\"message\"];\n }\n }\n\n static fromJS(data: any): HelpDeskEmailRequest {\n data = typeof data === 'object' ? data : {};\n let result = new HelpDeskEmailRequest();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"subject\"] = this.subject;\n data[\"message\"] = this.message;\n return data; \n }\n\n clone(): HelpDeskEmailRequest {\n const json = this.toJSON();\n let result = new HelpDeskEmailRequest();\n result.init(json);\n return result;\n }\n}\n\nexport interface IHelpDeskEmailRequest {\n subject: string | undefined;\n message: string | undefined;\n}\n\nexport class CaptchaModel implements ICaptchaModel {\n captchaId: string | undefined;\n userEnteredCaptchaCode: string | undefined;\n\n constructor(data?: ICaptchaModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.captchaId = _data[\"captchaId\"];\n this.userEnteredCaptchaCode = _data[\"userEnteredCaptchaCode\"];\n }\n }\n\n static fromJS(data: any): CaptchaModel {\n data = typeof data === 'object' ? data : {};\n let result = new CaptchaModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"captchaId\"] = this.captchaId;\n data[\"userEnteredCaptchaCode\"] = this.userEnteredCaptchaCode;\n return data; \n }\n\n clone(): CaptchaModel {\n const json = this.toJSON();\n let result = new CaptchaModel();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICaptchaModel {\n captchaId: string | undefined;\n userEnteredCaptchaCode: string | undefined;\n}\n\nexport enum CAnswerLevelEnum {\n _0 = 0,\n _1 = 1,\n}\n\nexport class CAnswerCreateInput implements ICAnswerCreateInput {\n categoryId: number;\n answer: string | undefined;\n objectId: number | undefined;\n answerLevelId: CAnswerLevelEnum;\n certificationId: number;\n\n constructor(data?: ICAnswerCreateInput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.categoryId = _data[\"categoryId\"];\n this.answer = _data[\"answer\"];\n this.objectId = _data[\"objectId\"];\n this.answerLevelId = _data[\"answerLevelId\"];\n this.certificationId = _data[\"certificationId\"];\n }\n }\n\n static fromJS(data: any): CAnswerCreateInput {\n data = typeof data === 'object' ? data : {};\n let result = new CAnswerCreateInput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"categoryId\"] = this.categoryId;\n data[\"answer\"] = this.answer;\n data[\"objectId\"] = this.objectId;\n data[\"answerLevelId\"] = this.answerLevelId;\n data[\"certificationId\"] = this.certificationId;\n return data; \n }\n\n clone(): CAnswerCreateInput {\n const json = this.toJSON();\n let result = new CAnswerCreateInput();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICAnswerCreateInput {\n categoryId: number;\n answer: string | undefined;\n objectId: number | undefined;\n answerLevelId: CAnswerLevelEnum;\n certificationId: number;\n}\n\nexport class CAnswerDto implements ICAnswerDto {\n categoryId: number;\n answer: string | undefined;\n objectId: number | undefined;\n answerLevelId: CAnswerLevelEnum;\n certificationId: number;\n isDeleted: boolean;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n\n constructor(data?: ICAnswerDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.categoryId = _data[\"categoryId\"];\n this.answer = _data[\"answer\"];\n this.objectId = _data[\"objectId\"];\n this.answerLevelId = _data[\"answerLevelId\"];\n this.certificationId = _data[\"certificationId\"];\n this.isDeleted = _data[\"isDeleted\"];\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): CAnswerDto {\n data = typeof data === 'object' ? data : {};\n let result = new CAnswerDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"categoryId\"] = this.categoryId;\n data[\"answer\"] = this.answer;\n data[\"objectId\"] = this.objectId;\n data[\"answerLevelId\"] = this.answerLevelId;\n data[\"certificationId\"] = this.certificationId;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): CAnswerDto {\n const json = this.toJSON();\n let result = new CAnswerDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICAnswerDto {\n categoryId: number;\n answer: string | undefined;\n objectId: number | undefined;\n answerLevelId: CAnswerLevelEnum;\n certificationId: number;\n isDeleted: boolean;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n}\n\nexport class CAnswerUpdateInput implements ICAnswerUpdateInput {\n id: number;\n categoryId: number;\n answer: string | undefined;\n objectId: number | undefined;\n answerLevelId: CAnswerLevelEnum;\n certificationId: number;\n\n constructor(data?: ICAnswerUpdateInput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.categoryId = _data[\"categoryId\"];\n this.answer = _data[\"answer\"];\n this.objectId = _data[\"objectId\"];\n this.answerLevelId = _data[\"answerLevelId\"];\n this.certificationId = _data[\"certificationId\"];\n }\n }\n\n static fromJS(data: any): CAnswerUpdateInput {\n data = typeof data === 'object' ? data : {};\n let result = new CAnswerUpdateInput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"categoryId\"] = this.categoryId;\n data[\"answer\"] = this.answer;\n data[\"objectId\"] = this.objectId;\n data[\"answerLevelId\"] = this.answerLevelId;\n data[\"certificationId\"] = this.certificationId;\n return data; \n }\n\n clone(): CAnswerUpdateInput {\n const json = this.toJSON();\n let result = new CAnswerUpdateInput();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICAnswerUpdateInput {\n id: number;\n categoryId: number;\n answer: string | undefined;\n objectId: number | undefined;\n answerLevelId: CAnswerLevelEnum;\n certificationId: number;\n}\n\nexport class CAnswerDtoPagedResultDto implements ICAnswerDtoPagedResultDto {\n totalCount: number;\n items: CAnswerDto[] | undefined;\n\n constructor(data?: ICAnswerDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(CAnswerDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): CAnswerDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new CAnswerDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): CAnswerDtoPagedResultDto {\n const json = this.toJSON();\n let result = new CAnswerDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICAnswerDtoPagedResultDto {\n totalCount: number;\n items: CAnswerDto[] | undefined;\n}\n\nexport enum CBehaviorTypeEnum {\n _0 = 0,\n _1 = 1,\n _2 = 2,\n _3 = 3,\n}\n\nexport enum CAnswerTypeEnum {\n _0 = 0,\n _1 = 1,\n _2 = 2,\n}\n\nexport class CCategoryAnswerDto implements ICCategoryAnswerDto {\n id: number;\n label: string | undefined;\n isActive: boolean;\n parentId: number | undefined;\n behaviorTypeId: CBehaviorTypeEnum;\n answerTypeId: CAnswerTypeEnum;\n children: CCategoryAnswerDto[] | undefined;\n answers: Answers | undefined;\n score: number;\n order: number;\n collapsed: boolean;\n\n constructor(data?: ICCategoryAnswerDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.label = _data[\"label\"];\n this.isActive = _data[\"isActive\"];\n this.parentId = _data[\"parentId\"];\n this.behaviorTypeId = _data[\"behaviorTypeId\"];\n this.answerTypeId = _data[\"answerTypeId\"];\n if (Array.isArray(_data[\"children\"])) {\n this.children = [] as any;\n for (let item of _data[\"children\"])\n this.children.push(CCategoryAnswerDto.fromJS(item));\n }\n this.answers = _data[\"answers\"] ? Answers.fromJS(_data[\"answers\"]) : undefined;\n this.score = _data[\"score\"];\n this.order = _data[\"order\"];\n this.collapsed = _data[\"collapsed\"];\n }\n }\n\n static fromJS(data: any): CCategoryAnswerDto {\n data = typeof data === 'object' ? data : {};\n let result = new CCategoryAnswerDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"label\"] = this.label;\n data[\"isActive\"] = this.isActive;\n data[\"parentId\"] = this.parentId;\n data[\"behaviorTypeId\"] = this.behaviorTypeId;\n data[\"answerTypeId\"] = this.answerTypeId;\n if (Array.isArray(this.children)) {\n data[\"children\"] = [];\n for (let item of this.children)\n data[\"children\"].push(item.toJSON());\n }\n data[\"answers\"] = this.answers ? this.answers.toJSON() : undefined;\n data[\"score\"] = this.score;\n data[\"order\"] = this.order;\n data[\"collapsed\"] = this.collapsed;\n return data; \n }\n\n clone(): CCategoryAnswerDto {\n const json = this.toJSON();\n let result = new CCategoryAnswerDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICCategoryAnswerDto {\n id: number;\n label: string | undefined;\n isActive: boolean;\n parentId: number | undefined;\n behaviorTypeId: CBehaviorTypeEnum;\n answerTypeId: CAnswerTypeEnum;\n children: CCategoryAnswerDto[] | undefined;\n answers: Answers | undefined;\n score: number;\n order: number;\n collapsed: boolean;\n}\n\nexport class CCertificationCategorySummaryDto implements ICCertificationCategorySummaryDto {\n certificationId: number | undefined;\n categoryId: number | undefined;\n categoryLabel: string | undefined;\n score: number | undefined;\n id: number;\n\n constructor(data?: ICCertificationCategorySummaryDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.certificationId = _data[\"certificationId\"];\n this.categoryId = _data[\"categoryId\"];\n this.categoryLabel = _data[\"categoryLabel\"];\n this.score = _data[\"score\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): CCertificationCategorySummaryDto {\n data = typeof data === 'object' ? data : {};\n let result = new CCertificationCategorySummaryDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"certificationId\"] = this.certificationId;\n data[\"categoryId\"] = this.categoryId;\n data[\"categoryLabel\"] = this.categoryLabel;\n data[\"score\"] = this.score;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): CCertificationCategorySummaryDto {\n const json = this.toJSON();\n let result = new CCertificationCategorySummaryDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICCertificationCategorySummaryDto {\n certificationId: number | undefined;\n categoryId: number | undefined;\n categoryLabel: string | undefined;\n score: number | undefined;\n id: number;\n}\n\nexport class CCertificationCreateInput implements ICCertificationCreateInput {\n farmerId: number;\n year: number;\n\n constructor(data?: ICCertificationCreateInput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.year = _data[\"year\"];\n }\n }\n\n static fromJS(data: any): CCertificationCreateInput {\n data = typeof data === 'object' ? data : {};\n let result = new CCertificationCreateInput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"year\"] = this.year;\n return data; \n }\n\n clone(): CCertificationCreateInput {\n const json = this.toJSON();\n let result = new CCertificationCreateInput();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICCertificationCreateInput {\n farmerId: number;\n year: number;\n}\n\nexport enum CCertificationStatusEnum {\n _0 = 0,\n _1 = 1,\n _2 = 2,\n}\n\nexport class CCertificationDto implements ICCertificationDto {\n farmerId: number;\n statusId: CCertificationStatusEnum;\n year: number;\n isActive: boolean;\n score: number | undefined;\n isPassing: boolean | undefined;\n completionMessage: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModificationTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n id: number;\n\n constructor(data?: ICCertificationDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.statusId = _data[\"statusId\"];\n this.year = _data[\"year\"];\n this.isActive = _data[\"isActive\"];\n this.score = _data[\"score\"];\n this.isPassing = _data[\"isPassing\"];\n this.completionMessage = _data[\"completionMessage\"];\n this.ownedAcres = _data[\"ownedAcres\"];\n this.rentedAcres = _data[\"rentedAcres\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.isDeleted = _data[\"isDeleted\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): CCertificationDto {\n data = typeof data === 'object' ? data : {};\n let result = new CCertificationDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"statusId\"] = this.statusId;\n data[\"year\"] = this.year;\n data[\"isActive\"] = this.isActive;\n data[\"score\"] = this.score;\n data[\"isPassing\"] = this.isPassing;\n data[\"completionMessage\"] = this.completionMessage;\n data[\"ownedAcres\"] = this.ownedAcres;\n data[\"rentedAcres\"] = this.rentedAcres;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): CCertificationDto {\n const json = this.toJSON();\n let result = new CCertificationDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICCertificationDto {\n farmerId: number;\n statusId: CCertificationStatusEnum;\n year: number;\n isActive: boolean;\n score: number | undefined;\n isPassing: boolean | undefined;\n completionMessage: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModificationTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n id: number;\n}\n\nexport class CCertificationUpdateInput implements ICCertificationUpdateInput {\n id: number;\n statusId: CCertificationStatusEnum;\n score: number | undefined;\n isPassing: boolean | undefined;\n completionMessage: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n farmerId: number;\n year: number;\n\n constructor(data?: ICCertificationUpdateInput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.statusId = _data[\"statusId\"];\n this.score = _data[\"score\"];\n this.isPassing = _data[\"isPassing\"];\n this.completionMessage = _data[\"completionMessage\"];\n this.ownedAcres = _data[\"ownedAcres\"];\n this.rentedAcres = _data[\"rentedAcres\"];\n this.farmerId = _data[\"farmerId\"];\n this.year = _data[\"year\"];\n }\n }\n\n static fromJS(data: any): CCertificationUpdateInput {\n data = typeof data === 'object' ? data : {};\n let result = new CCertificationUpdateInput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"statusId\"] = this.statusId;\n data[\"score\"] = this.score;\n data[\"isPassing\"] = this.isPassing;\n data[\"completionMessage\"] = this.completionMessage;\n data[\"ownedAcres\"] = this.ownedAcres;\n data[\"rentedAcres\"] = this.rentedAcres;\n data[\"farmerId\"] = this.farmerId;\n data[\"year\"] = this.year;\n return data; \n }\n\n clone(): CCertificationUpdateInput {\n const json = this.toJSON();\n let result = new CCertificationUpdateInput();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICCertificationUpdateInput {\n id: number;\n statusId: CCertificationStatusEnum;\n score: number | undefined;\n isPassing: boolean | undefined;\n completionMessage: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n farmerId: number;\n year: number;\n}\n\nexport class CCertificationDtoPagedResultDto implements ICCertificationDtoPagedResultDto {\n totalCount: number;\n items: CCertificationDto[] | undefined;\n\n constructor(data?: ICCertificationDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(CCertificationDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): CCertificationDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new CCertificationDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): CCertificationDtoPagedResultDto {\n const json = this.toJSON();\n let result = new CCertificationDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICCertificationDtoPagedResultDto {\n totalCount: number;\n items: CCertificationDto[] | undefined;\n}\n\nexport class SoilTestingFrequencyScoring implements ISoilTestingFrequencyScoring {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n\n constructor(data?: ISoilTestingFrequencyScoring) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n }\n }\n\n static fromJS(data: any): SoilTestingFrequencyScoring {\n data = typeof data === 'object' ? data : {};\n let result = new SoilTestingFrequencyScoring();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n return data; \n }\n\n clone(): SoilTestingFrequencyScoring {\n const json = this.toJSON();\n let result = new SoilTestingFrequencyScoring();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISoilTestingFrequencyScoring {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n}\n\nexport class SoilTestingFrequency implements ISoilTestingFrequency {\n readonly label: string | undefined;\n points: number;\n percentageScore: number;\n readonly numberOfCategories: number;\n readonly weightedPoints: number;\n soilTestingFrequencyScoring: SoilTestingFrequencyScoring;\n\n constructor(data?: ISoilTestingFrequency) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n this.percentageScore = _data[\"percentageScore\"];\n (this).numberOfCategories = _data[\"numberOfCategories\"];\n (this).weightedPoints = _data[\"weightedPoints\"];\n this.soilTestingFrequencyScoring = _data[\"soilTestingFrequencyScoring\"] ? SoilTestingFrequencyScoring.fromJS(_data[\"soilTestingFrequencyScoring\"]) : undefined;\n }\n }\n\n static fromJS(data: any): SoilTestingFrequency {\n data = typeof data === 'object' ? data : {};\n let result = new SoilTestingFrequency();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"numberOfCategories\"] = this.numberOfCategories;\n data[\"weightedPoints\"] = this.weightedPoints;\n data[\"soilTestingFrequencyScoring\"] = this.soilTestingFrequencyScoring ? this.soilTestingFrequencyScoring.toJSON() : undefined;\n return data; \n }\n\n clone(): SoilTestingFrequency {\n const json = this.toJSON();\n let result = new SoilTestingFrequency();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISoilTestingFrequency {\n label: string | undefined;\n points: number;\n percentageScore: number;\n numberOfCategories: number;\n weightedPoints: number;\n soilTestingFrequencyScoring: SoilTestingFrequencyScoring;\n}\n\nexport class SoilTestFrequency implements ISoilTestFrequency {\n readonly label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n readonly collapsed: boolean;\n soilTestingFrequency: SoilTestingFrequency;\n\n constructor(data?: ISoilTestFrequency) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.percentageScore = _data[\"percentageScore\"];\n this.overallPercentageScore = _data[\"overallPercentageScore\"];\n (this).collapsed = _data[\"collapsed\"];\n this.soilTestingFrequency = _data[\"soilTestingFrequency\"] ? SoilTestingFrequency.fromJS(_data[\"soilTestingFrequency\"]) : undefined;\n }\n }\n\n static fromJS(data: any): SoilTestFrequency {\n data = typeof data === 'object' ? data : {};\n let result = new SoilTestFrequency();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"overallPercentageScore\"] = this.overallPercentageScore;\n data[\"collapsed\"] = this.collapsed;\n data[\"soilTestingFrequency\"] = this.soilTestingFrequency ? this.soilTestingFrequency.toJSON() : undefined;\n return data; \n }\n\n clone(): SoilTestFrequency {\n const json = this.toJSON();\n let result = new SoilTestFrequency();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISoilTestFrequency {\n label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n collapsed: boolean;\n soilTestingFrequency: SoilTestingFrequency;\n}\n\nexport class SoilTestingIntensityScoring implements ISoilTestingIntensityScoring {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n\n constructor(data?: ISoilTestingIntensityScoring) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n }\n }\n\n static fromJS(data: any): SoilTestingIntensityScoring {\n data = typeof data === 'object' ? data : {};\n let result = new SoilTestingIntensityScoring();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n return data; \n }\n\n clone(): SoilTestingIntensityScoring {\n const json = this.toJSON();\n let result = new SoilTestingIntensityScoring();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISoilTestingIntensityScoring {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n}\n\nexport class SoilTestingIntensity implements ISoilTestingIntensity {\n readonly label: string | undefined;\n points: number;\n percentageScore: number;\n readonly numberOfCategories: number;\n readonly weightedPoints: number;\n soilTestingIntensityScoring: SoilTestingIntensityScoring;\n\n constructor(data?: ISoilTestingIntensity) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n this.percentageScore = _data[\"percentageScore\"];\n (this).numberOfCategories = _data[\"numberOfCategories\"];\n (this).weightedPoints = _data[\"weightedPoints\"];\n this.soilTestingIntensityScoring = _data[\"soilTestingIntensityScoring\"] ? SoilTestingIntensityScoring.fromJS(_data[\"soilTestingIntensityScoring\"]) : undefined;\n }\n }\n\n static fromJS(data: any): SoilTestingIntensity {\n data = typeof data === 'object' ? data : {};\n let result = new SoilTestingIntensity();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"numberOfCategories\"] = this.numberOfCategories;\n data[\"weightedPoints\"] = this.weightedPoints;\n data[\"soilTestingIntensityScoring\"] = this.soilTestingIntensityScoring ? this.soilTestingIntensityScoring.toJSON() : undefined;\n return data; \n }\n\n clone(): SoilTestingIntensity {\n const json = this.toJSON();\n let result = new SoilTestingIntensity();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISoilTestingIntensity {\n label: string | undefined;\n points: number;\n percentageScore: number;\n numberOfCategories: number;\n weightedPoints: number;\n soilTestingIntensityScoring: SoilTestingIntensityScoring;\n}\n\nexport class SoilTestIntensity implements ISoilTestIntensity {\n readonly label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n readonly collapsed: boolean;\n soilTestingIntensity: SoilTestingIntensity;\n\n constructor(data?: ISoilTestIntensity) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.percentageScore = _data[\"percentageScore\"];\n this.overallPercentageScore = _data[\"overallPercentageScore\"];\n (this).collapsed = _data[\"collapsed\"];\n this.soilTestingIntensity = _data[\"soilTestingIntensity\"] ? SoilTestingIntensity.fromJS(_data[\"soilTestingIntensity\"]) : undefined;\n }\n }\n\n static fromJS(data: any): SoilTestIntensity {\n data = typeof data === 'object' ? data : {};\n let result = new SoilTestIntensity();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"overallPercentageScore\"] = this.overallPercentageScore;\n data[\"collapsed\"] = this.collapsed;\n data[\"soilTestingIntensity\"] = this.soilTestingIntensity ? this.soilTestingIntensity.toJSON() : undefined;\n return data; \n }\n\n clone(): SoilTestIntensity {\n const json = this.toJSON();\n let result = new SoilTestIntensity();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISoilTestIntensity {\n label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n collapsed: boolean;\n soilTestingIntensity: SoilTestingIntensity;\n}\n\nexport class ManureApplicationRecommendation implements IManureApplicationRecommendation {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: IManureApplicationRecommendation) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): ManureApplicationRecommendation {\n data = typeof data === 'object' ? data : {};\n let result = new ManureApplicationRecommendation();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): ManureApplicationRecommendation {\n const json = this.toJSON();\n let result = new ManureApplicationRecommendation();\n result.init(json);\n return result;\n }\n}\n\nexport interface IManureApplicationRecommendation {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class BiosolidsApplicationRecommendation implements IBiosolidsApplicationRecommendation {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: IBiosolidsApplicationRecommendation) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): BiosolidsApplicationRecommendation {\n data = typeof data === 'object' ? data : {};\n let result = new BiosolidsApplicationRecommendation();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): BiosolidsApplicationRecommendation {\n const json = this.toJSON();\n let result = new BiosolidsApplicationRecommendation();\n result.init(json);\n return result;\n }\n}\n\nexport interface IBiosolidsApplicationRecommendation {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class OtherOrganicNutrientSources implements IOtherOrganicNutrientSources {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: IOtherOrganicNutrientSources) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): OtherOrganicNutrientSources {\n data = typeof data === 'object' ? data : {};\n let result = new OtherOrganicNutrientSources();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): OtherOrganicNutrientSources {\n const json = this.toJSON();\n let result = new OtherOrganicNutrientSources();\n result.init(json);\n return result;\n }\n}\n\nexport interface IOtherOrganicNutrientSources {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class CommericalPhosphorusFertilizerRecommendations implements ICommericalPhosphorusFertilizerRecommendations {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: ICommericalPhosphorusFertilizerRecommendations) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): CommericalPhosphorusFertilizerRecommendations {\n data = typeof data === 'object' ? data : {};\n let result = new CommericalPhosphorusFertilizerRecommendations();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): CommericalPhosphorusFertilizerRecommendations {\n const json = this.toJSON();\n let result = new CommericalPhosphorusFertilizerRecommendations();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICommericalPhosphorusFertilizerRecommendations {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class CommericalNitrogenFertilizerRecommendations implements ICommericalNitrogenFertilizerRecommendations {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: ICommericalNitrogenFertilizerRecommendations) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): CommericalNitrogenFertilizerRecommendations {\n data = typeof data === 'object' ? data : {};\n let result = new CommericalNitrogenFertilizerRecommendations();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): CommericalNitrogenFertilizerRecommendations {\n const json = this.toJSON();\n let result = new CommericalNitrogenFertilizerRecommendations();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICommericalNitrogenFertilizerRecommendations {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class NutrientApplicationRecommendations implements INutrientApplicationRecommendations {\n readonly label: string | undefined;\n points: number;\n percentageScore: number;\n readonly numberOfCategories: number;\n readonly weightedPoints: number;\n manureApplicationRecommendation: ManureApplicationRecommendation;\n biosolidsApplicationRecommendation: BiosolidsApplicationRecommendation;\n otherOrganicNutrientSources: OtherOrganicNutrientSources;\n commericalPhosphorusFertilizerRecommendations: CommericalPhosphorusFertilizerRecommendations;\n commericalNitrogenFertilizerRecommendations: CommericalNitrogenFertilizerRecommendations;\n\n constructor(data?: INutrientApplicationRecommendations) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n this.percentageScore = _data[\"percentageScore\"];\n (this).numberOfCategories = _data[\"numberOfCategories\"];\n (this).weightedPoints = _data[\"weightedPoints\"];\n this.manureApplicationRecommendation = _data[\"manureApplicationRecommendation\"] ? ManureApplicationRecommendation.fromJS(_data[\"manureApplicationRecommendation\"]) : undefined;\n this.biosolidsApplicationRecommendation = _data[\"biosolidsApplicationRecommendation\"] ? BiosolidsApplicationRecommendation.fromJS(_data[\"biosolidsApplicationRecommendation\"]) : undefined;\n this.otherOrganicNutrientSources = _data[\"otherOrganicNutrientSources\"] ? OtherOrganicNutrientSources.fromJS(_data[\"otherOrganicNutrientSources\"]) : undefined;\n this.commericalPhosphorusFertilizerRecommendations = _data[\"commericalPhosphorusFertilizerRecommendations\"] ? CommericalPhosphorusFertilizerRecommendations.fromJS(_data[\"commericalPhosphorusFertilizerRecommendations\"]) : undefined;\n this.commericalNitrogenFertilizerRecommendations = _data[\"commericalNitrogenFertilizerRecommendations\"] ? CommericalNitrogenFertilizerRecommendations.fromJS(_data[\"commericalNitrogenFertilizerRecommendations\"]) : undefined;\n }\n }\n\n static fromJS(data: any): NutrientApplicationRecommendations {\n data = typeof data === 'object' ? data : {};\n let result = new NutrientApplicationRecommendations();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"numberOfCategories\"] = this.numberOfCategories;\n data[\"weightedPoints\"] = this.weightedPoints;\n data[\"manureApplicationRecommendation\"] = this.manureApplicationRecommendation ? this.manureApplicationRecommendation.toJSON() : undefined;\n data[\"biosolidsApplicationRecommendation\"] = this.biosolidsApplicationRecommendation ? this.biosolidsApplicationRecommendation.toJSON() : undefined;\n data[\"otherOrganicNutrientSources\"] = this.otherOrganicNutrientSources ? this.otherOrganicNutrientSources.toJSON() : undefined;\n data[\"commericalPhosphorusFertilizerRecommendations\"] = this.commericalPhosphorusFertilizerRecommendations ? this.commericalPhosphorusFertilizerRecommendations.toJSON() : undefined;\n data[\"commericalNitrogenFertilizerRecommendations\"] = this.commericalNitrogenFertilizerRecommendations ? this.commericalNitrogenFertilizerRecommendations.toJSON() : undefined;\n return data; \n }\n\n clone(): NutrientApplicationRecommendations {\n const json = this.toJSON();\n let result = new NutrientApplicationRecommendations();\n result.init(json);\n return result;\n }\n}\n\nexport interface INutrientApplicationRecommendations {\n label: string | undefined;\n points: number;\n percentageScore: number;\n numberOfCategories: number;\n weightedPoints: number;\n manureApplicationRecommendation: ManureApplicationRecommendation;\n biosolidsApplicationRecommendation: BiosolidsApplicationRecommendation;\n otherOrganicNutrientSources: OtherOrganicNutrientSources;\n commericalPhosphorusFertilizerRecommendations: CommericalPhosphorusFertilizerRecommendations;\n commericalNitrogenFertilizerRecommendations: CommericalNitrogenFertilizerRecommendations;\n}\n\nexport class NutrientApplicationRate implements INutrientApplicationRate {\n readonly label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n readonly collapsed: boolean;\n nutrientApplicationRecommendations: NutrientApplicationRecommendations;\n\n constructor(data?: INutrientApplicationRate) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.percentageScore = _data[\"percentageScore\"];\n this.overallPercentageScore = _data[\"overallPercentageScore\"];\n (this).collapsed = _data[\"collapsed\"];\n this.nutrientApplicationRecommendations = _data[\"nutrientApplicationRecommendations\"] ? NutrientApplicationRecommendations.fromJS(_data[\"nutrientApplicationRecommendations\"]) : undefined;\n }\n }\n\n static fromJS(data: any): NutrientApplicationRate {\n data = typeof data === 'object' ? data : {};\n let result = new NutrientApplicationRate();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"overallPercentageScore\"] = this.overallPercentageScore;\n data[\"collapsed\"] = this.collapsed;\n data[\"nutrientApplicationRecommendations\"] = this.nutrientApplicationRecommendations ? this.nutrientApplicationRecommendations.toJSON() : undefined;\n return data; \n }\n\n clone(): NutrientApplicationRate {\n const json = this.toJSON();\n let result = new NutrientApplicationRate();\n result.init(json);\n return result;\n }\n}\n\nexport interface INutrientApplicationRate {\n label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n collapsed: boolean;\n nutrientApplicationRecommendations: NutrientApplicationRecommendations;\n}\n\nexport class CommercialPhosphorusFertilizerApplication implements ICommercialPhosphorusFertilizerApplication {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: ICommercialPhosphorusFertilizerApplication) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): CommercialPhosphorusFertilizerApplication {\n data = typeof data === 'object' ? data : {};\n let result = new CommercialPhosphorusFertilizerApplication();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): CommercialPhosphorusFertilizerApplication {\n const json = this.toJSON();\n let result = new CommercialPhosphorusFertilizerApplication();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICommercialPhosphorusFertilizerApplication {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class CommercialNitrogenFertilizerApplication implements ICommercialNitrogenFertilizerApplication {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: ICommercialNitrogenFertilizerApplication) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): CommercialNitrogenFertilizerApplication {\n data = typeof data === 'object' ? data : {};\n let result = new CommercialNitrogenFertilizerApplication();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): CommercialNitrogenFertilizerApplication {\n const json = this.toJSON();\n let result = new CommercialNitrogenFertilizerApplication();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICommercialNitrogenFertilizerApplication {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class ManureApplication implements IManureApplication {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: IManureApplication) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): ManureApplication {\n data = typeof data === 'object' ? data : {};\n let result = new ManureApplication();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): ManureApplication {\n const json = this.toJSON();\n let result = new ManureApplication();\n result.init(json);\n return result;\n }\n}\n\nexport interface IManureApplication {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class BiosolidsApplication implements IBiosolidsApplication {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: IBiosolidsApplication) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): BiosolidsApplication {\n data = typeof data === 'object' ? data : {};\n let result = new BiosolidsApplication();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): BiosolidsApplication {\n const json = this.toJSON();\n let result = new BiosolidsApplication();\n result.init(json);\n return result;\n }\n}\n\nexport interface IBiosolidsApplication {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class OtherOrganicSources implements IOtherOrganicSources {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n\n constructor(data?: IOtherOrganicSources) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n this.didCalculatePoints = _data[\"didCalculatePoints\"];\n }\n }\n\n static fromJS(data: any): OtherOrganicSources {\n data = typeof data === 'object' ? data : {};\n let result = new OtherOrganicSources();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n data[\"didCalculatePoints\"] = this.didCalculatePoints;\n return data; \n }\n\n clone(): OtherOrganicSources {\n const json = this.toJSON();\n let result = new OtherOrganicSources();\n result.init(json);\n return result;\n }\n}\n\nexport interface IOtherOrganicSources {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n didCalculatePoints: boolean;\n}\n\nexport class NutrientApplications implements INutrientApplications {\n readonly label: string | undefined;\n points: number;\n percentageScore: number;\n readonly numberOfCategories: number;\n readonly weightedPoints: number;\n commercialPhosphorusFertilizerApplication: CommercialPhosphorusFertilizerApplication;\n commercialNitrogenFertilizerApplication: CommercialNitrogenFertilizerApplication;\n manureApplication: ManureApplication;\n biosolidsApplication: BiosolidsApplication;\n otherOrganicSources: OtherOrganicSources;\n\n constructor(data?: INutrientApplications) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n this.percentageScore = _data[\"percentageScore\"];\n (this).numberOfCategories = _data[\"numberOfCategories\"];\n (this).weightedPoints = _data[\"weightedPoints\"];\n this.commercialPhosphorusFertilizerApplication = _data[\"commercialPhosphorusFertilizerApplication\"] ? CommercialPhosphorusFertilizerApplication.fromJS(_data[\"commercialPhosphorusFertilizerApplication\"]) : undefined;\n this.commercialNitrogenFertilizerApplication = _data[\"commercialNitrogenFertilizerApplication\"] ? CommercialNitrogenFertilizerApplication.fromJS(_data[\"commercialNitrogenFertilizerApplication\"]) : undefined;\n this.manureApplication = _data[\"manureApplication\"] ? ManureApplication.fromJS(_data[\"manureApplication\"]) : undefined;\n this.biosolidsApplication = _data[\"biosolidsApplication\"] ? BiosolidsApplication.fromJS(_data[\"biosolidsApplication\"]) : undefined;\n this.otherOrganicSources = _data[\"otherOrganicSources\"] ? OtherOrganicSources.fromJS(_data[\"otherOrganicSources\"]) : undefined;\n }\n }\n\n static fromJS(data: any): NutrientApplications {\n data = typeof data === 'object' ? data : {};\n let result = new NutrientApplications();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"numberOfCategories\"] = this.numberOfCategories;\n data[\"weightedPoints\"] = this.weightedPoints;\n data[\"commercialPhosphorusFertilizerApplication\"] = this.commercialPhosphorusFertilizerApplication ? this.commercialPhosphorusFertilizerApplication.toJSON() : undefined;\n data[\"commercialNitrogenFertilizerApplication\"] = this.commercialNitrogenFertilizerApplication ? this.commercialNitrogenFertilizerApplication.toJSON() : undefined;\n data[\"manureApplication\"] = this.manureApplication ? this.manureApplication.toJSON() : undefined;\n data[\"biosolidsApplication\"] = this.biosolidsApplication ? this.biosolidsApplication.toJSON() : undefined;\n data[\"otherOrganicSources\"] = this.otherOrganicSources ? this.otherOrganicSources.toJSON() : undefined;\n return data; \n }\n\n clone(): NutrientApplications {\n const json = this.toJSON();\n let result = new NutrientApplications();\n result.init(json);\n return result;\n }\n}\n\nexport interface INutrientApplications {\n label: string | undefined;\n points: number;\n percentageScore: number;\n numberOfCategories: number;\n weightedPoints: number;\n commercialPhosphorusFertilizerApplication: CommercialPhosphorusFertilizerApplication;\n commercialNitrogenFertilizerApplication: CommercialNitrogenFertilizerApplication;\n manureApplication: ManureApplication;\n biosolidsApplication: BiosolidsApplication;\n otherOrganicSources: OtherOrganicSources;\n}\n\nexport class NutrientApplicationPlacement implements INutrientApplicationPlacement {\n readonly label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n readonly collapsed: boolean;\n nutrientApplications: NutrientApplications;\n\n constructor(data?: INutrientApplicationPlacement) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.percentageScore = _data[\"percentageScore\"];\n this.overallPercentageScore = _data[\"overallPercentageScore\"];\n (this).collapsed = _data[\"collapsed\"];\n this.nutrientApplications = _data[\"nutrientApplications\"] ? NutrientApplications.fromJS(_data[\"nutrientApplications\"]) : undefined;\n }\n }\n\n static fromJS(data: any): NutrientApplicationPlacement {\n data = typeof data === 'object' ? data : {};\n let result = new NutrientApplicationPlacement();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"overallPercentageScore\"] = this.overallPercentageScore;\n data[\"collapsed\"] = this.collapsed;\n data[\"nutrientApplications\"] = this.nutrientApplications ? this.nutrientApplications.toJSON() : undefined;\n return data; \n }\n\n clone(): NutrientApplicationPlacement {\n const json = this.toJSON();\n let result = new NutrientApplicationPlacement();\n result.init(json);\n return result;\n }\n}\n\nexport interface INutrientApplicationPlacement {\n label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n collapsed: boolean;\n nutrientApplications: NutrientApplications;\n}\n\nexport class Tillage implements ITillage {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n\n constructor(data?: ITillage) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n }\n }\n\n static fromJS(data: any): Tillage {\n data = typeof data === 'object' ? data : {};\n let result = new Tillage();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n return data; \n }\n\n clone(): Tillage {\n const json = this.toJSON();\n let result = new Tillage();\n result.init(json);\n return result;\n }\n}\n\nexport interface ITillage {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n}\n\nexport class InFieldManagementTillage implements IInFieldManagementTillage {\n readonly label: string | undefined;\n points: number;\n percentageScore: number;\n readonly numberOfCategories: number;\n readonly weightedPoints: number;\n tillage: Tillage;\n\n constructor(data?: IInFieldManagementTillage) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n this.percentageScore = _data[\"percentageScore\"];\n (this).numberOfCategories = _data[\"numberOfCategories\"];\n (this).weightedPoints = _data[\"weightedPoints\"];\n this.tillage = _data[\"tillage\"] ? Tillage.fromJS(_data[\"tillage\"]) : undefined;\n }\n }\n\n static fromJS(data: any): InFieldManagementTillage {\n data = typeof data === 'object' ? data : {};\n let result = new InFieldManagementTillage();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"numberOfCategories\"] = this.numberOfCategories;\n data[\"weightedPoints\"] = this.weightedPoints;\n data[\"tillage\"] = this.tillage ? this.tillage.toJSON() : undefined;\n return data; \n }\n\n clone(): InFieldManagementTillage {\n const json = this.toJSON();\n let result = new InFieldManagementTillage();\n result.init(json);\n return result;\n }\n}\n\nexport interface IInFieldManagementTillage {\n label: string | undefined;\n points: number;\n percentageScore: number;\n numberOfCategories: number;\n weightedPoints: number;\n tillage: Tillage;\n}\n\nexport class CoverCrops implements ICoverCrops {\n readonly label: string | undefined;\n points: number;\n readonly totalPossiblePointsPerQuestion: number;\n\n constructor(data?: ICoverCrops) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n (this).totalPossiblePointsPerQuestion = _data[\"totalPossiblePointsPerQuestion\"];\n }\n }\n\n static fromJS(data: any): CoverCrops {\n data = typeof data === 'object' ? data : {};\n let result = new CoverCrops();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"totalPossiblePointsPerQuestion\"] = this.totalPossiblePointsPerQuestion;\n return data; \n }\n\n clone(): CoverCrops {\n const json = this.toJSON();\n let result = new CoverCrops();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICoverCrops {\n label: string | undefined;\n points: number;\n totalPossiblePointsPerQuestion: number;\n}\n\nexport class InFieldManagementCoverCrops implements IInFieldManagementCoverCrops {\n readonly label: string | undefined;\n points: number;\n percentageScore: number;\n readonly numberOfCategories: number;\n readonly weightedPoints: number;\n coverCrops: CoverCrops;\n\n constructor(data?: IInFieldManagementCoverCrops) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.points = _data[\"points\"];\n this.percentageScore = _data[\"percentageScore\"];\n (this).numberOfCategories = _data[\"numberOfCategories\"];\n (this).weightedPoints = _data[\"weightedPoints\"];\n this.coverCrops = _data[\"coverCrops\"] ? CoverCrops.fromJS(_data[\"coverCrops\"]) : undefined;\n }\n }\n\n static fromJS(data: any): InFieldManagementCoverCrops {\n data = typeof data === 'object' ? data : {};\n let result = new InFieldManagementCoverCrops();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"points\"] = this.points;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"numberOfCategories\"] = this.numberOfCategories;\n data[\"weightedPoints\"] = this.weightedPoints;\n data[\"coverCrops\"] = this.coverCrops ? this.coverCrops.toJSON() : undefined;\n return data; \n }\n\n clone(): InFieldManagementCoverCrops {\n const json = this.toJSON();\n let result = new InFieldManagementCoverCrops();\n result.init(json);\n return result;\n }\n}\n\nexport interface IInFieldManagementCoverCrops {\n label: string | undefined;\n points: number;\n percentageScore: number;\n numberOfCategories: number;\n weightedPoints: number;\n coverCrops: CoverCrops;\n}\n\nexport class InFieldManagement implements IInFieldManagement {\n readonly label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n readonly collapsed: boolean;\n inFieldManagementTillage: InFieldManagementTillage;\n inFieldManagementCoverCrops: InFieldManagementCoverCrops;\n\n constructor(data?: IInFieldManagement) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.percentageScore = _data[\"percentageScore\"];\n this.overallPercentageScore = _data[\"overallPercentageScore\"];\n (this).collapsed = _data[\"collapsed\"];\n this.inFieldManagementTillage = _data[\"inFieldManagementTillage\"] ? InFieldManagementTillage.fromJS(_data[\"inFieldManagementTillage\"]) : undefined;\n this.inFieldManagementCoverCrops = _data[\"inFieldManagementCoverCrops\"] ? InFieldManagementCoverCrops.fromJS(_data[\"inFieldManagementCoverCrops\"]) : undefined;\n }\n }\n\n static fromJS(data: any): InFieldManagement {\n data = typeof data === 'object' ? data : {};\n let result = new InFieldManagement();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"overallPercentageScore\"] = this.overallPercentageScore;\n data[\"collapsed\"] = this.collapsed;\n data[\"inFieldManagementTillage\"] = this.inFieldManagementTillage ? this.inFieldManagementTillage.toJSON() : undefined;\n data[\"inFieldManagementCoverCrops\"] = this.inFieldManagementCoverCrops ? this.inFieldManagementCoverCrops.toJSON() : undefined;\n return data; \n }\n\n clone(): InFieldManagement {\n const json = this.toJSON();\n let result = new InFieldManagement();\n result.init(json);\n return result;\n }\n}\n\nexport interface IInFieldManagement {\n label: string | undefined;\n percentageScore: number;\n overallPercentageScore: number;\n collapsed: boolean;\n inFieldManagementTillage: InFieldManagementTillage;\n inFieldManagementCoverCrops: InFieldManagementCoverCrops;\n}\n\nexport class StructuralPractices implements IStructuralPractices {\n readonly label: string | undefined;\n grassedWaterwaysPoints: number;\n gradeStabilizationStructuresPoints: number;\n blindInletsPoints: number;\n drainageWaterControlStructuresPoints: number;\n filterStripsOrBufferStripsPoints: number;\n wetlandsPoints: number;\n twoStageDitchOrNaturalStreamChannelRestorationPoints: number;\n denitrifyingBioreactorPoints: number;\n phosphorusRemovalBedPFilterPoints: number;\n\n constructor(data?: IStructuralPractices) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.grassedWaterwaysPoints = _data[\"grassedWaterwaysPoints\"];\n this.gradeStabilizationStructuresPoints = _data[\"gradeStabilizationStructuresPoints\"];\n this.blindInletsPoints = _data[\"blindInletsPoints\"];\n this.drainageWaterControlStructuresPoints = _data[\"drainageWaterControlStructuresPoints\"];\n this.filterStripsOrBufferStripsPoints = _data[\"filterStripsOrBufferStripsPoints\"];\n this.wetlandsPoints = _data[\"wetlandsPoints\"];\n this.twoStageDitchOrNaturalStreamChannelRestorationPoints = _data[\"twoStageDitchOrNaturalStreamChannelRestorationPoints\"];\n this.denitrifyingBioreactorPoints = _data[\"denitrifyingBioreactorPoints\"];\n this.phosphorusRemovalBedPFilterPoints = _data[\"phosphorusRemovalBedPFilterPoints\"];\n }\n }\n\n static fromJS(data: any): StructuralPractices {\n data = typeof data === 'object' ? data : {};\n let result = new StructuralPractices();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"grassedWaterwaysPoints\"] = this.grassedWaterwaysPoints;\n data[\"gradeStabilizationStructuresPoints\"] = this.gradeStabilizationStructuresPoints;\n data[\"blindInletsPoints\"] = this.blindInletsPoints;\n data[\"drainageWaterControlStructuresPoints\"] = this.drainageWaterControlStructuresPoints;\n data[\"filterStripsOrBufferStripsPoints\"] = this.filterStripsOrBufferStripsPoints;\n data[\"wetlandsPoints\"] = this.wetlandsPoints;\n data[\"twoStageDitchOrNaturalStreamChannelRestorationPoints\"] = this.twoStageDitchOrNaturalStreamChannelRestorationPoints;\n data[\"denitrifyingBioreactorPoints\"] = this.denitrifyingBioreactorPoints;\n data[\"phosphorusRemovalBedPFilterPoints\"] = this.phosphorusRemovalBedPFilterPoints;\n return data; \n }\n\n clone(): StructuralPractices {\n const json = this.toJSON();\n let result = new StructuralPractices();\n result.init(json);\n return result;\n }\n}\n\nexport interface IStructuralPractices {\n label: string | undefined;\n grassedWaterwaysPoints: number;\n gradeStabilizationStructuresPoints: number;\n blindInletsPoints: number;\n drainageWaterControlStructuresPoints: number;\n filterStripsOrBufferStripsPoints: number;\n wetlandsPoints: number;\n twoStageDitchOrNaturalStreamChannelRestorationPoints: number;\n denitrifyingBioreactorPoints: number;\n phosphorusRemovalBedPFilterPoints: number;\n}\n\nexport class StructuralPracticesBonus implements IStructuralPracticesBonus {\n readonly label: string | undefined;\n overallPercentageScore: number;\n bonusPoints: number;\n readonly collapsed: boolean;\n readonly capPoints: number;\n structuralPractices: StructuralPractices;\n\n constructor(data?: IStructuralPracticesBonus) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n (this).label = _data[\"label\"];\n this.overallPercentageScore = _data[\"overallPercentageScore\"];\n this.bonusPoints = _data[\"bonusPoints\"];\n (this).collapsed = _data[\"collapsed\"];\n (this).capPoints = _data[\"capPoints\"];\n this.structuralPractices = _data[\"structuralPractices\"] ? StructuralPractices.fromJS(_data[\"structuralPractices\"]) : undefined;\n }\n }\n\n static fromJS(data: any): StructuralPracticesBonus {\n data = typeof data === 'object' ? data : {};\n let result = new StructuralPracticesBonus();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"overallPercentageScore\"] = this.overallPercentageScore;\n data[\"bonusPoints\"] = this.bonusPoints;\n data[\"collapsed\"] = this.collapsed;\n data[\"capPoints\"] = this.capPoints;\n data[\"structuralPractices\"] = this.structuralPractices ? this.structuralPractices.toJSON() : undefined;\n return data; \n }\n\n clone(): StructuralPracticesBonus {\n const json = this.toJSON();\n let result = new StructuralPracticesBonus();\n result.init(json);\n return result;\n }\n}\n\nexport interface IStructuralPracticesBonus {\n label: string | undefined;\n overallPercentageScore: number;\n bonusPoints: number;\n collapsed: boolean;\n capPoints: number;\n structuralPractices: StructuralPractices;\n}\n\nexport class CertificationScore implements ICertificationScore {\n points: number;\n percentageScore: number;\n averagePercentageScore: number;\n readonly numberOfCategories: number;\n readonly weightedPoints: number;\n soilTestFrequency: SoilTestFrequency;\n soilTestIntensity: SoilTestIntensity;\n nutrientApplicationRate: NutrientApplicationRate;\n nutrientApplicationPlacement: NutrientApplicationPlacement;\n inFieldManagement: InFieldManagement;\n structuralPracticesBonus: StructuralPracticesBonus;\n\n constructor(data?: ICertificationScore) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.points = _data[\"points\"];\n this.percentageScore = _data[\"percentageScore\"];\n this.averagePercentageScore = _data[\"averagePercentageScore\"];\n (this).numberOfCategories = _data[\"numberOfCategories\"];\n (this).weightedPoints = _data[\"weightedPoints\"];\n this.soilTestFrequency = _data[\"soilTestFrequency\"] ? SoilTestFrequency.fromJS(_data[\"soilTestFrequency\"]) : undefined;\n this.soilTestIntensity = _data[\"soilTestIntensity\"] ? SoilTestIntensity.fromJS(_data[\"soilTestIntensity\"]) : undefined;\n this.nutrientApplicationRate = _data[\"nutrientApplicationRate\"] ? NutrientApplicationRate.fromJS(_data[\"nutrientApplicationRate\"]) : undefined;\n this.nutrientApplicationPlacement = _data[\"nutrientApplicationPlacement\"] ? NutrientApplicationPlacement.fromJS(_data[\"nutrientApplicationPlacement\"]) : undefined;\n this.inFieldManagement = _data[\"inFieldManagement\"] ? InFieldManagement.fromJS(_data[\"inFieldManagement\"]) : undefined;\n this.structuralPracticesBonus = _data[\"structuralPracticesBonus\"] ? StructuralPracticesBonus.fromJS(_data[\"structuralPracticesBonus\"]) : undefined;\n }\n }\n\n static fromJS(data: any): CertificationScore {\n data = typeof data === 'object' ? data : {};\n let result = new CertificationScore();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"points\"] = this.points;\n data[\"percentageScore\"] = this.percentageScore;\n data[\"averagePercentageScore\"] = this.averagePercentageScore;\n data[\"numberOfCategories\"] = this.numberOfCategories;\n data[\"weightedPoints\"] = this.weightedPoints;\n data[\"soilTestFrequency\"] = this.soilTestFrequency ? this.soilTestFrequency.toJSON() : undefined;\n data[\"soilTestIntensity\"] = this.soilTestIntensity ? this.soilTestIntensity.toJSON() : undefined;\n data[\"nutrientApplicationRate\"] = this.nutrientApplicationRate ? this.nutrientApplicationRate.toJSON() : undefined;\n data[\"nutrientApplicationPlacement\"] = this.nutrientApplicationPlacement ? this.nutrientApplicationPlacement.toJSON() : undefined;\n data[\"inFieldManagement\"] = this.inFieldManagement ? this.inFieldManagement.toJSON() : undefined;\n data[\"structuralPracticesBonus\"] = this.structuralPracticesBonus ? this.structuralPracticesBonus.toJSON() : undefined;\n return data; \n }\n\n clone(): CertificationScore {\n const json = this.toJSON();\n let result = new CertificationScore();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICertificationScore {\n points: number;\n percentageScore: number;\n averagePercentageScore: number;\n numberOfCategories: number;\n weightedPoints: number;\n soilTestFrequency: SoilTestFrequency;\n soilTestIntensity: SoilTestIntensity;\n nutrientApplicationRate: NutrientApplicationRate;\n nutrientApplicationPlacement: NutrientApplicationPlacement;\n inFieldManagement: InFieldManagement;\n structuralPracticesBonus: StructuralPracticesBonus;\n}\n\nexport class ChangeUiThemeInput implements IChangeUiThemeInput {\n theme: string | undefined;\n\n constructor(data?: IChangeUiThemeInput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.theme = _data[\"theme\"];\n }\n }\n\n static fromJS(data: any): ChangeUiThemeInput {\n data = typeof data === 'object' ? data : {};\n let result = new ChangeUiThemeInput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"theme\"] = this.theme;\n return data; \n }\n\n clone(): ChangeUiThemeInput {\n const json = this.toJSON();\n let result = new ChangeUiThemeInput();\n result.init(json);\n return result;\n }\n}\n\nexport interface IChangeUiThemeInput {\n theme: string | undefined;\n}\n\nexport class CostShareDto implements ICostShareDto {\n name: string | undefined;\n id: number;\n\n constructor(data?: ICostShareDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): CostShareDto {\n data = typeof data === 'object' ? data : {};\n let result = new CostShareDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): CostShareDto {\n const json = this.toJSON();\n let result = new CostShareDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICostShareDto {\n name: string | undefined;\n id: number;\n}\n\nexport class CountyDto implements ICountyDto {\n name: string | undefined;\n id: number;\n\n constructor(data?: ICountyDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): CountyDto {\n data = typeof data === 'object' ? data : {};\n let result = new CountyDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): CountyDto {\n const json = this.toJSON();\n let result = new CountyDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICountyDto {\n name: string | undefined;\n id: number;\n}\n\nexport class CropDto implements ICropDto {\n name: string | undefined;\n isDefault: boolean;\n id: number;\n\n constructor(data?: ICropDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.isDefault = _data[\"isDefault\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): CropDto {\n data = typeof data === 'object' ? data : {};\n let result = new CropDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"isDefault\"] = this.isDefault;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): CropDto {\n const json = this.toJSON();\n let result = new CropDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICropDto {\n name: string | undefined;\n isDefault: boolean;\n id: number;\n}\n\nexport class FarmerRegistrationCompleteDto implements IFarmerRegistrationCompleteDto {\n completeFarmers: number;\n totalFarmers: number;\n\n constructor(data?: IFarmerRegistrationCompleteDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.completeFarmers = _data[\"completeFarmers\"];\n this.totalFarmers = _data[\"totalFarmers\"];\n }\n }\n\n static fromJS(data: any): FarmerRegistrationCompleteDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerRegistrationCompleteDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"completeFarmers\"] = this.completeFarmers;\n data[\"totalFarmers\"] = this.totalFarmers;\n return data; \n }\n\n clone(): FarmerRegistrationCompleteDto {\n const json = this.toJSON();\n let result = new FarmerRegistrationCompleteDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerRegistrationCompleteDto {\n completeFarmers: number;\n totalFarmers: number;\n}\n\nexport class Int32DecimalNullableGraphData implements IInt32DecimalNullableGraphData {\n key: number;\n value: number | undefined;\n\n constructor(data?: IInt32DecimalNullableGraphData) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.key = _data[\"key\"];\n this.value = _data[\"value\"];\n }\n }\n\n static fromJS(data: any): Int32DecimalNullableGraphData {\n data = typeof data === 'object' ? data : {};\n let result = new Int32DecimalNullableGraphData();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"key\"] = this.key;\n data[\"value\"] = this.value;\n return data; \n }\n\n clone(): Int32DecimalNullableGraphData {\n const json = this.toJSON();\n let result = new Int32DecimalNullableGraphData();\n result.init(json);\n return result;\n }\n}\n\nexport interface IInt32DecimalNullableGraphData {\n key: number;\n value: number | undefined;\n}\n\nexport class StringInt32Int32GraphData implements IStringInt32Int32GraphData {\n series: string | undefined;\n key: number;\n value: number;\n\n constructor(data?: IStringInt32Int32GraphData) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.series = _data[\"series\"];\n this.key = _data[\"key\"];\n this.value = _data[\"value\"];\n }\n }\n\n static fromJS(data: any): StringInt32Int32GraphData {\n data = typeof data === 'object' ? data : {};\n let result = new StringInt32Int32GraphData();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"series\"] = this.series;\n data[\"key\"] = this.key;\n data[\"value\"] = this.value;\n return data; \n }\n\n clone(): StringInt32Int32GraphData {\n const json = this.toJSON();\n let result = new StringInt32Int32GraphData();\n result.init(json);\n return result;\n }\n}\n\nexport interface IStringInt32Int32GraphData {\n series: string | undefined;\n key: number;\n value: number;\n}\n\nexport class CertificationScoreDto implements ICertificationScoreDto {\n scores: Int32DecimalNullableGraphData[] | undefined;\n statuses: StringInt32Int32GraphData[] | undefined;\n acres: Int32DecimalNullableGraphData[] | undefined;\n\n constructor(data?: ICertificationScoreDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n if (Array.isArray(_data[\"scores\"])) {\n this.scores = [] as any;\n for (let item of _data[\"scores\"])\n this.scores.push(Int32DecimalNullableGraphData.fromJS(item));\n }\n if (Array.isArray(_data[\"statuses\"])) {\n this.statuses = [] as any;\n for (let item of _data[\"statuses\"])\n this.statuses.push(StringInt32Int32GraphData.fromJS(item));\n }\n if (Array.isArray(_data[\"acres\"])) {\n this.acres = [] as any;\n for (let item of _data[\"acres\"])\n this.acres.push(Int32DecimalNullableGraphData.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): CertificationScoreDto {\n data = typeof data === 'object' ? data : {};\n let result = new CertificationScoreDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n if (Array.isArray(this.scores)) {\n data[\"scores\"] = [];\n for (let item of this.scores)\n data[\"scores\"].push(item.toJSON());\n }\n if (Array.isArray(this.statuses)) {\n data[\"statuses\"] = [];\n for (let item of this.statuses)\n data[\"statuses\"].push(item.toJSON());\n }\n if (Array.isArray(this.acres)) {\n data[\"acres\"] = [];\n for (let item of this.acres)\n data[\"acres\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): CertificationScoreDto {\n const json = this.toJSON();\n let result = new CertificationScoreDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICertificationScoreDto {\n scores: Int32DecimalNullableGraphData[] | undefined;\n statuses: StringInt32Int32GraphData[] | undefined;\n acres: Int32DecimalNullableGraphData[] | undefined;\n}\n\nexport class ExportRequestDto implements IExportRequestDto {\n entity: string | undefined;\n columnNames: string[] | undefined;\n data: string[][] | undefined;\n\n constructor(data?: IExportRequestDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.entity = _data[\"entity\"];\n if (Array.isArray(_data[\"columnNames\"])) {\n this.columnNames = [] as any;\n for (let item of _data[\"columnNames\"])\n this.columnNames.push(item);\n }\n if (Array.isArray(_data[\"data\"])) {\n this.data = [] as any;\n for (let item of _data[\"data\"])\n this.data.push(item);\n }\n }\n }\n\n static fromJS(data: any): ExportRequestDto {\n data = typeof data === 'object' ? data : {};\n let result = new ExportRequestDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"entity\"] = this.entity;\n if (Array.isArray(this.columnNames)) {\n data[\"columnNames\"] = [];\n for (let item of this.columnNames)\n data[\"columnNames\"].push(item);\n }\n if (Array.isArray(this.data)) {\n data[\"data\"] = [];\n for (let item of this.data)\n data[\"data\"].push(item);\n }\n return data; \n }\n\n clone(): ExportRequestDto {\n const json = this.toJSON();\n let result = new ExportRequestDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IExportRequestDto {\n entity: string | undefined;\n columnNames: string[] | undefined;\n data: string[][] | undefined;\n}\n\nexport class FarmerCostShareDto implements IFarmerCostShareDto {\n farmerId: number;\n costShareId: number;\n costShareName: string | undefined;\n id: number;\n\n constructor(data?: IFarmerCostShareDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.costShareId = _data[\"costShareId\"];\n this.costShareName = _data[\"costShareName\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerCostShareDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerCostShareDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"costShareId\"] = this.costShareId;\n data[\"costShareName\"] = this.costShareName;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerCostShareDto {\n const json = this.toJSON();\n let result = new FarmerCostShareDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerCostShareDto {\n farmerId: number;\n costShareId: number;\n costShareName: string | undefined;\n id: number;\n}\n\nexport class UserToken implements IUserToken {\n tenantId: number | undefined;\n userId: number;\n loginProvider: string | undefined;\n name: string | undefined;\n value: string | undefined;\n expireDate: moment.Moment | undefined;\n id: number;\n\n constructor(data?: IUserToken) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenantId = _data[\"tenantId\"];\n this.userId = _data[\"userId\"];\n this.loginProvider = _data[\"loginProvider\"];\n this.name = _data[\"name\"];\n this.value = _data[\"value\"];\n this.expireDate = _data[\"expireDate\"] ? moment(_data[\"expireDate\"].toString()) : undefined;\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): UserToken {\n data = typeof data === 'object' ? data : {};\n let result = new UserToken();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenantId\"] = this.tenantId;\n data[\"userId\"] = this.userId;\n data[\"loginProvider\"] = this.loginProvider;\n data[\"name\"] = this.name;\n data[\"value\"] = this.value;\n data[\"expireDate\"] = this.expireDate ? this.expireDate.toISOString() : undefined;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): UserToken {\n const json = this.toJSON();\n let result = new UserToken();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserToken {\n tenantId: number | undefined;\n userId: number;\n loginProvider: string | undefined;\n name: string | undefined;\n value: string | undefined;\n expireDate: moment.Moment | undefined;\n id: number;\n}\n\nexport class UserLogin implements IUserLogin {\n tenantId: number | undefined;\n userId: number;\n loginProvider: string | undefined;\n providerKey: string | undefined;\n id: number;\n\n constructor(data?: IUserLogin) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenantId = _data[\"tenantId\"];\n this.userId = _data[\"userId\"];\n this.loginProvider = _data[\"loginProvider\"];\n this.providerKey = _data[\"providerKey\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): UserLogin {\n data = typeof data === 'object' ? data : {};\n let result = new UserLogin();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenantId\"] = this.tenantId;\n data[\"userId\"] = this.userId;\n data[\"loginProvider\"] = this.loginProvider;\n data[\"providerKey\"] = this.providerKey;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): UserLogin {\n const json = this.toJSON();\n let result = new UserLogin();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserLogin {\n tenantId: number | undefined;\n userId: number;\n loginProvider: string | undefined;\n providerKey: string | undefined;\n id: number;\n}\n\nexport class UserRole implements IUserRole {\n tenantId: number | undefined;\n userId: number;\n roleId: number;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n\n constructor(data?: IUserRole) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenantId = _data[\"tenantId\"];\n this.userId = _data[\"userId\"];\n this.roleId = _data[\"roleId\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): UserRole {\n data = typeof data === 'object' ? data : {};\n let result = new UserRole();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenantId\"] = this.tenantId;\n data[\"userId\"] = this.userId;\n data[\"roleId\"] = this.roleId;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): UserRole {\n const json = this.toJSON();\n let result = new UserRole();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserRole {\n tenantId: number | undefined;\n userId: number;\n roleId: number;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n}\n\nexport class UserClaim implements IUserClaim {\n tenantId: number | undefined;\n userId: number;\n claimType: string | undefined;\n claimValue: string | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n\n constructor(data?: IUserClaim) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenantId = _data[\"tenantId\"];\n this.userId = _data[\"userId\"];\n this.claimType = _data[\"claimType\"];\n this.claimValue = _data[\"claimValue\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): UserClaim {\n data = typeof data === 'object' ? data : {};\n let result = new UserClaim();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenantId\"] = this.tenantId;\n data[\"userId\"] = this.userId;\n data[\"claimType\"] = this.claimType;\n data[\"claimValue\"] = this.claimValue;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): UserClaim {\n const json = this.toJSON();\n let result = new UserClaim();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserClaim {\n tenantId: number | undefined;\n userId: number;\n claimType: string | undefined;\n claimValue: string | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n}\n\nexport class UserPermissionSetting implements IUserPermissionSetting {\n userId: number;\n tenantId: number | undefined;\n name: string | undefined;\n isGranted: boolean;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n\n constructor(data?: IUserPermissionSetting) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.userId = _data[\"userId\"];\n this.tenantId = _data[\"tenantId\"];\n this.name = _data[\"name\"];\n this.isGranted = _data[\"isGranted\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): UserPermissionSetting {\n data = typeof data === 'object' ? data : {};\n let result = new UserPermissionSetting();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"userId\"] = this.userId;\n data[\"tenantId\"] = this.tenantId;\n data[\"name\"] = this.name;\n data[\"isGranted\"] = this.isGranted;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): UserPermissionSetting {\n const json = this.toJSON();\n let result = new UserPermissionSetting();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserPermissionSetting {\n userId: number;\n tenantId: number | undefined;\n name: string | undefined;\n isGranted: boolean;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n}\n\nexport class Setting implements ISetting {\n tenantId: number | undefined;\n userId: number | undefined;\n name: string | undefined;\n value: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n\n constructor(data?: ISetting) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenantId = _data[\"tenantId\"];\n this.userId = _data[\"userId\"];\n this.name = _data[\"name\"];\n this.value = _data[\"value\"];\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): Setting {\n data = typeof data === 'object' ? data : {};\n let result = new Setting();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenantId\"] = this.tenantId;\n data[\"userId\"] = this.userId;\n data[\"name\"] = this.name;\n data[\"value\"] = this.value;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): Setting {\n const json = this.toJSON();\n let result = new Setting();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISetting {\n tenantId: number | undefined;\n userId: number | undefined;\n name: string | undefined;\n value: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n}\n\nexport class User implements IUser {\n firstName: string | undefined;\n lastName: string | undefined;\n normalizedUserName: string | undefined;\n normalizedEmailAddress: string | undefined;\n concurrencyStamp: string | undefined;\n tokens: UserToken[] | undefined;\n deleterUser: User;\n creatorUser: User;\n lastModifierUser: User;\n authenticationSource: string | undefined;\n userName: string | undefined;\n tenantId: number | undefined;\n emailAddress: string | undefined;\n name: string | undefined;\n surname: string | undefined;\n readonly fullName: string | undefined;\n password: string | undefined;\n emailConfirmationCode: string | undefined;\n passwordResetCode: string | undefined;\n lockoutEndDateUtc: moment.Moment | undefined;\n accessFailedCount: number;\n isLockoutEnabled: boolean;\n phoneNumber: string | undefined;\n isPhoneNumberConfirmed: boolean;\n securityStamp: string | undefined;\n isTwoFactorEnabled: boolean;\n logins: UserLogin[] | undefined;\n roles: UserRole[] | undefined;\n claims: UserClaim[] | undefined;\n permissions: UserPermissionSetting[] | undefined;\n settings: Setting[] | undefined;\n isEmailConfirmed: boolean;\n isActive: boolean;\n isDeleted: boolean;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n\n constructor(data?: IUser) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.firstName = _data[\"firstName\"];\n this.lastName = _data[\"lastName\"];\n this.normalizedUserName = _data[\"normalizedUserName\"];\n this.normalizedEmailAddress = _data[\"normalizedEmailAddress\"];\n this.concurrencyStamp = _data[\"concurrencyStamp\"];\n if (Array.isArray(_data[\"tokens\"])) {\n this.tokens = [] as any;\n for (let item of _data[\"tokens\"])\n this.tokens.push(UserToken.fromJS(item));\n }\n this.deleterUser = _data[\"deleterUser\"] ? User.fromJS(_data[\"deleterUser\"]) : undefined;\n this.creatorUser = _data[\"creatorUser\"] ? User.fromJS(_data[\"creatorUser\"]) : undefined;\n this.lastModifierUser = _data[\"lastModifierUser\"] ? User.fromJS(_data[\"lastModifierUser\"]) : undefined;\n this.authenticationSource = _data[\"authenticationSource\"];\n this.userName = _data[\"userName\"];\n this.tenantId = _data[\"tenantId\"];\n this.emailAddress = _data[\"emailAddress\"];\n this.name = _data[\"name\"];\n this.surname = _data[\"surname\"];\n (this).fullName = _data[\"fullName\"];\n this.password = _data[\"password\"];\n this.emailConfirmationCode = _data[\"emailConfirmationCode\"];\n this.passwordResetCode = _data[\"passwordResetCode\"];\n this.lockoutEndDateUtc = _data[\"lockoutEndDateUtc\"] ? moment(_data[\"lockoutEndDateUtc\"].toString()) : undefined;\n this.accessFailedCount = _data[\"accessFailedCount\"];\n this.isLockoutEnabled = _data[\"isLockoutEnabled\"];\n this.phoneNumber = _data[\"phoneNumber\"];\n this.isPhoneNumberConfirmed = _data[\"isPhoneNumberConfirmed\"];\n this.securityStamp = _data[\"securityStamp\"];\n this.isTwoFactorEnabled = _data[\"isTwoFactorEnabled\"];\n if (Array.isArray(_data[\"logins\"])) {\n this.logins = [] as any;\n for (let item of _data[\"logins\"])\n this.logins.push(UserLogin.fromJS(item));\n }\n if (Array.isArray(_data[\"roles\"])) {\n this.roles = [] as any;\n for (let item of _data[\"roles\"])\n this.roles.push(UserRole.fromJS(item));\n }\n if (Array.isArray(_data[\"claims\"])) {\n this.claims = [] as any;\n for (let item of _data[\"claims\"])\n this.claims.push(UserClaim.fromJS(item));\n }\n if (Array.isArray(_data[\"permissions\"])) {\n this.permissions = [] as any;\n for (let item of _data[\"permissions\"])\n this.permissions.push(UserPermissionSetting.fromJS(item));\n }\n if (Array.isArray(_data[\"settings\"])) {\n this.settings = [] as any;\n for (let item of _data[\"settings\"])\n this.settings.push(Setting.fromJS(item));\n }\n this.isEmailConfirmed = _data[\"isEmailConfirmed\"];\n this.isActive = _data[\"isActive\"];\n this.isDeleted = _data[\"isDeleted\"];\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): User {\n data = typeof data === 'object' ? data : {};\n let result = new User();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"firstName\"] = this.firstName;\n data[\"lastName\"] = this.lastName;\n data[\"normalizedUserName\"] = this.normalizedUserName;\n data[\"normalizedEmailAddress\"] = this.normalizedEmailAddress;\n data[\"concurrencyStamp\"] = this.concurrencyStamp;\n if (Array.isArray(this.tokens)) {\n data[\"tokens\"] = [];\n for (let item of this.tokens)\n data[\"tokens\"].push(item.toJSON());\n }\n data[\"deleterUser\"] = this.deleterUser ? this.deleterUser.toJSON() : undefined;\n data[\"creatorUser\"] = this.creatorUser ? this.creatorUser.toJSON() : undefined;\n data[\"lastModifierUser\"] = this.lastModifierUser ? this.lastModifierUser.toJSON() : undefined;\n data[\"authenticationSource\"] = this.authenticationSource;\n data[\"userName\"] = this.userName;\n data[\"tenantId\"] = this.tenantId;\n data[\"emailAddress\"] = this.emailAddress;\n data[\"name\"] = this.name;\n data[\"surname\"] = this.surname;\n data[\"fullName\"] = this.fullName;\n data[\"password\"] = this.password;\n data[\"emailConfirmationCode\"] = this.emailConfirmationCode;\n data[\"passwordResetCode\"] = this.passwordResetCode;\n data[\"lockoutEndDateUtc\"] = this.lockoutEndDateUtc ? this.lockoutEndDateUtc.toISOString() : undefined;\n data[\"accessFailedCount\"] = this.accessFailedCount;\n data[\"isLockoutEnabled\"] = this.isLockoutEnabled;\n data[\"phoneNumber\"] = this.phoneNumber;\n data[\"isPhoneNumberConfirmed\"] = this.isPhoneNumberConfirmed;\n data[\"securityStamp\"] = this.securityStamp;\n data[\"isTwoFactorEnabled\"] = this.isTwoFactorEnabled;\n if (Array.isArray(this.logins)) {\n data[\"logins\"] = [];\n for (let item of this.logins)\n data[\"logins\"].push(item.toJSON());\n }\n if (Array.isArray(this.roles)) {\n data[\"roles\"] = [];\n for (let item of this.roles)\n data[\"roles\"].push(item.toJSON());\n }\n if (Array.isArray(this.claims)) {\n data[\"claims\"] = [];\n for (let item of this.claims)\n data[\"claims\"].push(item.toJSON());\n }\n if (Array.isArray(this.permissions)) {\n data[\"permissions\"] = [];\n for (let item of this.permissions)\n data[\"permissions\"].push(item.toJSON());\n }\n if (Array.isArray(this.settings)) {\n data[\"settings\"] = [];\n for (let item of this.settings)\n data[\"settings\"].push(item.toJSON());\n }\n data[\"isEmailConfirmed\"] = this.isEmailConfirmed;\n data[\"isActive\"] = this.isActive;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): User {\n const json = this.toJSON();\n let result = new User();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUser {\n firstName: string | undefined;\n lastName: string | undefined;\n normalizedUserName: string | undefined;\n normalizedEmailAddress: string | undefined;\n concurrencyStamp: string | undefined;\n tokens: UserToken[] | undefined;\n deleterUser: User;\n creatorUser: User;\n lastModifierUser: User;\n authenticationSource: string | undefined;\n userName: string | undefined;\n tenantId: number | undefined;\n emailAddress: string | undefined;\n name: string | undefined;\n surname: string | undefined;\n fullName: string | undefined;\n password: string | undefined;\n emailConfirmationCode: string | undefined;\n passwordResetCode: string | undefined;\n lockoutEndDateUtc: moment.Moment | undefined;\n accessFailedCount: number;\n isLockoutEnabled: boolean;\n phoneNumber: string | undefined;\n isPhoneNumberConfirmed: boolean;\n securityStamp: string | undefined;\n isTwoFactorEnabled: boolean;\n logins: UserLogin[] | undefined;\n roles: UserRole[] | undefined;\n claims: UserClaim[] | undefined;\n permissions: UserPermissionSetting[] | undefined;\n settings: Setting[] | undefined;\n isEmailConfirmed: boolean;\n isActive: boolean;\n isDeleted: boolean;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n}\n\nexport class County implements ICounty {\n name: string | undefined;\n id: number;\n\n constructor(data?: ICounty) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): County {\n data = typeof data === 'object' ? data : {};\n let result = new County();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): County {\n const json = this.toJSON();\n let result = new County();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICounty {\n name: string | undefined;\n id: number;\n}\n\nexport class FarmerCounty implements IFarmerCounty {\n farmerId: number;\n farmer: Farmer;\n countyId: number;\n county: County;\n id: number;\n\n constructor(data?: IFarmerCounty) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.farmer = _data[\"farmer\"] ? Farmer.fromJS(_data[\"farmer\"]) : undefined;\n this.countyId = _data[\"countyId\"];\n this.county = _data[\"county\"] ? County.fromJS(_data[\"county\"]) : undefined;\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerCounty {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerCounty();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n data[\"countyId\"] = this.countyId;\n data[\"county\"] = this.county ? this.county.toJSON() : undefined;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerCounty {\n const json = this.toJSON();\n let result = new FarmerCounty();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerCounty {\n farmerId: number;\n farmer: Farmer;\n countyId: number;\n county: County;\n id: number;\n}\n\nexport class Crop implements ICrop {\n name: string | undefined;\n isDefault: boolean;\n id: number;\n\n constructor(data?: ICrop) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.isDefault = _data[\"isDefault\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): Crop {\n data = typeof data === 'object' ? data : {};\n let result = new Crop();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"isDefault\"] = this.isDefault;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): Crop {\n const json = this.toJSON();\n let result = new Crop();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICrop {\n name: string | undefined;\n isDefault: boolean;\n id: number;\n}\n\nexport class FarmerCropQuantity implements IFarmerCropQuantity {\n farmerId: number;\n farmer: Farmer;\n cropId: number;\n crop: Crop;\n quantity: number | undefined;\n id: number;\n\n constructor(data?: IFarmerCropQuantity) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.farmer = _data[\"farmer\"] ? Farmer.fromJS(_data[\"farmer\"]) : undefined;\n this.cropId = _data[\"cropId\"];\n this.crop = _data[\"crop\"] ? Crop.fromJS(_data[\"crop\"]) : undefined;\n this.quantity = _data[\"quantity\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerCropQuantity {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerCropQuantity();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n data[\"cropId\"] = this.cropId;\n data[\"crop\"] = this.crop ? this.crop.toJSON() : undefined;\n data[\"quantity\"] = this.quantity;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerCropQuantity {\n const json = this.toJSON();\n let result = new FarmerCropQuantity();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerCropQuantity {\n farmerId: number;\n farmer: Farmer;\n cropId: number;\n crop: Crop;\n quantity: number | undefined;\n id: number;\n}\n\nexport class NutrientSource implements INutrientSource {\n name: string | undefined;\n sort: number;\n id: number;\n\n constructor(data?: INutrientSource) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.sort = _data[\"sort\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): NutrientSource {\n data = typeof data === 'object' ? data : {};\n let result = new NutrientSource();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"sort\"] = this.sort;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): NutrientSource {\n const json = this.toJSON();\n let result = new NutrientSource();\n result.init(json);\n return result;\n }\n}\n\nexport interface INutrientSource {\n name: string | undefined;\n sort: number;\n id: number;\n}\n\nexport class FarmerNutrientSourceQuantity implements IFarmerNutrientSourceQuantity {\n farmerId: number;\n farmer: Farmer;\n nutrientSourceId: number;\n nutrientSource: NutrientSource;\n ownedQuantity: number | undefined;\n rentedQuantity: number | undefined;\n id: number;\n\n constructor(data?: IFarmerNutrientSourceQuantity) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.farmer = _data[\"farmer\"] ? Farmer.fromJS(_data[\"farmer\"]) : undefined;\n this.nutrientSourceId = _data[\"nutrientSourceId\"];\n this.nutrientSource = _data[\"nutrientSource\"] ? NutrientSource.fromJS(_data[\"nutrientSource\"]) : undefined;\n this.ownedQuantity = _data[\"ownedQuantity\"];\n this.rentedQuantity = _data[\"rentedQuantity\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerNutrientSourceQuantity {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerNutrientSourceQuantity();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n data[\"nutrientSourceId\"] = this.nutrientSourceId;\n data[\"nutrientSource\"] = this.nutrientSource ? this.nutrientSource.toJSON() : undefined;\n data[\"ownedQuantity\"] = this.ownedQuantity;\n data[\"rentedQuantity\"] = this.rentedQuantity;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerNutrientSourceQuantity {\n const json = this.toJSON();\n let result = new FarmerNutrientSourceQuantity();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerNutrientSourceQuantity {\n farmerId: number;\n farmer: Farmer;\n nutrientSourceId: number;\n nutrientSource: NutrientSource;\n ownedQuantity: number | undefined;\n rentedQuantity: number | undefined;\n id: number;\n}\n\nexport class NutrientRecommendation implements INutrientRecommendation {\n name: string | undefined;\n isFullService: boolean;\n id: number;\n\n constructor(data?: INutrientRecommendation) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.isFullService = _data[\"isFullService\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): NutrientRecommendation {\n data = typeof data === 'object' ? data : {};\n let result = new NutrientRecommendation();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"isFullService\"] = this.isFullService;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): NutrientRecommendation {\n const json = this.toJSON();\n let result = new NutrientRecommendation();\n result.init(json);\n return result;\n }\n}\n\nexport interface INutrientRecommendation {\n name: string | undefined;\n isFullService: boolean;\n id: number;\n}\n\nexport class FarmerNutrientRecommendationQuantity implements IFarmerNutrientRecommendationQuantity {\n farmerId: number;\n farmer: Farmer;\n nutrientRecommendationId: number;\n nutrientRecommendation: NutrientRecommendation;\n ownedQuantity: number | undefined;\n rentedQuantity: number | undefined;\n id: number;\n\n constructor(data?: IFarmerNutrientRecommendationQuantity) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.farmer = _data[\"farmer\"] ? Farmer.fromJS(_data[\"farmer\"]) : undefined;\n this.nutrientRecommendationId = _data[\"nutrientRecommendationId\"];\n this.nutrientRecommendation = _data[\"nutrientRecommendation\"] ? NutrientRecommendation.fromJS(_data[\"nutrientRecommendation\"]) : undefined;\n this.ownedQuantity = _data[\"ownedQuantity\"];\n this.rentedQuantity = _data[\"rentedQuantity\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerNutrientRecommendationQuantity {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerNutrientRecommendationQuantity();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n data[\"nutrientRecommendationId\"] = this.nutrientRecommendationId;\n data[\"nutrientRecommendation\"] = this.nutrientRecommendation ? this.nutrientRecommendation.toJSON() : undefined;\n data[\"ownedQuantity\"] = this.ownedQuantity;\n data[\"rentedQuantity\"] = this.rentedQuantity;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerNutrientRecommendationQuantity {\n const json = this.toJSON();\n let result = new FarmerNutrientRecommendationQuantity();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerNutrientRecommendationQuantity {\n farmerId: number;\n farmer: Farmer;\n nutrientRecommendationId: number;\n nutrientRecommendation: NutrientRecommendation;\n ownedQuantity: number | undefined;\n rentedQuantity: number | undefined;\n id: number;\n}\n\nexport class NMPType implements INMPType {\n name: string | undefined;\n isFullService: boolean;\n id: number;\n\n constructor(data?: INMPType) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.isFullService = _data[\"isFullService\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): NMPType {\n data = typeof data === 'object' ? data : {};\n let result = new NMPType();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"isFullService\"] = this.isFullService;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): NMPType {\n const json = this.toJSON();\n let result = new NMPType();\n result.init(json);\n return result;\n }\n}\n\nexport interface INMPType {\n name: string | undefined;\n isFullService: boolean;\n id: number;\n}\n\nexport class ManureStorageSource implements IManureStorageSource {\n name: string | undefined;\n id: number;\n\n constructor(data?: IManureStorageSource) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): ManureStorageSource {\n data = typeof data === 'object' ? data : {};\n let result = new ManureStorageSource();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): ManureStorageSource {\n const json = this.toJSON();\n let result = new ManureStorageSource();\n result.init(json);\n return result;\n }\n}\n\nexport interface IManureStorageSource {\n name: string | undefined;\n id: number;\n}\n\nexport class ManureStorageDuration implements IManureStorageDuration {\n name: string | undefined;\n id: number;\n\n constructor(data?: IManureStorageDuration) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): ManureStorageDuration {\n data = typeof data === 'object' ? data : {};\n let result = new ManureStorageDuration();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): ManureStorageDuration {\n const json = this.toJSON();\n let result = new ManureStorageDuration();\n result.init(json);\n return result;\n }\n}\n\nexport interface IManureStorageDuration {\n name: string | undefined;\n id: number;\n}\n\nexport class ManureStorageType implements IManureStorageType {\n name: string | undefined;\n id: number;\n\n constructor(data?: IManureStorageType) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): ManureStorageType {\n data = typeof data === 'object' ? data : {};\n let result = new ManureStorageType();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): ManureStorageType {\n const json = this.toJSON();\n let result = new ManureStorageType();\n result.init(json);\n return result;\n }\n}\n\nexport interface IManureStorageType {\n name: string | undefined;\n id: number;\n}\n\nexport class FarmerManureStorage implements IFarmerManureStorage {\n farmerId: number;\n farmer: Farmer;\n manureStorageSourceId: number;\n manureStorageSource: ManureStorageSource;\n manureStorageDurationId: number;\n manureStorageDuration: ManureStorageDuration;\n manureStorageTypeId: number;\n manureStorageType: ManureStorageType;\n id: number;\n\n constructor(data?: IFarmerManureStorage) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.farmer = _data[\"farmer\"] ? Farmer.fromJS(_data[\"farmer\"]) : undefined;\n this.manureStorageSourceId = _data[\"manureStorageSourceId\"];\n this.manureStorageSource = _data[\"manureStorageSource\"] ? ManureStorageSource.fromJS(_data[\"manureStorageSource\"]) : undefined;\n this.manureStorageDurationId = _data[\"manureStorageDurationId\"];\n this.manureStorageDuration = _data[\"manureStorageDuration\"] ? ManureStorageDuration.fromJS(_data[\"manureStorageDuration\"]) : undefined;\n this.manureStorageTypeId = _data[\"manureStorageTypeId\"];\n this.manureStorageType = _data[\"manureStorageType\"] ? ManureStorageType.fromJS(_data[\"manureStorageType\"]) : undefined;\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerManureStorage {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerManureStorage();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n data[\"manureStorageSourceId\"] = this.manureStorageSourceId;\n data[\"manureStorageSource\"] = this.manureStorageSource ? this.manureStorageSource.toJSON() : undefined;\n data[\"manureStorageDurationId\"] = this.manureStorageDurationId;\n data[\"manureStorageDuration\"] = this.manureStorageDuration ? this.manureStorageDuration.toJSON() : undefined;\n data[\"manureStorageTypeId\"] = this.manureStorageTypeId;\n data[\"manureStorageType\"] = this.manureStorageType ? this.manureStorageType.toJSON() : undefined;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerManureStorage {\n const json = this.toJSON();\n let result = new FarmerManureStorage();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerManureStorage {\n farmerId: number;\n farmer: Farmer;\n manureStorageSourceId: number;\n manureStorageSource: ManureStorageSource;\n manureStorageDurationId: number;\n manureStorageDuration: ManureStorageDuration;\n manureStorageTypeId: number;\n manureStorageType: ManureStorageType;\n id: number;\n}\n\nexport class Watershed implements IWatershed {\n name: string | undefined;\n code: string | undefined;\n id: number;\n\n constructor(data?: IWatershed) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.code = _data[\"code\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): Watershed {\n data = typeof data === 'object' ? data : {};\n let result = new Watershed();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"code\"] = this.code;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): Watershed {\n const json = this.toJSON();\n let result = new Watershed();\n result.init(json);\n return result;\n }\n}\n\nexport interface IWatershed {\n name: string | undefined;\n code: string | undefined;\n id: number;\n}\n\nexport class FarmerWatershed implements IFarmerWatershed {\n farmerId: number;\n farmer: Farmer;\n watershedId: number;\n watershed: Watershed;\n id: number;\n\n constructor(data?: IFarmerWatershed) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.farmer = _data[\"farmer\"] ? Farmer.fromJS(_data[\"farmer\"]) : undefined;\n this.watershedId = _data[\"watershedId\"];\n this.watershed = _data[\"watershed\"] ? Watershed.fromJS(_data[\"watershed\"]) : undefined;\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerWatershed {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerWatershed();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n data[\"watershedId\"] = this.watershedId;\n data[\"watershed\"] = this.watershed ? this.watershed.toJSON() : undefined;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerWatershed {\n const json = this.toJSON();\n let result = new FarmerWatershed();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerWatershed {\n farmerId: number;\n farmer: Farmer;\n watershedId: number;\n watershed: Watershed;\n id: number;\n}\n\nexport class CCertificationStatus implements ICCertificationStatus {\n id: CCertificationStatusEnum;\n name: string | undefined;\n\n constructor(data?: ICCertificationStatus) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n }\n }\n\n static fromJS(data: any): CCertificationStatus {\n data = typeof data === 'object' ? data : {};\n let result = new CCertificationStatus();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n return data; \n }\n\n clone(): CCertificationStatus {\n const json = this.toJSON();\n let result = new CCertificationStatus();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICCertificationStatus {\n id: CCertificationStatusEnum;\n name: string | undefined;\n}\n\nexport class CCertification implements ICCertification {\n farmerId: number;\n statusId: CCertificationStatusEnum;\n status: CCertificationStatus;\n year: number;\n isActive: boolean;\n farmer: Farmer;\n score: number | undefined;\n isPassing: boolean | undefined;\n completionMessage: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n isDeleted: boolean;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n\n constructor(data?: ICCertification) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.statusId = _data[\"statusId\"];\n this.status = _data[\"status\"] ? CCertificationStatus.fromJS(_data[\"status\"]) : undefined;\n this.year = _data[\"year\"];\n this.isActive = _data[\"isActive\"];\n this.farmer = _data[\"farmer\"] ? Farmer.fromJS(_data[\"farmer\"]) : undefined;\n this.score = _data[\"score\"];\n this.isPassing = _data[\"isPassing\"];\n this.completionMessage = _data[\"completionMessage\"];\n this.ownedAcres = _data[\"ownedAcres\"];\n this.rentedAcres = _data[\"rentedAcres\"];\n this.isDeleted = _data[\"isDeleted\"];\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): CCertification {\n data = typeof data === 'object' ? data : {};\n let result = new CCertification();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"statusId\"] = this.statusId;\n data[\"status\"] = this.status ? this.status.toJSON() : undefined;\n data[\"year\"] = this.year;\n data[\"isActive\"] = this.isActive;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n data[\"score\"] = this.score;\n data[\"isPassing\"] = this.isPassing;\n data[\"completionMessage\"] = this.completionMessage;\n data[\"ownedAcres\"] = this.ownedAcres;\n data[\"rentedAcres\"] = this.rentedAcres;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): CCertification {\n const json = this.toJSON();\n let result = new CCertification();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICCertification {\n farmerId: number;\n statusId: CCertificationStatusEnum;\n status: CCertificationStatus;\n year: number;\n isActive: boolean;\n farmer: Farmer;\n score: number | undefined;\n isPassing: boolean | undefined;\n completionMessage: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n isDeleted: boolean;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n}\n\nexport class Farmer implements IFarmer {\n userId: number;\n user: User;\n farmName: string | undefined;\n address: string | undefined;\n city: string | undefined;\n zipCode: string | undefined;\n counties: FarmerCounty[] | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n cropQuantities: FarmerCropQuantity[] | undefined;\n nutrientSourceQuantities: FarmerNutrientSourceQuantity[] | undefined;\n nutrientRecommendationQuantities: FarmerNutrientRecommendationQuantity[] | undefined;\n nmpComplete: boolean | undefined;\n nmpTypeId: number | undefined;\n nmpType: NMPType;\n nmpHasBeenStarted: boolean | undefined;\n nmpCompletionDate: moment.Moment | undefined;\n nmpAcreageQuantity: number | undefined;\n factComplete: boolean | undefined;\n factCompletionDate: moment.Moment | undefined;\n nutrientApplication: number | undefined;\n sensitiveAreas: boolean | undefined;\n manureStorages: FarmerManureStorage[] | undefined;\n costShares: FarmerCostShare[] | undefined;\n watersheds: FarmerWatershed[] | undefined;\n cCertifications: CCertification[] | undefined;\n profileMissingFields: string | undefined;\n profileErrors: string | undefined;\n lastModifierUser: User;\n infoRepresentsEntireFarmingOperation: boolean | undefined;\n infoSubjectToAuditByIndependentAuditors: boolean | undefined;\n infoFairAndAccurateToBestAbility: boolean | undefined;\n isDeleted: boolean;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n\n constructor(data?: IFarmer) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.userId = _data[\"userId\"];\n this.user = _data[\"user\"] ? User.fromJS(_data[\"user\"]) : undefined;\n this.farmName = _data[\"farmName\"];\n this.address = _data[\"address\"];\n this.city = _data[\"city\"];\n this.zipCode = _data[\"zipCode\"];\n if (Array.isArray(_data[\"counties\"])) {\n this.counties = [] as any;\n for (let item of _data[\"counties\"])\n this.counties.push(FarmerCounty.fromJS(item));\n }\n this.ownedAcres = _data[\"ownedAcres\"];\n this.rentedAcres = _data[\"rentedAcres\"];\n if (Array.isArray(_data[\"cropQuantities\"])) {\n this.cropQuantities = [] as any;\n for (let item of _data[\"cropQuantities\"])\n this.cropQuantities.push(FarmerCropQuantity.fromJS(item));\n }\n if (Array.isArray(_data[\"nutrientSourceQuantities\"])) {\n this.nutrientSourceQuantities = [] as any;\n for (let item of _data[\"nutrientSourceQuantities\"])\n this.nutrientSourceQuantities.push(FarmerNutrientSourceQuantity.fromJS(item));\n }\n if (Array.isArray(_data[\"nutrientRecommendationQuantities\"])) {\n this.nutrientRecommendationQuantities = [] as any;\n for (let item of _data[\"nutrientRecommendationQuantities\"])\n this.nutrientRecommendationQuantities.push(FarmerNutrientRecommendationQuantity.fromJS(item));\n }\n this.nmpComplete = _data[\"nmpComplete\"];\n this.nmpTypeId = _data[\"nmpTypeId\"];\n this.nmpType = _data[\"nmpType\"] ? NMPType.fromJS(_data[\"nmpType\"]) : undefined;\n this.nmpHasBeenStarted = _data[\"nmpHasBeenStarted\"];\n this.nmpCompletionDate = _data[\"nmpCompletionDate\"] ? moment(_data[\"nmpCompletionDate\"].toString()) : undefined;\n this.nmpAcreageQuantity = _data[\"nmpAcreageQuantity\"];\n this.factComplete = _data[\"factComplete\"];\n this.factCompletionDate = _data[\"factCompletionDate\"] ? moment(_data[\"factCompletionDate\"].toString()) : undefined;\n this.nutrientApplication = _data[\"nutrientApplication\"];\n this.sensitiveAreas = _data[\"sensitiveAreas\"];\n if (Array.isArray(_data[\"manureStorages\"])) {\n this.manureStorages = [] as any;\n for (let item of _data[\"manureStorages\"])\n this.manureStorages.push(FarmerManureStorage.fromJS(item));\n }\n if (Array.isArray(_data[\"costShares\"])) {\n this.costShares = [] as any;\n for (let item of _data[\"costShares\"])\n this.costShares.push(FarmerCostShare.fromJS(item));\n }\n if (Array.isArray(_data[\"watersheds\"])) {\n this.watersheds = [] as any;\n for (let item of _data[\"watersheds\"])\n this.watersheds.push(FarmerWatershed.fromJS(item));\n }\n if (Array.isArray(_data[\"cCertifications\"])) {\n this.cCertifications = [] as any;\n for (let item of _data[\"cCertifications\"])\n this.cCertifications.push(CCertification.fromJS(item));\n }\n this.profileMissingFields = _data[\"profileMissingFields\"];\n this.profileErrors = _data[\"profileErrors\"];\n this.lastModifierUser = _data[\"lastModifierUser\"] ? User.fromJS(_data[\"lastModifierUser\"]) : undefined;\n this.infoRepresentsEntireFarmingOperation = _data[\"infoRepresentsEntireFarmingOperation\"];\n this.infoSubjectToAuditByIndependentAuditors = _data[\"infoSubjectToAuditByIndependentAuditors\"];\n this.infoFairAndAccurateToBestAbility = _data[\"infoFairAndAccurateToBestAbility\"];\n this.isDeleted = _data[\"isDeleted\"];\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): Farmer {\n data = typeof data === 'object' ? data : {};\n let result = new Farmer();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"userId\"] = this.userId;\n data[\"user\"] = this.user ? this.user.toJSON() : undefined;\n data[\"farmName\"] = this.farmName;\n data[\"address\"] = this.address;\n data[\"city\"] = this.city;\n data[\"zipCode\"] = this.zipCode;\n if (Array.isArray(this.counties)) {\n data[\"counties\"] = [];\n for (let item of this.counties)\n data[\"counties\"].push(item.toJSON());\n }\n data[\"ownedAcres\"] = this.ownedAcres;\n data[\"rentedAcres\"] = this.rentedAcres;\n if (Array.isArray(this.cropQuantities)) {\n data[\"cropQuantities\"] = [];\n for (let item of this.cropQuantities)\n data[\"cropQuantities\"].push(item.toJSON());\n }\n if (Array.isArray(this.nutrientSourceQuantities)) {\n data[\"nutrientSourceQuantities\"] = [];\n for (let item of this.nutrientSourceQuantities)\n data[\"nutrientSourceQuantities\"].push(item.toJSON());\n }\n if (Array.isArray(this.nutrientRecommendationQuantities)) {\n data[\"nutrientRecommendationQuantities\"] = [];\n for (let item of this.nutrientRecommendationQuantities)\n data[\"nutrientRecommendationQuantities\"].push(item.toJSON());\n }\n data[\"nmpComplete\"] = this.nmpComplete;\n data[\"nmpTypeId\"] = this.nmpTypeId;\n data[\"nmpType\"] = this.nmpType ? this.nmpType.toJSON() : undefined;\n data[\"nmpHasBeenStarted\"] = this.nmpHasBeenStarted;\n data[\"nmpCompletionDate\"] = this.nmpCompletionDate ? this.nmpCompletionDate.toISOString() : undefined;\n data[\"nmpAcreageQuantity\"] = this.nmpAcreageQuantity;\n data[\"factComplete\"] = this.factComplete;\n data[\"factCompletionDate\"] = this.factCompletionDate ? this.factCompletionDate.toISOString() : undefined;\n data[\"nutrientApplication\"] = this.nutrientApplication;\n data[\"sensitiveAreas\"] = this.sensitiveAreas;\n if (Array.isArray(this.manureStorages)) {\n data[\"manureStorages\"] = [];\n for (let item of this.manureStorages)\n data[\"manureStorages\"].push(item.toJSON());\n }\n if (Array.isArray(this.costShares)) {\n data[\"costShares\"] = [];\n for (let item of this.costShares)\n data[\"costShares\"].push(item.toJSON());\n }\n if (Array.isArray(this.watersheds)) {\n data[\"watersheds\"] = [];\n for (let item of this.watersheds)\n data[\"watersheds\"].push(item.toJSON());\n }\n if (Array.isArray(this.cCertifications)) {\n data[\"cCertifications\"] = [];\n for (let item of this.cCertifications)\n data[\"cCertifications\"].push(item.toJSON());\n }\n data[\"profileMissingFields\"] = this.profileMissingFields;\n data[\"profileErrors\"] = this.profileErrors;\n data[\"lastModifierUser\"] = this.lastModifierUser ? this.lastModifierUser.toJSON() : undefined;\n data[\"infoRepresentsEntireFarmingOperation\"] = this.infoRepresentsEntireFarmingOperation;\n data[\"infoSubjectToAuditByIndependentAuditors\"] = this.infoSubjectToAuditByIndependentAuditors;\n data[\"infoFairAndAccurateToBestAbility\"] = this.infoFairAndAccurateToBestAbility;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): Farmer {\n const json = this.toJSON();\n let result = new Farmer();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmer {\n userId: number;\n user: User;\n farmName: string | undefined;\n address: string | undefined;\n city: string | undefined;\n zipCode: string | undefined;\n counties: FarmerCounty[] | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n cropQuantities: FarmerCropQuantity[] | undefined;\n nutrientSourceQuantities: FarmerNutrientSourceQuantity[] | undefined;\n nutrientRecommendationQuantities: FarmerNutrientRecommendationQuantity[] | undefined;\n nmpComplete: boolean | undefined;\n nmpTypeId: number | undefined;\n nmpType: NMPType;\n nmpHasBeenStarted: boolean | undefined;\n nmpCompletionDate: moment.Moment | undefined;\n nmpAcreageQuantity: number | undefined;\n factComplete: boolean | undefined;\n factCompletionDate: moment.Moment | undefined;\n nutrientApplication: number | undefined;\n sensitiveAreas: boolean | undefined;\n manureStorages: FarmerManureStorage[] | undefined;\n costShares: FarmerCostShare[] | undefined;\n watersheds: FarmerWatershed[] | undefined;\n cCertifications: CCertification[] | undefined;\n profileMissingFields: string | undefined;\n profileErrors: string | undefined;\n lastModifierUser: User;\n infoRepresentsEntireFarmingOperation: boolean | undefined;\n infoSubjectToAuditByIndependentAuditors: boolean | undefined;\n infoFairAndAccurateToBestAbility: boolean | undefined;\n isDeleted: boolean;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifierUserId: number | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n id: number;\n}\n\nexport class CostShare implements ICostShare {\n name: string | undefined;\n id: number;\n\n constructor(data?: ICostShare) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): CostShare {\n data = typeof data === 'object' ? data : {};\n let result = new CostShare();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): CostShare {\n const json = this.toJSON();\n let result = new CostShare();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICostShare {\n name: string | undefined;\n id: number;\n}\n\nexport class FarmerCostShare implements IFarmerCostShare {\n farmerId: number;\n farmer: Farmer;\n costShareId: number;\n costShare: CostShare;\n id: number;\n\n constructor(data?: IFarmerCostShare) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.farmer = _data[\"farmer\"] ? Farmer.fromJS(_data[\"farmer\"]) : undefined;\n this.costShareId = _data[\"costShareId\"];\n this.costShare = _data[\"costShare\"] ? CostShare.fromJS(_data[\"costShare\"]) : undefined;\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerCostShare {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerCostShare();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n data[\"costShareId\"] = this.costShareId;\n data[\"costShare\"] = this.costShare ? this.costShare.toJSON() : undefined;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerCostShare {\n const json = this.toJSON();\n let result = new FarmerCostShare();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerCostShare {\n farmerId: number;\n farmer: Farmer;\n costShareId: number;\n costShare: CostShare;\n id: number;\n}\n\nexport class FarmerCountyDto implements IFarmerCountyDto {\n farmerId: number;\n countyId: number;\n countyName: string | undefined;\n id: number;\n\n constructor(data?: IFarmerCountyDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.countyId = _data[\"countyId\"];\n this.countyName = _data[\"countyName\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerCountyDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerCountyDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"countyId\"] = this.countyId;\n data[\"countyName\"] = this.countyName;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerCountyDto {\n const json = this.toJSON();\n let result = new FarmerCountyDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerCountyDto {\n farmerId: number;\n countyId: number;\n countyName: string | undefined;\n id: number;\n}\n\nexport class FarmerCropQuantityDto implements IFarmerCropQuantityDto {\n farmerId: number;\n cropId: number;\n cropName: string | undefined;\n cropIsDefault: boolean;\n quantity: number | undefined;\n id: number;\n\n constructor(data?: IFarmerCropQuantityDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.cropId = _data[\"cropId\"];\n this.cropName = _data[\"cropName\"];\n this.cropIsDefault = _data[\"cropIsDefault\"];\n this.quantity = _data[\"quantity\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerCropQuantityDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerCropQuantityDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"cropId\"] = this.cropId;\n data[\"cropName\"] = this.cropName;\n data[\"cropIsDefault\"] = this.cropIsDefault;\n data[\"quantity\"] = this.quantity;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerCropQuantityDto {\n const json = this.toJSON();\n let result = new FarmerCropQuantityDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerCropQuantityDto {\n farmerId: number;\n cropId: number;\n cropName: string | undefined;\n cropIsDefault: boolean;\n quantity: number | undefined;\n id: number;\n}\n\nexport class FarmerManureStorageDto implements IFarmerManureStorageDto {\n farmerId: number;\n manureStorageSourceId: number;\n manureStorageSourceName: string | undefined;\n manureStorageDurationId: number;\n manureStorageDurationName: string | undefined;\n manureStorageTypeId: number;\n manureStorageTypeName: string | undefined;\n id: number;\n\n constructor(data?: IFarmerManureStorageDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.manureStorageSourceId = _data[\"manureStorageSourceId\"];\n this.manureStorageSourceName = _data[\"manureStorageSourceName\"];\n this.manureStorageDurationId = _data[\"manureStorageDurationId\"];\n this.manureStorageDurationName = _data[\"manureStorageDurationName\"];\n this.manureStorageTypeId = _data[\"manureStorageTypeId\"];\n this.manureStorageTypeName = _data[\"manureStorageTypeName\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerManureStorageDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerManureStorageDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"manureStorageSourceId\"] = this.manureStorageSourceId;\n data[\"manureStorageSourceName\"] = this.manureStorageSourceName;\n data[\"manureStorageDurationId\"] = this.manureStorageDurationId;\n data[\"manureStorageDurationName\"] = this.manureStorageDurationName;\n data[\"manureStorageTypeId\"] = this.manureStorageTypeId;\n data[\"manureStorageTypeName\"] = this.manureStorageTypeName;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerManureStorageDto {\n const json = this.toJSON();\n let result = new FarmerManureStorageDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerManureStorageDto {\n farmerId: number;\n manureStorageSourceId: number;\n manureStorageSourceName: string | undefined;\n manureStorageDurationId: number;\n manureStorageDurationName: string | undefined;\n manureStorageTypeId: number;\n manureStorageTypeName: string | undefined;\n id: number;\n}\n\nexport class FarmerNutrientRecommendationQuantityDto implements IFarmerNutrientRecommendationQuantityDto {\n farmerId: number;\n nutrientRecommendationId: number;\n nutrientRecommendationName: string | undefined;\n nutrientRecommendationIsFullService: boolean;\n ownedQuantity: number | undefined;\n rentedQuantity: number | undefined;\n id: number;\n\n constructor(data?: IFarmerNutrientRecommendationQuantityDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.nutrientRecommendationId = _data[\"nutrientRecommendationId\"];\n this.nutrientRecommendationName = _data[\"nutrientRecommendationName\"];\n this.nutrientRecommendationIsFullService = _data[\"nutrientRecommendationIsFullService\"];\n this.ownedQuantity = _data[\"ownedQuantity\"];\n this.rentedQuantity = _data[\"rentedQuantity\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerNutrientRecommendationQuantityDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerNutrientRecommendationQuantityDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"nutrientRecommendationId\"] = this.nutrientRecommendationId;\n data[\"nutrientRecommendationName\"] = this.nutrientRecommendationName;\n data[\"nutrientRecommendationIsFullService\"] = this.nutrientRecommendationIsFullService;\n data[\"ownedQuantity\"] = this.ownedQuantity;\n data[\"rentedQuantity\"] = this.rentedQuantity;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerNutrientRecommendationQuantityDto {\n const json = this.toJSON();\n let result = new FarmerNutrientRecommendationQuantityDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerNutrientRecommendationQuantityDto {\n farmerId: number;\n nutrientRecommendationId: number;\n nutrientRecommendationName: string | undefined;\n nutrientRecommendationIsFullService: boolean;\n ownedQuantity: number | undefined;\n rentedQuantity: number | undefined;\n id: number;\n}\n\nexport class FarmerNutrientSourceQuantityDto implements IFarmerNutrientSourceQuantityDto {\n farmerId: number;\n nutrientSourceId: number;\n nutrientSourceName: string | undefined;\n nutrientSourceSort: number;\n ownedQuantity: number | undefined;\n rentedQuantity: number | undefined;\n id: number;\n\n constructor(data?: IFarmerNutrientSourceQuantityDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.nutrientSourceId = _data[\"nutrientSourceId\"];\n this.nutrientSourceName = _data[\"nutrientSourceName\"];\n this.nutrientSourceSort = _data[\"nutrientSourceSort\"];\n this.ownedQuantity = _data[\"ownedQuantity\"];\n this.rentedQuantity = _data[\"rentedQuantity\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerNutrientSourceQuantityDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerNutrientSourceQuantityDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"nutrientSourceId\"] = this.nutrientSourceId;\n data[\"nutrientSourceName\"] = this.nutrientSourceName;\n data[\"nutrientSourceSort\"] = this.nutrientSourceSort;\n data[\"ownedQuantity\"] = this.ownedQuantity;\n data[\"rentedQuantity\"] = this.rentedQuantity;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerNutrientSourceQuantityDto {\n const json = this.toJSON();\n let result = new FarmerNutrientSourceQuantityDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerNutrientSourceQuantityDto {\n farmerId: number;\n nutrientSourceId: number;\n nutrientSourceName: string | undefined;\n nutrientSourceSort: number;\n ownedQuantity: number | undefined;\n rentedQuantity: number | undefined;\n id: number;\n}\n\nexport class FarmerDto implements IFarmerDto {\n userId: number;\n userFirstName: string | undefined;\n userLastName: string | undefined;\n userEmailAddress: string | undefined;\n userPhoneNumber: string | undefined;\n userName: string | undefined;\n userUserName: string | undefined;\n farmName: string | undefined;\n address: string | undefined;\n city: string | undefined;\n zipCode: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n nmpComplete: boolean | undefined;\n nmpTypeId: number | undefined;\n nmpHasBeenStarted: boolean | undefined;\n nmpCompletionDate: moment.Moment | undefined;\n nmpAcreageQuantity: number | undefined;\n factComplete: boolean | undefined;\n factCompletionDate: moment.Moment | undefined;\n nutrientApplication: number | undefined;\n sensitiveAreas: boolean | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModifierUserName: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n countyNames: string | undefined;\n watershedNames: string | undefined;\n hasPassedCertification: number | undefined;\n profileMissingFields: string | undefined;\n hasProfileMissingFields: boolean;\n profileErrors: string | undefined;\n hasProfileErrors: boolean;\n infoRepresentsEntireFarmingOperation: boolean | undefined;\n infoSubjectToAuditByIndependentAuditors: boolean | undefined;\n infoFairAndAccurateToBestAbility: boolean | undefined;\n id: number;\n\n constructor(data?: IFarmerDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.userId = _data[\"userId\"];\n this.userFirstName = _data[\"userFirstName\"];\n this.userLastName = _data[\"userLastName\"];\n this.userEmailAddress = _data[\"userEmailAddress\"];\n this.userPhoneNumber = _data[\"userPhoneNumber\"];\n this.userName = _data[\"userName\"];\n this.userUserName = _data[\"userUserName\"];\n this.farmName = _data[\"farmName\"];\n this.address = _data[\"address\"];\n this.city = _data[\"city\"];\n this.zipCode = _data[\"zipCode\"];\n this.ownedAcres = _data[\"ownedAcres\"];\n this.rentedAcres = _data[\"rentedAcres\"];\n this.nmpComplete = _data[\"nmpComplete\"];\n this.nmpTypeId = _data[\"nmpTypeId\"];\n this.nmpHasBeenStarted = _data[\"nmpHasBeenStarted\"];\n this.nmpCompletionDate = _data[\"nmpCompletionDate\"] ? moment(_data[\"nmpCompletionDate\"].toString()) : undefined;\n this.nmpAcreageQuantity = _data[\"nmpAcreageQuantity\"];\n this.factComplete = _data[\"factComplete\"];\n this.factCompletionDate = _data[\"factCompletionDate\"] ? moment(_data[\"factCompletionDate\"].toString()) : undefined;\n this.nutrientApplication = _data[\"nutrientApplication\"];\n this.sensitiveAreas = _data[\"sensitiveAreas\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.lastModifierUserName = _data[\"lastModifierUserName\"];\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.isDeleted = _data[\"isDeleted\"];\n this.countyNames = _data[\"countyNames\"];\n this.watershedNames = _data[\"watershedNames\"];\n this.hasPassedCertification = _data[\"hasPassedCertification\"];\n this.profileMissingFields = _data[\"profileMissingFields\"];\n this.hasProfileMissingFields = _data[\"hasProfileMissingFields\"];\n this.profileErrors = _data[\"profileErrors\"];\n this.hasProfileErrors = _data[\"hasProfileErrors\"];\n this.infoRepresentsEntireFarmingOperation = _data[\"infoRepresentsEntireFarmingOperation\"];\n this.infoSubjectToAuditByIndependentAuditors = _data[\"infoSubjectToAuditByIndependentAuditors\"];\n this.infoFairAndAccurateToBestAbility = _data[\"infoFairAndAccurateToBestAbility\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"userId\"] = this.userId;\n data[\"userFirstName\"] = this.userFirstName;\n data[\"userLastName\"] = this.userLastName;\n data[\"userEmailAddress\"] = this.userEmailAddress;\n data[\"userPhoneNumber\"] = this.userPhoneNumber;\n data[\"userName\"] = this.userName;\n data[\"userUserName\"] = this.userUserName;\n data[\"farmName\"] = this.farmName;\n data[\"address\"] = this.address;\n data[\"city\"] = this.city;\n data[\"zipCode\"] = this.zipCode;\n data[\"ownedAcres\"] = this.ownedAcres;\n data[\"rentedAcres\"] = this.rentedAcres;\n data[\"nmpComplete\"] = this.nmpComplete;\n data[\"nmpTypeId\"] = this.nmpTypeId;\n data[\"nmpHasBeenStarted\"] = this.nmpHasBeenStarted;\n data[\"nmpCompletionDate\"] = this.nmpCompletionDate ? this.nmpCompletionDate.toISOString() : undefined;\n data[\"nmpAcreageQuantity\"] = this.nmpAcreageQuantity;\n data[\"factComplete\"] = this.factComplete;\n data[\"factCompletionDate\"] = this.factCompletionDate ? this.factCompletionDate.toISOString() : undefined;\n data[\"nutrientApplication\"] = this.nutrientApplication;\n data[\"sensitiveAreas\"] = this.sensitiveAreas;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"lastModifierUserName\"] = this.lastModifierUserName;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"countyNames\"] = this.countyNames;\n data[\"watershedNames\"] = this.watershedNames;\n data[\"hasPassedCertification\"] = this.hasPassedCertification;\n data[\"profileMissingFields\"] = this.profileMissingFields;\n data[\"hasProfileMissingFields\"] = this.hasProfileMissingFields;\n data[\"profileErrors\"] = this.profileErrors;\n data[\"hasProfileErrors\"] = this.hasProfileErrors;\n data[\"infoRepresentsEntireFarmingOperation\"] = this.infoRepresentsEntireFarmingOperation;\n data[\"infoSubjectToAuditByIndependentAuditors\"] = this.infoSubjectToAuditByIndependentAuditors;\n data[\"infoFairAndAccurateToBestAbility\"] = this.infoFairAndAccurateToBestAbility;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerDto {\n const json = this.toJSON();\n let result = new FarmerDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerDto {\n userId: number;\n userFirstName: string | undefined;\n userLastName: string | undefined;\n userEmailAddress: string | undefined;\n userPhoneNumber: string | undefined;\n userName: string | undefined;\n userUserName: string | undefined;\n farmName: string | undefined;\n address: string | undefined;\n city: string | undefined;\n zipCode: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n nmpComplete: boolean | undefined;\n nmpTypeId: number | undefined;\n nmpHasBeenStarted: boolean | undefined;\n nmpCompletionDate: moment.Moment | undefined;\n nmpAcreageQuantity: number | undefined;\n factComplete: boolean | undefined;\n factCompletionDate: moment.Moment | undefined;\n nutrientApplication: number | undefined;\n sensitiveAreas: boolean | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModifierUserName: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n countyNames: string | undefined;\n watershedNames: string | undefined;\n hasPassedCertification: number | undefined;\n profileMissingFields: string | undefined;\n hasProfileMissingFields: boolean;\n profileErrors: string | undefined;\n hasProfileErrors: boolean;\n infoRepresentsEntireFarmingOperation: boolean | undefined;\n infoSubjectToAuditByIndependentAuditors: boolean | undefined;\n infoFairAndAccurateToBestAbility: boolean | undefined;\n id: number;\n}\n\nexport class FarmerDtoPagedResultDto implements IFarmerDtoPagedResultDto {\n totalCount: number;\n items: FarmerDto[] | undefined;\n\n constructor(data?: IFarmerDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(FarmerDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): FarmerDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): FarmerDtoPagedResultDto {\n const json = this.toJSON();\n let result = new FarmerDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerDtoPagedResultDto {\n totalCount: number;\n items: FarmerDto[] | undefined;\n}\n\nexport class FarmerUpdateDto implements IFarmerUpdateDto {\n id: number;\n userId: number;\n farmName: string | undefined;\n address: string | undefined;\n city: string | undefined;\n zipCode: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n nmpComplete: boolean | undefined;\n nmpTypeId: number | undefined;\n nmpHasBeenStarted: boolean | undefined;\n nmpCompletionDate: moment.Moment | undefined;\n nmpAcreageQuantity: number | undefined;\n factComplete: boolean | undefined;\n factCompletionDate: moment.Moment | undefined;\n nutrientApplication: number | undefined;\n sensitiveAreas: boolean | undefined;\n profileMissingFields: string | undefined;\n profileErrors: string | undefined;\n infoRepresentsEntireFarmingOperation: boolean | undefined;\n infoSubjectToAuditByIndependentAuditors: boolean | undefined;\n infoFairAndAccurateToBestAbility: boolean | undefined;\n token: string;\n\n constructor(data?: IFarmerUpdateDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.userId = _data[\"userId\"];\n this.farmName = _data[\"farmName\"];\n this.address = _data[\"address\"];\n this.city = _data[\"city\"];\n this.zipCode = _data[\"zipCode\"];\n this.ownedAcres = _data[\"ownedAcres\"];\n this.rentedAcres = _data[\"rentedAcres\"];\n this.nmpComplete = _data[\"nmpComplete\"];\n this.nmpTypeId = _data[\"nmpTypeId\"];\n this.nmpHasBeenStarted = _data[\"nmpHasBeenStarted\"];\n this.nmpCompletionDate = _data[\"nmpCompletionDate\"] ? moment(_data[\"nmpCompletionDate\"].toString()) : undefined;\n this.nmpAcreageQuantity = _data[\"nmpAcreageQuantity\"];\n this.factComplete = _data[\"factComplete\"];\n this.factCompletionDate = _data[\"factCompletionDate\"] ? moment(_data[\"factCompletionDate\"].toString()) : undefined;\n this.nutrientApplication = _data[\"nutrientApplication\"];\n this.sensitiveAreas = _data[\"sensitiveAreas\"];\n this.profileMissingFields = _data[\"profileMissingFields\"];\n this.profileErrors = _data[\"profileErrors\"];\n this.infoRepresentsEntireFarmingOperation = _data[\"infoRepresentsEntireFarmingOperation\"];\n this.infoSubjectToAuditByIndependentAuditors = _data[\"infoSubjectToAuditByIndependentAuditors\"];\n this.infoFairAndAccurateToBestAbility = _data[\"infoFairAndAccurateToBestAbility\"];\n this.token = _data[\"token\"];\n }\n }\n\n static fromJS(data: any): FarmerUpdateDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerUpdateDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"userId\"] = this.userId;\n data[\"farmName\"] = this.farmName;\n data[\"address\"] = this.address;\n data[\"city\"] = this.city;\n data[\"zipCode\"] = this.zipCode;\n data[\"ownedAcres\"] = this.ownedAcres;\n data[\"rentedAcres\"] = this.rentedAcres;\n data[\"nmpComplete\"] = this.nmpComplete;\n data[\"nmpTypeId\"] = this.nmpTypeId;\n data[\"nmpHasBeenStarted\"] = this.nmpHasBeenStarted;\n data[\"nmpCompletionDate\"] = this.nmpCompletionDate ? this.nmpCompletionDate.toISOString() : undefined;\n data[\"nmpAcreageQuantity\"] = this.nmpAcreageQuantity;\n data[\"factComplete\"] = this.factComplete;\n data[\"factCompletionDate\"] = this.factCompletionDate ? this.factCompletionDate.toISOString() : undefined;\n data[\"nutrientApplication\"] = this.nutrientApplication;\n data[\"sensitiveAreas\"] = this.sensitiveAreas;\n data[\"profileMissingFields\"] = this.profileMissingFields;\n data[\"profileErrors\"] = this.profileErrors;\n data[\"infoRepresentsEntireFarmingOperation\"] = this.infoRepresentsEntireFarmingOperation;\n data[\"infoSubjectToAuditByIndependentAuditors\"] = this.infoSubjectToAuditByIndependentAuditors;\n data[\"infoFairAndAccurateToBestAbility\"] = this.infoFairAndAccurateToBestAbility;\n data[\"token\"] = this.token;\n return data; \n }\n\n clone(): FarmerUpdateDto {\n const json = this.toJSON();\n let result = new FarmerUpdateDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerUpdateDto {\n id: number;\n userId: number;\n farmName: string | undefined;\n address: string | undefined;\n city: string | undefined;\n zipCode: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n nmpComplete: boolean | undefined;\n nmpTypeId: number | undefined;\n nmpHasBeenStarted: boolean | undefined;\n nmpCompletionDate: moment.Moment | undefined;\n nmpAcreageQuantity: number | undefined;\n factComplete: boolean | undefined;\n factCompletionDate: moment.Moment | undefined;\n nutrientApplication: number | undefined;\n sensitiveAreas: boolean | undefined;\n profileMissingFields: string | undefined;\n profileErrors: string | undefined;\n infoRepresentsEntireFarmingOperation: boolean | undefined;\n infoSubjectToAuditByIndependentAuditors: boolean | undefined;\n infoFairAndAccurateToBestAbility: boolean | undefined;\n token: string;\n}\n\nexport class FarmerCreateDto implements IFarmerCreateDto {\n userId: number;\n farmName: string | undefined;\n address: string | undefined;\n city: string | undefined;\n zipCode: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n nmpComplete: boolean | undefined;\n nmpTypeId: number | undefined;\n nmpHasBeenStarted: boolean | undefined;\n nmpCompletionDate: moment.Moment | undefined;\n nmpAcreageQuantity: number | undefined;\n factComplete: boolean | undefined;\n factCompletionDate: moment.Moment | undefined;\n nutrientApplication: number | undefined;\n sensitiveAreas: boolean | undefined;\n profileMissingFields: string | undefined;\n profileErrors: string | undefined;\n infoRepresentsEntireFarmingOperation: boolean | undefined;\n infoSubjectToAuditByIndependentAuditors: boolean | undefined;\n infoFairAndAccurateToBestAbility: boolean | undefined;\n token: string;\n\n constructor(data?: IFarmerCreateDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.userId = _data[\"userId\"];\n this.farmName = _data[\"farmName\"];\n this.address = _data[\"address\"];\n this.city = _data[\"city\"];\n this.zipCode = _data[\"zipCode\"];\n this.ownedAcres = _data[\"ownedAcres\"];\n this.rentedAcres = _data[\"rentedAcres\"];\n this.nmpComplete = _data[\"nmpComplete\"];\n this.nmpTypeId = _data[\"nmpTypeId\"];\n this.nmpHasBeenStarted = _data[\"nmpHasBeenStarted\"];\n this.nmpCompletionDate = _data[\"nmpCompletionDate\"] ? moment(_data[\"nmpCompletionDate\"].toString()) : undefined;\n this.nmpAcreageQuantity = _data[\"nmpAcreageQuantity\"];\n this.factComplete = _data[\"factComplete\"];\n this.factCompletionDate = _data[\"factCompletionDate\"] ? moment(_data[\"factCompletionDate\"].toString()) : undefined;\n this.nutrientApplication = _data[\"nutrientApplication\"];\n this.sensitiveAreas = _data[\"sensitiveAreas\"];\n this.profileMissingFields = _data[\"profileMissingFields\"];\n this.profileErrors = _data[\"profileErrors\"];\n this.infoRepresentsEntireFarmingOperation = _data[\"infoRepresentsEntireFarmingOperation\"];\n this.infoSubjectToAuditByIndependentAuditors = _data[\"infoSubjectToAuditByIndependentAuditors\"];\n this.infoFairAndAccurateToBestAbility = _data[\"infoFairAndAccurateToBestAbility\"];\n this.token = _data[\"token\"];\n }\n }\n\n static fromJS(data: any): FarmerCreateDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerCreateDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"userId\"] = this.userId;\n data[\"farmName\"] = this.farmName;\n data[\"address\"] = this.address;\n data[\"city\"] = this.city;\n data[\"zipCode\"] = this.zipCode;\n data[\"ownedAcres\"] = this.ownedAcres;\n data[\"rentedAcres\"] = this.rentedAcres;\n data[\"nmpComplete\"] = this.nmpComplete;\n data[\"nmpTypeId\"] = this.nmpTypeId;\n data[\"nmpHasBeenStarted\"] = this.nmpHasBeenStarted;\n data[\"nmpCompletionDate\"] = this.nmpCompletionDate ? this.nmpCompletionDate.toISOString() : undefined;\n data[\"nmpAcreageQuantity\"] = this.nmpAcreageQuantity;\n data[\"factComplete\"] = this.factComplete;\n data[\"factCompletionDate\"] = this.factCompletionDate ? this.factCompletionDate.toISOString() : undefined;\n data[\"nutrientApplication\"] = this.nutrientApplication;\n data[\"sensitiveAreas\"] = this.sensitiveAreas;\n data[\"profileMissingFields\"] = this.profileMissingFields;\n data[\"profileErrors\"] = this.profileErrors;\n data[\"infoRepresentsEntireFarmingOperation\"] = this.infoRepresentsEntireFarmingOperation;\n data[\"infoSubjectToAuditByIndependentAuditors\"] = this.infoSubjectToAuditByIndependentAuditors;\n data[\"infoFairAndAccurateToBestAbility\"] = this.infoFairAndAccurateToBestAbility;\n data[\"token\"] = this.token;\n return data; \n }\n\n clone(): FarmerCreateDto {\n const json = this.toJSON();\n let result = new FarmerCreateDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerCreateDto {\n userId: number;\n farmName: string | undefined;\n address: string | undefined;\n city: string | undefined;\n zipCode: string | undefined;\n ownedAcres: number | undefined;\n rentedAcres: number | undefined;\n nmpComplete: boolean | undefined;\n nmpTypeId: number | undefined;\n nmpHasBeenStarted: boolean | undefined;\n nmpCompletionDate: moment.Moment | undefined;\n nmpAcreageQuantity: number | undefined;\n factComplete: boolean | undefined;\n factCompletionDate: moment.Moment | undefined;\n nutrientApplication: number | undefined;\n sensitiveAreas: boolean | undefined;\n profileMissingFields: string | undefined;\n profileErrors: string | undefined;\n infoRepresentsEntireFarmingOperation: boolean | undefined;\n infoSubjectToAuditByIndependentAuditors: boolean | undefined;\n infoFairAndAccurateToBestAbility: boolean | undefined;\n token: string;\n}\n\nexport class UserDto implements IUserDto {\n userName: string | undefined;\n name: string | undefined;\n surname: string | undefined;\n emailAddress: string | undefined;\n isActive: boolean;\n fullName: string | undefined;\n firstName: string | undefined;\n lastName: string | undefined;\n phoneNumber: string | undefined;\n lastLoginTime: moment.Moment | undefined;\n creationTime: moment.Moment;\n roleNames: string[] | undefined;\n id: number;\n\n constructor(data?: IUserDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.userName = _data[\"userName\"];\n this.name = _data[\"name\"];\n this.surname = _data[\"surname\"];\n this.emailAddress = _data[\"emailAddress\"];\n this.isActive = _data[\"isActive\"];\n this.fullName = _data[\"fullName\"];\n this.firstName = _data[\"firstName\"];\n this.lastName = _data[\"lastName\"];\n this.phoneNumber = _data[\"phoneNumber\"];\n this.lastLoginTime = _data[\"lastLoginTime\"] ? moment(_data[\"lastLoginTime\"].toString()) : undefined;\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n if (Array.isArray(_data[\"roleNames\"])) {\n this.roleNames = [] as any;\n for (let item of _data[\"roleNames\"])\n this.roleNames.push(item);\n }\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): UserDto {\n data = typeof data === 'object' ? data : {};\n let result = new UserDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"userName\"] = this.userName;\n data[\"name\"] = this.name;\n data[\"surname\"] = this.surname;\n data[\"emailAddress\"] = this.emailAddress;\n data[\"isActive\"] = this.isActive;\n data[\"fullName\"] = this.fullName;\n data[\"firstName\"] = this.firstName;\n data[\"lastName\"] = this.lastName;\n data[\"phoneNumber\"] = this.phoneNumber;\n data[\"lastLoginTime\"] = this.lastLoginTime ? this.lastLoginTime.toISOString() : undefined;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n if (Array.isArray(this.roleNames)) {\n data[\"roleNames\"] = [];\n for (let item of this.roleNames)\n data[\"roleNames\"].push(item);\n }\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): UserDto {\n const json = this.toJSON();\n let result = new UserDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserDto {\n userName: string | undefined;\n name: string | undefined;\n surname: string | undefined;\n emailAddress: string | undefined;\n isActive: boolean;\n fullName: string | undefined;\n firstName: string | undefined;\n lastName: string | undefined;\n phoneNumber: string | undefined;\n lastLoginTime: moment.Moment | undefined;\n creationTime: moment.Moment;\n roleNames: string[] | undefined;\n id: number;\n}\n\nexport class FarmerSaveDto implements IFarmerSaveDto {\n farmerDto: FarmerDto;\n userDto: UserDto;\n\n constructor(data?: IFarmerSaveDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerDto = _data[\"farmerDto\"] ? FarmerDto.fromJS(_data[\"farmerDto\"]) : undefined;\n this.userDto = _data[\"userDto\"] ? UserDto.fromJS(_data[\"userDto\"]) : undefined;\n }\n }\n\n static fromJS(data: any): FarmerSaveDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerSaveDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerDto\"] = this.farmerDto ? this.farmerDto.toJSON() : undefined;\n data[\"userDto\"] = this.userDto ? this.userDto.toJSON() : undefined;\n return data; \n }\n\n clone(): FarmerSaveDto {\n const json = this.toJSON();\n let result = new FarmerSaveDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerSaveDto {\n farmerDto: FarmerDto;\n userDto: UserDto;\n}\n\nexport class FarmerWatershedDto implements IFarmerWatershedDto {\n farmerId: number;\n watershedId: number;\n watershedName: string | undefined;\n watershedCode: string | undefined;\n id: number;\n\n constructor(data?: IFarmerWatershedDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmerId = _data[\"farmerId\"];\n this.watershedId = _data[\"watershedId\"];\n this.watershedName = _data[\"watershedName\"];\n this.watershedCode = _data[\"watershedCode\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): FarmerWatershedDto {\n data = typeof data === 'object' ? data : {};\n let result = new FarmerWatershedDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmerId\"] = this.farmerId;\n data[\"watershedId\"] = this.watershedId;\n data[\"watershedName\"] = this.watershedName;\n data[\"watershedCode\"] = this.watershedCode;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): FarmerWatershedDto {\n const json = this.toJSON();\n let result = new FarmerWatershedDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFarmerWatershedDto {\n farmerId: number;\n watershedId: number;\n watershedName: string | undefined;\n watershedCode: string | undefined;\n id: number;\n}\n\nexport class ManureStorageDurationDto implements IManureStorageDurationDto {\n name: string | undefined;\n id: number;\n\n constructor(data?: IManureStorageDurationDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): ManureStorageDurationDto {\n data = typeof data === 'object' ? data : {};\n let result = new ManureStorageDurationDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): ManureStorageDurationDto {\n const json = this.toJSON();\n let result = new ManureStorageDurationDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IManureStorageDurationDto {\n name: string | undefined;\n id: number;\n}\n\nexport class ManureStorageSourceDto implements IManureStorageSourceDto {\n name: string | undefined;\n id: number;\n\n constructor(data?: IManureStorageSourceDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): ManureStorageSourceDto {\n data = typeof data === 'object' ? data : {};\n let result = new ManureStorageSourceDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): ManureStorageSourceDto {\n const json = this.toJSON();\n let result = new ManureStorageSourceDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IManureStorageSourceDto {\n name: string | undefined;\n id: number;\n}\n\nexport class ManureStorageTypeDto implements IManureStorageTypeDto {\n name: string | undefined;\n id: number;\n\n constructor(data?: IManureStorageTypeDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): ManureStorageTypeDto {\n data = typeof data === 'object' ? data : {};\n let result = new ManureStorageTypeDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): ManureStorageTypeDto {\n const json = this.toJSON();\n let result = new ManureStorageTypeDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IManureStorageTypeDto {\n name: string | undefined;\n id: number;\n}\n\nexport class NMPTypeDto implements INMPTypeDto {\n name: string | undefined;\n isFullService: boolean;\n id: number;\n\n constructor(data?: INMPTypeDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.isFullService = _data[\"isFullService\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): NMPTypeDto {\n data = typeof data === 'object' ? data : {};\n let result = new NMPTypeDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"isFullService\"] = this.isFullService;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): NMPTypeDto {\n const json = this.toJSON();\n let result = new NMPTypeDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface INMPTypeDto {\n name: string | undefined;\n isFullService: boolean;\n id: number;\n}\n\nexport class NutrientRecommendationDto implements INutrientRecommendationDto {\n name: string | undefined;\n isFullService: boolean;\n id: number;\n\n constructor(data?: INutrientRecommendationDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.isFullService = _data[\"isFullService\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): NutrientRecommendationDto {\n data = typeof data === 'object' ? data : {};\n let result = new NutrientRecommendationDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"isFullService\"] = this.isFullService;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): NutrientRecommendationDto {\n const json = this.toJSON();\n let result = new NutrientRecommendationDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface INutrientRecommendationDto {\n name: string | undefined;\n isFullService: boolean;\n id: number;\n}\n\nexport class NutrientSourceDto implements INutrientSourceDto {\n name: string | undefined;\n sort: number;\n id: number;\n\n constructor(data?: INutrientSourceDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.sort = _data[\"sort\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): NutrientSourceDto {\n data = typeof data === 'object' ? data : {};\n let result = new NutrientSourceDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"sort\"] = this.sort;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): NutrientSourceDto {\n const json = this.toJSON();\n let result = new NutrientSourceDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface INutrientSourceDto {\n name: string | undefined;\n sort: number;\n id: number;\n}\n\nexport class PasswordResetTokenDto implements IPasswordResetTokenDto {\n token: string;\n userId: number;\n userEmailAddress: string | undefined;\n userUserName: string | undefined;\n expirationDate: moment.Moment;\n isActive: boolean;\n id: number;\n\n constructor(data?: IPasswordResetTokenDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.token = _data[\"token\"];\n this.userId = _data[\"userId\"];\n this.userEmailAddress = _data[\"userEmailAddress\"];\n this.userUserName = _data[\"userUserName\"];\n this.expirationDate = _data[\"expirationDate\"] ? moment(_data[\"expirationDate\"].toString()) : undefined;\n this.isActive = _data[\"isActive\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): PasswordResetTokenDto {\n data = typeof data === 'object' ? data : {};\n let result = new PasswordResetTokenDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"token\"] = this.token;\n data[\"userId\"] = this.userId;\n data[\"userEmailAddress\"] = this.userEmailAddress;\n data[\"userUserName\"] = this.userUserName;\n data[\"expirationDate\"] = this.expirationDate ? this.expirationDate.toISOString() : undefined;\n data[\"isActive\"] = this.isActive;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): PasswordResetTokenDto {\n const json = this.toJSON();\n let result = new PasswordResetTokenDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IPasswordResetTokenDto {\n token: string;\n userId: number;\n userEmailAddress: string | undefined;\n userUserName: string | undefined;\n expirationDate: moment.Moment;\n isActive: boolean;\n id: number;\n}\n\nexport class PasswordResetRequestDto implements IPasswordResetRequestDto {\n token: string | undefined;\n password: string | undefined;\n\n constructor(data?: IPasswordResetRequestDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.token = _data[\"token\"];\n this.password = _data[\"password\"];\n }\n }\n\n static fromJS(data: any): PasswordResetRequestDto {\n data = typeof data === 'object' ? data : {};\n let result = new PasswordResetRequestDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"token\"] = this.token;\n data[\"password\"] = this.password;\n return data; \n }\n\n clone(): PasswordResetRequestDto {\n const json = this.toJSON();\n let result = new PasswordResetRequestDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IPasswordResetRequestDto {\n token: string | undefined;\n password: string | undefined;\n}\n\nexport class RegistrationTokenDto implements IRegistrationTokenDto {\n token: string;\n emailAddress: string | undefined;\n expirationDate: moment.Moment;\n isActive: boolean;\n id: number;\n\n constructor(data?: IRegistrationTokenDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.token = _data[\"token\"];\n this.emailAddress = _data[\"emailAddress\"];\n this.expirationDate = _data[\"expirationDate\"] ? moment(_data[\"expirationDate\"].toString()) : undefined;\n this.isActive = _data[\"isActive\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): RegistrationTokenDto {\n data = typeof data === 'object' ? data : {};\n let result = new RegistrationTokenDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"token\"] = this.token;\n data[\"emailAddress\"] = this.emailAddress;\n data[\"expirationDate\"] = this.expirationDate ? this.expirationDate.toISOString() : undefined;\n data[\"isActive\"] = this.isActive;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): RegistrationTokenDto {\n const json = this.toJSON();\n let result = new RegistrationTokenDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRegistrationTokenDto {\n token: string;\n emailAddress: string | undefined;\n expirationDate: moment.Moment;\n isActive: boolean;\n id: number;\n}\n\nexport class CreateRoleDto implements ICreateRoleDto {\n name: string | undefined;\n displayName: string | undefined;\n normalizedName: string | undefined;\n description: string | undefined;\n grantedPermissions: string[] | undefined;\n\n constructor(data?: ICreateRoleDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.displayName = _data[\"displayName\"];\n this.normalizedName = _data[\"normalizedName\"];\n this.description = _data[\"description\"];\n if (Array.isArray(_data[\"grantedPermissions\"])) {\n this.grantedPermissions = [] as any;\n for (let item of _data[\"grantedPermissions\"])\n this.grantedPermissions.push(item);\n }\n }\n }\n\n static fromJS(data: any): CreateRoleDto {\n data = typeof data === 'object' ? data : {};\n let result = new CreateRoleDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"displayName\"] = this.displayName;\n data[\"normalizedName\"] = this.normalizedName;\n data[\"description\"] = this.description;\n if (Array.isArray(this.grantedPermissions)) {\n data[\"grantedPermissions\"] = [];\n for (let item of this.grantedPermissions)\n data[\"grantedPermissions\"].push(item);\n }\n return data; \n }\n\n clone(): CreateRoleDto {\n const json = this.toJSON();\n let result = new CreateRoleDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICreateRoleDto {\n name: string | undefined;\n displayName: string | undefined;\n normalizedName: string | undefined;\n description: string | undefined;\n grantedPermissions: string[] | undefined;\n}\n\nexport class RoleDto implements IRoleDto {\n name: string | undefined;\n displayName: string | undefined;\n normalizedName: string | undefined;\n description: string | undefined;\n grantedPermissions: string[] | undefined;\n id: number;\n\n constructor(data?: IRoleDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.displayName = _data[\"displayName\"];\n this.normalizedName = _data[\"normalizedName\"];\n this.description = _data[\"description\"];\n if (Array.isArray(_data[\"grantedPermissions\"])) {\n this.grantedPermissions = [] as any;\n for (let item of _data[\"grantedPermissions\"])\n this.grantedPermissions.push(item);\n }\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): RoleDto {\n data = typeof data === 'object' ? data : {};\n let result = new RoleDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"displayName\"] = this.displayName;\n data[\"normalizedName\"] = this.normalizedName;\n data[\"description\"] = this.description;\n if (Array.isArray(this.grantedPermissions)) {\n data[\"grantedPermissions\"] = [];\n for (let item of this.grantedPermissions)\n data[\"grantedPermissions\"].push(item);\n }\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): RoleDto {\n const json = this.toJSON();\n let result = new RoleDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRoleDto {\n name: string | undefined;\n displayName: string | undefined;\n normalizedName: string | undefined;\n description: string | undefined;\n grantedPermissions: string[] | undefined;\n id: number;\n}\n\nexport class RoleListDto implements IRoleListDto {\n name: string | undefined;\n displayName: string | undefined;\n isStatic: boolean;\n isDefault: boolean;\n creationTime: moment.Moment;\n id: number;\n\n constructor(data?: IRoleListDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.displayName = _data[\"displayName\"];\n this.isStatic = _data[\"isStatic\"];\n this.isDefault = _data[\"isDefault\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): RoleListDto {\n data = typeof data === 'object' ? data : {};\n let result = new RoleListDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"displayName\"] = this.displayName;\n data[\"isStatic\"] = this.isStatic;\n data[\"isDefault\"] = this.isDefault;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): RoleListDto {\n const json = this.toJSON();\n let result = new RoleListDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRoleListDto {\n name: string | undefined;\n displayName: string | undefined;\n isStatic: boolean;\n isDefault: boolean;\n creationTime: moment.Moment;\n id: number;\n}\n\nexport class RoleListDtoListResultDto implements IRoleListDtoListResultDto {\n items: RoleListDto[] | undefined;\n\n constructor(data?: IRoleListDtoListResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(RoleListDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): RoleListDtoListResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new RoleListDtoListResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): RoleListDtoListResultDto {\n const json = this.toJSON();\n let result = new RoleListDtoListResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRoleListDtoListResultDto {\n items: RoleListDto[] | undefined;\n}\n\nexport class PermissionDto implements IPermissionDto {\n name: string | undefined;\n displayName: string | undefined;\n description: string | undefined;\n id: number;\n\n constructor(data?: IPermissionDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.displayName = _data[\"displayName\"];\n this.description = _data[\"description\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): PermissionDto {\n data = typeof data === 'object' ? data : {};\n let result = new PermissionDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"displayName\"] = this.displayName;\n data[\"description\"] = this.description;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): PermissionDto {\n const json = this.toJSON();\n let result = new PermissionDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IPermissionDto {\n name: string | undefined;\n displayName: string | undefined;\n description: string | undefined;\n id: number;\n}\n\nexport class PermissionDtoListResultDto implements IPermissionDtoListResultDto {\n items: PermissionDto[] | undefined;\n\n constructor(data?: IPermissionDtoListResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(PermissionDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): PermissionDtoListResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new PermissionDtoListResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): PermissionDtoListResultDto {\n const json = this.toJSON();\n let result = new PermissionDtoListResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IPermissionDtoListResultDto {\n items: PermissionDto[] | undefined;\n}\n\nexport class RoleEditDto implements IRoleEditDto {\n name: string | undefined;\n displayName: string | undefined;\n description: string | undefined;\n isStatic: boolean;\n id: number;\n\n constructor(data?: IRoleEditDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.displayName = _data[\"displayName\"];\n this.description = _data[\"description\"];\n this.isStatic = _data[\"isStatic\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): RoleEditDto {\n data = typeof data === 'object' ? data : {};\n let result = new RoleEditDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"displayName\"] = this.displayName;\n data[\"description\"] = this.description;\n data[\"isStatic\"] = this.isStatic;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): RoleEditDto {\n const json = this.toJSON();\n let result = new RoleEditDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRoleEditDto {\n name: string | undefined;\n displayName: string | undefined;\n description: string | undefined;\n isStatic: boolean;\n id: number;\n}\n\nexport class FlatPermissionDto implements IFlatPermissionDto {\n name: string | undefined;\n displayName: string | undefined;\n description: string | undefined;\n\n constructor(data?: IFlatPermissionDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.displayName = _data[\"displayName\"];\n this.description = _data[\"description\"];\n }\n }\n\n static fromJS(data: any): FlatPermissionDto {\n data = typeof data === 'object' ? data : {};\n let result = new FlatPermissionDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"displayName\"] = this.displayName;\n data[\"description\"] = this.description;\n return data; \n }\n\n clone(): FlatPermissionDto {\n const json = this.toJSON();\n let result = new FlatPermissionDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IFlatPermissionDto {\n name: string | undefined;\n displayName: string | undefined;\n description: string | undefined;\n}\n\nexport class GetRoleForEditOutput implements IGetRoleForEditOutput {\n role: RoleEditDto;\n permissions: FlatPermissionDto[] | undefined;\n grantedPermissionNames: string[] | undefined;\n\n constructor(data?: IGetRoleForEditOutput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.role = _data[\"role\"] ? RoleEditDto.fromJS(_data[\"role\"]) : undefined;\n if (Array.isArray(_data[\"permissions\"])) {\n this.permissions = [] as any;\n for (let item of _data[\"permissions\"])\n this.permissions.push(FlatPermissionDto.fromJS(item));\n }\n if (Array.isArray(_data[\"grantedPermissionNames\"])) {\n this.grantedPermissionNames = [] as any;\n for (let item of _data[\"grantedPermissionNames\"])\n this.grantedPermissionNames.push(item);\n }\n }\n }\n\n static fromJS(data: any): GetRoleForEditOutput {\n data = typeof data === 'object' ? data : {};\n let result = new GetRoleForEditOutput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"role\"] = this.role ? this.role.toJSON() : undefined;\n if (Array.isArray(this.permissions)) {\n data[\"permissions\"] = [];\n for (let item of this.permissions)\n data[\"permissions\"].push(item.toJSON());\n }\n if (Array.isArray(this.grantedPermissionNames)) {\n data[\"grantedPermissionNames\"] = [];\n for (let item of this.grantedPermissionNames)\n data[\"grantedPermissionNames\"].push(item);\n }\n return data; \n }\n\n clone(): GetRoleForEditOutput {\n const json = this.toJSON();\n let result = new GetRoleForEditOutput();\n result.init(json);\n return result;\n }\n}\n\nexport interface IGetRoleForEditOutput {\n role: RoleEditDto;\n permissions: FlatPermissionDto[] | undefined;\n grantedPermissionNames: string[] | undefined;\n}\n\nexport class RoleDtoPagedResultDto implements IRoleDtoPagedResultDto {\n totalCount: number;\n items: RoleDto[] | undefined;\n\n constructor(data?: IRoleDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(RoleDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): RoleDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new RoleDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): RoleDtoPagedResultDto {\n const json = this.toJSON();\n let result = new RoleDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRoleDtoPagedResultDto {\n totalCount: number;\n items: RoleDto[] | undefined;\n}\n\nexport class SecurityQuestionDto implements ISecurityQuestionDto {\n label: string | undefined;\n id: number;\n\n constructor(data?: ISecurityQuestionDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.label = _data[\"label\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): SecurityQuestionDto {\n data = typeof data === 'object' ? data : {};\n let result = new SecurityQuestionDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): SecurityQuestionDto {\n const json = this.toJSON();\n let result = new SecurityQuestionDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISecurityQuestionDto {\n label: string | undefined;\n id: number;\n}\n\nexport class ApplicationInfoDto implements IApplicationInfoDto {\n version: string | undefined;\n releaseDate: moment.Moment;\n features: { [key: string]: boolean; } | undefined;\n\n constructor(data?: IApplicationInfoDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.version = _data[\"version\"];\n this.releaseDate = _data[\"releaseDate\"] ? moment(_data[\"releaseDate\"].toString()) : undefined;\n if (_data[\"features\"]) {\n this.features = {} as any;\n for (let key in _data[\"features\"]) {\n if (_data[\"features\"].hasOwnProperty(key))\n this.features[key] = _data[\"features\"][key];\n }\n }\n }\n }\n\n static fromJS(data: any): ApplicationInfoDto {\n data = typeof data === 'object' ? data : {};\n let result = new ApplicationInfoDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"version\"] = this.version;\n data[\"releaseDate\"] = this.releaseDate ? this.releaseDate.toISOString() : undefined;\n if (this.features) {\n data[\"features\"] = {};\n for (let key in this.features) {\n if (this.features.hasOwnProperty(key))\n data[\"features\"][key] = this.features[key];\n }\n }\n return data; \n }\n\n clone(): ApplicationInfoDto {\n const json = this.toJSON();\n let result = new ApplicationInfoDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IApplicationInfoDto {\n version: string | undefined;\n releaseDate: moment.Moment;\n features: { [key: string]: boolean; } | undefined;\n}\n\nexport class UserLoginInfoDto implements IUserLoginInfoDto {\n name: string | undefined;\n surname: string | undefined;\n userName: string | undefined;\n emailAddress: string | undefined;\n id: number;\n\n constructor(data?: IUserLoginInfoDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.surname = _data[\"surname\"];\n this.userName = _data[\"userName\"];\n this.emailAddress = _data[\"emailAddress\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): UserLoginInfoDto {\n data = typeof data === 'object' ? data : {};\n let result = new UserLoginInfoDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"surname\"] = this.surname;\n data[\"userName\"] = this.userName;\n data[\"emailAddress\"] = this.emailAddress;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): UserLoginInfoDto {\n const json = this.toJSON();\n let result = new UserLoginInfoDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserLoginInfoDto {\n name: string | undefined;\n surname: string | undefined;\n userName: string | undefined;\n emailAddress: string | undefined;\n id: number;\n}\n\nexport class TenantLoginInfoDto implements ITenantLoginInfoDto {\n tenancyName: string | undefined;\n name: string | undefined;\n id: number;\n\n constructor(data?: ITenantLoginInfoDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenancyName = _data[\"tenancyName\"];\n this.name = _data[\"name\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): TenantLoginInfoDto {\n data = typeof data === 'object' ? data : {};\n let result = new TenantLoginInfoDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenancyName\"] = this.tenancyName;\n data[\"name\"] = this.name;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): TenantLoginInfoDto {\n const json = this.toJSON();\n let result = new TenantLoginInfoDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ITenantLoginInfoDto {\n tenancyName: string | undefined;\n name: string | undefined;\n id: number;\n}\n\nexport class GetCurrentLoginInformationsOutput implements IGetCurrentLoginInformationsOutput {\n application: ApplicationInfoDto;\n user: UserLoginInfoDto;\n tenant: TenantLoginInfoDto;\n farmer: FarmerDto;\n\n constructor(data?: IGetCurrentLoginInformationsOutput) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.application = _data[\"application\"] ? ApplicationInfoDto.fromJS(_data[\"application\"]) : undefined;\n this.user = _data[\"user\"] ? UserLoginInfoDto.fromJS(_data[\"user\"]) : undefined;\n this.tenant = _data[\"tenant\"] ? TenantLoginInfoDto.fromJS(_data[\"tenant\"]) : undefined;\n this.farmer = _data[\"farmer\"] ? FarmerDto.fromJS(_data[\"farmer\"]) : undefined;\n }\n }\n\n static fromJS(data: any): GetCurrentLoginInformationsOutput {\n data = typeof data === 'object' ? data : {};\n let result = new GetCurrentLoginInformationsOutput();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"application\"] = this.application ? this.application.toJSON() : undefined;\n data[\"user\"] = this.user ? this.user.toJSON() : undefined;\n data[\"tenant\"] = this.tenant ? this.tenant.toJSON() : undefined;\n data[\"farmer\"] = this.farmer ? this.farmer.toJSON() : undefined;\n return data; \n }\n\n clone(): GetCurrentLoginInformationsOutput {\n const json = this.toJSON();\n let result = new GetCurrentLoginInformationsOutput();\n result.init(json);\n return result;\n }\n}\n\nexport interface IGetCurrentLoginInformationsOutput {\n application: ApplicationInfoDto;\n user: UserLoginInfoDto;\n tenant: TenantLoginInfoDto;\n farmer: FarmerDto;\n}\n\nexport class CreateTenantDto implements ICreateTenantDto {\n tenancyName: string | undefined;\n name: string | undefined;\n adminEmailAddress: string | undefined;\n connectionString: string | undefined;\n isActive: boolean;\n\n constructor(data?: ICreateTenantDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenancyName = _data[\"tenancyName\"];\n this.name = _data[\"name\"];\n this.adminEmailAddress = _data[\"adminEmailAddress\"];\n this.connectionString = _data[\"connectionString\"];\n this.isActive = _data[\"isActive\"];\n }\n }\n\n static fromJS(data: any): CreateTenantDto {\n data = typeof data === 'object' ? data : {};\n let result = new CreateTenantDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenancyName\"] = this.tenancyName;\n data[\"name\"] = this.name;\n data[\"adminEmailAddress\"] = this.adminEmailAddress;\n data[\"connectionString\"] = this.connectionString;\n data[\"isActive\"] = this.isActive;\n return data; \n }\n\n clone(): CreateTenantDto {\n const json = this.toJSON();\n let result = new CreateTenantDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICreateTenantDto {\n tenancyName: string | undefined;\n name: string | undefined;\n adminEmailAddress: string | undefined;\n connectionString: string | undefined;\n isActive: boolean;\n}\n\nexport class TenantDto implements ITenantDto {\n tenancyName: string | undefined;\n name: string | undefined;\n isActive: boolean;\n id: number;\n\n constructor(data?: ITenantDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.tenancyName = _data[\"tenancyName\"];\n this.name = _data[\"name\"];\n this.isActive = _data[\"isActive\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): TenantDto {\n data = typeof data === 'object' ? data : {};\n let result = new TenantDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"tenancyName\"] = this.tenancyName;\n data[\"name\"] = this.name;\n data[\"isActive\"] = this.isActive;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): TenantDto {\n const json = this.toJSON();\n let result = new TenantDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ITenantDto {\n tenancyName: string | undefined;\n name: string | undefined;\n isActive: boolean;\n id: number;\n}\n\nexport class TenantDtoPagedResultDto implements ITenantDtoPagedResultDto {\n totalCount: number;\n items: TenantDto[] | undefined;\n\n constructor(data?: ITenantDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(TenantDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): TenantDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new TenantDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): TenantDtoPagedResultDto {\n const json = this.toJSON();\n let result = new TenantDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ITenantDtoPagedResultDto {\n totalCount: number;\n items: TenantDto[] | undefined;\n}\n\nexport class AuthenticateModel implements IAuthenticateModel {\n userName: string | undefined;\n password: string | undefined;\n rememberClient: boolean;\n\n constructor(data?: IAuthenticateModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.userName = _data[\"userName\"];\n this.password = _data[\"password\"];\n this.rememberClient = _data[\"rememberClient\"];\n }\n }\n\n static fromJS(data: any): AuthenticateModel {\n data = typeof data === 'object' ? data : {};\n let result = new AuthenticateModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"userName\"] = this.userName;\n data[\"password\"] = this.password;\n data[\"rememberClient\"] = this.rememberClient;\n return data; \n }\n\n clone(): AuthenticateModel {\n const json = this.toJSON();\n let result = new AuthenticateModel();\n result.init(json);\n return result;\n }\n}\n\nexport interface IAuthenticateModel {\n userName: string | undefined;\n password: string | undefined;\n rememberClient: boolean;\n}\n\nexport class AuthenticateResultModel implements IAuthenticateResultModel {\n accessToken: string | undefined;\n encryptedAccessToken: string | undefined;\n expireInSeconds: number;\n userId: number;\n\n constructor(data?: IAuthenticateResultModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.accessToken = _data[\"accessToken\"];\n this.encryptedAccessToken = _data[\"encryptedAccessToken\"];\n this.expireInSeconds = _data[\"expireInSeconds\"];\n this.userId = _data[\"userId\"];\n }\n }\n\n static fromJS(data: any): AuthenticateResultModel {\n data = typeof data === 'object' ? data : {};\n let result = new AuthenticateResultModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"accessToken\"] = this.accessToken;\n data[\"encryptedAccessToken\"] = this.encryptedAccessToken;\n data[\"expireInSeconds\"] = this.expireInSeconds;\n data[\"userId\"] = this.userId;\n return data; \n }\n\n clone(): AuthenticateResultModel {\n const json = this.toJSON();\n let result = new AuthenticateResultModel();\n result.init(json);\n return result;\n }\n}\n\nexport interface IAuthenticateResultModel {\n accessToken: string | undefined;\n encryptedAccessToken: string | undefined;\n expireInSeconds: number;\n userId: number;\n}\n\nexport class ExternalLoginProviderInfoModel implements IExternalLoginProviderInfoModel {\n name: string | undefined;\n clientId: string | undefined;\n\n constructor(data?: IExternalLoginProviderInfoModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.clientId = _data[\"clientId\"];\n }\n }\n\n static fromJS(data: any): ExternalLoginProviderInfoModel {\n data = typeof data === 'object' ? data : {};\n let result = new ExternalLoginProviderInfoModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"clientId\"] = this.clientId;\n return data; \n }\n\n clone(): ExternalLoginProviderInfoModel {\n const json = this.toJSON();\n let result = new ExternalLoginProviderInfoModel();\n result.init(json);\n return result;\n }\n}\n\nexport interface IExternalLoginProviderInfoModel {\n name: string | undefined;\n clientId: string | undefined;\n}\n\nexport class ExternalAuthenticateModel implements IExternalAuthenticateModel {\n authProvider: string | undefined;\n providerKey: string | undefined;\n providerAccessCode: string | undefined;\n\n constructor(data?: IExternalAuthenticateModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.authProvider = _data[\"authProvider\"];\n this.providerKey = _data[\"providerKey\"];\n this.providerAccessCode = _data[\"providerAccessCode\"];\n }\n }\n\n static fromJS(data: any): ExternalAuthenticateModel {\n data = typeof data === 'object' ? data : {};\n let result = new ExternalAuthenticateModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"authProvider\"] = this.authProvider;\n data[\"providerKey\"] = this.providerKey;\n data[\"providerAccessCode\"] = this.providerAccessCode;\n return data; \n }\n\n clone(): ExternalAuthenticateModel {\n const json = this.toJSON();\n let result = new ExternalAuthenticateModel();\n result.init(json);\n return result;\n }\n}\n\nexport interface IExternalAuthenticateModel {\n authProvider: string | undefined;\n providerKey: string | undefined;\n providerAccessCode: string | undefined;\n}\n\nexport class ExternalAuthenticateResultModel implements IExternalAuthenticateResultModel {\n accessToken: string | undefined;\n encryptedAccessToken: string | undefined;\n expireInSeconds: number;\n waitingForActivation: boolean;\n\n constructor(data?: IExternalAuthenticateResultModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.accessToken = _data[\"accessToken\"];\n this.encryptedAccessToken = _data[\"encryptedAccessToken\"];\n this.expireInSeconds = _data[\"expireInSeconds\"];\n this.waitingForActivation = _data[\"waitingForActivation\"];\n }\n }\n\n static fromJS(data: any): ExternalAuthenticateResultModel {\n data = typeof data === 'object' ? data : {};\n let result = new ExternalAuthenticateResultModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"accessToken\"] = this.accessToken;\n data[\"encryptedAccessToken\"] = this.encryptedAccessToken;\n data[\"expireInSeconds\"] = this.expireInSeconds;\n data[\"waitingForActivation\"] = this.waitingForActivation;\n return data; \n }\n\n clone(): ExternalAuthenticateResultModel {\n const json = this.toJSON();\n let result = new ExternalAuthenticateResultModel();\n result.init(json);\n return result;\n }\n}\n\nexport interface IExternalAuthenticateResultModel {\n accessToken: string | undefined;\n encryptedAccessToken: string | undefined;\n expireInSeconds: number;\n waitingForActivation: boolean;\n}\n\nexport class CreateUserDto implements ICreateUserDto {\n userName: string | undefined;\n name: string | undefined;\n firstName: string | undefined;\n lastName: string | undefined;\n surname: string | undefined;\n emailAddress: string | undefined;\n isActive: boolean;\n roleNames: string[] | undefined;\n password: string | undefined;\n phoneNumber: string | undefined;\n fullName: string | undefined;\n sendPasswordResetLink: boolean;\n sendConfirmationEmail: boolean;\n\n constructor(data?: ICreateUserDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.userName = _data[\"userName\"];\n this.name = _data[\"name\"];\n this.firstName = _data[\"firstName\"];\n this.lastName = _data[\"lastName\"];\n this.surname = _data[\"surname\"];\n this.emailAddress = _data[\"emailAddress\"];\n this.isActive = _data[\"isActive\"];\n if (Array.isArray(_data[\"roleNames\"])) {\n this.roleNames = [] as any;\n for (let item of _data[\"roleNames\"])\n this.roleNames.push(item);\n }\n this.password = _data[\"password\"];\n this.phoneNumber = _data[\"phoneNumber\"];\n this.fullName = _data[\"fullName\"];\n this.sendPasswordResetLink = _data[\"sendPasswordResetLink\"];\n this.sendConfirmationEmail = _data[\"sendConfirmationEmail\"];\n }\n }\n\n static fromJS(data: any): CreateUserDto {\n data = typeof data === 'object' ? data : {};\n let result = new CreateUserDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"userName\"] = this.userName;\n data[\"name\"] = this.name;\n data[\"firstName\"] = this.firstName;\n data[\"lastName\"] = this.lastName;\n data[\"surname\"] = this.surname;\n data[\"emailAddress\"] = this.emailAddress;\n data[\"isActive\"] = this.isActive;\n if (Array.isArray(this.roleNames)) {\n data[\"roleNames\"] = [];\n for (let item of this.roleNames)\n data[\"roleNames\"].push(item);\n }\n data[\"password\"] = this.password;\n data[\"phoneNumber\"] = this.phoneNumber;\n data[\"fullName\"] = this.fullName;\n data[\"sendPasswordResetLink\"] = this.sendPasswordResetLink;\n data[\"sendConfirmationEmail\"] = this.sendConfirmationEmail;\n return data; \n }\n\n clone(): CreateUserDto {\n const json = this.toJSON();\n let result = new CreateUserDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface ICreateUserDto {\n userName: string | undefined;\n name: string | undefined;\n firstName: string | undefined;\n lastName: string | undefined;\n surname: string | undefined;\n emailAddress: string | undefined;\n isActive: boolean;\n roleNames: string[] | undefined;\n password: string | undefined;\n phoneNumber: string | undefined;\n fullName: string | undefined;\n sendPasswordResetLink: boolean;\n sendConfirmationEmail: boolean;\n}\n\nexport class RoleDtoListResultDto implements IRoleDtoListResultDto {\n items: RoleDto[] | undefined;\n\n constructor(data?: IRoleDtoListResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(RoleDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): RoleDtoListResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new RoleDtoListResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): RoleDtoListResultDto {\n const json = this.toJSON();\n let result = new RoleDtoListResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IRoleDtoListResultDto {\n items: RoleDto[] | undefined;\n}\n\nexport class ChangeUserLanguageDto implements IChangeUserLanguageDto {\n languageName: string | undefined;\n\n constructor(data?: IChangeUserLanguageDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.languageName = _data[\"languageName\"];\n }\n }\n\n static fromJS(data: any): ChangeUserLanguageDto {\n data = typeof data === 'object' ? data : {};\n let result = new ChangeUserLanguageDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"languageName\"] = this.languageName;\n return data; \n }\n\n clone(): ChangeUserLanguageDto {\n const json = this.toJSON();\n let result = new ChangeUserLanguageDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IChangeUserLanguageDto {\n languageName: string | undefined;\n}\n\nexport class ChangePasswordDto implements IChangePasswordDto {\n currentPassword: string | undefined;\n newPassword: string | undefined;\n\n constructor(data?: IChangePasswordDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.currentPassword = _data[\"currentPassword\"];\n this.newPassword = _data[\"newPassword\"];\n }\n }\n\n static fromJS(data: any): ChangePasswordDto {\n data = typeof data === 'object' ? data : {};\n let result = new ChangePasswordDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"currentPassword\"] = this.currentPassword;\n data[\"newPassword\"] = this.newPassword;\n return data; \n }\n\n clone(): ChangePasswordDto {\n const json = this.toJSON();\n let result = new ChangePasswordDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IChangePasswordDto {\n currentPassword: string | undefined;\n newPassword: string | undefined;\n}\n\nexport class ResetPasswordDto implements IResetPasswordDto {\n adminPassword: string | undefined;\n userId: number;\n newPassword: string | undefined;\n\n constructor(data?: IResetPasswordDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.adminPassword = _data[\"adminPassword\"];\n this.userId = _data[\"userId\"];\n this.newPassword = _data[\"newPassword\"];\n }\n }\n\n static fromJS(data: any): ResetPasswordDto {\n data = typeof data === 'object' ? data : {};\n let result = new ResetPasswordDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"adminPassword\"] = this.adminPassword;\n data[\"userId\"] = this.userId;\n data[\"newPassword\"] = this.newPassword;\n return data; \n }\n\n clone(): ResetPasswordDto {\n const json = this.toJSON();\n let result = new ResetPasswordDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IResetPasswordDto {\n adminPassword: string | undefined;\n userId: number;\n newPassword: string | undefined;\n}\n\nexport class UserDtoPagedResultDto implements IUserDtoPagedResultDto {\n totalCount: number;\n items: UserDto[] | undefined;\n\n constructor(data?: IUserDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(UserDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): UserDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new UserDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): UserDtoPagedResultDto {\n const json = this.toJSON();\n let result = new UserDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserDtoPagedResultDto {\n totalCount: number;\n items: UserDto[] | undefined;\n}\n\nexport class SecurityQuestion implements ISecurityQuestion {\n label: string | undefined;\n isDeleted: boolean;\n id: number;\n\n constructor(data?: ISecurityQuestion) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.label = _data[\"label\"];\n this.isDeleted = _data[\"isDeleted\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): SecurityQuestion {\n data = typeof data === 'object' ? data : {};\n let result = new SecurityQuestion();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"label\"] = this.label;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): SecurityQuestion {\n const json = this.toJSON();\n let result = new SecurityQuestion();\n result.init(json);\n return result;\n }\n}\n\nexport interface ISecurityQuestion {\n label: string | undefined;\n isDeleted: boolean;\n id: number;\n}\n\nexport class UserSecurityQuestionAnswer implements IUserSecurityQuestionAnswer {\n answer: string | undefined;\n userId: number;\n user: User;\n securityQuestionId: number;\n securityQuestion: SecurityQuestion;\n id: number;\n\n constructor(data?: IUserSecurityQuestionAnswer) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.answer = _data[\"answer\"];\n this.userId = _data[\"userId\"];\n this.user = _data[\"user\"] ? User.fromJS(_data[\"user\"]) : undefined;\n this.securityQuestionId = _data[\"securityQuestionId\"];\n this.securityQuestion = _data[\"securityQuestion\"] ? SecurityQuestion.fromJS(_data[\"securityQuestion\"]) : undefined;\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): UserSecurityQuestionAnswer {\n data = typeof data === 'object' ? data : {};\n let result = new UserSecurityQuestionAnswer();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"answer\"] = this.answer;\n data[\"userId\"] = this.userId;\n data[\"user\"] = this.user ? this.user.toJSON() : undefined;\n data[\"securityQuestionId\"] = this.securityQuestionId;\n data[\"securityQuestion\"] = this.securityQuestion ? this.securityQuestion.toJSON() : undefined;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): UserSecurityQuestionAnswer {\n const json = this.toJSON();\n let result = new UserSecurityQuestionAnswer();\n result.init(json);\n return result;\n }\n}\n\nexport interface IUserSecurityQuestionAnswer {\n answer: string | undefined;\n userId: number;\n user: User;\n securityQuestionId: number;\n securityQuestion: SecurityQuestion;\n id: number;\n}\n\nexport class VVerificationQuestionAnswerDto implements IVVerificationQuestionAnswerDto {\n vVerificationId: number;\n vQuestionId: number;\n vQuestionDescription: string | undefined;\n vQuestionSort: number;\n vQuestionTypeId: number;\n vAnswerId: number | undefined;\n vAnswerDescription: string | undefined;\n vAnswerRequiresFreeText: boolean | undefined;\n alternateAnswer: string | undefined;\n id: number;\n\n constructor(data?: IVVerificationQuestionAnswerDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.vVerificationId = _data[\"vVerificationId\"];\n this.vQuestionId = _data[\"vQuestionId\"];\n this.vQuestionDescription = _data[\"vQuestionDescription\"];\n this.vQuestionSort = _data[\"vQuestionSort\"];\n this.vQuestionTypeId = _data[\"vQuestionTypeId\"];\n this.vAnswerId = _data[\"vAnswerId\"];\n this.vAnswerDescription = _data[\"vAnswerDescription\"];\n this.vAnswerRequiresFreeText = _data[\"vAnswerRequiresFreeText\"];\n this.alternateAnswer = _data[\"alternateAnswer\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): VVerificationQuestionAnswerDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionAnswerDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"vVerificationId\"] = this.vVerificationId;\n data[\"vQuestionId\"] = this.vQuestionId;\n data[\"vQuestionDescription\"] = this.vQuestionDescription;\n data[\"vQuestionSort\"] = this.vQuestionSort;\n data[\"vQuestionTypeId\"] = this.vQuestionTypeId;\n data[\"vAnswerId\"] = this.vAnswerId;\n data[\"vAnswerDescription\"] = this.vAnswerDescription;\n data[\"vAnswerRequiresFreeText\"] = this.vAnswerRequiresFreeText;\n data[\"alternateAnswer\"] = this.alternateAnswer;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): VVerificationQuestionAnswerDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionAnswerDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionAnswerDto {\n vVerificationId: number;\n vQuestionId: number;\n vQuestionDescription: string | undefined;\n vQuestionSort: number;\n vQuestionTypeId: number;\n vAnswerId: number | undefined;\n vAnswerDescription: string | undefined;\n vAnswerRequiresFreeText: boolean | undefined;\n alternateAnswer: string | undefined;\n id: number;\n}\n\nexport class VQuestionDto implements IVQuestionDto {\n description: string | undefined;\n sort: number;\n typeId: number;\n isActive: boolean;\n questionNumber: number;\n vQuestionGroupId: number | undefined;\n id: number;\n\n constructor(data?: IVQuestionDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.description = _data[\"description\"];\n this.sort = _data[\"sort\"];\n this.typeId = _data[\"typeId\"];\n this.isActive = _data[\"isActive\"];\n this.questionNumber = _data[\"questionNumber\"];\n this.vQuestionGroupId = _data[\"vQuestionGroupId\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): VQuestionDto {\n data = typeof data === 'object' ? data : {};\n let result = new VQuestionDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"description\"] = this.description;\n data[\"sort\"] = this.sort;\n data[\"typeId\"] = this.typeId;\n data[\"isActive\"] = this.isActive;\n data[\"questionNumber\"] = this.questionNumber;\n data[\"vQuestionGroupId\"] = this.vQuestionGroupId;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): VQuestionDto {\n const json = this.toJSON();\n let result = new VQuestionDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVQuestionDto {\n description: string | undefined;\n sort: number;\n typeId: number;\n isActive: boolean;\n questionNumber: number;\n vQuestionGroupId: number | undefined;\n id: number;\n}\n\nexport class VAnswerDto implements IVAnswerDto {\n description: string | undefined;\n reportDescription: string | undefined;\n requiresFreeText: boolean;\n isActive: boolean;\n id: number;\n\n constructor(data?: IVAnswerDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.description = _data[\"description\"];\n this.reportDescription = _data[\"reportDescription\"];\n this.requiresFreeText = _data[\"requiresFreeText\"];\n this.isActive = _data[\"isActive\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): VAnswerDto {\n data = typeof data === 'object' ? data : {};\n let result = new VAnswerDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"description\"] = this.description;\n data[\"reportDescription\"] = this.reportDescription;\n data[\"requiresFreeText\"] = this.requiresFreeText;\n data[\"isActive\"] = this.isActive;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): VAnswerDto {\n const json = this.toJSON();\n let result = new VAnswerDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVAnswerDto {\n description: string | undefined;\n reportDescription: string | undefined;\n requiresFreeText: boolean;\n isActive: boolean;\n id: number;\n}\n\nexport class VVerificationQuestionNoteDto implements IVVerificationQuestionNoteDto {\n vVerificationId: number;\n vQuestionId: number;\n comments: string | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModifierUserName: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifiedUserId: number | undefined;\n lastModifiedUserName: string | undefined;\n lastModifiedTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n id: number;\n\n constructor(data?: IVVerificationQuestionNoteDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.vVerificationId = _data[\"vVerificationId\"];\n this.vQuestionId = _data[\"vQuestionId\"];\n this.comments = _data[\"comments\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.lastModifierUserName = _data[\"lastModifierUserName\"];\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.lastModifiedUserId = _data[\"lastModifiedUserId\"];\n this.lastModifiedUserName = _data[\"lastModifiedUserName\"];\n this.lastModifiedTime = _data[\"lastModifiedTime\"] ? moment(_data[\"lastModifiedTime\"].toString()) : undefined;\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.isDeleted = _data[\"isDeleted\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): VVerificationQuestionNoteDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionNoteDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"vVerificationId\"] = this.vVerificationId;\n data[\"vQuestionId\"] = this.vQuestionId;\n data[\"comments\"] = this.comments;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"lastModifierUserName\"] = this.lastModifierUserName;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"lastModifiedUserId\"] = this.lastModifiedUserId;\n data[\"lastModifiedUserName\"] = this.lastModifiedUserName;\n data[\"lastModifiedTime\"] = this.lastModifiedTime ? this.lastModifiedTime.toISOString() : undefined;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): VVerificationQuestionNoteDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionNoteDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionNoteDto {\n vVerificationId: number;\n vQuestionId: number;\n comments: string | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModifierUserName: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n lastModifiedUserId: number | undefined;\n lastModifiedUserName: string | undefined;\n lastModifiedTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n id: number;\n}\n\nexport class VVerificationQuestionWithAnswersDto implements IVVerificationQuestionWithAnswersDto {\n vVQASingleDto: VVerificationQuestionAnswerDto;\n vVQAMultipleDto: VVerificationQuestionAnswerDto[] | undefined;\n vQuestionDto: VQuestionDto;\n vAnswerDtos: VAnswerDto[] | undefined;\n vVerificationQuestionNoteDto: VVerificationQuestionNoteDto;\n\n constructor(data?: IVVerificationQuestionWithAnswersDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.vVQASingleDto = _data[\"vVQASingleDto\"] ? VVerificationQuestionAnswerDto.fromJS(_data[\"vVQASingleDto\"]) : undefined;\n if (Array.isArray(_data[\"vVQAMultipleDto\"])) {\n this.vVQAMultipleDto = [] as any;\n for (let item of _data[\"vVQAMultipleDto\"])\n this.vVQAMultipleDto.push(VVerificationQuestionAnswerDto.fromJS(item));\n }\n this.vQuestionDto = _data[\"vQuestionDto\"] ? VQuestionDto.fromJS(_data[\"vQuestionDto\"]) : undefined;\n if (Array.isArray(_data[\"vAnswerDtos\"])) {\n this.vAnswerDtos = [] as any;\n for (let item of _data[\"vAnswerDtos\"])\n this.vAnswerDtos.push(VAnswerDto.fromJS(item));\n }\n this.vVerificationQuestionNoteDto = _data[\"vVerificationQuestionNoteDto\"] ? VVerificationQuestionNoteDto.fromJS(_data[\"vVerificationQuestionNoteDto\"]) : undefined;\n }\n }\n\n static fromJS(data: any): VVerificationQuestionWithAnswersDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionWithAnswersDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"vVQASingleDto\"] = this.vVQASingleDto ? this.vVQASingleDto.toJSON() : undefined;\n if (Array.isArray(this.vVQAMultipleDto)) {\n data[\"vVQAMultipleDto\"] = [];\n for (let item of this.vVQAMultipleDto)\n data[\"vVQAMultipleDto\"].push(item.toJSON());\n }\n data[\"vQuestionDto\"] = this.vQuestionDto ? this.vQuestionDto.toJSON() : undefined;\n if (Array.isArray(this.vAnswerDtos)) {\n data[\"vAnswerDtos\"] = [];\n for (let item of this.vAnswerDtos)\n data[\"vAnswerDtos\"].push(item.toJSON());\n }\n data[\"vVerificationQuestionNoteDto\"] = this.vVerificationQuestionNoteDto ? this.vVerificationQuestionNoteDto.toJSON() : undefined;\n return data; \n }\n\n clone(): VVerificationQuestionWithAnswersDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionWithAnswersDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionWithAnswersDto {\n vVQASingleDto: VVerificationQuestionAnswerDto;\n vVQAMultipleDto: VVerificationQuestionAnswerDto[] | undefined;\n vQuestionDto: VQuestionDto;\n vAnswerDtos: VAnswerDto[] | undefined;\n vVerificationQuestionNoteDto: VVerificationQuestionNoteDto;\n}\n\nexport class VVerificationQuestionWithAnswersGroupDto implements IVVerificationQuestionWithAnswersGroupDto {\n description: string | undefined;\n sort: number;\n vVQWADtos: VVerificationQuestionWithAnswersDto[] | undefined;\n isMultiQuestionGroup: boolean;\n\n constructor(data?: IVVerificationQuestionWithAnswersGroupDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.description = _data[\"description\"];\n this.sort = _data[\"sort\"];\n if (Array.isArray(_data[\"vVQWADtos\"])) {\n this.vVQWADtos = [] as any;\n for (let item of _data[\"vVQWADtos\"])\n this.vVQWADtos.push(VVerificationQuestionWithAnswersDto.fromJS(item));\n }\n this.isMultiQuestionGroup = _data[\"isMultiQuestionGroup\"];\n }\n }\n\n static fromJS(data: any): VVerificationQuestionWithAnswersGroupDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionWithAnswersGroupDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"description\"] = this.description;\n data[\"sort\"] = this.sort;\n if (Array.isArray(this.vVQWADtos)) {\n data[\"vVQWADtos\"] = [];\n for (let item of this.vVQWADtos)\n data[\"vVQWADtos\"].push(item.toJSON());\n }\n data[\"isMultiQuestionGroup\"] = this.isMultiQuestionGroup;\n return data; \n }\n\n clone(): VVerificationQuestionWithAnswersGroupDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionWithAnswersGroupDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionWithAnswersGroupDto {\n description: string | undefined;\n sort: number;\n vVQWADtos: VVerificationQuestionWithAnswersDto[] | undefined;\n isMultiQuestionGroup: boolean;\n}\n\nexport class VVerificationQuestionAnswerCreateDto implements IVVerificationQuestionAnswerCreateDto {\n vVerificationId: number;\n vQuestionId: number;\n vQuestionDescription: string | undefined;\n vQuestionSort: number;\n vQuestionTypeId: number;\n vAnswerId: number | undefined;\n vAnswerDescription: string | undefined;\n vAnswerRequiresFreeText: boolean | undefined;\n alternateAnswer: string | undefined;\n\n constructor(data?: IVVerificationQuestionAnswerCreateDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.vVerificationId = _data[\"vVerificationId\"];\n this.vQuestionId = _data[\"vQuestionId\"];\n this.vQuestionDescription = _data[\"vQuestionDescription\"];\n this.vQuestionSort = _data[\"vQuestionSort\"];\n this.vQuestionTypeId = _data[\"vQuestionTypeId\"];\n this.vAnswerId = _data[\"vAnswerId\"];\n this.vAnswerDescription = _data[\"vAnswerDescription\"];\n this.vAnswerRequiresFreeText = _data[\"vAnswerRequiresFreeText\"];\n this.alternateAnswer = _data[\"alternateAnswer\"];\n }\n }\n\n static fromJS(data: any): VVerificationQuestionAnswerCreateDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionAnswerCreateDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"vVerificationId\"] = this.vVerificationId;\n data[\"vQuestionId\"] = this.vQuestionId;\n data[\"vQuestionDescription\"] = this.vQuestionDescription;\n data[\"vQuestionSort\"] = this.vQuestionSort;\n data[\"vQuestionTypeId\"] = this.vQuestionTypeId;\n data[\"vAnswerId\"] = this.vAnswerId;\n data[\"vAnswerDescription\"] = this.vAnswerDescription;\n data[\"vAnswerRequiresFreeText\"] = this.vAnswerRequiresFreeText;\n data[\"alternateAnswer\"] = this.alternateAnswer;\n return data; \n }\n\n clone(): VVerificationQuestionAnswerCreateDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionAnswerCreateDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionAnswerCreateDto {\n vVerificationId: number;\n vQuestionId: number;\n vQuestionDescription: string | undefined;\n vQuestionSort: number;\n vQuestionTypeId: number;\n vAnswerId: number | undefined;\n vAnswerDescription: string | undefined;\n vAnswerRequiresFreeText: boolean | undefined;\n alternateAnswer: string | undefined;\n}\n\nexport class VVerificationQuestionAnswerUpdateDto implements IVVerificationQuestionAnswerUpdateDto {\n id: number;\n vVerificationId: number;\n vQuestionId: number;\n vQuestionDescription: string | undefined;\n vQuestionSort: number;\n vQuestionTypeId: number;\n vAnswerId: number | undefined;\n vAnswerDescription: string | undefined;\n vAnswerRequiresFreeText: boolean | undefined;\n alternateAnswer: string | undefined;\n\n constructor(data?: IVVerificationQuestionAnswerUpdateDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.vVerificationId = _data[\"vVerificationId\"];\n this.vQuestionId = _data[\"vQuestionId\"];\n this.vQuestionDescription = _data[\"vQuestionDescription\"];\n this.vQuestionSort = _data[\"vQuestionSort\"];\n this.vQuestionTypeId = _data[\"vQuestionTypeId\"];\n this.vAnswerId = _data[\"vAnswerId\"];\n this.vAnswerDescription = _data[\"vAnswerDescription\"];\n this.vAnswerRequiresFreeText = _data[\"vAnswerRequiresFreeText\"];\n this.alternateAnswer = _data[\"alternateAnswer\"];\n }\n }\n\n static fromJS(data: any): VVerificationQuestionAnswerUpdateDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionAnswerUpdateDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"vVerificationId\"] = this.vVerificationId;\n data[\"vQuestionId\"] = this.vQuestionId;\n data[\"vQuestionDescription\"] = this.vQuestionDescription;\n data[\"vQuestionSort\"] = this.vQuestionSort;\n data[\"vQuestionTypeId\"] = this.vQuestionTypeId;\n data[\"vAnswerId\"] = this.vAnswerId;\n data[\"vAnswerDescription\"] = this.vAnswerDescription;\n data[\"vAnswerRequiresFreeText\"] = this.vAnswerRequiresFreeText;\n data[\"alternateAnswer\"] = this.alternateAnswer;\n return data; \n }\n\n clone(): VVerificationQuestionAnswerUpdateDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionAnswerUpdateDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionAnswerUpdateDto {\n id: number;\n vVerificationId: number;\n vQuestionId: number;\n vQuestionDescription: string | undefined;\n vQuestionSort: number;\n vQuestionTypeId: number;\n vAnswerId: number | undefined;\n vAnswerDescription: string | undefined;\n vAnswerRequiresFreeText: boolean | undefined;\n alternateAnswer: string | undefined;\n}\n\nexport class VVerificationQuestionAnswerDtoPagedResultDto implements IVVerificationQuestionAnswerDtoPagedResultDto {\n totalCount: number;\n items: VVerificationQuestionAnswerDto[] | undefined;\n\n constructor(data?: IVVerificationQuestionAnswerDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(VVerificationQuestionAnswerDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): VVerificationQuestionAnswerDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionAnswerDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): VVerificationQuestionAnswerDtoPagedResultDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionAnswerDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionAnswerDtoPagedResultDto {\n totalCount: number;\n items: VVerificationQuestionAnswerDto[] | undefined;\n}\n\nexport class VVerificationQuestionNoteCreateDto implements IVVerificationQuestionNoteCreateDto {\n vVerificationId: number;\n vQuestionId: number;\n comments: string | undefined;\n lastModifiedUserId: number | undefined;\n lastModifiedUserName: string | undefined;\n lastModifiedTime: moment.Moment | undefined;\n\n constructor(data?: IVVerificationQuestionNoteCreateDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.vVerificationId = _data[\"vVerificationId\"];\n this.vQuestionId = _data[\"vQuestionId\"];\n this.comments = _data[\"comments\"];\n this.lastModifiedUserId = _data[\"lastModifiedUserId\"];\n this.lastModifiedUserName = _data[\"lastModifiedUserName\"];\n this.lastModifiedTime = _data[\"lastModifiedTime\"] ? moment(_data[\"lastModifiedTime\"].toString()) : undefined;\n }\n }\n\n static fromJS(data: any): VVerificationQuestionNoteCreateDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionNoteCreateDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"vVerificationId\"] = this.vVerificationId;\n data[\"vQuestionId\"] = this.vQuestionId;\n data[\"comments\"] = this.comments;\n data[\"lastModifiedUserId\"] = this.lastModifiedUserId;\n data[\"lastModifiedUserName\"] = this.lastModifiedUserName;\n data[\"lastModifiedTime\"] = this.lastModifiedTime ? this.lastModifiedTime.toISOString() : undefined;\n return data; \n }\n\n clone(): VVerificationQuestionNoteCreateDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionNoteCreateDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionNoteCreateDto {\n vVerificationId: number;\n vQuestionId: number;\n comments: string | undefined;\n lastModifiedUserId: number | undefined;\n lastModifiedUserName: string | undefined;\n lastModifiedTime: moment.Moment | undefined;\n}\n\nexport class VVerificationQuestionNoteUpdateDto implements IVVerificationQuestionNoteUpdateDto {\n id: number;\n vVerificationId: number;\n vQuestionId: number;\n comments: string | undefined;\n lastModifiedUserId: number | undefined;\n lastModifiedUserName: string | undefined;\n lastModifiedTime: moment.Moment | undefined;\n\n constructor(data?: IVVerificationQuestionNoteUpdateDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.vVerificationId = _data[\"vVerificationId\"];\n this.vQuestionId = _data[\"vQuestionId\"];\n this.comments = _data[\"comments\"];\n this.lastModifiedUserId = _data[\"lastModifiedUserId\"];\n this.lastModifiedUserName = _data[\"lastModifiedUserName\"];\n this.lastModifiedTime = _data[\"lastModifiedTime\"] ? moment(_data[\"lastModifiedTime\"].toString()) : undefined;\n }\n }\n\n static fromJS(data: any): VVerificationQuestionNoteUpdateDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionNoteUpdateDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"vVerificationId\"] = this.vVerificationId;\n data[\"vQuestionId\"] = this.vQuestionId;\n data[\"comments\"] = this.comments;\n data[\"lastModifiedUserId\"] = this.lastModifiedUserId;\n data[\"lastModifiedUserName\"] = this.lastModifiedUserName;\n data[\"lastModifiedTime\"] = this.lastModifiedTime ? this.lastModifiedTime.toISOString() : undefined;\n return data; \n }\n\n clone(): VVerificationQuestionNoteUpdateDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionNoteUpdateDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionNoteUpdateDto {\n id: number;\n vVerificationId: number;\n vQuestionId: number;\n comments: string | undefined;\n lastModifiedUserId: number | undefined;\n lastModifiedUserName: string | undefined;\n lastModifiedTime: moment.Moment | undefined;\n}\n\nexport class VVerificationQuestionNoteDtoPagedResultDto implements IVVerificationQuestionNoteDtoPagedResultDto {\n totalCount: number;\n items: VVerificationQuestionNoteDto[] | undefined;\n\n constructor(data?: IVVerificationQuestionNoteDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(VVerificationQuestionNoteDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): VVerificationQuestionNoteDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationQuestionNoteDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): VVerificationQuestionNoteDtoPagedResultDto {\n const json = this.toJSON();\n let result = new VVerificationQuestionNoteDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationQuestionNoteDtoPagedResultDto {\n totalCount: number;\n items: VVerificationQuestionNoteDto[] | undefined;\n}\n\nexport enum VVerificationStatusEnum {\n _0 = 0,\n _1 = 1,\n _2 = 2,\n}\n\nexport class VVerificationDto implements IVVerificationDto {\n farmName: string | undefined;\n longitude: number | undefined;\n latitude: number | undefined;\n creatorUserName: string | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModifierUserName: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n statusId: VVerificationStatusEnum;\n statusName: string | undefined;\n countyId: number | undefined;\n countyName: string | undefined;\n id: number;\n\n constructor(data?: IVVerificationDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmName = _data[\"farmName\"];\n this.longitude = _data[\"longitude\"];\n this.latitude = _data[\"latitude\"];\n this.creatorUserName = _data[\"creatorUserName\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.lastModifierUserName = _data[\"lastModifierUserName\"];\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.isDeleted = _data[\"isDeleted\"];\n this.statusId = _data[\"statusId\"];\n this.statusName = _data[\"statusName\"];\n this.countyId = _data[\"countyId\"];\n this.countyName = _data[\"countyName\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): VVerificationDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmName\"] = this.farmName;\n data[\"longitude\"] = this.longitude;\n data[\"latitude\"] = this.latitude;\n data[\"creatorUserName\"] = this.creatorUserName;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"lastModifierUserName\"] = this.lastModifierUserName;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"statusId\"] = this.statusId;\n data[\"statusName\"] = this.statusName;\n data[\"countyId\"] = this.countyId;\n data[\"countyName\"] = this.countyName;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): VVerificationDto {\n const json = this.toJSON();\n let result = new VVerificationDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationDto {\n farmName: string | undefined;\n longitude: number | undefined;\n latitude: number | undefined;\n creatorUserName: string | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModifierUserName: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n statusId: VVerificationStatusEnum;\n statusName: string | undefined;\n countyId: number | undefined;\n countyName: string | undefined;\n id: number;\n}\n\nexport class VVerificationDtoPagedResultDto implements IVVerificationDtoPagedResultDto {\n totalCount: number;\n items: VVerificationDto[] | undefined;\n\n constructor(data?: IVVerificationDtoPagedResultDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.totalCount = _data[\"totalCount\"];\n if (Array.isArray(_data[\"items\"])) {\n this.items = [] as any;\n for (let item of _data[\"items\"])\n this.items.push(VVerificationDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): VVerificationDtoPagedResultDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationDtoPagedResultDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"totalCount\"] = this.totalCount;\n if (Array.isArray(this.items)) {\n data[\"items\"] = [];\n for (let item of this.items)\n data[\"items\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): VVerificationDtoPagedResultDto {\n const json = this.toJSON();\n let result = new VVerificationDtoPagedResultDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationDtoPagedResultDto {\n totalCount: number;\n items: VVerificationDto[] | undefined;\n}\n\nexport class VVerificationWithQuestionAnswersDto implements IVVerificationWithQuestionAnswersDto {\n questionAnswers: string[] | undefined;\n farmName: string | undefined;\n longitude: number | undefined;\n latitude: number | undefined;\n creatorUserName: string | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModifierUserName: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n statusId: VVerificationStatusEnum;\n statusName: string | undefined;\n countyId: number | undefined;\n countyName: string | undefined;\n id: number;\n\n constructor(data?: IVVerificationWithQuestionAnswersDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n if (Array.isArray(_data[\"questionAnswers\"])) {\n this.questionAnswers = [] as any;\n for (let item of _data[\"questionAnswers\"])\n this.questionAnswers.push(item);\n }\n this.farmName = _data[\"farmName\"];\n this.longitude = _data[\"longitude\"];\n this.latitude = _data[\"latitude\"];\n this.creatorUserName = _data[\"creatorUserName\"];\n this.creationTime = _data[\"creationTime\"] ? moment(_data[\"creationTime\"].toString()) : undefined;\n this.creatorUserId = _data[\"creatorUserId\"];\n this.lastModifierUserId = _data[\"lastModifierUserId\"];\n this.lastModifierUserName = _data[\"lastModifierUserName\"];\n this.lastModificationTime = _data[\"lastModificationTime\"] ? moment(_data[\"lastModificationTime\"].toString()) : undefined;\n this.deleterUserId = _data[\"deleterUserId\"];\n this.deletionTime = _data[\"deletionTime\"] ? moment(_data[\"deletionTime\"].toString()) : undefined;\n this.isDeleted = _data[\"isDeleted\"];\n this.statusId = _data[\"statusId\"];\n this.statusName = _data[\"statusName\"];\n this.countyId = _data[\"countyId\"];\n this.countyName = _data[\"countyName\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): VVerificationWithQuestionAnswersDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationWithQuestionAnswersDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n if (Array.isArray(this.questionAnswers)) {\n data[\"questionAnswers\"] = [];\n for (let item of this.questionAnswers)\n data[\"questionAnswers\"].push(item);\n }\n data[\"farmName\"] = this.farmName;\n data[\"longitude\"] = this.longitude;\n data[\"latitude\"] = this.latitude;\n data[\"creatorUserName\"] = this.creatorUserName;\n data[\"creationTime\"] = this.creationTime ? this.creationTime.toISOString() : undefined;\n data[\"creatorUserId\"] = this.creatorUserId;\n data[\"lastModifierUserId\"] = this.lastModifierUserId;\n data[\"lastModifierUserName\"] = this.lastModifierUserName;\n data[\"lastModificationTime\"] = this.lastModificationTime ? this.lastModificationTime.toISOString() : undefined;\n data[\"deleterUserId\"] = this.deleterUserId;\n data[\"deletionTime\"] = this.deletionTime ? this.deletionTime.toISOString() : undefined;\n data[\"isDeleted\"] = this.isDeleted;\n data[\"statusId\"] = this.statusId;\n data[\"statusName\"] = this.statusName;\n data[\"countyId\"] = this.countyId;\n data[\"countyName\"] = this.countyName;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): VVerificationWithQuestionAnswersDto {\n const json = this.toJSON();\n let result = new VVerificationWithQuestionAnswersDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationWithQuestionAnswersDto {\n questionAnswers: string[] | undefined;\n farmName: string | undefined;\n longitude: number | undefined;\n latitude: number | undefined;\n creatorUserName: string | undefined;\n creationTime: moment.Moment;\n creatorUserId: number | undefined;\n lastModifierUserId: number | undefined;\n lastModifierUserName: string | undefined;\n lastModificationTime: moment.Moment | undefined;\n deleterUserId: number | undefined;\n deletionTime: moment.Moment | undefined;\n isDeleted: boolean;\n statusId: VVerificationStatusEnum;\n statusName: string | undefined;\n countyId: number | undefined;\n countyName: string | undefined;\n id: number;\n}\n\nexport class GetAllWithQuestionAnswersDto implements IGetAllWithQuestionAnswersDto {\n vVerificationWithQuestionAnswersDtos: VVerificationWithQuestionAnswersDto[] | undefined;\n questions: string[] | undefined;\n\n constructor(data?: IGetAllWithQuestionAnswersDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n if (Array.isArray(_data[\"vVerificationWithQuestionAnswersDtos\"])) {\n this.vVerificationWithQuestionAnswersDtos = [] as any;\n for (let item of _data[\"vVerificationWithQuestionAnswersDtos\"])\n this.vVerificationWithQuestionAnswersDtos.push(VVerificationWithQuestionAnswersDto.fromJS(item));\n }\n if (Array.isArray(_data[\"questions\"])) {\n this.questions = [] as any;\n for (let item of _data[\"questions\"])\n this.questions.push(item);\n }\n }\n }\n\n static fromJS(data: any): GetAllWithQuestionAnswersDto {\n data = typeof data === 'object' ? data : {};\n let result = new GetAllWithQuestionAnswersDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n if (Array.isArray(this.vVerificationWithQuestionAnswersDtos)) {\n data[\"vVerificationWithQuestionAnswersDtos\"] = [];\n for (let item of this.vVerificationWithQuestionAnswersDtos)\n data[\"vVerificationWithQuestionAnswersDtos\"].push(item.toJSON());\n }\n if (Array.isArray(this.questions)) {\n data[\"questions\"] = [];\n for (let item of this.questions)\n data[\"questions\"].push(item);\n }\n return data; \n }\n\n clone(): GetAllWithQuestionAnswersDto {\n const json = this.toJSON();\n let result = new GetAllWithQuestionAnswersDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IGetAllWithQuestionAnswersDto {\n vVerificationWithQuestionAnswersDtos: VVerificationWithQuestionAnswersDto[] | undefined;\n questions: string[] | undefined;\n}\n\nexport class VVerificationUpdateDto implements IVVerificationUpdateDto {\n id: number;\n statusId: VVerificationStatusEnum;\n farmName: string | undefined;\n longitude: number | undefined;\n latitude: number | undefined;\n countyId: number | undefined;\n\n constructor(data?: IVVerificationUpdateDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.statusId = _data[\"statusId\"];\n this.farmName = _data[\"farmName\"];\n this.longitude = _data[\"longitude\"];\n this.latitude = _data[\"latitude\"];\n this.countyId = _data[\"countyId\"];\n }\n }\n\n static fromJS(data: any): VVerificationUpdateDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationUpdateDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"statusId\"] = this.statusId;\n data[\"farmName\"] = this.farmName;\n data[\"longitude\"] = this.longitude;\n data[\"latitude\"] = this.latitude;\n data[\"countyId\"] = this.countyId;\n return data; \n }\n\n clone(): VVerificationUpdateDto {\n const json = this.toJSON();\n let result = new VVerificationUpdateDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationUpdateDto {\n id: number;\n statusId: VVerificationStatusEnum;\n farmName: string | undefined;\n longitude: number | undefined;\n latitude: number | undefined;\n countyId: number | undefined;\n}\n\nexport class VVerificationCreateDto implements IVVerificationCreateDto {\n farmName: string | undefined;\n longitude: number | undefined;\n latitude: number | undefined;\n countyId: number | undefined;\n\n constructor(data?: IVVerificationCreateDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.farmName = _data[\"farmName\"];\n this.longitude = _data[\"longitude\"];\n this.latitude = _data[\"latitude\"];\n this.countyId = _data[\"countyId\"];\n }\n }\n\n static fromJS(data: any): VVerificationCreateDto {\n data = typeof data === 'object' ? data : {};\n let result = new VVerificationCreateDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"farmName\"] = this.farmName;\n data[\"longitude\"] = this.longitude;\n data[\"latitude\"] = this.latitude;\n data[\"countyId\"] = this.countyId;\n return data; \n }\n\n clone(): VVerificationCreateDto {\n const json = this.toJSON();\n let result = new VVerificationCreateDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IVVerificationCreateDto {\n farmName: string | undefined;\n longitude: number | undefined;\n latitude: number | undefined;\n countyId: number | undefined;\n}\n\nexport class WatershedDto implements IWatershedDto {\n name: string | undefined;\n code: string | undefined;\n id: number;\n\n constructor(data?: IWatershedDto) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.code = _data[\"code\"];\n this.id = _data[\"id\"];\n }\n }\n\n static fromJS(data: any): WatershedDto {\n data = typeof data === 'object' ? data : {};\n let result = new WatershedDto();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"code\"] = this.code;\n data[\"id\"] = this.id;\n return data; \n }\n\n clone(): WatershedDto {\n const json = this.toJSON();\n let result = new WatershedDto();\n result.init(json);\n return result;\n }\n}\n\nexport interface IWatershedDto {\n name: string | undefined;\n code: string | undefined;\n id: number;\n}\n\nexport class Answers implements IAnswers {\n owned: CAnswerDto[];\n rented: CAnswerDto[];\n\n constructor(data?: IAnswers) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n if (Array.isArray(_data[\"Owned\"])) {\n this.owned = [] as any;\n for (let item of _data[\"Owned\"])\n this.owned.push(CAnswerDto.fromJS(item));\n }\n if (Array.isArray(_data[\"Rented\"])) {\n this.rented = [] as any;\n for (let item of _data[\"Rented\"])\n this.rented.push(CAnswerDto.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): Answers {\n data = typeof data === 'object' ? data : {};\n let result = new Answers();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n if (Array.isArray(this.owned)) {\n data[\"Owned\"] = [];\n for (let item of this.owned)\n data[\"Owned\"].push(item.toJSON());\n }\n if (Array.isArray(this.rented)) {\n data[\"Rented\"] = [];\n for (let item of this.rented)\n data[\"Rented\"].push(item.toJSON());\n }\n return data; \n }\n\n clone(): Answers {\n const json = this.toJSON();\n let result = new Answers();\n result.init(json);\n return result;\n }\n}\n\nexport interface IAnswers {\n owned: CAnswerDto[];\n rented: CAnswerDto[];\n}\n\nexport interface FileResponse {\n data: Blob;\n status: number;\n fileName?: string;\n headers?: { [name: string]: any };\n}\n\nexport class ApiException extends Error {\n message: string;\n status: number; \n response: string; \n headers: { [key: string]: any; };\n result: any; \n\n constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {\n super();\n\n this.message = message;\n this.status = status;\n this.response = response;\n this.headers = headers;\n this.result = result;\n }\n\n protected isApiException = true;\n\n static isApiException(obj: any): obj is ApiException {\n return obj.isApiException === true;\n }\n}\n\nfunction throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): Observable {\n if (result !== null && result !== undefined)\n return _observableThrow(result);\n else\n return _observableThrow(new ApiException(message, status, response, headers, null));\n}\n\nfunction blobToText(blob: any): Observable {\n return new Observable((observer: any) => {\n if (!blob) {\n observer.next(\"\");\n observer.complete();\n } else {\n let reader = new FileReader(); \n reader.onload = event => { \n observer.next((event.target).result);\n observer.complete();\n };\n reader.readAsText(blob); \n }\n });\n}","\r\nimport { Injectable } from '@angular/core';\r\nimport {\r\n ApplicationInfoDto,\r\n GetCurrentLoginInformationsOutput,\r\n SessionServiceProxy,\r\n TenantLoginInfoDto,\r\n UserLoginInfoDto,\r\n FarmerDto\r\n} from '@shared/service-proxies/service-proxies';\r\nimport { AppStorageService } from '@shared/storage/app-storage.service';\r\nimport { MultiTenancyService } from '@shared/multi-tenancy/mult-tenancy.service';\r\nimport { tap } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class AppSessionService {\r\n\r\n private _user: UserLoginInfoDto;\r\n private _tenant: TenantLoginInfoDto;\r\n private _application: ApplicationInfoDto;\r\n private _farmer: FarmerDto\r\n\r\n constructor(\r\n private _sessionService: SessionServiceProxy,\r\n private _multiTenancyService: MultiTenancyService,\r\n private storageService: AppStorageService) {\r\n this.storageService.UserSubject.pipe(tap(_ => console.debug(\"UserSubject-AppSessionService-776130f1-af7a-4f36-a4b3-f1a86676c2d6\"))).subscribe(u => this._user = u);\r\n }\r\n\r\n get application(): ApplicationInfoDto {\r\n return this._application;\r\n }\r\n \r\n get farmer(): FarmerDto {\r\n return this._farmer;\r\n }\r\n\r\n get farmerId(): number {\r\n return this.farmer ? this.farmer.id : null;\r\n }\r\n\r\n get user(): UserLoginInfoDto {\r\n return this._user;\r\n }\r\n\r\n get userId(): number {\r\n return this.user ? this.user.id : null;\r\n }\r\n\r\n get tenant(): TenantLoginInfoDto {\r\n return this._tenant;\r\n }\r\n\r\n get tenantId(): number {\r\n return this.tenant ? this.tenant.id : null;\r\n }\r\n\r\n getShownLoginName(): string {\r\n const userName = this._user.userName;\r\n if (!this._multiTenancyService.isEnabled) {\r\n return userName;\r\n }\r\n\r\n return (this._tenant ? this._tenant.tenancyName : '.') + '\\\\' + userName;\r\n }\r\n\r\n init(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this._sessionService.getCurrentLoginInformations().toPromise().then((result: GetCurrentLoginInformationsOutput) => {\r\n this._application = result.application;\r\n this._user = result.user;\r\n this._tenant = result.tenant;\r\n this._farmer = result.farmer;\r\n this.storageService.setUser(this._user);\r\n resolve(true);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n changeTenantIfNeeded(tenantId?: number): boolean {\r\n if (this.isCurrentTenant(tenantId)) {\r\n return false;\r\n }\r\n this.storageService.setTenantId(tenantId);\r\n\r\n location.reload();\r\n return true;\r\n }\r\n\r\n private isCurrentTenant(tenantId?: number) {\r\n if (!tenantId && this.tenant) {\r\n return false;\r\n } else if (tenantId && (!this.tenant || this.tenant.id !== tenantId)) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class SettingService{}","import { CommonModule } from '@angular/common';\r\nimport { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AppSessionService } from './session/app-session.service';\r\nimport { AuthService } from './auth/auth.service';\r\nimport { AppUrlService } from './nav/app-url.service';\r\nimport { AppRouteGuard } from './auth/auth-route-guard';\r\nimport { IonicStorageModule } from '@ionic/storage';\r\nimport { AppStorageService } from './storage/app-storage.service';\r\nimport { PermissionCheckerService } from './auth/permission-checker.service';\r\nimport { FeatureCheckerService } from './multi-tenancy/feature-checker.service';\r\nimport { NotifyService } from './notify/notify.service';\r\nimport { SettingService } from './settings/settings.service';\r\nimport { MessageService } from './message/message.service';\r\nimport { MultiTenancyService } from './multi-tenancy/mult-tenancy.service';\r\nimport { LogService } from './log/log.service';\r\nimport { AppHttpConfiguration, AppHttpInterceptor } from './app-http-interceptor';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n IonicStorageModule.forRoot()\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ]\r\n})\r\nexport class SharedModule {\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: SharedModule,\r\n providers: [\r\n AppSessionService,\r\n AppUrlService,\r\n AuthService,\r\n AppRouteGuard,\r\n AppStorageService,\r\n PermissionCheckerService,\r\n FeatureCheckerService,\r\n NotifyService,\r\n SettingService,\r\n MessageService,\r\n MultiTenancyService, \r\n LogService,\r\n AppHttpInterceptor,\r\n AppHttpConfiguration\r\n ]\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Storage } from '@ionic/storage';\r\nimport { BehaviorSubject, Observable, Subject, ReplaySubject } from 'rxjs';\r\nimport {\r\n UserDto,\r\n UserLoginInfoDto,\r\n} from '@shared/service-proxies/service-proxies';\r\n\r\n@Injectable()\r\nexport class AppStorageService {\r\n setGrantedPermissions(grantedPermissions: any) {\r\n console.debug('set GrantedPermissionsSubject');\r\n this._grantedPermissionsSubject.next(grantedPermissions);\r\n }\r\n setAllPermissions(allPermissions: any) {\r\n console.debug('set AllPermissionsSubject');\r\n this._allPermissionsSubject.next(allPermissions);\r\n }\r\n setUser(_user: UserLoginInfoDto) {\r\n console.debug('set UserSubject');\r\n this._userSubject.next(_user);\r\n this.storage.set(AppStorageService._userKey, _user);\r\n }\r\n setToken(accessToken: string, encryptedToken: string, tokenExpireDate: Date) {\r\n console.debug('set TokenSubject');\r\n this._tokenSubject.next(accessToken);\r\n this._encryptedTokenSubject.next(encryptedToken);\r\n this._isLoadedSubject.next(true);\r\n this.storage.set(AppStorageService._certificationTokenKey, accessToken);\r\n this.storage.set(\r\n AppStorageService._certificationEncryptedTokenKey,\r\n encryptedToken\r\n );\r\n this.storage.set(AppStorageService._certificationTokenExp, tokenExpireDate);\r\n }\r\n\r\n private _userSubject: Subject = new ReplaySubject(1);\r\n private _tokenSubject: Subject = new ReplaySubject(1);\r\n private _encryptedTokenSubject: Subject = new ReplaySubject(1);\r\n private _allPermissionsSubject: Subject = new ReplaySubject(1);\r\n private _grantedPermissionsSubject: Subject = new ReplaySubject(1);\r\n private _isLoadedSubject: Subject = new ReplaySubject(1);\r\n\r\n get UserSubject(): Observable {\r\n return this._userSubject.asObservable();\r\n }\r\n\r\n get GrantedPermissionsSubject(): Observable {\r\n return this._grantedPermissionsSubject.asObservable();\r\n }\r\n\r\n get TokenSubject(): Observable {\r\n return this._tokenSubject.asObservable();\r\n }\r\n get EncryptedTokenSubject(): Observable {\r\n return this._encryptedTokenSubject.asObservable();\r\n }\r\n\r\n get AllPermissionsSubject(): Observable {\r\n return this._allPermissionsSubject.asObservable();\r\n }\r\n\r\n get IsLoadedSubject(): Observable {\r\n return this._isLoadedSubject.asObservable();\r\n }\r\n\r\n static _certificationTokenKey: string = '_certificationTokenKey';\r\n static _certificationEncryptedTokenKey: string = '_certificationEncTokenKey';\r\n static _certificationTokenExp: string = '_certificationTokenExp';\r\n static _userKey: string = '_userKey';\r\n\r\n clearToken() {\r\n this.storage.remove(AppStorageService._certificationTokenKey);\r\n this.storage.remove(AppStorageService._certificationTokenExp);\r\n\r\n this._grantedPermissionsSubject.next({});\r\n this._tokenSubject.next(null);\r\n this._userSubject.next(null);\r\n this._isLoadedSubject.next(false);\r\n }\r\n setTenantId(tenantId: number) {\r\n throw new Error('Method not implemented.');\r\n }\r\n constructor(private storage: Storage) {\r\n this.init();\r\n }\r\n init() {\r\n return Promise.all([\r\n this.storage.get(AppStorageService._certificationTokenExp).then((e) => {\r\n if (e && e > new Date()) {\r\n this.storage\r\n .get(AppStorageService._certificationEncryptedTokenKey)\r\n .then((x) => this._encryptedTokenSubject.next(x));\r\n this.storage\r\n .get(AppStorageService._certificationTokenKey)\r\n .then((x) => {\r\n this._tokenSubject.next(x);\r\n this._isLoadedSubject.next(true);\r\n });\r\n this.storage\r\n .get(AppStorageService._userKey)\r\n .then((x) => this._userSubject.next(x));\r\n }\r\n }),\r\n ]);\r\n }\r\n}\r\n"],"sourceRoot":""}