{"version":3,"sources":["app.js","account/account.module.js","adminRoles/adminRoles.module.js","adminUsers/adminUsers.module.js","assetDownloads/assetDownloads.module.js","auth/auth.module.js","errors/errors.module.js","home/home.module.js","account/services/AccountService.js","adminRoles/services/AdminPermissionsService.js","adminRoles/services/AdminRolesService.js","adminUsers/services/AdminUserService.js","assetDownloads/services/assetDownloadByMemberServices.js","assetDownloads/services/assetDownloadServices.js","assetDownloads/services/assetTopDownloadServices.js","assetDownloads/services/assetTypeDownloadServices.js","auth/services/AuthService.js","core/services/metadataExtractorService.js","languages/services/languagesService.js","account/controllers/ChangePassword.js","account/controllers/EditProfile.js","adminRoles/controllers/adminRoles.js","adminRoles/controllers/adminRolesCreate.js","adminRoles/controllers/adminRolesEdit.js","adminUsers/controllers/adminUsers.js","adminUsers/controllers/adminUsersCreate.js","adminUsers/controllers/adminUsersEdit.js","assetDownloads/controllers/assetDownloads.js","assetDownloads/controllers/assetDownloadsByMember.js","assetDownloads/controllers/assetTopDownloads.js","assetDownloads/controllers/assetTypeDownloads.js","auth/controllers/ExpiredPasswordController.js","auth/controllers/ForgotPassword.js","auth/controllers/ResetPasswordController.js","auth/controllers/login.js","auth/controllers/otpAuthentication.js","core/filters/humanize.filter.js","core/filters/repeat.filter.js","core/lib/flash.js","core/lib/spinxCreate.js","core/lib/spinxEdit.js","core/lib/spinxList.js","home/controllers/Menu.js","home/controllers/home.js","amazonStudio/components/deleteLanguageContentButton/deleteLanguageContentButton.js","amazonStudio/components/languageChangeBar/languageChangeBar.js","amazonStudio/components/loadEnglishVersionButton/loadEnglishVersionButton.js","amazonStudio/components/loadMediaAssetButton/loadMediaAssetButton.js","core/components/formActions/formActions.js","core/components/grid/grid.js","core/components/layoutHeader/layoutHeader.js","core/components/message/message.js","core/components/pager/pager.js","core/components/toolbar/customToolbar.js","core/components/toolbar/toolbar.js","core/components/form/checkbox/checkbox.js","core/components/form/ckeditor/ckeditor.js","core/components/form/controlBase/controlBase.js","core/components/form/multiSelectCheckbox/multiSelectCheckbox.js","core/components/form/multiSelectFile/multiSelectFile.js","core/components/form/selectBox/selectBox.js","core/components/form/status/status.js","core/components/form/textbox/textbox.js","core/components/form/textboxArea/textboxArea.js","core/components/form/textboxAreaCode/textboxAreaCode.js","core/components/form/textboxDate/textboxDate.js","core/components/form/textboxDatetime/textboxDatetime.js","core/components/form/textboxFile/textboxFile.js","core/components/form/textboxIcon/textboxIcon.js","core/components/form/textboxImage/textboxImage.js","core/components/form/textboxMonthYear/textboxMonthYear.js","core/components/form/textboxSlug/textboxSlug.js","core/components/formButtons/delete/delete.js","core/components/formButtons/save/save.js","core/components/formButtons/saveContinue/saveContinue.js","core/components/formButtons/saveNew/saveNew.js","core/components/groups/seoInputs/seoInputs.js","core/components/list/rowNoRecords/rowNoRecords.js","core/components/list/body/actionApprove/actionApprove.js","core/components/list/body/actionApproveRestricted/actionApproveRestricted.js","core/components/list/body/actionDecline/actionDecline.js","core/components/list/body/actionDelete/actionDelete.js","core/components/list/body/actionEdit/actionEdit.js","core/components/list/body/cell/cell.js","core/components/list/body/cellCheckboxId/cellCheckboxId.js","core/components/list/body/cellCheckboxId2/cellCheckboxId.js","core/components/list/body/cellChildCheckboxId/cellChildCheckboxId.js","core/components/list/body/cellDate/cellDate.js","core/components/list/body/cellDateTime/cellDate.js","core/components/list/body/cellDateTimeSecond/cellDate.js","core/components/list/body/cellStatus/cellStatus.js","core/components/list/header/thSort/thSort.js","core/components/list/header/thSortAction/thSortAction.js","core/components/list/header/thSortDate/thSortDate.js","core/components/list/header/thSortSelectAll/thSortSelectAll.js","core/components/list/header/thSortSelectAll2/thSortSelectAll.js","core/components/list/header/thSortSelectChildAll/thSortSelectChildAll.js","core/components/list/header/thSortStatus/thSortStatus.js","core/components/list/search/thSearch/thSearch.js","core/components/list/search/thSearchDate/thSearchDate.js","core/components/list/search/thSearchNumber/thSearchNumber.js","core/components/list/search/thSearchSelect/thSearchSelect.js","core/components/list/search/thSearchStatus/thSearchStatus.js","core/components/list/search/thSearchYesNo/thSearchYesNo.js","core/components/toolbar/buttons/buttonAdd/buttonAdd.js","core/components/toolbar/buttons/buttonBack/buttonBack.js","core/components/toolbar/buttons/buttonBulkUpload/button-bulk-upload.js","core/components/toolbar/buttons/buttonExport/buttonExport.js","core/components/toolbar/buttons/buttonImport/buttonImport.js","core/components/toolbar/buttons/buttonSequence/buttonSequence.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3mBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC5FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACreA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC/GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"app.js","sourcesContent":["var localStoragePrefix = 'amazon-studio-press/admin';\nvar tokenName = 'jwta';\n\n(function (angular) {\n 'use strict';\n\n var app = angular.module(\"myApp\", [\n \"ui.bootstrap\",\n \"ui.router\",\n \"ngCookies\",\n \"ngSanitize\",\n \"angular-jwt\",\n \"ui.gravatar\",\n \"checklist-model\",\n \"LocalStorageModule\",\n \"blockUI\",\n \"ui.select\",\n \"ui.sortable\",\n \"slugifier\",\n \"monospaced.elastic\",\n \"ui.codemirror\",\n \"ui.mask\",\n \"ngDialog\",\n \"ngFileSaver\",\n \"ui.bootstrap.datetimepicker\",\n \"bw.paging\",\n \"ui.tree\",\n ]);\n\n app.config([\n '$urlRouterProvider',\n \"$locationProvider\",\n \"jwtOptionsProvider\",\n \"$httpProvider\",\n \"localStorageServiceProvider\",\n \"$compileProvider\",\n '$stateProvider',\n function ($urlRouterProvider,\n $locationProvider,\n jwtOptionsProvider,\n $httpProvider,\n localStorageServiceProvider,\n $compileProvider,\n $stateProvider) {\n\n // unsafe\n $compileProvider.aHrefSanitizationWhitelist(/^\\s*(https?|ftp|mailto|file|javascript):/);\n\n /**\n * Set prefix for local storage data\n */\n localStorageServiceProvider.setPrefix(localStoragePrefix);\n\n /**\n * Added authentication barrier token for all request\n * - Also skip sending auth token for html templates\n */\n jwtOptionsProvider.config({\n whiteListedDomains: ['https://6fcm11kioi.execute-api.us-west-1.amazonaws.com'],\n tokenGetter: function (options) {\n // Skip authentication for any requests ending in .html\n if (options.url.substr(options.url.length - 5) === '.html') {\n return null;\n }\n\n return window.localStorage[localStoragePrefix + '.' + tokenName].slice(1, -1);\n }\n });\n $httpProvider.interceptors.push('jwtInterceptor');\n \n $httpProvider.interceptors.push([\n \"$q\", \"$state\", \"localStorageService\", \"$rootScope\", function ($q, $state, localStorageService, $rootScope) {\n return {\n responseError: function (rejection) {\n if (rejection.status === 400 || rejection.status === 401 || rejection.status === 419) {\n localStorageService.remove(tokenName);\n $rootScope.loggedIn = false;\n $rootScope.auth = null;\n //auth.saveAttemptUrl();\n $state.go(\"login\");\n\n return rejection;\n }\n\n //// do something on error\n //if (canRecover(rejection)) {\n // return responseOrNewPromise\n //}\n\n return $q.reject(rejection);\n }\n };\n }\n ]);\n\n $urlRouterProvider.otherwise('/');\n\n $stateProvider.state('admin', {\n resolve: {\n greeting: ['$rootScope', '$http', '$q', '$timeout',\n function ($rootScope, $http, $q, $timeout) {\n var deferred = $q.defer();\n $timeout(function () {\n $http.get('api/admin/me/permissions').then(function (resp) {\n $rootScope.permissions = JSON.stringify(resp.data);\n deferred.resolve(resp.data);\n });\n }, 100);\n return deferred.promise;\n }]\n }\n });\n \n $stateProvider.state('content', { parent: 'admin' });\n $stateProvider.state('system', { parent: 'admin' });\n $stateProvider.state('permission', { parent: 'system' });\n\n $locationProvider.html5Mode(true);\n }]);\n\n app.controller('BodyController', ['$rootScope', '$scope', function ($rootScope, $scope) {\n $scope.hasAccess = function (permissions) {\n return $rootScope.hasAccess(permissions);\n };\n }]);\n\n\n app.run([\n '$rootScope', '$state', '$transitions', 'auth', 'localStorageService', '$http', '$cookies',\n function ($rootScope, $state, $transitions, auth, localStorageService, $http, $cookies) {\n\n $rootScope.result = null;\n $rootScope.year = new Date().getFullYear();\n $rootScope.assetsAdminPath = assetsAdminPath;\n $rootScope.redirectToUrlAfterLogin = {};\n\n $rootScope.hasAccess = function (permissions) {\n if (permissions !== undefined && $rootScope.permissions != null) {\n\n var allow = false;\n var allPermission = JSON.parse($rootScope.permissions);\n\n angular.forEach(permissions.split(','), function (value) {\n if (value !== undefined && value !== \"\") {\n angular.forEach(allPermission, function (perm) {\n if (perm == value) {\n allow = true;\n return;\n }\n });\n }\n });\n\n return allow;\n }\n\n return true;\n };\n\n $rootScope.permissionsLoaded = function () {\n return $rootScope.permissions != null;\n };\n\n $transitions.onBefore({}, function (trans) {\n\n if (trans.$to().name === 'logout') {\n localStorageService.remove(tokenName);\n $cookies.remove('auth');\n $rootScope.loggedIn = false;\n $rootScope.auth = null;\n return $state.target(\"login\");\n }\n\n if (!auth.loggedIn()) {\n\n $rootScope.loggedIn = false;\n\n if (typeof trans.$to().data !== 'undefined') {\n auth.saveAttemptUrl();\n return $state.target(\"login\");\n }\n } else {\n\n $rootScope.loggedIn = true;\n\n var permissions = null;\n\n if (trans.$to().data !== undefined)\n permissions = trans.$to().data.permissions;\n\n if (permissions !== null) {\n\n var allow = false;\n\n if ($rootScope.permissions == null) {\n $http.get('api/admin/me/permissions').then(function (resp) {\n $rootScope.permissions = JSON.stringify(resp.data);\n\n angular.forEach(permissions, function (value) {\n if ($rootScope.permissions.indexOf(value) !== -1) {\n allow = true;\n }\n });\n\n if (allow == false) {\n // TODO: Permission failed redirect access denied\n return $state.go(\"home\");\n }\n\n });\n }\n else {\n\n angular.forEach(permissions, function (value) {\n if ($rootScope.permissions.indexOf(value) !== -1) {\n allow = true;\n }\n });\n\n if (allow == false) {\n // TODO: Permission failed redirect access denied\n return $state.target(\"home\");\n }\n }\n }\n\n // TODO: Permission check\n\n }\n });\n\n $rootScope.rsaPublicKey = \"-----BEGIN PUBLIC KEY-----\" +\n \"MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAgANIOnPG5Qsex3RAIR5t\" +\n \"vw1jRqkPHqZsm48f7RXaCe2QqEbc7Kz1phaJgI1ult8pj9dfcEApgIb9wZT5jodo\" +\n \"rmlfrkqID/pbSlFL5MOZ8Nri6eZ37+EJeZ796k0Vq7lGo10+ZbBHuQz65JxrhURl\" +\n \"X5PZcHjvsIJ3P1txLHpmlQHlubzGczRm+6NXNyj8uuzENAsvC6nPaQtCMU1+9CV1\" +\n \"oZwplylVsItaX6+6FGGPrMqgeBRK0dmerOUgHaLS5PEPZm76gbcSPl8sudhsN1EY\" +\n \"pbBO/l306gqhKrxX+Tf83JV9uxWbRvjobqBoSGkWs0QEBsAorblbDe0ELu0GBWta\" +\n \"DUn7pNwUzjdPewD8+gW+k7/W+flLJbpAkfxUCqc2qfDSWQ6PEu+Drq7vCE9E8LNi\" +\n \"ljnNvHIRGCoaeySvnRVORYKbsGgoHDuEtZ6DYtNGHwG1wVidK4MhPzD2m9e0YT5E\" +\n \"bcso7K3+MI+9nHjIIBA3RsgK8O+wvSaheE8VCm5unN5BTCU/qf+OQTqzX+l7ZCHk\" +\n \"Xj0LDDU03GsR5RQH/tsiiK2DdVM8Ltcsrlq+nxu1VH4lDS61gZiyQMXObTsJYx+9\" +\n \"j9Og+owgfXtXoP6bknpYfW1BxMHZF5upCVe/JkpAz+YgZC7bydD5+vGZoyYM/Swv\" +\n \"ZkfANK+w/6rI303D0RBeBpkCAwEAAQ==\" +\n \"-----END PUBLIC KEY-----\";\n\n $rootScope.getEncryptedText = function (content) {\n let RSAEncrypt = new JSEncrypt();\n RSAEncrypt.setPublicKey($rootScope.rsaPublicKey);\n return RSAEncrypt.encrypt(content);\n }\n\n }\n ]);\n\n app.factory('auth',\n [\n '$http', 'jwtHelper', 'localStorageService', '$rootScope', '$location', function ($http, jwtHelper, localStorageService, $rootScope, $location) {\n return {\n loggedIn: function () {\n\n var token = localStorageService.get(tokenName);\n\n if (token == null)\n return false;\n\n if (jwtHelper.isTokenExpired(token)) {\n localStorageService.remove(tokenName);\n return false;\n } else {\n\n $rootScope.auth = jwtHelper.decodeToken(token);\n }\n\n return true;\n },\n saveAttemptUrl: function () {\n if ($location.path().toLowerCase() !== '/auth/login') {\n $rootScope.redirectToUrlAfterLogin.url = $location.path();\n }\n else {\n $rootScope.redirectToUrlAfterLogin.url = 'home';\n }\n },\n redirectToAttemptedUrl: function () {\n if ($rootScope.redirectToUrlAfterLogin.url === undefined)\n $location.path(\"home\");\n else\n $location.path($rootScope.redirectToUrlAfterLogin.url);\n }\n };\n }\n ]);\n\n})(angular);\n\nObject.size = function (obj) {\n var size = 0, key;\n for (key in obj) {\n if (obj.hasOwnProperty(key)) size++;\n }\n return size;\n};\n\nvar arrayEncoderList = [\n { \"Hex\": \"00A0\", \"HtmlEncodedChar\": \" \", \"Name\": \"NO-BREAK SPACE\" },\n { \"Hex\": \"00A1\", \"HtmlEncodedChar\": \"¡\", \"Name\": \"INVERTED EXCLAMATION MARK\" },\n { \"Hex\": \"00A2\", \"HtmlEncodedChar\": \"¢\", \"Name\": \"CENT SIGN\" },\n { \"Hex\": \"00A3\", \"HtmlEncodedChar\": \"£\", \"Name\": \"POUND SIGN\" },\n { \"Hex\": \"00A4\", \"HtmlEncodedChar\": \"¤\", \"Name\": \"CURRENCY SIGN\" },\n { \"Hex\": \"00A5\", \"HtmlEncodedChar\": \"¥\", \"Name\": \"YEN SIGN\" },\n { \"Hex\": \"00A6\", \"HtmlEncodedChar\": \"¦\", \"Name\": \"BROKEN BAR\" },\n { \"Hex\": \"00A7\", \"HtmlEncodedChar\": \"§\", \"Name\": \"SECTION SIGN\" },\n { \"Hex\": \"00A8\", \"HtmlEncodedChar\": \"¨\", \"Name\": \"DIAERESIS\" },\n { \"Hex\": \"00A9\", \"HtmlEncodedChar\": \"©\", \"Name\": \"COPYRIGHT SIGN\" },\n { \"Hex\": \"00AA\", \"HtmlEncodedChar\": \"ª\", \"Name\": \"FEMININE ORDINAL INDICATOR\" },\n {\n \"Hex\": \"00AB\",\n \"HtmlEncodedChar\": \"«\",\n \"Name\": \"LEFT-POINTING DOUBLE ANGLE QUOTATION MARK\"\n },\n { \"Hex\": \"00AC\", \"HtmlEncodedChar\": \"¬\", \"Name\": \"NOT SIGN\" },\n { \"Hex\": \"00AD\", \"HtmlEncodedChar\": \"­\", \"Name\": \"SOFT HYPHEN\" },\n { \"Hex\": \"00AE\", \"HtmlEncodedChar\": \"®\", \"Name\": \"REGISTERED SIGN\" },\n { \"Hex\": \"00AF\", \"HtmlEncodedChar\": \"¯\", \"Name\": \"MACRON\" },\n { \"Hex\": \"00B0\", \"HtmlEncodedChar\": \"°\", \"Name\": \"DEGREE SIGN\" },\n { \"Hex\": \"00B1\", \"HtmlEncodedChar\": \"±\", \"Name\": \"PLUS-MINUS SIGN\" },\n { \"Hex\": \"00B2\", \"HtmlEncodedChar\": \"²\", \"Name\": \"SUPERSCRIPT TWO\" },\n { \"Hex\": \"00B3\", \"HtmlEncodedChar\": \"³\", \"Name\": \"SUPERSCRIPT THREE\" },\n { \"Hex\": \"00B4\", \"HtmlEncodedChar\": \"´\", \"Name\": \"ACUTE ACCENT\" },\n { \"Hex\": \"00B5\", \"HtmlEncodedChar\": \"µ\", \"Name\": \"MICRO SIGN\" },\n { \"Hex\": \"00B6\", \"HtmlEncodedChar\": \"¶\", \"Name\": \"PILCROW SIGN\" },\n { \"Hex\": \"00B7\", \"HtmlEncodedChar\": \"·\", \"Name\": \"MIDDLE DOT\" },\n { \"Hex\": \"00B8\", \"HtmlEncodedChar\": \"¸\", \"Name\": \"CEDILLA\" },\n { \"Hex\": \"00B9\", \"HtmlEncodedChar\": \"¹\", \"Name\": \"SUPERSCRIPT ONE\" },\n { \"Hex\": \"00BA\", \"HtmlEncodedChar\": \"º\", \"Name\": \"MASCULINE ORDINAL INDICATOR\" },\n {\n \"Hex\": \"00BB\",\n \"HtmlEncodedChar\": \"»\",\n \"Name\": \"RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK\"\n },\n {\n \"Hex\": \"00BC\",\n \"HtmlEncodedChar\": \"¼\",\n \"Name\": \"VULGAR FRACTION ONE QUARTER\"\n },\n { \"Hex\": \"00BD\", \"HtmlEncodedChar\": \"½\", \"Name\": \"VULGAR FRACTION ONE HALF\" },\n {\n \"Hex\": \"00BE\",\n \"HtmlEncodedChar\": \"¾\",\n \"Name\": \"VULGAR FRACTION THREE QUARTERS\"\n },\n { \"Hex\": \"00BF\", \"HtmlEncodedChar\": \"¿\", \"Name\": \"INVERTED QUESTION MARK\" },\n {\n \"Hex\": \"00C0\",\n \"HtmlEncodedChar\": \"À\",\n \"Name\": \"LATIN CAPITAL LETTER A WITH GRAVE\"\n },\n {\n \"Hex\": \"00C1\",\n \"HtmlEncodedChar\": \"Á\",\n \"Name\": \"LATIN CAPITAL LETTER A WITH ACUTE\"\n },\n {\n \"Hex\": \"00C2\",\n \"HtmlEncodedChar\": \"Â\",\n \"Name\": \"LATIN CAPITAL LETTER A WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00C3\",\n \"HtmlEncodedChar\": \"Ã\",\n \"Name\": \"LATIN CAPITAL LETTER A WITH TILDE\"\n },\n {\n \"Hex\": \"00C4\",\n \"HtmlEncodedChar\": \"Ä\",\n \"Name\": \"LATIN CAPITAL LETTER A WITH DIAERESIS\"\n },\n {\n \"Hex\": \"00C5\",\n \"HtmlEncodedChar\": \"Å\",\n \"Name\": \"LATIN CAPITAL LETTER A WITH RING ABOVE\"\n },\n { \"Hex\": \"00C6\", \"HtmlEncodedChar\": \"Æ\", \"Name\": \"LATIN CAPITAL LETTER AE\" },\n {\n \"Hex\": \"00C7\",\n \"HtmlEncodedChar\": \"Ç\",\n \"Name\": \"LATIN CAPITAL LETTER C WITH CEDILLA\"\n },\n {\n \"Hex\": \"00C8\",\n \"HtmlEncodedChar\": \"È\",\n \"Name\": \"LATIN CAPITAL LETTER E WITH GRAVE\"\n },\n {\n \"Hex\": \"00C9\",\n \"HtmlEncodedChar\": \"É\",\n \"Name\": \"LATIN CAPITAL LETTER E WITH ACUTE\"\n },\n {\n \"Hex\": \"00CA\",\n \"HtmlEncodedChar\": \"Ê\",\n \"Name\": \"LATIN CAPITAL LETTER E WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00CB\",\n \"HtmlEncodedChar\": \"Ë\",\n \"Name\": \"LATIN CAPITAL LETTER E WITH DIAERESIS\"\n },\n {\n \"Hex\": \"00CC\",\n \"HtmlEncodedChar\": \"Ì\",\n \"Name\": \"LATIN CAPITAL LETTER I WITH GRAVE\"\n },\n {\n \"Hex\": \"00CD\",\n \"HtmlEncodedChar\": \"Í\",\n \"Name\": \"LATIN CAPITAL LETTER I WITH ACUTE\"\n },\n {\n \"Hex\": \"00CE\",\n \"HtmlEncodedChar\": \"Î\",\n \"Name\": \"LATIN CAPITAL LETTER I WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00CF\",\n \"HtmlEncodedChar\": \"Ï\",\n \"Name\": \"LATIN CAPITAL LETTER I WITH DIAERESIS\"\n },\n { \"Hex\": \"00D0\", \"HtmlEncodedChar\": \"Ð\", \"Name\": \"LATIN CAPITAL LETTER ETH\" },\n {\n \"Hex\": \"00D1\",\n \"HtmlEncodedChar\": \"Ñ\",\n \"Name\": \"LATIN CAPITAL LETTER N WITH TILDE\"\n },\n {\n \"Hex\": \"00D2\",\n \"HtmlEncodedChar\": \"Ò\",\n \"Name\": \"LATIN CAPITAL LETTER O WITH GRAVE\"\n },\n {\n \"Hex\": \"00D3\",\n \"HtmlEncodedChar\": \"Ó\",\n \"Name\": \"LATIN CAPITAL LETTER O WITH ACUTE\"\n },\n {\n \"Hex\": \"00D4\",\n \"HtmlEncodedChar\": \"Ô\",\n \"Name\": \"LATIN CAPITAL LETTER O WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00D5\",\n \"HtmlEncodedChar\": \"Õ\",\n \"Name\": \"LATIN CAPITAL LETTER O WITH TILDE\"\n },\n {\n \"Hex\": \"00D6\",\n \"HtmlEncodedChar\": \"Ö\",\n \"Name\": \"LATIN CAPITAL LETTER O WITH DIAERESIS\"\n },\n { \"Hex\": \"00D7\", \"HtmlEncodedChar\": \"×\", \"Name\": \"MULTIPLICATION SIGN\" },\n {\n \"Hex\": \"00D8\",\n \"HtmlEncodedChar\": \"Ø\",\n \"Name\": \"LATIN CAPITAL LETTER O WITH STROKE\"\n },\n {\n \"Hex\": \"00D9\",\n \"HtmlEncodedChar\": \"Ù\",\n \"Name\": \"LATIN CAPITAL LETTER U WITH GRAVE\"\n },\n {\n \"Hex\": \"00DA\",\n \"HtmlEncodedChar\": \"Ú\",\n \"Name\": \"LATIN CAPITAL LETTER U WITH ACUTE\"\n },\n {\n \"Hex\": \"00DB\",\n \"HtmlEncodedChar\": \"Û\",\n \"Name\": \"LATIN CAPITAL LETTER U WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00DC\",\n \"HtmlEncodedChar\": \"Ü\",\n \"Name\": \"LATIN CAPITAL LETTER U WITH DIAERESIS\"\n },\n {\n \"Hex\": \"00DD\",\n \"HtmlEncodedChar\": \"Ý\",\n \"Name\": \"LATIN CAPITAL LETTER Y WITH ACUTE\"\n },\n { \"Hex\": \"00DE\", \"HtmlEncodedChar\": \"Þ\", \"Name\": \"LATIN CAPITAL LETTER THORN\" },\n { \"Hex\": \"00DF\", \"HtmlEncodedChar\": \"ß\", \"Name\": \"LATIN SMALL LETTER SHARP S\" },\n { \"Hex\": \"00E0\", \"HtmlEncodedChar\": \"à\", \"Name\": \"LATIN SMALL LETTER A WITH GRAVE\" },\n { \"Hex\": \"00E1\", \"HtmlEncodedChar\": \"á\", \"Name\": \"LATIN SMALL LETTER A WITH ACUTE\" },\n {\n \"Hex\": \"00E2\",\n \"HtmlEncodedChar\": \"â\",\n \"Name\": \"LATIN SMALL LETTER A WITH CIRCUMFLEX\"\n },\n { \"Hex\": \"00E3\", \"HtmlEncodedChar\": \"ã\", \"Name\": \"LATIN SMALL LETTER A WITH TILDE\" },\n {\n \"Hex\": \"00E4\",\n \"HtmlEncodedChar\": \"ä\",\n \"Name\": \"LATIN SMALL LETTER A WITH DIAERESIS\"\n },\n {\n \"Hex\": \"00E5\",\n \"HtmlEncodedChar\": \"å\",\n \"Name\": \"LATIN SMALL LETTER A WITH RING ABOVE\"\n },\n { \"Hex\": \"00E6\", \"HtmlEncodedChar\": \"æ\", \"Name\": \"LATIN SMALL LETTER AE\" },\n {\n \"Hex\": \"00E7\",\n \"HtmlEncodedChar\": \"ç\",\n \"Name\": \"LATIN SMALL LETTER C WITH CEDILLA\"\n },\n { \"Hex\": \"00E8\", \"HtmlEncodedChar\": \"è\", \"Name\": \"LATIN SMALL LETTER E WITH GRAVE\" },\n { \"Hex\": \"00E9\", \"HtmlEncodedChar\": \"é\", \"Name\": \"LATIN SMALL LETTER E WITH ACUTE\" },\n {\n \"Hex\": \"00EA\",\n \"HtmlEncodedChar\": \"ê\",\n \"Name\": \"LATIN SMALL LETTER E WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00EB\",\n \"HtmlEncodedChar\": \"ë\",\n \"Name\": \"LATIN SMALL LETTER E WITH DIAERESIS\"\n },\n {\n \"Hex\": \"00EC\",\n \"HtmlEncodedChar\": \"ì\",\n \"Name\": \"LATIN SMALL LETTER I WITH GRAVE\"\n },\n {\n \"Hex\": \"00ED\",\n \"HtmlEncodedChar\": \"í\",\n \"Name\": \"LATIN SMALL LETTER I WITH ACUTE\"\n },\n {\n \"Hex\": \"00EE\",\n \"HtmlEncodedChar\": \"î\",\n \"Name\": \"LATIN SMALL LETTER I WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00EF\",\n \"HtmlEncodedChar\": \"ï\",\n \"Name\": \"LATIN SMALL LETTER I WITH DIAERESIS\"\n },\n { \"Hex\": \"00F0\", \"HtmlEncodedChar\": \"ð\", \"Name\": \"LATIN SMALL LETTER ETH\" },\n {\n \"Hex\": \"00F1\",\n \"HtmlEncodedChar\": \"ñ\",\n \"Name\": \"LATIN SMALL LETTER N WITH TILDE\"\n },\n {\n \"Hex\": \"00F2\",\n \"HtmlEncodedChar\": \"ò\",\n \"Name\": \"LATIN SMALL LETTER O WITH GRAVE\"\n },\n {\n \"Hex\": \"00F3\",\n \"HtmlEncodedChar\": \"ó\",\n \"Name\": \"LATIN SMALL LETTER O WITH ACUTE\"\n },\n {\n \"Hex\": \"00F4\",\n \"HtmlEncodedChar\": \"ô\",\n \"Name\": \"LATIN SMALL LETTER O WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00F5\",\n \"HtmlEncodedChar\": \"õ\",\n \"Name\": \"LATIN SMALL LETTER O WITH TILDE\"\n },\n {\n \"Hex\": \"00F6\",\n \"HtmlEncodedChar\": \"ö\",\n \"Name\": \"LATIN SMALL LETTER O WITH DIAERESIS\"\n },\n { \"Hex\": \"00F7\", \"HtmlEncodedChar\": \"÷\", \"Name\": \"DIVISION SIGN\" },\n {\n \"Hex\": \"00F8\",\n \"HtmlEncodedChar\": \"ø\",\n \"Name\": \"LATIN SMALL LETTER O WITH STROKE\"\n },\n {\n \"Hex\": \"00F9\",\n \"HtmlEncodedChar\": \"ù\",\n \"Name\": \"LATIN SMALL LETTER U WITH GRAVE\"\n },\n {\n \"Hex\": \"00FA\",\n \"HtmlEncodedChar\": \"ú\",\n \"Name\": \"LATIN SMALL LETTER U WITH ACUTE\"\n },\n {\n \"Hex\": \"00FB\",\n \"HtmlEncodedChar\": \"û\",\n \"Name\": \"LATIN SMALL LETTER U WITH CIRCUMFLEX\"\n },\n {\n \"Hex\": \"00FC\",\n \"HtmlEncodedChar\": \"ü\",\n \"Name\": \"LATIN SMALL LETTER U WITH DIAERESIS\"\n },\n {\n \"Hex\": \"00FD\",\n \"HtmlEncodedChar\": \"ý\",\n \"Name\": \"LATIN SMALL LETTER Y WITH ACUTE\"\n },\n { \"Hex\": \"00FE\", \"HtmlEncodedChar\": \"þ\", \"Name\": \"LATIN SMALL LETTER THORN\" },\n {\n \"Hex\": \"00FF\",\n \"HtmlEncodedChar\": \"ÿ\",\n \"Name\": \"LATIN SMALL LETTER Y WITH DIAERESIS\"\n }\n];\n\n","(function (angular) {\n 'use strict';\n\n angular.module('myApp').config([\n '$stateProvider',\n function ($stateProvider) {\n\n $stateProvider.state('myAccount',\n {\n parent: 'system',\n templateUrl: '/account/views/layout.tpl.html'\n })\n .state('editProfile',\n {\n parent: 'myAccount',\n url: '/edit-profile',\n component: 'editProfile'\n })\n .state('changePassword',\n {\n parent: 'myAccount',\n url: '/change-password',\n component: 'changePassword'\n });\n }]);\n\n})(angular);\n","(function (angular) {\n 'use strict';\n\n angular.module('myApp').config([\n '$stateProvider',\n function ($stateProvider) {\n\n $stateProvider.state('adminRoles', {\n parent: 'permission',\n url: '/admin-roles',\n component: 'adminRoles',\n data: {\n permissions: ['adminRoles']\n }\n })\n .state('adminRolesCreate', {\n parent: 'permission',\n url: '/admin-roles/create',\n component: 'adminRolesCreate',\n data: {\n permissions: ['adminRoles.create']\n }\n })\n .state('adminRolesEdit', {\n parent: 'permission',\n url: '/admin-roles/edit/{id:int}',\n component: 'adminRolesEdit',\n data: {\n permissions: ['adminRoles.edit']\n }\n });\n }\n ]);\n\n})(angular);\n","(function (angular) {\n 'use strict';\n\n angular.module('myApp').config([\n '$stateProvider',\n function ($stateProvider) {\n\n $stateProvider.state('adminUsers', {\n parent: 'system',\n url: '/admin-users',\n component: 'adminUsers',\n data: {\n permissions: ['adminUsers']\n }\n })\n .state('adminUsersCreate', {\n parent: 'system',\n url: '/admin-users/create',\n component: 'adminUsersCreate',\n data: {\n permissions: ['adminUsers.create']\n }\n })\n .state('adminUsersEdit', {\n parent: 'system',\n url: '/admin-users/edit/{id:int}',\n component: 'adminUsersEdit',\n data: {\n permissions: ['adminUsers.edit']\n }\n });\n }\n ]);\n\n})(angular);\n","(function (angular) {\n 'use strict';\n\n angular.module('myApp').config([\n '$stateProvider',\n function ($stateProvider) {\n\n $stateProvider.state('assetDownloads', {\n parent: 'content',\n url: '/asset-downloads',\n component: 'assetDownloads',\n data: {\n permissions: ['assetDownloads']\n }\n });\n $stateProvider.state('assetTopDownloads', {\n parent: 'content',\n url: '/asset-top-downloads',\n component: 'assetTopDownloads',\n data: {\n permissions: ['assetDownloads']\n }\n });\n $stateProvider.state('assetTypeDownloads', {\n parent: 'content',\n url: '/asset-type-downloads',\n component: 'assetTypeDownloads',\n data: {\n permissions: ['assetDownloads']\n }\n });\n $stateProvider.state('assetDownloadsByMember', {\n parent: 'content',\n url: '/asset-downloads-by-member',\n component: 'assetDownloadsByMember',\n data: {\n permissions: ['assetDownloads']\n }\n });\n }\n ]);\n\n})(angular);\n","(function (angular) {\n 'use strict';\n\n angular.module('myApp').config([\n '$stateProvider',\n function ($stateProvider) {\n\n $stateProvider.state('auth',\n {\n })\n .state('login',\n {\n parent: 'auth',\n url: '/auth/login',\n component: 'login'\n })\n .state('authentication',\n {\n parent: 'auth',\n url: '/auth/authentication/{token}',\n component: 'otpAuthentication'\n })\n .state('forgotPassword',\n {\n parent: 'auth',\n url: '/auth/forgot-password',\n component: 'forgotPassword'\n })\n .state('resetPassword',\n {\n parent: 'auth',\n url: '/auth/reset-password/{token}',\n component: 'resetPassword'\n })\n .state('expiredPassword',\n {\n parent: 'auth',\n url: '/auth/expired-password/{token}',\n component: 'expiredPassword'\n })\n .state('logout',\n {\n parent: 'auth',\n url: '/admin/auth/logout'\n });\n }]);\n\n})(angular);\n","(function (angular) {\n 'use strict';\n\n angular.module('myApp').config([\n '$stateProvider',\n function ($stateProvider) {\n\n $stateProvider.state('404',\n {\n url: '/admin/404',\n templateUrl: '/errors/404.tpl.html'\n });\n }]);\n \n})(angular);\n","(function (angular) {\n 'use strict';\n\n angular.module('myApp').config([\n '$stateProvider',\n function ($stateProvider) {\n\n $stateProvider.state('home', {\n parent: 'admin',\n url: '/',\n component: 'adminDashboard',\n data: {\n permissions: ['dashboard']\n }\n });\n }\n ]);\n\n})(angular);\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('accountService',\n [\n '$http', function ($http) {\n\n var urlBase = 'api/admin/account/';\n\n this.getEditProfile = function () {\n return $http({\n url: urlBase + 'edit-profile',\n method: 'GET'\n });\n };\n\n this.editProfile = function (dto) {\n return $http({\n url: urlBase + 'edit-profile',\n method: 'POST',\n data: dto\n });\n };\n\n this.changePassword = function (dto) {\n return $http({\n url: urlBase + 'change-password',\n method: 'POST',\n data: dto\n });\n };\n }\n ]);\n\n}(window.angular));","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('adminPermissionsService',\n [\n '$http', function ($http) {\n\n var urlBase = 'api/admin/admin-permissions/';\n\n this.all = function () {\n return $http({ url: urlBase + 'all', method: 'GET' });\n };\n\n //this.list = function (filters) {\n // return $http({ url: urlBase, params: filters, method: 'GET' });\n //};\n\n //this.create = function (dto) {\n // return $http({ url: urlBase, method: 'POST', data: dto });\n //};\n\n //this.byId = function(id) {\n // return $http({ url: urlBase + id, method: 'GET' }); \n //};\n\n //this.edit = function (id, dto) {\n // return $http({ url: urlBase + id, method: 'PUT', data: dto });\n //};\n\n //this.delete = function (ids) {\n // return $http({ url: urlBase + 'delete', method: 'POST', data: ids });\n //};\n }\n ]);\n\n}(window.angular));","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('adminRolesService',\n [\n '$http', function ($http) {\n\n var urlBase = 'api/admin/admin-roles/';\n\n this.all = function () {\n return $http({ url: urlBase + 'all', method: 'GET' });\n };\n\n this.list = function (filters) {\n return $http({ url: urlBase, params: filters, method: 'GET' });\n };\n\n this.create = function (dto) {\n return $http({ url: urlBase, method: 'POST', data: dto });\n };\n\n this.byId = function(id) {\n return $http({ url: urlBase + id, method: 'GET' }); \n };\n\n this.edit = function (id, dto) {\n return $http({ url: urlBase + id, method: 'PUT', data: dto });\n };\n\n this.delete = function (ids) {\n return $http({ url: urlBase + 'delete', method: 'POST', data: {ids: ids} });\n };\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('adminUsersService', [\n '$http',\n function ($http) {\n\n var urlBase = 'api/admin/admin-users/';\n\n this.list = function (filters) {\n return $http({\n url: urlBase,\n params: filters,\n method: 'GET'\n });\n };\n\n this.create = function (dto) {\n return $http({\n url: urlBase,\n method: 'POST',\n data: dto\n });\n };\n\n this.byId = function (id) {\n return $http({\n url: urlBase + id,\n method: 'GET'\n });\n };\n\n this.edit = function (id, dto) {\n return $http({\n url: urlBase + id,\n method: 'PUT',\n data: dto\n });\n };\n\n this.delete = function (ids) {\n return $http({\n url: urlBase + 'delete',\n method: 'POST',\n data: {\n ids: ids\n }\n });\n };\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('assetDownloadByMemberServices', [\n '$http', 'FileSaver', 'Blob',\n function ($http, FileSaver, Blob) {\n var urlBase = 'api/admin/asset-downloads-by-member/';\n this.list = function (filters) {\n return $http({\n url: urlBase,\n params: filters,\n method: 'GET'\n });\n };\n this.all = function () {\n return $http({\n url: urlBase + 'all',\n method: 'GET'\n });\n };\n\n this.GetTimeType = function () {\n return $http({\n url: urlBase + 'GetTimeType',\n method: 'GET'\n });\n };\n\n this.export = function (filters) {\n $http({\n url: urlBase + 'export',\n params: filters,\n method: 'GET'\n })\n .then(function (resp) {\n var data = new Blob([resp.data], {\n type: 'text/csv;charset=utf-8'\n });\n FileSaver.saveAs(data, 'asset-top-downloads-by-member.csv');\n });\n };\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('assetDownloadServices', [ \n '$http', 'FileSaver', 'Blob',\n function ($http, FileSaver, Blob){\n var urlBase = 'api/admin/asset-downloads/';\n this.list = function (filters) {\n return $http({\n url: urlBase,\n params: filters,\n method: 'GET'\n });\n };\n this.all = function () {\n return $http({\n url: urlBase + 'all',\n method: 'GET'\n });\n };\n this.export = function (filters) {\n $http({ url: urlBase + 'asset-downloads-export', params: filters, method: 'GET' })\n .then(function (resp) {\n var data = new Blob([resp.data], { type: 'text/csv;charset=utf-8' }); \n FileSaver.saveAs(data, 'asset-downloads.csv');\n });\n }; \n\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('assetTopDownloadServices', [\n '$http', 'FileSaver', 'Blob',\n function ($http, FileSaver, Blob) {\n var urlBase = 'api/admin/asset-top-downloads/';\n this.list = function (filters) {\n return $http({\n url: urlBase,\n params: filters,\n method: 'GET'\n });\n };\n this.all = function () {\n return $http({\n url: urlBase + 'all',\n method: 'GET'\n });\n };\n\n this.GetTimeType = function () {\n return $http({\n url: urlBase + 'GetTimeType',\n method: 'GET'\n });\n };\n\n this.export = function (filters) {\n $http({\n url: urlBase + 'asset-top-downloads-export',\n params: filters,\n method: 'GET'\n })\n .then(function (resp) {\n var data = new Blob([resp.data], {\n type: 'text/csv;charset=utf-8'\n });\n FileSaver.saveAs(data, 'asset-top-downloads.csv');\n });\n };\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('assetTypeDownloadServices', [\n '$http', 'FileSaver', 'Blob',\n function ($http, FileSaver, Blob) {\n var urlBase = 'api/admin/asset-type-downloads/';\n\n this.list = function (filters) {\n return $http({\n url: urlBase,\n params: filters,\n method: 'GET'\n });\n }; \n this.allTime = function () {\n return $http({\n url: urlBase + 'allTime',\n method: 'GET'\n });\n };\n this.export = function (filters) {\n $http({ url: urlBase + 'asset-type-downloads-export', params: filters, method: 'GET' })\n .then(function (resp) {\n var data = new Blob([resp.data], { type: 'text/csv;charset=utf-8' });\n FileSaver.saveAs(data, 'asset-type-downloads.csv');\n });\n }; \n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('authService',\n [\n '$http', function ($http) {\n\n var urlBase = 'api/admin/auth/';\n\n this.login = function (adminLoginDto) {\n return $http({\n url: urlBase + 'login',\n skipAuthorization: true,\n method: 'POST',\n data: adminLoginDto\n });\n };\n\n this.OtpAuthVerification = function (authDto) {\n return $http({\n url: urlBase + 'otp-auth-verification',\n skipAuthorization: true,\n method: 'POST',\n data: authDto\n });\n };\n\n this.ResentOtp = function (authDto) {\n return $http({\n url: urlBase + 'resend-otp',\n skipAuthorization: true,\n method: 'POST',\n data: authDto\n });\n };\n\n this.forgotPassword = function (adminForgotPasswordDto) {\n return $http({\n url: urlBase + 'forgot-password',\n skipAuthorization: true,\n method: 'POST',\n data: adminForgotPasswordDto\n });\n };\n\n this.resetPassword = function (token, adminResetPasswordDto) {\n return $http({\n url: urlBase + 'reset-password/' + token,\n skipAuthorization: true,\n method: 'POST',\n data: adminResetPasswordDto\n });\n };\n\n this.isValidExpiredToken = function (token) {\n return $http({\n url: urlBase + 'isvalid-expired-token/' + token,\n skipAuthorization: true,\n method: 'POST'\n });\n };\n\n this.expiredPassword = function (token, adminExpiredPasswordDto) {\n return $http({\n url: urlBase + 'expired-password/' + token,\n skipAuthorization: true,\n method: 'POST',\n data: adminExpiredPasswordDto\n });\n };\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('metadataExtractorService', [\n '$http',\n function ($http) {\n\n var urlBase = 'api/admin/metadata-extractor/';\n\n this.extractData = function (obj) {\n return $http({\n url: urlBase,\n method: 'POST',\n data: obj\n });\n };\n\n this.extractDataWithThumbnail = function (pathValue, disabledMetaExtract) {\n return $http({\n url: urlBase + \"with-thumbnail/\",\n method: 'POST',\n data: { paths: pathValue, disabledMetaExtractor : disabledMetaExtract}\n });\n };\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp')\n .service('languagesService', [\n '$http',\n function ($http) {\n\n var urlBase = 'api/admin/languages/';\n\n this.list = function (filters) {\n return $http({\n url: urlBase,\n params: filters,\n method: 'GET'\n });\n };\n\n this.byId = function (id) {\n return $http({\n url: urlBase + id,\n method: 'GET'\n });\n };\n\n this.edit = function (id, dto) {\n return $http({\n url: urlBase + id,\n method: 'PUT',\n data: dto\n });\n };\n\n this.saveSequence = function (ids) {\n return $http({\n url: urlBase + 'sort-order',\n method: 'POST',\n data: {\n ids: ids\n }\n });\n };\n\n this.all = function () {\n return $http({\n url: urlBase + 'all-languages',\n method: 'GET'\n });\n };\n\n this.getSeriesLanguages = function (id, mediaAssetType) {\n return $http({\n url: urlBase + 'get-series-languages' + '/' + id + '/' + mediaAssetType,\n method: 'GET'\n });\n };\n\n this.getMoviesLanguages = function (id, mediaAssetType) {\n return $http({\n url: urlBase + 'get-movies-languages' + '/' + id + '/' + mediaAssetType,\n method: 'GET'\n });\n };\n\n this.getSportsLanguages = function (id, mediaAssetType) {\n return $http({\n url: urlBase + 'get-sports-languages' + '/' + id + '/' + mediaAssetType,\n method: 'GET'\n });\n };\n\n this.getCastLanguages = function (id) {\n return $http({\n url: urlBase + 'get-cast-languages' + '/' + id,\n method: 'GET'\n });\n };\n\n this.getEventLanguages = function (id) {\n return $http({\n url: urlBase + 'get-event-languages/' + id,\n method: 'GET'\n });\n };\n\n this.getArticleLanguages = function (id) {\n return $http({\n url: urlBase + 'get-article-languages' + '/' +id ,\n method: 'GET'\n });\n };\n\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('changePassword',\n {\n templateUrl: '/account/views/change-password.tpl.html',\n controller: 'ChangePasswordController'\n });\n\n angular.module('myApp').controller('ChangePasswordController',\n [\n '$scope', '$http', 'accountService', 'flash', '$rootScope',\n function ($scope, $http, accountService, flash, $rootScope) {\n\n $scope.spinx = {};\n $scope.spinx.dto = { currentPassword: '', newPassword: '', confirmPassword:'' };\n $scope.spinx.result = {}; \n\n $scope.submit = function () {\n var data = angular.copy($scope.spinx.dto);\n if (isEncryptionEnable == 'True') {\n data.currentPassword = $rootScope.getEncryptedText($scope.spinx.dto.currentPassword);\n data.newPassword = $rootScope.getEncryptedText($scope.spinx.dto.newPassword);\n data.confirmPassword = $rootScope.getEncryptedText($scope.spinx.dto.confirmPassword);\n }\n accountService.changePassword(data)\n .then(function (resp) {\n\n $scope.spinx.result = resp.data;\n flash.show(resp.data.message, resp.data.messageType);\n\n if (resp.data.success) {\n $scope.spinx.dto = {};\n }\n });\n };\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('editProfile',\n {\n templateUrl: '/account/views/edit-profile.tpl.html',\n controller: 'EditProfileController'\n });\n\n angular.module('myApp').controller('EditProfileController',\n [\n '$scope', '$http', 'accountService', 'flash','$rootScope',\n function ($scope, $http, accountService, flash, $rootScope) {\n $scope.spinx = {};\n $scope.spinx.dto = {\n email:''\n };\n $scope.spinx.result = {}; \n\n accountService.getEditProfile().then(function (resp) {\n $scope.spinx.dto = resp.data;\n setTimeout(function () { funInputPlaceholder(); }, 500);\n });\n\n $scope.submit = function () {\n var data = angular.copy($scope.spinx.dto);\n if (isEncryptionEnable == 'True')\n {\n data.email = $rootScope.getEncryptedText($scope.spinx.dto.email);\n }\n accountService.editProfile(data)\n .then(function (resp) {\n\n $scope.spinx.result = resp.data;\n flash.show(resp.data.message, resp.data.messageType);\n });\n };\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('adminRoles',\n {\n templateUrl: '/adminRoles/views/index.tpl.html',\n controller: 'AdminRolesController'\n });\n\n angular.module('myApp').controller('AdminRolesController',\n [\n '$scope', '$http', 'adminRolesService', 'spinxList',\n function ($scope, $http, adminRolesService, spinxList) {\n\n $scope.list = new spinxList();\n $scope.list.url = 'api/admin/admin-roles/';\n $scope.list.module = 'adminRoles';\n $scope.list.actions = {\n \"delete\": \"adminRoles.delete\"\n };\n $scope.list.load();\n\n //$scope.roles = {};\n //adminRolesService.all().then(function (resp) {\n // $scope.roles = resp.data;\n //});\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('adminRolesCreate', {\n templateUrl: '/adminRoles/views/create.tpl.html',\n controller: 'adminRolesCreateController'\n });\n\n angular.module('myApp').controller('adminRolesCreateController',\n [\n '$scope', 'adminRolesService', 'adminPermissionsService', 'spinxCreate',\n function ($scope, adminRolesService, adminPermissionsService, spinxCreate) {\n\n $scope.spinx = new spinxCreate();\n $scope.spinx.service = adminRolesService;\n\n $scope.spinx.listRoute = 'adminRoles';\n $scope.spinx.editRoute = 'adminRolesEdit';\n\n adminPermissionsService.all().then(function (resp) {\n $scope.permissions = unflatten(resp.data);\n });\n\n $scope.collapseAll = function () {\n $scope.$broadcast('angular-ui-tree:collapse-all');\n };\n\n $scope.expandAll = function () {\n $scope.$broadcast('angular-ui-tree:expand-all');\n };\n }\n ]);\n\n}(window.angular));\n\nfunction unflatten(arr) {\n var tree = [],\n mappedArr = {},\n arrElem,\n mappedElem;\n\n // First map the nodes of the array to an object -> create a hash table.\n for (var i = 0, len = arr.length; i < len; i++) {\n arrElem = arr[i];\n mappedArr[arrElem.id] = arrElem;\n mappedArr[arrElem.id].nodes = [];\n }\n\n for (var id in mappedArr) {\n if (mappedArr.hasOwnProperty(id)) {\n mappedElem = mappedArr[id];\n // If the element is not at the root level, add it to its parent array of children.\n if (mappedElem.parentId) {\n mappedArr[mappedElem.parentId].nodes.push(mappedElem);\n }\n // If the element is at the root level, add it to first level elements array.\n else {\n tree.push(mappedElem);\n }\n }\n }\n return tree;\n}\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('adminRolesEdit', {\n templateUrl: '/adminRoles/views/edit.tpl.html',\n controller: 'adminRolesEditController'\n });\n\n angular.module('myApp').controller('adminRolesEditController',\n [\n '$scope', 'adminRolesService', 'adminPermissionsService', 'spinxEdit',\n function ($scope, adminRolesService, adminPermissionsService, spinxEdit) {\n\n $scope.editMode = true;\n\n $scope.spinx = new spinxEdit();\n $scope.spinx.service = adminRolesService;\n $scope.spinx.listRoute = 'adminRoles';\n $scope.spinx.load();\n\n adminPermissionsService.all().then(function (resp) {\n $scope.permissions = unflatten(resp.data);\n });\n\n $scope.collapseAll = function () {\n $scope.$broadcast('angular-ui-tree:collapse-all');\n };\n\n $scope.expandAll = function () {\n $scope.$broadcast('angular-ui-tree:expand-all');\n };\n }\n ]);\n\n}(window.angular));\n\nfunction unflatten(arr) {\n var tree = [],\n mappedArr = {},\n arrElem,\n mappedElem;\n\n // First map the nodes of the array to an object -> create a hash table.\n for (var i = 0, len = arr.length; i < len; i++) {\n arrElem = arr[i];\n mappedArr[arrElem.id] = arrElem;\n mappedArr[arrElem.id].nodes = [];\n }\n\n for (var id in mappedArr) {\n if (mappedArr.hasOwnProperty(id)) {\n mappedElem = mappedArr[id];\n // If the element is not at the root level, add it to its parent array of children.\n if (mappedElem.parentId) {\n mappedArr[mappedElem.parentId].nodes.push(mappedElem);\n }\n // If the element is at the root level, add it to first level elements array.\n else {\n tree.push(mappedElem);\n }\n }\n }\n return tree;\n}\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('adminUsers', {\n templateUrl: '/adminUsers/views/index.tpl.html',\n controller: [\n '$scope', 'spinxList', 'adminRolesService', '$rootScope',\n function ($scope, spinxList, adminRolesService, $rootScope) {\n\n $scope.list = new spinxList();\n $scope.list.url = 'api/admin/admin-users/';\n $scope.list.module = 'adminUsers';\n $scope.list.actions = {\n \"active\": \"adminUsers.edit\",\n \"inactive\": \"adminUsers.edit\",\n \"delete\": \"adminUsers.delete\"\n };\n $scope.list.load();\n\n $scope.roles = {};\n adminRolesService.all().then(function (resp) {\n $scope.roles = resp.data;\n });\n }\n ]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('adminUsersCreate', {\n templateUrl: '/adminUsers/views/create.tpl.html',\n controller: [\n '$scope', 'adminUsersService', 'adminRolesService', 'spinxCreate',\n function ($scope, adminUsersService, adminRolesService, spinxCreate) {\n $scope.isEncryptionEnable = isEncryptionEnable == 'True' ? true : false;\n $scope.spinx = new spinxCreate();\n $scope.spinx.dto = { email: '', password: '' }\n $scope.spinx.service = adminUsersService;\n\n $scope.spinx.listRoute = 'adminUsers';\n $scope.spinx.editRoute = 'adminUsersEdit';\n\n adminRolesService.all().then(function (resp) {\n $scope.roles = resp.data;\n });\n }\n ]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('adminUsersEdit', {\n templateUrl: '/adminUsers/views/edit.tpl.html',\n controller: [\n '$scope', 'adminUsersService', 'adminRolesService', 'spinxEdit','$timeout',\n function ($scope, adminUsersService, adminRolesService, spinxEdit, $timeout) {\n $scope.isEncryptionEnable = isEncryptionEnable == 'True' ? true : false;\n $scope.editMode = true;\n\n $scope.spinx = new spinxEdit();\n $scope.spinx.service = adminUsersService;\n $scope.spinx.listRoute = 'adminUsers';\n $scope.spinx.load();\n \n adminRolesService.all().then(function (resp) {\n $scope.roles = resp.data;\n });\n\n $scope.spinx.onAfterLoad = function () {\n $timeout(function () {\n $scope.spinx.dto.password = \"\";\n }, 500);\n };\n\n }\n ]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('assetDownloads', {\n templateUrl: '/assetDownloads/views/asset-download-index.tpl.html',\n controller: [\n '$scope', 'spinxList', 'assetDownloadServices',\n function ($scope, spinxList, assetDownloadServices) {\n\n $scope.list = new spinxList();\n $scope.list.url = 'api/admin/asset-downloads/';\n $scope.list.module = 'assetDownloads';\n $scope.list.actions = null;\n $scope.list.filters.assetDownloadType = '';\n $scope.list.load();\n\n $scope.assetDownloadTypes = {};\n assetDownloadServices.all().then(function (resp) {\n $scope.assetDownloadTypes = resp.data;\n });\n\n $scope.jobTitleFunctions = {};\n\n $scope.mediaAffiliations = {};\n\n $scope.export = function () { \n assetDownloadServices.export($scope.list.filters);\n };\n \n }\n ]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('assetDownloadsByMember', {\n templateUrl: '/assetDownloads/views/asset-download-by-member.tpl.html',\n controller: [\n '$scope', 'spinxList', 'assetDownloadByMemberServices','assetDownloadServices',\n function ($scope, spinxList, assetDownloadByMemberServices, assetDownloadServices) {\n\n $scope.list = new spinxList();\n $scope.showCustomDate = false;\n $scope.list.url = 'api/admin/asset-downloads-by-member/';\n $scope.list.module = 'asset-downloads-by-member';\n $scope.list.actions = null;\n $scope.list.filters.sortColumn = 'TotalCount';\n $scope.list.filters.sortType = 'DESC';\n $scope.list.filters.assetDownloadType = '';\n $scope.list.filters.timeType = '';\n $scope.list.load();\n\n $scope.assetDownloadTypes = {};\n assetDownloadServices.all().then(function (resp) {\n $scope.assetDownloadTypes = resp.data;\n });\n\n\n\n $scope.timeTypes = {};\n assetDownloadByMemberServices.GetTimeType().then(function (resp) {\n $scope.timeTypes = resp.data;\n });\n\n $scope.changeTimeRadio = function (timeTypeId) {\n if (timeTypeId != 4) {\n $scope.list.filters.fromcreatedAt = null;\n $scope.list.filters.tocreatedAt = null;\n $scope.showCustomDate = false;\n $scope.list.load(true);\n\n }\n else {\n $scope.showCustomDate = true;\n }\n };\n\n $scope.export = function () {\n assetDownloadByMemberServices.export($scope.list.filters);\n };\n\n }\n ]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('assetTopDownloads', {\n templateUrl: '/assetDownloads/views/asset-download-top.tpl.html',\n controller: [\n '$scope', 'spinxList', 'assetTopDownloadServices','assetDownloadServices',\n function ($scope, spinxList, assetTopDownloadServices, assetDownloadServices) {\n\n $scope.list = new spinxList();\n $scope.showCustomDate = false;\n $scope.list.url = 'api/admin/asset-top-downloads/';\n $scope.list.module = 'assetTopDownloads';\n $scope.list.actions = null; \n $scope.list.filters.sortColumn = 'TotalCount';\n $scope.list.filters.sortType = 'DESC';\n $scope.list.filters.assetDownloadType = '';\n $scope.list.filters.timeType = '';\n $scope.list.load();\n\n $scope.assetDownloadTypes = {};\n assetDownloadServices.all().then(function (resp) {\n $scope.assetDownloadTypes = resp.data;\n });\n\n\n\n $scope.timeTypes = {};\n assetTopDownloadServices.GetTimeType().then(function (resp) {\n $scope.timeTypes = resp.data;\n });\n\n $scope.changeTimeRadio = function (timeTypeId) {\n if (timeTypeId != 4) {\n $scope.list.filters.fromcreatedAt = null;\n $scope.list.filters.tocreatedAt = null;\n $scope.showCustomDate = false;\n $scope.list.load(true);\n\n }\n else {\n $scope.showCustomDate = true;\n }\n };\n\n $scope.export = function () {\n assetTopDownloadServices.export($scope.list.filters);\n };\n\n }\n ]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('assetTypeDownloads', {\n templateUrl: '/assetDownloads/views/asset-download-type.tpl.html',\n controller: [\n '$scope', 'spinxList', 'assetTypeDownloadServices', 'assetDownloadServices',\n function ($scope, spinxList, assetTypeDownloadServices, assetDownloadServices) {\n\n $scope.list = new spinxList();\n $scope.list.url = 'api/admin/asset-type-downloads/';\n $scope.list.module = 'assetTypeDownloads';\n $scope.list.actions = null;\n $scope.list.filters.sortColumn = 'TotalCount';\n $scope.list.filters.sortType = 'DESC';\n $scope.list.filters.assetDownloadType = '';\n $scope.list.filters.timeType = '';\n $scope.list.load(); \n \n\n $scope.assetDownloadTypes = {};\n assetDownloadServices.all().then(function (resp) {\n $scope.assetDownloadTypes = resp.data;\n });\n\n $scope.assetDownloadTimes = {}; \n assetTypeDownloadServices.allTime().then(function (resp) {\n $scope.assetDownloadTimes = resp.data;\n });\n\n $scope.export = function () {\n assetTypeDownloadServices.export($scope.list.filters);\n };\n\n $scope.changeTimeRadio = function (timeTypeId) {\n if (timeTypeId != 4) {\n $scope.list.filters.fromcreatedAt = null;\n $scope.list.filters.tocreatedAt = null;\n $scope.showCustomDate = false;\n $scope.list.load(true);\n\n }\n else {\n $scope.showCustomDate = true;\n }\n };\n\n\n }\n ]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('expiredPassword',\n {\n templateUrl: '/auth/views/expired-password.tpl.html',\n controller: 'ExpiredPasswordController'\n });\n\n angular.module('myApp').controller('ExpiredPasswordController', [\n '$scope', 'authService', '$stateParams', '$state', '$rootScope', function ($scope, authService, $stateParams, $state, $rootScope) {\n\n if ($stateParams.token === undefined || $stateParams.token === '') {\n $state.go(\"login\");\n }\n $scope.token = $stateParams.token;\n $scope.dto = {\n password: '',\n confirmPassword: ''\n };\n\n $scope.result = {};\n\n $scope.isValidExpiredToken = function () { \n authService.isValidExpiredToken($scope.token).then(function (resp) { \n if (resp.data.success) {\n $scope.token = resp.data.data;\n } else {\n $state.go(\"login\");\n }\n });\n };\n \n $scope.isValidExpiredToken();\n\n $scope.submit = function () {\n $scope.result = {};\n var data = angular.copy($scope.dto);\n if (isEncryptionEnable == 'True') {\n data.password = $rootScope.getEncryptedText($scope.dto.password);\n data.confirmPassword = $rootScope.getEncryptedText($scope.dto.confirmPassword);\n }\n authService.expiredPassword($scope.token, data).then(function (resp) {\n if (resp.data.success) {\n $rootScope.result = resp.data;\n $state.go(\"login\");\n }\n $scope.result = resp.data;\n });\n };\n setTimeout(function () {\n funInputPlaceholder();\n }, 20);\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('forgotPassword',\n {\n templateUrl: '/auth/views/forgot-password.tpl.html',\n controller: 'ForgotPasswordController'\n });\n\n angular.module('myApp').controller('ForgotPasswordController',\n [\n '$scope', '$http', 'authService', '$rootScope', function ($scope, $http, authService, $rootScope) {\n\n\n $scope.dto = { email: '' };\n $scope.result = {};\n\n $scope.submit = function () {\n var data = angular.copy($scope.dto);\n if (isEncryptionEnable == 'True') {\n data.email = $rootScope.getEncryptedText($scope.dto.email);\n }\n authService.forgotPassword(data)\n .then(function (resp) {\n\n $scope.result = resp.data;\n if (resp.data.success) {\n $scope.dto = {};\n }\n\n });\n };\n\n setTimeout(function () {\n funInputPlaceholder();\n }, 20);\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('resetPassword',\n {\n templateUrl: '/auth/views/reset-password.tpl.html',\n controller: 'ResetPasswordController'\n });\n\n angular.module('myApp').controller('ResetPasswordController',\n [\n '$scope', '$http', 'authService', '$stateParams', '$state', '$rootScope', function ($scope, $http, authService, $stateParams, $state, $rootScope) {\n\n if ($stateParams.token === undefined || $stateParams.token === '') {\n $state.go(\"login\");\n }\n\n $scope.dto = {\n email: '',\n password: '',\n confirmPassword:''\n };\n $scope.result = {};\n\n $scope.submit = function () {\n $scope.result = {};\n var data = angular.copy($scope.dto);\n if (isEncryptionEnable == 'True') {\n data.email = $rootScope.getEncryptedText($scope.dto.email);\n data.password = $rootScope.getEncryptedText($scope.dto.password);\n data.confirmPassword = $rootScope.getEncryptedText($scope.dto.confirmPassword);\n }\n authService.resetPassword($stateParams.token, data)\n .then(function (resp) {\n\n if (resp.data.success) {\n $rootScope.result = resp.data;\n $state.go(\"login\");\n }\n $scope.result = resp.data;\n\n });\n };\n setTimeout(function () {\n funInputPlaceholder();\n }, 20);\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('login',\n {\n templateUrl: '/auth/views/login.tpl.html',\n controller: 'LoginController'\n });\n\n angular.module('myApp').controller('LoginController',\n [\n '$scope', '$http', 'authService', '$state', '$rootScope', 'localStorageService', 'auth', '$cookies',\n function ($scope, $http, authService, $state, $rootScope, localStorageService, auth, $cookies) {\n $scope.dto = { email: '', password: '' };\n\n $scope.result = {};\n\n if ($rootScope.loggedIn) {\n window.location.href = '/admin';\n }\n\n if ($rootScope.result) {\n $scope.result = $rootScope.result;\n $rootScope.result = null;\n }\n\n $scope.submit = function () {\n var data = angular.copy($scope.dto);\n if (isEncryptionEnable == 'True') {\n data.email = $rootScope.getEncryptedText($scope.dto.email);\n data.password = $rootScope.getEncryptedText($scope.dto.password);\n }\n authService.login(data).then(function (resp) {\n if (resp.data.success && resp.data.message == \"OtpVerificationRequired\") {\n window.location.href = '/admin/auth/authentication/' + resp.data.data;\n }\n else if (resp.data.success && resp.data.message == \"OtpVerificationNotRequired\") {\n var token = resp.data.data;\n localStorageService.set(tokenName, token);\n var now = new Date();\n var next = AddMinutesToDate(now, 1439);\n $cookies.put('auth', token, { 'expires': next });\n auth.redirectToAttemptedUrl();\n }\n else if (resp.data.message && resp.data.message == \"ExpiredPasswordToken\") {\n resp.data.message = null;\n if (siteType == 'VirtualDir')\n window.location.href = '/' + window.location.pathname.split('/')[1] + '/admin/auth/expired-password/' + resp.data.data;\n else {\n window.location.href = '/admin/auth/expired-password/' + resp.data.data;\n }\n }\n else {\n $scope.result = resp.data;\n }\n });\n };\n\n function AddMinutesToDate(date, minutes) {\n return new Date(date.getTime() + minutes * 60000);\n }\n\n setTimeout(function () {\n funInputPlaceholder();\n }, 20);\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').filter('counter', [function () {\n return function (seconds) {\n return new Date(1970, 0, 1).setSeconds(seconds);\n };\n }]);\n\n angular.module('myApp').component('otpAuthentication',\n {\n templateUrl: '/auth/views/otp-authentication.tpl.html',\n controller: 'OtpAuthenticationController'\n });\n\n angular.module('myApp').controller('OtpAuthenticationController',\n [\n '$scope', '$stateParams', 'authService', '$rootScope', 'localStorageService', 'auth', '$cookies', '$interval',\n function ($scope, $stateParams, authService, $rootScope, localStorageService, auth, $cookies, $interval) {\n\n if ($rootScope.loggedIn) {\n window.location.href = '/admin';\n }\n\n if ($stateParams.token === undefined || $stateParams.token === '') {\n $state.go(\"login\");\n }\n\n $scope.dto = { authenticationCode: '', Token: $stateParams.token };\n \n $scope.showResendLink = false;\n $scope.counter = 120;\n\n $scope.result = {};\n\n if ($rootScope.result) {\n $scope.result = $rootScope.result;\n $rootScope.result = null;\n }\n\n this.$onInit = function () {\n $scope.showResendLink = false;\n $interval(function () {\n $scope.counter--;\n if ($scope.counter == 0) {\n $scope.showResendLink = true;\n $('.otpresendlabel').hide();\n }\n }, 1000);\n };\n\n $scope.verifyotp = function () {\n\n var data = angular.copy($scope.dto);\n\n authService.OtpAuthVerification(data).then(function (resp) {\n if (resp.data.success) {\n var token = resp.data.data;\n localStorageService.set(tokenName, token);\n var now = new Date();\n var next = AddMinutesToDate(now, 1439);\n $cookies.put('auth', token, { 'expires': next });\n auth.redirectToAttemptedUrl();\n }\n else {\n $scope.result = resp.data;\n }\n });\n };\n\n $scope.resendotp = function () {\n\n var data = angular.copy($scope.dto);\n\n authService.ResentOtp(data).then(function (resp) {\n if (resp.data.success) {\n $scope.result = resp.data;\n }\n });\n };\n\n function AddMinutesToDate(date, minutes) {\n return new Date(date.getTime() + minutes * 60000);\n }\n\n setTimeout(function () {\n funInputPlaceholder();\n }, 20);\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').filter('humanize', function () {\n return function (text) {\n if (text) {\n text = text.split(/(?=[A-Z])/);\n\n // go through each word in the text and capitalize the first letter\n for (var i in text) {\n var word = text[i];\n word = word.toLowerCase();\n word = word.charAt(0).toUpperCase() + word.slice(1);\n text[i] = word;\n }\n\n return text.join(\" \");\n }\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').filter('repeat', function () {\n return function (text, times) {\n if (text) {\n return text.repeat(times);\n }\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n var app = angular.module('myApp');\n\n app.filter('messageType', [function () { return function (input) { return getMessageType(input); }; }]);\n app.filter('messageIcon', [function () { return function (input) { return getMessageIcon(input); }; }]);\n function getMessageType(messageType) { switch (messageType) { case 0: return \"danger\"; case 1: return \"success\"; case 3: return \"warning\"; default: return 'info'; } }\n function getMessageIcon(messageType) { switch (messageType) { case 0: return \"times\"; case 1: return \"check\"; case 3: return \"warning\"; default: return 'info'; } }\n function getMessageColor(messageType) { switch (messageType) { case 0: return \"C46A69\"; case 1: return \"739E73\"; case 3: return \"C79121\"; default: return '296191'; } }\n function getMessageTitle(messageType) { switch (messageType) { case 0: return \"Error\"; case 1: return \"Success\"; case 3: return \"Warning\"; default: return 'Info'; } }\n\n app.service('flash', function() {\n this.show = function(message, messageType, close) {\n if (message === '' || message === null || typeof message === 'undefined') return;\n\n messageType = messageType;\n if (messageType === '' || messageType === null || typeof messageType === 'undefined')\n messageType=1;\n //messageType = messageType || 1;\n close = close || 5000;\n\n $.smallBox({\n title : \"\"+getMessageTitle(messageType)+\"\",\n content : message,\n color : \"#\" + getMessageColor(messageType),\n iconSmall : \"fa fa-\" + getMessageIcon(messageType),\n timeout : close !== false ? close : null\n });\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').factory('spinxCreate', [\n \"flash\", \"$state\", \"$window\", \"$rootScope\",\n function (flash, $state, $window, $rootScope) {\n\n var spinxCreate = function () {\n\n this.listRoute = null;\n this.editRoute = null;\n\n this.service = null;\n\n this.result = {};\n this.dto = {};\n\n this.isSubModule = false;\n\n setTimeout(function () { funInputPlaceholder(); }, 500);\n\n };\n\n spinxCreate.prototype.save = function (isReload, isEncryptEmailAndPassword) {\n var $that = this;\n var data = angular.copy(this.dto);\n \n if (data.textConversionFields != null) {\n data.textConversionFields.map(function (key, fieldIndex) {\n \n arrayEncoderList.map(function (currentValue, encoderIndex) {\n var find = currentValue.HtmlEncodedChar;\n var re = new RegExp(find, 'g')\n data[key] = data[key].replace(re, currentValue.Hex);\n });\n })\n }\n\n if (isEncryptEmailAndPassword) {\n data.email = $rootScope.getEncryptedText(this.dto.email);\n data.password = $rootScope.getEncryptedText(this.dto.password);\n }\n this.service.create(data)\n .then(function (resp) {\n\n $that.result = resp.data;\n flash.show(resp.data.message, resp.data.messageType);\n\n if (resp.data.success) {\n $state.go($that.listRoute);\n if (isReload) {\n setTimeout(function () {\n $state.reload();\n }, 350);\n }\n }\n\n $window.scrollTo(0, 0);\n });\n };\n\n spinxCreate.prototype.saveContinue = function (isReload, isEncryptEmailAndPassword) {\n var $that = this;\n var data = angular.copy(this.dto);\n \n if (data.textConversionFields != null) {\n data.textConversionFields.map(function (key, fieldIndex) {\n arrayEncoderList.map(function (currentValue, encoderIndex) {\n var find = currentValue.HtmlEncodedChar;\n var re = new RegExp(find, 'g')\n data[key] = data[key].replace(re, currentValue.Hex);\n });\n })\n }\n\n if (isEncryptEmailAndPassword) {\n data.email = $rootScope.getEncryptedText(this.dto.email);\n data.password = $rootScope.getEncryptedText(this.dto.password);\n }\n this.service.create(data)\n .then(function (resp) {\n\n $that.result = resp.data;\n flash.show(resp.data.message, resp.data.messageType);\n\n if (resp.data.success) {\n if ($that.isSubModule) {\n $state.go($that.editRoute, {\n childId: resp.data.id\n });\n } else {\n $state.go($that.editRoute, {\n id: resp.data.id\n });\n }\n\n if (isReload) {\n setTimeout(function () {\n $state.reload();\n }, 350);\n }\n }\n\n $window.scrollTo(0, 0);\n });\n };\n\n spinxCreate.prototype.saveNew = function (isEncryptEmailAndPassword) {\n var $that = this;\n var data = angular.copy(this.dto);\n\n if (data.textConversionFields != null) {\n data.textConversionFields.map(function (key, fieldIndex) {\n \n arrayEncoderList.map(function (currentValue, encoderIndex) {\n var find = currentValue.HtmlEncodedChar;\n var re = new RegExp(find, 'g')\n data[key] = data[key].replace(re, currentValue.Hex);\n });\n })\n }\n\n if (isEncryptEmailAndPassword) {\n data.email = $rootScope.getEncryptedText(this.dto.email);\n data.password = $rootScope.getEncryptedText(this.dto.password);\n }\n this.service.create(data)\n .then(function (resp) {\n\n $that.result = resp.data;\n flash.show(resp.data.message, resp.data.messageType);\n\n if (resp.data.success) {\n $that.dto = {};\n $that.dto.isActive = true;\n $state.reload();\n }\n\n $window.scrollTo(0, 0);\n });\n };\n\n return spinxCreate;\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').factory('spinxEdit', [\n \"flash\", \"$state\", \"$window\",\"$rootScope\",\n function (flash, $state, $window, $rootScope) {\n\n var spinxEdit = function () {\n\n this.listRoute = null;\n this.editRoute = null;\n\n this.service = null;\n\n this.id = $state.params.id;\n\n this.result = {};\n this.dto = {}; \n this.onAfterLoad = null;\n };\n\n spinxEdit.prototype.load = function () { \n var $that = this;\n this.service.byId(this.id).then(function (resp) {\n $that.dto = resp.data;\n\n if (typeof $that.onAfterLoad === \"function\")\n $that.onAfterLoad();\n\n setTimeout(function () { funInputPlaceholder(); }, 500);\n\n }, function (error) {\n if (error.status === 404) {\n $state.go('404');\n }\n });\n };\n\n spinxEdit.prototype.save = function (isEncryptEmailAndPassword) {\n var $that = this;\n var data = angular.copy(this.dto);\n\n if (data.textConversionFields != null) {\n data.textConversionFields.map(function (key, fieldIndex) {\n \n arrayEncoderList.map(function (currentValue, encoderIndex) {\n var find = currentValue.HtmlEncodedChar;\n var re = new RegExp(find, 'g')\n data[key] = data[key].replace(re, currentValue.Hex);\n });\n })\n }\n\n if (isEncryptEmailAndPassword) {\n data.email = $rootScope.getEncryptedText(this.dto.email);\n data.password = $rootScope.getEncryptedText(this.dto.password);\n }\n this.service.edit(this.id, data)\n .then(function (resp) {\n\n $that.result = resp.data;\n flash.show(resp.data.message, resp.data.messageType);\n\n if (resp.data.success) {\n $state.go($that.listRoute);\n }\n\n $window.scrollTo(0, 0);\n });\n };\n\n spinxEdit.prototype.saveContinue = function (isEncryptEmailAndPassword) {\n var $that = this;\n var data = angular.copy(this.dto);\n\n if (data.textConversionFields != null) {\n data.textConversionFields.map(function (key, fieldIndex) {\n \n arrayEncoderList.map(function (currentValue, encoderIndex) {\n var find = currentValue.HtmlEncodedChar;\n var re = new RegExp(find, 'g')\n data[key] = data[key].replace(re, currentValue.Hex);\n });\n })\n }\n\n if (isEncryptEmailAndPassword) {\n data.email = $rootScope.getEncryptedText(this.dto.email);\n data.password = $rootScope.getEncryptedText(this.dto.password);\n }\n this.service.edit(this.id, data)\n .then(function (resp) {\n\n $that.result = resp.data;\n flash.show(resp.data.message, resp.data.messageType);\n\n $window.scrollTo(0, 0);\n });\n };\n\n spinxEdit.prototype.deleteExecute = function () {\n var $that = this;\n this.service.delete([this.id])\n .then(function (resp) {\n\n $that.result = resp.data;\n flash.show(resp.data.message, resp.data.messageType);\n\n if (resp.data.success) {\n $state.go($that.listRoute);\n }\n\n $window.scrollTo(0, 0);\n });\n };\n\n spinxEdit.prototype.delete = function () {\n $.confirm({\n text: \"Do you want to delete record?\",\n title: \"Confirmation required\",\n confirmButtonClass: \"btn-danger\",\n confirm: this.deleteExecute\n });\n };\n\n return spinxEdit;\n }\n ]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').factory('spinxList', [\"$http\", \"$cookies\", \"$state\", \"flash\", function ($http, $cookies, $state, flash, ngDialog) {\n\n var spinxList = function () {\n\n // api url for list page\n this.url = null;\n\n // module name\n this.module = null;\n\n // from api result result\n this.result = {};\n\n // data\n this.data = {};\n\n // show/hide paging\n this.showPaging = true;\n\n this.paging = {};\n\n // for search filters send to api\n this.filters = {};\n\n // default page index\n this.filters.page = 1;\n\n // default page size\n this.filters.size = 10;\n\n this.filters.sortColumn = null;\n this.filters.sortType = null;\n\n // default page sizes\n this.pageSizes = [10, 25, 50, 100, 200];\n\n // Generate unique Number for selectAll\n this.uniqueNumber = new Date().getTime();\n\n // select all checkbox. use for select other checkboxes\n this.selectAll = false;\n this.selectChildAll = false;\n\n //callback function\n this.onAfterAction = null;\n this.onAfterLoad = null;\n this.afterFireIdChange = null;\n this.onAfterAction = null;\n\n this.idsResetAfterLoad = true;\n this.ids = [];\n this.childIds = [];\n this.territoryId = null;\n this.isReloadList = false;\n this.action = '';\n this.actions = {\n \"active\": \"edit\",\n \"inactive\": \"edit\",\n \"delete\": \"delete\"\n };\n };\n\n spinxList.prototype.load = function (clearPage) {\n\n if (typeof argument2 !== 'undefined' || clearPage === true)\n this.filters.page = 1;\n\n $http({\n url: this.url,\n method: \"GET\",\n params: this.filters\n }).then(function (resp) {\n\n var result = resp.data;\n\n flash.show(result.message, result.messageType);\n\n if (!result.success)\n return;\n\n this.result = result;\n this.paging = result.paging;\n this.data = result.data;\n this.filters.page = this.paging.page;\n this.filters.size = this.paging.size;\n\n // if second page all record delete than automatic first page record display\n if (this.filters.page > 1 && this.data.length == 0 && this.paging.total > 0)\n this.load(true);\n\n if (typeof this.onAfterLoad === \"function\")\n this.onAfterLoad();\n\n this.filters.action = null;\n this.filters.ids = null;\n\n this.action = '';\n if (this.idsResetAfterLoad) {\n this.ids = [];\n }\n\n this.selectAll = false;\n this.selectChildAll = false;\n setTimeout(function () { funInputPlaceholder(); }, 500);\n\n }.bind(this));\n };\n\n spinxList.prototype.sort = function ($event, name) {\n\n if (this.loading) return;\n\n var elmt = angular.element($event.target);\n var sortType = 'asc';\n\n elmt.removeClass('sorting');\n\n if (elmt.hasClass('sorting_asc'))\n sortType = 'desc';\n\n this.filters.sortColumn = name;\n this.filters.sortType = sortType;\n angular.element('.sorting_asc, .sorting_desc').removeClass('sorting_asc sorting_desc')\n .addClass('sorting');\n elmt.addClass(sortType === 'asc' ? 'sorting_asc' : 'sorting_desc')\n .removeClass(sortType === 'asc' ? 'sorting_desc' : 'sorting_asc');\n\n this.load(true);\n };\n\n spinxList.prototype.previousPage = function () {\n if (this.result.paging.Page === 1) return;\n\n this.filters.page = this.result.paging.page - 1;\n\n this.load();\n };\n\n spinxList.prototype.nextPage = function () {\n if (this.result.paging.lastPage === this.result.paging.page) return;\n\n this.filters.page = this.result.paging.page + 1;\n\n this.load();\n };\n\n spinxList.prototype.goToPage = function (page) {\n this.filters.page = page;\n\n this.load();\n };\n\n spinxList.prototype.deleteRow = function (id, isReload) {\n\n var $that = this;\n var ids = Array.isArray(id) ? id : [id];\n\n $.confirm({\n text: \"Do you want to delete record?\",\n title: \"Confirmation required\",\n confirmButtonClass: \"btn-primary\",\n confirm: function () {\n\n $http({\n url: $that.url + 'delete',\n method: \"POST\",\n data: {\n ids: ids\n }\n }).then(function (resp) {\n var result = resp.data;\n flash.show(result.message, result.messageType);\n\n if (result.success) {\n $that.load();\n if (isReload) {\n $state.reload();\n }\n }\n });\n }\n });\n };\n\n spinxList.prototype.deleteRowWithParameter = function (id, territoryId, types = null) {\n var $that = this;\n var ids = Array.isArray(id) ? id : [id];\n\n var tempIds = [];\n var tempTypes = [];\n if( id[0] != undefined && id[0].includes(',')){\n angular.forEach(id, function (value, key) {\n var data = value.toString().split(',');\n if (value.includes(',')) {\n tempIds.push(data[0]);\n tempTypes.push(data[1]);\n }\n });\n ids = tempIds != null ? [] : ids;\n types = tempTypes != null ? [] : types;\n ids = tempIds;\n types = tempTypes;\n }\n\n var deleteData = {};\n deleteData.ids = ids;\n deleteData.territoryId = territoryId;\n\n if (types !== null)\n deleteData.types = Array.isArray(types) ? types : [types];\n\n $.confirm({\n text: \"Do you want to delete record?\",\n title: \"Confirmation required\",\n confirmButtonClass: \"btn-primary\",\n confirm: function () {\n\n $http({\n url: $that.url + 'delete',\n method: \"POST\",\n data: deleteData\n }).then(function (resp) {\n var result = resp.data;\n flash.show(result.message, result.messageType);\n\n if (result.success)\n $that.load();\n });\n }\n });\n };\n\n spinxList.prototype.approveRow = function (id) {\n\n var $that = this;\n var ids = Array.isArray(id) ? id : [id];\n\n $.confirm({\n text: \"Do you want to approve full access for this press member?\",\n title: \"Confirmation required\",\n confirmButtonClass: \"btn-primary\",\n confirm: function () {\n\n $http({\n url: $that.url + 'approve',\n method: \"POST\",\n data: {\n ids: ids\n }\n }).then(function (resp) {\n var result = resp.data;\n flash.show(result.message, result.messageType);\n\n if (result.success)\n $that.load();\n });\n }\n });\n };\n\n\n spinxList.prototype.declineRow = function (id) {\n\n var $that = this;\n var ids = Array.isArray(id) ? id : [id];\n\n $.confirm({\n text: \"Do you want to decline access for this press member?\",\n title: \"Confirmation required\",\n confirmButtonClass: \"btn-primary\",\n confirm: function () {\n\n $http({\n url: $that.url + 'reject',\n method: \"POST\",\n data: {\n ids: ids\n }\n }).then(function (resp) {\n var result = resp.data;\n flash.show(result.message, result.messageType);\n\n if (result.success)\n $that.load();\n });\n }\n });\n };\n\n spinxList.prototype.approveRowRestricted = function (id) {\n\n var $that = this;\n var ids = Array.isArray(id) ? id : [id];\n\n $.confirm({\n text: \"Do you want to approve restricted access for this press member?\",\n title: \"Confirmation required\",\n confirmButtonClass: \"btn-primary\",\n confirm: function () {\n\n $http({\n url: $that.url + 'approveRestricted',\n method: \"POST\",\n data: {\n ids: ids\n }\n }).then(function (resp) {\n var result = resp.data;\n flash.show(result.message, result.messageType);\n\n if (result.success)\n $that.load();\n });\n }\n });\n };\n\n\n spinxList.prototype.fireAction = function () {\n this.message = null;\n this.messageType = null;\n \n if (this.action !== '' && this.ids.length === 0) {\n flash.show('Select at least one item from action list.', 2);\n return;\n }\n\n var $that = this;\n if (this.action === 'delete' && this.territoryId !== null) {\n $that.deleteRowWithParameter(this.ids, this.territoryId);\n }\n else if (this.action === 'delete') {\n $that.deleteRow(this.ids, this.isReloadList);\n } else if (this.action === 'add: homepage carousel' || this.action === 'remove: homepage carousel'\n || this.action === 'add: series banner' || this.action === 'remove: series banner'\n || this.action === 'add: series dropdown' || this.action === 'remove: series dropdown'\n || this.action === 'add: movies banner' || this.action === 'remove: movies banner'\n || this.action === 'add: movies dropdown' || this.action === 'remove: movies dropdown'\n || this.action === 'add: amazon freevee banner' || this.action === 'remove: amazon freevee banner'\n || this.action === 'add: amazon freevee dropdown' || this.action === 'remove: amazon freevee dropdown'\n || this.action === 'add: sports banner' || this.action === 'remove: sports banner'\n || this.action === 'add: sports dropdown' || this.action === 'remove: sports dropdown'\n || this.action === 'overwrite pr contacts' || this.action === 'add to pr contacts'\n || this.action === 'remove from pr contacts') {\n if (typeof $that.onAfterAction === \"function\")\n $that.onAfterAction();\n }\n else {\n\n if (this.action === 'approve - full access') {\n this.action = 'approve';\n }\n\n if (this.action === 'approve - restricted access') {\n this.action = 'approveRestricted';\n }\n\n $http({\n url: $that.url + this.action,\n method: \"POST\",\n data: {\n ids: this.ids\n }\n }).then(function (resp) {\n\n var result = resp.data;\n\n flash.show(result.message, result.messageType);\n\n if (result.success)\n $that.load();\n });\n }\n };\n\n spinxList.prototype.checkAll = function () {\n\n var $that = this;\n\n if ($that.selectAll)\n $that.ids.splice(0, $that.ids.length);\n else {\n angular.forEach($that.data.map(function (item) {\n return item.id;\n }),\n function (value) {\n $that.ids.push(value);\n });\n }\n };\n\n spinxList.prototype.checkChildAll = function () {\n\n var $that = this;\n\n if ($that.childIds == undefined || $that.childIds == null) {\n $that.childIds = [];\n }\n\n if ($that.selectChildAll)\n $that.childIds.splice(0, $that.childIds.length);\n else {\n angular.forEach($that.data.map(function (item) {\n return item.id;\n }),\n function (value) {\n $that.childIds.push(value);\n });\n }\n };\n\n spinxList.prototype.checkAll2 = function () {\n var $that = this;\n\n if ($that.selectAll)\n $that.ids.splice(0, $that.ids.length);\n else {\n angular.forEach($that.data.map(function (item) {\n return item.id + \",\" + item.type;\n }),\n function (value) {\n $that.ids.push(value);\n });\n }\n };\n\n spinxList.prototype.fireIdChange = function () {\n this.ids = [...new Set(this.ids)];\n if (this.ids.length !== this.result.data.length)\n this.selectAll = false;\n\n if (typeof this.afterFireIdChange === \"function\")\n this.afterFireIdChange();\n\n };\n\n spinxList.prototype.childFireIdChange = function () {\n\n this.childIds = [...new Set(this.childIds)];\n if (this.childIds.length !== this.result.data.length)\n this.selectChildAll = false;\n\n if (typeof this.afterFireIdChange === \"function\")\n this.afterFireIdChange();\n };\n\n /**\n * Set sorting class on sort columns\n *\n * @param {any} model same class. If not defined then no sorting.\n * @param {any} name column name\n */\n spinxList.prototype.setSortingClass = function (model, name) {\n\n if (model === null)\n return '';\n\n if (model.paging.sortColumn === name) {\n return model.paging.sortType === 'asc' ? 'sorting_asc' : 'sorting_desc';\n }\n\n return 'sorting';\n };\n\n /* Extra for amazon project */\n spinxList.prototype.languageAvailable = function (languages, language) {\n\n var result = false;\n\n angular.forEach(languages,\n function (value) {\n if (value === language)\n result = true;\n });\n\n return result;\n };\n\n return spinxList;\n }]);\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').directive(\"mainMenu\", function() {\n return {\n templateUrl: '/home/views/menu.tpl.html',\n controller: [\"$scope\", \"$attrs\", \"$rootScope\", function ($scope, $attrs, $rootScope) {\n $rootScope.$watch('permissions', function (newValue, oldValue, scope) {\n $scope.hideMenu = $rootScope.permissions == null;\n });\n\n $scope.hasAccess = function (permissions) {\n return $rootScope.hasAccess(permissions);\n };\n }]\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component('adminDashboard', {\n templateUrl: '/home/views/home.tpl.html',\n controller: ['$scope', '$state', '$rootScope', '$location',\n function ($scope, $state, $rootScope, $location) {\n \n }\n ]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"deleteLanguageContentButton\", {\n templateUrl: \"/amazonStudio/components/deleteLanguageContentButton/delete-language-content-button.tpl.html\",\n bindings: {\n service: '=',\n hideDelete: '@?',\n permissions: '@?'\n },\n controller: [\"$scope\", \"$attrs\", \"$rootScope\", function ($scope, $attrs, $rootScope) {\n $scope.isAccess = $rootScope.hasAccess($attrs.permissions);\n\n }]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"languageChangeBar\",\n {\n templateUrl: \"/amazonStudio/components/languageChangeBar/language-change-bar.tpl.html\", \n bindings: {\n service: '=',\n isStarDisplay:'= 0)\n self.service.dto[self.name].splice(matchIndex, 1);\n }\n }\n }\n else {\n if (self.service.dto[self.name] === undefined || search === '')\n self.service.dto[self.name] = [];\n\n self.service.dto[self.name + 'All'] = true;\n\n angular.forEach(data.map(function (item) {\n return item;\n }),\n function (value) {\n if (self.service.dto[self.name].indexOf(value) < 0)\n self.service.dto[self.name].push(value);\n });\n }\n };\n }]\n });\n\n}(window.angular));\n\n// special label click event\nfunction funCheckboxClick(ctrl) {\n $(ctrl).siblings('label').click();\n}\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"multiSelectFile\", {\n templateUrl: \"/core/components/form/multiSelectFile/multi-select-file.tpl.html\",\n transclude: true,\n bindings: {\n name: '@',\n label: '@?',\n required: '@',\n service: '=',\n isHideButton: ' 0) {\n metadataExtractorService.extractDataWithThumbnail(newValue, $that.isDisabledMeta)\n .then(function (resp) {\n if (resp.data.success && resp.data.data.length > 0) {\n if (!$that.service.dto && !$that.service.dto[$that.name])\n $that.service.dto[$that.name] = [];\n $that.service.dto[$that.name] = $that.service.dto[$that.name].concat(resp.data.data);\n }\n\n $scope.newFileList = [];\n });\n }\n\n });\n \n this.browseFiles = function () {\n \n CKFinder.modal({\n chooseFiles: true,\n width: 1024,\n height: 800,\n removeModules: 'UploadFileButton',\n plugins: [\n 'UploadAWSFile'\n ],\n onInit: function (finder) {\n finder.on('files:choose', function (evt) {\n \n // set blank arrays if value is not available\n if (!$that.service.dto[$that.name]) { \n $that.service.dto[$that.name] = [];\n }\n\n var newfiles = [];\n evt.data.files.forEach(function (file) {\n var fileExtention = file.getExtension().toLowerCase();\n\n if (fileExtention && (fileExtention == \"jpg\" || fileExtention == \"jpeg\" || fileExtention == \"png\" || fileExtention == \"tif\" || fileExtention == \"tiff\")) {\n var isFileExist = false;\n var fileUrl = file.getUrl().replace(window.UploadUserFileBaseUrl, window.UserFileBaseUrl);\n $that.service.dto[$that.name].forEach(function (item) {\n if (fileUrl == item.path) {\n isFileExist = true;\n }\n });\n\n if (!isFileExist) {\n newfiles.push(fileUrl);\n }\n }\n });\n\n $scope.newFileList = newfiles;\n $scope.$apply();\n });\n\n finder.on('file:choose:resizedImage', function (evt) {\n $that.service.dto[$that.name].push(evt.data.resizedUrl.replace(window.UploadUserFileBaseUrl, window.UserFileBaseUrl));\n $scope.$apply();\n });\n }\n });\n };\n\n this.removeFile = function (index) {\n if ($that.service.dto[$that.name] && index >= 0 && index < $that.service.dto[$that.name].length) {\n $that.service.dto[$that.name].splice(index, 1);\n }\n };\n\n }]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"selectBox\", {\n templateUrl: \"/core/components/form/selectBox/select-box.tpl.html\",\n transclude: true,\n bindings: {\n name: '@',\n label: '@',\n extralabel: '@',\n required: '@',\n data: '=',\n service: '=',\n buttonclick: '&',\n isbuttonshow: '@?',\n buttonlabel: '@?',\n change: '&',\n isdisable: '@?',\n permissions: '@?'\n },\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"status\",\n {\n templateUrl: \"/core/components/form/status/status.tpl.html\",\n bindings: {\n service: '=',\n isdisable: '@?',\n }\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"textbox\", {\n templateUrl: '/core/components/form/textbox/textbox.tpl.html',\n transclude: true,\n bindings: {\n name: '@',\n label: '@?',\n required: '@?',\n type: '@',\n maxlength: '@',\n disabledIf: ' 0) {\n if ($that.imageSize == \"700\" && resp.data.data[0].thumbnailPath.length > 0) {\n $that.service.dto[$that.name] = resp.data.data[0].thumbnailPath;\n } else if ($that.imageSize == \"3000\" && resp.data.data[0].downloadableThumbnailPath.length > 0) {\n $that.service.dto[$that.name] = resp.data.data[0].downloadableThumbnailPath;\n } else {\n $that.service.dto[$that.name] = fileURL;\n }\n\n if ($that.downloadJpgFieldName && (fileExtention == \"jpg\" || fileExtention == \"jpeg\")) {\n if (resp.data.data[0].downloadableThumbnailPath.length > 0) {\n $that.service.dto[$that.downloadJpgFieldName] = resp.data.data[0].downloadableThumbnailPath;\n } else {\n $that.service.dto[$that.downloadJpgFieldName] = fileURL;\n }\n }\n } else {\n $that.service.dto[$that.name] = fileURL;\n\n if ($that.downloadJpgFieldName && (fileExtention == \"jpg\" || fileExtention == \"jpeg\")) {\n $that.service.dto[$that.downloadJpgFieldName] = fileURL;\n }\n }\n /*$scope.$apply();*/\n });\n } else {\n $that.service.dto[$that.name] = fileURL;\n $scope.$apply();\n }\n });\n\n finder.on('file:choose:resizedImage', function (evt) {\n $that.service.dto[$that.name] = evt.data.resizedUrl.replace(window.UploadUserFileBaseUrl, window.UserFileBaseUrl);\n $scope.$apply();\n });\n }\n });\n }\n });\n };\n\n this.removeFile = function () {\n $that.service.dto[$that.name] = null;\n };\n }]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"textboxMonthYear\", {\n templateUrl: \"/core/components/form/textboxMonthYear/textbox-month-year.tpl.html\",\n transclude: true,\n bindings: {\n name: '@',\n required: '@',\n label: '@?',\n service: '=',\n disabledIf: '',\n nextText: '', **/\n onSelect: function (d, i) {\n if (d !== i.lastVal) {\n $(this).change();\n }\n }\n });\n });\n });\n }\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').directive(\"thSearchNumber\",\n function () {\n return {\n scope: {\n name: \"@\",\n model: '='\n },\n replace: true,\n templateUrl: \"/core/components/list/search/thSearchNumber/th-search-number.tpl.html\"\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').directive(\"thSearchSelect\",\n function () {\n return {\n scope: {\n name: \"@\",\n model: '=',\n data: '=',\n label: '@'\n },\n replace: true,\n templateUrl: \"/core/components/list/search/thSearchSelect/th-search-select.tpl.html\"\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').directive(\"thSearchStatus\",\n function () {\n return {\n scope: {\n model: '='\n },\n replace: true,\n templateUrl: \"/core/components/list/search/thSearchStatus/th-search-status.tpl.html\"\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').directive(\"thSearchYesNo\",\n function () {\n return {\n scope: {\n name: \"@\",\n model: '=',\n label: '@'\n },\n replace: true,\n templateUrl: \"/core/components/list/search/thSearchYesNo/th-search-yes-no.tpl.html\"\n };\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"buttonAdd\",\n {\n templateUrl: \"/core/components/toolbar/buttons/buttonAdd/button-add.tpl.html\",\n transclude: true,\n bindings: {\n state: '@',\n permissions: '@?'\n },\n controller: [\"$scope\", \"$attrs\", \"$rootScope\", function ($scope, $attrs, $rootScope) {\n $scope.isAccess = $rootScope.hasAccess($attrs.permissions);\n }]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"buttonBack\",\n {\n templateUrl: \"/core/components/toolbar/buttons/buttonBack/button-back.tpl.html\",\n transclude: true,\n bindings: {\n state: '@',\n label: '@'\n }\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"buttonBulkUpload\",\n {\n templateUrl: \"/core/components/toolbar/buttons/buttonBulkUpload/button-bulk-upload.tpl.html\",\n transclude: true,\n bindings: {\n state: '@',\n permissions: '@?'\n },\n controller: [\"$scope\", \"$attrs\", \"$rootScope\", function ($scope, $attrs, $rootScope) {\n $scope.isAccess = $rootScope.hasAccess($attrs.permissions);\n }]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"buttonExport\",\n {\n templateUrl: \"/core/components/toolbar/buttons/buttonExport/button-export.tpl.html\",\n transclude: true,\n bindings: {\n state: '@',\n permissions: '@?',\n label: '@'\n },\n controller: [\"$scope\", \"$attrs\", \"$rootScope\", function ($scope, $attrs, $rootScope) {\n $scope.isAccess = $rootScope.hasAccess($attrs.permissions);\n }]\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"buttonImport\",\n {\n templateUrl: \"/core/components/toolbar/buttons/buttonImport/button-import.tpl.html\",\n bindings: { state: '@' }\n });\n\n}(window.angular));\n","(function (angular) {\n \"use strict\";\n\n angular.module('myApp').component(\"buttonSequence\",\n {\n templateUrl: \"/core/components/toolbar/buttons/buttonSequence/button-sequence.tpl.html\",\n transclude: true,\n bindings: \n { \n state: '@', \n permissions: '@?'\n },\n controller: [\"$scope\", \"$attrs\", \"$rootScope\", function ($scope, $attrs, $rootScope) {\n $scope.isAccess = $rootScope.hasAccess($attrs.permissions);\n }]\n });\n\n}(window.angular));\n"]}