{"version":3,"sources":["webpack:///src/app/services/services-utils/callback-models/enums/code.enum.ts","webpack:///src/app/services/akita/template-schema/template.facade.ts","webpack:///src/app/services/akita/base/base.store.ts","webpack:///src/app/services/akita/dynamic-content-schema/dynamic-content.service.ts","webpack:///src/app/shared/menus/left-menu/left-menu.component.ts","webpack:///src/app/shared/field/pipes/get-menu-selected-children-pipe.ts","webpack:///src/app/services/akita/page-category-schema/page-category.store.ts","webpack:///src/app/services/akita/article-schema/article.query.ts","webpack:///src/app/shared/menus/menu/menu.component.html","webpack:///src/app/services/akita/page-schema/page.store.ts","webpack:///src/app/tools/validation.tool.ts","webpack:///src/app/services/akita/menu-item-schema/menu-item.dto.ts","webpack:///src/app/services/akita/asset-schema/asset.model.ts","webpack:///src/app/services/squidex/services/app-creation.service.ts","webpack:///src/app/services/akita/template-schema/template.model.ts","webpack:///src/app/services/akita/article-type-schema/article-type.facade.ts","webpack:///src/app/shared/menus/menu/menu.component.css","webpack:///src/app/services/akita/page-content-schema/page-content.model.ts","webpack:///src/app/shared/menus/dynamic-left-menu/dynamic-left-menu.component.ts","webpack:///src/app/services/akita/menu-item-schema/menu-item.model.ts","webpack:///src/app/shared/menus/top-menu/top-menu.component.html","webpack:///src/app/services/akita/claim-schema/claim.store.ts","webpack:///src/app/services/akita/language-schema/language.store.ts","webpack:///src/app/layout/private/private.component.ts","webpack:///src/app/services/akita/section-schema/section.query.ts","webpack:///src/app/services/akita/resource-schema/resource.query.ts","webpack:///src/app/services/akita/dynamic-schema/dynamic-schema.facade.ts","webpack:///src/app/services/akita/base/filter.pagination.ts","webpack:///src/app/shared/form-group/form-group-mapper.tool.ts","webpack:///src/app/shared/menus/menu-header/menu-header.component.html","webpack:///src/app/services/akita/base/base.query.ts","webpack:///src/app/models/app-token.ts","webpack:///src/app/app-config.provider.ts","webpack:///src/app/shared/field-validation/field-validation.component.css","webpack:///src/app/services/general/page-title.service.ts","webpack:///src/app/shared/field-validation/field-validation.component.ts","webpack:///src/app/shared/content/contents-listing/contents-listing.component.ts","webpack:///src/app/shared/menus/side-bar/side-bar.component.html","webpack:///src/app/services/akita/dynamic-schema/dynamic-schema.query.ts","webpack:///src/app/services/akita/site-setting-schema/site-setting.query.ts","webpack:///src/app/services/akita/schema-metadata-schema/schema-metadata.query.ts","webpack:///src/app/shared/field/upload-field/upload-field.component.html","webpack:///src/app/tools/index.ts","webpack:///src/app/shared/field-reference-editor/FieldReferenceModel.model.ts","webpack:///src/app/services/squidex/models/field-property.model.ts","webpack:///src/app/services/akita/layout-schema/layout.facade.ts","webpack:///src/app/services/akita/site-setting-schema/site-setting.facade.ts","webpack:///src/app/services/akita/dynamic-schema.factory.ts","webpack:///src/app/shared/field/tools/fields.tool.ts","webpack:///src/app/services/akita/dynamic-content-schema.factory.ts","webpack:///src/app/services/akita/schema-metadata-schema/schema-metadata.service.ts","webpack:///src/app/shared/menus/assets-left-menu/assets-left-menu.component.html","webpack:///src/app/tools/squidex.tool.ts","webpack:///src/app/pages/page/page.component.scss","webpack:///src/app/shared/field/pipes/get-menu-show-minus-icon-pipe.ts","webpack:///src/app/services/akita/page-content-schema/page-content.service.ts","webpack:///src/app/app-token.service.ts","webpack:///src/app/shared/menus/side-left-bar/side-left-bar.component.css","webpack:///src/environments/environment.ts","webpack:///src/app/shared/footer/footer-main.component.ts","webpack:///src/app/services/akita/section-schema/section.facade.ts","webpack:///src/app/services/akita/menu-item-schema/menu-item.facade.ts","webpack:///src/app/services/akita/menu-item-schema/menu-item.service.ts","webpack:///src/app/pages/pages/pages.component.ts","webpack:///src/app/shared/content/contents-listing/contents-listing.component.css","webpack:///src/app/shared/field/pipes/get-menu-label.pipe.ts","webpack:///src/app/services/akita/resource-schema/resource.facade.ts","webpack:///src/app/services/akita/resource-schema/resource.store.ts","webpack:///src/app/shared/field/upload-field/upload-field.component.css","webpack:///src/app/services/akita/resource-schema/resource.model.ts","webpack:///src/app/shared/field-reference-editor/field-reference-editor.component.css","webpack:///src/app/shared/header/header-main.component.ts","webpack:///src/app/services/squidex/data-parser.ts","webpack:///src/app/services/general/ui-notification/ui-notification.service.ts","webpack:///src/app/services/akita/article-schema/article.facade.ts","webpack:///src/app/pages/advanced-page/advanced-page.component.scss","webpack:///src/app/services/akita/resource-schema/resource.service.ts","webpack:///src/app/shared/field/tools/field-type.enum.ts","webpack:///src/app/services/akita/page-schema/page.query.ts","webpack:///src/app/shared/field/pipes/get-culture-name.pipe.ts","webpack:///src/app/shared/menus/menu-header/menu-header.component.ts","webpack:///src/app/shared/monaco-liquid-editor/monaco-liquid-editor.component.css","webpack:///src/app/shared/content/content-edition/pipes/get-validation-msgs.pipe.ts","webpack:///src/app/shared/field/pipes/get-localized-field-control-name.pipe.ts","webpack:///src/app/shared/menus/menu/menu-item/menu-item.component.html","webpack:///src/app/shared/monaco-liquid-editor/monaco-liquid-editor.component.html","webpack:///src/app/services/squidex/models/content.model.ts","webpack:///src/app/services/squidex/index.ts","webpack:///src/app/services/akita/article-type-schema/article-type.query.ts","webpack:///src/app/pages/pages/pages.component.css","webpack:///src/app/services/akita/page-category-schema/page-category.model.ts","webpack:///src/app/shared/menus/side-left-bar/side-left-bar.component.html","webpack:///src/app/services/squidex/models/role.model.ts","webpack:///src/app/services/general/form-validations/form-validations.service.ts","webpack:///src/app/pages/advanced-page/schema-page/schema-page.component.css","webpack:///src/app/services/general/persistence-storage/persistence-storage.service.ts","webpack:///src/app/services/akita/article-type-schema/article-type.service.ts","webpack:///src/app/services/squidex/models/schema-property.model.ts","webpack:///src/app/layout/public/public.component.ts","webpack:///src/app/services/akita/menu-schema/menu.store.ts","webpack:///src/app/shared/menus/top-menu/top-menu.component.ts","webpack:///src/app/services/akita/page-category-schema/page-category.query.ts","webpack:///src/app/shared/menus/menu-header/menu-header.component.css","webpack:///src/app/services/akita/dynamic-content-schema/dynamic-content.facade.ts","webpack:///src/app/shared/menus/side-bar/side-bar.component.ts","webpack:///src/app/services/akita/asset-directory-schema/asset-directory.model.ts","webpack:///src/app/shared/ngx-file-drop/ngx-file-drop.module.ts","webpack:///src/app/shared/content/content-edition/content-edition.component.html","webpack:///src/app/services/akita/base/base.facade.ts","webpack:///src/app/services/squidex/models/asset.model.ts","webpack:///src/app/services/akita/article-schema/article.store.ts","webpack:///src/app/shared/spinner/spinner.component.scss","webpack:///src/app/services/akita/page-schema/page.model.ts","webpack:///src/app/shared/index.ts","webpack:///src/app/services/akita/menu-schema/menu.model.ts","webpack:///src/app/services/akita/user-schema/user.query.ts","webpack:///src/app/shared/field/field-control.component.css","webpack:///src/app/services/akita/article-category-schema/article-category.query.ts","webpack:///src/app/services/squidex/models/schema.model.ts","webpack:///src/app/services/akita/site-setting-schema/site-setting.model.ts","webpack:///src/app/services/squidex/services/schema.service.ts","webpack:///src/app/services/akita/dynamic-content-schema/dynamic-content.store.ts","webpack:///src/app/shared/footer/footer-main.component.html","webpack:///src/app/services/squidex/models/schema-script.model.ts","webpack:///src/app/services/general/auth/authentication.service.ts","webpack:///src/app/services/squidex/services/content.service.ts","webpack:///src/app/shared/menus/menu/menu-item/menu-item.component.ts","webpack:///src/app/services/akita/asset-schema/asset.store.ts","webpack:///src/app/shared/menus/menu/menu.component.ts","webpack:///src/app/shared/menus/side-bar/side-bar.component.css","webpack:///src/app/shared/shared.module.ts","webpack:///src/app/services/akita/layout-schema/layout.query.ts","webpack:///src/app/services/general/index.ts","webpack:///src/app/services/akita/language-schema/language.facade.ts","webpack:///src/app/services/akita/asset-directory-schema/asset-directory.store.ts","webpack:///src/app/pages/advanced-page/advanced-page.component.html","webpack:///src/app/shared/field/pipes/get-value.pipe.ts","webpack:///src/app/services/akita/asset-directory-schema/asset-directory.facade.ts","webpack:///src/app/services/akita/application-user-schema/application-user.service.ts","webpack:///src/app/shared/field/pipes/get-menu-disabled-pipe.ts","webpack:///src/app/shared/spinner/spinner.component.html","webpack:///src/app/services/squidex/models/schedule-Job.model.ts","webpack:///src/app/shared/content/contents-listing/contents-listing.component.html","webpack:///src/app/shared/menus/dynamic-left-menu/dynamic-left-menu.component.css","webpack:///src/app/services/akita/language-schema/language.query.ts","webpack:///src/app/app.component.ts","webpack:///src/app/pages/contents/contents.component.css","webpack:///src/app/services/akita/user-schema/user.model.ts","webpack:///src/app/services/squidex/services/default-field.service.ts","webpack:///src/app/shared/field-reference-editor/field-reference-editor.component.ts","webpack:///src/app/services/akita/schema-metadata-schema/schema-metadata.model.ts","webpack:///src/app/services/squidex/factories/roles.factory.ts","webpack:///src/app/services/akita/site-setting-schema/site-setting.service.ts","webpack:///src/app/shared/menus/assets-left-menu/assets-left-menu.component.css","webpack:///src/app/shared/spinner/spinner.service.ts","webpack:///src/app/services/akita/template-schema/template.store.ts","webpack:///src/app/services/akita/application-user-schema/application-user.model.ts","webpack:///src/app/services/akita/language-schema/language.service.ts","webpack:///src/app/services/akita/asset-schema/asset.query.ts","webpack:///src/app/services/akita/article-category-schema/article-category.model.ts","webpack:///src/app/app.component.html","webpack:///src/app/services/akita/schema-page-schema/schema-page.query.ts","webpack:///src/app/services/akita/page-content-schema/page-content.store.ts","webpack:///src/app/services/akita/page-category-schema/page-category.facade.ts","webpack:///src/app/shared/field/pipes/form-group-get-localized.pipe.ts","webpack:///src/app/services/akita/site-setting-schema/site-setting.store.ts","webpack:///src/app/services/akita/claim-schema/claim.facade.ts","webpack:///src/app/services/akita/section-schema/section.service.ts","webpack:///src/app/app.module.ts","webpack:///src/app/shared/spinner/spinner.module.ts","webpack:///src/app/services/akita/schema-page-schema/schema-page.store.ts","webpack:///src/app/services/akita/layout-schema/layout.service.ts","webpack:///src/app/services/akita/article-type-schema/article-type.model.ts","webpack:///src/app/shared/pipes/language/is-default-language.pipe.ts","webpack:///src/app/shared/field/pipes/form-group-get.pipe.ts","webpack:///src/app/pages/page/page.component.ts","webpack:///src/app/services/akita/base/base.service.ts","webpack:///src/app/services/akita/schema-page-schema/schema-page.model.ts","webpack:///src/app/services/akita/claim-schema/claim.service.ts","webpack:///src/app/services/akita/page-schema/page.facade.ts","webpack:///src/app/services/akita/base/enum.ts","webpack:///src/app/services/akita/page-type/page-type.query.ts","webpack:///src/$_lazy_route_resource lazy namespace object","webpack:///src/environments/environment.prod.ts","webpack:///src/app/services/squidex/services/asset.service.ts","webpack:///src/app/tools/string.tool.ts","webpack:///src/app/services/akita/schema-page-schema/schema-page.service.ts","webpack:///src/app/shared/ngx-file-drop/ngx-file-drop.component.scss","webpack:///src/app/shared/field/pipes/get-menu-show-plus-icon-pipe.ts","webpack:///src/app/shared/monaco-liquid-editor/monaco-liquid-editor.module.ts","webpack:///src/app/services/akita/article-type-schema/article-type.store.ts","webpack:///src/app/shared/menus/dynamic-left-menu/dynamic-left-menu.component.html","webpack:///src/app/services/akita/application-user-schema/application-user.facade.ts","webpack:///src/app/shared/field/pipes/get-date-time-value.pipe.ts","webpack:///src/app/shared/field/tools/field-reference-content.service.ts","webpack:///src/app/shared/spinner/spinner.component.ts","webpack:///src/app/shared/content/content-edition/content-edition.component.ts","webpack:///src/app/services/akita/article-category-schema/article-category.facade.ts","webpack:///src/app/base/base-component.component.ts","webpack:///src/app/services/squidex/models/content-list.model.ts","webpack:///src/app/services/akita/menu-item-schema/menu-item.query.ts","webpack:///src/app/services/squidex/extensions/squidex-date.extension.ts","webpack:///src/app/shared/content/content-edition/content-edition.component.css","webpack:///src/app/guards/authorization.guard.ts","webpack:///src/app/services/akita/asset-directory-schema/asset-directory.query.ts","webpack:///src/app/services/squidex/services/page-internal.service.ts","webpack:///src/app/services/akita/asset-schema/asset.facade.ts","webpack:///src/app/interceptors/jwt.interceptor.ts","webpack:///src/app/shared/menus/left-menu/left-menu.component.html","webpack:///src/app/shared/field/pipes/get-compare-value.pipe.ts","webpack:///src/app/shared/header/header-main.component.html","webpack:///src/app/shared/ngx-file-drop/ngx-file-drop.component.html","webpack:///src/app/services/akita/user-schema/user.service.ts","webpack:///src/app/services/akita/layout-schema/layout.model.ts","webpack:///src/app/shared/field/pipes/get-language-code.pipe.ts","webpack:///src/app/shared/field/tools/field-reference-cleaner.ts","webpack:///src/app/services/services-utils/callback-models/service-callback-base.model.ts","webpack:///src/app/services/squidex/services/roles.service.ts","webpack:///src/app/services/akita/application-user-schema/application-user.store.ts","webpack:///src/app/services/akita/user-schema/user.facade.ts","webpack:///src/app/services/akita/user-schema/user.store.ts","webpack:///src/app/services/akita/page-schema/page.service.ts","webpack:///src/app/services/akita/page-content-schema/page-content.query.ts","webpack:///src/app/services/akita/page-category-schema/page-category.service.ts","webpack:///src/app/services/squidex/models/folder.model.ts","webpack:///src/app/services/akita/template-schema/template.service.ts","webpack:///src/app/services/akita/dynamic-content-schema/dynamic-content.state.ts","webpack:///src/app/services/akita/page-type/page-type.facade.ts","webpack:///src/app/services/akita/schema-metadata-schema/schema-metadata.store.ts","webpack:///src/app/services/akita/schema-metadata-schema/schema-metadata.facade.ts","webpack:///src/app/services/akita/article-schema/article.service.ts","webpack:///src/app/services/akita/application-user-schema/application-user.query.ts","webpack:///src/app/services/squidex/factories/asset.factory.ts","webpack:///src/app/services/akita/claim-schema/claim.model.ts","webpack:///src/app/pages/contents/contents.component.html","webpack:///src/app/shared/ngx-file-drop/ngx-templates.directive.ts","webpack:///src/app/services/index.ts","webpack:///src/app/services/akita/dynamic-content-schema/dynamic-content.query.ts","webpack:///src/app/services/akita/page-type/page-type.store.ts","webpack:///src/app/services/akita/page-content-schema/page-content.facade.ts","webpack:///src/app/layout/private/private.component.html","webpack:///src/app/services/squidex/services/content-internal.service.ts","webpack:///src/app/shared/field/pipes/get-date-value.pipe.ts","webpack:///src/app/shared/menus/menu/menu-item/menu-item.component.css","webpack:///src/app/shared/menus/left-menu/left-menu.component.css","webpack:///src/app/shared/monaco-liquid-editor/monaco-liquid-editor.component.ts","webpack:///src/app/services/squidex/models/asset-list.model.ts","webpack:///src/app/services/squidex/models/field.model.ts","webpack:///src/app/shared/menus/side-left-bar/side-left-bar.component.ts","webpack:///src/app/pages/contents/contents.component.ts","webpack:///src/app/shared/ngx-file-drop/ngx-file-drop-entry.ts","webpack:///src/app/shared/form-group/form-group.builder.ts","webpack:///src/app/services/akita/dynamic-schema/dynamic-schema.store.ts","webpack:///src/app/shared/menus/assets-left-menu/assets-left-menu.component.ts","webpack:///src/app/pages/advanced-page/advanced-page.component.ts","webpack:///src/app/services/akita/dynamic-schema/dynamic-schema.service.ts","webpack:///src/app/services/akita/article-schema/article.model.ts","webpack:///src/app/shared/field/field-control.component.ts","webpack:///src/app/services/akita/language-schema/language.model.ts","webpack:///src/app/shared/content/content-edition/pipes/get-publish-form-group-schedule-job-due-time.pipe.ts","webpack:///src/app/shared/field-validation/field-validation.component.html","webpack:///src/app/shared/field/field-control.component.html","webpack:///src/app/services/squidex/factories/content.factory.ts","webpack:///src/app/services/akita/asset-directory-schema/asset-directory.service.ts","webpack:///src/app/shared/field-reference-editor/field-reference-editor.component.html","webpack:///src/app/services/akita/layout-schema/layout.store.ts","webpack:///src/app/services/squidex/factories/schemas.factory.ts","webpack:///src/app/services/akita/index.ts","webpack:///src/app/shared/ngx-file-drop/ngx-file-drop.component.ts","webpack:///src/app/layout/public/public.component.html","webpack:///src/app/pages/advanced-page/schema-page/schema-page.component.html","webpack:///src/app/services/akita/dynamic-content-schema/dynamic-content.model.ts","webpack:///src/app/services/akita/section-schema/section.store.ts","webpack:///src/app/pages/page/page.component.html","webpack:///src/app/services/akita/dynamic-schema/dynamic-schema.model.ts","webpack:///src/app/app-routing.module.ts","webpack:///src/app/services/akita/menu-schema/menu.query.ts","webpack:///src/app/services/services-utils/index.ts","webpack:///src/app/shared/field/pipes/field-pipe.ts","webpack:///src/app/services/akita/schema-page-schema/schema-page.facade.ts","webpack:///src/app/services/akita/menu-schema/menu.service.ts","webpack:///src/app/services/akita/menu-schema/menu.facade.ts","webpack:///src/app/shared/field/upload-field/upload-field.component.ts","webpack:///src/app/services/akita/section-schema/section.model.ts","webpack:///src/app/services/akita/page-type/page-type.service.ts","webpack:///src/app/pages/pages/pages.component.html","webpack:///src/app/pages/advanced-page/schema-page/schema-page.component.ts","webpack:///src/app/services/akita/article-category-schema/article-category.service.ts","webpack:///src/app/shared/menus/top-menu/top-menu.component.css","webpack:///src/app/services/akita/template-schema/template.query.ts","webpack:///src/app/services/akita/article-category-schema/article-category.store.ts","webpack:///src/main.ts","webpack:///src/app/services/akita/menu-item-schema/menu-item.store.ts","webpack:///src/app/services/akita/claim-schema/claim.query.ts"],"names":["Code","TemplateFacade","templateService","templateStore","templateQuery","dynamicSchemaFacto","translateService","getDynamicSchemaFacade","category","getService","getByCategory","pipe","list","items","providedIn","cloneDeep","BaseStore","baseState","schemaName","name","filter","state","getValue","lastFilter","lastOrderBy","orderBy","reset","i","Object","keys","storedIndex","some","index","Number","parseInt","from","to","contents","j","length","id","update","add","DynamicContentSchemaService","contentFactory","LeftMenuComponent","authenticationService","isCage","setTranslateContext","userIsOwner","userHasRole","userIsDev","userIsEditor","userIsReadWrite","userIsReader","element","document","getElementsByTagName","classList","contains","remove","selector","template","GetMenuSelectedChildrenPipe","menuDto","menuDtos","classes","isCurrentPage","selectedChild","find","m","menuItem","data","parentMenuItem","iv","PageCategoryStore","PAGE_CATEGORY_SCHEMA_NAME","cache","ttl","ArticleQuery","store","PageStore","PAGE_SCHEMA_NAME","Validation","expression","guidRegEx","RegExp","test","str","undefined","match","MenuItemDto","isVisible","AssetModel","current","AppCreationService","TemplateModel","ArticleTypeFacade","articleTypeService","articleTypeStore","articleTypeQuery","dynamicSchemaFactory","PageContentModel","assign","DynamicLeftMenuComponent","contentFacadeFactory","menuFacade","getDynamicContentSchemaFacade","getByCode","DEFAULT_MENU_CODE","subscribe","menuIdDefault","menuItemFacade","MenuItemModel","ClaimStore","CLAIM_SCHEMA_NAME","LanguageStore","PrivateComponent","siteSettingFacade","isPages","component","siteSetting","DEFAULT_SITE_SETTING_CODE","SectionQuery","ResourceQuery","DynamicSchemaFacade","schemasFactory","service","getSchemaService","query","getSchemaDefinition","fieldName","schema","fields","field","properties","isSingleton","toLocaleLowerCase","createSchema","updateSchemaProperties","addField","fieldId","fieldType","minItems","maxItems","updateField","force","deleteField","disableField","enableField","fieldIds","reorderField","FilterPagination","filterObject","setDefault","FormGroupMapper","formGroup","content","availableLanguages","schemaField","formGroupValue","value","partitioning","editor","Array","item_id","map","v","isValidGuid","dateValue","formatWithoutTime","format","CKEDITOR","instances","instance","textLang","$","nodeName","toLowerCase","getData","language","code","forEach","allowedValues","val","getTextAreaValueLocal","fname","BaseQuery","selectAll","entities","push","AppToken","MENU_SCHEMA_NAME","MENU_ITEM_SCHEMA_NAME","SITE_SETTING_SCHEMA_NAME","PAGE_TYPE_SCHEMA_NAME","PAGE_CONTENT_SCHEMA_NAME","SCHEMA_PAGE_SCHEMA_NAME","PAGE_FILTER_SCHEMA_NAME","LAYOUT_SCHEMA_NAME","RESOURCE_SCHEMA_NAME","DEFAULT_LAYOUT_NAME","TEMPLATE_SCHEMA_NAME","SECTION_SCHEMA_NAME","SCRIPT_SCHEMA_NAME","STYLE_SCHEMA_NAME","REDIRECTION_SCHEMA_NAME","USER_SAVE_CULTURE_CODE","ENGLISH_CULTURE_CODE","FRENCH_CULTURE_CODE","INPUT_DELAY_TIMESPAN","ISO_DATES_YEAR_MONTH","ISO_DATES_DATE","ISO_DATES_DATE_TIME","ISO_DATES_DATE_TIME_UPDATE","ISO_DATES_TIME","PAGES_PUBLISHED_ITEMS_PER_PAGE","PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE","PAGES_PUBLISHED_ITEMS_PER_PAGE_LIST","PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE_LIST","PAGES_UNPUBLISHED_ITEMS_PER_PAGE","PAGES_UNPUBLISHED_CONTENTS_ITEMS_PER_PAGE","ARTICLES_PUBLISHED_ITEMS_PER_PAGE","ARTICLES_UNPUBLISHED_ITEMS_PER_PAGE","CONTENTS_ITEMS_PER_REQUEST","CONTENTS_ITEMS_PER_PAGE","SCHEMA_NAME_MAX_LEGTH","ARTICLE_PAGE_SCHEMA_NAME","APPLICATION_CURRENT_USER","AppSchemaCategory","SYSTEM_SCHEMAS","CONTACT_FORMS","DEFAULT_SCHEMAS","CONTENT_SCHEMAS","SCHEMA_AS_A_PAGE","Status","Statuses","PUBLISHED","color","DRAFT","ARCHIVED","PreviewDevices","DESKTOP","width","height","TABLET","PHONE","FieldsName","CODE","ID","NAME","INDEX","PUBLISH_DATE_TIME","DELETE_DATE_TIMEDE","DELETED","PAGE_ID","PAGE","PAGE_TYPE","MENU_ITEMS","TEMPLATE","BODY","CONTENT_TYPE","CONTENT_ID","ISMODIFIED","METATITLE","TITLE","DESCRIPTION","ISSECURE","ISNOINDEX","ISACTIVE","PAGE_NAME","LAYOUT","URL","PARENT_ID","META_DESCRIPTION","META_KEYWORDS","THUMBNAIL","PRIORITY","SCHEMA_NAME","PARENT_MENU_ITEM","DefaultContents","DEFAULT_PAGE_TYPE_CODE","ClaimTypes","BOOL","STRING","NUMBER","UserRoles","DEVELOPER","EDITOR","OWNER","READER","READWRITE","AppConfigProvider","httpClient","config","Promise","resolve","promise","post","toPromise","then","configUpdated","tenantData","isSquidexAppCreated","Error","authIsEnabled","goLive","version","date","squidexAppIsCreated","isSquidexDefaultSchemaCreated","langNames","languageCode","tenantNotificationData","infoNotification","tenantNotifications_fr","tenantNotifications_en","alertNotification","googleAnalyticAccessToken","result","defaultCulture","bearerToken","endPoint","endPointAppName","getApiEndpoint","getEndpointAppName","PageTitleService","title","next","FieldValidation","ContentsListingComponent","route","router","persistenceStorageService","searchFilter","alphaOrder","allContents","reverseOrder","alphabet","paginateListContents","contentDictionary","isSearching","searchResult","filterValue","paginateSize","initSearchFormGroup","alphaOrderKey","JSON","stringify","baseUrl","storedOrder","get","updateStoredOrderList","listToggle","selectableContents","firstLetter","letter","sort","a","b","toUpperCase","contentFromPage","contentCount","currentPageNumber","launchResearch","searchBar","nativeElement","routeReuseStrategy","shouldReuseRoute","selectedContent","snapshot","paramMap","charAt","formControl","subscription","valueChanges","t","searchFormGroup","search","subscriptions","ordering","getSearchObject","emit","oSearch","or","path","op","contentName","navigateByUrl","navigate","page","isAlpha","set","getContents","$event","itemsPerPage","event","orderBySwitch","console","warn","normalReorder","reorderBySwitch","temp","clone","contentFacade","schemaDefinition","maxIndex","minIndex","obsList","moveArray","contentId","concat","pc","pcData","dParser","putData","array","splice","contentsOrdered","sub","DynamicSchemaQuery","SiteSettingQuery","SchemaMetadataQuery","FieldReferenceModel","FieldProperty","LayoutFacade","layoutService","layoutStore","layoutQuery","SiteSettingFacade","siteSettingService","siteSettingStore","siteSettingQuery","languageFacade","getFirstContent","getSchema","firstContent","getStore","totalCount","getQuery","hasEntity","initializeSiteSetting","selectFirst","siteSettingModel","getLanguages","languages$","getValidLanguage","languages","getSiteLanguages","isdefault","DynamicSchemaFactory","hardDeleteSchema","d","reloadSchemas","getAllSchemas","schemas","FieldTool","isLocalized","INPUT","FILE","TEXTAREA","CHECKBOX","RADIO","SELECT","SELECT_MULTIPLE","DATE","MAIL","pattern","ORDONNABLE_SELECT_MULTIPLE","inlineEditable","isRequired","isUnique","unlocalizableProperties","basicUnlocalizableProperties","inputUnlocalizableProperties","fileUnlocalizableProperties","radioUnlocalizableProperties","selectUnlocalizableProperties","basicLocalizableProperties","inputLocalizableProperties","textAreaLocalizableProperties","fileLocalizableProperties","mailLocalizableProperties","STRING_SELECT","MONACO_HTML","textAreaUnlocalizableProperties","mailUnlocalizableProperties","radioLocalizableProperties","selectLocalizableProperties","validPatterns","DynamicContentSchemaFactory","SchemaMetadataService","initialize","contentService","findContent","SquidexTool","cleanString","x","join","slice","noHyphen","replaceChar","replace","dt","Date","formatUtc","getFullYear","pad","getMonth","getDate","getHours","getMinutes","getSeconds","number","GetMenuShowMinusIconPipe","showIcon","PageContentService","AppTokenService","DEFAULT_SITE_SETTING_NAME","DEFAULT_PAGE_CATEGORY_NAME","DEFAULT_MENU_NAME","environment","production","FooterMainComponent","appConfigProvider","goLiveVersion","publishVersion","goLiveDate","publishDate","lastUpdateDays","getNumberOfDays","SectionFacade","sectionService","sectionStore","sectionQuery","MenuItemFacade","menuItemService","menuItemStore","menuItemQuery","getByParentId","contentList","ids","getContentByIds","MenuItemService","EMPTY","PagesComponent","pageTitleService","pageFacade","layoutFacade","templateFacade","pageContentFacade","schemaFacadeFactory","modalService","uiNotificationService","pageTypeFacade","formValidationService","spinnerService","pageInternalService","contentInternalService","paginationSize","currentPage","paginationSizeContents","currentPageContents","listView","hiddenFields","creationFields","isCollapsed","collapseControlsEditTemplate","languageCustomClass","cloneNgModel","cloneSubmited","selectedPageIsContent","maxSize","dataParser","searchControl","hide","tc","setTitle","key","getCurrentLanguage","bsConfig","containerClass","dateInputFormat","initializeData","initializeSearch","selectedSort","selectedSortIndex","Math","floor","window","innerWidth","schemaFields","generateFormGroup","statusControl","status","statusPublished","setValidators","required","valid","dirty","markAllAsTouched","values","newPageData","setData","urls","urlsDistinct","Set","translate","c","error","URL_NOT_DISTINCT","FAILED_TITLE","startWithSlash","url","trim","startsWith","URL_START_SLASH","allVersionParm","filterList","lg","orFilter","validateUrl","All","pageSelected","total","URL_TAKEN","pages","p","indexOf","setStatus","success","UPDATE_SUCCESS","SUCCESS_TITLE","closeModal","isExcutedPType","pType","create","newPage","newMenuItemData","pullData","isExcuted","createAsPublished","menu","menuData","menuItems","stat","setStatusNew","templateData","newTemplate","newStatus","updateStatus","isCreation","includes","collapseAllEditForm","createForm","desc","container","querySelectorAll","item","modalRef","pageModel","isContent","show","cloneTemplate","deleteTemplate","isNullEmptyOrWhiteSpaces","lang","langCode","clonePage","callback","isSuccess","getMessage","getPageContentsByPageId","pageContents","pageContent","schemaPageFacade","schemaPages","sPage","pageFilterFacade","pageFilter","pFilter","templateId","getMenuItemsByPageId","menus","draftmode","DELETE_SUCCESS","currentFacade","contentsAsPage","isPublishedContent","unPublishedContentsAndPages","end","publishCountContents","getSchemasMetadataByCategory","sc","getAll","cts","ct","sortChangeContents","getPages","unpublishedPages","publishedPages","draftParm","getOrderBy","advancedFilter","countParm","finalFilter","sub1","getPlaceholderPageType","pageType","placeholderPageType","oFilterPlaceHolder","getFilteredPagination","Draft","Published","getAllOrdered","unpublished","published","layouts","templates","pageCount","pageLayouts","pageTemplates","publishCount","lightRefresh","drafts","advancedSearch","subscriptionCount","subscriptionUnpublished","subscriptionPublished","sender","target","text","innerHTML","attributes","one","two","lastModified","getTime","paginationSizeChanged","paginationSizeChangedContents","newSize","changeLanguage","currentTarget","parent","removeClass","addClass","GetMenuLabelPipe","pageObj","label","ResourceFacade","appResourceService","appResourceStore","appResourceQuery","resourcesLoad","reloadResources","resources","r","draftMode","forceReolad","lastCheck","minutesToWait","resource","ResourceStore","ResourceModel","HeaderMainComponent","DataParser","siteLanguages","currentLanguageCode","getLanguageCode","findDefaultLanguage","newValue","fixFieldValue","isArray","type","languageModel","tzoffset","getTimezoneOffset","localISOTime","now","toISOString","UiNotificationService","toastr","message","enableHtml","timespan","timeOut","msg","tl","toString","ArticleFacade","articleService","articleStore","articleQuery","ResourceService","EFieldType","PageQuery","GetCultureNamePipe","interpolateParams","MenuHeaderComponent","isDashboard","setSiteName","siteName","currentLang","GetValidationMsgsPipe","validations","GetLocalizedFieldControlNamePipe","property","Content","created","createdBy","lastModifiedBy","schemaDisplayName","referenceFields","scheduleJob","statusColor","newStatusColor","_links","ArticleTypeQuery","PageCategoryModel","Role","FormValidationsService","control","validators","emailValidator","passwordValidator","creditCardValidator","phoneValidator","urlValidator","slugValidator","customPattern","validCreditCard","validEmail","validPassword","validSlug","validUrl","validPhone","patterReg","PersistenceStorageService","localStorage","setItem","e","parse","getItem","removeItem","ArticleTypeService","SchemaProperty","PublicComponent","MenuStore","TopMenuComponent","whenLanguageChange","previewUrl","previewPage","getAvailableLanguages","availableLanguagesNames","getAvailableLanguagesNames","getTitle","pageTitle","setUserInfos","location","origin","use","ts","getCurrentUser","fullname","username","email","PageCategoryQuery","DynamicContentSchemaFacade","genericService","genericStore","genericQuery","SideBarComponent","AssetDirectoryModel","NgxFileDropModule","declarations","imports","exports","providers","bootstrap","BaseFacade","dynamicSchemaFacade","facadeName","datePipe","contentData","deleted","addContent","contentBack","createAndPublishContent","createDraft","getContentById","countContent","filterPagination","hasPaginateContents","getPaginateData","doPagination","updatePaginate","updateContent","u","removeContent","deleteDraft","removeHardContent","getTopX","object","getCount","eSchemaContentStatus","filterParms","filterBy","entity","getContentByCode","defaultLang","top","getFiltered","getByObject","getUnpublished","parentFieldName","checkDefaultLanguage","getDefaultLanguage","tmp","dateFormat","getLocalDateTime","transform","dueTime","updateContentStatus","Asset","ArticleStore","PageModel","MenuModel","UserQuery","ArticleCategoryQuery","Schema","scripts","SiteSettingModel","SchemaService","schemaBaseUrl","parentId","put","nestedField","parentFieldId","nestedFieldId","schemaProperty","updatedSchema","categoryName","PreviewsUrl","DynamicContentSchemaStore","SchemaScript","AuthenticationResult","UpdatePasswordResult","AuthenticationService","applicationUserFacade","accessClaimKey","authenticationResult","isAuthenticated","claims","user","hasAccess","storeUserInfo","roles","role","claim","password","oldPassword","newPassword","Password","userName","userId","passwordConfirmation","ContentService","contentBaseUrl","cacheClearToken","urlParameters","filterSoftDelete","encodeURIComponent","languageUrl","getLanguagePathUrl","getContent","contentSoftDeleteCode","deletedatetime","archive","contentObject","and","order","addDraftModeToUrl","oDataQuery","statusData","getSchemaBaseUrl","formattedDate","setDate","substring","archivePayload","answer","MenuItemComponent","plusIcon","minusIcon","parentMenuItemDto","rootMenuItemDtos","onDrag","childrenDto","menuItemDtos","menuItemDto","hasChildren","getCurrentCulture","link","menuCode","pageCode","parentMenu","parentPath","elem","plusRef","minusRef","onDeleteEvent","article","AssetStore","MenuComponent","menuTitle","urlPart","currentLink","subPage","pg","sub2","mi","dtoList","itemDto","isCurrentMenuLink","isCurrentMenuCode","parentMi","o","addParentToList","exists","findIndex","lastIndexOf","menuItemsIdOrdered","indexFrom","indexTo","isUp","reverse","menuItemId","menuItemData","parentMenuId","menusFromParent","mp","pIndex","SharedModule","forRoot","LayoutQuery","LanguageFacade","languageService","languageStore","languageQuery","languagesLoad","reloadLanguages","l","ls","isActivated","getAllLanguages","payload","createLanguageDefinition","deleteLanguageDefinition","AssetDirectoryStore","GetValuePipe","AssetDirectoryFacade","assetDirectoryService","assetDirectoryStore","assetDirectoryQuery","directoryService","directory","count","dir","setDataValue","putNumber","folder","filterCount","directoryObject","folderName","getFolders","folders","folderId","newFolder","createFolder","deleteFolder","updateFolder","ApplicationUserService","GetMenuDisabledPipe","ScheduleJob","LanguageQuery","AppComponent","initializeLocalization","addLangs","userLanguage","defaultLanguage","getDefaultCulture","setDefaultLang","browserLang","getBrowserLang","split","UserModel","DefaultFieldService","systemDefaultFields","contactDefaultFields","defaultDefaultFields","contentDefaultFields","pageDefaultFields","generateDefaultFields","pageNameField","pageMetatitle","pageUrl","pageMetaDescription","pageMetaKeyWord","pageParentId","pageThumbnail","pageIsActive","pagePriority","pageIsSecure","pageIsNoIndex","defaultValue","mustBeImage","resolveFirst","resolveImage","metatitle","hints","metaDesc","minLength","maxLength","metaKW","generateCodeField","generatePublishField","generateSoftDeleteField","generateDeleteDateTimeField","generateIndexField","publishField","FieldReferenceEditorComponent","dynamicContentSchemaFactory","updateParent","contentsFacade","fieldReferenceModel","viewProviders","provide","useExisting","SchemaMetadataModel","RolesFactory","getRolesPathUrl","SiteSettingService","SpinnerService","overlay","overlayRef","isOverlay","spinnerOverlayPortal","hasAttached","setTimeout","attach","detach","TemplateStore","ApplicationUserModel","LanguageService","AssetQuery","ArticleCategoryModel","SchemaPageQuery","PageContentStore","PageCategoryFacade","pageCategoryService","pageCategoryStore","pageCategoryQuery","FormGroupGetLocalizedPipe","SiteSettingStore","ClaimFacade","claimService","claimStore","claimQuery","SectionService","appConfigLoader","loadConfig","httpLoaderFactory","http","AppModule","withServerTransition","appId","loader","useFactory","deps","multi","useClass","SpinnerModule","entryComponents","SchemaPageStore","LayoutService","ArticleTypeModel","IsDefaultLanguagePipe","FormGroupGetPipe","form","PageComponent","schemaMetadataFacade","sanitizer","assetFacade","pageHiddenFields","isDraft","draftVersionExist","pageContentHiddenFields","pageFilterHiddenFields","pathFields","pageContentsDescription","showAction","thumbnail","publishDateTime","isAllOpen","testUrl","squidexTool","pageSchema","initContentsAndForms","PAGE_LOAD_ERROR","initContents","buildUrl","setPreviewUrl","lastModifiedDate","getLastModifiedDate","currentStatus","scheduledJob","updateStatusAndStatusColor","thumbnailField","assets","updateIframeSrc","isExistDraftVersion","sch","pageTypes","pageFilters","pageTemplate","templateSchema","pageTemplateSchema","pageTemplateForm","pageForm","tempTemplatePage","isDirty","newData","setContent","f","removeStore","pf","removeDraft","reloadPage","newContentData","pageFields","pubDate","pagePublishFormGroup","touched","publish","pageName","issecure","pageCapture","updatePageTemplateContent","srcElement","checked","tempPageContent","fieldProperties","fieldValue","maxLengthValidator","minLengthValidator","getValidators","createMetaDataFormGroup","addControl","metaDataFormGroup","fieldsValue","getPublishDate","scheduledBy","getPageStatus","fs","scheduleJobFromGroup","createGenericFormControl","publishdatetime","utcToDateString","publishStatus","notify","currentDate","dueTimeDate","tempContent","publishMode","currentContentsFacade","publishDateField","statusColorClassName","selectedPageContentId","DELETE_FAILED","tempId","draftStatus","selectedPageFilterId","closest","slideToggle","toggleClass","tabId","tabSet","contentTabs","tabs","active","plateForm","plateForme","previewHeight","previewWidth","bypassSecurityTrustResourceUrl","pageContentSchema","pageContentFields","pageContentForm","controls","setValue","getPathFilterFromSchemaName","contentSchema","pageFilterId","pageFilterSchema","pageFilterFields","pageFilterContent","pageFilterForm","CREATE_FAILED","newPageFilterData","getLocalizableFieldName","newPageContentData","err","INVALID_CODE","ERROR","isModified","isOpen","contentType","allSectionElement","getElementById","pageContentId","click","tempPc","imageName","generateThumbnail","asset","assetFields","retval","bypassSecurityTrustUrl","pageContentsOrdered","BaseService","getContentService","getAllContent","getODataQuery","contentStatus","publishedText","filterTextValue","sortInformation","filterText","AdvancedFilter","opPublish","unPublish","idx","orderings","createContent","softDeleteContent","deleteContent","createContentAndPublish","getAllContentOrdered","SchemaPageModel","ClaimService","PageFacade","pageService","pageStore","pageQuery","ESchemaContentStatus","PageTypeQuery","webpackEmptyAsyncContext","req","module","AssetService","assetBaseUrl","getAssetsBaseUrl","queryPatameters","assetId","formData","assetData","String","imageId","encodeURI","urlObject","StringTool","substr","random","SchemaPageService","GetMenuShowPlusIconPipe","MonacoLiquidEditorModule","useValue","ArticleTypeStore","ApplicationUserFacade","userService","userStore","userQuery","GetDateTimeValuePipe","FieldReferenceContent","contentFacadeFacto","Name","schemaIds","sortByIndex","Id","Label","SpinnerComponent","ContentEditionComponent","resourceFacade","metadataFacade","referenceContentService","assetDirectoryFacade","zone","isSingle","isModal","showTitle","onContentChanged","onUpdate","newImage","deletedAssets","alreadyTried","isNew","imageChange","weAreInContents","addValue","reloadOnUpdate","initData","initEditionForm","subsDir","folderList","urlTree","parseUrl","currentBaseUrl","root","children","segments","retry","cloneData","draftVersionExisted","classifyFields","editionFormGroup","s","publishFormGroup","resourceCode","schemaMetadata","hiddenFieldsNames","hiddenfields","unhiddenFields","hiddenFieldName","invalid","CONTENT_EDITION","INVALID_FORM","cn","CODE_TAKEN","newContent","GetContentFromFormGroup","sanitizedCode","sanitizeForUniqueName","log","validateBatch","totalArr","num","valueOf","hasImage","addImageField","finalizeCreate","validatePatterns","querySelector","delImages","updateImageField","finalizeUpdate","directoryName","folderExist","folderNew","subs","folderParentId","finalizeUpdateImageField","assetsBatch","deleteButKeepImage","resultDelete","ctrl","assetVal","files","file","FormData","append","assetValue","assetsBack","obj","finalizeAddImageField","createFunction","publishOnUpdate","datePublished","setHours","getUrl","isExcu1","menuItemFacadeSub","isExcu","subSchemaPageFacade","subPageFacade","newSchemaPageData","executeContentChanged","UPDATE_CONTENT_SUCCESS","resetImageElements","setPublished","setJobStatusFormGroup","reloadCurrentRoute","details","errorDetail","reload","validationBatch","contentFilter","templateFilter","layoutFilter","forkSusbcription","notValid","CONTENT_BEING_USED","refId","contentSchemas","removeSelectedSchema","schemaFacade","schemaDef","filterObj","dataClone","getMilliseconds","contentCode","deleteAndCreateDraft","updateDate","dueTimeTemp","cloneContent","image","resultIndex","isValid","URL_PATTERN_ERROR","selBox","createElement","style","position","left","opacity","body","appendChild","focus","select","execCommand","removeChild","successAsync","isReferenceField","referenceFieldReferenceModel","n","referenceItems","item_text","localeCompare","schemaId","referenceFieldValues","fieldReferenceModelParent","fieldControls","facade","sub3","getBySchemaId","sub5","generateContentList","run","hideFieldReferenceModelEditor","refValue","currentVal","itm","pageContentIsModified","articleContent","contentDefinition","getContentDefinitionCode","pageContentDescription","articleSchema","contentFields","contentDefinitionHiddenFields","createContentDefinitionForm","ArticleCategoryFacade","BaseComponent","statusDraft","siteLabelElem","siteUrlElem","pageUrlElement","getScreenSize","context","translateContext","scrHeight","innerHeight","scrWidth","unsubscribe","getKey","textParts","markAsTouched","onlySelf","validateAllFormFields","formValidationsService","isactive","round","options","weekday","year","month","day","toLocaleDateString","prepareCompare","comparval1","comparval2","toLog","strValue","numberValue","isNaN","currentUrl","skipLocationChange","sentUrl","href","ContentList","MenuItemQuery","SquidexDate","validateDate","getUTCFullYear","getUTCMonth","getUTCDate","AuthorizationGuard","isAuthorized","queryParams","returnUrl","AssetDirectoryQuery","PageInternalService","Success","removeHard","ServeurError","pageId","NotImplemented","getSchemaPageByContentId","schemaPage","contenttype","clonedContentData","sanitizedContentCode","clonedSchemaPageData","contentid","newSchemaPage","clonedMenuItemData","ClientError","originalPage","originalTemplate","clonePageContent","cloneSinglePage","AssetFacade","assetFactory","_path","_endPoint","emptyGuid","getAssetsPathUrl","getAssetService","getAssetQuery","getAssetStore","getById","fileName","upload","assetBack","tagBack","tags","tag","isImage","fileType","updateTag","assetTagBack","parentPayload","assetParentBack","ext","slug","getSlug","fullName","countQuery","today","y","h","JwtInterceptor","request","getBearerToken","addToken","addUnpublished","method","handle","statusCode","SCHEMA_NAME_TAKEN","CONTENT_NAME_EXISTS","ERROR_MESSAGE","token","setHeaders","GetCompareValuePipe","compareValue","UserService","LayoutModel","GetLanguageCodePipe","FieldReferenceCleaner","allSchemas","cleanedFields","cleanReferenceField","cleanedIds","ServiceCallback","messages","NoContent","RolesService","roleBaseUrl","ApplicationUserStore","UserFacade","UserStore","PageService","PageContentQuery","PageCategoryService","Folder","TemplateService","DynamicContentSchemaState","PageTypeFacade","pageTypeService","pageTypeStore","pageTypeQuery","getDefaultPageType","SchemaMetadataStore","SchemaMetadataFacade","schemaMetadataService","schemaMetadataStore","schemaMetadataQuery","schemaMetaDataService","meta","metaList","firstItem","storedId","selectEntity","ArticleService","ApplicationUserQuery","AssetFactory","ClaimModel","NgxFileDropContentTemplateDirective","DynamicContentSchemaQuery","PageTypeStore","PageContentFacade","pageContentService","pageContentStore","pageContentQuery","ContentInternalService","dynamicContentSchemaFacade","GetDateValuePipe","MonacoLiquidEditorComponent","monacoLoaderService","theme","onInitEvent","isInitialized","isMonacoLoaded$","isLoaded","loaded","monaco","registerAutocompleteProvider","editorOptions","tabCompletion","registerCompletionItemProvider","provideCompletionItems","autocompleteProviderItems","keywords","kind","CompletionItemKind","Keyword","suggestions","AssetList","Field","SideLeftBarComponent","ContentsComponent","schemaSelectedName","schemaSelectedLabel","contentSelectedCode","isAlphaOrder","defaults","sortByLabel","listableSchemas","start","totalItems","currentPageSchemas","updateObservable","currentSchemaFacade","referenceFieldValues$","selectedSchemaContents","fullCount","qty","bySwitch","NgxFileDropEntry","relativePath","fileEntry","FormGroupBuilder","DynamicSchemaStore","AssetsLeftMenuComponent","AdvancedPageComponent","sharedFieldsContentPage","siteSettingSubscription","isEx","relatedContentFacade","relatedContentSubscription","relatedContent","schemaPageSubscription","isExecuted","pageSubscription","singlePageSubscription","placeHolderPage","translateSubscription","manageContent","hideSpinner","UPDATE_PAGE_SUCCESS","updateChild","sharedFields","schemaPageComponent","dateStringToUtc","assetField","updateRelatedContent","DynamicSchemaService","schemaService","reorderFields","ArticleModel","FieldControlComponent","imageEmitter","deleteAssetEmitter","newAssetEmitter","updateFormControl","eFieldType","placeholder","setCkEditorConfig","uniqueFieldControlId","generateGuid","initLabel","initLanguages","initType","referenceInitObs$","initReferenceItem","initCurrentLanguage","initPlaceholder","initIsLocalized","initDropdown","ckEditorConfig","autoParagraph","ignoreEmptyParagraph","allowedContent","fillEmptyBlocks","extraAllowedContent","toolbarGroups","groups","removeButtons","removePlugins","protectedSource","extraPlugins","dropdownSettings","idField","textField","selectAllText","unSelectAllText","itemsShowLimit","allowSearchFilter","singleSelection","isLocalize","getTypeFromField","referenceValues","initialItem","vv","currentLanguage","input","setAttribute","newValues","LanguageModel","GetPublishFormGroupScheduleJobDueTimePipe","ContentFactory","getContentBaseUrl","AssetDirectoryService","LayoutStore","SchemasFactory","schemaAsPageHiddenFields","initDefaultFieldService","defaultField","defaultFieldService","metaSchema","fieldsNeeded","fieldNeeded","defaultFields","generateFields","allSchema","cleaner","cleanAllReferenceFields","oSchema","defaultHiddenFields","securedSchema","schemaid","secured","schemaBack","schemasList","NgxFileDropComponent","renderer","accept","multiple","dropZoneLabel","dropZoneClassName","contentClassName","showBrowseBtn","browseBtnClassName","browseBtnLabel","buttonPosition","autoUpload","onFileDrop","onFileOver","onFileLeave","isDraggingOverDropZone","globalDraggingInProgress","numOfActiveReadEntries","helperFormEl","fileInputPlaceholderEl","dropEventTimerSubscription","_disabled","openFileSelector","fileSelector","openFileSelector2","globalDragStartListener","listen","evt","globalDragEndListener","isDropzoneDisabled","preventAndStop","dataTransfer","dropEffect","checkFiles","resetFileInput","entry","canGetAsEntry","webkitGetAsEntry","fakeFileEntry","isDirectory","isFile","toUpload","addToQueue","traverseFileTree","dirReader","createReader","entries","readEntries","fileInputEl","fileInputContainerEl","parentElement","getHelperFormElement","getFileInputPlaceholderElement","insertBefore","disabled","stopPropagation","preventDefault","read","DynamicContentModel","SectionStore","DynamicSchemaModel","routes","redirectTo","pathMatch","canActivate","loadChildren","AssistanceModule","SettingsModule","DashboardModule","ProfileModule","ArticlesModule","AssetsModule","PagesModule","PageModule","AdvancedPageModule","FilesModule","BannersModule","AppFormsModule","SchemasModule","ContentsModule","LayoutsModule","ResourceModule","SectionsModule","ScriptsModule","StylesModule","TemplatesModule","UsersModule","ChangePasswordModule","RedirectionModule","LoginModule","LogoutModule","RegisterModule","ForgotPasswordModule","ResetPasswordModule","HelpModule","AppRoutingModule","MenuQuery","FieldPipe","SchemaPageFacade","schemaPageService","schemaPageStore","schemaPageQuery","MenuService","MenuFacade","menuService","menuStore","menuQuery","UploadFieldComponent","fileUploaded","assetName","assetPath","newImageEmitter","filesToUpload","fileCount","imgs","each","img","currentSrc","deleteImage","images","reader","FileReader","self","onload","theFile","imageDiv","newElem","src","maxHeight","marginLeft","divOverlayElem","textAlign","padding","trashElem","ariaHidden","marginRight","fontSize","newElem2","margin","readOnly","on","empty","readAsDataURL","isDeleted","blob","Blob","SectionModel","PageTypeService","getPageType","SchemaPageComponent","onUpdatePage","sortByName","contentEditionComponent","ArticleCategoryService","TemplateQuery","ArticleCategoryStore","resettable","getBaseUrl","bootstrapModule","MenuItemStore","ClaimQuery"],"mappings":"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AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;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;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;;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","file":"main-es5.js","sourcesContent":["export enum Code {\r\n Success = 200,\r\n NoContent = 204,\r\n ClientError = 400,\r\n NotFound = 404,\r\n ServeurError = 500,\r\n NotImplemented = 501,\r\n InvalidRequest = 600\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { TemplateStore } from './template.store';\r\nimport { TemplateQuery } from './template.query';\r\nimport { BaseFacade } from \"../base/base.facade\";\r\nimport { TemplateService } from './template.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { TemplateModel } from './template.model';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TemplateFacade extends BaseFacade {\r\n\r\n constructor(\r\n templateService: TemplateService,\r\n templateStore: TemplateStore,\r\n templateQuery: TemplateQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(templateService,\r\n templateStore,\r\n templateQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade('template'),\r\n translateService,\r\n 'template-facade'\r\n );\r\n }\r\n\r\n\r\n getTemplatesByCategory(category: string): Observable {\r\n return (this.getService() as TemplateService).getByCategory(category)\r\n .pipe(map(list => list.items));\r\n }\r\n\r\n}\r\n","import { EntityStore, StoreConfig, entitiesToArray } from '@datorama/akita';\r\nimport { Content } from '../../squidex';\r\nimport { IBaseState } from './base.state';\r\nimport { FilterPagination } from './filter.pagination';\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\nexport abstract class BaseStore extends EntityStore {\r\n\r\n protected constructor(baseState?: IBaseState, schemaName?: string) {\r\n if (baseState && schemaName) {\r\n super(baseState, { name: schemaName });\r\n } else {\r\n super();\r\n }\r\n }\r\n\r\n hasPaginateContents(filter: FilterPagination): boolean {\r\n const state = this.getValue();\r\n\r\n if (!state.lastFilter\r\n || !state.lastOrderBy\r\n || state.lastFilter !== filter.filter\r\n || state.lastOrderBy !== filter.orderBy) {\r\n this.reset();\r\n return false;\r\n }\r\n\r\n for (let i = filter.from; i < filter.to; i++) {\r\n if (!Object.keys(state.storedIndex)\r\n .some(index => Number.parseInt(index) === i)) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n updatePaginate(contents: Content[], filter: FilterPagination) {\r\n\r\n let storedIndex = cloneDeep(this.getValue().storedIndex);\r\n let i = 0;\r\n\r\n if (!storedIndex) {\r\n storedIndex = {};\r\n }\r\n\r\n for (let j = filter.from; j <= filter.to && i < contents.length; j++ , i++) {\r\n storedIndex[j] = contents[i].id;\r\n }\r\n\r\n this.update({\r\n storedIndex: storedIndex,\r\n lastFilter: filter.filter,\r\n lastOrderBy: filter.orderBy\r\n });\r\n\r\n this.add(contents);\r\n }\r\n\r\n}\r\n","import { ContentFactory } from '../../squidex';\r\nimport { BaseService } from '../base/base.service';\r\n\r\nexport class DynamicContentSchemaService extends BaseService {\r\n constructor(schemaName: string, contentFactory: ContentFactory) {\r\n super(schemaName, contentFactory);\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../../base/base-component.component';\r\nimport { SiteSettingModel, AuthenticationService } from '../../../services';\r\n\r\n@Component({\r\n selector: 'left-menu',\r\n templateUrl: './left-menu.component.html',\r\n styleUrls: ['./left-menu.component.css']\r\n})\r\nexport class LeftMenuComponent extends BaseComponent implements OnInit {\r\n\r\n @Input()\r\n siteSettingModel: SiteSettingModel;\r\n isCage = false;\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n userIsReadWrite: boolean;\r\n userIsReader: boolean;\r\n\r\n constructor(\r\n translateService: TranslateService,\r\n private authenticationService: AuthenticationService) {\r\n super(translateService);\r\n this.setTranslateContext('LeftMenuComponent');\r\n }\r\n\r\n ngOnInit() {\r\n this.userIsOwner = this.authenticationService.userHasRole(\"Owner\");\r\n this.userIsDev = this.authenticationService.userHasRole(\"Developer\");\r\n this.userIsEditor = this.authenticationService.userHasRole(\"Editor\");\r\n this.userIsReadWrite = this.authenticationService.userHasRole(\"ReadWrite\");\r\n this.userIsReader = this.authenticationService.userHasRole(\"Reader\");\r\n }\r\n\r\n\r\n toggleIt() {\r\n const element: HTMLCollection = document.getElementsByTagName('body');\r\n if (element[0].classList.contains('open_menu')) {\r\n element[0].classList.remove('open_menu');\r\n } else {\r\n element[0].classList.add('open_menu');\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { MenuItemDto } from '../../../services/akita/menu-item-schema/menu-item.dto';\r\nimport { DataParser } from \"../../../services\";\r\n\r\n@Pipe({\r\n name: 'getMenuSelectedChildren'\r\n})\r\nexport class GetMenuSelectedChildrenPipe implements PipeTransform {\r\n\r\n transform(menuDto: MenuItemDto, menuDtos: MenuItemDto[]): string {\r\n\r\n let classes = 'on-hover no-drag pl-1 ';\r\n if (menuDto.isCurrentPage) {\r\n const selectedChild = menuDtos.find(m => m.isCurrentPage && menuDto.menuItem.id === m.menuItem.data.parentMenuItem.iv[0]);\r\n if (!selectedChild) {\r\n classes += ' is-selected';\r\n }\r\n }\r\n return classes;\r\n\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppToken } from \"../../../models/app-token\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppToken.PAGE_CATEGORY_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class PageCategoryStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import { ArticleStore } from './article.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from \"../base/base.query\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleQuery extends BaseQuery {\r\n\r\n constructor(store: ArticleStore) {\r\n super(store);\r\n }\r\n}\r\n","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n < {{menuTitle}}\\r\\n
\\r\\n
\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppTokenService } from '../../../app-token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppTokenService.PAGE_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class PageStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","export class Validation {\r\n\r\n static isValidGuid(expression: string): boolean {\r\n if (expression != null) {\r\n const guidRegEx = new RegExp('^(\\{{0,1}([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){12}\\}{0,1})$');\r\n return guidRegEx.test(expression);\r\n }\r\n return false;\r\n }\r\n\r\n static isNullEmptyOrWhiteSpaces(str: string): boolean {\r\n return str === undefined || str === null || str === '' || str.match(/^ *$/) !== null;\r\n }\r\n}\r\n","import { MenuItemModel } from \"./menu-item.model\";\r\n\r\nexport class MenuItemDto {\r\n isCurrentPage: boolean = false;\r\n isVisible: boolean = false;\r\n menuItem: MenuItemModel;\r\n}\r\n\r\n","import { Asset } from \"../../squidex\";\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\nexport class AssetModel extends Asset {\r\n constructor(current?: Asset) {\r\n if (current) {\r\n super(cloneDeep(current) as Asset);\r\n } else {\r\n super({});\r\n }\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Schema } from '../models/schema.model';\r\nimport { Field } from '../models/field.model';\r\nimport { SchemaScript } from '../models/schema-script.model';\r\nimport { SchemaProperty } from '../models/schema-property.model';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class AppCreationService {\r\n\r\n}\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class TemplateModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ArticleTypeStore } from './article-type.store';\r\nimport { ArticleTypeQuery } from './article-type.query';\r\nimport { BaseFacade } from \"../base/base.facade\";\r\nimport { ArticleTypeService } from './article-type.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleTypeFacade extends BaseFacade {\r\n constructor(\r\n articleTypeService: ArticleTypeService,\r\n articleTypeStore: ArticleTypeStore,\r\n articleTypeQuery: ArticleTypeQuery,\r\n dynamicSchemaFactory: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(articleTypeService,\r\n articleTypeStore,\r\n articleTypeQuery,\r\n dynamicSchemaFactory.getDynamicSchemaFacade('article-type'),\r\n translateService,\r\n 'article-type-facade');\r\n }\r\n}\r\n","export default \"a.disabled {\\r\\n pointer-events: none;\\r\\n cursor: default;\\r\\n}\\r\\n.title {\\r\\n font-size: 14px;\\r\\n line-height: 16px;\\r\\n font-weight: 700;\\r\\n color: #f29100;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1lbnUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLG9CQUFvQjtFQUNwQixlQUFlO0FBQ2pCO0FBQ0E7RUFDRSxlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixjQUFjO0FBQ2hCIiwiZmlsZSI6Im1lbnUuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbImEuZGlzYWJsZWQge1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG4udGl0bGUge1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBsaW5lLWhlaWdodDogMTZweDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGNvbG9yOiAjZjI5MTAwO1xyXG59XHJcbiJdfQ== */\";","import { Content } from \"../../squidex\";\r\n\r\nexport class PageContentModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { DynamicContentSchemaFactory, DynamicContentSchemaFacade, SiteSettingModel } from '../../../services';\r\nimport { DefaultContents } from '../../../models/app-token';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'dynamic-left-menu',\r\n templateUrl: './dynamic-left-menu.component.html',\r\n styleUrls: ['./dynamic-left-menu.component.css']\r\n})\r\nexport class DynamicLeftMenuComponent implements OnInit {\r\n\r\n\r\n @Input()\r\n siteSetting: Observable;\r\n\r\n menuFacade: DynamicContentSchemaFacade;\r\n menuItemFacade: DynamicContentSchemaFacade;\r\n\r\n menuIdDefault: string; // default-menu tree menu\r\n\r\n constructor(\r\n private readonly contentFacadeFactory: DynamicContentSchemaFactory) {\r\n }\r\n\r\n ngOnInit() {\r\n this.menuFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade('menu');\r\n this.menuFacade.getByCode(DefaultContents.DEFAULT_MENU_CODE).subscribe(m => {\r\n this.menuIdDefault = m.id;\r\n })\r\n this.menuItemFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade('menu-item');\r\n }\r\n}\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class MenuItemModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","export default \"
\\r\\n
\\r\\n

{{ pageTitle }}

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\";","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppTokenService } from '../../../app-token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppTokenService.CLAIM_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class ClaimStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({\r\n name: 'language',\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class LanguageStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import { Component, OnInit, } from '@angular/core';\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { SiteSettingFacade } from \"../../services/index\";\r\nimport { BaseComponent } from \"../../base/base-component.component\";\r\nimport { DefaultContents } from \"../../models/app-token\";\r\nimport { PagesComponent } from '../../pages/pages/pages.component';\r\nimport { PageComponent } from '../../pages/page/page.component';\r\nimport { AdvancedPageComponent } from '../../pages/advanced-page/advanced-page.component';\r\n\r\n@Component({\r\n selector: 'private',\r\n templateUrl: './private.component.html'\r\n})\r\nexport class PrivateComponent extends BaseComponent implements OnInit {\r\n\r\n isPages: boolean = false;\r\n\r\n constructor(\r\n private readonly siteSettingFacade: SiteSettingFacade,\r\n translateService: TranslateService) {\r\n super(translateService);\r\n }\r\n\r\n ngOnInit(): void { }\r\n\r\n\r\n\r\n //https://stackoverflow.com/questions/41451375/passing-data-into-router-outlet-child-components/\r\n //TODO handle caveat\r\n onOutletLoaded(component) {\r\n component.siteSetting = this.siteSetting;\r\n if (component instanceof PagesComponent\r\n || component instanceof PageComponent\r\n || component instanceof AdvancedPageComponent) {\r\n this.isPages = true;\r\n } else {\r\n this.isPages = false;\r\n }\r\n if (!component.siteSetting) {\r\n this.siteSetting = this.siteSettingFacade.getByCode(DefaultContents.DEFAULT_SITE_SETTING_CODE);\r\n component.siteSetting = this.siteSetting;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { SectionStore } from './section.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SectionQuery extends BaseQuery {\r\n\r\n constructor(store: SectionStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n","import { ResourceStore } from './resource.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from \"../base/base.query\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ResourceQuery extends BaseQuery {\r\n\r\n constructor(store: ResourceStore) {\r\n super(store);\r\n }\r\n}\r\n","import { DynamicSchemaService } from './dynamic-schema.service';\r\nimport { DynamicSchemaStore } from './dynamic-schema.store';\r\nimport { DynamicSchemaQuery } from './dynamic-schema.query';\r\nimport { Schema } from '../../squidex/models/schema.model';\r\nimport { Field } from '../../squidex/models/field.model';\r\nimport { Observable } from 'rxjs';\r\nimport { DynamicSchemaModel } from './dynamic-schema.model';\r\nimport { SchemasFactory } from '../..';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { SchemaProperty } from '../../squidex';\r\nimport { map } from 'rxjs/operators';\r\n\r\nexport class DynamicSchemaFacade {\r\n service: DynamicSchemaService; //TODO: make it static\r\n store: DynamicSchemaStore; //TODO: make it static\r\n query: DynamicSchemaQuery; //TODO: make it static\r\n\r\n constructor(\r\n private readonly schemaName: string,\r\n private readonly schemasFactory: SchemasFactory,\r\n private readonly translateService: TranslateService) {\r\n this.service = new DynamicSchemaService(schemasFactory.getSchemaService(schemaName));\r\n this.store = new DynamicSchemaStore(schemaName);\r\n this.query = new DynamicSchemaQuery(this.store);\r\n }\r\n\r\n getSchemaDefinition(): Observable {\r\n return this.service.getSchemaDefinition();\r\n }\r\n\r\n fieldExist(fieldName: string): Observable {\r\n return this.getSchemaDefinition().pipe(map(schema => {\r\n return schema.fields.some(field => field.name === fieldName);\r\n }));\r\n }\r\n\r\n createMe(properties: SchemaProperty, category: string, isSingleton: boolean = false): Observable {\r\n const schema = new Schema();\r\n\r\n schema.name = this.schemaName.toLocaleLowerCase();\r\n schema.properties = properties;\r\n schema.isSingleton = isSingleton;\r\n schema.category = category;\r\n\r\n return this.schemasFactory.createSchema(schema);\r\n }\r\n\r\n updateProperties(properties: SchemaProperty): Observable {\r\n return this.service.updateSchemaProperties(properties).pipe(map(schema => {\r\n this.store.update({ properties: schema.properties });\r\n return schema;\r\n }));\r\n }\r\n\r\n addField(field: Field): Observable {\r\n return this.service.addField(field).pipe(map(schema => {\r\n this.store.update({ fields: schema.fields });\r\n return schema;\r\n }));\r\n }\r\n\r\n updateField(field: Field, fieldId?: number): Observable {\r\n // fix for assets\r\n if (field.properties && field.properties.fieldType === 'Assets') {\r\n if (field.properties.minItems == 0) {\r\n field.properties.minItems = 0;\r\n field.properties.maxItems = 1;\r\n }\r\n else {\r\n field.properties.minItems = null;\r\n field.properties.maxItems = null;\r\n }\r\n }\r\n return this.service.updateField(field, fieldId).pipe(map(schema => {\r\n this.store.update({ fields: schema.fields });\r\n return schema;\r\n }));\r\n }\r\n\r\n deleteField(fieldId: number, force: boolean = false): Observable {\r\n //TODO: manage soft & hard delete with force\r\n return this.service.deleteField(fieldId, force).pipe(map(schema => {\r\n this.store.update({ fields: schema.fields });\r\n return schema;\r\n }));\r\n }\r\n\r\n desableField(fieldId: number): Observable {\r\n return this.service.disableField(fieldId).pipe(map(schema => {\r\n this.store.update({ fields: schema.fields });\r\n return schema;\r\n }));\r\n\r\n }\r\n\r\n enableField(fieldId: number): Observable {\r\n return this.service.enableField(fieldId).pipe(map(schema => {\r\n this.store.update({ fields: schema.fields });\r\n return schema;\r\n }));\r\n }\r\n\r\n reorderFields(fieldIds: number[]): Observable {\r\n return this.service.reorderField(fieldIds).pipe(map(schema => {\r\n this.store.update({ fields: schema.fields });\r\n return schema;\r\n }));\r\n }\r\n\r\n getSchemaName() {\r\n return this.schemaName;\r\n }\r\n}\r\n","export class FilterPagination {\r\n\r\n constructor(\r\n public from?: number,\r\n public to?: number,\r\n public orderBy?: string,\r\n public filter?: string,\r\n public filterObject?: {}\r\n ) { }\r\n\r\n getODataQuery(): string {\r\n this.setDefault();\r\n return `?\\$filter=${this.filter}&\\$top=${this.to}&\\$skip=${this.from}&\\$orderby=${this.orderBy}`;\r\n }\r\n\r\n private setDefault() {\r\n if (!this.from) {\r\n this.from = 0;\r\n }\r\n if (!this.to) {\r\n this.from = 24;\r\n }\r\n if (!this.orderBy) {\r\n this.orderBy = 'data/code/iv';\r\n }\r\n if (!this.filter) {\r\n this.filter = 'data/deleted/iv ne true';\r\n }\r\n }\r\n}\r\n","import { FormGroup } from '@angular/forms';\r\nimport { Schema, Content, LanguageModel, SquidexDate, Field } from '../../services';\r\nimport { Validation } from '../../tools';\r\ndeclare var CKEDITOR: any;\r\n\r\nexport class FormGroupMapper {\r\n\r\n public static GetContentFromFormGroup(\r\n formGroup: FormGroup,\r\n content: Content,\r\n schema: Schema,\r\n availableLanguages: LanguageModel[]): Content {\r\n\r\n if (!content.data) {\r\n content.data = {};\r\n }\r\n\r\n for (const schemaField of schema.fields) {\r\n let formGroupValue = formGroup.value[schemaField.name];\r\n\r\n if (schemaField.partitioning !== 'language' && typeof (formGroupValue) !== 'undefined') {\r\n if (!content.data[schemaField.name]) {\r\n content.data[schemaField.name] = {};\r\n }\r\n if (schemaField.properties.fieldType === 'References') {\r\n if (schemaField.properties.editor === 'Checkboxes' ||\r\n schemaField.properties.editor === 'Tags' ||\r\n schemaField.properties.editor === 'Dropdown') {\r\n\r\n if (formGroupValue instanceof Array) {\r\n\r\n if (formGroupValue[0] && formGroupValue[0].item_id) {\r\n\r\n content.data[schemaField.name]['iv'] = formGroupValue.map(v => {\r\n if (v.item_id) {\r\n return v.item_id;\r\n }\r\n return v;\r\n });\r\n } else {\r\n content.data[schemaField.name]['iv'] = formGroupValue;\r\n }\r\n\r\n // TODO: Cleaning needed here\r\n } else if (Validation.isValidGuid(formGroupValue)) {\r\n content.data[schemaField.name]['iv'] = [formGroupValue];\r\n }\r\n } else if (formGroupValue instanceof Array) {\r\n content.data[schemaField.name]['iv'] = formGroupValue;\r\n } else if (Validation.isValidGuid(formGroupValue)) {\r\n content.data[schemaField.name]['iv'] = [formGroupValue];\r\n } else {\r\n content.data[schemaField.name]['iv'] = [];\r\n }\r\n } else if (schemaField.properties.fieldType === 'Boolean') {\r\n content.data[schemaField.name]['iv'] = formGroupValue === \"\" ? false : formGroupValue;\r\n } else if (schemaField.properties.editor === \"Date\" && schemaField.properties.fieldType === 'DateTime') {\r\n if (formGroupValue !== \"\") {\r\n const dateValue = new SquidexDate(formGroupValue).formatWithoutTime();\r\n if (dateValue === '') {\r\n content.data[schemaField.name]['iv'] = null;\r\n } else {\r\n content.data[schemaField.name]['iv'] = dateValue;\r\n }\r\n }\r\n }\r\n else if (schemaField.properties.fieldType === 'DateTime') {\r\n if (formGroupValue !== \"\") {\r\n const dateValue = new SquidexDate(formGroupValue).format();\r\n if (dateValue === '') {\r\n content.data[schemaField.name]['iv'] = null;\r\n } else {\r\n content.data[schemaField.name]['iv'] = dateValue;\r\n }\r\n }\r\n }\r\n else if (schemaField.properties.fieldType === \"Number\") {\r\n content.data[schemaField.name]['iv'] = Number(formGroupValue);\r\n } else if (schemaField.properties.fieldType === \"Assets\") {\r\n if (formGroupValue instanceof Array) {\r\n content.data[schemaField.name]['iv'] = formGroupValue;\r\n } else {\r\n content.data[schemaField.name]['iv'] = [];\r\n }\r\n\r\n } else if (schemaField.properties.editor === 'TextArea' && typeof CKEDITOR !== \"undefined\" && CKEDITOR && CKEDITOR.instances) {\r\n for (const instance in CKEDITOR.instances) {\r\n let textLang: string = CKEDITOR.instances[instance].element.$.nodeName;\r\n if (textLang.toLowerCase() === (schemaField.name).toLowerCase()) {\r\n content.data[schemaField.name]['iv'] = CKEDITOR.instances[instance].getData();\r\n }\r\n }\r\n } else {\r\n content.data[schemaField.name]['iv'] = formGroupValue;\r\n }\r\n\r\n } else if (schemaField.partitioning === 'language') {\r\n if (!content.data[schemaField.name]) {\r\n content.data[schemaField.name] = {};\r\n }\r\n\r\n availableLanguages.map(language => language.data.code.iv).forEach(language => {\r\n if (formGroup.value[`${schemaField.name}_${language}`] || formGroup.value[`${schemaField.name}_${language}`] == \"\") {\r\n if (schemaField.properties.fieldType === 'References' || (schemaField.properties.fieldType === 'String' && schemaField.properties.allowedValues && schemaField.properties.allowedValues.length > 0)) {\r\n if (formGroupValue instanceof Array) {\r\n content.data[schemaField.name][language] = formGroup.value[`${schemaField.name}_${language}`];\r\n } else if (Validation.isValidGuid(formGroup.value[`${schemaField.name}_${language}`])) {\r\n content.data[schemaField.name][language] = [formGroup.value[`${schemaField.name}_${language}`]];\r\n } else {\r\n content.data[schemaField.name][language] = [];\r\n }\r\n } else if (schemaField.properties.editor === 'TextArea' && typeof CKEDITOR !== \"undefined\" && CKEDITOR && CKEDITOR.instances) {\r\n for (const instance in CKEDITOR.instances) {\r\n let textLang: string = CKEDITOR.instances[instance].element.$.nodeName;\r\n if (textLang.toLowerCase() === (schemaField.name + '_' + language).toLowerCase()) {\r\n const val = content.data[schemaField.name][language];\r\n content.data[schemaField.name][language] = this.getTextAreaValueLocal(schemaField.name, language, val);\r\n }\r\n }\r\n } else {\r\n\r\n content.data[schemaField.name][language] = formGroup.value[`${schemaField.name}_${language}`];\r\n }\r\n }\r\n });\r\n }\r\n }\r\n return content;\r\n }\r\n\r\n static getTextAreaValueLocal(fieldName: string, language: string, value: string) {\r\n if (typeof CKEDITOR !== \"undefined\" && CKEDITOR && CKEDITOR.instances) {\r\n let fname = fieldName;\r\n\r\n if (language) {\r\n fname += '_' + language;\r\n }\r\n\r\n for (const instance in CKEDITOR.instances) {\r\n let textLang: string = CKEDITOR.instances[instance].element.$.nodeName;\r\n if (textLang.toLowerCase() === fname.toLowerCase()) {\r\n return CKEDITOR.instances[instance].getData();\r\n }\r\n }\r\n } else if (value) {\r\n return value;\r\n } else {\r\n return '';\r\n }\r\n return null;\r\n }\r\n\r\n\r\n\r\n\r\n}\r\n","export default \"\\r\\n \\r\\n
\\r\\n \\\"icon-4-black\\\"\\r\\n
\\r\\n
\\r\\n

{{ t(\\\"DASHBOARD_TITLE\\\") | async }}

\\r\\n

{{ siteName }}

\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\\"icon-4-black\\\"\\r\\n
\\r\\n
\\r\\n

{{ t(\\\"DASHBOARD_TITLE\\\") | async }}

\\r\\n

{{ siteName }}

\\r\\n
\\r\\n
\\r\\n\";","import { QueryEntity } from '@datorama/akita';\r\nimport { Content } from '../../squidex';\r\nimport { IBaseState } from './base.state';\r\nimport { BaseStore } from './base.store';\r\nimport { FilterPagination } from './filter.pagination';\r\nimport { Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport internal from 'node:stream';\r\n\r\nexport abstract class BaseQuery extends QueryEntity {\r\n\r\n protected constructor(protected store: BaseStore) {\r\n super(store);\r\n }\r\n\r\n getPaginateData(filter: FilterPagination): Observable {\r\n const index = this.getValue().storedIndex;\r\n const contents = [];\r\n\r\n return this.selectAll()\r\n .pipe(map(entities => {\r\n for (let i = filter.from; i < filter.to; i++) {\r\n if (entities.some(content => content.id === index[i])) {\r\n contents.push(entities.find(content => content.id === index[i]));\r\n }\r\n }\r\n return contents;\r\n }));\r\n }\r\n\r\n}\r\n","export class AppToken {\r\n static readonly MENU_SCHEMA_NAME = 'menu';\r\n static readonly MENU_ITEM_SCHEMA_NAME = 'menu-item';\r\n static readonly SITE_SETTING_SCHEMA_NAME = 'sitesetting';\r\n static readonly PAGE_CATEGORY_SCHEMA_NAME = 'pagecategory';\r\n static readonly PAGE_TYPE_SCHEMA_NAME = 'page-type';\r\n static readonly PAGE_SCHEMA_NAME = 'page';\r\n static readonly PAGE_CONTENT_SCHEMA_NAME = 'page-content';\r\n static readonly SCHEMA_PAGE_SCHEMA_NAME = 'schema-page';\r\n static readonly PAGE_FILTER_SCHEMA_NAME = 'page-filter';\r\n static readonly LAYOUT_SCHEMA_NAME = 'layout';\r\n static readonly RESOURCE_SCHEMA_NAME = 'resource';\r\n static readonly DEFAULT_LAYOUT_NAME = 'default';\r\n static readonly TEMPLATE_SCHEMA_NAME = 'template';\r\n static readonly SECTION_SCHEMA_NAME = 'section';\r\n static readonly SCRIPT_SCHEMA_NAME = 'html-script';\r\n static readonly STYLE_SCHEMA_NAME = 'html-style';\r\n static readonly REDIRECTION_SCHEMA_NAME = 'redirection';\r\n static readonly USER_SAVE_CULTURE_CODE: string = 'USER_SAVE_CULTURE_CODE';\r\n static readonly ENGLISH_CULTURE_CODE: string = 'en-CA';\r\n static readonly FRENCH_CULTURE_CODE: string = 'fr-CA';\r\n static readonly INPUT_DELAY_TIMESPAN: number = 1000;\r\n static readonly ISO_DATES_YEAR_MONTH: string = 'yyyy-MM';\r\n static readonly ISO_DATES_DATE: string = 'yyyy-MM-dd';\r\n static readonly ISO_DATES_DATE_TIME: string = 'yyyy-MM-dd hh:mm:ss';\r\n static readonly ISO_DATES_DATE_TIME_UPDATE: string = 'YYYY/MM/DD HH:mm:ss';\r\n static readonly ISO_DATES_TIME: string = 'hh:mm:ss';\r\n static readonly PAGES_PUBLISHED_ITEMS_PER_PAGE: number = 12;\r\n static readonly PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE: number = 12;\r\n static readonly PAGES_PUBLISHED_ITEMS_PER_PAGE_LIST: number = 10;\r\n static readonly PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE_LIST: number = 10;\r\n static readonly PAGES_UNPUBLISHED_ITEMS_PER_PAGE: number = 6;\r\n static readonly PAGES_UNPUBLISHED_CONTENTS_ITEMS_PER_PAGE: number = 6;\r\n static readonly ARTICLES_PUBLISHED_ITEMS_PER_PAGE: number = 9;\r\n static readonly ARTICLES_UNPUBLISHED_ITEMS_PER_PAGE: number = 3;\r\n static readonly CONTENTS_ITEMS_PER_REQUEST: number = 300;\r\n static readonly CONTENTS_ITEMS_PER_PAGE: number = 10000;\r\n static readonly SCHEMA_NAME_MAX_LEGTH: number = 40;\r\n static readonly ARTICLE_PAGE_SCHEMA_NAME = 'articlepage';\r\n static readonly APPLICATION_CURRENT_USER = 'current-user';\r\n}\r\n\r\nexport class AppSchemaCategory {\r\n static readonly SYSTEM_SCHEMAS = 'System-schemas';\r\n //static readonly GENERAL_SCHEMAS = 'general-schema';\r\n static readonly CONTACT_FORMS = 'Contact-forms';\r\n static readonly DEFAULT_SCHEMAS = 'Default-schemas';\r\n static readonly CONTENT_SCHEMAS = 'Content-schemas';\r\n static readonly SCHEMA_AS_A_PAGE = 'Schema-as-a-page';\r\n}\r\n\r\nclass Status {\r\n name: string;\r\n color: string;\r\n}\r\n\r\nexport class Statuses {\r\n static readonly PUBLISHED: Status = { name: 'Published', color: '#4bb958' }\r\n static readonly DRAFT: Status = { name: 'Draft', color: '#8091a5' }\r\n static readonly ARCHIVED: Status = { name: 'Archived', color: '#eb3142' }\r\n}\r\n\r\n\r\nexport class PreviewDevices {\r\n static readonly DESKTOP = { name: 'DESKTOP', width: 1080, height: 1920 }\r\n static readonly TABLET = { name: 'TABLET', width: 960, height: 1024 }\r\n static readonly PHONE = { name: 'PHONE', width: 640, height: 960 }\r\n}\r\n\r\nexport class FieldsName {\r\n static readonly CODE = 'code';\r\n static readonly ID = 'id';\r\n static readonly NAME = 'name';\r\n static readonly INDEX = 'index';\r\n static readonly PUBLISH_DATE_TIME = 'publishdatetime';\r\n static readonly DELETE_DATE_TIMEDE = 'deletedatetime';\r\n static readonly DELETED = 'deleted';\r\n static readonly PAGE_ID = 'pageid';\r\n static readonly PAGE = 'page';\r\n static readonly PAGE_TYPE = 'pageType';\r\n static readonly MENU_ITEMS = 'menuItems';\r\n static readonly TEMPLATE = 'template';\r\n static readonly BODY = 'body';\r\n static readonly CONTENT_TYPE = 'contenttype';\r\n static readonly CONTENT_ID = 'contentid';\r\n static readonly ISMODIFIED = 'ismodified';\r\n static readonly METATITLE = 'metatitle';\r\n static readonly TITLE = 'title';\r\n static readonly DESCRIPTION = 'description';\r\n static readonly ISSECURE = 'issecure';\r\n static readonly ISNOINDEX = 'isnoindex';\r\n static readonly ISACTIVE = 'isactive';\r\n static readonly PAGE_NAME = 'pageName';\r\n static readonly LAYOUT = 'layout';\r\n static readonly URL = 'url';\r\n static readonly PARENT_ID = 'parentid';\r\n static readonly META_DESCRIPTION = 'metaDescription';\r\n static readonly META_KEYWORDS = 'metaKeywords';\r\n static readonly THUMBNAIL = 'thumbnail';\r\n static readonly PRIORITY = 'priority';\r\n static readonly SCHEMA_NAME = 'schemaname';\r\n static readonly PARENT_MENU_ITEM = 'parentMenuItem'\r\n}\r\n\r\nexport class DefaultContents {\r\n static readonly DEFAULT_PAGE_TYPE_CODE = 'default';\r\n static readonly DEFAULT_MENU_CODE = 'default-menu';\r\n static readonly DEFAULT_SITE_SETTING_CODE = 'default';\r\n}\r\n\r\nexport class ClaimTypes {\r\n static readonly BOOL = 'bool';\r\n static readonly STRING = 'string';\r\n static readonly NUMBER = 'number';\r\n}\r\n\r\nexport class UserRoles {\r\n static readonly DEVELOPER = 'DEVELOPER';\r\n static readonly EDITOR = 'EDITOR';\r\n static readonly OWNER = 'OWNER';\r\n static readonly READER = 'READER';\r\n static readonly READWRITE = 'READWRITE';\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppToken } from './models/app-token';\r\nimport { config } from 'rxjs';\r\n\r\n// This represents our raw config from the server.\r\n// We could define a strongly-typed config class\r\n// that wraps the values from the server, but for\r\n// this simple demo, we won't bother with that.\r\nexport declare interface AppConfig { [key: string]: { [key: string]: any } }\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AppConfigProvider {\r\n private config: AppConfig;\r\n\r\n constructor(\r\n private readonly httpClient: HttpClient) { }\r\n\r\n loadConfig(): Promise {\r\n if (this.config) {\r\n return Promise.resolve(this.config);\r\n }\r\n const promise = this.httpClient.post('/api/o/config', {})\r\n .toPromise()\r\n .then(configUpdated => {\r\n this.config = configUpdated;\r\n return config;\r\n });\r\n return promise;\r\n }\r\n\r\n squidexAppIsCreated(): boolean {\r\n if (this.config) {\r\n return this.config.tenantData.isSquidexAppCreated as boolean;\r\n }\r\n throw (Error('app config is undefined'));\r\n }\r\n\r\n authIsEnabled(): boolean {\r\n if (this.config && typeof this.config.tenantData.authIsEnabled === \"boolean\") {\r\n return this.config.tenantData.authIsEnabled;\r\n }\r\n\r\n throw (Error('app config is undefined'));\r\n }\r\n\r\n publishVersion(): string {\r\n if (this.config && this.config.goLive.version) {\r\n return this.config.goLive.version;\r\n }\r\n\r\n throw (Error('golive version is undefined in appsetting'));\r\n }\r\n\r\n publishDate(): string {\r\n if (this.config && this.config.goLive.date) {\r\n return this.config.goLive.date;\r\n }\r\n\r\n throw (Error('golive date is undefined in appsetting'));\r\n }\r\n\r\n\r\n squidexDefaultSchemaIsCreated(): boolean {\r\n if (this.config) {\r\n return this.squidexAppIsCreated() && this.config.tenantData.isSquidexDefaultSchemaCreated as boolean;\r\n }\r\n throw (Error('app config is undefined'));\r\n }\r\n\r\n getAvailableLanguagesNames(): {} {\r\n const langNames = {};\r\n langNames[AppToken.ENGLISH_CULTURE_CODE] = 'English';\r\n langNames[AppToken.FRENCH_CULTURE_CODE] = 'Français';\r\n return langNames;\r\n }\r\n\r\n getAvailableLanguages(): string[] {\r\n return [AppToken.ENGLISH_CULTURE_CODE, AppToken.FRENCH_CULTURE_CODE];\r\n }\r\n\r\n getInfoTenantNotifications(languageCode: string): any {\r\n if (this.config && this.config.tenantNotificationData.infoNotification) {\r\n if (languageCode === AppToken.FRENCH_CULTURE_CODE) {\r\n return this.config.tenantNotificationData.infoNotification.tenantNotifications_fr;\r\n } else if (languageCode === AppToken.ENGLISH_CULTURE_CODE) {\r\n return this.config.tenantNotificationData.infoNotification.tenantNotifications_en;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n getAlertTenantNotifications(languageCode: string): any {\r\n if (this.config && this.config.tenantNotificationData.alertNotification) {\r\n if (languageCode === AppToken.FRENCH_CULTURE_CODE) {\r\n return this.config.tenantNotificationData.alertNotification.tenantNotifications_fr;\r\n } else if (languageCode === AppToken.ENGLISH_CULTURE_CODE) {\r\n return this.config.tenantNotificationData.alertNotification.tenantNotifications_en;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n getAccessTokenGoogleAnalytics() {\r\n if (this.config && this.config.googleAnalyticAccessToken.result) {\r\n return this.config.googleAnalyticAccessToken;\r\n }\r\n return null;\r\n //throw (Error('googleAnalyticAccessToken is undefined'));\r\n }\r\n\r\n getDefaultCulture(): string {\r\n if (this.config) {\r\n return this.config.tenantData.defaultCulture;\r\n }\r\n throw (Error('app config is undefined'));\r\n }\r\n\r\n getBearerToken(): string {\r\n if (this.config) {\r\n return this.config.tenantData.bearerToken;\r\n }\r\n throw (Error('app config is undefined'));\r\n }\r\n\r\n getApiEndpoint(): string {\r\n if (this.config) {\r\n return this.config.tenantData.endPoint;\r\n }\r\n throw (Error('app config is undefined'));\r\n }\r\n\r\n getEndpointAppName(): string {\r\n if (this.config) {\r\n return this.config.tenantData.endPointAppName;\r\n }\r\n throw (Error('app config is undefined'));\r\n }\r\n\r\n getAssetsBaseUrl(): string {\r\n return `${this.getApiEndpoint().toLowerCase()}/api/apps/${this.getEndpointAppName().toLowerCase()}/assets`;\r\n }\r\n\r\n getContentBaseUrl(): string {\r\n return `${this.getApiEndpoint().toLowerCase()}/api/content/${this.getEndpointAppName().toLowerCase()}`;\r\n }\r\n\r\n // Asset path when updating\r\n getSchemaBaseUrl(): string {\r\n return `${this.getApiEndpoint().toLowerCase()}/api/apps/${this.getEndpointAppName().toLowerCase()}`;\r\n }\r\n\r\n // Asset path when displaying in HTML page\r\n getAssetsPathUrl(): string {\r\n return `${this.getApiEndpoint().toLowerCase()}/api/assets/${this.getEndpointAppName().toLowerCase()}`;\r\n }\r\n\r\n // All languages path\r\n getLanguagePathUrl(): string {\r\n return `${this.getApiEndpoint().toLowerCase()}/api/languages/`;\r\n }\r\n\r\n\r\n // Roles path\r\n getRolesPathUrl(): string {\r\n return `${this.getApiEndpoint().toLowerCase()}/api/apps/${this.getEndpointAppName().toLowerCase()}/roles/`;\r\n }\r\n\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJmaWVsZC12YWxpZGF0aW9uLmNvbXBvbmVudC5jc3MifQ== */\";","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageTitleService {\r\n\r\n private title = new BehaviorSubject(null);\r\n\r\n public key: string;\r\n\r\n setTitle(value: string) {\r\n this.title.next(value);\r\n }\r\n\r\n getTitle(): Observable {\r\n return this.title;\r\n }\r\n\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { BaseComponent } from '../../base/base-component.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'field-validation',\r\n templateUrl: './field-validation.component.html',\r\n styleUrls: ['./field-validation.component.css']\r\n})\r\nexport class FieldValidation extends BaseComponent implements OnInit {\r\n\r\n @Input() control: FormControl;\r\n @Input() name: string;\r\n\r\n constructor(translateService: TranslateService) {\r\n super(translateService);\r\n this.setTranslateContext('FieldValidation');\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, Input, OnChanges, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';\r\nimport { BaseComponent } from '../../../base/base-component.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Schema, Content, PersistenceStorageService, FilterPagination, DynamicContentSchemaFactory, AuthenticationService } from '../../../services';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Observable, EMPTY, forkJoin } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n/**\r\n * If this component has to become more complex (example: you need a lazy loading process for the listings)\r\n * Advice: make a smart component of this, then create 2 render component for each listing\r\n * It will make you an easier futur\r\n */\r\n\r\n@Component({\r\n selector: 'app-contents-listing',\r\n templateUrl: './contents-listing.component.html',\r\n styleUrls: ['./contents-listing.component.css']\r\n})\r\nexport class ContentsListingComponent extends BaseComponent implements OnInit, OnChanges {\r\n\r\n @Input()\r\n schemaDefinition: Schema;\r\n\r\n @Input()\r\n selectedContent: string;\r\n\r\n @Input()\r\n selectableContents: Content[];\r\n\r\n @Input()\r\n baseUrl: string;\r\n\r\n @Input()\r\n filter: string;\r\n\r\n @Input()\r\n contentCount: number;\r\n\r\n @Input()\r\n currentPageNumber: number;\r\n\r\n @Input()\r\n paginateSize: number;\r\n\r\n @Input()\r\n maxSize: number;\r\n\r\n @Input()\r\n orderBySwitch: boolean;\r\n\r\n @Output()\r\n searchFilter: EventEmitter = new EventEmitter();\r\n\r\n alphaOrder = false;\r\n allContents = false;\r\n reverseOrder = false;\r\n\r\n @ViewChild(\"searchbar\", null)\r\n searchBar: ElementRef;\r\n\r\n alphabet = [\r\n '0', '1', '2',\r\n '3', '4', '5',\r\n '6', '7', '8',\r\n '9',\r\n 'a', 'b', 'c',\r\n 'd', 'e', 'f',\r\n 'g', 'h', 'i',\r\n 'j', 'k', 'l',\r\n 'm', 'n', 'o',\r\n 'p', 'q', 'r',\r\n 's', 't', 'u',\r\n 'v', 'w', 'x',\r\n 'y', 'z'\r\n ];\r\n\r\n paginateListContents: Content[] = [];\r\n\r\n contentDictionary = {};\r\n\r\n searchFormGroup: FormGroup;\r\n isSearching = false;\r\n\r\n searchResult: Content[] = [];\r\n\r\n alphaOrderKey: string;\r\n\r\n filterValue: string = '';\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n userIsReadWrite: boolean;\r\n userIsReader: boolean;\r\n\r\n\r\n constructor(\r\n private readonly route: ActivatedRoute,\r\n readonly router: Router,\r\n translateService: TranslateService,\r\n private readonly contentFacadeFactory: DynamicContentSchemaFactory,\r\n private readonly persistenceStorageService: PersistenceStorageService,\r\n private readonly authenticationService: AuthenticationService\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('ContentsListingComponent');\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.userIsOwner = this.authenticationService.userHasRole(\"Owner\");\r\n this.userIsDev = this.authenticationService.userHasRole(\"Developer\");\r\n this.userIsEditor = this.authenticationService.userHasRole(\"Editor\");\r\n this.userIsReadWrite = this.authenticationService.userHasRole(\"ReadWrite\");\r\n this.userIsReader = this.authenticationService.userHasRole(\"Reader\");\r\n\r\n if (!this.paginateSize) {\r\n this.paginateSize = AppToken.CONTENTS_ITEMS_PER_PAGE;\r\n }\r\n\r\n this.initSearchFormGroup();\r\n\r\n this.alphaOrderKey = JSON.stringify(this.baseUrl + 'alphaOrder');\r\n\r\n const storedOrder = this.persistenceStorageService.get(this.alphaOrderKey);\r\n\r\n this.updateStoredOrderList();\r\n\r\n if (storedOrder) {\r\n this.alphaOrder = true;\r\n }\r\n if (this.alphaOrder) {\r\n this.listToggle(this.alphaOrder);\r\n }\r\n }\r\n\r\n updateStoredOrderList() {\r\n this.contentDictionary = {};\r\n this.selectableContents.forEach(content => {\r\n const firstLetter = content.data.code.iv[0].toLowerCase();\r\n if (!this.contentDictionary[firstLetter]) {\r\n this.contentDictionary[firstLetter] = [];\r\n }\r\n this.contentDictionary[firstLetter].push(content);\r\n });\r\n\r\n //sort alphabetically each letter\r\n for (const letter in this.contentDictionary) {\r\n this.contentDictionary[letter].sort((a, b) => {\r\n if (a.data.code.iv.toUpperCase() < b.data.code.iv.toUpperCase()) {\r\n return -1;\r\n }\r\n if (a.data.code.iv.toUpperCase() > b.data.code.iv.toUpperCase()) {\r\n return 1;\r\n }\r\n return 0;\r\n });\r\n }\r\n\r\n }\r\n\r\n getContents(contentFromPage: number, contentCount: number | null) {\r\n this.currentPageNumber = contentFromPage;\r\n this.paginateSize = contentCount;\r\n this.launchResearch();\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.filter) {\r\n this.searchBar.nativeElement.value = this.filter;\r\n this.filterValue = this.filter;\r\n }\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n }\r\n\r\n ngOnChanges() {\r\n this.selectedContent = this.route.snapshot.paramMap.get('code');\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n }\r\n\r\n //getContentDefinition(contentName: string): Observable {\r\n // return this.dynamicContentFacto.getDynamicContentFacade(contentName).getContentDefinition();\r\n //}\r\n\r\n isOpenLetter(letter: string): boolean {\r\n if (this.selectedContent && this.selectedContent.length > 0 && this.selectedContent.charAt(0).toLowerCase() === letter) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n initSearchFormGroup() {\r\n const formControl = new FormControl();\r\n const subscription = formControl\r\n .valueChanges\r\n .pipe(debounceTime(AppToken.INPUT_DELAY_TIMESPAN))\r\n .pipe(distinctUntilChanged())\r\n .subscribe(result => {\r\n const t = result as string;\r\n this.launchResearch(t.toLowerCase());\r\n });\r\n this.searchFormGroup = new FormGroup({ search: formControl });\r\n //test\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n launchResearch(filterValue?: string): void {\r\n\r\n if (filterValue) {\r\n this.currentPageNumber = 1;\r\n }\r\n\r\n const filter = new FilterPagination();\r\n\r\n if (this.paginateSize) {\r\n filter.from = (this.currentPageNumber - 1) * this.paginateSize;\r\n filter.to = filter.from + this.paginateSize;\r\n } else {\r\n filter.from = 0;\r\n filter.to = null;\r\n }\r\n\r\n const ordering = this.reverseOrder ? 'descending' : 'ascending';\r\n filter.orderBy = `data.index.iv ascending,data.code.iv ${ordering}`\r\n filter.filterObject = this.getSearchObject();\r\n\r\n this.filterValue = filterValue;\r\n\r\n this.searchFilter.emit(filter);\r\n }\r\n\r\n getSearchObject(): object {\r\n const filter = (this.searchBar !== undefined && this.searchBar.nativeElement !== undefined && this.searchBar.nativeElement.value !== null) ? this.searchBar.nativeElement.value : EMPTY;\r\n const oSearch = {\r\n or:\r\n [\r\n {\r\n path: 'data.code.iv',\r\n op: 'contains',\r\n value: filter\r\n }\r\n ]\r\n\r\n }\r\n return oSearch;\r\n }\r\n\r\n redirect(contentName: string) {\r\n if (!this.searchBar.nativeElement.value && this.currentPageNumber <= 1) {\r\n this.router.navigateByUrl(`${this.baseUrl}/${contentName}`);\r\n } else {\r\n this.router.navigate([`${this.baseUrl}/${contentName}`, { filter: this.searchBar.nativeElement.value, page: this.currentPageNumber }]);\r\n }\r\n }\r\n\r\n redirectBase() {\r\n if (this.baseUrl === '/app-resource') {\r\n this.router.navigateByUrl('resource');\r\n } else {\r\n this.router.navigateByUrl(`${this.baseUrl}`);\r\n }\r\n }\r\n\r\n listToggle(isAlpha: boolean) {\r\n this.alphaOrder = isAlpha;\r\n\r\n this.persistenceStorageService.set(this.alphaOrderKey, this.alphaOrder);\r\n\r\n if (this.alphaOrder) {\r\n this.getContents(1, AppToken.CONTENTS_ITEMS_PER_REQUEST);\r\n this.updateStoredOrderList();\r\n } else {\r\n this.getContents(1, AppToken.CONTENTS_ITEMS_PER_PAGE);\r\n }\r\n\r\n }\r\n\r\n toggleAll(allContents: boolean) {\r\n this.allContents = allContents;\r\n\r\n this.reverseOrder = !this.reverseOrder\r\n\r\n if (this.allContents) {\r\n this.getContents(1, AppToken.CONTENTS_ITEMS_PER_REQUEST);\r\n } else {\r\n this.getContents(1, AppToken.CONTENTS_ITEMS_PER_PAGE);\r\n }\r\n }\r\n\r\n updatePaginateList($event: any): void {\r\n this.currentPageNumber = $event.page;\r\n this.paginateSize = $event.itemsPerPage;\r\n this.launchResearch();\r\n }\r\n\r\n //When you drop an elelemnt of the list, come here\r\n pageContentDrop(event) {\r\n if (this.filterValue === \"\" && !this.alphaOrder) {\r\n if (this.orderBySwitch == null) {\r\n console.warn(\"orderBySwitch is not set, using normal ordering by default\");\r\n this.normalReorder(event);\r\n } else if (!this.orderBySwitch) {\r\n this.normalReorder(event);\r\n } else {\r\n this.reorderBySwitch(event);\r\n }\r\n }\r\n }\r\n\r\n normalReorder(event) {\r\n const temp: Content[] = this.clone(this.selectableContents);\r\n const contentFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(this.schemaDefinition.name);\r\n const maxIndex = event['previousIndex'] > event['currentIndex'] ? event['previousIndex'] : event['currentIndex'];\r\n const minIndex = event['previousIndex'] < event['currentIndex'] ? event['previousIndex'] : event['currentIndex'];\r\n const obsList: Observable[] = [];\r\n\r\n //update content pos in list\r\n this.selectableContents = this.moveArray(this.selectableContents, event['previousIndex'], event['currentIndex']);\r\n\r\n //Get content tu update\r\n for (let i = minIndex; i < maxIndex; i++) {\r\n const contentId = temp[i].id;\r\n obsList.push(contentFacade.get(contentId, true));\r\n }\r\n\r\n //update contents in squidex\r\n this.subscriptions = this.subscriptions.concat(forkJoin(obsList).subscribe(() => {\r\n for (let i = minIndex; i <= maxIndex; i++) {\r\n const pc = this.selectableContents[i];\r\n const pcData = this.clone(pc.data);\r\n this.dParser.putData(pcData, 'index', i);\r\n contentFacade.update(pc.id, pcData).subscribe();\r\n }\r\n }));\r\n }\r\n\r\n cancelResearch() {\r\n this.isSearching = false;\r\n this.searchBar.nativeElement.value = \"\";\r\n this.listToggle(false);\r\n }\r\n\r\n //https://stackoverflow.com/questions/5306680/move-an-array-element-from-one-array-position-to-another\r\n // Maybe create a tool script for arrays ?\r\n moveArray(array: any[], from: number, to: number): any[] {\r\n array.splice(to, 0, array.splice(from, 1)[0]);\r\n return array;\r\n }\r\n\r\n //[a,b,c,d] if you move a => c become [c,b,a,d]\r\n //Can be call defining [orderBySwitch] = \"false\"\r\n reorderBySwitch(event) {\r\n const contentsOrdered: Content[] = this.clone(this.selectableContents);\r\n const temp = contentsOrdered[event['previousIndex']];\r\n contentsOrdered[event['previousIndex']] = contentsOrdered[event['currentIndex']];\r\n contentsOrdered[event['currentIndex']] = temp;\r\n this.selectableContents = contentsOrdered;\r\n const contentFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(this.schemaDefinition.name);\r\n\r\n // TODO: this has to be improve, there is no point to update every content here, just update the 2 that just changed\r\n for (let i = 0; i < contentsOrdered.length; i++) {\r\n const contentId = contentsOrdered[i].id;\r\n const sub = contentFacade.get(contentId, true).subscribe(pc => {\r\n const pcData = this.clone(pc.data);\r\n this.dParser.putData(pcData, 'index', i);\r\n contentFacade.update(contentId, pcData).subscribe();\r\n this.subscriptions.push(sub);\r\n });\r\n }\r\n }\r\n}\r\n","export default \"
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\";","import { DynamicSchemaModel } from './dynamic-schema.model';\r\nimport { Query } from '@datorama/akita';\r\nimport { DynamicSchemaStore } from './dynamic-schema.store';\r\n\r\nexport class DynamicSchemaQuery extends Query {\r\n constructor(store: DynamicSchemaStore) {\r\n super(store);\r\n\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { SiteSettingStore } from './site-setting.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SiteSettingQuery extends BaseQuery {\r\n\r\n constructor(store: SiteSettingStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n","import { SchemaMetadataStore } from './schema-metadata.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SchemaMetadataQuery extends BaseQuery {\r\n constructor(store: SchemaMetadataStore) {\r\n super(store);\r\n }\r\n}\r\n","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\\"image\\\"\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n {{ t(\\\"DRAG_DROP\\\") | async }}
\\r\\n {{ t(\\\"ADD_FILE\\\") | async }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export { Validation } from './validation.tool';\r\nexport { SquidexTool } from './squidex.tool';\r\nexport { StringTool } from './string.tool';\r\n","import { Field, Schema } from \"../../services/squidex/index\";\r\nimport { SchemaMetadataModel } from \"../../services/akita/schema-metadata-schema/schema-metadata.model\";\r\n\r\nexport class FieldReferenceModel {\r\n field: Field;\r\n schemaId : string;\r\n schemaDefinition: Schema;\r\n schemaMetadata: SchemaMetadataModel;\r\n selectedValue : any;\r\n referenceFieldValues: any;\r\n selectedContent: any;\r\n control : any;\r\n}\r\n","export class FieldProperty {\r\n defaultValue: string;\r\n editor: string;\r\n editorUrl: string;\r\n fieldType: string;\r\n hints: string;\r\n inlineEditable: boolean;\r\n isListField: boolean;\r\n isReferenceField: boolean;\r\n isRequired: boolean;\r\n isUnique: boolean;\r\n label: string;\r\n maxLength: number;\r\n minLength: number;\r\n pattern: string;\r\n patternMessage: string;\r\n placeholder: string;\r\n mustBeImage: boolean;\r\n allowedExtensions: string[];\r\n allowDuplicates: boolean;\r\n resolveFirst: boolean;\r\n resolveImage: boolean;\r\n minItems: number;\r\n maxItems: number;\r\n allowedValues: string[];\r\n \r\n schemaIds: string[];\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppToken } from '../../../models/app-token';\r\nimport { LayoutService } from './layout.service';\r\nimport { LayoutStore } from './layout.store';\r\nimport { LayoutQuery } from './layout.query';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class LayoutFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly layoutService: LayoutService,\r\n layoutStore: LayoutStore,\r\n layoutQuery: LayoutQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(layoutService,\r\n layoutStore,\r\n layoutQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppToken.LAYOUT_SCHEMA_NAME),\r\n translateService,\r\n AppToken.LAYOUT_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { SiteSettingStore } from './site-setting.store';\r\nimport { SiteSettingQuery } from './site-setting.query';\r\nimport { Observable, forkJoin, of } from 'rxjs';\r\nimport { SiteSettingService } from './site-setting.service';\r\nimport { map, flatMap, find } from 'rxjs/operators';\r\nimport { SiteSettingModel } from './site-setting.model';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppToken } from \"../../../models/app-token\";\r\nimport { LanguageModel } from \"../language-schema/language.model\";\r\nimport { LanguageFacade } from '../language-schema/language.facade';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SiteSettingFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly siteSettingService: SiteSettingService,\r\n siteSettingStore: SiteSettingStore,\r\n siteSettingQuery: SiteSettingQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n private languageFacade: LanguageFacade,\r\n translateService: TranslateService) {\r\n super(siteSettingService,\r\n siteSettingStore,\r\n siteSettingQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppToken.SITE_SETTING_SCHEMA_NAME),\r\n translateService,\r\n AppToken.SITE_SETTING_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n\r\n private initializeSiteSetting(): Observable {\r\n return forkJoin(\r\n this.siteSettingService.getFirstContent(),\r\n this.getSchema())\r\n .pipe(\r\n map(([firstContent, schema]) => {\r\n this.getStore().add(firstContent);\r\n this.getStore().update({ totalCount: 1 });\r\n this.getStore().update({ schema: schema });\r\n return firstContent;\r\n })\r\n );\r\n }\r\n\r\n selectFirst(): Observable {\r\n if (!this.getQuery().hasEntity()) {\r\n return this.initializeSiteSetting();\r\n } else {\r\n return this.getQuery().selectFirst();\r\n }\r\n }\r\n\r\n getSiteLanguages(siteSettingModel: SiteSettingModel = null): Observable {\r\n if (siteSettingModel) {\r\n return this.languageFacade.getLanguages(siteSettingModel.data.language.iv, 'data/index/iv');\r\n }\r\n const languages$ = this.getValidLanguage();\r\n return languages$.pipe(flatMap(languages => {\r\n return this.languageFacade.getLanguages(languages, 'data/index/iv');\r\n }));\r\n }\r\n\r\n getValidLanguage(): Observable {\r\n return this.selectFirst().pipe(map(siteSetting => {\r\n return siteSetting.data.language.iv;\r\n }));\r\n }\r\n\r\n getSiteDefaultLanguage(): Observable {\r\n return this.getSiteLanguages()\r\n .pipe(map(languages => languages\r\n .find(language => language.data.isdefault && language.data.isdefault.iv === true)));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { DynamicSchemaFacade } from './dynamic-schema/dynamic-schema.facade';\r\nimport { SchemasFactory, Schema } from '../squidex';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class DynamicSchemaFactory {\r\n\r\n constructor(\r\n public readonly schemasFactory: SchemasFactory,\r\n private readonly translateService: TranslateService) { }\r\n\r\n getDynamicSchemaFacade(schemaName: string): DynamicSchemaFacade {\r\n return new DynamicSchemaFacade(schemaName, this.schemasFactory, this.translateService);\r\n }\r\n\r\n hardDeleteSchema(id: string): Promise {\r\n return this.schemasFactory.hardDeleteSchema(id).then(d => {\r\n this.schemasFactory.reloadSchemas = true;\r\n });\r\n }\r\n\r\n getAllSchemaMetaData(): Observable {\r\n return this.schemasFactory.getAllSchemas();\r\n }\r\n\r\n getSchemasMetadataByCategory(category: string): Observable {\r\n return this.schemasFactory.getAllSchemas()\r\n .pipe(\r\n map(schemas => schemas.filter(schema => schema.category === category))\r\n );\r\n }\r\n}\r\n","import { EFieldType } from './field-type.enum';\r\nimport { Field } from '../../../services';\r\n\r\nexport class FieldTool {\r\n\r\n static readonly basicLocalizableProperties = ['label', 'isRequiredMessage'];\r\n static readonly basicUnlocalizableProperties = ['isRequired'];\r\n\r\n\r\n static readonly inputLocalizableProperties = ['isUniqueMessage',\r\n 'isMinLengthMessage',\r\n 'isMaxLengthMessage',\r\n 'patternMessage',\r\n 'placeholder',\r\n 'defaultValue'];\r\n static readonly inputUnlocalizableProperties = ['isUnique', 'minLength', 'maxLength', 'pattern'];\r\n\r\n static readonly fileLocalizableProperties = ['mustBeImageMessage', 'allowedExtensionMessage'];\r\n static readonly fileUnlocalizableProperties = ['mustBeImage', 'allowedExtensions', 'minItems', 'maxItems'];\r\n\r\n static readonly textAreaLocalizableProperties = ['placeholder', 'defaultValue'];\r\n static readonly textAreaUnlocalizableProperties = [];\r\n\r\n\r\n static readonly mailLocalizableProperties = ['placeholder'];\r\n static readonly mailUnlocalizableProperties = [];\r\n\r\n static readonly radioLocalizableProperties = [];\r\n static readonly radioUnlocalizableProperties = ['schemaIds'];\r\n\r\n static readonly selectLocalizableProperties = [];\r\n static readonly selectUnlocalizableProperties = ['schemaIds'];\r\n\r\n static readonly validPatterns = {\r\n 'email': '^[a-zA-Z0-9.!#$%\\u0026\\u2019*\\u002B\\\\/=?^_\\u0060{|}~-]\\u002B@[a-zA-Z0-9-]\\u002B(?:.[a-zA-Z0-9-]\\u002B)*$',\r\n\r\n 'phone': '^\\\\(*\\\\\\u002B*[1-9]{0,3}\\\\)*-*[1-9]{0,3}[-. /]*\\\\(*[2-9]\\\\d{2}\\\\)*[-. /]*\\\\d{3}[-. /]*\\\\d{4} *e*x*t*\\\\.* *\\\\d{0,4}$',\r\n\r\n 'slug': '^[a-z0-9]\\u002B(\\\\-[a-z0-9]\\u002B)*$',\r\n\r\n 'url': '^(?:http(s)?:\\\\/\\\\/)?[\\\\w.-]\\u002B(?:\\\\.[\\\\w\\\\.-]\\u002B)\\u002B[\\\\w\\\\-\\\\._~:\\\\/?#%[\\\\]@!\\\\$\\u0026\\u0027\\\\(\\\\)\\\\*\\\\\\u002B,;=.]\\u002B$',\r\n }\r\n\r\n static generateSquidexValidField(fieldType: EFieldType, isLocalized = false): Field {\r\n const field = new Field();\r\n\r\n switch (fieldType) {\r\n case EFieldType.INPUT:\r\n field.properties.fieldType = 'String';\r\n field.properties.editor = 'Input';\r\n break;\r\n case EFieldType.FILE:\r\n field.properties.fieldType = 'Assets';\r\n field.properties.editor = 'Import';\r\n break;\r\n case EFieldType.TEXTAREA:\r\n field.properties.fieldType = 'String';\r\n field.properties.editor = 'TextArea';\r\n break;\r\n case EFieldType.CHECKBOX:\r\n field.properties.fieldType = 'Boolean';\r\n field.properties.editor = 'Checkbox';\r\n break;\r\n case EFieldType.RADIO:\r\n field.properties.fieldType = 'References';\r\n field.properties.editor = 'List';\r\n break;\r\n case EFieldType.SELECT:\r\n field.properties.fieldType = 'References';\r\n field.properties.editor = 'Dropdown';\r\n break;\r\n case EFieldType.SELECT_MULTIPLE:\r\n field.properties.fieldType = 'References';\r\n field.properties.editor = 'Checkboxes';\r\n break;\r\n case EFieldType.DATE:\r\n field.properties.fieldType = 'DateTime';\r\n field.properties.editor = 'Date';\r\n break;\r\n case EFieldType.MAIL:\r\n field.properties.pattern = '^[a-zA-Z0-9.!#$%&’*+\\/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$';\r\n field.properties.fieldType = 'String';\r\n field.properties.editor = 'Input';\r\n break;\r\n case EFieldType.ORDONNABLE_SELECT_MULTIPLE:\r\n field.properties.fieldType = 'References';\r\n field.properties.editor = 'Tags';\r\n break;\r\n }\r\n\r\n field.properties.inlineEditable = false;\r\n field.properties.isRequired = false;\r\n field.properties.isUnique = false;\r\n\r\n if (isLocalized) {\r\n field.partitioning = 'language';\r\n } else {\r\n field.partitioning = 'invariant';\r\n }\r\n\r\n return field;\r\n }\r\n\r\n static getUnlocalizableFieldProperties(fieldType: EFieldType): string[] {\r\n let unlocalizableProperties = this.basicUnlocalizableProperties;\r\n\r\n switch (fieldType) {\r\n case EFieldType.INPUT:\r\n unlocalizableProperties = unlocalizableProperties.concat(this.inputUnlocalizableProperties);\r\n break;\r\n case EFieldType.FILE:\r\n unlocalizableProperties = unlocalizableProperties.concat(this.fileUnlocalizableProperties);\r\n break;\r\n case EFieldType.RADIO:\r\n unlocalizableProperties = unlocalizableProperties.concat(this.radioUnlocalizableProperties);\r\n break;\r\n case EFieldType.SELECT:\r\n unlocalizableProperties = unlocalizableProperties.concat(this.selectUnlocalizableProperties);\r\n break;\r\n case EFieldType.SELECT_MULTIPLE:\r\n unlocalizableProperties = unlocalizableProperties.concat(this.selectUnlocalizableProperties);\r\n break;\r\n case EFieldType.ORDONNABLE_SELECT_MULTIPLE:\r\n unlocalizableProperties = unlocalizableProperties.concat(this.selectUnlocalizableProperties);\r\n break;\r\n\r\n }\r\n\r\n return unlocalizableProperties;\r\n }\r\n\r\n\r\n static getLocalizableFieldProperties(fieldType: EFieldType): string[] {\r\n let properties = this.basicLocalizableProperties;\r\n\r\n switch (fieldType) {\r\n case EFieldType.INPUT:\r\n properties = properties.concat(this.inputLocalizableProperties);\r\n break;\r\n\r\n case EFieldType.TEXTAREA:\r\n properties = properties.concat(this.textAreaLocalizableProperties);\r\n break;\r\n\r\n case EFieldType.FILE:\r\n properties = properties.concat(this.fileLocalizableProperties);\r\n break;\r\n\r\n case EFieldType.MAIL:\r\n properties = properties.concat(this.mailLocalizableProperties);\r\n break;\r\n }\r\n\r\n return properties;\r\n }\r\n\r\n\r\n static getTypeFromField(field: Field): EFieldType {\r\n\r\n if (field.properties.fieldType === 'Assets') {\r\n return EFieldType.FILE;\r\n }\r\n\r\n switch (field.properties.editor) {\r\n case 'Input':\r\n if (field.properties.pattern === '^[a-zA-Z0-9.!#$%&’*+\\/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$') {\r\n return EFieldType.MAIL;\r\n }\r\n else {\r\n return EFieldType.INPUT;\r\n }\r\n case 'TextArea':\r\n return EFieldType.TEXTAREA;\r\n case 'Checkbox':\r\n return EFieldType.CHECKBOX;\r\n case 'List':\r\n return EFieldType.RADIO;\r\n case 'Dropdown':\r\n if(field.properties.fieldType == \"String\" && field.properties.allowedValues && field.properties.allowedValues.length > 0) {\r\n return EFieldType.STRING_SELECT;\r\n }\r\n return EFieldType.SELECT;\r\n case 'Checkboxes':\r\n return EFieldType.SELECT_MULTIPLE;\r\n case 'Date':\r\n return EFieldType.DATE;\r\n case 'Tags':\r\n return EFieldType.ORDONNABLE_SELECT_MULTIPLE;\r\n case 'Html':\r\n return EFieldType.MONACO_HTML;\r\n default:\r\n return EFieldType.DATE;\r\n }\r\n }\r\n\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { ContentFactory } from '../squidex/factories/content.factory';\r\nimport { DynamicContentSchemaFacade } from './dynamic-content-schema/dynamic-content.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from './dynamic-schema.factory';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class DynamicContentSchemaFactory {\r\n\r\n constructor(\r\n private readonly contentFactory: ContentFactory,\r\n private readonly dynamicSchemaFacto: DynamicSchemaFactory,\r\n private readonly translateService: TranslateService) { }\r\n\r\n getDynamicContentSchemaFacade(schemaName: string): DynamicContentSchemaFacade {\r\n return new DynamicContentSchemaFacade(schemaName,\r\n this.contentFactory,\r\n this.dynamicSchemaFacto,\r\n this.translateService);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { ContentFactory, ContentList } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SchemaMetadataService extends BaseService {\r\n constructor(contentFactory: ContentFactory) {\r\n super('schemametadata', contentFactory);\r\n }\r\n\r\n getByCategory(category: string): Observable {\r\n this.initialize();\r\n return this.contentService.findContent(`?$filter=data/deleted/iv ne true and data/category/iv eq '${category}'`);\r\n }\r\n\r\n\r\n getAll(): Observable {\r\n this.initialize();\r\n return this.contentService.findContent(``);\r\n }\r\n\r\n\r\n getBySchemaId(id: string): Observable {\r\n this.initialize();\r\n return this.contentService.findContent(`?$filter=data/schemaid/iv eq '${id}'`);\r\n }\r\n}\r\n","export default \"
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
{{ tc(\\\"MEDIATECH\\\") | async }}
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\";","import { SquidexDate } from \"../services\";\r\n\r\nexport class SquidexTool {\r\n\r\n public sanitizeForUniqueName(name: string) {\r\n return this.cleanString(name);\r\n }\r\n\r\n public firstUpperSnakeCase(str: string) {\r\n if (!str) {\r\n return '';\r\n } else {\r\n let result = str\r\n .match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g)\r\n .map(x => x.toLowerCase())\r\n .join('_');\r\n return str.charAt(0).toUpperCase() + result.slice(1);\r\n }\r\n }\r\n\r\n // force lowercase and allow hyphen (or not)\r\n public makeSlug(str: string, noHyphen: boolean = false) {\r\n str = str.toLowerCase();\r\n const replaceChar = noHyphen ? '' : '-';\r\n str = str.replace(/[^a-z0-9]+/g, replaceChar);\r\n str = str.replace(/^-+|-+$/g, '');\r\n return str;\r\n }\r\n\r\n // uppercase 1st char, remove spaces and unnecessary characters. don't force underscore but allow it\r\n public cleanString(str: string) {\r\n if (!str) {\r\n return '';\r\n } else {\r\n let result = str.replace(/[^a-zA-Z0-9_]+/g, \"\");\r\n return result.charAt(0).toUpperCase() + result.slice(1);\r\n }\r\n }\r\n\r\n public dateStringToUtc(date: string) {\r\n const dt = new Date(date);\r\n return new SquidexDate(dt).formatUtc().slice(0,-5) + 'Z';\r\n }\r\n\r\n public utcToDateString(date: string) {\r\n const dt = new Date(date);\r\n\r\n return dt.getFullYear() +\r\n '-' + this.pad(dt.getMonth() + 1) +\r\n '-' + this.pad(dt.getDate()) +\r\n 'T' + this.pad(dt.getHours()) +\r\n ':' + this.pad(dt.getMinutes()) +\r\n ':' + this.pad(dt.getSeconds()) +\r\n 'Z';\r\n }\r\n\r\n private pad(number) {\r\n if (number < 10) {\r\n return '0' + number;\r\n }\r\n return number;\r\n }\r\n\r\n}\r\n","export default \".btn-secondary {\\n color: #fff;\\n background-color: #bababa !important;\\n border-color: #bababa !important;\\n}\\n\\n.btn-secondary:hover {\\n background-color: #a3a3a3 !important;\\n}\\n\\n.show > .btn-secondary.dropdown-toggle {\\n color: #fff;\\n background-color: #bababa !important;\\n border-color: #bababa !important;\\n}\\n\\n.show > .btn-secondary.dropdown-toggle:hover {\\n background-color: #a3a3a3 !important;\\n}\\n\\n.btn-group > .btn-group:not(:first-child) {\\n margin-left: -2px;\\n /*width: 151px;*/\\n height: 45px;\\n cursor: pointer;\\n}\\n\\n.dropdown-item {\\n padding: .25rem 0 !important;\\n}\\n\\n.mode-draft-checkbox {\\n height: 10px;\\n margin-left: auto !important;\\n padding: 0;\\n position: relative;\\n bottom: 40px;\\n}\\n\\n.mode-draft-checkbox label {\\n color: white;\\n}\\n\\n.action-controls button {\\n /*width: 151px;*/\\n height: 45px;\\n background-color: #bababa !important;\\n border-color: #bababa !important;\\n}\\n\\n.action-controls button:hover {\\n background-color: #a3a3a3 !important;\\n}\\n\\n.action-controls ul li {\\n margin: 10px 0;\\n}\\n\\n.text-right {\\n text-align: right !important;\\n}\\n\\n.text-right button {\\n margin: 18px;\\n width: 200px;\\n height: 45px;\\n color: black;\\n}\\n\\n.notification {\\n background-color: #3F93F1;\\n color: white;\\n padding: 8px;\\n border-radius: 20px;\\n top: 23px;\\n position: relative;\\n}\\n\\n.badge-type {\\n border: solid lightgray 1px;\\n border-radius: 10px;\\n padding: 4px 5px 2px;\\n font-size: 10px;\\n font-style: italic;\\n text-transform: uppercase;\\n margin-right: 3px;\\n}\\n\\n.b-red {\\n border-color: red;\\n color: red;\\n}\\n\\n.b-blue {\\n border-color: blue;\\n color: blue;\\n}\\n\\n.b-violet {\\n border-color: blueviolet;\\n color: blueviolet;\\n}\\n\\n.b-green {\\n border-color: green;\\n color: green;\\n}\\n\\n.b-orangium {\\n border-color: #f19100;\\n color: #f19100;\\n}\\n\\n.b-gray {\\n border: none !important;\\n color: #343a40;\\n background-color: lightgray;\\n}\\n\\n.switch {\\n position: relative;\\n display: inline-block;\\n width: 60px;\\n height: 34px;\\n}\\n\\n.switch input {\\n opacity: 0;\\n width: 0;\\n height: 0;\\n}\\n\\n.slider {\\n position: absolute;\\n cursor: pointer;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n background-color: #ccc;\\n transition: .4s;\\n}\\n\\n.slider:before {\\n position: absolute;\\n content: \\\"\\\";\\n height: 26px;\\n width: 26px;\\n left: 4px;\\n bottom: 4px;\\n background-color: white;\\n transition: .4s;\\n}\\n\\ninput:checked + .slider {\\n background-color: #f19100;\\n}\\n\\ninput:focus + .slider {\\n box-shadow: 0 0 1px #f19100;\\n}\\n\\ninput:checked + .slider:before {\\n transform: translateX(26px);\\n}\\n\\n/* Rounded sliders */\\n\\n.slider.round {\\n border-radius: 34px;\\n}\\n\\n.slider.round:before {\\n border-radius: 50%;\\n}\\n\\n.btn-delete-orangium {\\n position: relative;\\n text-align: center;\\n line-height: 40px;\\n}\\n\\n.btn-delete-orangium a {\\n background-color: #CD0000;\\n height: 45px;\\n color: white;\\n cursor: pointer;\\n}\\n\\n.btn-delete-orangium img {\\n position: relative;\\n left: 15px;\\n}\\n\\n.btn-publish-orangium, .btn-save-orangium {\\n text-align: center;\\n line-height: 40px;\\n margin-right: 10px;\\n}\\n\\n.btn-publish-orangium a {\\n /*width: 151px;*/\\n height: 45px;\\n}\\n\\n.btn-publish-orangium img, .btn-save-orangium img {\\n position: relative;\\n height: 25px;\\n width: 25px;\\n}\\n\\n.btn-save-orangium a {\\n /*width: 151px;*/\\n height: 45px;\\n cursor: pointer;\\n}\\n\\npublish-orangium {\\n background-color: green !important;\\n}\\n\\ncreate-draft-orangium {\\n background-color: #bababa !important;\\n}\\n\\ncreate-draft-orangium:hover {\\n background-color: #a3a3a3 !important;\\n}\\n\\ndelete-draft-orangium {\\n background-color: #bd2130 !important;\\n}\\n\\n.bubble-content-left, .bubble-content-right, .bubble-content {\\n background-color: #ececec;\\n margin-top: 15px;\\n padding: 50px;\\n overflow: unset !important;\\n z-index: 99 !important;\\n}\\n\\n.bubble-content-right::before {\\n content: \\\"\\\";\\n border-left: 30px solid transparent;\\n border-right: 30px solid transparent;\\n border-bottom: 70px solid #ececec;\\n float: right;\\n width: 20px;\\n margin-top: -70px;\\n margin-left: 80px;\\n}\\n\\n.bubble-content-left::before {\\n content: \\\"\\\";\\n border-left: 30px solid transparent;\\n border-right: 30px solid transparent;\\n border-bottom: 70px solid #ececec;\\n float: right;\\n width: 20px;\\n margin-top: -70px;\\n position: absolute;\\n margin-left: 80px;\\n}\\n\\n.bubble-content-context::after {\\n content: \\\"\\\";\\n border-left: 30px solid transparent;\\n border-right: 30px solid transparent;\\n border-bottom: 70px solid #ececec;\\n float: right;\\n width: 20px;\\n margin-top: -70px;\\n position: absolute;\\n margin-left: 80px;\\n}\\n\\n.btn-orangium-save {\\n width: 120px;\\n height: 30px;\\n line-height: 0.5;\\n color: black;\\n background-color: #F29100;\\n}\\n\\n.btn-orangium-cancel {\\n width: 120px;\\n height: 45px;\\n color: black;\\n line-height: 0.5;\\n margin-right: 2.5rem !important;\\n}\\n\\n.section-lt {\\n text-align: right;\\n width: unset;\\n margin-right: 20px;\\n margin-top: 20px;\\n}\\n\\n.section-lt .folder-blk {\\n border-bottom: none !important;\\n}\\n\\n.btn-clone-orangium img {\\n position: relative;\\n height: 25px;\\n width: 25px;\\n}\\n\\n.btn-clone-orangium {\\n text-align: center;\\n line-height: 40px;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxwYWdlLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsV0FBVztFQUNYLG9DQUFvQztFQUNwQyxnQ0FBZ0M7QUFDbEM7O0FBRUE7RUFDRSxvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsb0NBQW9DO0VBQ3BDLGdDQUFnQztBQUNsQzs7QUFFQTtFQUNFLG9DQUNGO0FBQUE7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsZ0JBQUE7RUFDQSxZQUFZO0VBQ1osZUFBZTtBQUNqQjs7QUFFQTtFQUNFLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLFlBQVk7RUFDWiw0QkFBNEI7RUFDNUIsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxnQkFBQTtFQUNBLFlBQVk7RUFDWixvQ0FBb0M7RUFDcEMsZ0NBQWdDO0FBQ2xDOztBQUVBO0VBQ0Usb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLFlBQVk7RUFDWixZQUFZO0VBQ1osWUFBWTtFQUNaLFlBQVk7QUFDZDs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixZQUFZO0VBQ1osWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixTQUFTO0VBQ1Qsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQix5QkFBeUI7RUFDekIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLFVBQVU7QUFDWjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0FBQ2I7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLFlBQVk7QUFDZDs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsdUJBQXVCO0VBQ3ZCLGNBQWM7RUFDZCwyQkFBMkI7QUFDN0I7O0FBR0E7RUFDRSxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxZQUFZO0FBQWQ7O0FBR0E7RUFDRSxVQUFVO0VBQ1YsUUFBUTtFQUNSLFNBQVM7QUFBWDs7QUFHQTtFQUNFLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxRQUFRO0VBQ1IsU0FBUztFQUNULHNCQUFzQjtFQUV0QixlQUFlO0FBQWpCOztBQUdBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxZQUFZO0VBQ1osV0FBVztFQUNYLFNBQVM7RUFDVCxXQUFXO0VBQ1gsdUJBQXVCO0VBRXZCLGVBQWU7QUFBakI7O0FBR0E7RUFDRSx5QkFBeUI7QUFBM0I7O0FBR0E7RUFDRSwyQkFBMkI7QUFBN0I7O0FBR0E7RUFHRSwyQkFBMkI7QUFBN0I7O0FBR0Esb0JBQUE7O0FBQ0E7RUFDRSxtQkFBbUI7QUFBckI7O0FBR0E7RUFDRSxrQkFBa0I7QUFBcEI7O0FBSUE7RUFDRSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBQURuQjs7QUFLQTtFQUNFLHlCQUF5QjtFQUN6QixZQUFZO0VBQ1osWUFBWTtFQUNaLGVBQWU7QUFGakI7O0FBS0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtBQUZaOztBQUtBO0VBQ0Usa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFGcEI7O0FBS0E7RUFDRSxnQkFBQTtFQUNBLFlBQVk7QUFGZDs7QUFLQTtFQUNFLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osV0FBVztBQUZiOztBQUtBO0VBQ0UsZ0JBQUE7RUFDQSxZQUFZO0VBQ1osZUFBZTtBQUZqQjs7QUFLQTtFQUNFLGtDQUFrQztBQUZwQzs7QUFLQTtFQUNFLG9DQUFvQztBQUZ0Qzs7QUFNQTtFQUNFLG9DQUFvQztBQUh0Qzs7QUFNQTtFQUNFLG9DQUFvQztBQUh0Qzs7QUFNQTtFQUNFLHlCQUF5QjtFQUN6QixnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLDBCQUEwQjtFQUMxQixzQkFBc0I7QUFIeEI7O0FBTUE7RUFDRSxXQUFXO0VBQ1gsbUNBQW1DO0VBQ25DLG9DQUFvQztFQUNwQyxpQ0FBaUM7RUFDakMsWUFBWTtFQUNaLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsaUJBQWlCO0FBSG5COztBQU1BO0VBQ0UsV0FBVztFQUNYLG1DQUFtQztFQUNuQyxvQ0FBb0M7RUFDcEMsaUNBQWlDO0VBQ2pDLFlBQVk7RUFDWixXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixpQkFBaUI7QUFIbkI7O0FBTUE7RUFDRSxXQUFXO0VBQ1gsbUNBQW1DO0VBQ25DLG9DQUFvQztFQUNwQyxpQ0FBaUM7RUFDakMsWUFBWTtFQUNaLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBQUhuQjs7QUFRQTtFQUNFLFlBQVk7RUFDWixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWix5QkFBeUI7QUFMM0I7O0FBUUE7RUFDRSxZQUFZO0VBQ1osWUFBWTtFQUNaLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsK0JBQStCO0FBTGpDOztBQVFBO0VBQ0UsaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsZ0JBQWdCO0FBTGxCOztBQVFBO0VBQ0UsOEJBQThCO0FBTGhDOztBQVVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixXQUFXO0FBUGI7O0FBV0E7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FBUm5CIiwiZmlsZSI6InBhZ2UuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuYnRuLXNlY29uZGFyeSB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMyAhaW1wb3J0YW50XHJcbn1cclxuXHJcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICBtYXJnaW4tbGVmdDogLTJweDtcclxuICAvKndpZHRoOiAxNTFweDsqL1xyXG4gIGhlaWdodDogNDVweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5kcm9wZG93bi1pdGVtIHtcclxuICBwYWRkaW5nOiAuMjVyZW0gMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubW9kZS1kcmFmdC1jaGVja2JveCB7XHJcbiAgaGVpZ2h0OiAxMHB4O1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYm90dG9tOiA0MHB4O1xyXG59XHJcblxyXG4ubW9kZS1kcmFmdC1jaGVja2JveCBsYWJlbCB7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uYWN0aW9uLWNvbnRyb2xzIGJ1dHRvbiB7XHJcbiAgLyp3aWR0aDogMTUxcHg7Ki9cclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYWN0aW9uLWNvbnRyb2xzIGJ1dHRvbjpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYWN0aW9uLWNvbnRyb2xzIHVsIGxpIHtcclxuICBtYXJnaW46IDEwcHggMDtcclxufVxyXG5cclxuLnRleHQtcmlnaHQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50ZXh0LXJpZ2h0IGJ1dHRvbiB7XHJcbiAgbWFyZ2luOiAxOHB4O1xyXG4gIHdpZHRoOiAyMDBweDtcclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG59XHJcblxyXG4ubm90aWZpY2F0aW9uIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0Y5M0YxO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBwYWRkaW5nOiA4cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICB0b3A6IDIzcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uYmFkZ2UtdHlwZSB7XHJcbiAgYm9yZGVyOiBzb2xpZCBsaWdodGdyYXkgMXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgcGFkZGluZzogNHB4IDVweCAycHg7XHJcbiAgZm9udC1zaXplOiAxMHB4O1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIG1hcmdpbi1yaWdodDogM3B4O1xyXG59XHJcblxyXG4uYi1yZWQge1xyXG4gIGJvcmRlci1jb2xvcjogcmVkO1xyXG4gIGNvbG9yOiByZWQ7XHJcbn1cclxuXHJcbi5iLWJsdWUge1xyXG4gIGJvcmRlci1jb2xvcjogYmx1ZTtcclxuICBjb2xvcjogYmx1ZTtcclxufVxyXG5cclxuLmItdmlvbGV0IHtcclxuICBib3JkZXItY29sb3I6IGJsdWV2aW9sZXQ7XHJcbiAgY29sb3I6IGJsdWV2aW9sZXQ7XHJcbn1cclxuXHJcbi5iLWdyZWVuIHtcclxuICBib3JkZXItY29sb3I6IGdyZWVuO1xyXG4gIGNvbG9yOiBncmVlbjtcclxufVxyXG5cclxuLmItb3JhbmdpdW0ge1xyXG4gIGJvcmRlci1jb2xvcjogI2YxOTEwMDtcclxuICBjb2xvcjogI2YxOTEwMDtcclxufVxyXG5cclxuLmItZ3JheSB7XHJcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICMzNDNhNDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmF5O1xyXG59XHJcblxyXG5cclxuLnN3aXRjaCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogNjBweDtcclxuICBoZWlnaHQ6IDM0cHg7XHJcbn1cclxuXHJcbi5zd2l0Y2ggaW5wdXQge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4uc2xpZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gIHRyYW5zaXRpb246IC40cztcclxufVxyXG5cclxuLnNsaWRlcjpiZWZvcmUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIGhlaWdodDogMjZweDtcclxuICB3aWR0aDogMjZweDtcclxuICBsZWZ0OiA0cHg7XHJcbiAgYm90dG9tOiA0cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgdHJhbnNpdGlvbjogLjRzO1xyXG59XHJcblxyXG5pbnB1dDpjaGVja2VkICsgLnNsaWRlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxOTEwMDtcclxufVxyXG5cclxuaW5wdXQ6Zm9jdXMgKyAuc2xpZGVyIHtcclxuICBib3gtc2hhZG93OiAwIDAgMXB4ICNmMTkxMDA7XHJcbn1cclxuXHJcbmlucHV0OmNoZWNrZWQgKyAuc2xpZGVyOmJlZm9yZSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbn1cclxuXHJcbi8qIFJvdW5kZWQgc2xpZGVycyAqL1xyXG4uc2xpZGVyLnJvdW5kIHtcclxuICBib3JkZXItcmFkaXVzOiAzNHB4O1xyXG59XHJcblxyXG4uc2xpZGVyLnJvdW5kOmJlZm9yZSB7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG5cclxuLmJ0bi1kZWxldGUtb3JhbmdpdW0ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgLy8gbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4uYnRuLWRlbGV0ZS1vcmFuZ2l1bSBhIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0QwMDAwO1xyXG4gIGhlaWdodDogNDVweDtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uYnRuLWRlbGV0ZS1vcmFuZ2l1bSBpbWcge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBsZWZ0OiAxNXB4O1xyXG59XHJcblxyXG4uYnRuLXB1Ymxpc2gtb3JhbmdpdW0sIC5idG4tc2F2ZS1vcmFuZ2l1bSB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gIG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLmJ0bi1wdWJsaXNoLW9yYW5naXVtIGEge1xyXG4gIC8qd2lkdGg6IDE1MXB4OyovXHJcbiAgaGVpZ2h0OiA0NXB4O1xyXG59XHJcblxyXG4uYnRuLXB1Ymxpc2gtb3JhbmdpdW0gaW1nLCAuYnRuLXNhdmUtb3JhbmdpdW0gaW1nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiAyNXB4O1xyXG4gIHdpZHRoOiAyNXB4O1xyXG59XHJcblxyXG4uYnRuLXNhdmUtb3JhbmdpdW0gYSB7XHJcbiAgLyp3aWR0aDogMTUxcHg7Ki9cclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5wdWJsaXNoLW9yYW5naXVtIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5jcmVhdGUtZHJhZnQtb3JhbmdpdW0ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYWJhYmEgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbmNyZWF0ZS1kcmFmdC1vcmFuZ2l1bTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5kZWxldGUtZHJhZnQtb3JhbmdpdW0ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNiZDIxMzAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJ1YmJsZS1jb250ZW50LWxlZnQsIC5idWJibGUtY29udGVudC1yaWdodCwgLmJ1YmJsZS1jb250ZW50IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xyXG4gIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgcGFkZGluZzogNTBweDtcclxuICBvdmVyZmxvdzogdW5zZXQgIWltcG9ydGFudDtcclxuICB6LWluZGV4OiA5OSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYnViYmxlLWNvbnRlbnQtcmlnaHQ6OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBib3JkZXItbGVmdDogMzBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogNzBweCBzb2xpZCAjZWNlY2VjO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICB3aWR0aDogMjBweDtcclxuICBtYXJnaW4tdG9wOiAtNzBweDtcclxuICBtYXJnaW4tbGVmdDogODBweDtcclxufVxyXG5cclxuLmJ1YmJsZS1jb250ZW50LWxlZnQ6OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBib3JkZXItbGVmdDogMzBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogNzBweCBzb2xpZCAjZWNlY2VjO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICB3aWR0aDogMjBweDtcclxuICBtYXJnaW4tdG9wOiAtNzBweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbWFyZ2luLWxlZnQ6IDgwcHg7XHJcbn1cclxuXHJcbi5idWJibGUtY29udGVudC1jb250ZXh0OjphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBib3JkZXItbGVmdDogMzBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogNzBweCBzb2xpZCAjZWNlY2VjO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICB3aWR0aDogMjBweDtcclxuICBtYXJnaW4tdG9wOiAtNzBweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbWFyZ2luLWxlZnQ6IDgwcHg7XHJcbn1cclxuXHJcblxyXG5cclxuLmJ0bi1vcmFuZ2l1bS1zYXZlIHtcclxuICB3aWR0aDogMTIwcHg7XHJcbiAgaGVpZ2h0OiAzMHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAwLjU7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjkxMDA7XHJcbn1cclxuXHJcbi5idG4tb3JhbmdpdW0tY2FuY2VsIHtcclxuICB3aWR0aDogMTIwcHg7XHJcbiAgaGVpZ2h0OiA0NXB4O1xyXG4gIGNvbG9yOiBibGFjaztcclxuICBsaW5lLWhlaWdodDogMC41O1xyXG4gIG1hcmdpbi1yaWdodDogMi41cmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWx0IHtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB3aWR0aDogdW5zZXQ7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gIG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWx0IC5mb2xkZXItYmxrIHtcclxuICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5cclxuLmJ0bi1jbG9uZS1vcmFuZ2l1bSBpbWcge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBoZWlnaHQ6IDI1cHg7XHJcbiAgd2lkdGg6IDI1cHg7XHJcbn1cclxuXHJcblxyXG4uYnRuLWNsb25lLW9yYW5naXVtIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbn1cclxuIl19 */\";","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { MenuItemDto } from '../../../services/akita/menu-item-schema/menu-item.dto';\r\nimport { DataParser } from \"../../../services\";\r\n\r\n@Pipe({\r\n name: 'getMenuShowMinusIcon'\r\n})\r\nexport class GetMenuShowMinusIconPipe implements PipeTransform {\r\n\r\n protected dParser: DataParser;\r\n\r\n transform(menuDto: MenuItemDto, menuDtos: MenuItemDto[]): string {\r\n\r\n let classes = 'fa fa-minus pb-2 pt-2';\r\n\r\n if (menuDto.isCurrentPage) {\r\n const selectedChild = menuDtos.find(m => m.isCurrentPage && menuDto.menuItem.id === m.menuItem.data.parentMenuItem.iv[0]);\r\n if (!selectedChild) {\r\n classes += ' text-white';\r\n }\r\n }\r\n\r\n let showIcon = ' d-inline';\r\n if (!menuDto.isVisible && !menuDto.isCurrentPage) {\r\n showIcon = ' d-none';\r\n }\r\n\r\n return classes + showIcon;\r\n\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageContentService extends BaseService {\r\n\r\n constructor(schemasFactory: SchemasFactory,\r\n contentFactory: ContentFactory) {\r\n super(AppToken.PAGE_CONTENT_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppTokenService {\r\n readonly DEFAULT_SITE_SETTING_NAME = 'default-site-setting';\r\n readonly DEFAULT_PAGE_CATEGORY_NAME = 'default-page-category';\r\n readonly DEFAULT_MENU_NAME = 'default-menu';\r\n static readonly SITE_SETTING_SCHEMA_NAME = 'sitesetting';\r\n static readonly PAGE_CATEGORY_SCHEMA_NAME = 'page-category';\r\n static readonly MENU_SCHEMA_NAME = 'menu';\r\n static readonly MENU_ITEM_SCHEMA_NAME = 'menu-item';\r\n static readonly PAGE_SCHEMA_NAME = 'page';\r\n static readonly CLAIM_SCHEMA_NAME = 'claim';\r\n readonly USER_SAVE_CULTURE_CODE: string = 'USER_SAVE_CULTURE_CODE';\r\n readonly ENGLISH_CULTURE_CODE: string = 'en-CA';\r\n readonly FRENCH_CULTURE_CODE: string = 'fr-CA';\r\n readonly INPUT_DELAY_TIMESPAN: number = 600;\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzaWRlLWxlZnQtYmFyLmNvbXBvbmVudC5jc3MifQ== */\";","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Component } from '@angular/core';\r\nimport { BaseComponent } from \"../../base/base-component.component\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { AppConfigProvider } from '../../app-config.provider';\r\n\r\n@Component({\r\n selector: 'footer-main',\r\n templateUrl: './footer-main.component.html',\r\n})\r\nexport class FooterMainComponent extends BaseComponent {\r\n\r\n lastUpdateDays: number;\r\n goLiveVersion: string;\r\n goLiveDate: string;\r\n\r\n constructor(\r\n protected readonly translateService: TranslateService,\r\n private readonly appConfigProvider: AppConfigProvider) {\r\n super(translateService);\r\n this.setTranslateContext('FooterMainComponent');\r\n this.goLiveVersion = this.appConfigProvider.publishVersion();\r\n this.goLiveDate = this.appConfigProvider.publishDate();\r\n this.lastUpdateDays = this.getNumberOfDays(new Date(this.goLiveDate));\r\n if (this.lastUpdateDays === 0) {\r\n this.lastUpdateDays = 1;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppToken } from '../../../models/app-token';\r\nimport { SectionService } from './section.service';\r\nimport { SectionStore } from './section.store';\r\nimport { SectionQuery } from './section.query';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SectionFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly sectionService: SectionService,\r\n sectionStore: SectionStore,\r\n sectionQuery: SectionQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(sectionService,\r\n sectionStore,\r\n sectionQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppToken.SECTION_SCHEMA_NAME),\r\n translateService,\r\n AppToken.SECTION_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppTokenService } from '../../../app-token.service';\r\nimport { MenuItemService } from './menu-item.service';\r\nimport { MenuItemStore } from './menu-item.store';\r\nimport { MenuItemQuery } from './menu-item.query';\r\nimport { Observable, of } from 'rxjs';\r\nimport { MenuItemModel } from './menu-item.model';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MenuItemFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly menuItemService: MenuItemService,\r\n menuItemStore: MenuItemStore,\r\n menuItemQuery: MenuItemQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(menuItemService,\r\n menuItemStore,\r\n menuItemQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppTokenService.MENU_ITEM_SCHEMA_NAME),\r\n translateService,\r\n AppTokenService.MENU_ITEM_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n\r\n getMenuItemsByParentId(id: string): Observable {\r\n return this.menuItemService.getByParentId(id, 'parentMenuItem', 'data/index/iv').pipe(map((contentList) => {\r\n return contentList.items;\r\n }));\r\n\r\n }\r\n\r\n getMenuItemsByPageId(id: string): Observable {\r\n return this.menuItemService.getByParentId(id, 'page', 'data/index/iv').pipe(map((contentList) => {\r\n return contentList.items;\r\n }));\r\n }\r\n\r\n getMenuItemsOrdered(ids: string[], orderBy: string): Observable {\r\n return this.getService().getContentByIds(ids, orderBy);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory, Content } from '../../squidex';\r\nimport { Observable, of } from 'rxjs';\r\nimport { AppTokenService } from '../../../app-token.service';\r\nimport { MenuItemModel } from './menu-item.model';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MenuItemService extends BaseService {\r\n\r\n constructor(schemasFactory: SchemasFactory,\r\n contentFactory: ContentFactory) {\r\n super(AppTokenService.MENU_ITEM_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n}\r\n","declare var $: any;\r\nimport {\r\n Component,\r\n OnInit,\r\n TemplateRef,\r\n AfterViewInit,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../base/base-component.component';\r\nimport {\r\n PageModel,\r\n PageFacade,\r\n UiNotificationService,\r\n LanguageModel,\r\n FilterPagination,\r\n FormValidationsService,\r\n Schema,\r\n DynamicSchemaFactory,\r\n AuthenticationService\r\n} from '../../services';\r\nimport { PageInternalService } from '../../services/squidex/services/page-internal.service';\r\nimport {\r\n Field,\r\n DataParser\r\n} from '../../services/squidex';\r\nimport { combineLatest, Observable } from 'rxjs';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { BsDatepickerModule } from 'ngx-bootstrap/datepicker';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { BsDatepickerConfig } from 'ngx-bootstrap/datepicker';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { AppToken, DefaultContents, FieldsName, Statuses, AppSchemaCategory } from '../../models/app-token';\r\nimport {\r\n SiteSettingFacade,\r\n LayoutModel,\r\n TemplateModel,\r\n LayoutFacade,\r\n TemplateFacade,\r\n PageContentFacade,\r\n MenuFacade,\r\n MenuItemFacade,\r\n DynamicContentSchemaFactory\r\n} from '../../services/akita/index';\r\nimport { PageTitleService } from '../../services/general/page-title.service';\r\nimport { Validation } from '../../tools';\r\nimport { ESchemaContentStatus } from '../../services/akita/base/enum';\r\nimport { PageTypeFacade } from \"../../services/akita/page-type/page-type.facade\";\r\nimport { SpinnerService } from '../../shared/spinner/spinner.service';\r\nimport { Router } from '@angular/router';\r\nimport { ContentInternalService } from '../../services/squidex/services/content-internal.service';\r\nconst EMPTY = '';\r\n\r\n@Component({\r\n selector: 'pages',\r\n templateUrl: './pages.component.html',\r\n styleUrls: ['./pages.component.css'],\r\n})\r\nexport class PagesComponent extends BaseComponent implements OnInit, AfterViewInit {\r\n\r\n public paginationSize = 12;\r\n public publishCount: number;\r\n public currentPage = 1;\r\n\r\n\r\n public paginationSizeContents = 12;\r\n public publishCountContents: number;\r\n public currentPageContents = 1;\r\n\r\n\r\n private filter: FilterPagination;\r\n\r\n\r\n selectedLanguage: string;\r\n selectedSort: string;\r\n selectedSortIndex: string;\r\n\r\n pages: PageModel[];\r\n contentsAsPage: PageModel[];\r\n schemas: Schema[];\r\n publishedPages: PageModel[];\r\n unpublishedPages: PageModel[];\r\n\r\n private availableLanguages: LanguageModel[];\r\n\r\n listView = true;\r\n hiddenFields: string[] = [];\r\n\r\n formGroup: FormGroup;\r\n fields: Field[] = [];\r\n creationFields: Field[] = [];\r\n searchControl: FormControl;\r\n\r\n modalRef: BsModalRef;\r\n datePicker: BsDatepickerModule;\r\n bsConfig: Partial;\r\n\r\n private pageSelected: PageModel;\r\n private pageLayouts: LayoutModel[];\r\n private pageTemplates: TemplateModel[];\r\n\r\n private placeholderPageType: any;\r\n\r\n isCollapsed = true;\r\n\r\n collapseControlsEditTemplate: any = {};\r\n\r\n private readonly dataParser: DataParser;\r\n languageCustomClass = 'language-nav-tabs';\r\n\r\n cloneNgModel: any = {};\r\n cloneSubmited: boolean = false;\r\n selectedPageIsContent: boolean = false;\r\n\r\n @ViewChild('cloneTemplate', { static: true })\r\n cloneTemplate: TemplateRef;\r\n\r\n @ViewChild('deleteTemplate', { static: true })\r\n deleteTemplate: TemplateRef;\r\n\r\n @ViewChild('formTemplate', { static: true })\r\n formTemplate: TemplateRef;\r\n\r\n maxSize: number = 33;\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n userIsReadWrite: boolean;\r\n userIsReader: boolean;\r\n\r\n constructor(translateService: TranslateService,\r\n private readonly pageTitleService: PageTitleService,\r\n private readonly pageFacade: PageFacade,\r\n private readonly layoutFacade: LayoutFacade,\r\n private readonly templateFacade: TemplateFacade,\r\n private readonly pageContentFacade: PageContentFacade,\r\n private readonly menuFacade: MenuFacade,\r\n private readonly menuItemFacade: MenuItemFacade,\r\n private readonly contentFacadeFactory: DynamicContentSchemaFactory,\r\n private readonly schemaFacadeFactory: DynamicSchemaFactory,\r\n private readonly modalService: BsModalService,\r\n private readonly uiNotificationService: UiNotificationService,\r\n private readonly siteSettingFacade: SiteSettingFacade,\r\n private readonly pageTypeFacade: PageTypeFacade,\r\n private readonly formValidationService: FormValidationsService,\r\n private readonly spinnerService: SpinnerService,\r\n readonly router: Router,\r\n private readonly pageInternalService: PageInternalService,\r\n private authenticationService: AuthenticationService,\r\n private readonly contentInternalService: ContentInternalService\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('PagesComponent');\r\n this.hiddenFields = ['deleted', 'publishdatetime',\r\n 'deletedatetime', 'metatitle',\r\n 'metaDescription', 'metaKeywords',\r\n 'pageType', 'thumbnail'];\r\n this.dataParser = new DataParser(null);\r\n this.searchControl = new FormControl();\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.userIsOwner = this.authenticationService.userHasRole(\"Owner\");\r\n this.userIsDev = this.authenticationService.userHasRole(\"Developer\");\r\n this.userIsEditor = this.authenticationService.userHasRole(\"Editor\");\r\n this.userIsReadWrite = this.authenticationService.userHasRole(\"ReadWrite\");\r\n this.userIsReader = this.authenticationService.userHasRole(\"Reader\");\r\n\r\n if (!this.userIsOwner && !this.userIsDev && !this.userIsEditor && !this.userIsReadWrite && !this.userIsReader) {\r\n this.router.navigateByUrl('/');\r\n return;\r\n }\r\n\r\n this.spinnerService.hide();\r\n const subscription = this.tc().subscribe(v => {\r\n this.pageTitleService.setTitle(v['TITLE']);\r\n this.pageTitleService.key = 'PAGES.TITLE';\r\n });\r\n\r\n this.subscriptions.push(subscription);\r\n this.filter = new FilterPagination(0, this.paginationSize, 'lastModified descending');\r\n this.language = this.pageFacade.getCurrentLanguage();\r\n this.bsConfig = Object.assign({}, { containerClass: 'theme-orange', dateInputFormat: 'YYYY/MM/DD HH:mm' });\r\n\r\n this.initializeData();\r\n this.initializeSearch();\r\n this.selectedSort = 'Date de modification';\r\n this.selectedSortIndex = '0';\r\n\r\n this.maxSize = Math.floor(window.innerWidth * .017) + 1\r\n }\r\n\r\n ngAfterViewInit() {\r\n }\r\n\r\n\r\n createForm(schemaFields: Field[], page: PageModel = null): void {\r\n const formGroup = this.generateFormGroup(this.pageFacade, schemaFields, this.hiddenFields, page, false, this.formValidationService);\r\n\r\n let statusControl: any;\r\n\r\n if (page) {\r\n statusControl = new FormControl(page.status === this.statusPublished);\r\n }\r\n else {\r\n statusControl = new FormControl(false);\r\n }\r\n\r\n formGroup[\"status\"] = statusControl;\r\n\r\n this.formGroup = new FormGroup(formGroup);\r\n //add requered to url in all lang\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n this.formGroup.get('url_' + language).setValidators(Validators.required);\r\n }\r\n }\r\n\r\n submitForm() {\r\n if (!this.formGroup.valid || !this.formGroup.dirty) {\r\n this.formGroup.markAllAsTouched();\r\n return;\r\n }\r\n\r\n const values = this.formGroup.value;\r\n\r\n let newPageData: any = {};\r\n\r\n for (let field of this.creationFields) {\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n newPageData = this.dataParser.setData(newPageData, field, values[field.name + '_' + language], language);\r\n }\r\n } else {\r\n newPageData = this.dataParser.setData(newPageData, field, values[field.name]);\r\n }\r\n }\r\n\r\n const urls = new Array();\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n urls.push(newPageData['url'][language]);\r\n }\r\n\r\n const urlsDistinct = [...new Set(urls)];\r\n if (urls > urlsDistinct) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_NOT_DISTINCT, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n let startWithSlash: boolean = true;\r\n urls.forEach(url => {\r\n if (!url.trim().startsWith('/')) {\r\n startWithSlash = false;\r\n return;\r\n }\r\n })\r\n\r\n if (!startWithSlash) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_START_SLASH, c.FAILED_TITLE, 10000);\r\n });\r\n return false;\r\n }\r\n\r\n const allVersionParm = new FilterPagination();\r\n allVersionParm.from = 0;\r\n allVersionParm.to = 1;\r\n allVersionParm.filter = '';\r\n allVersionParm.orderBy = 'lastModified descending';\r\n\r\n let filterList: object[] = new Array();\r\n for (const lg of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n let data: any = {};\r\n data = {\r\n path: `data.url.${lg}`,\r\n op: 'eq',\r\n value: newPageData['url'][language]\r\n };\r\n\r\n filterList.push(data);\r\n }\r\n }\r\n let orFilter: any = {};\r\n orFilter = {\r\n or: filterList\r\n }\r\n\r\n this.pageFacade.validateUrl(allVersionParm, ESchemaContentStatus.All, orFilter, this.pageSelected).subscribe(total => {\r\n if (total > 0) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_TAKEN, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n\r\n if (this.pageSelected) {\r\n this.pageFacade\r\n .update(this.pageSelected.id, newPageData)\r\n .subscribe(v => {\r\n if (v) {\r\n\r\n const index = this.pages.map(p => { return p.id; }).indexOf(this.pageSelected.id);\r\n if (index !== -1) {\r\n this.pages[index] = v;\r\n }\r\n this.setStatus(this.pageSelected.id, values.status)\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.closeModal();\r\n });\r\n }\r\n });\r\n } else {\r\n const pageTypeFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_TYPE_SCHEMA_NAME);\r\n let isExcutedPType = false;\r\n pageTypeFacade.getByCode(DefaultContents.DEFAULT_PAGE_TYPE_CODE).subscribe(pType => {\r\n if (!isExcutedPType) {\r\n newPageData = this.dataParser.setData(newPageData, this.fields.find(field => field.name === FieldsName.PAGE_TYPE), pType.id);\r\n this.pageFacade.create(newPageData).subscribe(v => {\r\n let newPage = this.clone(v);\r\n let newMenuItemData: any = {};\r\n let ids: string[] = [];\r\n ids.push(newPage.id);\r\n this.dataParser.putData(newMenuItemData, FieldsName.CODE, this.dataParser.pullData(newPage, FieldsName.CODE));\r\n this.dataParser.putData(newMenuItemData, FieldsName.PAGE, newPage.id);\r\n this.dataParser.putData(newMenuItemData, FieldsName.INDEX, 0);\r\n let isExcuted = false;\r\n this.menuItemFacade.createAsPublished(newMenuItemData).subscribe(menuItem => {\r\n this.menuFacade.getByCode(DefaultContents.DEFAULT_MENU_CODE).subscribe(menu => {\r\n if (!isExcuted) {\r\n let menuData = this.clone(menu.data);\r\n let menuItems = menuData.menuItems.iv as string[];\r\n menuItems.push(menuItem.id);\r\n this.dataParser.putData(menuData, FieldsName.MENU_ITEMS, menuItems);\r\n this.menuFacade.update(menu.id, menuData).subscribe();\r\n\r\n const index = this.pages.map(p => { return p.id; }).indexOf(newPage.id);\r\n if (index === -1) {\r\n this.pages.push(newPage);\r\n }\r\n\r\n isExcuted = true;\r\n }\r\n });\r\n });\r\n\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.closeModal();\r\n const stat = values.status ? Statuses.PUBLISHED.name : Statuses.DRAFT.name;\r\n if (newPage.status !== stat) {\r\n this.setStatusNew(newPage.id, values.status);\r\n }\r\n });\r\n\r\n let templateData: any = {};\r\n this.dataParser.putData(templateData, FieldsName.CODE, this.dataParser.pullData(newPage, FieldsName.CODE) + '-template');\r\n this.dataParser.putData(templateData, FieldsName.BODY, 'page template');\r\n this.dataParser.putData(templateData, 'category', 'page');\r\n\r\n this.templateFacade.createAsPublished(templateData).subscribe(newTemplate => {\r\n ids = [];\r\n ids.push(newTemplate.id);\r\n this.dataParser.putData(newPage.data, FieldsName.TEMPLATE, ids);\r\n this.pageFacade.update(newPage.id, newPage.data).subscribe();\r\n });\r\n\r\n this.initializeData();\r\n });\r\n isExcutedPType = true;\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n setStatus(id: string, status: boolean) {\r\n let newStatus = (status ? Statuses.PUBLISHED.name : Statuses.DRAFT.name);\r\n if (!this.pageSelected || this.pageSelected.status !== newStatus) {\r\n this.pageFacade.updateStatus(id, newStatus, null).subscribe(v => {\r\n\r\n const index = this.pages.map(p => { return p.id; }).indexOf(this.pageSelected.id);\r\n if (index !== -1) {\r\n this.pages[index] = v;\r\n }\r\n this.pageSelected = null;\r\n });\r\n this.initializeData();\r\n }\r\n }\r\n\r\n setStatusNew(id: string, status: boolean) {\r\n let newStatus = (status ? Statuses.PUBLISHED.name : Statuses.DRAFT.name)\r\n this.pageFacade.updateStatus(id, newStatus, null).subscribe(newPage => {\r\n const index = this.pages.map(p => { return p.id; }).indexOf(newPage.id);\r\n if (index === -1) {\r\n this.pages.push(newPage);\r\n }\r\n this.pageSelected = null;\r\n });\r\n }\r\n\r\n openModal(page: PageModel = null, isCreation: boolean = false,) {\r\n\r\n if (isCreation) {\r\n this.creationFields = this.fields.filter(field => !this.hiddenFields.includes(field.name));\r\n this.collapseAllEditForm();\r\n this.pageSelected = null;\r\n this.creationFields = this.creationFields.filter(field => field.name !== FieldsName.TEMPLATE);\r\n this.isCollapsed = !this.isCollapsed;\r\n this.createForm(this.creationFields, page);\r\n } else {\r\n let url = `/page/${this.dataParser.pullData(page, FieldsName.CODE)}`;\r\n this.router.navigateByUrl(url);\r\n }\r\n }\r\n\r\n private collapseAllEditForm() {\r\n const desc = this.collapseControlsEditTemplate;\r\n Object.keys(desc).forEach(key => {\r\n if (desc)\r\n desc[key]['isCollapsed'] = true;\r\n });\r\n this.collapseControlsEditTemplate = desc;\r\n this.isCollapsed = true;\r\n let container = document.querySelectorAll('.last_modify-inner');\r\n container.forEach(item => {\r\n item.classList.remove('bubble-content-context');\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.collapseAllEditForm();\r\n if (this.modalRef) {\r\n this.modalRef.hide();\r\n }\r\n }\r\n\r\n openCloneModal(event: { pageModel: PageModel, isContent: boolean }) {\r\n this.pageSelected = event.pageModel;\r\n\r\n this.selectedPageIsContent = event.isContent;\r\n\r\n this.modalRef = this.modalService.show(this.cloneTemplate);\r\n }\r\n\r\n openDeleteModal(page: PageModel) {\r\n this.pageSelected = page;\r\n this.modalRef = this.modalService.show(this.deleteTemplate);\r\n }\r\n\r\n confirmClone() {\r\n let name = this.cloneNgModel['name'];\r\n\r\n if (Validation.isNullEmptyOrWhiteSpaces(name)) {\r\n this.uiNotificationService.error('Name is required', 'Error');\r\n return;\r\n }\r\n\r\n let urls = {};\r\n\r\n this.availableLanguages.forEach(lang => {\r\n let langCode = lang.data.code.iv;\r\n let url = this.cloneNgModel[`url_${langCode}`];\r\n\r\n if (Validation.isNullEmptyOrWhiteSpaces(url)) {\r\n this.uiNotificationService.error(`Url ${langCode} is required`, 'Error');\r\n return;\r\n }\r\n\r\n urls[langCode] = url;\r\n });\r\n\r\n //TODO: validate urls are unique and begin with /\r\n this.pageInternalService.clonePage(this.pageSelected.id, name, urls, this.selectedPageIsContent).subscribe(callback => {\r\n this.modalRef.hide();\r\n this.pageSelected = null;\r\n if (callback.isSuccess()) {\r\n this.initializeData();\r\n return;\r\n }\r\n\r\n this.uiNotificationService.error(callback.getMessage(), 'Error');\r\n });\r\n }\r\n\r\n confirmDelete() {\r\n\r\n if (Validation.isValidGuid(this.pageSelected.id)) {\r\n\r\n //remove all section relation from page\r\n this.pageContentFacade.getPageContentsByPageId(this.pageSelected.id).subscribe(pageContents => {\r\n if (pageContents.length > 0) {\r\n pageContents.forEach(pageContent => {\r\n this.pageContentFacade.remove(pageContent.id).subscribe();\r\n })\r\n }\r\n });\r\n\r\n //remove all content relation from page\r\n const schemaPageFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.SCHEMA_PAGE_SCHEMA_NAME);\r\n schemaPageFacade.getByParentId(this.pageSelected.id, FieldsName.PAGE_ID, FieldsName.ID, true).subscribe(\r\n schemaPages => {\r\n if (schemaPages.length > 0) {\r\n schemaPages.forEach(sPage => {\r\n schemaPageFacade.remove(sPage.id).subscribe();\r\n });\r\n }\r\n });\r\n\r\n //remove all page filter\r\n const pageFilterFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME);\r\n schemaPageFacade.getByParentId(this.pageSelected.id, FieldsName.PAGE_ID, FieldsName.ID, true).subscribe(\r\n pageFilter => {\r\n if (pageFilter.length > 0) {\r\n pageFilter.forEach(pFilter => {\r\n pageFilterFacade.remove(pFilter.id).subscribe();\r\n });\r\n }\r\n });\r\n\r\n const templateId = this.dataParser.pullData(this.pageSelected, FieldsName.TEMPLATE)[0];\r\n if (templateId) {\r\n //remove template related to page\r\n this.templateFacade.remove(templateId).subscribe();\r\n }\r\n\r\n //remove menuItem from menu then remove it\r\n this.menuItemFacade.getMenuItemsByPageId(this.pageSelected.id).subscribe(menuItems => {\r\n if (menuItems.length > 0) {\r\n menuItems.forEach(menuItem => {\r\n let isExcuted = false;\r\n this.menuFacade.getByParentId(menuItem.id, FieldsName.MENU_ITEMS, FieldsName.ID, true).subscribe(menus => {\r\n if (!isExcuted) {\r\n menus.forEach(menu => {\r\n let menuData = this.clone(menu.data);\r\n let menuItems = menuData.menuItems.iv as string[];\r\n const index = menuItems.indexOf(menuItem.id);\r\n if (index !== -1) {\r\n menuItems.splice(index, 1);\r\n }\r\n this.dataParser.putData(menuData, FieldsName.MENU_ITEMS, menuItems);\r\n this.menuFacade.update(menu.id, menuData).subscribe();\r\n isExcuted = true;\r\n });\r\n }\r\n });\r\n this.menuItemFacade.remove(menuItem.id).subscribe();\r\n });\r\n }\r\n });\r\n\r\n //remove this page from pages array\r\n let draftmode = false;\r\n if (this.pageSelected.status === 'Draft') {\r\n draftmode = true;\r\n }\r\n\r\n if (this.pageSelected.schemaName === 'page') {\r\n this.pageFacade.remove(this.pageSelected.id, draftmode).subscribe(v => {\r\n const index = this.pages.map(p => { return p.id; }).indexOf(this.pageSelected.id);\r\n if (index !== -1) {\r\n this.pages.splice(index, 1);\r\n }\r\n this.pageSelected = null;\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n this.modalRef.hide();\r\n });\r\n } else {\r\n const currentFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(this.pageSelected.schemaName);\r\n currentFacade.remove(this.pageSelected.id, draftmode).subscribe(v => {\r\n\r\n const index = this.contentsAsPage.map(p => { return p.id; }).indexOf(this.pageSelected.id);\r\n if (index !== -1) {\r\n this.contentsAsPage.splice(index, 1);\r\n }\r\n this.pageSelected = null;\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n this.modalRef.hide();\r\n });\r\n\r\n\r\n }\r\n\r\n\r\n\r\n }\r\n }\r\n\r\n getPublished(): Array {\r\n return this.pages.filter(v => this.isPublishedContent(v)).slice(0, this.paginationSize);\r\n }\r\n\r\n getUnpublished(): Array {\r\n let unPublishedContentsAndPages: Array = new Array();\r\n unPublishedContentsAndPages = unPublishedContentsAndPages.concat(this.contentsAsPage.filter(v => !this.isPublishedContent(v)).slice(0, AppToken.PAGES_UNPUBLISHED_ITEMS_PER_PAGE));\r\n unPublishedContentsAndPages = unPublishedContentsAndPages.concat(this.pages.filter(v => !this.isPublishedContent(v)).slice(0, AppToken.PAGES_UNPUBLISHED_CONTENTS_ITEMS_PER_PAGE));\r\n return unPublishedContentsAndPages;\r\n }\r\n\r\n getPublishedContents(): Array {\r\n let end = (this.currentPageContents) * this.paginationSizeContents;\r\n if (end >= this.publishCountContents) {\r\n end = this.publishCountContents;\r\n }\r\n return this.contentsAsPage.filter(v => this.isPublishedContent(v)).slice((this.currentPageContents - 1) * this.paginationSizeContents, end);\r\n }\r\n\r\n getUnpublishedContents(): Array {\r\n return this.contentsAsPage.filter(v => !this.isPublishedContent(v)).slice(0, AppToken.PAGES_UNPUBLISHED_CONTENTS_ITEMS_PER_PAGE);\r\n }\r\n\r\n initializeData(): void {\r\n this.pages = [];\r\n this.contentsAsPage = [];\r\n\r\n this.schemaFacadeFactory.getSchemasMetadataByCategory(AppSchemaCategory.SCHEMA_AS_A_PAGE).subscribe(schemas => {\r\n this.schemas = schemas;\r\n this.schemas.forEach(sc => {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(sc.name).getAll().subscribe(cts => {\r\n cts.forEach((ct, index) => {\r\n let p = new PageModel(ct);\r\n let temp = this.clone(p);\r\n temp.data = this.dataParser.putData(temp.data, 'code', sc.name + '/' + this.dataParser.pullData(ct, 'code'), 'iv');\r\n this.contentsAsPage.push(temp);\r\n if (index === cts.length - 1) {\r\n this.sortChangeContents();\r\n }\r\n });\r\n this.publishCountContents = this.contentsAsPage.length - AppToken.PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE;\r\n });\r\n });\r\n });\r\n this.getPages();\r\n }\r\n\r\n\r\n getPages() {\r\n this.unpublishedPages = [];\r\n this.publishedPages = [];\r\n\r\n if (this.listView) {\r\n this.paginationSize = AppToken.PAGES_PUBLISHED_ITEMS_PER_PAGE_LIST;\r\n this.paginationSizeContents = AppToken.PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE_LIST;\r\n } else {\r\n this.paginationSize = AppToken.PAGES_PUBLISHED_ITEMS_PER_PAGE;\r\n this.paginationSizeContents = AppToken.PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE;\r\n }\r\n\r\n const draftParm = new FilterPagination();\r\n draftParm.from = 0;\r\n draftParm.to = AppToken.PAGES_UNPUBLISHED_ITEMS_PER_PAGE;\r\n draftParm.filter = this.searchControl.value == null ? EMPTY : this.searchControl.value;\r\n draftParm.orderBy = 'lastModified descending';\r\n\r\n this.filter.from = (this.currentPage - 1) * this.paginationSize;\r\n this.filter.to = this.filter.from + this.paginationSize;\r\n this.filter.orderBy = this.getOrderBy();\r\n let advancedFilter = this.getSearchObject();\r\n\r\n const countParm = new FilterPagination();\r\n countParm.from = 0;\r\n countParm.to = 1000;\r\n countParm.orderBy = 'lastModified descending';\r\n let finalFilter = [];\r\n\r\n finalFilter.push(advancedFilter);\r\n\r\n const sub1 = this.pageTypeFacade.getPlaceholderPageType().subscribe(pageType => {\r\n this.placeholderPageType = pageType;\r\n\r\n if (this.placeholderPageType) {\r\n let oFilterPlaceHolder = {\r\n path: \"data.pageType.iv\",\r\n op: 'ne',\r\n value: this.placeholderPageType.id\r\n }\r\n finalFilter.push(oFilterPlaceHolder);\r\n }\r\n const subscription = combineLatest(\r\n this.pageFacade.getFilteredPagination(draftParm, ESchemaContentStatus.Draft, finalFilter),\r\n this.pageFacade.getFilteredPagination(this.filter, ESchemaContentStatus.Published, finalFilter),\r\n this.pageFacade.getSchema(),\r\n this.siteSettingFacade.getSiteLanguages(),\r\n this.layoutFacade.getAllOrdered(),\r\n this.templateFacade.getAllOrdered(),\r\n this.pageFacade.getFilteredPagination(countParm, ESchemaContentStatus.Published, finalFilter)\r\n ).subscribe(([unpublished, published, schema, languages, layouts, templates, pageCount]) => {\r\n this.pageLayouts = layouts;\r\n this.pageTemplates = templates;\r\n\r\n published.forEach(page => {\r\n const index = this.pages.map(p => { return p.id; }).indexOf(page.id);\r\n if (index === -1) {\r\n this.pages.push(page);\r\n this.publishedPages.push(page);\r\n }\r\n });\r\n\r\n unpublished.forEach(page => {\r\n const index = this.pages.map(p => { return p.id; }).indexOf(page.id);\r\n if (index === -1) {\r\n this.pages.push(page);\r\n this.unpublishedPages.push(page);\r\n }\r\n });\r\n\r\n if (languages.length <= 1) {\r\n this.languageCustomClass = 'hide-nav-tabs';\r\n }\r\n\r\n this.availableLanguages = languages;\r\n\r\n //init collapseControls EditTemplate\r\n this.pages.forEach(page => {\r\n const data: any = {\r\n isCollapsed: true,\r\n };\r\n this.collapseControlsEditTemplate[page.id] = data;\r\n });\r\n\r\n this.publishCount = pageCount.length;\r\n this.fields = schema.fields;\r\n });\r\n this.subscriptions.push(subscription);\r\n });\r\n\r\n this.subscriptions.push(sub1);\r\n\r\n }\r\n\r\n\r\n initializeSearch(): void {\r\n const subscription = this.searchControl\r\n .valueChanges\r\n .pipe(debounceTime(AppToken.INPUT_DELAY_TIMESPAN))\r\n .pipe(distinctUntilChanged())\r\n .subscribe(result => {\r\n if (result) {\r\n this.search(result);\r\n } else {\r\n this.initializeData();\r\n }\r\n });\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n search(filter?: string, lightRefresh: boolean = false): void {\r\n if (lightRefresh) {\r\n const drafts = this.pages.filter(a => a.status === 'Draft');\r\n this.pages = [];\r\n this.publishedPages = [];\r\n this.pages = drafts;\r\n } else {\r\n this.pages = [];\r\n this.unpublishedPages = [];\r\n this.publishedPages = [];\r\n }\r\n\r\n if (!filter) {\r\n filter = this.searchControl.value === null ? '' : this.searchControl.value;\r\n }\r\n\r\n const countParm = new FilterPagination();\r\n countParm.from = 0;\r\n countParm.to = 1000;\r\n countParm.orderBy = 'lastModified descending';\r\n\r\n const draftParm = new FilterPagination();\r\n draftParm.from = 0;\r\n draftParm.to = AppToken.PAGES_UNPUBLISHED_ITEMS_PER_PAGE;\r\n draftParm.orderBy = 'lastModified descending';\r\n\r\n this.filter.from = (this.currentPage - 1) * this.paginationSize;\r\n this.filter.to = this.filter.from + this.paginationSize;\r\n this.filter.orderBy = this.getOrderBy();\r\n const advancedSearch = this.getSearchObject();\r\n\r\n let finalFilter = [];\r\n\r\n finalFilter.push(advancedSearch);\r\n\r\n const subscription = this.pageTypeFacade.getPlaceholderPageType().subscribe(pageType => {\r\n this.placeholderPageType = pageType;\r\n\r\n if (this.placeholderPageType) {\r\n let oFilterPlaceHolder = {\r\n path: \"data.pageType.iv\",\r\n op: 'ne',\r\n value: this.placeholderPageType.id\r\n }\r\n finalFilter.push(oFilterPlaceHolder);\r\n }\r\n\r\n if (!lightRefresh) {\r\n const subscriptionCount =\r\n this.pageFacade.getFilteredPagination(countParm, ESchemaContentStatus.Published, finalFilter)\r\n .subscribe(p => {\r\n this.publishCount = p.length;\r\n\r\n });\r\n\r\n const subscriptionUnpublished =\r\n this.pageFacade.getFilteredPagination(draftParm, ESchemaContentStatus.Draft, finalFilter)\r\n .subscribe(unpublished => {\r\n unpublished.forEach(a => {\r\n this.pages.push(a);\r\n this.unpublishedPages.push(a);\r\n const data: any = { isCollapsed: true };\r\n this.collapseControlsEditTemplate[a.id] = data;\r\n });\r\n });\r\n this.subscriptions.push(subscriptionCount);\r\n this.subscriptions.push(subscriptionUnpublished);\r\n }\r\n\r\n const subscriptionPublished =\r\n this.pageFacade.getFilteredPagination(this.filter, ESchemaContentStatus.Published, finalFilter)\r\n .subscribe(published => {\r\n published.forEach(a => {\r\n this.pages.push(a);\r\n this.publishedPages.push(a);\r\n const data: any = { isCollapsed: true };\r\n this.collapseControlsEditTemplate[a.id] = data;\r\n });\r\n });\r\n\r\n this.subscriptions.push(subscriptionPublished);\r\n });\r\n this.subscriptions.push(subscription);\r\n\r\n }\r\n\r\n sortChange(sender: any): boolean {\r\n if (!sender) {\r\n this.selectedSort = 'Date de modification';\r\n this.selectedSortIndex = '0';\r\n this.search(null, true);\r\n } else {\r\n if (sender.target.text) {\r\n this.selectedSort = sender.target.innerHTML;\r\n this.selectedSortIndex = sender.target.attributes[3].value;\r\n this.search(null, true);\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n sortChangeContents(sender?: any): boolean {\r\n if (!sender) {\r\n this.selectedSort = 'Date de modification';\r\n this.selectedSortIndex = '0';\r\n\r\n\r\n } else {\r\n if (sender.target.text) {\r\n this.selectedSort = sender.target.innerHTML;\r\n this.selectedSortIndex = sender.target.attributes[3].value;\r\n }\r\n }\r\n\r\n if (this.selectedSortIndex === '1') {\r\n\r\n this.contentsAsPage = this.contentsAsPage.sort((one, two) =>\r\n (this.dataParser.pullData(one, 'pageName') <= this.dataParser.pullData(two, 'pageName') ? -1 : 1));\r\n } else if (this.selectedSortIndex === '2') {\r\n\r\n this.contentsAsPage = this.contentsAsPage.sort((one, two) =>\r\n (this.dataParser.pullData(one, 'pageName') >= this.dataParser.pullData(two, 'pageName') ? -1 : 1));\r\n } else {\r\n\r\n this.contentsAsPage = this.contentsAsPage.sort((one, two) => { return (new Date(two.lastModified).getTime() - new Date(one.lastModified).getTime()) });\r\n\r\n }\r\n return false;\r\n }\r\n\r\n getOrderBy() {\r\n if (this.selectedSortIndex === '1') {\r\n return `data.pageName.iv ascending`;\r\n } else if (this.selectedSortIndex === '2') {\r\n return `data.pageName.iv descending`;\r\n } else {\r\n return 'lastModified descending';\r\n }\r\n }\r\n\r\n getSearchObject(): object {\r\n const filter = this.searchControl.value == null ? EMPTY : this.searchControl.value;\r\n\r\n let oSearch = {\r\n or:\r\n [\r\n {\r\n path: `data.pageName.iv`,\r\n op: 'contains',\r\n value: filter\r\n },\r\n {\r\n path: `data.metatitle.${this.language}`,\r\n op: 'contains',\r\n value: filter\r\n },\r\n {\r\n path: `data.metaDescription.${this.language}`,\r\n op: 'contains',\r\n value: filter\r\n },\r\n {\r\n path: `data.code.iv`,\r\n op: 'contains',\r\n value: filter\r\n }\r\n ]\r\n }\r\n\r\n this.contentsAsPage = this.contentsAsPage.filter(p =>\r\n (this.dataParser.pullData(p, 'code', 'iv').toUpperCase().indexOf(filter.toUpperCase()) !== -1) ||\r\n (this.dataParser.pullData(p, 'pageName', 'iv').toUpperCase().indexOf(filter.toUpperCase()) !== -1) ||\r\n (this.dataParser.pullData(p, 'metaDescription', this.language).toUpperCase().indexOf(filter.toUpperCase()) !== -1) ||\r\n (this.dataParser.pullData(p, 'metatitle', this.language).toUpperCase().indexOf(filter.toUpperCase()) !== -1));\r\n\r\n return oSearch;\r\n }\r\n\r\n changeView() {\r\n this.listView = !this.listView;\r\n if (this.listView) {\r\n this.paginationSize = AppToken.PAGES_PUBLISHED_ITEMS_PER_PAGE;\r\n this.paginationSizeChanged(this.paginationSize);\r\n this.paginationSizeContents = AppToken.PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE;\r\n this.paginationSizeChangedContents(this.paginationSizeContents);\r\n } else {\r\n this.paginationSize = AppToken.PAGES_PUBLISHED_ITEMS_PER_PAGE;\r\n this.paginationSizeContents = AppToken.PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE;\r\n }\r\n this.initializeData();\r\n return false;\r\n }\r\n\r\n paginationSizeChanged(newSize: number) {\r\n if (this.listView) {\r\n this.paginationSize = newSize;\r\n } else {\r\n this.paginationSize = AppToken.PAGES_PUBLISHED_ITEMS_PER_PAGE;\r\n }\r\n this.filter.to = this.filter.from + this.paginationSize;\r\n this.initializeData();\r\n }\r\n\r\n paginationSizeChangedContents(newSize: number) {\r\n if (this.listView) {\r\n this.paginationSizeContents = newSize;\r\n } else {\r\n this.paginationSizeContents = AppToken.PAGES_PUBLISHED_CONTENTS_ITEMS_PER_PAGE;\r\n }\r\n }\r\n\r\n pageChanged($event) {\r\n this.currentPage = $event.page;\r\n this.search(null, true);\r\n }\r\n\r\n pageChangedContents($event) {\r\n this.currentPageContents = $event.page;\r\n this.search(null, true);\r\n }\r\n\r\n showPagination(publishCount: number, paginationSize: number) {\r\n if (publishCount) {\r\n if (publishCount > paginationSize) {\r\n return 'visible';\r\n }\r\n }\r\n return 'hidden';\r\n }\r\n\r\n updateListing() {\r\n this.filter.from = 0;\r\n this.filter.to = this.paginationSize;\r\n\r\n this.initializeData();\r\n }\r\n\r\n changeLanguage(event, languageCode) {\r\n this.dataParser.changeLanguage(languageCode);\r\n $(event.currentTarget).parent().parent().find('li').removeClass('active');\r\n $(event.currentTarget).parent().addClass('active');\r\n }\r\n\r\n}\r\n\r\n","export default \".selector {\\r\\n display: flex;\\r\\n background-color: #aeaeae;\\r\\n min-height: 100vh;\\r\\n display: flex;\\r\\n flex-direction: column;\\r\\n}\\r\\n\\r\\n::ng-deep .panel-orangium-contents {\\r\\n border-radius: 0px;\\r\\n margin: 0px;\\r\\n border: none;\\r\\n}\\r\\n\\r\\n::ng-deep .panel-orangium-contents > .panel-heading {\\r\\n background-color: #aeaeae;\\r\\n border-radius: 0px;\\r\\n border: solid white 1px;\\r\\n border-left: none;\\r\\n border-right: none;\\r\\n border-bottom: none;\\r\\n margin: 0px;\\r\\n color: white;\\r\\n }\\r\\n\\r\\n.borderless {\\r\\n border: none !important;\\r\\n border-color: transparent;\\r\\n border-style: none;\\r\\n}\\r\\n\\r\\n.borderless:focus {\\r\\n outline: none;\\r\\n }\\r\\n\\r\\n.rounded-input {\\r\\n border-radius: 25px;\\r\\n}\\r\\n\\r\\n::ng-deep\\r\\n.panel-orangium-contents > .panel-heading > .panel-title > .accordion-toggle > button {\\r\\n color: black;\\r\\n}\\r\\n\\r\\n::ng-deep .panel-open > .panel-orangium-contents > .panel-heading {\\r\\n background-color: #f29100 !important;\\r\\n}\\r\\n\\r\\n::ng-deep\\r\\n .panel-open > .panel-orangium-contents > .panel-heading > .panel-title > .accordion-toggle > button {\\r\\n color: #313131;\\r\\n }\\r\\n\\r\\n::ng-deep .panel-open > .panel-orangium-contents > .panel-collapse {\\r\\n background-color: #4d4d4d;\\r\\n color: white;\\r\\n}\\r\\n\\r\\n::ng-deep\\r\\n .panel-open > .panel-orangium-contents > .panel-collapse > .panel-body\\r\\n div\\r\\n a {\\r\\n color: black;\\r\\n }\\r\\n\\r\\n::ng-deep .panel-orangium-contents > .panel-collapse {\\r\\n background-color: #4d4d4d;\\r\\n color: white;\\r\\n}\\r\\n\\r\\n::ng-deep .panel-orangium-contents > .panel-collapse > .panel-body div a {\\r\\n color: black;\\r\\n }\\r\\n\\r\\n.panel-body {\\r\\n padding: 0px;\\r\\n}\\r\\n\\r\\n.c-white {\\r\\n color: white;\\r\\n}\\r\\n\\r\\n.name-field {\\r\\n margin-top: 10px;\\r\\n margin-bottom: 5px;\\r\\n}\\r\\n\\r\\n.search-group {\\r\\n background-color: #aeaeae;\\r\\n padding: 8px 8px;\\r\\n color: black;\\r\\n margin-bottom: 10px;\\r\\n}\\r\\n\\r\\n.selected-content {\\r\\n background-color: #303130;\\r\\n border-left: #f29100 solid 5px;\\r\\n color: #f29100 !important;\\r\\n}\\r\\n\\r\\n.cursor {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n.content-selectable {\\r\\n width: 100%;\\r\\n display: inline-block;\\r\\n font-weight: 400;\\r\\n vertical-align: middle;\\r\\n cursor: pointer;\\r\\n -webkit-user-select: none;\\r\\n -moz-user-select: none;\\r\\n -ms-user-select: none;\\r\\n user-select: none;\\r\\n padding: 0.7rem 1rem;\\r\\n font-size: 1rem;\\r\\n line-height: 1.5;\\r\\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\r\\n}\\r\\n\\r\\n.list-opt-border {\\r\\n border: solid #4d4d4d 2px;\\r\\n border-radius: 25px;\\r\\n padding: 5px;\\r\\n background-color: #ececec;\\r\\n}\\r\\n\\r\\n.top-left-radius {\\r\\n border-bottom-left-radius: 0px;\\r\\n border-bottom-right-radius: 0px;\\r\\n border-top-right-radius: 0px;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .page-item.active .page-link {\\r\\n background-color: #f29100;\\r\\n border-color: #e28100;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n@media screen and (min-height:1000px) {\\r\\n .max-height {\\r\\n max-height: 678px;\\r\\n }\\r\\n}\\r\\n\\r\\n.on-hover:hover {\\r\\n transition: all .2s ease-in;\\r\\n background-color: #f29100;\\r\\n color: black !important;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbnRlbnRzLWxpc3RpbmcuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGFBQWE7RUFDYix5QkFBeUI7RUFDekIsaUJBQWlCO0VBQ2pCLGFBQWE7RUFDYixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFFRTtJQUNFLHlCQUF5QjtJQUN6QixrQkFBa0I7SUFDbEIsdUJBQXVCO0lBQ3ZCLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLFdBQVc7SUFDWCxZQUFZO0VBQ2Q7O0FBRUY7RUFDRSx1QkFBdUI7RUFDdkIseUJBQXlCO0VBQ3pCLGtCQUFrQjtBQUNwQjs7QUFFRTtJQUNFLGFBQWE7RUFDZjs7QUFFRjtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTs7RUFFRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxvQ0FBb0M7QUFDdEM7O0FBRUU7O0lBRUUsY0FBYztFQUNoQjs7QUFFRjtFQUNFLHlCQUF5QjtFQUN6QixZQUFZO0FBQ2Q7O0FBRUU7Ozs7SUFJRSxZQUFZO0VBQ2Q7O0FBRUY7RUFDRSx5QkFBeUI7RUFDekIsWUFBWTtBQUNkOztBQUVFO0lBQ0UsWUFBWTtFQUNkOztBQUVGO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6Qiw4QkFBOEI7RUFDOUIseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0QixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixlQUFlO0VBQ2YsZ0JBQWdCO0VBRWhCLHFJQUFxSTtBQUN2STs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLDhCQUE4QjtFQUM5QiwrQkFBK0I7RUFDL0IsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLHFCQUFxQjtFQUNyQixXQUFXO0FBQ2I7O0FBRUE7RUFDRTtJQUNFLGlCQUFpQjtFQUNuQjtBQUNGOztBQUVBO0VBSUUsMkJBQTJCO0VBQzNCLHlCQUF5QjtFQUN6Qix1QkFBdUI7QUFDekIiLCJmaWxlIjoiY29udGVudHMtbGlzdGluZy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnNlbGVjdG9yIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNhZWFlYWU7XHJcbiAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG46Om5nLWRlZXAgLnBhbmVsLW9yYW5naXVtLWNvbnRlbnRzIHtcclxuICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgbWFyZ2luOiAwcHg7XHJcbiAgYm9yZGVyOiBub25lO1xyXG59XHJcblxyXG4gIDo6bmctZGVlcCAucGFuZWwtb3JhbmdpdW0tY29udGVudHMgPiAucGFuZWwtaGVhZGluZyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWVhZWFlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgYm9yZGVyOiBzb2xpZCB3aGl0ZSAxcHg7XHJcbiAgICBib3JkZXItbGVmdDogbm9uZTtcclxuICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICBtYXJnaW46IDBweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICB9XHJcblxyXG4uYm9yZGVybGVzcyB7XHJcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbiAgLmJvcmRlcmxlc3M6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICB9XHJcblxyXG4ucm91bmRlZC1pbnB1dCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMjVweDtcclxufVxyXG5cclxuOjpuZy1kZWVwXHJcbi5wYW5lbC1vcmFuZ2l1bS1jb250ZW50cyA+IC5wYW5lbC1oZWFkaW5nID4gLnBhbmVsLXRpdGxlID4gLmFjY29yZGlvbi10b2dnbGUgPiBidXR0b24ge1xyXG4gIGNvbG9yOiBibGFjaztcclxufVxyXG5cclxuOjpuZy1kZWVwIC5wYW5lbC1vcGVuID4gLnBhbmVsLW9yYW5naXVtLWNvbnRlbnRzID4gLnBhbmVsLWhlYWRpbmcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMjkxMDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuICA6Om5nLWRlZXBcclxuICAucGFuZWwtb3BlbiA+IC5wYW5lbC1vcmFuZ2l1bS1jb250ZW50cyA+IC5wYW5lbC1oZWFkaW5nID4gLnBhbmVsLXRpdGxlID4gLmFjY29yZGlvbi10b2dnbGUgPiBidXR0b24ge1xyXG4gICAgY29sb3I6ICMzMTMxMzE7XHJcbiAgfVxyXG5cclxuOjpuZy1kZWVwIC5wYW5lbC1vcGVuID4gLnBhbmVsLW9yYW5naXVtLWNvbnRlbnRzID4gLnBhbmVsLWNvbGxhcHNlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ0ZDRkO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuICA6Om5nLWRlZXBcclxuICAucGFuZWwtb3BlbiA+IC5wYW5lbC1vcmFuZ2l1bS1jb250ZW50cyA+IC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5XHJcbiAgZGl2XHJcbiAgYSB7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgfVxyXG5cclxuOjpuZy1kZWVwIC5wYW5lbC1vcmFuZ2l1bS1jb250ZW50cyA+IC5wYW5lbC1jb2xsYXBzZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRkNGQ0ZDtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbiAgOjpuZy1kZWVwIC5wYW5lbC1vcmFuZ2l1bS1jb250ZW50cyA+IC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IGRpdiBhIHtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICB9XHJcblxyXG4ucGFuZWwtYm9keSB7XHJcbiAgcGFkZGluZzogMHB4O1xyXG59XHJcblxyXG4uYy13aGl0ZSB7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4ubmFtZS1maWVsZCB7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbi5zZWFyY2gtZ3JvdXAge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNhZWFlYWU7XHJcbiAgcGFkZGluZzogOHB4IDhweDtcclxuICBjb2xvcjogYmxhY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLnNlbGVjdGVkLWNvbnRlbnQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMDMxMzA7XHJcbiAgYm9yZGVyLWxlZnQ6ICNmMjkxMDAgc29saWQgNXB4O1xyXG4gIGNvbG9yOiAjZjI5MTAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jdXJzb3Ige1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmNvbnRlbnQtc2VsZWN0YWJsZSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmxpc3Qtb3B0LWJvcmRlciB7XHJcbiAgYm9yZGVyOiBzb2xpZCAjNGQ0ZDRkIDJweDtcclxuICBib3JkZXItcmFkaXVzOiAyNXB4O1xyXG4gIHBhZGRpbmc6IDVweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xyXG59XHJcblxyXG4udG9wLWxlZnQtcmFkaXVzIHtcclxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweDtcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHB4O1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyOTEwMDtcclxuICBib3JkZXItY29sb3I6ICNlMjgxMDA7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OjEwMDBweCkge1xyXG4gIC5tYXgtaGVpZ2h0IHtcclxuICAgIG1heC1oZWlnaHQ6IDY3OHB4O1xyXG4gIH1cclxufVxyXG5cclxuLm9uLWhvdmVyOmhvdmVyIHtcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbjtcclxuICAtby10cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW47XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW47XHJcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMjkxMDA7XHJcbiAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XHJcbn1cclxuIl19 */\";","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { MenuItemDto } from '../../../services/akita/menu-item-schema/menu-item.dto';\r\nimport { DataParser } from \"../../../services\";\r\n\r\n@Pipe({\r\n name: 'getMenuLabel'\r\n})\r\nexport class GetMenuLabelPipe implements PipeTransform {\r\n\r\n protected dParser: DataParser;\r\n\r\n transform(menuDto: MenuItemDto, languageCode: string = 'iv', pages: any): string {\r\n\r\n this.dParser = new DataParser(null);\r\n\r\n const page = this.dParser.pullData(menuDto.menuItem, 'page');\r\n const pageObj = pages.find(p => p.id === page);\r\n\r\n let label = this.dParser.pullData(pageObj, 'pageName');\r\n\r\n if (!label) {\r\n label = this.dParser.pullData(menuDto.menuItem, 'label', languageCode);\r\n }\r\n\r\n if (!label) {\r\n label = this.dParser.pullData(menuDto.menuItem, 'code');\r\n }\r\n\r\n return label;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ResourceStore } from './resource.store';\r\nimport { ResourceQuery } from './resource.query';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { ResourceService } from './resource.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { Content } from '../../squidex/models/content.model';\r\nimport { Observable, of, from } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ResourceFacade extends BaseFacade {\r\n private static resources: Content[] = [];\r\n resourcesLoad: Promise = this.reloadResources();\r\n private static lastCheck:Date = new Date();\r\n private static minutesToWait: number = 15;\r\n\r\n\r\n constructor(\r\n appResourceService: ResourceService,\r\n appResourceStore: ResourceStore,\r\n appResourceQuery: ResourceQuery,\r\n dynamicSchemaFactory: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(appResourceService,\r\n appResourceStore,\r\n appResourceQuery,\r\n dynamicSchemaFactory.getDynamicSchemaFacade('resource'),\r\n translateService,\r\n 'resource-facade'\r\n );\r\n\r\n }\r\n\r\n existLocally(code: string): boolean {\r\n return ResourceFacade.resources.find(r => r.data.code.iv === code) !== undefined;\r\n }\r\n\r\n getByCode(code: string, draftMode: boolean = false, forceReolad: boolean = false): Observable {\r\n if (ResourceFacade.lastCheck.getTime() + 1000 * 60 * ResourceFacade.minutesToWait < new Date().getTime() || forceReolad) {\r\n this.resourcesLoad = this.reloadResources();\r\n ResourceFacade.lastCheck = new Date();\r\n }\r\n\r\n if(ResourceFacade.resources.length > 0) {\r\n let resource = ResourceFacade.resources.find(r => r.data.code.iv === code);\r\n if(resource) {\r\n return of(resource);\r\n }\r\n }\r\n\r\n return from(this.resourcesLoad.then(r => {\r\n return r.find(r => r.data.code.iv === code);\r\n }));\r\n }\r\n\r\n private reloadResources(): Promise {\r\n return this.getService().getAll().pipe(map(r => {\r\n ResourceFacade.resources = r.items;\r\n return r.items;\r\n })).toPromise();\r\n }\r\n\r\n flushResources(): void {\r\n ResourceFacade.resources = [];\r\n ResourceFacade.lastCheck = new Date();\r\n this.resourcesLoad = this.reloadResources();\r\n }\r\n}\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({ name: 'resource' })\r\nexport class ResourceStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","export default \".drop-area {\\r\\n background-color: whitesmoke;\\r\\n border: dashed #464746 3px;\\r\\n border-radius: 15px;\\r\\n padding: 25px;\\r\\n}\\r\\n\\r\\n.thumbnail-image {\\r\\n max-height: 200px !important;\\r\\n max-width: 200px !important;\\r\\n}\\r\\n\\r\\n.thumbnail-area {\\r\\n max-height: 300px;\\r\\n overflow-y:auto;\\r\\n}\\r\\n\\r\\n.align-items {\\r\\n float: left;\\r\\n z-index: 100;\\r\\n\\r\\n}\\r\\n\\r\\n.fa-trash {\\r\\n color: #F29100;\\r\\n font-size: initial;\\r\\n}\\r\\n\\r\\n/* Container needed to position the overlay. Adjust the width as needed */\\r\\n\\r\\n.container {\\r\\n position: relative;\\r\\n width: 100%;\\r\\n max-width: 220px;\\r\\n}\\r\\n\\r\\n/* Make the image to responsive */\\r\\n\\r\\n.image {\\r\\n width: 100%;\\r\\n height: auto;\\r\\n}\\r\\n\\r\\n/* The overlay effect (full height and width) - lays on top of the container and over the image */\\r\\n\\r\\n.overlay {\\r\\n position: absolute;\\r\\n top: 0;\\r\\n bottom: 0;\\r\\n left: 15px;\\r\\n right: 0;\\r\\n max-height: 200px !important;\\r\\n max-width: 350px !important;\\r\\n min-height: 40px !important;\\r\\n opacity: 0;\\r\\n transition: .3s ease;\\r\\n border-style: solid;\\r\\n border-color: #F29100;\\r\\n}\\r\\n\\r\\n/* When you mouse over the container, fade in the overlay icon*/\\r\\n\\r\\n.container:hover .overlay {\\r\\n opacity: 1;\\r\\n}\\r\\n\\r\\n/* The icon inside the overlay is positioned in the middle vertically and horizontally */\\r\\n\\r\\n.icon {\\r\\n color: white;\\r\\n font-size: 100px;\\r\\n position: absolute;\\r\\n top: 50%;\\r\\n left: 50%;\\r\\n transform: translate(-50%, -50%);\\r\\n -ms-transform: translate(-50%, -50%);\\r\\n text-align: center;\\r\\n}\\r\\n\\r\\n/* When you move the mouse over the icon, change color */\\r\\n\\r\\n/*.fa-user:hover {\\r\\n color: #eee;\\r\\n}*/\\r\\n\\r\\n.label-image {\\r\\n width:100%;\\r\\n margin-top: 10px;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVwbG9hZC1maWVsZC5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsNEJBQTRCO0VBQzVCLDBCQUEwQjtFQUMxQixtQkFBbUI7RUFDbkIsYUFBYTtBQUNmOztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLDJCQUEyQjtBQUM3Qjs7QUFHQTtJQUNJLGlCQUFpQjtJQUNqQixlQUFlO0FBQ25COztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7O0FBRWQ7O0FBRUE7RUFDRSxjQUFjO0VBQ2Qsa0JBQWtCO0FBQ3BCOztBQUlBLHlFQUF5RTs7QUFDekU7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGdCQUFnQjtBQUNsQjs7QUFFQSxpQ0FBaUM7O0FBQ2pDO0VBQ0UsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFFQSxpR0FBaUc7O0FBQ2pHO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsVUFBVTtFQUNWLFFBQVE7RUFDUiw0QkFBNEI7RUFDNUIsMkJBQTJCO0VBQzNCLDJCQUEyQjtFQUMzQixVQUFVO0VBQ1Ysb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixxQkFBcUI7QUFDdkI7O0FBRUEsK0RBQStEOztBQUMvRDtFQUNFLFVBQVU7QUFDWjs7QUFFQSx3RkFBd0Y7O0FBQ3hGO0VBQ0UsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxnQ0FBZ0M7RUFDaEMsb0NBQW9DO0VBQ3BDLGtCQUFrQjtBQUNwQjs7QUFFQSx3REFBd0Q7O0FBQ3hEOztFQUVFOztBQUNGO0VBQ0UsVUFBVTtFQUNWLGdCQUFnQjtBQUNsQiIsImZpbGUiOiJ1cGxvYWQtZmllbGQuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5kcm9wLWFyZWEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7XHJcbiAgYm9yZGVyOiBkYXNoZWQgIzQ2NDc0NiAzcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICBwYWRkaW5nOiAyNXB4O1xyXG59XHJcblxyXG4udGh1bWJuYWlsLWltYWdlIHtcclxuICBtYXgtaGVpZ2h0OiAyMDBweCAhaW1wb3J0YW50O1xyXG4gIG1heC13aWR0aDogMjAwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi50aHVtYm5haWwtYXJlYSB7XHJcbiAgICBtYXgtaGVpZ2h0OiAzMDBweDtcclxuICAgIG92ZXJmbG93LXk6YXV0bztcclxufVxyXG5cclxuLmFsaWduLWl0ZW1zIHtcclxuICBmbG9hdDogbGVmdDtcclxuICB6LWluZGV4OiAxMDA7XHJcblxyXG59XHJcblxyXG4uZmEtdHJhc2gge1xyXG4gIGNvbG9yOiAjRjI5MTAwO1xyXG4gIGZvbnQtc2l6ZTogaW5pdGlhbDtcclxufVxyXG5cclxuXHJcblxyXG4vKiBDb250YWluZXIgbmVlZGVkIHRvIHBvc2l0aW9uIHRoZSBvdmVybGF5LiBBZGp1c3QgdGhlIHdpZHRoIGFzIG5lZWRlZCAqL1xyXG4uY29udGFpbmVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiAyMjBweDtcclxufVxyXG5cclxuLyogTWFrZSB0aGUgaW1hZ2UgdG8gcmVzcG9uc2l2ZSAqL1xyXG4uaW1hZ2Uge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLyogVGhlIG92ZXJsYXkgZWZmZWN0IChmdWxsIGhlaWdodCBhbmQgd2lkdGgpIC0gbGF5cyBvbiB0b3Agb2YgdGhlIGNvbnRhaW5lciBhbmQgb3ZlciB0aGUgaW1hZ2UgKi9cclxuLm92ZXJsYXkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDE1cHg7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgbWF4LWhlaWdodDogMjAwcHggIWltcG9ydGFudDtcclxuICBtYXgtd2lkdGg6IDM1MHB4ICFpbXBvcnRhbnQ7XHJcbiAgbWluLWhlaWdodDogNDBweCAhaW1wb3J0YW50O1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XHJcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICBib3JkZXItY29sb3I6ICNGMjkxMDA7XHJcbn1cclxuXHJcbi8qIFdoZW4geW91IG1vdXNlIG92ZXIgdGhlIGNvbnRhaW5lciwgZmFkZSBpbiB0aGUgb3ZlcmxheSBpY29uKi9cclxuLmNvbnRhaW5lcjpob3ZlciAub3ZlcmxheSB7XHJcbiAgb3BhY2l0eTogMTtcclxufVxyXG5cclxuLyogVGhlIGljb24gaW5zaWRlIHRoZSBvdmVybGF5IGlzIHBvc2l0aW9uZWQgaW4gdGhlIG1pZGRsZSB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHkgKi9cclxuLmljb24ge1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBmb250LXNpemU6IDEwMHB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLyogV2hlbiB5b3UgbW92ZSB0aGUgbW91c2Ugb3ZlciB0aGUgaWNvbiwgY2hhbmdlIGNvbG9yICovXHJcbi8qLmZhLXVzZXI6aG92ZXIge1xyXG4gIGNvbG9yOiAjZWVlO1xyXG59Ki9cclxuLmxhYmVsLWltYWdlIHtcclxuICB3aWR0aDoxMDAlO1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuIl19 */\";","import { Content } from \"../../squidex\";\r\n\r\nexport class ResourceModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n }\r\n}\r\n","export default \"::ng-deep .control-language-parent > ul {\\r\\n float: right !important;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .ck-sticky-panel__content {\\r\\n margin-top: 0.25rem !important;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .cke {\\r\\n margin-top: 10px;\\r\\n}\\r\\n\\r\\n/* Rounded sliders */\\r\\n\\r\\n.slider.round {\\r\\n border-radius: 34px;\\r\\n}\\r\\n\\r\\n.slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n\\r\\ninput.large-checkbox {\\r\\n width: 30px;\\r\\n height: 30px;\\r\\n}\\r\\n\\r\\nlabel.larger {\\r\\n padding: .5rem .5rem .5rem 1rem !important;\\r\\n}\\r\\n\\r\\n.large-container {\\r\\n margin:1rem 1rem 1rem 0rem !important;\\r\\n} \\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpZWxkLXJlZmVyZW5jZS1lZGl0b3IuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLDhCQUE4QjtBQUNoQzs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQSxvQkFBb0I7O0FBQ3BCO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVFO0lBQ0Usa0JBQWtCO0VBQ3BCOztBQUVGO0VBQ0UsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFDQTtFQUNFLDBDQUEwQztBQUM1Qzs7QUFDQTtJQUNJLHFDQUFxQztBQUN6QyIsImZpbGUiOiJmaWVsZC1yZWZlcmVuY2UtZWRpdG9yLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6Om5nLWRlZXAgLmNvbnRyb2wtbGFuZ3VhZ2UtcGFyZW50ID4gdWwge1xyXG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLmNrLXN0aWNreS1wYW5lbF9fY29udGVudCB7XHJcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLmNrZSB7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLyogUm91bmRlZCBzbGlkZXJzICovXHJcbi5zbGlkZXIucm91bmQge1xyXG4gIGJvcmRlci1yYWRpdXM6IDM0cHg7XHJcbn1cclxuXHJcbiAgLnNsaWRlci5yb3VuZDpiZWZvcmUge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIH1cclxuXHJcbmlucHV0LmxhcmdlLWNoZWNrYm94IHtcclxuICB3aWR0aDogMzBweDtcclxuICBoZWlnaHQ6IDMwcHg7XHJcbn1cclxubGFiZWwubGFyZ2VyIHtcclxuICBwYWRkaW5nOiAuNXJlbSAuNXJlbSAuNXJlbSAxcmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuLmxhcmdlLWNvbnRhaW5lciB7XHJcbiAgICBtYXJnaW46MXJlbSAxcmVtIDFyZW0gMHJlbSAhaW1wb3J0YW50O1xyXG59IFxyXG4iXX0= */\";","import { Component, Input } from '@angular/core';\r\nimport { SiteSettingModel } from \"../../services/akita/site-setting-schema/site-setting.model\";\r\n\r\n@Component({\r\n selector: 'header-main',\r\n templateUrl: './header-main.component.html',\r\n})\r\nexport class HeaderMainComponent {\r\n\r\n @Input()\r\n siteSetting: SiteSettingModel;\r\n\r\n whenLanguageChange($event): void {\r\n\r\n }\r\n}\r\n","declare var $: any;\r\nimport { Content } from './models/content.model';\r\nimport { Field } from './models/field.model';\r\nimport { SquidexDate } from './extensions/squidex-date.extension';\r\nimport { LanguageModel } from '../akita';\r\n\r\nconst EMPTY = '';\r\n\r\nexport class DataParser {\r\n\r\n currentLanguageCode: string;\r\n\r\n constructor(public readonly siteLanguages: LanguageModel[] = null) {\r\n if (this.siteLanguages) {\r\n if (!this.currentLanguageCode) {\r\n this.currentLanguageCode = this.getLanguageCode(this.findDefaultLanguage());\r\n }\r\n }\r\n }\r\n\r\n getData(content: Content, field: Field, language: string = 'iv'): any {\r\n return this.pullData(content, field.name, language);\r\n }\r\n\r\n /*\r\n * @description same as getData, with different signature, get and put are synonyms\r\n */\r\n pullData(content: Content, key: string, language: string = 'iv'): any {\r\n if (!content || !content.data || !key) {\r\n return EMPTY;\r\n }\r\n\r\n let d = content.data[key];\r\n\r\n let data: any;\r\n\r\n if (d) {\r\n data = d[language];\r\n } else {\r\n data = EMPTY;\r\n }\r\n\r\n return data;\r\n }\r\n\r\n setContent(content: Content, field: Field, newValue: string, languageCode: string = 'iv'): any {\r\n newValue = this.fixFieldValue(field.properties.editor, newValue, field.properties.fieldType);\r\n return this.setData(content.data, field, newValue, languageCode);\r\n }\r\n\r\n setData(data: any, field: Field, newValue: string, languageCode: string = 'iv'): any {\r\n newValue = this.fixFieldValue(field.properties.editor, newValue, field.properties.fieldType);\r\n return this.putData(data, field.name, newValue, languageCode, field);\r\n }\r\n\r\n // same as setData, with different signature, set and pull are synonyms\r\n putData(data: any, key: string, newValue: any, languageCode: string = 'iv', field?: Field): any {\r\n if (!data || !key) {\r\n return null;\r\n }\r\n\r\n if (field && field.properties.fieldType === 'Assets') {\r\n if (!data[key]) {\r\n data[key] = { 'iv': [] };\r\n }\r\n if (data[key].iv.length === 0) {\r\n data[key].iv = [];\r\n }\r\n if (Array.isArray(newValue)) {\r\n newValue.forEach(val => {\r\n if (!data[key].iv.includes(val)) {\r\n data[key].iv.push(val);\r\n }\r\n });\r\n } else {\r\n if (newValue) {\r\n data[key].iv.push(newValue);\r\n }\r\n }\r\n\r\n } else {\r\n if (field && field.properties.fieldType === 'Boolean') {\r\n if (newValue === '') {\r\n newValue = false;\r\n }\r\n }\r\n if (!data[key]) {\r\n data[key] = {};\r\n }\r\n\r\n if (!(Array.isArray(newValue) && newValue.length === 1 && newValue[0] === '')) {\r\n data[key][languageCode] = newValue;\r\n }\r\n }\r\n return data;\r\n\r\n }\r\n\r\n private fixFieldValue(editor: string, value: any, type: string): any {\r\n if (editor === 'DateTime') {\r\n return new SquidexDate(value).format();\r\n } else if ((editor === 'Dropdown' || editor === 'List') && !Array.isArray(value)) {\r\n return [value];\r\n } else if (type === 'Assets') {\r\n if (!value || value === \"\") {\r\n return [];\r\n } else if (Array.isArray(value)) {\r\n return value;\r\n } else {\r\n return [value];\r\n }\r\n } else if (type === 'Number') {\r\n return +value; // simple way to parse to number\r\n } else if (type === 'References') {\r\n\r\n if (!(value instanceof Array)) {\r\n value = [value];\r\n }\r\n\r\n if (value[0] && value[0].item_id) {\r\n\r\n value = value.map(v => {\r\n if (v.item_id) {\r\n return v.item_id;\r\n }\r\n return v;\r\n });\r\n\r\n }\r\n\r\n return value;\r\n\r\n } else {\r\n return value;\r\n }\r\n\r\n }\r\n\r\n findDefaultLanguage(): LanguageModel {\r\n return this.siteLanguages.find(language => language.data.isdefault && language.data.isdefault.iv === true);\r\n }\r\n\r\n isDefaultLanguage(languageModel: LanguageModel): boolean {\r\n if (languageModel.data.isdefault && languageModel.data.isdefault.iv === true) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n getLanguageName(languageModel: LanguageModel): string {\r\n if (!languageModel || !languageModel.data) return '';\r\n return languageModel.data.name.iv;\r\n }\r\n\r\n getLanguageCode(languageModel: LanguageModel): string {\r\n if (!languageModel || !languageModel.data) return '';\r\n return languageModel.data.code.iv;\r\n }\r\n\r\n changeLanguage(langCode) {\r\n this.currentLanguageCode = langCode;\r\n }\r\n\r\n getCurrentDateTime() {\r\n const tzoffset = (new Date()).getTimezoneOffset() * 60000; //offset in milliseconds\r\n const localISOTime = (new Date(Date.now() - tzoffset)).toISOString().slice(0, 19).replace('T', ' ');\r\n return localISOTime;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Observable, Subscription, of, forkJoin } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UiNotificationService {\r\n\r\n constructor(private readonly toastr: ToastrService) { }\r\n\r\n successWithHtml(message: string, title: string = 'Success'): void {\r\n this.toastr.success(message,\r\n title,\r\n {\r\n enableHtml: true\r\n });\r\n }\r\n\r\n success(message: string, title: string = 'Success', timespan: number = 3000): void {\r\n this.toastr.success(message,\r\n title,\r\n {\r\n timeOut: timespan\r\n });\r\n }\r\n\r\n successAsync(message: Observable, title: Observable, timespan: number = 3000): Subscription {\r\n return message.subscribe(msg => {\r\n title.subscribe(tl => {\r\n this.toastr.success(msg.toString(),\r\n tl.toString(),\r\n {\r\n timeOut: timespan\r\n });\r\n });\r\n });\r\n }\r\n\r\n error(message: string, title: string = 'Error', timespan: number = 3000): void {\r\n this.toastr.error(message,\r\n title,\r\n {\r\n timeOut: timespan\r\n });\r\n }\r\n\r\n\r\n errorAsync(message: Observable, title: Observable, timespan: number = 3000): Subscription {\r\n return message.subscribe(msg => {\r\n title.subscribe(tl => {\r\n this.toastr.error(msg.toString(),\r\n tl.toString(),\r\n {\r\n timeOut: timespan\r\n });\r\n });\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ArticleStore } from './article.store';\r\nimport { ArticleQuery } from './article.query';\r\nimport { BaseFacade } from \"../base/base.facade\";\r\nimport { ArticleService } from './article.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleFacade extends BaseFacade {\r\n\r\n constructor(\r\n articleService: ArticleService,\r\n articleStore: ArticleStore,\r\n articleQuery: ArticleQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(articleService,\r\n articleStore,\r\n articleQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade('article'),\r\n translateService,\r\n 'article-facade');\r\n }\r\n}\r\n","export default \".btn-publish-orangium-hover:hover {\\n background-color: #07c700 !important;\\n}\\n\\n.btn-secondary {\\n color: #fff;\\n background-color: #bababa !important;\\n border-color: #bababa !important;\\n}\\n\\n.btn-secondary:hover {\\n background-color: #a3a3a3 !important;\\n}\\n\\n.show > .btn-secondary.dropdown-toggle {\\n color: #fff;\\n background-color: #bababa !important;\\n border-color: #bababa !important;\\n}\\n\\n.show > .btn-secondary.dropdown-toggle:hover {\\n background-color: #a3a3a3 !important;\\n}\\n\\n.btn-group > .btn-group:not(:first-child) {\\n margin-left: -2px;\\n /*width: 151px;*/\\n height: 45px;\\n cursor: pointer;\\n}\\n\\n.dropdown-item {\\n padding: .25rem 0 !important;\\n}\\n\\n.mode-draft-checkbox {\\n height: 10px;\\n margin-left: auto !important;\\n padding: 0;\\n position: relative;\\n bottom: 40px;\\n}\\n\\n.mode-draft-checkbox label {\\n color: white;\\n}\\n\\n.action-controls button {\\n /*width: 151px;*/\\n height: 45px;\\n background-color: #bababa !important;\\n border-color: #bababa !important;\\n}\\n\\n.action-controls button:hover {\\n background-color: #a3a3a3 !important;\\n}\\n\\n.action-controls ul li {\\n margin: 10px 0;\\n}\\n\\n.text-right {\\n text-align: right !important;\\n}\\n\\n.text-right button {\\n margin: 18px;\\n width: 200px;\\n height: 45px;\\n color: black;\\n}\\n\\n.notification {\\n background-color: #3F93F1;\\n color: white;\\n padding: 8px;\\n border-radius: 20px;\\n top: 23px;\\n position: relative;\\n}\\n\\n.badge-type {\\n border: solid lightgray 1px;\\n border-radius: 10px;\\n padding: 4px 5px 2px;\\n font-size: 10px;\\n font-style: italic;\\n text-transform: uppercase;\\n margin-right: 3px;\\n}\\n\\n.b-red {\\n border-color: red;\\n color: red;\\n}\\n\\n.b-blue {\\n border-color: blue;\\n color: blue;\\n}\\n\\n.b-violet {\\n border-color: blueviolet;\\n color: blueviolet;\\n}\\n\\n.b-green {\\n border-color: green;\\n color: green;\\n}\\n\\n.b-orangium {\\n border-color: #f19100;\\n color: #f19100;\\n}\\n\\n.b-gray {\\n border: none !important;\\n color: #343a40;\\n background-color: lightgray;\\n}\\n\\n.switch {\\n position: relative;\\n display: inline-block;\\n width: 60px;\\n height: 34px;\\n}\\n\\n.switch input {\\n opacity: 0;\\n width: 0;\\n height: 0;\\n}\\n\\n.slider {\\n position: absolute;\\n cursor: pointer;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n background-color: #ccc;\\n transition: .4s;\\n}\\n\\n.slider:before {\\n position: absolute;\\n content: \\\"\\\";\\n height: 26px;\\n width: 26px;\\n left: 4px;\\n bottom: 4px;\\n background-color: white;\\n transition: .4s;\\n}\\n\\ninput:checked + .slider {\\n background-color: #f19100;\\n}\\n\\ninput:focus + .slider {\\n box-shadow: 0 0 1px #f19100;\\n}\\n\\ninput:checked + .slider:before {\\n transform: translateX(26px);\\n}\\n\\n/* Rounded sliders */\\n\\n.slider.round {\\n border-radius: 34px;\\n}\\n\\n.slider.round:before {\\n border-radius: 50%;\\n}\\n\\n.btn-delete-orangium {\\n position: relative;\\n text-align: center;\\n line-height: 40px;\\n}\\n\\n.btn-delete-orangium a {\\n background-color: #CD0000;\\n cursor: pointer;\\n height: 45px;\\n color: white;\\n}\\n\\n.btn-delete-orangium img {\\n position: relative;\\n left: 15px;\\n}\\n\\n.btn-publish-orangium, .btn-save-orangium {\\n text-align: center;\\n line-height: 40px;\\n margin-right: 10px;\\n}\\n\\n.btn-publish-orangium a {\\n /*width: 151px;*/\\n height: 45px;\\n}\\n\\n.btn-publish-orangium img, .btn-save-orangium img {\\n position: relative;\\n height: 25px;\\n width: 25px;\\n}\\n\\n.btn-save-orangium a {\\n /*width: 151px;*/\\n height: 45px;\\n cursor: pointer;\\n}\\n\\n.bubble-content-left, .bubble-content-right, .bubble-content {\\n background-color: #ececec;\\n margin-top: 15px;\\n padding: 50px;\\n overflow: unset !important;\\n z-index: 99 !important;\\n}\\n\\n.bubble-content-right::before {\\n content: \\\"\\\";\\n border-left: 30px solid transparent;\\n border-right: 30px solid transparent;\\n border-bottom: 70px solid #ececec;\\n float: right;\\n width: 20px;\\n margin-top: -70px;\\n margin-left: 80px;\\n}\\n\\n.bubble-content-left::before {\\n content: \\\"\\\";\\n border-left: 30px solid transparent;\\n border-right: 30px solid transparent;\\n border-bottom: 70px solid #ececec;\\n float: right;\\n width: 20px;\\n margin-top: -70px;\\n position: absolute;\\n margin-left: 80px;\\n}\\n\\n.bubble-content-context::after {\\n content: \\\"\\\";\\n border-left: 30px solid transparent;\\n border-right: 30px solid transparent;\\n border-bottom: 70px solid #ececec;\\n float: right;\\n width: 20px;\\n margin-top: -70px;\\n position: absolute;\\n margin-left: 80px;\\n}\\n\\n.btn-orangium-save {\\n width: 120px;\\n height: 30px;\\n line-height: 0.5;\\n color: black;\\n background-color: #F29100;\\n}\\n\\n.btn-orangium-cancel {\\n width: 120px;\\n height: 45px;\\n color: black;\\n line-height: 0.5;\\n margin-right: 2.5rem !important;\\n}\\n\\n.section-lt {\\n text-align: right;\\n width: unset;\\n margin-right: 20px;\\n margin-top: 20px;\\n}\\n\\n.section-lt .folder-blk {\\n border-bottom: none !important;\\n}\\n\\n.btn-clone-orangium img {\\n position: relative;\\n height: 25px;\\n width: 25px;\\n}\\n\\n.btn-clone-orangium {\\n text-align: center;\\n line-height: 40px;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxhZHZhbmNlZC1wYWdlLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0Usb0NBQ0Y7QUFEQTs7QUFHQTtFQUNFLFdBQVc7RUFDWCxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0FBQWxDOztBQUdBO0VBQ0Usb0NBQW9DO0FBQXRDOztBQUdBO0VBQ0UsV0FBVztFQUNYLG9DQUFvQztFQUNwQyxnQ0FBZ0M7QUFBbEM7O0FBSUE7RUFDRSxvQ0FBb0M7QUFEdEM7O0FBSUE7RUFDRSxpQkFBaUI7RUFDakIsZ0JBQUE7RUFDQSxZQUFZO0VBQ1osZUFBZTtBQURqQjs7QUFJQTtFQUNFLDRCQUE0QjtBQUQ5Qjs7QUFJQTtFQUNFLFlBQVk7RUFDWiw0QkFBNEI7RUFDNUIsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixZQUFZO0FBRGQ7O0FBSUE7RUFDRSxZQUFZO0FBRGQ7O0FBSUE7RUFDRSxnQkFBQTtFQUNBLFlBQVk7RUFDWixvQ0FBb0M7RUFDcEMsZ0NBQWdDO0FBRGxDOztBQUlBO0VBQ0Usb0NBQW9DO0FBRHRDOztBQUlBO0VBQ0UsY0FBYztBQURoQjs7QUFJQTtFQUNFLDRCQUE0QjtBQUQ5Qjs7QUFJQTtFQUNFLFlBQVk7RUFDWixZQUFZO0VBQ1osWUFBWTtFQUNaLFlBQVk7QUFEZDs7QUFJQTtFQUNFLHlCQUF5QjtFQUN6QixZQUFZO0VBQ1osWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixTQUFTO0VBQ1Qsa0JBQWtCO0FBRHBCOztBQUlBO0VBQ0UsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQix5QkFBeUI7RUFDekIsaUJBQWlCO0FBRG5COztBQUlBO0VBQ0UsaUJBQWlCO0VBQ2pCLFVBQVU7QUFEWjs7QUFJQTtFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0FBRGI7O0FBSUE7RUFDRSx3QkFBd0I7RUFDeEIsaUJBQWlCO0FBRG5COztBQUlBO0VBQ0UsbUJBQW1CO0VBQ25CLFlBQVk7QUFEZDs7QUFJQTtFQUNFLHFCQUFxQjtFQUNyQixjQUFjO0FBRGhCOztBQUlBO0VBQ0UsdUJBQXVCO0VBQ3ZCLGNBQWM7RUFDZCwyQkFBMkI7QUFEN0I7O0FBS0E7RUFDRSxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxZQUFZO0FBRmQ7O0FBS0E7RUFDRSxVQUFVO0VBQ1YsUUFBUTtFQUNSLFNBQVM7QUFGWDs7QUFLQTtFQUNFLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxRQUFRO0VBQ1IsU0FBUztFQUNULHNCQUFzQjtFQUV0QixlQUFlO0FBRmpCOztBQUtBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxZQUFZO0VBQ1osV0FBVztFQUNYLFNBQVM7RUFDVCxXQUFXO0VBQ1gsdUJBQXVCO0VBRXZCLGVBQWU7QUFGakI7O0FBS0E7RUFDRSx5QkFBeUI7QUFGM0I7O0FBS0E7RUFDRSwyQkFBMkI7QUFGN0I7O0FBS0E7RUFHRSwyQkFBMkI7QUFGN0I7O0FBS0Esb0JBQUE7O0FBQ0E7RUFDRSxtQkFBbUI7QUFGckI7O0FBS0E7RUFDRSxrQkFBa0I7QUFGcEI7O0FBTUE7RUFDRSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBQUhuQjs7QUFPQTtFQUNFLHlCQUF5QjtFQUN6QixlQUFlO0VBQ2YsWUFBWTtFQUNaLFlBQVk7QUFKZDs7QUFPQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0FBSlo7O0FBT0E7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQUpwQjs7QUFPQTtFQUNFLGdCQUFBO0VBQ0EsWUFBWTtBQUpkOztBQU9BO0VBQ0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixXQUFXO0FBSmI7O0FBT0E7RUFDRSxnQkFBQTtFQUNBLFlBQVk7RUFDWixlQUFlO0FBSmpCOztBQU9BO0VBQ0UseUJBQXlCO0VBQ3pCLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2IsMEJBQTBCO0VBQzFCLHNCQUFzQjtBQUp4Qjs7QUFPQTtFQUNFLFdBQVc7RUFDWCxtQ0FBbUM7RUFDbkMsb0NBQW9DO0VBQ3BDLGlDQUFpQztFQUNqQyxZQUFZO0VBQ1osV0FBVztFQUNYLGlCQUFpQjtFQUNqQixpQkFBaUI7QUFKbkI7O0FBT0E7RUFDRSxXQUFXO0VBQ1gsbUNBQW1DO0VBQ25DLG9DQUFvQztFQUNwQyxpQ0FBaUM7RUFDakMsWUFBWTtFQUNaLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBQUpuQjs7QUFPQTtFQUNFLFdBQVc7RUFDWCxtQ0FBbUM7RUFDbkMsb0NBQW9DO0VBQ3BDLGlDQUFpQztFQUNqQyxZQUFZO0VBQ1osV0FBVztFQUNYLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsaUJBQWlCO0FBSm5COztBQVNBO0VBQ0UsWUFBWTtFQUNaLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLHlCQUF5QjtBQU4zQjs7QUFTQTtFQUNFLFlBQVk7RUFDWixZQUFZO0VBQ1osWUFBWTtFQUNaLGdCQUFnQjtFQUNoQiwrQkFBK0I7QUFOakM7O0FBU0E7RUFDRSxpQkFBaUI7RUFDakIsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixnQkFBZ0I7QUFObEI7O0FBU0E7RUFDRSw4QkFBOEI7QUFOaEM7O0FBVUE7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7QUFQYjs7QUFXQTtFQUNFLGtCQUFrQjtFQUNsQixpQkFBaUI7QUFSbkIiLCJmaWxlIjoiYWR2YW5jZWQtcGFnZS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4uYnRuLXB1Ymxpc2gtb3JhbmdpdW0taG92ZXI6aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwN2M3MDAgIWltcG9ydGFudFxyXG59XHJcblxyXG4uYnRuLXNlY29uZGFyeSB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogI2JhYmFiYSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNhM2EzYTMgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gIG1hcmdpbi1sZWZ0OiAtMnB4O1xyXG4gIC8qd2lkdGg6IDE1MXB4OyovXHJcbiAgaGVpZ2h0OiA0NXB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmRyb3Bkb3duLWl0ZW0ge1xyXG4gIHBhZGRpbmc6IC4yNXJlbSAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tb2RlLWRyYWZ0LWNoZWNrYm94IHtcclxuICBoZWlnaHQ6IDEwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBib3R0b206IDQwcHg7XHJcbn1cclxuXHJcbi5tb2RlLWRyYWZ0LWNoZWNrYm94IGxhYmVsIHtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5hY3Rpb24tY29udHJvbHMgYnV0dG9uIHtcclxuICAvKndpZHRoOiAxNTFweDsqL1xyXG4gIGhlaWdodDogNDVweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmFiYWJhICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAjYmFiYWJhICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hY3Rpb24tY29udHJvbHMgYnV0dG9uOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNhM2EzICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hY3Rpb24tY29udHJvbHMgdWwgbGkge1xyXG4gIG1hcmdpbjogMTBweCAwO1xyXG59XHJcblxyXG4udGV4dC1yaWdodCB7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRleHQtcmlnaHQgYnV0dG9uIHtcclxuICBtYXJnaW46IDE4cHg7XHJcbiAgd2lkdGg6IDIwMHB4O1xyXG4gIGhlaWdodDogNDVweDtcclxuICBjb2xvcjogYmxhY2s7XHJcbn1cclxuXHJcbi5ub3RpZmljYXRpb24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzRjkzRjE7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG4gIHBhZGRpbmc6IDhweDtcclxuICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gIHRvcDogMjNweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5iYWRnZS10eXBlIHtcclxuICBib3JkZXI6IHNvbGlkIGxpZ2h0Z3JheSAxcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICBwYWRkaW5nOiA0cHggNXB4IDJweDtcclxuICBmb250LXNpemU6IDEwcHg7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XHJcbn1cclxuXHJcbi5iLXJlZCB7XHJcbiAgYm9yZGVyLWNvbG9yOiByZWQ7XHJcbiAgY29sb3I6IHJlZDtcclxufVxyXG5cclxuLmItYmx1ZSB7XHJcbiAgYm9yZGVyLWNvbG9yOiBibHVlO1xyXG4gIGNvbG9yOiBibHVlO1xyXG59XHJcblxyXG4uYi12aW9sZXQge1xyXG4gIGJvcmRlci1jb2xvcjogYmx1ZXZpb2xldDtcclxuICBjb2xvcjogYmx1ZXZpb2xldDtcclxufVxyXG5cclxuLmItZ3JlZW4ge1xyXG4gIGJvcmRlci1jb2xvcjogZ3JlZW47XHJcbiAgY29sb3I6IGdyZWVuO1xyXG59XHJcblxyXG4uYi1vcmFuZ2l1bSB7XHJcbiAgYm9yZGVyLWNvbG9yOiAjZjE5MTAwO1xyXG4gIGNvbG9yOiAjZjE5MTAwO1xyXG59XHJcblxyXG4uYi1ncmF5IHtcclxuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICBjb2xvcjogIzM0M2E0MDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XHJcbn1cclxuXHJcblxyXG4uc3dpdGNoIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiA2MHB4O1xyXG4gIGhlaWdodDogMzRweDtcclxufVxyXG5cclxuLnN3aXRjaCBpbnB1dCB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi5zbGlkZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgdHJhbnNpdGlvbjogLjRzO1xyXG59XHJcblxyXG4uc2xpZGVyOmJlZm9yZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgaGVpZ2h0OiAyNnB4O1xyXG4gIHdpZHRoOiAyNnB4O1xyXG4gIGxlZnQ6IDRweDtcclxuICBib3R0b206IDRweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcclxuICB0cmFuc2l0aW9uOiAuNHM7XHJcbn1cclxuXHJcbmlucHV0OmNoZWNrZWQgKyAuc2xpZGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE5MTAwO1xyXG59XHJcblxyXG5pbnB1dDpmb2N1cyArIC5zbGlkZXIge1xyXG4gIGJveC1zaGFkb3c6IDAgMCAxcHggI2YxOTEwMDtcclxufVxyXG5cclxuaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXI6YmVmb3JlIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcclxufVxyXG5cclxuLyogUm91bmRlZCBzbGlkZXJzICovXHJcbi5zbGlkZXIucm91bmQge1xyXG4gIGJvcmRlci1yYWRpdXM6IDM0cHg7XHJcbn1cclxuXHJcbi5zbGlkZXIucm91bmQ6YmVmb3JlIHtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuXHJcblxyXG4uYnRuLWRlbGV0ZS1vcmFuZ2l1bSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBsaW5lLWhlaWdodDogNDBweDtcclxuICAvLyBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi5idG4tZGVsZXRlLW9yYW5naXVtIGEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNDRDAwMDA7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGhlaWdodDogNDVweDtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5idG4tZGVsZXRlLW9yYW5naXVtIGltZyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGxlZnQ6IDE1cHg7XHJcbn1cclxuXHJcbi5idG4tcHVibGlzaC1vcmFuZ2l1bSwgLmJ0bi1zYXZlLW9yYW5naXVtIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4uYnRuLXB1Ymxpc2gtb3JhbmdpdW0gYSB7XHJcbiAgLyp3aWR0aDogMTUxcHg7Ki9cclxuICBoZWlnaHQ6IDQ1cHg7XHJcbn1cclxuXHJcbi5idG4tcHVibGlzaC1vcmFuZ2l1bSBpbWcsIC5idG4tc2F2ZS1vcmFuZ2l1bSBpbWcge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBoZWlnaHQ6IDI1cHg7XHJcbiAgd2lkdGg6IDI1cHg7XHJcbn1cclxuXHJcbi5idG4tc2F2ZS1vcmFuZ2l1bSBhIHtcclxuICAvKndpZHRoOiAxNTFweDsqL1xyXG4gIGhlaWdodDogNDVweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5idWJibGUtY29udGVudC1sZWZ0LCAuYnViYmxlLWNvbnRlbnQtcmlnaHQsIC5idWJibGUtY29udGVudCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcclxuICBtYXJnaW4tdG9wOiAxNXB4O1xyXG4gIHBhZGRpbmc6IDUwcHg7XHJcbiAgb3ZlcmZsb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgei1pbmRleDogOTkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJ1YmJsZS1jb250ZW50LXJpZ2h0OjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgYm9yZGVyLWxlZnQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206IDcwcHggc29saWQgI2VjZWNlYztcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgd2lkdGg6IDIwcHg7XHJcbiAgbWFyZ2luLXRvcDogLTcwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDgwcHg7XHJcbn1cclxuXHJcbi5idWJibGUtY29udGVudC1sZWZ0OjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgYm9yZGVyLWxlZnQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206IDcwcHggc29saWQgI2VjZWNlYztcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgd2lkdGg6IDIwcHg7XHJcbiAgbWFyZ2luLXRvcDogLTcwcHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG1hcmdpbi1sZWZ0OiA4MHB4O1xyXG59XHJcblxyXG4uYnViYmxlLWNvbnRlbnQtY29udGV4dDo6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgYm9yZGVyLWxlZnQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206IDcwcHggc29saWQgI2VjZWNlYztcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgd2lkdGg6IDIwcHg7XHJcbiAgbWFyZ2luLXRvcDogLTcwcHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG1hcmdpbi1sZWZ0OiA4MHB4O1xyXG59XHJcblxyXG5cclxuXHJcbi5idG4tb3JhbmdpdW0tc2F2ZSB7XHJcbiAgd2lkdGg6IDEyMHB4O1xyXG4gIGhlaWdodDogMzBweDtcclxuICBsaW5lLWhlaWdodDogMC41O1xyXG4gIGNvbG9yOiBibGFjaztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI5MTAwO1xyXG59XHJcblxyXG4uYnRuLW9yYW5naXVtLWNhbmNlbCB7XHJcbiAgd2lkdGg6IDEyMHB4O1xyXG4gIGhlaWdodDogNDVweDtcclxuICBjb2xvcjogYmxhY2s7XHJcbiAgbGluZS1oZWlnaHQ6IDAuNTtcclxuICBtYXJnaW4tcmlnaHQ6IDIuNXJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc2VjdGlvbi1sdCB7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgd2lkdGg6IHVuc2V0O1xyXG4gIG1hcmdpbi1yaWdodDogMjBweDtcclxuICBtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4uc2VjdGlvbi1sdCAuZm9sZGVyLWJsayB7XHJcbiAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLmJ0bi1jbG9uZS1vcmFuZ2l1bSBpbWcge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBoZWlnaHQ6IDI1cHg7XHJcbiAgd2lkdGg6IDI1cHg7XHJcbn1cclxuXHJcblxyXG4uYnRuLWNsb25lLW9yYW5naXVtIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbn1cclxuIl19 */\";","import { Injectable } from '@angular/core';\r\nimport { BaseService } from \"../base/base.service\";\r\nimport { ContentFactory } from '../../squidex';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ResourceService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n super('resource', contentFactory);\r\n }\r\n}\r\n","\r\nexport enum EFieldType {\r\n INPUT,\r\n FILE,\r\n TEXTAREA,\r\n CHECKBOX,\r\n RADIO,\r\n SELECT,\r\n DATE,\r\n MAIL,\r\n MONACO_HTML,\r\n SELECT_MULTIPLE,\r\n ORDONNABLE_SELECT_MULTIPLE,\r\n STRING_SELECT,\r\n DATE_TIME\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { PageStore } from './page.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageQuery extends BaseQuery {\r\n\r\n constructor(store: PageStore) {\r\n super(store);\r\n }\r\n}\r\n","import { TranslateService } from '@ngx-translate/core';\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { DataParser } from \"../../../services\";\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { of } from 'rxjs/internal/observable/of';\r\nimport { map } from 'rxjs/internal/operators/map';\r\n\r\n@Pipe({\r\n name: 'getCultureName'\r\n})\r\nexport class GetCultureNamePipe implements PipeTransform {\r\n\r\n constructor(\r\n protected readonly translateService: TranslateService) {\r\n }\r\n\r\n transform(code: string, interpolateParams?: Object): Observable {\r\n\r\n if(!code) {\r\n return of(code);\r\n }\r\n return this.t(code.toUpperCase()).pipe(\r\n map(v => {\r\n if (!v || v.toString().includes('T.')) {\r\n v = code;\r\n }\r\n return v;\r\n })\r\n );\r\n\r\n\r\n }\r\n\r\n\r\n t(key?: string, interpolateParams?: Object): Observable {\r\n if (!key) {\r\n return this.translateService.get('T', interpolateParams);\r\n }\r\n return this.translateService.get(`T.${key}`, interpolateParams);\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from \"../../../base/base-component.component\";\r\nimport { DataParser } from \"../../../services/squidex/index\";\r\nimport { SiteSettingModel } from '../../../services';\r\nimport { Observable } from 'rxjs';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ContentsComponent } from '../../../pages/contents/contents.component';\r\n\r\n@Component({\r\n selector: 'menu-header',\r\n templateUrl: './menu-header.component.html',\r\n styleUrls: ['./menu-header.component.css']\r\n})\r\nexport class MenuHeaderComponent extends BaseComponent implements OnInit {\r\n\r\n siteName: string;\r\n\r\n dataParser: DataParser;\r\n isDashboard: boolean = false;\r\n\r\n @Input()\r\n siteSetting: Observable;\r\n\r\n constructor(\r\n protected readonly translateService: TranslateService,\r\n private readonly route: ActivatedRoute) {\r\n super(translateService);\r\n this.setTranslateContext('MenuHeaderComponent');\r\n this.dataParser = new DataParser(null);\r\n }\r\n\r\n ngOnInit() {\r\n this.setSiteName();\r\n if (ContentsComponent.toString() === this.route.component.toString()) {\r\n this.isDashboard = true;\r\n } else {\r\n this.isDashboard = false;\r\n }\r\n }\r\n\r\n private setSiteName(): void {\r\n if (this.siteSetting) {\r\n this.siteSetting.subscribe(v => {\r\n this.siteName = this.dataParser.pullData(v, 'name', this.translateService.currentLang);\r\n });\r\n } else {\r\n this.siteName = \"Error: site setting not loaded\";\r\n }\r\n }\r\n}\r\n","export default \".liquid-editor {\\r\\n height: 100% !important;\\r\\n}\\r\\n\\r\\n.editor-container {\\r\\n height: 100% !important;\\r\\n}\\r\\n\\r\\n.liquid-editor .editor-container .wrapper {\\r\\n width: 100% !important;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vbmFjby1saXF1aWQtZWRpdG9yLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBR0E7RUFDRSxzQkFBc0I7QUFDeEIiLCJmaWxlIjoibW9uYWNvLWxpcXVpZC1lZGl0b3IuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5saXF1aWQtZWRpdG9yIHtcclxuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmVkaXRvci1jb250YWluZXIge1xyXG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLmxpcXVpZC1lZGl0b3IgLmVkaXRvci1jb250YWluZXIgLndyYXBwZXIge1xyXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuIl19 */\";","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { Field } from '../../../../services';\r\n\r\n@Pipe({\r\n name: 'getValidationMsgs'\r\n})\r\nexport class GetValidationMsgsPipe implements PipeTransform {\r\n\r\n transform(field: Field): string[] {\r\n const validations = [];\r\n\r\n if (field.properties.isRequired) {\r\n validations.push('REQUIRED');\r\n }\r\n\r\n if (field.name === 'code') {\r\n validations.push('CODE');\r\n }\r\n\r\n return validations;\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { LanguageModel } from '../../../services';\r\n\r\n@Pipe({\r\n name: 'getLocalizedFieldControlName'\r\n})\r\nexport class GetLocalizedFieldControlNamePipe implements PipeTransform {\r\n\r\n transform(property: string, language: LanguageModel): string {\r\n return `${property}_${language.data.code.iv}`;\r\n }\r\n\r\n}\r\n","export default \"\\r\\n
  • \\r\\n \\r\\n
    \\r\\n
      \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n
    \\r\\n\\r\\n\\r\\n
  • \\r\\n \\r\\n
  • \\r\\n
    \\r\\n\";","export default \"\\r\\n\\r\\n\";","import { Link } from './link.model';\r\nimport { Field } from './field.model';\r\nimport { ESchemaContentStatus } from '../../akita/base/enum';\r\nimport { ScheduleJob } from './schedule-Job.model';\r\n\r\nexport abstract class Content {\r\n created: Date;\r\n createdBy: string;\r\n data: any;\r\n id: string;\r\n lastModified: Date;\r\n lastModifiedBy: string;\r\n schemaName: string;\r\n schemaDisplayName: string;\r\n referenceFields: Field[];\r\n scheduleJob: ScheduleJob;\r\n status: string;\r\n newStatus: string;\r\n statusColor: string;\r\n newStatusColor: string;\r\n version: number;\r\n _links: { [id: string]: Link };\r\n\r\n constructor({\r\n created,\r\n createdBy,\r\n data,\r\n id,\r\n lastModified,\r\n lastModifiedBy,\r\n schemaName,\r\n schemaDisplayName,\r\n referenceFields,\r\n scheduleJob,\r\n status,\r\n newStatus,\r\n statusColor,\r\n newStatusColor,\r\n version,\r\n _links\r\n }: Partial) {\r\n this.created = created;\r\n this.createdBy = createdBy;\r\n this.id = id;\r\n this.lastModified = lastModified;\r\n this.lastModifiedBy = lastModifiedBy;\r\n this.schemaName = schemaName;\r\n this.schemaDisplayName = schemaDisplayName;\r\n this.referenceFields = referenceFields;\r\n this.scheduleJob = scheduleJob;\r\n this.status = status;\r\n this.newStatus = newStatus;\r\n this.statusColor = statusColor;\r\n this.newStatusColor = newStatusColor;\r\n this.version = version;\r\n this._links = _links;\r\n\r\n if (!data) {\r\n data = {};\r\n }\r\n this.data = data;\r\n }\r\n\r\n isPublished(): boolean {\r\n return this.status && this.status.toLowerCase() === 'published';\r\n }\r\n\r\n getStatus(): ESchemaContentStatus {\r\n switch (this.status && this.status.toLowerCase()) {\r\n case 'published':\r\n return ESchemaContentStatus.Draft;\r\n case 'draft':\r\n return ESchemaContentStatus.Draft;\r\n default: return ESchemaContentStatus.All;\r\n }\r\n }\r\n}\r\n","export { SquidexDate } from './extensions/squidex-date.extension';\r\nexport { AppCreationService } from './services/app-creation.service';\r\n\r\nexport { Content } from './models/content.model';\r\nexport { ContentList } from './models/content-list.model';\r\nexport { FieldProperty } from './models/field-property.model';\r\nexport { Field } from './models/field.model';\r\nexport { Schema } from './models/schema.model';\r\nexport { SchemaProperty } from './models/schema-property.model';\r\nexport { SchemaScript } from './models/schema-script.model';\r\n\r\nexport { SchemasFactory } from './factories/schemas.factory';\r\nexport { ContentFactory } from './factories/content.factory';\r\nexport { SchemaService } from './services/schema.service';\r\nexport { ContentService } from './services/content.service';\r\n\r\nexport { DataParser } from './data-parser';\r\n\r\nexport { ScheduleJob } from './models/schedule-Job.model';\r\n\r\nexport { Asset } from './models/asset.model';\r\nexport { AssetList } from './models/asset-list.model';\r\nexport { AssetFactory } from './factories/asset.factory';\r\n\r\n\r\nexport { RolesService } from './services/roles.service'\r\nexport { RolesFactory } from './factories/roles.factory'\r\nexport { Role } from './models/role.model'\r\n\r\n","import { ArticleTypeStore } from './article-type.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from \"../base/base.query\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleTypeQuery extends BaseQuery {\r\n\r\n constructor(store: ArticleTypeStore) {\r\n super(store);\r\n }\r\n}\r\n","export default \".position-1 {\\r\\n position: absolute;\\r\\n left: 0px;\\r\\n top: 0px;\\r\\n}\\r\\n\\r\\n.position-2 {\\r\\n position: absolute;\\r\\n left: 300px;\\r\\n top: 0px;\\r\\n}\\r\\n\\r\\n.position-3 {\\r\\n position: absolute;\\r\\n left: 600px;\\r\\n top: 0px;\\r\\n}\\r\\n\\r\\n.btn-orangium-save {\\r\\n height: 30px;\\r\\n line-height: 0.5;\\r\\n color: black;\\r\\n background-color: #F29100;\\r\\n}\\r\\n\\r\\n.btn-orangium-cancel {\\r\\n height: 30px;\\r\\n color: black;\\r\\n line-height: 0.5;\\r\\n margin-right: 2.5rem !important;\\r\\n}\\r\\n\\r\\n.cursor-pointer {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n.folder-blk div {\\r\\n background-color: #f29100;\\r\\n color: #303130;\\r\\n font-size: 14px;\\r\\n font-weight: 700;\\r\\n padding: 2px 14px 5px 8px;\\r\\n text-transform: uppercase;\\r\\n border-radius: 5px;\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .page-item.active .page-link {\\r\\n background-color: white;\\r\\n text-decoration: underline;\\r\\n border-color: #dee2e6;\\r\\n color: black;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .page-item .page-link {\\r\\n color: #000;\\r\\n}\\r\\n\\r\\n#button-pagination-size {\\r\\n background-color: #f29100;\\r\\n border: none;\\r\\n color: #303130;\\r\\n}\\r\\n\\r\\n.switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n}\\r\\n\\r\\n.switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n\\r\\n.slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n transition: .4s;\\r\\n}\\r\\n\\r\\n.slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n transition: .4s;\\r\\n }\\r\\n\\r\\ninput:checked + .slider {\\r\\n background-color: #f19100;\\r\\n}\\r\\n\\r\\ninput:focus + .slider {\\r\\n box-shadow: 0 0 1px #f19100;\\r\\n}\\r\\n\\r\\ninput:checked + .slider:before {\\r\\n transform: translateX(26px);\\r\\n}\\r\\n\\r\\n/* Rounded sliders */\\r\\n\\r\\n.slider.round {\\r\\n border-radius: 34px;\\r\\n}\\r\\n\\r\\n.slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n\\r\\n.plus-icon {\\r\\n margin-right: 4px;\\r\\n margin-bottom: 4px;\\r\\n}\\r\\n\\r\\n.bubble-content-left, .bubble-content-right, .bubble-content {\\r\\n background-color: white;\\r\\n margin-top: 15px;\\r\\n padding: 50px;\\r\\n overflow: unset !important;\\r\\n}\\r\\n\\r\\n.bubble-content-right::before {\\r\\n content: \\\"\\\";\\r\\n border-left: 30px solid transparent;\\r\\n border-right: 30px solid transparent;\\r\\n border-bottom: 70px solid white;\\r\\n float: right;\\r\\n width: 20px;\\r\\n margin-top: -70px;\\r\\n margin-left: 80px;\\r\\n }\\r\\n\\r\\n.bubble-content-left::before {\\r\\n content: \\\"\\\";\\r\\n border-left: 30px solid transparent;\\r\\n border-right: 30px solid transparent;\\r\\n border-bottom: 70px solid white;\\r\\n float: right;\\r\\n width: 20px;\\r\\n margin-top: -70px;\\r\\n position: absolute;\\r\\n margin-left: 80px;\\r\\n }\\r\\n\\r\\n.bubble-content-context::after {\\r\\n content: \\\"\\\";\\r\\n border-left: 30px solid transparent;\\r\\n border-right: 30px solid transparent;\\r\\n border-bottom: 70px solid white;\\r\\n float: right;\\r\\n width: 20px;\\r\\n margin-top: -70px;\\r\\n position: absolute;\\r\\n margin-left: 80px;\\r\\n}\\r\\n\\r\\n.folder-blk {\\r\\n margin-bottom: 25px;\\r\\n}\\r\\n\\r\\n.btn-orangium-cancel {\\r\\n width: 120px;\\r\\n height: 30px;\\r\\n color: #fff !important;\\r\\n background-color: #545b62;\\r\\n color: black;\\r\\n line-height: 0.5;\\r\\n margin-right: 2.5rem !important;\\r\\n padding: 10px 16px 10px 16px !important;\\r\\n}\\r\\n\\r\\n.btn-cancel-orangium a {\\r\\n /*width: 151px;*/\\r\\n height: 45px;\\r\\n cursor: pointer;\\r\\n padding: 10px 16px 10px 16px !important;\\r\\n background-color: #545b62 !important;\\r\\n color: #fff !important;\\r\\n}\\r\\n\\r\\n.btn-save-orangium a {\\r\\n /*width: 151px;*/\\r\\n height: 45px;\\r\\n cursor: pointer;\\r\\n padding: 10px 16px 10px 16px !important;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .page-item.active .page-link {\\r\\n background-color: #f29100;\\r\\n border-color: #e28100;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,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dCI6WyIucG9zaXRpb24tMSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDBweDtcclxuICB0b3A6IDBweDtcclxufVxyXG5cclxuLnBvc2l0aW9uLTIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAzMDBweDtcclxuICB0b3A6IDBweDtcclxufVxyXG5cclxuLnBvc2l0aW9uLTMge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA2MDBweDtcclxuICB0b3A6IDBweDtcclxufVxyXG5cclxuXHJcbi5idG4tb3JhbmdpdW0tc2F2ZSB7XHJcbiAgaGVpZ2h0OiAzMHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAwLjU7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNGMjkxMDA7XHJcbn1cclxuXHJcbi5idG4tb3JhbmdpdW0tY2FuY2VsIHtcclxuICBoZWlnaHQ6IDMwcHg7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIGxpbmUtaGVpZ2h0OiAwLjU7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyLjVyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmN1cnNvci1wb2ludGVyIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5mb2xkZXItYmxrIGRpdiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyOTEwMDtcclxuICBjb2xvcjogIzMwMzEzMDtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBwYWRkaW5nOiAycHggMTRweCA1cHggOHB4O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuOmhvc3QgOjpuZy1kZWVwIC5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcclxuICBjb2xvcjogYmxhY2s7XHJcbn1cclxuXHJcbjpob3N0IDo6bmctZGVlcCAucGFnZS1pdGVtIC5wYWdlLWxpbmsge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG59XHJcblxyXG5cclxuXHJcbiNidXR0b24tcGFnaW5hdGlvbi1zaXplIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI5MTAwO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBjb2xvcjogIzMwMzEzMDtcclxufVxyXG5cclxuXHJcblxyXG4uc3dpdGNoIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiA2MHB4O1xyXG4gIGhlaWdodDogMzRweDtcclxufVxyXG5cclxuICAuc3dpdGNoIGlucHV0IHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICB9XHJcblxyXG4uc2xpZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gIHRyYW5zaXRpb246IC40cztcclxufVxyXG5cclxuICAuc2xpZGVyOmJlZm9yZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgaGVpZ2h0OiAyNnB4O1xyXG4gICAgd2lkdGg6IDI2cHg7XHJcbiAgICBsZWZ0OiA0cHg7XHJcbiAgICBib3R0b206IDRweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgICB0cmFuc2l0aW9uOiAuNHM7XHJcbiAgfVxyXG5cclxuaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMTkxMDA7XHJcbn1cclxuXHJcbmlucHV0OmZvY3VzICsgLnNsaWRlciB7XHJcbiAgYm94LXNoYWRvdzogMCAwIDFweCAjZjE5MTAwO1xyXG59XHJcblxyXG5pbnB1dDpjaGVja2VkICsgLnNsaWRlcjpiZWZvcmUge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG59XHJcblxyXG4vKiBSb3VuZGVkIHNsaWRlcnMgKi9cclxuLnNsaWRlci5yb3VuZCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMzRweDtcclxufVxyXG5cclxuICAuc2xpZGVyLnJvdW5kOmJlZm9yZSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgfVxyXG5cclxuLnBsdXMtaWNvbiB7XHJcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG59XHJcblxyXG4uYnViYmxlLWNvbnRlbnQtbGVmdCwgLmJ1YmJsZS1jb250ZW50LXJpZ2h0LCAuYnViYmxlLWNvbnRlbnQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgcGFkZGluZzogNTBweDtcclxuICBvdmVyZmxvdzogdW5zZXQgIWltcG9ydGFudDtcclxufVxyXG5cclxuICAuYnViYmxlLWNvbnRlbnQtcmlnaHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmlnaHQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiA3MHB4IHNvbGlkIHdoaXRlO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAtNzBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xyXG4gIH1cclxuXHJcbiAgLmJ1YmJsZS1jb250ZW50LWxlZnQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmlnaHQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiA3MHB4IHNvbGlkIHdoaXRlO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAtNzBweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xyXG4gIH1cclxuXHJcbi5idWJibGUtY29udGVudC1jb250ZXh0OjphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBib3JkZXItbGVmdDogMzBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogNzBweCBzb2xpZCB3aGl0ZTtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgd2lkdGg6IDIwcHg7XHJcbiAgbWFyZ2luLXRvcDogLTcwcHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG1hcmdpbi1sZWZ0OiA4MHB4O1xyXG59XHJcblxyXG5cclxuLmZvbGRlci1ibGsge1xyXG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbn1cclxuXHJcbi5idG4tb3JhbmdpdW0tY2FuY2VsIHtcclxuICB3aWR0aDogMTIwcHg7XHJcbiAgaGVpZ2h0OiAzMHB4O1xyXG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NWI2MjtcclxuICBjb2xvcjogYmxhY2s7XHJcbiAgbGluZS1oZWlnaHQ6IDAuNTtcclxuICBtYXJnaW4tcmlnaHQ6IDIuNXJlbSAhaW1wb3J0YW50O1xyXG4gIHBhZGRpbmc6IDEwcHggMTZweCAxMHB4IDE2cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJ0bi1jYW5jZWwtb3JhbmdpdW0gYSB7XHJcbiAgLyp3aWR0aDogMTUxcHg7Ki9cclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHBhZGRpbmc6IDEwcHggMTZweCAxMHB4IDE2cHggIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1YjYyICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJ0bi1zYXZlLW9yYW5naXVtIGEge1xyXG4gIC8qd2lkdGg6IDE1MXB4OyovXHJcbiAgaGVpZ2h0OiA0NXB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBwYWRkaW5nOiAxMHB4IDE2cHggMTBweCAxNnB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjpob3N0IDo6bmctZGVlcCAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI5MTAwO1xyXG4gIGJvcmRlci1jb2xvcjogI2UyODEwMDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuIl19 */\";","import { Content } from \"../../squidex\";\r\n\r\nexport class PageCategoryModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","export default \"
    \\r\\n
    \\r\\n
    {{ tc(\\\"CONTENTS\\\") | async }}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"MEDIAS\\\") | async }}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"MODULES\\\") | async }}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"ADMIN\\\") | async }}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\";","export class Role {\r\n isDefaultRole: boolean;\r\n name: string;\r\n numClients: number;\r\n numContributor: number;\r\n permissions: string[];\r\n properties: {}\r\n _links: {}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ValidatorFn, AbstractControl } from '@angular/forms';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class FormValidationsService {\r\n\r\n getValidators(control: AbstractControl, pattern: string): ValidatorFn[] {\r\n const validators: ValidatorFn[] = [];\r\n\r\n if (pattern === 'email') {\r\n validators.push(this.emailValidator(control));\r\n } else if (pattern === 'password') {\r\n validators.push(this.passwordValidator(control));\r\n } else if (pattern === 'creditCard') {\r\n validators.push(this.creditCardValidator(control));\r\n } else if (pattern === 'phone') {\r\n validators.push(this.phoneValidator(control));\r\n } else if (pattern === 'url') {\r\n validators.push(this.urlValidator(control));\r\n } else if (pattern === 'slug') {\r\n validators.push(this.slugValidator(control));\r\n } else {\r\n validators.push(this.customPattern(control, pattern));\r\n }\r\n\r\n return validators;\r\n }\r\n\r\n private creditCardValidator(control: AbstractControl): ValidatorFn {\r\n // Visa, MasterCard, American Express, Diners Club, Discover, JCB\r\n return (): { [key: string]: any } | null => {\r\n const validCreditCard = control.value.match(/^(?=.*[0-9])[a-zA-Z0-9!@#$%^&*]{6,100}$/);\r\n return !validCreditCard ? { 'invalidCreditCard': { value: control.value } } : null;\r\n };\r\n }\r\n\r\n private emailValidator(control: AbstractControl): ValidatorFn {\r\n return (): { [key: string]: any } | null => {\r\n const validEmail = control.value.match(/[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/);\r\n return !validEmail ? { 'invalidEmailAddress': { value: control.value } } : null;\r\n };\r\n }\r\n\r\n private passwordValidator(control: AbstractControl) {\r\n // {6,100} - Assert password is between 6 and 100 characters\r\n // (?=.*[0-9]) - Assert a string has at least one number\r\n return (): { [key: string]: any } | null => {\r\n const validPassword = control.value.match(/^(?=.*[0-9])[a-zA-Z0-9!@#$%^&*]{6,100}$/);\r\n return !validPassword ? { 'invalidPassword': { value: control.value } } : null;\r\n };\r\n }\r\n\r\n private slugValidator(control: AbstractControl): ValidatorFn {\r\n return (): { [key: string]: any } | null => {\r\n const validSlug = control.value.match(/^[a-z0-9]+(\\-[a-z0-9]+)*$/);\r\n return !validSlug ? { 'invalidSlug': { value: control.value } } : null;\r\n };\r\n }\r\n\r\n private urlValidator(control: AbstractControl): ValidatorFn {\r\n return (): { [key: string]: any } | null => {\r\n const validUrl = control.value.match(/^(?:http(s)?:\\/\\/)?[\\w.-]+(?:\\.[\\w\\.-]+)+[\\w\\-\\._~:\\/?#%[\\]@!\\$&'\\(\\)\\*\\+,;=.]+$/);\r\n return !validUrl ? { 'invalidUrl': { value: control.value } } : null;\r\n };\r\n }\r\n\r\n private phoneValidator(control: AbstractControl): ValidatorFn {\r\n return (): { [key: string]: any } | null => {\r\n const validPhone = control.value.match(/^\\(*\\+*[1-9]{0,3}\\)*-*[1-9]{0,3}[-. /]*\\(*[2-9]\\d{2}\\)*[-. /]*\\d{3}[-. /]*\\d{4} *e*x*t*\\.* *\\d{0,4}$/);\r\n return !validPhone ? { 'invalidPhone': { value: control.value } } : null;\r\n };\r\n }\r\n\r\n //custom validation\r\n private customPattern(control: AbstractControl, patterReg: string) {\r\n return (): { [key: string]: any } | null => {\r\n if (control.value) {\r\n const validPassword = control.value.match(patterReg);\r\n return !validPassword ? { 'customPattern': { value: control.value } } : null;\r\n } else {\r\n return null;\r\n }\r\n };\r\n }\r\n\r\n}\r\n","export default \".text-right {\\r\\n text-align: right !important;\\r\\n}\\r\\n\\r\\n .text-right button {\\r\\n width: 200px;\\r\\n height: 45px;\\r\\n color: black;\\r\\n }\\r\\n\\r\\n :host ::ng-deep .ck-editor__editable_inline {\\r\\n min-height: 150px;\\r\\n}\\r\\n\\r\\n .btn-secondary {\\r\\n color: #fff;\\r\\n background-color: #bababa !important;\\r\\n border-color: #bababa !important;\\r\\n}\\r\\n\\r\\n .btn-secondary:hover {\\r\\n background-color: #a3a3a3 !important;\\r\\n }\\r\\n\\r\\n .show > .btn-secondary.dropdown-toggle {\\r\\n color: #fff;\\r\\n background-color: #bababa !important;\\r\\n border-color: #bababa !important;\\r\\n}\\r\\n\\r\\n .show > .btn-secondary.dropdown-toggle:hover {\\r\\n background-color: #a3a3a3 !important\\r\\n }\\r\\n\\r\\n .btn-group > .btn-group:not(:first-child) {\\r\\n margin-left: -2px;\\r\\n width: 151px;\\r\\n height: 45px;\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n .dropdown-item {\\r\\n padding: .25rem 0 !important;\\r\\n}\\r\\n\\r\\n .btn-delete-orangium {\\r\\n position: relative;\\r\\n text-align: center;\\r\\n line-height: 40px;\\r\\n}\\r\\n\\r\\n .btn-delete-orangium a {\\r\\n background-color: #CD0000;\\r\\n width: 151px;\\r\\n height: 45px;\\r\\n color: white;\\r\\n cursor: pointer;\\r\\n }\\r\\n\\r\\n .btn-delete-orangium img {\\r\\n position: relative;\\r\\n left: 15px;\\r\\n }\\r\\n\\r\\n .btn-publish-orangium, .btn-save-orangium {\\r\\n text-align: center;\\r\\n line-height: 40px;\\r\\n}\\r\\n\\r\\n .btn-publish-orangium a {\\r\\n width: 151px;\\r\\n height: 45px;\\r\\n }\\r\\n\\r\\n .btn-publish-orangium img, .btn-save-orangium img {\\r\\n position: relative;\\r\\n height: 25px;\\r\\n width: 25px;\\r\\n }\\r\\n\\r\\n .btn-save-orangium a {\\r\\n width: 151px;\\r\\n height: 45px;\\r\\n cursor: pointer;\\r\\n }\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNjaGVtYS1wYWdlLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSw0QkFBNEI7QUFDOUI7O0VBRUU7SUFDRSxZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7RUFDZDs7RUFHRjtFQUNFLGlCQUFpQjtBQUNuQjs7RUFFQTtFQUNFLFdBQVc7RUFDWCxvQ0FBb0M7RUFDcEMsZ0NBQWdDO0FBQ2xDOztFQUVFO0lBQ0Usb0NBQW9DO0VBQ3RDOztFQUVGO0VBQ0UsV0FBVztFQUNYLG9DQUFvQztFQUNwQyxnQ0FBZ0M7QUFDbEM7O0VBRUU7SUFDRTtFQUNGOztFQUVGO0VBQ0UsaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixZQUFZO0VBQ1osZUFBZTtBQUNqQjs7RUFFQTtFQUNFLDRCQUE0QjtBQUM5Qjs7RUFHQTtFQUNFLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsaUJBQWlCO0FBQ25COztFQUVFO0lBQ0UseUJBQXlCO0lBQ3pCLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLGVBQWU7RUFDakI7O0VBRUE7SUFDRSxrQkFBa0I7SUFDbEIsVUFBVTtFQUNaOztFQUVGO0VBQ0Usa0JBQWtCO0VBQ2xCLGlCQUFpQjtBQUNuQjs7RUFFRTtJQUNFLFlBQVk7SUFDWixZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLFdBQVc7RUFDYjs7RUFFQTtJQUNFLFlBQVk7SUFDWixZQUFZO0lBQ1osZUFBZTtFQUNqQiIsImZpbGUiOiJzY2hlbWEtcGFnZS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnRleHQtcmlnaHQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiAgLnRleHQtcmlnaHQgYnV0dG9uIHtcclxuICAgIHdpZHRoOiAyMDBweDtcclxuICAgIGhlaWdodDogNDVweDtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICB9XHJcblxyXG5cclxuOmhvc3QgOjpuZy1kZWVwIC5jay1lZGl0b3JfX2VkaXRhYmxlX2lubGluZSB7XHJcbiAgbWluLWhlaWdodDogMTUwcHg7XHJcbn1cclxuXHJcbi5idG4tc2Vjb25kYXJ5IHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmFiYWJhICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAjYmFiYWJhICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiAgLmJ0bi1zZWNvbmRhcnk6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMyAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbi5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmFiYWJhICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAjYmFiYWJhICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiAgLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMyAhaW1wb3J0YW50XHJcbiAgfVxyXG5cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gIG1hcmdpbi1sZWZ0OiAtMnB4O1xyXG4gIHdpZHRoOiAxNTFweDtcclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZHJvcGRvd24taXRlbSB7XHJcbiAgcGFkZGluZzogLjI1cmVtIDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi5idG4tZGVsZXRlLW9yYW5naXVtIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG59XHJcblxyXG4gIC5idG4tZGVsZXRlLW9yYW5naXVtIGEge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0NEMDAwMDtcclxuICAgIHdpZHRoOiAxNTFweDtcclxuICAgIGhlaWdodDogNDVweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcblxyXG4gIC5idG4tZGVsZXRlLW9yYW5naXVtIGltZyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBsZWZ0OiAxNXB4O1xyXG4gIH1cclxuXHJcbi5idG4tcHVibGlzaC1vcmFuZ2l1bSwgLmJ0bi1zYXZlLW9yYW5naXVtIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbn1cclxuXHJcbiAgLmJ0bi1wdWJsaXNoLW9yYW5naXVtIGEge1xyXG4gICAgd2lkdGg6IDE1MXB4O1xyXG4gICAgaGVpZ2h0OiA0NXB4O1xyXG4gIH1cclxuXHJcbiAgLmJ0bi1wdWJsaXNoLW9yYW5naXVtIGltZywgLmJ0bi1zYXZlLW9yYW5naXVtIGltZyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICB3aWR0aDogMjVweDtcclxuICB9XHJcblxyXG4gIC5idG4tc2F2ZS1vcmFuZ2l1bSBhIHtcclxuICAgIHdpZHRoOiAxNTFweDtcclxuICAgIGhlaWdodDogNDVweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiJdfQ== */\";","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class PersistenceStorageService {\r\n\r\n constructor() { }\r\n\r\n set(key: string, data: any): void {\r\n try {\r\n localStorage.setItem(key, JSON.stringify(data));\r\n } catch (e) {\r\n console.error('Error saving to storage', e);\r\n }\r\n }\r\n\r\n get(key: string) {\r\n try {\r\n return JSON.parse(localStorage.getItem(key));\r\n } catch (e) {\r\n console.error('Error getting data from storage', e);\r\n return null;\r\n }\r\n }\r\n\r\n remove(key: string) {\r\n try {\r\n localStorage.removeItem(key);\r\n } catch (e) {\r\n console.error('Error removing data from storage', e);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from \"../base/base.service\";\r\nimport { SchemasFactory, ContentFactory } from '../../squidex';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleTypeService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n super('article-type', contentFactory);\r\n }\r\n}\r\n","export class SchemaProperty {\r\n hints: string;\r\n label: string;\r\n tags: string[];\r\n}\r\n","import { Component, OnInit, } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'public',\r\n templateUrl: './public.component.html'\r\n})\r\nexport class PublicComponent implements OnInit {\r\n ngOnInit(): void {\r\n\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppTokenService } from '../../../app-token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppTokenService.MENU_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class MenuStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}\r\n","import { Component, OnInit, EventEmitter, Output, AfterViewInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from \"../../../base/base-component.component\";\r\nimport { AppConfigProvider } from \"../../../app-config.provider\";\r\nimport { PersistenceStorageService } from \"../../../services\";\r\nimport { AppToken } from \"../../../models/app-token\";\r\nimport { PageTitleService } from \"../../../services/general/page-title.service\";\r\nimport { AuthenticationService } from \"../../../services/general/index\";\r\n\r\n@Component({\r\n selector: 'top-menu',\r\n templateUrl: './top-menu.component.html',\r\n styleUrls: ['./top-menu.component.css']\r\n})\r\nexport class TopMenuComponent extends BaseComponent implements OnInit, AfterViewInit {\r\n\r\n @Output()\r\n whenLanguageChange = new EventEmitter();\r\n\r\n availableLanguages: string[];\r\n availableLanguagesNames: {};\r\n username: string;\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n\r\n previewUrl: string = '';\r\n previewPage: string = ''; // Not used\r\n\r\n\r\n constructor(\r\n private readonly persistenceStorageService: PersistenceStorageService,\r\n protected readonly translateService: TranslateService,\r\n private readonly pageTitleService: PageTitleService,\r\n private readonly authenticationService: AuthenticationService,\r\n appConfigProvider: AppConfigProvider) {\r\n super(translateService);\r\n this.setTranslateContext('TopMenuComponent');\r\n this.availableLanguages = appConfigProvider.getAvailableLanguages();\r\n this.availableLanguagesNames = appConfigProvider.getAvailableLanguagesNames();\r\n }\r\n\r\n ngOnInit() {\r\n const subscribe = this.pageTitleService.getTitle().subscribe(v => {\r\n this.pageTitle = v;\r\n });\r\n this.subscriptions.push(subscribe);\r\n this.setUserInfos();\r\n this.userIsOwner = this.authenticationService.userHasRole(\"Owner\");\r\n this.userIsDev = this.authenticationService.userHasRole(\"Developer\");\r\n this.userIsEditor = this.authenticationService.userHasRole(\"Editor\");\r\n this.previewUrl = window.location.origin;\r\n\r\n }\r\n\r\n\r\n ngAfterViewInit() {\r\n // if (this.document) {\r\n // const url = `${this.document.location.origin}/`;\r\n // this.previewUrl = this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n // }\r\n }\r\n\r\n\r\n useLanguage(language: string) {\r\n this.persistenceStorageService.set(AppToken.USER_SAVE_CULTURE_CODE, language);\r\n this.translateService.use(language).toPromise().then(lang => {\r\n if (this.pageTitleService.key) {\r\n this.ts(this.pageTitleService.key).subscribe(t => {\r\n this.pageTitle = t.toString();\r\n });\r\n }\r\n });\r\n this.whenLanguageChange.emit(language);\r\n }\r\n\r\n toggleIt() {\r\n const element: HTMLCollection = document.getElementsByTagName('body');\r\n if (element[0].classList.contains('open_menu')) {\r\n element[0].classList.remove('open_menu');\r\n } else {\r\n element[0].classList.add('open_menu');\r\n }\r\n }\r\n\r\n setUserInfos(): void {\r\n const sub = this.authenticationService\r\n .getCurrentUser()\r\n .subscribe(v => {\r\n if (!v) return;\r\n if (typeof v.data.fullname != \"undefined\" && v.data.fullname.iv.trim()) {\r\n this.username = v.data.fullname.iv;\r\n } else {\r\n this.username = v.data.email.iv;\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { PageCategoryStore } from './page-category.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageCategoryQuery extends BaseQuery {\r\n\r\n constructor(store: PageCategoryStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJtZW51LWhlYWRlci5jb21wb25lbnQuY3NzIn0= */\";","import { DynamicContentSchemaStore } from './dynamic-content.store';\r\nimport { DynamicContentSchemaQuery } from './dynamic-content.query';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { DynamicContentSchemaService } from './dynamic-content.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ContentFactory } from '../../squidex/factories/content.factory';\r\nimport { DynamicContentSchemaState } from './dynamic-content.state';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\n\r\nexport class DynamicContentSchemaFacade extends BaseFacade {\r\n constructor(\r\n schemaName: string,\r\n contentFactory: ContentFactory,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n if (!schemaName) {\r\n throw new Error('Schema name invalid');\r\n }\r\n const genericService = new DynamicContentSchemaService(schemaName, contentFactory);\r\n const genericStore = new DynamicContentSchemaStore(new DynamicContentSchemaState(), schemaName);\r\n const genericQuery = new DynamicContentSchemaQuery(genericStore);\r\n\r\n super(genericService,\r\n genericStore,\r\n genericQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(schemaName),\r\n translateService,\r\n schemaName + '-facade'\r\n );\r\n }\r\n}\r\n","import { Component, OnInit, AfterContentInit, Input } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from \"../../../base/base-component.component\";\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { AuthenticationService } from \"../../../services/general/auth/authentication.service\";\r\n\r\n@Component({\r\n selector: 'side-bar',\r\n templateUrl: './side-bar.component.html',\r\n styleUrls: ['./side-bar.component.css']\r\n})\r\nexport class SideBarComponent extends BaseComponent implements OnInit, AfterContentInit {\r\n\r\n siteName: string;\r\n username: string;\r\n\r\n @Input()\r\n isPages: boolean = false;\r\n\r\n constructor(\r\n private readonly authenticationService: AuthenticationService,\r\n translateService: TranslateService,\r\n private readonly route: ActivatedRoute) {\r\n super(translateService);\r\n this.setTranslateContext('SideBarComponent');\r\n }\r\n\r\n ngOnInit() {\r\n this.setUserInfos();\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n\r\n }\r\n\r\n setUserInfos(): void {\r\n const sub = this.authenticationService\r\n .getCurrentUser()\r\n .subscribe(v => {\r\n if (!v) return;\r\n if (v.data.fullname) {\r\n this.username = v.data.fullname.iv;\r\n } else {\r\n this.username = v.data.email.iv;\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n}\r\n","import { Content } from \"../../squidex\";\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\nexport class AssetDirectoryModel extends Content {\r\n constructor(current?: Content) {\r\n if (current) {\r\n super(cloneDeep(current) as Content);\r\n } else {\r\n super({});\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgxFileDropComponent } from './ngx-file-drop.component';\r\nimport { NgxFileDropContentTemplateDirective } from './ngx-templates.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n NgxFileDropComponent,\r\n NgxFileDropContentTemplateDirective,\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n NgxFileDropComponent,\r\n NgxFileDropContentTemplateDirective,\r\n ],\r\n providers: [],\r\n bootstrap: [\r\n NgxFileDropComponent\r\n ],\r\n})\r\nexport class NgxFileDropModule {}\r\n","export default \"
    \\r\\n

    \\r\\n {{ tc(isNew ? \\\"NEW_TITLE\\\" : \\\"TITLE\\\") | async }}
    \\r\\n
    \\r\\n \\r\\n {{ selectedContent.data.code.iv }}\\r\\n \\r\\n\\r\\n
    \\r\\n

    \\r\\n

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

    \\r\\n\\r\\n
    \\r\\n
    \\r\\n {{ tc(\\\"SHOW_SCHEMA_DEFINITION\\\") | async }}\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n \\r\\n Code :\\r\\n \\r\\n {{ selectedContent.data.code.iv }}\\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n

    {{ tc(\\\"DELETE_TITLE\\\") | async }}

    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n {{ t(\\\"CLOSE\\\") | async }}\\r\\n
    \\r\\n\\r\\n
    \\r\\n {{ tc(\\\"DELETE_CONFIRM\\\") | async }}\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n

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

    {{ t(\\\"DELETE_DRAFT\\\") | async }}

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

    \\r\\n {{ t('WARNING_DELETE', {name: 'draft'}) | async }}\\r\\n \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n\";","import { ID, StoreActions } from '@datorama/akita';\r\nimport { Content, Schema, Field, SquidexDate } from '../../squidex';\r\nimport { BaseStore } from './base.store';\r\nimport { BaseQuery } from './base.query';\r\nimport { BaseService } from './base.service';\r\nimport { of, Observable, from } from 'rxjs';\r\nimport { tap, map, mergeMap } from 'rxjs/operators';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FilterPagination } from './filter.pagination';\r\nimport { DynamicSchemaFacade } from '../dynamic-schema/dynamic-schema.facade';\r\nimport { ESchemaContentStatus } from './enum';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\nconst EMPTY = '';\r\n\r\nexport abstract class BaseFacade {\r\n\r\n readonly datePipe: DatePipe;\r\n\r\n protected constructor(\r\n private service: BaseService,\r\n private store: BaseStore,\r\n private query: BaseQuery,\r\n readonly dynamicSchemaFacade: DynamicSchemaFacade,\r\n private readonly translateService: TranslateService,\r\n readonly facadeName: string\r\n ) {\r\n\r\n this.datePipe = new DatePipe(this.getCurrentLanguage());\r\n }\r\n\r\n getService(): BaseService {\r\n return this.service;\r\n }\r\n\r\n getStore(): BaseStore {\r\n return this.store;\r\n }\r\n\r\n getQuery(): BaseQuery {\r\n return this.query;\r\n }\r\n\r\n initializeSchema(): Observable {\r\n return this.getSchema().pipe(\r\n tap(schema => this.getStore().update({ schema: schema }))\r\n );\r\n }\r\n\r\n add(contentData: any): Promise {\r\n contentData.deleted = { iv: false };\r\n\r\n return this.getService().addContent(contentData)\r\n .toPromise().then(contentBack => {\r\n this.getStore().add(contentBack);\r\n return contentBack;\r\n });\r\n }\r\n\r\n addObs(contentData: any): Observable {\r\n contentData.deleted = { iv: false };\r\n\r\n return this.getService().addContent(contentData)\r\n .pipe(map(contentBack => {\r\n this.getStore().add(contentBack);\r\n return contentBack;\r\n }));\r\n }\r\n\r\n create(contentData: any): Observable {\r\n contentData.deleted = { iv: false };\r\n\r\n return this.getService().addContent(contentData)\r\n .pipe(\r\n tap(v => {\r\n this.getStore().add(v);\r\n })\r\n );\r\n }\r\n\r\n createAsPublished(contentData: any): Observable {\r\n contentData.deleted = { iv: false };\r\n\r\n return this.getService().createAndPublishContent(contentData)\r\n .pipe(\r\n tap(v => {\r\n this.getStore().add(v);\r\n })\r\n );\r\n }\r\n\r\n createDraft(contentId: string): Observable {\r\n return this.getService().createDraft(contentId)\r\n .pipe(\r\n tap(v => {\r\n this.getStore().add(v);\r\n })\r\n );\r\n }\r\n\r\n getSchema(): Observable {\r\n return this.dynamicSchemaFacade.getSchemaDefinition() as Observable;\r\n }\r\n\r\n get(id: ID, draftMode: boolean = false): Observable {\r\n return this.getService().getContentById(id, draftMode).pipe(mergeMap((content) => {\r\n this.getStore().add(content);\r\n return of(content);\r\n })) as Observable;\r\n }\r\n\r\n getAll(): Observable {\r\n return this.getService().countContent().pipe(mergeMap (totalCount => {\r\n if (this.getStore().getValue().totalCount === totalCount) {\r\n return of(Array.from(Object.values(this.getQuery().getValue().entities)));\r\n }\r\n return this.getService().getAll().pipe(mergeMap(data => {\r\n this.getStore().add(data.items);\r\n this.getStore().update({ totalCount: data.total });\r\n return of(data.items);\r\n })) as Observable})\r\n );\r\n\r\n }\r\n\r\n doPagination(filterPagination: FilterPagination): Observable {\r\n if (filterPagination.from < 0) { throw (new Error('try to paginate at index < 0')); }\r\n\r\n if (this.getStore().hasPaginateContents(filterPagination)) {\r\n return this.getQuery().getPaginateData(filterPagination);\r\n }\r\n\r\n const contents = this.getService().doPagination(filterPagination).pipe(mergeMap((contentList) => {\r\n this.getStore().update({ totalCount: contentList.total });\r\n\r\n this.getStore().updatePaginate(contentList.items, filterPagination);\r\n return of(contentList.items);\r\n }));\r\n\r\n return contents as Observable;\r\n }\r\n\r\n update(contentId: string, contentData: any): Observable {\r\n return this.getService().updateContent(contentId, contentData).\r\n pipe(\r\n tap(contentBack => {\r\n this.getStore().update(contentId, u => {\r\n return contentBack;\r\n });\r\n })\r\n );\r\n }\r\n\r\n removeStore (id: string): any {\r\n this.getStore().remove(id);\r\n }\r\n\r\n remove(id: ID, draftMode: boolean = false): Observable {\r\n return this.getService().removeContent(id, draftMode).pipe(\r\n tap(v => {\r\n this.getStore().remove(id);\r\n })\r\n );\r\n }\r\n\r\n removeDraft(contentId: string): Observable {\r\n return this.getService().deleteDraft(contentId).pipe(\r\n tap(v => {\r\n this.getStore().remove(contentId);\r\n })\r\n );\r\n }\r\n\r\n removeHard(id: ID): Observable {\r\n return this.getService().removeHardContent(id).pipe(\r\n tap(v => {\r\n this.getStore().remove(id);\r\n })\r\n );\r\n }\r\n\r\n\r\n fullCount(): Observable {\r\n if (this.getQuery().getValue().totalCount && this.getQuery().getValue().totalCount > 0) {\r\n return of(this.getQuery().getValue().totalCount);\r\n }\r\n\r\n return this.getService().getTopX(1, undefined, '', ESchemaContentStatus.All)\r\n .pipe(map(object => {\r\n this.getStore().update({ totalCount: object.total });\r\n return object.total;\r\n }));\r\n }\r\n\r\n partialCount(): number {\r\n return this.getQuery().getCount();\r\n }\r\n\r\n filterCount(advancedFilter: any , eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.All): Observable {\r\n const filterParms: FilterPagination = new FilterPagination()\r\n filterParms.from = 0;\r\n filterParms.to = 1;\r\n\r\n return this.getService().getFilteredPagination(filterParms, eSchemaContentStatus, advancedFilter )\r\n .pipe(map(content => content['total']) );\r\n }\r\n\r\n getByCode(code: string, draftMode: boolean = false): Observable {\r\n const content = this.getQuery().selectAll({\r\n filterBy: entity => entity.data && entity.data['code']['iv'] === code\r\n }).pipe(\r\n mergeMap(v => {\r\n const value = v[0];\r\n if (!value) {\r\n return this.getService().getContentByCode(code, draftMode).pipe(map(val => {\r\n if (val) {\r\n this.getStore().add(val);\r\n }\r\n return val;\r\n }));\r\n }\r\n return of(value);\r\n })\r\n );\r\n return content as Observable;\r\n }\r\n\r\n getDefaultLanguage(): string {\r\n return this.translateService.defaultLang;\r\n }\r\n\r\n getCurrentLanguage(): string {\r\n return this.translateService.currentLang;\r\n }\r\n\r\n getTopX(top: number = 24,\r\n filter: string = null,\r\n orderBy: string = 'lastModified desc',\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.Published\r\n ): Observable {\r\n return this.getService().getTopX(top, filter, orderBy, eSchemaContentStatus).pipe(mergeMap((contentList) => {\r\n this.getStore().add(contentList.items);\r\n this.getStore().update({ totalCount: contentList.total });\r\n return of(contentList.items);\r\n })) as Observable;\r\n }\r\n\r\n getFiltered(top: number = 24,\r\n orderBy: string = 'lastModified desc',\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.Published,\r\n filter?: string\r\n ): Observable {\r\n return this.getService().getFiltered(top, orderBy, eSchemaContentStatus, filter).pipe(mergeMap((contentList) => {\r\n this.getStore().add(contentList.items);\r\n this.getStore().update({ totalCount: contentList.total });\r\n return of(contentList.items);\r\n })) as Observable;\r\n }\r\n\r\n validateUrl(filterParms: FilterPagination,\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.All,\r\n filterObject?: any, content: Content = null\r\n ): Observable {\r\n return this.getService().validateUrl(filterParms, eSchemaContentStatus, filterObject, content);\r\n }\r\n\r\n getFilteredPagination(\r\n filterParms: FilterPagination,\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.Published,\r\n filterObject?: any\r\n ): Observable {\r\n return this.getService().getFilteredPagination(filterParms, eSchemaContentStatus, filterObject).pipe(mergeMap((contentList) => {\r\n this.getStore().add(contentList.items);\r\n this.getStore().update({ totalCount: contentList.total });\r\n return of(contentList.items);\r\n })) as Observable;\r\n }\r\n\r\n getByObject(\r\n filterObject: any,\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.Published,\r\n ): Observable {\r\n return this.getService().getByObject(filterObject, eSchemaContentStatus).pipe(mergeMap((contentList) => {\r\n this.getStore().add(contentList.items);\r\n this.getStore().update({ totalCount: contentList.total });\r\n return of(contentList.items);\r\n })) as Observable;\r\n }\r\n\r\n getUnpublished(orderBy: string = 'lastModified desc', top: number = -1): Observable {\r\n return this.getService().getUnpublished(orderBy, top).pipe(mergeMap((contentList) => {\r\n this.getStore().add(contentList.items);\r\n this.getStore().update({ totalCount: contentList.total });\r\n return of(contentList.items);\r\n })) as Observable;\r\n }\r\n\r\n getAllOrdered(orderBy: string = 'id'): Observable {\r\n if (this.getQuery().getCount() === this.getQuery().getValue().totalCount) {\r\n return of(Array.from(Object.values(this.getQuery().getValue().entities)));\r\n }\r\n\r\n return this.getService().getAllOrdered(orderBy).pipe(mergeMap(data => {\r\n this.getStore().add(data.items);\r\n this.getStore().update({ totalCount: data.total });\r\n return of(data.items);\r\n })) as Observable;\r\n }\r\n\r\n getByParentId(id: string, parentFieldName: string, orderBy: string = 'id', draftMode: boolean = false): Observable {\r\n return this.getService().getByParentId(id, parentFieldName, orderBy, draftMode).pipe(mergeMap((contentList) => {\r\n this.getStore().add(contentList.items);\r\n this.getStore().update({ totalCount: contentList.total });\r\n return of(contentList.items);\r\n })) as Observable;\r\n }\r\n\r\n getData(content: Content, field: Field): any {\r\n return this.pullData(content, field.name, field.partitioning === 'language');\r\n }\r\n\r\n // same as getData, with different signature, get and put are synonyms\r\n pullData(content: Content, key: string, isLocalized: boolean = false, checkDefaultLanguage: boolean = false): any {\r\n if (!content || !content.data || !key) { return EMPTY; }\r\n\r\n const d = content.data[key];\r\n\r\n let data: any;\r\n\r\n if (d) {\r\n if (isLocalized) {\r\n data = d[this.getCurrentLanguage()];\r\n if (!data && checkDefaultLanguage) {\r\n data = d[this.getDefaultLanguage()];\r\n }\r\n } else {\r\n data = d['iv'];\r\n }\r\n } else {\r\n data = EMPTY;\r\n }\r\n\r\n return data;\r\n }\r\n\r\n setContent(content: Content, field: Field, newValue: string): any {\r\n newValue = this.fixFieldValue(field.properties.editor, newValue);\r\n return this.setData(content.data, field, newValue);\r\n }\r\n\r\n setData(data: any, field: Field, newValue: string): any {\r\n newValue = this.fixFieldValue(field.properties.editor, newValue);\r\n return this.putData(data, field.name, newValue, field.partitioning === 'language');\r\n }\r\n\r\n setDataValue(data: any, field: string, newValue: string, isLocalized: boolean = false): any {\r\n // newValue = this.fixFieldValue(field.properties.editor, newValue);\r\n return this.putData(data, field, newValue, isLocalized);\r\n }\r\n\r\n setDataAnyType(data: any, field: string, newValue: any, isLocalized: boolean = false): any {\r\n return this.putData(data, field, newValue, isLocalized);\r\n }\r\n\r\n // same as setData, with different signature, set and pull are synonyms\r\n private putData(data: any, key: string, newValue: any, isLocalized: boolean = false, field?: Field): any {\r\n if (!data || !key) { return null; }\r\n\r\n if (!data[key]) {\r\n data[key] = {};\r\n }\r\n\r\n if (field && field.properties.fieldType === 'Assets') {\r\n if (!data[key]) {\r\n data[key] = { 'iv': [] };\r\n }\r\n if (data[key].iv.length === 0) {\r\n data[key].iv = [];\r\n }\r\n if (Array.isArray(newValue)) {\r\n let tmp = [];\r\n\r\n data[key].iv.forEach(val => {\r\n if (!tmp.includes(val)) {\r\n tmp.push(val);\r\n }\r\n });\r\n\r\n newValue.forEach(val => {\r\n if (!tmp.includes(val)) {\r\n tmp.push(val);\r\n }\r\n });\r\n\r\n data[key].iv = tmp;\r\n } else {\r\n data[key].iv.push(newValue);\r\n }\r\n } else {\r\n if (field && field.properties.fieldType === 'Boolean') {\r\n if (newValue === '') {\r\n newValue = false;\r\n }\r\n } else {\r\n if (isLocalized) {\r\n data[key][this.getCurrentLanguage()] = newValue;\r\n } else {\r\n data[key]['iv'] = newValue;\r\n }\r\n }\r\n }\r\n return data;\r\n }\r\n\r\n putNumber(data: any, key: string, newValue: number): any {\r\n if (!data || !key) {\r\n return null;\r\n }\r\n\r\n if (!data[key]) {\r\n data[key] = {};\r\n }\r\n\r\n data[key]['iv'] = newValue;\r\n\r\n return data;\r\n }\r\n\r\n private fixFieldValue(editor: string, value: any): any {\r\n if (editor === \"DateTime\") {\r\n return new SquidexDate(value).format();\r\n } else if (editor === \"Dropdown\" && !Array.isArray(value)) {\r\n return [value];\r\n }\r\n return value;\r\n }\r\n\r\n translate(key: string | Array, interpolateParams?: Object): Observable {\r\n return this.translateService.get(key, interpolateParams);\r\n }\r\n\r\n getLastModifiedDate(content: Content, dateFormat: string = AppToken.ISO_DATES_DATE_TIME): string {\r\n if (!content) {\r\n return null;\r\n } else {\r\n return this.getLocalDateTime(content.lastModified, dateFormat);\r\n }\r\n }\r\n\r\n getLocalDateTime(date: Date, dateFormat: string = AppToken.ISO_DATES_DATE_TIME): string {\r\n return this.datePipe.transform(new Date(date), dateFormat);\r\n }\r\n\r\n updateStatus(contentId: string, status: string, dueTime: string) {\r\n return this.getService().updateContentStatus(contentId, status, dueTime).\r\n pipe(\r\n tap(contentBack => {\r\n this.getStore().update(contentId, u => {\r\n return contentBack;\r\n });\r\n })\r\n );\r\n }\r\n\r\n}\r\n","import { Field } from './field.model';\r\nimport { Link } from './link.model';\r\n\r\nexport class Asset {\r\n id: string;\r\n parentId: string;\r\n fileName: string;\r\n fileHash: string;\r\n isProtected: boolean;\r\n slug: string;\r\n mimeType: string;\r\n fileType: string;\r\n metadataText: string;\r\n metadata: object;\r\n tags: string[];\r\n fileSize: number;\r\n fileVersion: number;\r\n type: string;\r\n createdBy: string;\r\n lastModifiedBy: string;\r\n created: string;\r\n lastModified: string;\r\n version: number;\r\n isImage: boolean;\r\n _links: { [id: string]: Link };\r\n fieldName: string;\r\n\r\n constructor(current?: any) {\r\n if (current) {\r\n Object.assign(this, current);\r\n } else {\r\n }\r\n }\r\n\r\n}\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({\r\n name: 'article',\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class ArticleStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","export default \"#loader {\\n bottom: 0;\\n height: 175px;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n width: 175px;\\n}\\n\\n#loader {\\n bottom: 0;\\n height: 175px;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n width: 175px;\\n}\\n\\n#loader .dot {\\n bottom: 0;\\n height: 100%;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n width: 87.5px;\\n}\\n\\n#loader .dot::before {\\n border-radius: 100%;\\n content: \\\"\\\";\\n height: 87.5px;\\n left: 0;\\n position: absolute;\\n right: 0;\\n top: 0;\\n transform: scale(0);\\n width: 87.5px;\\n}\\n\\n#loader .dot:nth-child(7n+1) {\\n transform: rotate(45deg);\\n}\\n\\n#loader .dot:nth-child(7n+1)::before {\\n -webkit-animation: 0.8s linear 0.1s normal none infinite running load;\\n animation: 0.8s linear 0.1s normal none infinite running load;\\n background: #804d00 none repeat scroll 0 0;\\n}\\n\\n#loader .dot:nth-child(7n+2) {\\n transform: rotate(90deg);\\n}\\n\\n#loader .dot:nth-child(7n+2)::before {\\n -webkit-animation: 0.8s linear 0.2s normal none infinite running load;\\n animation: 0.8s linear 0.2s normal none infinite running load;\\n background: #b36b00 none repeat scroll 0 0;\\n}\\n\\n#loader .dot:nth-child(7n+3) {\\n transform: rotate(135deg);\\n}\\n\\n#loader .dot:nth-child(7n+3)::before {\\n -webkit-animation: 0.8s linear 0.3s normal none infinite running load;\\n animation: 0.8s linear 0.3s normal none infinite running load;\\n background: #e68a00 none repeat scroll 0 0;\\n}\\n\\n#loader .dot:nth-child(7n+4) {\\n transform: rotate(180deg);\\n}\\n\\n#loader .dot:nth-child(7n+4)::before {\\n -webkit-animation: 0.8s linear 0.4s normal none infinite running load;\\n animation: 0.8s linear 0.4s normal none infinite running load;\\n background: #ff9900 none repeat scroll 0 0;\\n}\\n\\n#loader .dot:nth-child(7n+5) {\\n transform: rotate(225deg);\\n}\\n\\n#loader .dot:nth-child(7n+5)::before {\\n -webkit-animation: 0.8s linear 0.5s normal none infinite running load;\\n animation: 0.8s linear 0.5s normal none infinite running load;\\n background: #ffad33 none repeat scroll 0 0;\\n}\\n\\n#loader .dot:nth-child(7n+6) {\\n transform: rotate(270deg);\\n}\\n\\n#loader .dot:nth-child(7n+6)::before {\\n -webkit-animation: 0.8s linear 0.6s normal none infinite running load;\\n animation: 0.8s linear 0.6s normal none infinite running load;\\n background: #ffc266 none repeat scroll 0 0;\\n}\\n\\n#loader .dot:nth-child(7n+7) {\\n transform: rotate(315deg);\\n}\\n\\n#loader .dot:nth-child(7n+7)::before {\\n -webkit-animation: 0.8s linear 0.7s normal none infinite running load;\\n animation: 0.8s linear 0.7s normal none infinite running load;\\n background: #ffd699 none repeat scroll 0 0;\\n}\\n\\n#loader .dot:nth-child(7n+8) {\\n transform: rotate(360deg);\\n}\\n\\n#loader .dot:nth-child(7n+8)::before {\\n -webkit-animation: 0.8s linear 0.8s normal none infinite running load;\\n animation: 0.8s linear 0.8s normal none infinite running load;\\n background: #ffebcc none repeat scroll 0 0;\\n}\\n\\n#loader .loading {\\n background-position: 50% 50%;\\n background-repeat: no-repeat;\\n bottom: -40px;\\n height: 20px;\\n left: 0;\\n position: absolute;\\n right: 0;\\n width: 180px;\\n}\\n\\n@-webkit-keyframes load {\\n 100% {\\n opacity: 0;\\n transform: scale(1);\\n }\\n}\\n\\n@keyframes load {\\n 100% {\\n opacity: 0;\\n transform: scale(1);\\n }\\n}\\n\\n@keyframes load {\\n 100% {\\n opacity: 0;\\n transform: scale(1);\\n }\\n}\\n\\n.spinner-message {\\n text-align: center;\\n}\\n\\n.spinner-wrapper {\\n position: fixed;\\n width: 100%;\\n height: 100%;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n top: 0;\\n left: 0;\\n background-color: rgba(255, 255, 255, 0.5);\\n z-index: 998;\\n}\\n\\n.spinner-wrapper app-spinner {\\n width: 6rem;\\n height: 6rem;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxzcGlubmVyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsU0FBUztFQUNULGFBQWE7RUFDYixPQUFPO0VBQ1AsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsTUFBTTtFQUNOLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFNBQVM7RUFDVCxhQUFhO0VBQ2IsT0FBTztFQUNQLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLE1BQU07RUFDTixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsWUFBWTtFQUNaLE9BQU87RUFDUCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixNQUFNO0VBQ04sYUFBYTtBQUNmOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLFdBQVc7RUFDWCxjQUFjO0VBQ2QsT0FBTztFQUNQLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsTUFBTTtFQUNOLG1CQUFtQjtFQUNuQixhQUFhO0FBQ2Y7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxxRUFBNkQ7VUFBN0QsNkRBQTZEO0VBQzdELDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLHFFQUE2RDtVQUE3RCw2REFBNkQ7RUFDN0QsMENBQTBDO0FBQzVDOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UscUVBQTZEO1VBQTdELDZEQUE2RDtFQUM3RCwwQ0FBMEM7QUFDNUM7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxxRUFBNkQ7VUFBN0QsNkRBQTZEO0VBQzdELDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHFFQUE2RDtVQUE3RCw2REFBNkQ7RUFDN0QsMENBQTBDO0FBQzVDOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UscUVBQTZEO1VBQTdELDZEQUE2RDtFQUM3RCwwQ0FBMEM7QUFDNUM7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxxRUFBNkQ7VUFBN0QsNkRBQTZEO0VBQzdELDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHFFQUE2RDtVQUE3RCw2REFBNkQ7RUFDN0QsMENBQTBDO0FBQzVDOztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLDRCQUE0QjtFQUM1QixhQUFhO0VBQ2IsWUFBWTtFQUNaLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFlBQVk7QUFDZDs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLG1CQUFtQjtFQUNyQjtBQUNGOztBQUxBO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsbUJBQW1CO0VBQ3JCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFVBQVU7SUFDVixtQkFBbUI7RUFDckI7QUFDRjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixXQUFXO0VBQ1gsWUFBWTtFQUNaLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLE1BQU07RUFDTixPQUFPO0VBQ1AsMENBQTBDO0VBQzFDLFlBQVk7QUFDZDs7QUFYQTtFQVlNLFdBQVc7RUFDWCxZQUFZO0FBR2xCIiwiZmlsZSI6InNwaW5uZXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIjbG9hZGVyIHtcclxuICBib3R0b206IDA7XHJcbiAgaGVpZ2h0OiAxNzVweDtcclxuICBsZWZ0OiAwO1xyXG4gIG1hcmdpbjogYXV0bztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHdpZHRoOiAxNzVweDtcclxufVxyXG5cclxuI2xvYWRlciB7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGhlaWdodDogMTc1cHg7XHJcbiAgbGVmdDogMDtcclxuICBtYXJnaW46IGF1dG87XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB3aWR0aDogMTc1cHg7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdCB7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIG1hcmdpbjogYXV0bztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHdpZHRoOiA4Ny41cHg7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDo6YmVmb3JlIHtcclxuICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgaGVpZ2h0OiA4Ny41cHg7XHJcbiAgbGVmdDogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgd2lkdGg6IDg3LjVweDtcclxufVxyXG5cclxuI2xvYWRlciAuZG90Om50aC1jaGlsZCg3bisxKSB7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG59XHJcblxyXG4jbG9hZGVyIC5kb3Q6bnRoLWNoaWxkKDduKzEpOjpiZWZvcmUge1xyXG4gIGFuaW1hdGlvbjogMC44cyBsaW5lYXIgMC4xcyBub3JtYWwgbm9uZSBpbmZpbml0ZSBydW5uaW5nIGxvYWQ7XHJcbiAgYmFja2dyb3VuZDogIzgwNGQwMCBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xyXG59XHJcblxyXG4jbG9hZGVyIC5kb3Q6bnRoLWNoaWxkKDduKzIpIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rMik6OmJlZm9yZSB7XHJcbiAgYW5pbWF0aW9uOiAwLjhzIGxpbmVhciAwLjJzIG5vcm1hbCBub25lIGluZmluaXRlIHJ1bm5pbmcgbG9hZDtcclxuICBiYWNrZ3JvdW5kOiAjYjM2YjAwIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rMykge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rMyk6OmJlZm9yZSB7XHJcbiAgYW5pbWF0aW9uOiAwLjhzIGxpbmVhciAwLjNzIG5vcm1hbCBub25lIGluZmluaXRlIHJ1bm5pbmcgbG9hZDtcclxuICBiYWNrZ3JvdW5kOiAjZTY4YTAwIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rNCkge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rNCk6OmJlZm9yZSB7XHJcbiAgYW5pbWF0aW9uOiAwLjhzIGxpbmVhciAwLjRzIG5vcm1hbCBub25lIGluZmluaXRlIHJ1bm5pbmcgbG9hZDtcclxuICBiYWNrZ3JvdW5kOiAjZmY5OTAwIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rNSkge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rNSk6OmJlZm9yZSB7XHJcbiAgYW5pbWF0aW9uOiAwLjhzIGxpbmVhciAwLjVzIG5vcm1hbCBub25lIGluZmluaXRlIHJ1bm5pbmcgbG9hZDtcclxuICBiYWNrZ3JvdW5kOiAjZmZhZDMzIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rNikge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rNik6OmJlZm9yZSB7XHJcbiAgYW5pbWF0aW9uOiAwLjhzIGxpbmVhciAwLjZzIG5vcm1hbCBub25lIGluZmluaXRlIHJ1bm5pbmcgbG9hZDtcclxuICBiYWNrZ3JvdW5kOiAjZmZjMjY2IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rNykge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDMxNWRlZyk7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rNyk6OmJlZm9yZSB7XHJcbiAgYW5pbWF0aW9uOiAwLjhzIGxpbmVhciAwLjdzIG5vcm1hbCBub25lIGluZmluaXRlIHJ1bm5pbmcgbG9hZDtcclxuICBiYWNrZ3JvdW5kOiAjZmZkNjk5IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rOCkge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmRvdDpudGgtY2hpbGQoN24rOCk6OmJlZm9yZSB7XHJcbiAgYW5pbWF0aW9uOiAwLjhzIGxpbmVhciAwLjhzIG5vcm1hbCBub25lIGluZmluaXRlIHJ1bm5pbmcgbG9hZDtcclxuICBiYWNrZ3JvdW5kOiAjZmZlYmNjIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XHJcbn1cclxuXHJcbiNsb2FkZXIgLmxvYWRpbmcge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBib3R0b206IC00MHB4O1xyXG4gIGhlaWdodDogMjBweDtcclxuICBsZWZ0OiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB3aWR0aDogMTgwcHg7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbG9hZCB7XHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbG9hZCB7XHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICB9XHJcbn1cclxuXHJcbi5zcGlubmVyLW1lc3NhZ2Uge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnNwaW5uZXItd3JhcHBlciB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG4gIHotaW5kZXg6IDk5ODtcclxuICBhcHAtc3Bpbm5lciB7XHJcbiAgICAgIHdpZHRoOiA2cmVtO1xyXG4gICAgICBoZWlnaHQ6IDZyZW07XHJcbiAgfVxyXG59XHJcbiJdfQ== */\";","import { Content } from \"../../squidex\";\r\n\r\nexport class PageModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","export { SpinnerModule } from './spinner/spinner.module';\r\nexport { HeaderMainComponent } from './header/header-main.component';\r\nexport { FooterMainComponent } from './footer/footer-main.component';\r\nexport { SharedModule } from './shared.module';\r\n\r\nexport * from './field/field-control.component';\r\n\r\nexport { FormGroupMapper } from './form-group/form-group-mapper.tool';\r\nexport { FormGroupBuilder } from './form-group/form-group.builder';\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class MenuModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","import { UserStore } from './user.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class UserQuery extends BaseQuery {\r\n constructor(store: UserStore) {\r\n super(store);\r\n }\r\n}\r\n","export default \"::ng-deep .control-language-parent > ul {\\r\\n float: right !important;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .ck-sticky-panel__content {\\r\\n margin-top: 0.25rem !important;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .cke {\\r\\n margin-top: 10px;\\r\\n}\\r\\n\\r\\n/* Rounded sliders */\\r\\n\\r\\n.slider.round {\\r\\n border-radius: 34px;\\r\\n}\\r\\n\\r\\n.slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n\\r\\ninput.large-checkbox {\\r\\n width: 30px;\\r\\n height: 30px;\\r\\n}\\r\\n\\r\\nlabel.larger {\\r\\n padding: .5rem .5rem .5rem 1rem !important;\\r\\n}\\r\\n\\r\\n.large-container {\\r\\n margin:1rem 1rem 1rem 0rem !important;\\r\\n}\\r\\n\\r\\n.field-label {\\r\\n margin: 12px 0 0 3px !important;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpZWxkLWNvbnRyb2wuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLDhCQUE4QjtBQUNoQzs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQSxvQkFBb0I7O0FBQ3BCO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVFO0lBQ0Usa0JBQWtCO0VBQ3BCOztBQUVGO0VBQ0UsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFDQTtFQUNFLDBDQUEwQztBQUM1Qzs7QUFDQTtJQUNJLHFDQUFxQztBQUN6Qzs7QUFFQTtFQUNFLCtCQUErQjtBQUNqQyIsImZpbGUiOiJmaWVsZC1jb250cm9sLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6Om5nLWRlZXAgLmNvbnRyb2wtbGFuZ3VhZ2UtcGFyZW50ID4gdWwge1xyXG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLmNrLXN0aWNreS1wYW5lbF9fY29udGVudCB7XHJcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLmNrZSB7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLyogUm91bmRlZCBzbGlkZXJzICovXHJcbi5zbGlkZXIucm91bmQge1xyXG4gIGJvcmRlci1yYWRpdXM6IDM0cHg7XHJcbn1cclxuXHJcbiAgLnNsaWRlci5yb3VuZDpiZWZvcmUge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIH1cclxuXHJcbmlucHV0LmxhcmdlLWNoZWNrYm94IHtcclxuICB3aWR0aDogMzBweDtcclxuICBoZWlnaHQ6IDMwcHg7XHJcbn1cclxubGFiZWwubGFyZ2VyIHtcclxuICBwYWRkaW5nOiAuNXJlbSAuNXJlbSAuNXJlbSAxcmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuLmxhcmdlLWNvbnRhaW5lciB7XHJcbiAgICBtYXJnaW46MXJlbSAxcmVtIDFyZW0gMHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZmllbGQtbGFiZWwge1xyXG4gIG1hcmdpbjogMTJweCAwIDAgM3B4ICFpbXBvcnRhbnQ7XHJcbn1cclxuIl19 */\";","import { ArticleCategoryStore } from './article-category.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from \"../base/base.query\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleCategoryQuery extends BaseQuery {\r\n\r\n constructor(store: ArticleCategoryStore) {\r\n super(store);\r\n }\r\n}\r\n","import { Field } from './field.model';\r\nimport { SchemaProperty } from './schema-property.model';\r\nimport { SchemaScript } from './schema-script.model';\r\nimport { Link } from './link.model';\r\n\r\nexport class Schema {\r\n created: Date;\r\n createdBy: string;\r\n category: string;\r\n fields: Field[];\r\n id: string;\r\n isPublished: boolean;\r\n isSingleton: boolean;\r\n lastModified: Date;\r\n lastModifiedBy: string;\r\n name: string;\r\n previousUrls: { [id: string]: string };\r\n properties: SchemaProperty;\r\n scripts: SchemaScript;\r\n version: number;\r\n _links: { [id: string]: Link };\r\n\r\n constructor(current?: any) {\r\n if (current) {\r\n Object.assign(this, current);\r\n } else {\r\n this.properties = new SchemaProperty();\r\n this.scripts = new SchemaScript();\r\n }\r\n }\r\n\r\n}\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class SiteSettingModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Schema } from '../models/schema.model';\r\nimport { Field } from '../models/field.model';\r\nimport { SchemaScript } from '../models/schema-script.model';\r\nimport { SchemaProperty } from '../models/schema-property.model';\r\n\r\nexport class SchemaService {\r\n public readonly schemaBaseUrl: string;\r\n\r\n constructor(private readonly httpClient: HttpClient, private baseUrl: string, public readonly schemaName: string) {\r\n this.schemaBaseUrl = `${this.baseUrl}/schemas/${this.schemaName}`;\r\n }\r\n\r\n getSchemaDefinition(): Observable {\r\n const url = `${this.schemaBaseUrl}`;\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n deleteSchema(): Observable {\r\n const url = `${this.schemaBaseUrl}`;\r\n return this.httpClient.delete(url) as Observable;\r\n }\r\n\r\n addField(field: Field): Observable {\r\n const url = `${this.schemaBaseUrl}/fields`;\r\n return this.httpClient.post(url, field) as Observable;\r\n }\r\n\r\n //Add field to array field\r\n addNestedField(parentId: number, fields: Field): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentId}/nested`;\r\n return this.httpClient.post(url, fields) as Observable;\r\n }\r\n\r\n updateField(field: Field, fieldId?: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${(fieldId ? fieldId : field.fieldId)}`;\r\n return this.httpClient.put(url, field) as Observable;\r\n }\r\n\r\n updateNestedField(nestedField: Field, parentFieldId: string, nestedFieldId?: string): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentFieldId}/nested/${nestedFieldId ?\r\n nestedFieldId : nestedField.fieldId}`;\r\n return this.httpClient.put(url, nestedField) as Observable;\r\n }\r\n\r\n reorderFields(fieldIds: number[]): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/ordering`;\r\n return this.httpClient.put(url, { 'fieldIds': fieldIds }) as Observable;\r\n }\r\n\r\n reorderNestedFields(parentId: number, fieldIds: number[]): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentId}/nested/ordering`;\r\n return this.httpClient.put(url, { 'fieldIds': fieldIds }) as Observable;\r\n }\r\n\r\n deleteField(fieldId: number, force: boolean = false): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${fieldId}`;\r\n return this.httpClient.delete(url) as Observable;\r\n }\r\n\r\n deleteNestedField(parentFieldId: number, fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentFieldId}/nested/${fieldId}`;\r\n return this.httpClient.delete(url) as Observable;\r\n }\r\n\r\n lockField(fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${fieldId}/lock`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n lockNestedField(parentFieldId: number, fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentFieldId}/nested/${fieldId}/lock`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n hideField(fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${fieldId}/hide`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n hideNestedField(parentFieldId: number, fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentFieldId}/nested/${fieldId}/hide`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n\r\n showField(fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${fieldId}/show`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n showNestedField(parentFieldId: number, fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentFieldId}/nested/${fieldId}/show`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n enableField(fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${fieldId}/enable`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n enableNestedField(parentFieldId: number, fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentFieldId}/nested/${fieldId}/enable`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n disableField(fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${fieldId}/desable`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n disableNestedField(parentFieldId: number, fieldId: number): Observable {\r\n const url = `${this.schemaBaseUrl}/fields/${parentFieldId}/nested/${fieldId}/desable`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n updateSchemaProperties(schemaProperty: SchemaProperty): Observable {\r\n const url = `${this.schemaBaseUrl}`;\r\n return this.httpClient.put(url, schemaProperty) as Observable;\r\n }\r\n\r\n synchronizeSchema(updatedSchema: Schema): Observable {\r\n const url = `${this.schemaBaseUrl}/sync`;\r\n return this.httpClient.put(url, updatedSchema) as Observable;\r\n }\r\n\r\n updateSchemaCategory(categoryName: string): Observable {\r\n const url = `${this.schemaBaseUrl}/category`;\r\n return this.httpClient.put(url, { name: categoryName }) as Observable;\r\n }\r\n\r\n updatePreviewsUrl(PreviewsUrl: { [id: string]: string }): Observable {\r\n const url = `${this.schemaBaseUrl}/preview-urls`;\r\n return this.httpClient.put(url, PreviewsUrl) as Observable;\r\n }\r\n\r\n updateScripts(scripts: SchemaScript): Observable {\r\n const url = `${this.schemaBaseUrl}/scripts`;\r\n return this.httpClient.put(url, scripts) as Observable;\r\n }\r\n\r\n publishSchema(): Observable {\r\n const url = `${this.schemaBaseUrl}/publish`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n\r\n unPublishSchema(): Observable {\r\n const url = `${this.schemaBaseUrl}/unpublish`;\r\n return this.httpClient.put(url, {}) as Observable;\r\n }\r\n}\r\n","import { BaseStore } from '../base/base.store';\r\nimport { IBaseState } from '../base/base.state';\r\n\r\nexport class DynamicContentSchemaStore extends BaseStore {\r\n\r\n constructor(baseState: IBaseState, schemaName: string) {\r\n super(baseState, schemaName);\r\n }\r\n}\r\n","export default \"
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\\"ftr-logo\\\"\\r\\n \\r\\n V{{goLiveVersion}}\\r\\n
    \\r\\n
    \\r\\n

    \\r\\n 450.905.0717 -\\r\\n orangium@groupearobas.ca\\r\\n

    \\r\\n

    \\r\\n À des fins d'amélioration continue veuillez communiquer avec nous par courriel pour tout problème technique.\\r\\n

    \\r\\n

    Dernière mise à jour: il y a {{lastUpdateDays}} jour(s)

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","export class SchemaScript {\r\n query: string;\r\n create: string;\r\n change: string;\r\n delete: string;\r\n update: string;\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { tap } from 'rxjs/operators';\r\nimport { ApplicationUserModel, ApplicationUserFacade } from \"../../akita/index\";\r\nimport { PersistenceStorageService } from \"../persistence-storage/persistence-storage.service\";\r\nimport { AppToken } from \"../../../models/app-token\";\r\nimport { AppConfigProvider } from \"../../../app-config.provider\";\r\n\r\nexport class AuthenticationResult {\r\n isAuthenticated: boolean;\r\n isLocked: boolean;\r\n isRegistered: boolean;\r\n roles: Array;\r\n claims: any;\r\n user: any;\r\n message: string;\r\n\r\n error: string;\r\n}\r\n\r\nexport class UpdatePasswordResult {\r\n succeed: boolean;\r\n error: string;\r\n}\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthenticationService {\r\n\r\n private authenticationResult: AuthenticationResult;\r\n accessClaimKey: string = \"client-admin-access\";\r\n\r\n constructor(\r\n private readonly httpClient: HttpClient,\r\n private readonly applicationUserFacade: ApplicationUserFacade,\r\n private readonly persistenceStorageService: PersistenceStorageService,\r\n private readonly appConfigProvider: AppConfigProvider\r\n ) { }\r\n\r\n isAuthorized(): Observable {\r\n if (this.authenticationResult && this.authenticationResult.isAuthenticated) {\r\n return of(this.authenticationResult);\r\n }\r\n\r\n return this.httpClient.post('/api/o/auth/isAuthenticated', {})\r\n .pipe(\r\n tap(v => {\r\n\r\n if (v.isAuthenticated) {\r\n\r\n const claims = v.user.data.claims;\r\n\r\n if (!claims || !claims[this.accessClaimKey]) {\r\n v.user = undefined;\r\n v.isAuthenticated = false;\r\n return;\r\n }\r\n\r\n const hasAccess = claims[this.accessClaimKey] as boolean;\r\n\r\n if (!hasAccess) {\r\n v.user = undefined;\r\n v.isAuthenticated = false;\r\n return;\r\n }\r\n\r\n this.storeUserInfo(v);\r\n\r\n } else {\r\n this.persistenceStorageService.remove(AppToken.APPLICATION_CURRENT_USER);\r\n }\r\n })\r\n );\r\n }\r\n\r\n userIsAllowed(roles: string[]) {\r\n\r\n if (!this.appConfigProvider.authIsEnabled()) {\r\n return true;\r\n }\r\n\r\n if (!this.authenticationResult || !this.authenticationResult.isAuthenticated) {\r\n return false;\r\n }\r\n\r\n if (!roles || roles.length === 0) {\r\n return true;\r\n }\r\n\r\n for (let i = 0; i < roles.length; i++) {\r\n if (this.authenticationResult.roles.indexOf(roles[i].toUpperCase()) > -1) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n userHasRole(role: string): boolean {\r\n if (!this.appConfigProvider.authIsEnabled()) {\r\n return true;\r\n }\r\n\r\n if (!this.authenticationResult.isAuthenticated) {\r\n this.persistenceStorageService.remove(AppToken.APPLICATION_CURRENT_USER);\r\n return false;\r\n }\r\n\r\n return this.authenticationResult.roles.indexOf(role.toUpperCase()) > -1;\r\n }\r\n\r\n getUserRoles(): Array {\r\n if (!this.authenticationResult.isAuthenticated) {\r\n this.persistenceStorageService.remove(AppToken.APPLICATION_CURRENT_USER);\r\n return [];\r\n }\r\n\r\n return this.authenticationResult.roles;\r\n }\r\n\r\n getUserClaim(claim: string): any {\r\n if (!this.authenticationResult.isAuthenticated) {\r\n this.persistenceStorageService.remove(AppToken.APPLICATION_CURRENT_USER);\r\n return null;\r\n }\r\n\r\n return this.authenticationResult.claims[claim];\r\n }\r\n\r\n login(email: string, password: string): Observable {\r\n if (this.authenticationResult && this.authenticationResult.isAuthenticated) {\r\n //check user role/claims : hasAdminAccess\r\n return of(this.authenticationResult);\r\n }\r\n return this.httpClient\r\n .post('/api/o/auth/login', { email: email, password: password });\r\n }\r\n\r\n register(email: string, password: string): Observable {\r\n return this.httpClient\r\n .post('/api/o/auth/register', { email: email, password: password });\r\n }\r\n\r\n changePassword(email: string, password: string): Observable {\r\n return this.httpClient\r\n .post('/api/o/auth/changePassword', { email: email, password: password });\r\n }\r\n\r\n updatePassword(id: string, oldPassword: string, newPassword): Observable {\r\n return this.httpClient\r\n .post('/api/o/auth/updatePassword', { id: id, oldPassword: oldPassword, Password: newPassword });\r\n }\r\n\r\n resetPassword(userName: string, userId: string, code: string, password: string, passwordConfirmation: string): Observable {\r\n return this.httpClient\r\n .post('/api/o/auth/resetPassword', { id: userId, email: userName, code: code, password: password, passwordConfirmation: passwordConfirmation });\r\n }\r\n\r\n forgotPassword(email: string): Observable {\r\n return this.httpClient\r\n .post('/api/o/auth/forgotPassword', { email: email });\r\n }\r\n\r\n private storeUserInfo(result: AuthenticationResult): void {\r\n this.authenticationResult = result;\r\n this.authenticationResult.roles = result.user.data.roles;\r\n this.authenticationResult.claims = result.user.data.claims;\r\n }\r\n\r\n logout(): Observable {\r\n this.authenticationResult = null;\r\n return this.httpClient\r\n .post('/api/o/auth/logout', {}).pipe(\r\n tap(v => {\r\n this.persistenceStorageService.remove(AppToken.APPLICATION_CURRENT_USER);\r\n })\r\n );\r\n }\r\n\r\n getCurrentUser(): Observable {\r\n\r\n if (!this.authenticationResult || !this.authenticationResult.isAuthenticated) {\r\n this.persistenceStorageService.remove(AppToken.APPLICATION_CURRENT_USER);\r\n return of(null);\r\n }\r\n\r\n const user = this.persistenceStorageService.get(AppToken.APPLICATION_CURRENT_USER) as ApplicationUserModel;\r\n\r\n if (user) {\r\n return of(user);\r\n }\r\n\r\n return this.applicationUserFacade.getByCode(this.authenticationResult.user.data.code).pipe(\r\n tap(v => {\r\n this.persistenceStorageService.set(AppToken.APPLICATION_CURRENT_USER, v);\r\n })\r\n ) as Observable;\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Observable, of } from 'rxjs';\r\nimport { map, mergeMap, tap } from 'rxjs/operators';\r\nimport { Content, ContentList, Schema } from '..';\r\nimport { Validation } from '../../../tools';\r\nimport { SquidexDate } from '../extensions/squidex-date.extension';\r\nimport { AppConfigProvider } from '../../../app-config.provider';\r\nimport { Guid } from 'guid-typescript';\r\n\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\nexport class ContentService {\r\n private readonly contentBaseUrl: string;\r\n private readonly cacheClearToken: string;\r\n\r\n constructor(private readonly httpClient: HttpClient,\r\n private readonly baseUrl: string,\r\n public readonly schemaName: string,\r\n private readonly appConfigProvider: AppConfigProvider,\r\n ) {\r\n this.contentBaseUrl = `${this.baseUrl}/${schemaName}`;\r\n this.cacheClearToken = \"clearCache=true\";\r\n }\r\n\r\n getAllContent(): Observable {\r\n\r\n const urlParameters: {} = this.filterSoftDelete();\r\n\r\n urlParameters[\"draftMode\"] = true;\r\n\r\n const url = this.contentBaseUrl + \"?q=\" + encodeURIComponent(JSON.stringify(urlParameters));\r\n\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n getAllLanguages(): Observable {\r\n const languageUrl = this.appConfigProvider.getLanguagePathUrl()\r\n\r\n return this.httpClient.get(languageUrl) as Observable;\r\n }\r\n\r\n\r\n createContent(contentData: any): Observable {\r\n if (contentData) {\r\n const url = `${this.contentBaseUrl}?${this.cacheClearToken}`;\r\n return this.httpClient.post(url, contentData) as Observable;\r\n }\r\n throw (new Error('data is null when trying to create content'));\r\n }\r\n\r\n createContentAndPublish(contentData: any): Observable {\r\n if (contentData) {\r\n const url = `${this.contentBaseUrl}?publish=true&${this.cacheClearToken}`;\r\n return this.httpClient.post(url, contentData) as Observable;\r\n }\r\n throw (new Error('data is null when trying to create and publish content'));\r\n }\r\n\r\n createDraft(contentId: string): Observable {\r\n if (Validation.isValidGuid(contentId)) {\r\n const url = `${this.contentBaseUrl}/${contentId}/draft`;\r\n return this.httpClient.post(url, {}) as Observable;\r\n } else {\r\n throw (new Error('Guid is not valid when trying to delete content'));\r\n }\r\n }\r\n\r\n deleteDraft(contentId: string): Observable {\r\n if (Validation.isValidGuid(contentId)) {\r\n const url = `${this.contentBaseUrl}/${contentId}/draft`;\r\n return this.httpClient.delete(url) as Observable;\r\n } else {\r\n throw (new Error('Guid is not valid when trying to delete content'));\r\n }\r\n }\r\n\r\n softDeleteContent(contentId: string, draftMode: boolean = false): Observable {\r\n if (!Validation.isValidGuid(contentId)) { throw (new Error('Guid is not valid when trying to soft delete content')); }\r\n return this.getContent(contentId, draftMode).pipe(\r\n tap(content => {\r\n var contentSoftDeleteCode = content.data.code.iv + '__' + contentId;\r\n content.data.deleted = { iv: true };\r\n content.data.code = { iv: contentSoftDeleteCode };\r\n content.data.deletedatetime = { iv: `${new SquidexDate(Date.now()).format()}` };\r\n this.updateContent(contentId, content.data).subscribe(c => {\r\n return this.archive(c.id);\r\n })\r\n })\r\n );\r\n }\r\n\r\n deleteContent(contentId: string): Observable {\r\n if (Validation.isValidGuid(contentId)) {\r\n const url = `${this.contentBaseUrl}/${contentId}?${this.cacheClearToken}`;\r\n return this.httpClient.delete(url) as Observable;\r\n } else {\r\n throw (new Error('Guid is not valid when trying to delete content'));\r\n }\r\n }\r\n\r\n private addDraftModeToUrl(url: string, draftMode: boolean) {\r\n if (draftMode) {\r\n if (url.indexOf('?') > 0) {\r\n url += '&draftMode=true ';\r\n } else {\r\n url += '?draftMode=true';\r\n }\r\n }\r\n return url;\r\n }\r\n\r\n private filterSoftDelete() {\r\n const contentObject =\r\n {\r\n filter:\r\n {\r\n and:\r\n [\r\n {\r\n path: \"data.deleted.iv\",\r\n op: \"ne\",\r\n value: true\r\n }\r\n ]\r\n },\r\n sort:\r\n [\r\n {\r\n path: \"data.code.iv\",\r\n order: \"ascending\"\r\n }\r\n ]\r\n }\r\n return contentObject;\r\n }\r\n\r\n getContent(contentId: string, draftMode: boolean = false): Observable {\r\n if (Validation.isValidGuid(contentId)) {\r\n let url = this.addDraftModeToUrl(`${this.contentBaseUrl}/${contentId}`, draftMode);\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n throw (new Error('Guid is not valid when trying to get content'));\r\n }\r\n\r\n findContent(oDataQuery: string, draftMode: boolean = false): Observable {\r\n const url = this.addDraftModeToUrl(`${this.contentBaseUrl}${oDataQuery}`, draftMode);\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n getLastUpdatedContent(): Observable {\r\n return this.findContent('?$top=1&$orderby=lastModified desc')\r\n .pipe(map(contents => {\r\n if (contents['items']) {\r\n return contents['items'][0];\r\n }\r\n return of(null);\r\n })) as Observable;\r\n }\r\n\r\n getLastPublishedContent(): Observable {\r\n return this.findContent('?$top=1&$orderby=data/publishdatetime/iv desc')\r\n .pipe(map(contents => {\r\n if (contents['items']) {\r\n return contents['items'][0];\r\n }\r\n return of(null);\r\n })) as Observable;\r\n }\r\n\r\n countContent(): Observable {\r\n return this.findContent('?$top=1')\r\n .pipe(map(content => content['total']));\r\n }\r\n\r\n getFirstContent(): Observable {\r\n return this.findContent('?$top=1')\r\n .pipe(map(contents => {\r\n if (contents['items']) {\r\n return contents['items'][0];\r\n }\r\n return of(null);\r\n })) as Observable;\r\n }\r\n\r\n updateContent(contentId: string, contentData: any): Observable {\r\n const url = `${this.contentBaseUrl}/${contentId}?${this.cacheClearToken}`;\r\n return this.httpClient.put(url, contentData) as Observable;\r\n }\r\n\r\n updateContentAndStatus(contentId: string, contentData: any, status: string): Observable {\r\n const url = `${this.contentBaseUrl}/${contentId}?publish=${(status === \"Published\" ? \"true\" : \"false\")}`;\r\n return this.httpClient.put(url, contentData) as Observable;\r\n }\r\n\r\n getAllContentOrdered(orderBy: string = 'id') {\r\n const url = `${this.contentBaseUrl}?$orderby=${orderBy}`;\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n updateContentStatus(contentId: string, status: string, dueTime: string): Observable {\r\n const url = `${this.contentBaseUrl}/${contentId}/status`;\r\n const statusData: any = {};\r\n statusData['status'] = status;\r\n if (dueTime) {\r\n statusData['dueTime'] = dueTime;\r\n }\r\n return this.httpClient.put(url, statusData) as Observable;\r\n }\r\n\r\n\r\n createLanguageDefinition(contentData: any): Observable {\r\n if (contentData) {\r\n const url = this.appConfigProvider.getSchemaBaseUrl() + '/languages';\r\n return this.httpClient.post(url, contentData) as Observable;\r\n }\r\n throw (new Error('data is null when trying to create content'));\r\n }\r\n\r\n deleteLanguageDefinition(code: string): Observable {\r\n if (code) {\r\n const url = `${this.appConfigProvider.getSchemaBaseUrl()}/languages/${code}`;\r\n return this.httpClient.delete(url) as Observable;\r\n }\r\n throw (new Error('data is null when trying to create content'));\r\n }\r\n\r\n archive(id: string, date: Date = null) {\r\n let formattedDate = null;\r\n\r\n if (date) {\r\n const setDate = new Date(date.getTime() - (date.getTimezoneOffset() * 60000)).toISOString()\r\n formattedDate = setDate.substring(0, 19) + 'Z';\r\n }\r\n\r\n const archivePayload = {\r\n status: \"Archived\",\r\n dueTime: formattedDate\r\n }\r\n this.updateContent(id.toString() + '/status', archivePayload).subscribe(answer => {\r\n return answer as Content;\r\n });\r\n\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../../../base/base-component.component';\r\nimport { SiteSettingModel, MenuModel, PageModel, MenuItemDto } from '../../../../services';\r\n\r\n@Component({\r\n selector: 'menu-item',\r\n templateUrl: './menu-item.component.html',\r\n styleUrls: ['./menu-item.component.css']\r\n})\r\nexport class MenuItemComponent extends BaseComponent implements OnInit {\r\n\r\n @Input()\r\n siteSettingModel: SiteSettingModel;\r\n\r\n @Input()\r\n menu: MenuModel;\r\n\r\n @Input()\r\n menuItemDtos: Array;\r\n\r\n @Input()\r\n menuItemDto: MenuItemDto;\r\n\r\n @Input()\r\n parentMenuItemDto: MenuItemDto = null;\r\n\r\n @Input()\r\n rootMenuItemDtos: Array = null;\r\n\r\n @Input()\r\n pages: Array = null;\r\n\r\n @Output()\r\n onDrag: EventEmitter = new EventEmitter();\r\n\r\n @ViewChild(\"plusIcon\") plusRef: ElementRef;\r\n @ViewChild(\"minusIcon\") minusRef: ElementRef;\r\n\r\n hasChildren: boolean;\r\n childrenDto: Array;\r\n\r\n constructor(translateService: TranslateService,\r\n private plusIcon: ElementRef,\r\n private minusIcon: ElementRef\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('MenuItemComponent');\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.childrenDto = this.menuItemDtos.filter(v =>\r\n v.menuItem.data.parentMenuItem.iv[0] === this.menuItemDto.menuItem.id\r\n && this.menuItemDto.menuItem.data.deleted.iv != true\r\n && this.menuItemDto.menuItem.status == 'Published');\r\n\r\n this.hasChildren = this.childrenDto.length > 0;\r\n }\r\n\r\n private getLabel(menuItemDto: MenuItemDto): string {\r\n const page = this.dParser.pullData(this.menuItemDto.menuItem, 'page');\r\n const pageObj = this.pages.find(p => p.id === page);\r\n\r\n let label = this.dParser.pullData(pageObj, 'pageName');\r\n\r\n if (!label) {\r\n label = this.dParser.pullData(menuItemDto.menuItem, 'label', this.getCurrentCulture());\r\n }\r\n\r\n if (!label) {\r\n label = this.dParser.pullData(menuItemDto.menuItem, 'code');\r\n }\r\n\r\n return label;\r\n }\r\n\r\n private getMenuItemPath(): string {\r\n\r\n if (!this.menuItemDto.menuItem.data.page) {\r\n return '';\r\n }\r\n\r\n const page = this.dParser.pullData(this.menuItemDto.menuItem, 'page');\r\n const link = this.dParser.pullData(this.menuItemDto.menuItem, 'link');\r\n const menuCode = this.dParser.pullData(this.menuItemDto.menuItem, 'code');\r\n let path = '/page/';\r\n if (link) {\r\n path = link;\r\n } else if (page && this.pages) {\r\n const pageObj = this.pages.find(p => p.id === page);\r\n if (pageObj) {\r\n const schemaName = this.dParser.pullData(this.menuItemDto.menuItem, 'schemaname');\r\n const parent = schemaName !== '' ? schemaName + '/' : '';\r\n //const pageLink = this.dParser.pullData(pageObj, 'url', this.getCurrentCulture());\r\n const pageCode = this.dParser.pullData(pageObj, 'code');\r\n // TO DO\r\n // Does not work in frenh\r\n // if (pageLink)\r\n // path += parent + pageLink\r\n if (pageCode) {\r\n path += parent + pageCode;\r\n }\r\n } else {\r\n const parentMenu = this.menuItemDtos.find(p => p.menuItem.id === this.menuItemDto.menuItem.data.parentMenuItem.iv[0]);\r\n if (parentMenu) {\r\n const parentPath = this.dParser.pullData(parentMenu.menuItem, 'code');\r\n path += parentPath + '/' + menuCode;\r\n }\r\n }\r\n }\r\n if ((path === '' || path === '/page/') && menuCode) {\r\n path += menuCode;\r\n }\r\n\r\n return path;\r\n }\r\n\r\n collapseMenuItem() {\r\n if (this.menuItemDto.isCurrentPage || this.menuItemDto.isVisible ) {\r\n return 'collapse show';\r\n }\r\n return 'collapse';\r\n }\r\n\r\n isSelected() {\r\n let classes = 'on-hover no-drag pl-1';\r\n if (this.menuItemDto.isCurrentPage) {\r\n classes += ' is-selected';\r\n }\r\n return classes;\r\n }\r\n\r\n // used ngclass\r\n isSelectedIcon() {\r\n let classes = '';\r\n if (this.menuItemDto.isCurrentPage) {\r\n classes = 'text-white';\r\n }\r\n return classes;\r\n }\r\n\r\n // Moved to custom pipe\r\n isSelectedChildren() {\r\n let classes = 'on-hover no-drag pl-1 ';\r\n if (this.menuItemDto.isCurrentPage) {\r\n const selectedChild = this.menuItemDtos.find(m => m.isCurrentPage && this.menuItemDto.menuItem.id === m.menuItem.data.parentMenuItem.iv[0]);\r\n if (!selectedChild) {\r\n classes += ' is-selected';\r\n }\r\n }\r\n return classes;\r\n }\r\n\r\n // Moved to custom pipe\r\n isSelectedIconPlus(menu: MenuItemDto) {\r\n let classes = 'fa fa-plus pb-2 pt-2';\r\n\r\n if (this.menuItemDto.isCurrentPage) {\r\n const selectedChild = this.menuItemDtos.find(m => m.isCurrentPage && this.menuItemDto.menuItem.id === m.menuItem.data.parentMenuItem.iv[0]);\r\n if (!selectedChild) {\r\n classes += 'text-white';\r\n }\r\n }\r\n\r\n let showIcon = ' d-inline';\r\n if (menu.menuItem.id === this.menuItemDto.menuItem.id) {\r\n if (menu.isVisible || menu.isCurrentPage) {\r\n showIcon = ' d-none';\r\n }\r\n }\r\n return classes + showIcon;\r\n }\r\n\r\n // Moved to custom pipe\r\n isSelectedIconMinus(menu) {\r\n let classes = 'fa fa-minus pb-2 pt-2';\r\n\r\n if (this.menuItemDto.isCurrentPage) {\r\n const selectedChild = this.menuItemDtos.find(m => m.isCurrentPage && this.menuItemDto.menuItem.id === m.menuItem.data.parentMenuItem.iv[0]);\r\n if (!selectedChild) {\r\n classes += ' text-white';\r\n }\r\n }\r\n\r\n let showIcon = ' d-inline';\r\n if (menu.menuItem.id === this.menuItemDto.menuItem.id) {\r\n if ((!menu.isVisible && !menu.isCurrentPage)) {\r\n showIcon = ' d-none';\r\n }\r\n }\r\n\r\n return classes + showIcon;\r\n }\r\n\r\n changeSign(elem: HTMLElement) {\r\n elem.classList.remove(\"d-inline\");\r\n elem.classList.add(\"d-none\");\r\n if (elem.classList.contains('fa-minus')) {\r\n this.plusRef.nativeElement.classList.add('d-inline');\r\n this.plusRef.nativeElement.classList.remove('d-none');\r\n if (this.minusRef.nativeElement.classList.contains('text-white')) {\r\n this.plusRef.nativeElement.classList.add('text-white');\r\n this.menuItemDto.isVisible = true;\r\n }\r\n\r\n } else {\r\n this.minusRef.nativeElement.classList.add('d-inline');\r\n this.minusRef.nativeElement.classList.remove('d-none');\r\n if (this.plusRef.nativeElement.classList.contains('text-white')) {\r\n this.minusRef.nativeElement.classList.add('text-white');\r\n this.menuItemDto.isVisible = false;\r\n }\r\n }\r\n }\r\n\r\n // Moved to custom pipe\r\n isLinkDisabled() {\r\n\r\n if (!this.menuItemDto.menuItem.data.page) {\r\n return 'disabled';\r\n } else if (!this.menuItemDto.menuItem.data.page.iv) {\r\n return 'disabled';\r\n }\r\n return '';\r\n }\r\n\r\n openDeleteModal(): void {\r\n this.onDeleteEvent.emit(this.article);\r\n }\r\n\r\n drag(event): void {\r\n this.onDrag.emit(event);\r\n }\r\n }\r\n","import { StoreConfig, EntityStore } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { Asset } from '../..';\r\nimport { IAssetState } from './asset.state';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({\r\n name: 'asset',\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class AssetStore extends EntityStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../../base/base-component.component';\r\nimport { SiteSettingModel, DynamicContentSchemaFactory, MenuModel, MenuItemModel, MenuItemDto, PageFacade, PageModel, MenuItemFacade, DynamicContentSchemaFacade } from '../../../services';\r\nimport { DefaultContents, AppToken } from '../../../models/app-token';\r\nimport { Router} from '@angular/router';\r\n\r\n@Component({\r\n selector: 'menu',\r\n templateUrl: './menu.component.html',\r\n styleUrls: ['./menu.component.css']\r\n})\r\nexport class MenuComponent extends BaseComponent implements OnInit {\r\n\r\n @Input()\r\n siteSettingModel: SiteSettingModel;\r\n\r\n @Input()\r\n menuCode: string;\r\n\r\n menuItemFacade: DynamicContentSchemaFacade;\r\n\r\n menu: MenuModel;\r\n menuItemDtos: Array;\r\n rootMenuItemDtos: Array;\r\n menuTitle = '';\r\n pages: PageModel[];\r\n currentLink: string;\r\n\r\n constructor(\r\n private readonly contentFacadeFactory: DynamicContentSchemaFactory,\r\n private readonly pageFacade: PageFacade,\r\n private readonly router: Router,\r\n translateService: TranslateService\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('MenuComponent');\r\n }\r\n\r\n ngOnInit() {\r\n const menuFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.MENU_SCHEMA_NAME);\r\n\r\n const sub = menuFacade.getByCode(DefaultContents.DEFAULT_MENU_CODE).subscribe(m => {\r\n this.menu = m;\r\n this.menuTitle = this.dParser.pullData(m, 'name', this.getCurrentCulture());\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n\r\n const urlPart = '/page'\r\n this.currentLink = this.router.url.substring(this.router.url.indexOf(urlPart) + urlPart.length);\r\n\r\n\r\n this.menuItemFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.MENU_ITEM_SCHEMA_NAME);\r\n\r\n const subPage = this.pageFacade.getAll().subscribe(pg => {\r\n\r\n this.pages = pg;\r\n\r\n const sub2 = this.menuItemFacade.getAll().subscribe(mi => {\r\n\r\n const dtoList: MenuItemDto[] = [];\r\n\r\n mi.forEach(m => {\r\n const itemDto = new MenuItemDto();\r\n itemDto.menuItem = m;\r\n const link = this.dParser.pullData(m, 'link', this.getCurrentCulture());\r\n if (link) {\r\n itemDto.isCurrentPage = this.isCurrentMenuLink(m);\r\n } else if (m.data.page) {\r\n const page = this.pages.find(p => p.id === m.data.page.iv);\r\n if (page) {\r\n itemDto.isCurrentPage = this.isCurrentPage(page);\r\n } else {\r\n itemDto.isCurrentPage = this.isCurrentMenuCode(m);\r\n }\r\n }\r\n else {\r\n itemDto.isCurrentPage = this.isCurrentMenuCode(m);\r\n }\r\n\r\n const parentMi = dtoList.find(o => o.menuItem.id === itemDto.menuItem.id);\r\n if (!parentMi) {\r\n dtoList.push(itemDto);\r\n }\r\n\r\n if (itemDto.isCurrentPage && m.data.parentMenuItem.iv.length > 0) {\r\n\r\n this.addParentToList(mi, m, dtoList);\r\n\r\n }\r\n });\r\n\r\n this.menuItemDtos = dtoList.sort((a, b) => {\r\n if (!a.menuItem.data) {\r\n return 1;\r\n }\r\n if (!b.menuItem.data) {\r\n return 1;\r\n }\r\n if (!a.menuItem.data.index) {\r\n return 1;\r\n }\r\n if (!b.menuItem.data.index) {\r\n return 1;\r\n }\r\n return a.menuItem.data.index.iv < b.menuItem.data.index.iv ? -1 : 1\r\n });\r\n\r\n this.rootMenuItemDtos = this.menuItemDtos.filter(v => v.menuItem.data.parentMenuItem.iv.length === 0);\r\n\r\n });\r\n\r\n this.subscriptions.push(sub2);\r\n\r\n });\r\n\r\n this.subscriptions.push(subPage);\r\n }\r\n\r\n addParentToList(mi: MenuItemModel[], m: MenuItemModel, dtoList: MenuItemDto[]) {\r\n const parentMi = mi.find(o => o.id === m.data.parentMenuItem.iv[0]);\r\n if (parentMi) {\r\n let exists = true;\r\n let parent = dtoList.find(o => o.menuItem.id === parentMi.id);\r\n if (!parent) {\r\n parent = new MenuItemDto();\r\n parent.menuItem = parentMi;\r\n exists = false;\r\n }\r\n parent.isCurrentPage = true;\r\n if (exists) {\r\n const index = dtoList.findIndex(o => o.menuItem.id === parentMi.id);\r\n dtoList[index] = parent;\r\n } else {\r\n dtoList.push(parent);\r\n }\r\n this.addParentToList(mi, parentMi, dtoList);\r\n }\r\n }\r\n\r\n isCurrentMenuLink(menu: MenuItemModel) {\r\n const link = this.dParser.pullData(menu, 'link', this.getCurrentCulture());\r\n if (link.replace('/', '') === this.currentLink.replace('/', '')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n isCurrentMenuCode(menu: MenuItemModel) {\r\n const code = this.dParser.pullData(menu, 'code');\r\n if (code === this.currentLink.substring(this.currentLink.lastIndexOf('/') + 1)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n isCurrentPage(page: PageModel): boolean {\r\n const link = this.dParser.pullData(page, 'url', this.getCurrentCulture());\r\n const code = this.dParser.pullData(page, 'code');\r\n if (link === this.currentLink) {\r\n return true;\r\n } else if (code.replace('/', '') === this.currentLink.replace('/', '')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n menuItemeDrop(event) {\r\n const menuItemsIdOrdered: MenuItemDto[] = this.clone(this.rootMenuItemDtos);\r\n\r\n if (event['previousIndex'] === event['currentIndex']) {\r\n return;\r\n }\r\n\r\n let menus = [];\r\n const indexFrom = event['previousIndex'];\r\n const indexTo = event['currentIndex'];\r\n\r\n if (indexFrom === indexTo) {\r\n return;\r\n }\r\n\r\n const isUp = indexFrom > indexTo;\r\n\r\n if (isUp) {\r\n for (let i = 0; i < menuItemsIdOrdered.length; i++) {\r\n if (i < indexTo) {\r\n this.dParser.putData(menuItemsIdOrdered[i].menuItem.data, 'index', i);\r\n menus.push(menuItemsIdOrdered[i]);\r\n } else if (i === indexTo) {\r\n this.dParser.putData(menuItemsIdOrdered[indexFrom].menuItem.data, 'index', i);\r\n this.dParser.putData(menuItemsIdOrdered[indexTo].menuItem.data, 'index', i + 1);\r\n menus.push(menuItemsIdOrdered[indexFrom]);\r\n menus.push(menuItemsIdOrdered[indexTo]);\r\n } else if (i != indexFrom) {\r\n this.dParser.putData(menuItemsIdOrdered[indexTo].menuItem.data, 'index', i);\r\n menus.push(menuItemsIdOrdered[i]);\r\n }\r\n }\r\n } else {\r\n for (let i = menuItemsIdOrdered.length - 1; i >= 0; i--) {\r\n if (i > indexTo) {\r\n this.dParser.putData(menuItemsIdOrdered[i].menuItem.data, 'index', i);\r\n menus.push(menuItemsIdOrdered[i]);\r\n } else if (i === indexTo) {\r\n this.dParser.putData(menuItemsIdOrdered[indexFrom].menuItem.data, 'index', i);\r\n this.dParser.putData(menuItemsIdOrdered[indexTo].menuItem.data, 'index', i - 1);\r\n menus.push(menuItemsIdOrdered[indexFrom]);\r\n menus.push(menuItemsIdOrdered[indexTo]);\r\n } else if (i !== indexFrom) {\r\n this.dParser.putData(menuItemsIdOrdered[indexTo].menuItem.data, 'index', i);\r\n menus.push(menuItemsIdOrdered[i]);\r\n }\r\n }\r\n menus = menus.reverse();\r\n }\r\n\r\n this.rootMenuItemDtos = menus;\r\n\r\n for (let i = 0; i < menus.length; i++) {\r\n const menuItemId = menus[i].menuItem.id;\r\n const sub = this.menuItemFacade.get(menuItemId).subscribe(menuItem => {\r\n const menuItemData = this.clone(menuItem.data);\r\n this.dParser.putData(menuItemData, 'index', i);\r\n this.menuItemFacade.update(menuItemId, menuItemData).subscribe();\r\n this.subscriptions.push(sub);\r\n });\r\n }\r\n }\r\n\r\n menuItemeDropChild(event: any) {\r\n\r\n if (event['previousIndex'] == event['currentIndex']) {\r\n return;\r\n }\r\n\r\n const menuItems: MenuItemDto[] = this.clone(this.menuItemDtos);\r\n\r\n const parentMenuId = event.container.element.nativeElement.id.substring(3);\r\n const menusFromParent: MenuItemDto[] = menuItems.filter(m => m.menuItem.data.parentMenuItem.iv[0] === parentMenuId);\r\n\r\n let menus = [];\r\n\r\n const indexFrom = event['previousIndex'];\r\n const indexTo = event['currentIndex'];\r\n const isUp = indexFrom > indexTo;\r\n\r\n if (indexFrom === indexTo) {\r\n return;\r\n }\r\n\r\n if (isUp) {\r\n for (let i = 0; i < menusFromParent.length; i++) {\r\n if (i < indexTo) {\r\n this.dParser.putData(menusFromParent[i].menuItem.data, 'index', i);\r\n menus.push(menusFromParent[i]);\r\n } else if (i === indexTo) {\r\n this.dParser.putData(menusFromParent[indexFrom].menuItem.data, 'index', i);\r\n this.dParser.putData(menusFromParent[indexTo].menuItem.data, 'index', i + 1);\r\n menus.push(menusFromParent[indexFrom]);\r\n menus.push(menusFromParent[indexTo]);\r\n } else if (i !== indexFrom) {\r\n this.dParser.putData(menusFromParent[indexTo].menuItem.data, 'index', i);\r\n menus.push(menusFromParent[i]);\r\n }\r\n }\r\n } else {\r\n for (let i = menusFromParent.length - 1 ; i >= 0; i--) {\r\n if (i > indexTo) {\r\n this.dParser.putData(menusFromParent[i].menuItem.data, 'index', i);\r\n menus.push(menusFromParent[i]);\r\n } else if (i === indexTo) {\r\n this.dParser.putData(menusFromParent[indexFrom].menuItem.data, 'index', i);\r\n this.dParser.putData(menusFromParent[indexTo].menuItem.data, 'index', i - 1);\r\n menus.push(menusFromParent[indexFrom]);\r\n menus.push(menusFromParent[indexTo]);\r\n } else if (i !== indexFrom) {\r\n this.dParser.putData(menusFromParent[indexTo].menuItem.data, 'index', i);\r\n menus.push(menusFromParent[i]);\r\n }\r\n }\r\n menus = menus.reverse();\r\n }\r\n\r\n menus.forEach(mp => {\r\n const i: number = menuItems.findIndex(m => m.menuItem.id === mp.menuItem.id);\r\n if (i >= 0) {\r\n menuItems[i] = mp;\r\n }\r\n });\r\n\r\n const pIndex: number = menuItems.findIndex(m => m.menuItem.id === menus[indexTo].menuItem.data.parentMenuItem.iv[0]);\r\n menuItems[pIndex].isCurrentPage = true;\r\n\r\n for (let i = 0; i < menus.length; i++) {\r\n const menuItemId = menus[i].menuItem.id;\r\n const sub = this.menuItemFacade.get(menuItemId).subscribe(menuItem => {\r\n const menuItemData = this.clone(menuItem.data);\r\n this.dParser.putData(menuItemData, 'index', i);\r\n const sub2 = this.menuItemFacade.update(menuItemId, menuItemData).subscribe();\r\n this.subscriptions.push(sub2);\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n this.menuItemDtos = menuItems.sort((a, b) => a.menuItem.data.index.iv < b.menuItem.data.index.iv ? -1 : 1);\r\n this.rootMenuItemDtos = this.menuItemDtos.filter(v => v.menuItem.data.parentMenuItem.iv.length === 0);\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzaWRlLWJhci5jb21wb25lbnQuY3NzIn0= */\";","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\nimport { HeaderMainComponent } from './header/header-main.component';\r\nimport { FooterMainComponent } from './footer/footer-main.component';\r\nimport { TopMenuComponent } from './menus/top-menu/top-menu.component';\r\nimport { LeftMenuComponent } from './menus/left-menu/left-menu.component';\r\nimport { SideBarComponent } from './menus/side-bar/side-bar.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { FieldControlComponent } from './field/field-control.component';\r\nimport { FieldReferenceEditorComponent } from './field-reference-editor/field-reference-editor.component';\r\nimport { UploadFieldComponent } from './field/upload-field/upload-field.component';\r\nimport { FieldValidation } from './field-validation/field-validation.component';\r\nimport { DynamicLeftMenuComponent } from './menus/dynamic-left-menu/dynamic-left-menu.component';\r\nimport { MenuHeaderComponent } from './menus/menu-header/menu-header.component';\r\nimport { TabsModule } from 'ngx-bootstrap/tabs';\r\nimport { PaginationModule } from 'ngx-bootstrap/pagination';\r\nimport { BsDatepickerModule } from 'ngx-bootstrap/datepicker';\r\nimport { AccordionModule } from 'ngx-bootstrap/accordion';\r\nimport { AssetsLeftMenuComponent } from './menus/assets-left-menu/assets-left-menu.component';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { ContentEditionComponent } from './content/content-edition/content-edition.component';\r\nimport { ContentsListingComponent } from './content/contents-listing/contents-listing.component';\r\nimport { MonacoLiquidEditorModule } from './monaco-liquid-editor/monaco-liquid-editor.module';\r\nimport { NgxFileDropModule } from './ngx-file-drop/ngx-file-drop.module';\r\nimport { CKEditorModule } from 'ckeditor4-angular';\r\nimport { SideLeftBarComponent } from './menus/side-left-bar/side-left-bar.component';\r\nimport { MenuComponent } from './menus/menu/menu.component';\r\nimport { MenuItemComponent } from './menus/menu/menu-item/menu-item.component';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\nimport { FieldPipe } from './field/pipes/field-pipe';\r\nimport { IsDefaultLanguagePipe } from './pipes/language/is-default-language.pipe';\r\nimport { GetValidationMsgsPipe } from './content/content-edition/pipes/get-validation-msgs.pipe';\r\nimport { GetPublishFormGroupScheduleJobDueTimePipe } from './content/content-edition/pipes/get-publish-form-group-schedule-job-due-time.pipe';\r\nimport { GetLocalizedFieldControlNamePipe } from './field/pipes/get-localized-field-control-name.pipe';\r\nimport { GetValuePipe } from './field/pipes/get-value.pipe';\r\nimport { FormGroupGetPipe } from './field/pipes/form-group-get.pipe';\r\nimport { GetDateValuePipe } from './field/pipes/get-date-value.pipe';\r\nimport { GetDateTimeValuePipe } from './field/pipes/get-date-time-value.pipe';\r\nimport { GetMenuLabelPipe } from './field/pipes/get-menu-label.pipe'\r\nimport { GetMenuSelectedChildrenPipe } from './field/pipes/get-menu-selected-children-pipe'\r\nimport { GetMenuShowPlusIconPipe } from './field/pipes/get-menu-show-plus-icon-pipe'\r\nimport { GetMenuShowMinusIconPipe } from './field/pipes/get-menu-show-minus-icon-pipe'\r\nimport { GetMenuDisabledPipe } from './field/pipes/get-menu-disabled-pipe'\r\nimport { GetCultureNamePipe } from './field/pipes/get-culture-name.pipe'\r\nimport { GetCompareValuePipe } from './field/pipes/get-compare-value.pipe';\r\nimport { GetLanguageCodePipe } from './field/pipes/get-language-code.pipe';\r\nimport { FormGroupGetLocalizedPipe } from './field/pipes/form-group-get-localized.pipe';\r\n\r\n@NgModule(\r\n {\r\n declarations: [\r\n HeaderMainComponent,\r\n FooterMainComponent,\r\n ContentsListingComponent,\r\n ContentEditionComponent,\r\n TopMenuComponent,\r\n LeftMenuComponent,\r\n SideBarComponent,\r\n SideLeftBarComponent,\r\n FieldControlComponent,\r\n FieldReferenceEditorComponent,\r\n UploadFieldComponent,\r\n FieldValidation,\r\n DynamicLeftMenuComponent,\r\n MenuHeaderComponent,\r\n AssetsLeftMenuComponent,\r\n MenuComponent,\r\n MenuItemComponent,\r\n FieldPipe,\r\n IsDefaultLanguagePipe,\r\n GetValidationMsgsPipe,\r\n GetPublishFormGroupScheduleJobDueTimePipe,\r\n GetLocalizedFieldControlNamePipe,\r\n GetValuePipe,\r\n FormGroupGetPipe,\r\n GetDateValuePipe,\r\n GetDateTimeValuePipe,\r\n GetMenuLabelPipe,\r\n GetMenuSelectedChildrenPipe,\r\n GetMenuShowPlusIconPipe,\r\n GetMenuShowMinusIconPipe,\r\n GetMenuDisabledPipe,\r\n GetCultureNamePipe,\r\n GetCompareValuePipe,\r\n GetMenuDisabledPipe,\r\n GetLanguageCodePipe,\r\n FormGroupGetLocalizedPipe\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RouterModule,\r\n TranslateModule,\r\n BsDatepickerModule.forRoot(),\r\n AccordionModule.forRoot(),\r\n CKEditorModule,\r\n DragDropModule,\r\n NgxFileDropModule,\r\n MonacoLiquidEditorModule,\r\n NgMultiSelectDropDownModule.forRoot(),\r\n BsDropdownModule.forRoot(),\r\n PaginationModule.forRoot(),\r\n TabsModule.forRoot()\r\n ],\r\n exports: [\r\n FooterMainComponent,\r\n HeaderMainComponent,\r\n LeftMenuComponent,\r\n DynamicLeftMenuComponent,\r\n SideBarComponent,\r\n SideLeftBarComponent,\r\n ContentsListingComponent,\r\n ContentEditionComponent,\r\n FieldValidation,\r\n FieldControlComponent,\r\n UploadFieldComponent,\r\n AssetsLeftMenuComponent,\r\n MenuComponent,\r\n MenuItemComponent,\r\n FieldPipe,\r\n IsDefaultLanguagePipe,\r\n GetMenuLabelPipe,\r\n GetMenuSelectedChildrenPipe,\r\n GetMenuShowMinusIconPipe,\r\n GetMenuShowMinusIconPipe,\r\n GetMenuDisabledPipe,\r\n GetCultureNamePipe,\r\n GetCompareValuePipe,\r\n GetLanguageCodePipe,\r\n GetLocalizedFieldControlNamePipe,\r\n FormGroupGetLocalizedPipe,\r\n FormGroupGetPipe\r\n ]\r\n })\r\nexport class SharedModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { LayoutStore } from './layout.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LayoutQuery extends BaseQuery {\r\n\r\n constructor(store: LayoutStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n","export { FormValidationsService } from './form-validations/form-validations.service';\r\nexport { PersistenceStorageService } from './persistence-storage/persistence-storage.service';\r\nexport { UiNotificationService } from './ui-notification/ui-notification.service';\r\nexport { AuthenticationService } from \"./auth/authentication.service\";\r\n","import { Injectable } from '@angular/core';\r\nimport { LanguageStore } from './language.store';\r\nimport { LanguageQuery } from './language.query';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { LanguageService } from './language.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { LanguageModel } from './language.model';\r\nimport { Observable, from, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ContentList, Content } from '../../squidex';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class LanguageFacade extends BaseFacade {\r\n private static languages: Content[] = [];\r\n languagesLoad: Promise = this.reloadLanguages();\r\n private static lastCheck:Date = new Date();\r\n private static minutesToWait: number = 15;\r\n\r\n\r\n constructor(\r\n languageService: LanguageService,\r\n languageStore: LanguageStore,\r\n languageQuery: LanguageQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(languageService,\r\n languageStore,\r\n languageQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade('language'),\r\n translateService,\r\n 'language-facade'\r\n );\r\n }\r\n\r\n getByCode(code: string, draftMode: boolean = false): Observable {\r\n\r\n if(LanguageFacade.lastCheck.getTime() + 1000 * 60 * LanguageFacade.minutesToWait < new Date().getTime()) {\r\n this.languagesLoad = this.reloadLanguages();\r\n LanguageFacade.lastCheck = new Date();\r\n }\r\n\r\n if(LanguageFacade.languages.length > 0) {\r\n let language = LanguageFacade.languages.find(r => r.data.code.iv === code);\r\n if(language) {\r\n return of(language);\r\n }\r\n }\r\n\r\n return from(this.languagesLoad.then(r => {\r\n return r.find(r => r.data.code.iv === code);\r\n }));\r\n }\r\n\r\n private reloadLanguages(): Promise {\r\n return this.getService().getAll().pipe(map(r => {\r\n LanguageFacade.languages = r.items;\r\n return r.items;\r\n })).toPromise();\r\n }\r\n\r\n flushLanguages(): void {\r\n LanguageFacade.languages = [];\r\n LanguageFacade.lastCheck = new Date();\r\n this.languagesLoad = this.reloadLanguages();\r\n }\r\n\r\n\r\n\r\n\r\n getLanguages(ids: string[], orderBy: string): Observable {\r\n\r\n if(LanguageFacade.lastCheck.getTime() + 1000 * 60 * LanguageFacade.minutesToWait < new Date().getTime()) {\r\n this.languagesLoad = this.reloadLanguages();\r\n LanguageFacade.lastCheck = new Date();\r\n }\r\n\r\n if(LanguageFacade.languages.length > 0) {\r\n let languages = LanguageFacade.languages.filter(l => ids.includes(l.id));\r\n if(orderBy == \"index\" || orderBy == \"data/index/iv\") {\r\n languages = languages.sort((a: LanguageModel, b:LanguageModel) => {\r\n return a.data.index.iv - b.data.index.iv;\r\n }\r\n );\r\n }\r\n if(languages) {\r\n return of(languages);\r\n }\r\n }\r\n\r\n return from(this.languagesLoad.then(ls => {\r\n return ls.filter(l => ids.includes(l.id));\r\n }));\r\n\r\n }\r\n\r\n getActiveLanguages(): Observable {\r\n\r\n if(LanguageFacade.lastCheck.getTime() + 1000 * 60 * LanguageFacade.minutesToWait < new Date().getTime()) {\r\n this.languagesLoad = this.reloadLanguages();\r\n LanguageFacade.lastCheck = new Date();\r\n }\r\n\r\n if(LanguageFacade.languages.length > 0) {\r\n return of(LanguageFacade.languages\r\n .filter(l => l.data.isActivated.iv == true)\r\n .sort((a: LanguageModel, b:LanguageModel) => {\r\n return a.data.index.iv - b.data.index.iv;\r\n }));\r\n }\r\n\r\n return of([]);\r\n }\r\n\r\n getAllLanguages(): Observable {\r\n // Not language as content but all available squidex language object\r\n // only asked occasionnaly. no need for local storage\r\n return this.getService().getAllLanguages();\r\n }\r\n\r\n\r\n\r\n createLanguageDefinition(code: string): Observable {\r\n\r\n // TODO: manage store\r\n const payload = { 'language': code };\r\n return this.getService().createLanguageDefinition(payload);\r\n }\r\n\r\n\r\n deleteLanguageDefinition(code: string): Observable {\r\n\r\n // TODO: manage store\r\n return this.getService().deleteLanguageDefinition(code);\r\n }\r\n\r\n\r\n}\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({\r\n name: 'assetdirectory',\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class AssetDirectoryStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","export default \"
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
      \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\\"img\\\"\\r\\n \\\"img\\\"\\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n {{language.data.code.iv | getCultureName | async }}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n {{language.data.code.iv | getCultureName | async }}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"EDITABLE_SECTION\\\") | async | uppercase }}
    \\r\\n \\r\\n {{ t(\\\"OPEN_ALL_SECTION\\\") | async }}\\r\\n \\\"double-open\\\"\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n\\r\\n

    Template : {{this.pageTemplate.data.code.iv}}

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

    {{ tc(\\\"CREATE_CONTENT\\\") | async | uppercase }}

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

    {{ (this.selectedPageFilterId ? tc(\\\"MODIFIY_FILTER\\\") : tc(\\\"CREATE_FILTER\\\")) | async | uppercase }}

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

    {{ t(\\\"DELETE\\\") | async }} {{this.title}}

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

    \\r\\n {{ t('WARNING_DELETE', {name: this.title} ) | async }}\\r\\n \\r\\n \\r\\n

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

    {{ t(\\\"DELETE_DRAFT\\\") | async }}

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

    \\r\\n {{ t('WARNING_DELETE', {name: 'draft'}) | async }}\\r\\n \\r\\n \\r\\n

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

    {{ t(\\\"DELETE\\\") | async }} {{this.pageContentsDescription[this.selectedPageContentId]['title']}}

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

    \\r\\n {{ t('WARNING_DELETE', {name: this.pageContentsDescription[this.selectedPageContentId]['title']} ) | async }}\\r\\n \\r\\n \\r\\n

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

    {{ t(\\\"DELETE\\\") | async }}

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

    \\r\\n {{ t('WARNING_DELETE', 'pageFilter' ) | async }}\\r\\n \\r\\n \\r\\n

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

    {{ t(\\\"CLONE\\\") | async }} {{ currentPage.data.pageName.iv }}

    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{language.data.code.iv | getCultureName | async }}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'getValue'\r\n})\r\nexport class GetValuePipe implements PipeTransform {\r\n\r\n transform(value: any, language: string): string {\r\n if (!value || !value[language]) {\r\n return '';\r\n }\r\n\r\n return value[language];\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AssetDirectoryStore } from './asset-directory.store';\r\nimport { AssetDirectoryQuery } from './asset-directory.query';\r\nimport { BaseFacade } from \"../base/base.facade\";\r\nimport { AssetDirectoryService } from './asset-directory.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { Observable } from 'rxjs';\r\nimport { AssetDirectoryModel } from './asset-directory.model';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { AssetService } from '../../squidex/services/asset.service';\r\nimport { ESchemaContentStatus } from '../base/enum';\r\nimport { Folder } from '../../squidex/models/folder.model';\r\nimport { guid, ID } from '@datorama/akita';\r\nimport { Content, ContentList } from '../../squidex';\r\nimport { FolderList } from '../../squidex/models/folder-list.model';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AssetDirectoryFacade extends BaseFacade {\r\n\r\n constructor(\r\n assetDirectoryService: AssetDirectoryService,\r\n assetDirectoryStore: AssetDirectoryStore,\r\n assetDirectoryQuery: AssetDirectoryQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService,\r\n private readonly directoryService: AssetDirectoryService\r\n ) {\r\n super(assetDirectoryService,\r\n assetDirectoryStore,\r\n assetDirectoryQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade('assetdirectory'),\r\n translateService,\r\n 'assetdirectory-facade');\r\n }\r\n\r\n verifyExist(directory: string) {\r\n this.getCount(directory).subscribe(count => {\r\n if (count === 0) {\r\n let dir = new AssetDirectoryModel();\r\n\r\n this.setDataValue(dir.data, 'code', directory.toLowerCase().replace(' ', '_'));\r\n this.setDataValue(dir.data, 'name', directory);\r\n this.putNumber(dir.data, 'index', 1);\r\n\r\n this.createAsPublished(dir.data).subscribe();\r\n }\r\n });\r\n }\r\n\r\n getCount(folder: string): Observable {\r\n let contentObject =\r\n {\r\n path: 'data.name.iv',\r\n op: \"eq\",\r\n value: folder\r\n }\r\n return this.filterCount(contentObject).pipe(map(val => ( val && 0 )));\r\n }\r\n\r\n getByName(name: string): Observable {\r\n\r\n const directoryObject =\r\n {\r\n path: 'data.name.iv',\r\n op: \"eq\",\r\n value: name\r\n }\r\n return this.getFilteredPagination(null, ESchemaContentStatus.Published, directoryObject) as Observable;\r\n }\r\n\r\n\r\n createDirectoryIfNotExist(folderName: string): Observable {\r\n return this.getFolders().subscribe(folders => {\r\n const folderId: string = folders.items.find(item => item.folderName === folderName).id;\r\n if (folderId) {\r\n return folderId;\r\n } else {\r\n const newFolder = new Folder();\r\n newFolder.folderName = folderName\r\n return this.directoryService.createFolder(newFolder).subscribe();\r\n }\r\n }) as unknown as Observable;\r\n }\r\n\r\n create(contentData: any): Observable {\r\n\r\n const folder = new Folder();\r\n folder.folderName = contentData.name.iv;\r\n this.createFolder(folder).subscribe();\r\n\r\n return super.create(contentData);\r\n }\r\n\r\n\r\n update(contentData: any, id: string, parentId: string = null ): Observable {\r\n\r\n const folder = new Folder();\r\n folder.folderName = contentData.name.iv;\r\n folder.id = id;\r\n // this.updateFolder(folder).subscribe();\r\n\r\n return super.update(id, contentData);\r\n }\r\n\r\n remove(id: ID, draftMode: boolean = false): Observable {\r\n this.deleteFolder(id).subscribe();\r\n return super.remove(id, true);\r\n }\r\n\r\n\r\n createFolder(folder: Folder): Observable {\r\n if (folder) {\r\n return this.directoryService.createFolder(folder);\r\n } else {\r\n throw (new Error('data is null when trying to create asset'));\r\n }\r\n }\r\n\r\n updateFolder(folder: Folder): Observable {\r\n if (folder) {\r\n return this.directoryService.updateFolder(folder);\r\n } else {\r\n throw (new Error('data is null when trying to create asset'));\r\n }\r\n }\r\n\r\n\r\n deleteFolder(folderId: ID): Observable {\r\n return this.directoryService.deleteFolder(folderId);\r\n }\r\n\r\n\r\n getFolders(): Observable {\r\n return this.directoryService.getFolders() as Observable; \r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { ContentFactory } from '../../squidex';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ApplicationUserService extends BaseService {\r\n constructor(contentFactory: ContentFactory) {\r\n super('application-users', contentFactory);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { MenuItemDto } from '../../../services/akita/menu-item-schema/menu-item.dto';\r\n\r\n@Pipe({\r\n name: 'getMenuDisabled'\r\n})\r\nexport class GetMenuDisabledPipe implements PipeTransform {\r\n\r\n transform(menuDto: MenuItemDto, menuDtos: MenuItemDto[]): string {\r\n\r\n if (!menuDto.menuItem.data.page) {\r\n return 'disabled';\r\n } else if (!menuDto.menuItem.data.page.iv) {\r\n return 'disabled';\r\n }\r\n return '';\r\n\r\n }\r\n}\r\n","export default \"\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\";","export class ScheduleJob {\r\n dueTime: string;\r\n id: string;\r\n scheduledBy: string;\r\n status: string;\r\n}\r\n","export default \"
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n X\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n |\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n |\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n {{ oContent[\\\"data\\\"][\\\"code\\\"][\\\"iv\\\"] }}\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n {{ oContent[\\\"data\\\"][\\\"code\\\"][\\\"iv\\\"] }}\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    paginateSize\\\">\\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n {{ oContent[\\\"data\\\"][\\\"code\\\"][\\\"iv\\\"] }}\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","export default \".max-height {\\r\\n max-height: 800px;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImR5bmFtaWMtbGVmdC1tZW51LmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxpQkFBaUI7QUFDbkIiLCJmaWxlIjoiZHluYW1pYy1sZWZ0LW1lbnUuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5tYXgtaGVpZ2h0IHtcclxuICBtYXgtaGVpZ2h0OiA4MDBweDtcclxufVxyXG4iXX0= */\";","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from \"../base/base.query\";\r\nimport { LanguageStore } from \"./language.store\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class LanguageQuery extends BaseQuery {\r\n\r\n constructor(store: LanguageStore) {\r\n super(store);\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { AppConfigProvider } from './app-config.provider';\r\nimport { PersistenceStorageService } from \"./services/index\";\r\nimport { AppToken } from \"./models/app-token\";\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html'\r\n})\r\nexport class AppComponent implements OnInit {\r\n\r\n constructor(\r\n private readonly persistenceStorageService: PersistenceStorageService,\r\n private readonly appConfigProvider: AppConfigProvider,\r\n readonly translateService: TranslateService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.initializeLocalization();\r\n }\r\n\r\n private initializeLocalization(): void {\r\n\r\n const availableLanguages = this.appConfigProvider.getAvailableLanguages();\r\n this.translateService.addLangs(availableLanguages);\r\n\r\n const userLanguage = this.persistenceStorageService.get(AppToken.USER_SAVE_CULTURE_CODE);\r\n\r\n if (userLanguage) {\r\n this.translateService.use(userLanguage).toPromise();\r\n } else {\r\n let defaultLanguage = this.appConfigProvider.getDefaultCulture();\r\n if (defaultLanguage) {\r\n this.translateService.setDefaultLang(defaultLanguage);\r\n this.persistenceStorageService.set(AppToken.USER_SAVE_CULTURE_CODE, defaultLanguage);\r\n this.translateService.use(defaultLanguage).toPromise();\r\n } else {\r\n const browserLang = this.translateService.getBrowserLang();\r\n if (browserLang) {\r\n const l = browserLang.split('-')[0];\r\n defaultLanguage = l.match(/en-CA|fr-CA/) ? browserLang : availableLanguages[0];\r\n this.persistenceStorageService.set(AppToken.USER_SAVE_CULTURE_CODE, defaultLanguage);\r\n this.translateService.use(defaultLanguage).toPromise();\r\n } else {\r\n defaultLanguage = availableLanguages[0];\r\n this.persistenceStorageService.set(AppToken.USER_SAVE_CULTURE_CODE, defaultLanguage);\r\n this.translateService.use(defaultLanguage).toPromise();\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","export default \"@media only screen and (min-width: 1200px) {\\r\\n .container {\\r\\n max-width: 1500px;\\r\\n }\\r\\n}\\r\\n\\r\\n.selected_pagination_size {\\r\\n background-color: green;\\r\\n}\\r\\n\\r\\n.folder-blk div {\\r\\n background-color: #f29100;\\r\\n color: #303130;\\r\\n font-size: 14px;\\r\\n font-weight: 700;\\r\\n padding: 2px 14px 5px 8px;\\r\\n text-transform: uppercase;\\r\\n border-radius: 5px;\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .page-item.active .page-link {\\r\\n background-color: #f29100;\\r\\n border-color: #e28100;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n:host ::ng-deep .page-item .page-link {\\r\\n color: #000;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbnRlbnRzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRTtJQUNFLGlCQUFpQjtFQUNuQjtBQUNGOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUNBO0VBQ0UseUJBQXlCO0VBQ3pCLGNBQWM7RUFDZCxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtFQUN6Qix5QkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLGVBQWU7QUFDakI7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIscUJBQXFCO0VBQ3JCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFdBQVc7QUFDYiIsImZpbGUiOiJjb250ZW50cy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAuY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogMTUwMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLnNlbGVjdGVkX3BhZ2luYXRpb25fc2l6ZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47XHJcbn1cclxuLmZvbGRlci1ibGsgZGl2IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI5MTAwO1xyXG4gIGNvbG9yOiAjMzAzMTMwO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIHBhZGRpbmc6IDJweCAxNHB4IDVweCA4cHg7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyOTEwMDtcclxuICBib3JkZXItY29sb3I6ICNlMjgxMDA7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbjpob3N0IDo6bmctZGVlcCAucGFnZS1pdGVtIC5wYWdlLWxpbmsge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG59XHJcbiJdfQ== */\";","import { Content } from '../../squidex';\r\n\r\nexport class UserModel extends Content {\r\n constructor(current?: Content) {\r\n if (current) {\r\n super(current);\r\n } else {\r\n super({});\r\n }\r\n }\r\n}\r\n","import { Field } from '../models/field.model';\r\nimport { FieldProperty } from '../models/field-property.model';\r\nimport { AppSchemaCategory, FieldsName } from '../../../models/app-token';\r\n\r\nexport class DefaultFieldService {\r\n\r\n generateFields(category: string): Field[] {\r\n switch (category) {\r\n case AppSchemaCategory.SYSTEM_SCHEMAS: {\r\n return this.systemDefaultFields();\r\n }\r\n case AppSchemaCategory.CONTACT_FORMS: {\r\n return this.contactDefaultFields();\r\n }\r\n case AppSchemaCategory.DEFAULT_SCHEMAS: {\r\n return this.defaultDefaultFields();\r\n }\r\n case AppSchemaCategory.CONTENT_SCHEMAS: {\r\n return this.contentDefaultFields();\r\n }\r\n case AppSchemaCategory.SCHEMA_AS_A_PAGE: {\r\n return this.pageDefaultFields();\r\n }\r\n default: {\r\n return this.generateDefaultFields();\r\n }\r\n }\r\n }\r\n\r\n systemDefaultFields(): Field[] {\r\n return this.generateDefaultFields();\r\n }\r\n contactDefaultFields(): Field[] {\r\n return this.generateDefaultFields();\r\n }\r\n defaultDefaultFields(): Field[] {\r\n return this.generateDefaultFields();\r\n }\r\n contentDefaultFields(): Field[] {\r\n return this.generateDefaultFields();\r\n }\r\n pageDefaultFields(): Field[] {\r\n return this.generateDefaultFields().concat([\r\n this.pageNameField(),\r\n this.pageMetatitle(),\r\n this.pageUrl(),\r\n this.pageMetaDescription(),\r\n this.pageMetaKeyWord(),\r\n this.pageParentId(),\r\n this.pageThumbnail(),\r\n this.pageIsActive(),\r\n this.pagePriority(),\r\n this.pageIsSecure(),\r\n this.pageIsNoIndex()\r\n ]);\r\n }\r\n\r\n\r\n pageIsActive(): Field {\r\n const name = new Field();\r\n name.name = FieldsName.ISACTIVE;\r\n\r\n name.partitioning = 'invariant';\r\n name.properties = new FieldProperty();\r\n name.properties.editor = 'Toggle';\r\n name.properties.isRequired = false;\r\n name.properties.fieldType = 'Boolean';\r\n name.properties.label = 'Is active';\r\n\r\n return name;\r\n }\r\n\r\n pagePriority(): Field {\r\n const name = new Field();\r\n name.name = FieldsName.PRIORITY;\r\n\r\n name.partitioning = 'invariant';\r\n name.properties = new FieldProperty();\r\n name.properties.editor = 'Input';\r\n name.properties.isRequired = false;\r\n name.properties.fieldType = 'String';\r\n name.properties.label = 'Priority';\r\n name.properties.defaultValue = '1';\r\n\r\n return name;\r\n }\r\n\r\n pageIsSecure(): Field {\r\n const name = new Field();\r\n name.name = FieldsName.ISSECURE;\r\n\r\n name.partitioning = 'invariant';\r\n name.properties = new FieldProperty();\r\n name.properties.editor = 'Toggle';\r\n name.properties.isRequired = false;\r\n name.properties.fieldType = 'Boolean';\r\n name.properties.label = 'Is secure';\r\n\r\n return name;\r\n }\r\n\r\n pageIsNoIndex(): Field {\r\n const name = new Field();\r\n name.name = FieldsName.ISNOINDEX;\r\n\r\n name.partitioning = 'invariant';\r\n name.properties = new FieldProperty();\r\n name.properties.editor = 'Toggle';\r\n name.properties.isRequired = false;\r\n name.properties.fieldType = 'Boolean';\r\n name.properties.label = 'not indexed';\r\n\r\n return name;\r\n }\r\n\r\n pageNameField(): Field {\r\n const name = new Field();\r\n name.name = FieldsName.PAGE_NAME;\r\n\r\n name.partitioning = 'invariant';\r\n name.properties = new FieldProperty();\r\n name.properties.editor = 'Input';\r\n name.properties.isRequired = false;\r\n name.properties.fieldType = 'String';\r\n name.properties.label = 'Page Name';\r\n\r\n return name;\r\n }\r\n\r\n pageThumbnail(): Field {\r\n const name = new Field();\r\n name.name = FieldsName.THUMBNAIL;\r\n\r\n name.partitioning = 'invariant';\r\n name.properties = new FieldProperty();\r\n name.properties.fieldType = 'Assets';\r\n name.properties.isRequired = false;\r\n name.properties.label = 'Page Thumbnail';\r\n name.properties.mustBeImage = true;\r\n name.properties.resolveFirst = false;\r\n name.properties.resolveImage = false;\r\n\r\n return name;\r\n }\r\n\r\n pageMetatitle(): Field {\r\n const metatitle = new Field();\r\n metatitle.name = FieldsName.METATITLE;\r\n metatitle.partitioning = 'language';\r\n metatitle.properties = new FieldProperty();\r\n metatitle.properties.editor = 'Input';\r\n metatitle.properties.isRequired = false;\r\n metatitle.properties.fieldType = 'String';\r\n metatitle.properties.label = 'MetaTitle';\r\n\r\n return metatitle;\r\n }\r\n\r\n pageUrl(): Field {\r\n const url = new Field();\r\n url.name = FieldsName.URL;\r\n\r\n url.partitioning = 'language';\r\n url.properties = new FieldProperty();\r\n url.properties.editor = 'Input';\r\n url.properties.isRequired = false;\r\n url.properties.fieldType = 'String';\r\n url.properties.label = 'Url';\r\n url.properties.hints = 'end point of the page';\r\n // url.properties.pattern = \"^(\\/(([a-zA-Z0-9$\\-_.+!*'(),;: @&=]|% [0 - 9a - fA - F]{ 2 })* (\\/([a-zA-Z0-9$\\-_.+!*'(),;:@&=]|%[0-9a-fA-F]{2})*)*)?(\\?([a-zA-Z0-9$\\-_.+!*'(),;:@&=?]|%[0-9a-fA-F]{2})*)?(\\#([a-zA-Z0-9$\\-_.+!*'(),;:@&=?]|%[0-9a-fA-F]{2})*)?)?$\";\r\n\r\n return url;\r\n }\r\n\r\n pageParentId(): Field {\r\n const parentId = new Field();\r\n parentId.name = FieldsName.PARENT_ID;\r\n\r\n parentId.partitioning = 'invariant';\r\n parentId.properties = new FieldProperty();\r\n parentId.properties.editor = 'Input';\r\n parentId.properties.label = 'Parent id';\r\n parentId.properties.isRequired = false;\r\n parentId.properties.fieldType = 'String';\r\n return parentId;\r\n }\r\n\r\n pageMetaDescription(): Field {\r\n const metaDesc = new Field();\r\n metaDesc.name = FieldsName.META_DESCRIPTION;\r\n\r\n metaDesc.partitioning = 'language';\r\n metaDesc.properties = new FieldProperty();\r\n metaDesc.properties.minLength = 0;\r\n metaDesc.properties.maxLength = 160;\r\n metaDesc.properties.editor = 'Input';\r\n metaDesc.properties.isRequired = false;\r\n metaDesc.properties.fieldType = 'String';\r\n metaDesc.properties.label = 'MetaDescription';\r\n\r\n return metaDesc;\r\n }\r\n\r\n pageMetaKeyWord(): Field {\r\n const metaKW = new Field();\r\n metaKW.name = FieldsName.META_KEYWORDS;\r\n\r\n metaKW.partitioning = 'language';\r\n metaKW.properties = new FieldProperty();\r\n metaKW.properties.minLength = 0;\r\n metaKW.properties.maxLength = 160;\r\n metaKW.properties.editor = 'Input';\r\n metaKW.properties.isRequired = false;\r\n metaKW.properties.fieldType = 'String';\r\n metaKW.properties.label = 'MetaKeywords';\r\n\r\n return metaKW;\r\n }\r\n\r\n generateDefaultFields(): Field[] {\r\n return [\r\n this.generateCodeField(),\r\n this.generatePublishField(),\r\n this.generateSoftDeleteField(),\r\n this.generateDeleteDateTimeField(),\r\n this.generateIndexField()\r\n ];\r\n }\r\n\r\n generateCodeField(): Field {\r\n const publishField = new Field();\r\n publishField.name = 'code';\r\n\r\n publishField.partitioning = 'invariant';\r\n publishField.properties = new FieldProperty();\r\n publishField.properties.editor = 'Input';\r\n publishField.properties.isRequired = true;\r\n publishField.properties.isUnique = false;\r\n publishField.properties.label = 'Code';\r\n publishField.properties.fieldType = 'String';\r\n return publishField;\r\n }\r\n\r\n generatePublishField(): Field {\r\n const publishField = new Field();\r\n publishField.name = 'publishdatetime';\r\n\r\n publishField.partitioning = 'invariant';\r\n publishField.properties = new FieldProperty();\r\n publishField.properties.editor = 'DateTime';\r\n publishField.properties.fieldType = 'DateTime';\r\n return publishField;\r\n }\r\n\r\n generateSoftDeleteField(): Field {\r\n const field = new Field();\r\n field.name = 'deleted';\r\n\r\n field.partitioning = 'invariant';\r\n field.properties = new FieldProperty();\r\n field.properties.editor = 'Toggle';\r\n field.properties.defaultValue = 'false';\r\n field.properties.fieldType = 'Boolean';\r\n return field;\r\n }\r\n\r\n generateDeleteDateTimeField(): Field {\r\n const field = new Field();\r\n field.name = 'deletedatetime';\r\n\r\n field.partitioning = 'invariant';\r\n field.properties = new FieldProperty();\r\n field.properties.editor = 'DateTime';\r\n\r\n field.properties.fieldType = 'DateTime';\r\n return field;\r\n }\r\n\r\n generateIndexField(): Field {\r\n const field = new Field();\r\n field.name = 'index';\r\n\r\n field.partitioning = 'invariant';\r\n field.properties = new FieldProperty();\r\n\r\n field.properties.fieldType = 'Number';\r\n return field;\r\n }\r\n\r\n}\r\n","declare var $: any;\r\nimport { Component, Input, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { ControlContainer, FormGroupDirective, FormGroup } from '@angular/forms';\r\nimport { BaseComponent } from \"../../base/base-component.component\";\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { FieldReferenceModel } from \"./FieldReferenceModel.model\";\r\nimport { DynamicContentSchemaFactory, DynamicSchemaFactory, DynamicSchemaFacade, DynamicContentSchemaFacade,\r\n DynamicContentModel\r\n} from \"../../services/akita/index\";\r\nimport { Schema, Content } from \"../../services/squidex/index\";\r\n\r\n@Component({\r\n selector: 'app-field-reference-editor',\r\n templateUrl: 'field-reference-editor.component.html',\r\n styleUrls: ['field-reference-editor.component.css'],\r\n\r\n viewProviders: [\r\n {\r\n provide: ControlContainer,\r\n useExisting: FormGroupDirective\r\n }\r\n ]\r\n})\r\nexport class FieldReferenceEditorComponent extends BaseComponent implements OnInit {\r\n \r\n @Input()\r\n fieldReferenceModel: FieldReferenceModel;\r\n \r\n contentsFacade: DynamicContentSchemaFacade;\r\n\r\n contents: Content[];\r\n\r\n @Output()\r\n updateParent = new EventEmitter();\r\n\r\n\r\n constructor(\r\n translateService: TranslateService,\r\n private readonly dynamicContentSchemaFactory: DynamicContentSchemaFactory) {\r\n super(translateService);\r\n this.setTranslateContext(\"FieldReferenceEditor\");\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.contentsFacade = this.dynamicContentSchemaFactory\r\n .getDynamicContentSchemaFacade(this.fieldReferenceModel.schemaDefinition.name);\r\n\r\n const sub = this.contentsFacade.getAll().subscribe(v => {\r\n this.contents = v;\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onContentChanged(v: any) {\r\n\r\n //if (v.fieldReferenceModel)\r\n // if (!v) return;\r\n //this.contents.push(v.value);\r\n //if (Object.keys(this.fieldReferenceModel.referenceFieldValues).length > 0) {\r\n // if (Array.isArray(v.value)) {\r\n // this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name] =\r\n // this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name].concat(v.value);\r\n // } else {\r\n // this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name] = v.value;\r\n // }\r\n\r\n //} else {\r\n // this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name] = this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name];\r\n //}\r\n\r\n if (this.updateParent) {\r\n this.updateParent.emit(v);\r\n }\r\n }\r\n}\r\n","import { Content } from '../../squidex';\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\n\r\nexport class SchemaMetadataModel extends Content {\r\n constructor(current?: Content) {\r\n if (current) {\r\n super(cloneDeep(current));\r\n } else {\r\n super({});\r\n }\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { RolesService } from '../services/roles.service';\r\nimport { AppConfigProvider } from '../../../app-config.provider';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class RolesFactory {\r\n private readonly baseUrl: string;\r\n\r\n constructor(private readonly httpClient: HttpClient, private readonly appConfigProvider: AppConfigProvider) {\r\n this.baseUrl = appConfigProvider.getRolesPathUrl();\r\n\r\n }\r\n getRoleService(): RolesService {\r\n return new RolesService(this.httpClient, this.baseUrl);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppToken } from \"../../../models/app-token\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SiteSettingService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n super(AppToken.SITE_SETTING_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n}\r\n","export default \".max-height {\\r\\n max-height: 800px;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy1sZWZ0LW1lbnUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGlCQUFpQjtBQUNuQiIsImZpbGUiOiJhc3NldHMtbGVmdC1tZW51LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubWF4LWhlaWdodCB7XHJcbiAgbWF4LWhlaWdodDogODAwcHg7XHJcbn1cclxuIl19 */\";","import { Injectable } from '@angular/core';\r\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\r\nimport { ComponentPortal } from '@angular/cdk/portal';\r\nimport { SpinnerComponent } from './spinner.component';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SpinnerService {\r\n\r\n private overlayRef: OverlayRef = null;\r\n constructor(private overlay: Overlay) { }\r\n\r\n public show(isOverlay = true) {\r\n // Returns an OverlayRef (which is a PortalHost)\r\n\r\n if (!this.overlayRef) {\r\n this.overlayRef = this.overlay.create();\r\n }\r\n\r\n // Create ComponentPortal that can be attached to a PortalHost\r\n const spinnerOverlayPortal = new ComponentPortal(SpinnerComponent);\r\n\r\n if (!this.overlayRef.hasAttached()) {\r\n // run in async context for triggering \"tick\", thus avoid ExpressionChangedAfterItHasBeenCheckedError\r\n setTimeout(() => {\r\n const component = this.overlayRef.attach(spinnerOverlayPortal); // Attach ComponentPortal to PortalHost\r\n component.instance.isOverlay = isOverlay;\r\n\r\n });\r\n }\r\n }\r\n\r\n public hide() {\r\n setTimeout(() => {\r\n if (!!this.overlayRef) {\r\n this.overlayRef.detach();\r\n }\r\n }, 250);\r\n }\r\n}\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({\r\n name: 'template',\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class TemplateStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import { Content } from '../../squidex';\r\n\r\nexport class ApplicationUserModel extends Content {\r\n constructor(current?: Content) {\r\n if (current) {\r\n super(current);\r\n } else {\r\n super({});\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from \"../base/base.service\";\r\nimport { ContentFactory } from '../../squidex';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class LanguageService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n super('language', contentFactory);\r\n }\r\n}\r\n","import { AssetStore } from './asset.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { QueryEntity } from '@datorama/akita';\r\nimport { Asset } from '../../squidex';\r\nimport { IAssetState } from './asset.state';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AssetQuery extends QueryEntity {\r\n\r\n constructor(store: AssetStore) {\r\n super(store);\r\n }\r\n}\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class ArticleCategoryModel extends Content {\r\n constructor(current?: Content) {\r\n super(current);\r\n }\r\n}\r\n","export default \"\\r\\n\";","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { SchemaPageStore } from './schema-page.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SchemaPageQuery extends BaseQuery {\r\n\r\n constructor(store: SchemaPageStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppToken.PAGE_CONTENT_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class PageContentStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PageCategoryService } from './page-category.service';\r\nimport { PageCategoryStore } from './page-category.store';\r\nimport { PageCategoryQuery } from './page-category.query';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppToken } from \"../../../models/app-token\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PageCategoryFacade extends BaseFacade {\r\n\r\n constructor(\r\n pageCategoryService: PageCategoryService,\r\n pageCategoryStore: PageCategoryStore,\r\n pageCategoryQuery: PageCategoryQuery,\r\n dynamicSchemaFactory: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(pageCategoryService,\r\n pageCategoryStore,\r\n pageCategoryQuery,\r\n dynamicSchemaFactory.getDynamicSchemaFacade(AppToken.PAGE_CATEGORY_SCHEMA_NAME),\r\n translateService,\r\n AppToken.PAGE_CATEGORY_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { LanguageModel } from '../../../services';\r\nimport { FormGroup, AbstractControl } from \"@angular/forms\";\r\n\r\n@Pipe({\r\n name: 'formGroupGetLocalized'\r\n})\r\nexport class FormGroupGetLocalizedPipe implements PipeTransform {\r\n\r\n transform(formGroup: FormGroup, name: string, language: LanguageModel): AbstractControl {\r\n return formGroup.get(`${name}_${language.data.code.iv}`);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppToken } from \"../../../models/app-token\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppToken.SITE_SETTING_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class SiteSettingStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppTokenService } from '../../../app-token.service';\r\nimport { ClaimService } from './claim.service';\r\nimport { ClaimStore } from './claim.store';\r\nimport { ClaimQuery } from './claim.query';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ClaimFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly claimService: ClaimService,\r\n claimStore: ClaimStore,\r\n claimQuery: ClaimQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(claimService,\r\n claimStore,\r\n claimQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppTokenService.CLAIM_SCHEMA_NAME),\r\n translateService,\r\n AppTokenService.CLAIM_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SectionService extends BaseService {\r\n\r\n constructor(schemasFactory: SchemasFactory,\r\n contentFactory: ContentFactory) {\r\n super(AppToken.SECTION_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n}\r\n","import { SpinnerModule } from './shared/spinner/spinner.module';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule, APP_INITIALIZER } from '@angular/core';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS, HttpClient } from '@angular/common/http';\r\nimport { AppComponent } from './app.component';\r\nimport { JwtInterceptor } from './interceptors/jwt.interceptor';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { AppConfigProvider } from './app-config.provider';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { TabsModule } from 'ngx-bootstrap/tabs';\r\nimport { registerLocaleData } from '@angular/common';\r\nimport localeFr from '@angular/common/locales/fr-CA';\r\n//import { AppSeeder } from './tools/seeder/app.seeder';\r\nimport { ContentFactory, SchemasFactory } from './services';\r\nimport { interval } from 'rxjs';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\n//import { APP_BASE_HREF } from '@angular/common';\r\n\r\nregisterLocaleData(localeFr, 'fr-CA');\r\n/*\r\nexport function appSeeding(appConfigProvider: AppConfigProvider, httpClient: HttpClient): Promise {\r\n\r\n const contentFactory = new ContentFactory(httpClient, appConfigProvider);\r\n const schemasFactory = new SchemasFactory(httpClient, appConfigProvider, contentFactory);\r\n const appSeeder = new AppSeeder(schemasFactory, contentFactory, appConfigProvider);\r\n\r\n if (!appConfigProvider.squidexDefaultSchemaIsCreated()) {\r\n\r\n return appSeeder.initializeSquidexApplication()\r\n .toPromise()\r\n .then(s => {\r\n const seconds = interval(30000);\r\n seconds.subscribe();\r\n appSeeder.generateDefaultContents(appConfigProvider.getDefaultCulture());\r\n return true;\r\n });\r\n\r\n } else {\r\n appSeeder.consoleJSONResumeOfCurrentApp();\r\n return Promise.resolve(true);\r\n }\r\n}*/\r\n\r\nexport function appConfigLoader(appConfigProvider: AppConfigProvider, httpClient: HttpClient) {\r\n return () => appConfigProvider.loadConfig().then(() => {\r\n //return appSeeding(appConfigProvider, httpClient).then(() => {\r\n // httpClient.get('api/o/config/seeded').subscribe();\r\n //});\r\n });\r\n}\r\n// AoT requires an exported function for factories\r\nexport function httpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent\r\n ],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }),\r\n BrowserAnimationsModule,\r\n ToastrModule.forRoot(),\r\n CommonModule,\r\n ModalModule.forRoot(),\r\n FontAwesomeModule,\r\n HttpClientModule,\r\n FormsModule,\r\n AppRoutingModule,\r\n SpinnerModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: httpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n TabsModule.forRoot(),\r\n FontAwesomeModule\r\n ],\r\n providers: [\r\n //{ provide: APP_BASE_HREF, useValue: '/client-admin' },\r\n AppConfigProvider,\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: appConfigLoader,\r\n multi: true,\r\n deps: [AppConfigProvider, HttpClient]\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: JwtInterceptor,\r\n multi: true,\r\n },\r\n DatePipe\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\n\r\nexport class AppModule {}\r\n","import { OverlayModule } from '@angular/cdk/overlay';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SpinnerComponent } from './spinner.component';\r\nimport { SpinnerService } from './spinner.service';\r\n\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule, OverlayModule],\r\n declarations: [SpinnerComponent],\r\n entryComponents: [SpinnerComponent],\r\n providers: [SpinnerService],\r\n exports: []\r\n})\r\nexport class SpinnerModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppToken.SCHEMA_PAGE_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class SchemaPageStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LayoutService extends BaseService {\r\n\r\n constructor(schemasFactory: SchemasFactory,\r\n contentFactory: ContentFactory) {\r\n super(AppToken.LAYOUT_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n}\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class ArticleTypeModel extends Content {\r\n constructor(current?: Content) {\r\n super(current);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { LanguageModel } from '../../../services';\r\n\r\n@Pipe({\r\n name: 'isDefaultLanguage'\r\n})\r\nexport class IsDefaultLanguagePipe implements PipeTransform {\r\n\r\n constructor() {\r\n }\r\n\r\n transform(language: LanguageModel): boolean {\r\n return language.data.isdefault && language.data.isdefault.iv === true;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { AbstractControl, FormGroup } from '@angular/forms';\r\n\r\n@Pipe({\r\n name: 'formGroupGet'\r\n})\r\nexport class FormGroupGetPipe implements PipeTransform {\r\n\r\n transform(form: FormGroup, name: string): AbstractControl {\r\n return form.get(name);\r\n }\r\n\r\n}\r\n","declare var $: any;\r\nimport { Component, OnInit, ViewChild, AfterViewInit, TemplateRef, Inject } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport {\r\n PageFacade, UiNotificationService, FormValidationsService, PageModel, Field, SquidexDate, DataParser, SiteSettingFacade, ScheduleJob, LanguageModel, PageContentFacade,\r\n PageContentModel, DynamicSchemaFactory, SchemaMetadataFacade, DynamicContentSchemaFactory, Schema, Content, LayoutModel, TemplateModel, DynamicSchemaModel, TemplateFacade,\r\n AssetFacade, AuthenticationService,\r\n MenuFacade,\r\n MenuItemFacade,\r\n FilterPagination\r\n} from '../../services';\r\nimport { SpinnerService } from '../../shared/spinner/spinner.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../base/base-component.component';\r\nimport { AppToken, Statuses, PreviewDevices, AppSchemaCategory, FieldsName } from '../../models/app-token';\r\nimport { FormGroup, FormControl, ValidatorFn, Validators } from '@angular/forms';\r\nimport { TabsetComponent } from 'ngx-bootstrap/tabs';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { BsDatepickerConfig } from 'ngx-bootstrap/datepicker';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { PageTitleService } from '../../services/general/page-title.service';\r\nimport { ESchemaContentStatus } from '../../services/akita/base/enum';\r\nimport { guid } from '@datorama/akita';\r\nimport { SquidexTool, Validation } from '../../tools';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { PageTypeModel } from '../../services/akita/page-type/page-type.model';\r\nimport { PageInternalService } from '../../services/squidex/services/page-internal.service';\r\n\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\ndeclare var CKEDITOR: any;\r\n\r\n@Component({\r\n selector: 'page',\r\n templateUrl: './page.component.html',\r\n styleUrls: ['./page.component.scss']\r\n})\r\nexport class PageComponent extends BaseComponent implements OnInit, AfterViewInit {\r\n\r\n\r\n pageForm: FormGroup;\r\n pageHiddenFields: string[] = [];\r\n pagePublishFormGroup: FormGroup;\r\n pageTemplateForm: FormGroup;\r\n\r\n\r\n @ViewChild('propertyTabs', null) propertyTabs: TabsetComponent;\r\n @ViewChild('contentTabs', null) contentTabs: TabsetComponent;\r\n\r\n\r\n modalRef: BsModalRef;\r\n bsConfig: Partial;\r\n\r\n pageSchema: Schema;\r\n lastModifiedDate: string;\r\n title: string;\r\n id: string;\r\n draftMode: boolean = false;\r\n\r\n deleted: boolean = false;\r\n isDraft: boolean = false;\r\n currentStatus: string;\r\n scheduledJob: ScheduleJob;\r\n statusColorClassName: string;\r\n isAllOpen: boolean;\r\n isCollapsed: boolean = true;\r\n collapseControlsEditTemplate: any = {};\r\n currentPage: PageModel;\r\n draftVersionExist: boolean = false;\r\n\r\n previewWidth: number;\r\n previewHeight: number;\r\n previewUrl: any;\r\n testUrl: any;\r\n\r\n dataParser: DataParser;\r\n availableLanguages: LanguageModel[];\r\n\r\n pageContents: PageContentModel[];\r\n pageContentForm: FormGroup;\r\n pageContentHiddenFields: string[] = [];\r\n pageContentFields: Field[];\r\n schemas: Schema[];\r\n contents: Content[];\r\n\r\n pageFilters: Content[];\r\n pageFilterHiddenFields: string[] = [];\r\n pageFilterForm: FormGroup;\r\n pageFilterFields: Field[];\r\n selectedPageFilterId: string;\r\n pathFields: string[] = [];\r\n\r\n pageContentsDescription: any = {};\r\n selectedPageContentId: string;\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n userIsReadWrite: boolean;\r\n userIsReader: boolean;\r\n\r\n pageLayouts: LayoutModel[];\r\n pageTypes: PageTypeModel[];\r\n pageTemplate: TemplateModel;\r\n pageTemplateSchema: DynamicSchemaModel;\r\n\r\n cloneNgModel:any = {};\r\n showAction:boolean = false;\r\n\r\n thumbnail: string = '';\r\n languageCustomClass: string = 'language-nav-tabs';\r\n\r\n publishDateTime: string = '';\r\n squidexTool: SquidexTool;\r\n\r\n\r\n constructor(\r\n private readonly pageTitleService: PageTitleService,\r\n private readonly pageFacade: PageFacade,\r\n private readonly pageContentFacade: PageContentFacade,\r\n private readonly templateFacade: TemplateFacade,\r\n private readonly menuFacade: MenuFacade,\r\n private readonly menuItemFacade: MenuItemFacade,\r\n private readonly siteSettingFacade: SiteSettingFacade,\r\n private readonly schemaFacadeFactory: DynamicSchemaFactory,\r\n private readonly schemaMetadataFacade: SchemaMetadataFacade, //To be used\r\n private readonly contentFacadeFactory: DynamicContentSchemaFactory,\r\n private readonly uiNotificationService: UiNotificationService,\r\n private readonly spinnerService: SpinnerService,\r\n translateService: TranslateService,\r\n private readonly formValidationService: FormValidationsService,\r\n private readonly route: ActivatedRoute,\r\n private router: Router,\r\n @Inject(DOCUMENT) private readonly document: any,\r\n private readonly modalService: BsModalService,\r\n private readonly sanitizer: DomSanitizer,\r\n private readonly assetFacade: AssetFacade,\r\n private readonly authenticationService: AuthenticationService,\r\n private readonly pageInternalService: PageInternalService\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('PageComponent');\r\n\r\n this.pageHiddenFields = ['deleted',\r\n 'publishdatetime',\r\n 'deletedatetime',\r\n 'index',\r\n 'thumbnail'\r\n ];\r\n\r\n this.pageContentHiddenFields = ['deleted',\r\n 'publishdatetime',\r\n 'deletedatetime',\r\n 'pageid',\r\n 'index',\r\n 'ismodified']; //to be inited by schemaMetatadat hidden Field\r\n this.pageFilterHiddenFields = ['deleted',\r\n 'publishdatetime',\r\n 'deletedatetime',\r\n 'index',\r\n 'pageid']; //to be inited by schemaMetatadat hidden Field\r\n this.isAllOpen = false;\r\n this.testUrl = 'https://localhost:5002';\r\n }\r\n\r\n ngOnInit() {\r\n this.spinnerService.show();\r\n\r\n this.userIsOwner = this.authenticationService.userHasRole(\"Owner\");\r\n this.userIsDev = this.authenticationService.userHasRole(\"Developer\");\r\n this.userIsEditor = this.authenticationService.userHasRole(\"Editor\");\r\n this.userIsReadWrite = this.authenticationService.userHasRole(\"ReadWrite\");\r\n this.userIsReader = this.authenticationService.userHasRole(\"Reader\");\r\n\r\n this.squidexTool = new SquidexTool();\r\n\r\n //to be removed when siteModel passed in router outlet\r\n const subscription = this.siteSettingFacade.getSiteLanguages().subscribe(languages => {\r\n if (languages.length <= 1) {\r\n this.languageCustomClass = 'hide-nav-tabs';\r\n }\r\n this.dataParser = new DataParser(languages);\r\n\r\n this.availableLanguages = languages.sort((a, b) => a.data.index.iv < b.data.index.iv ? -1 : 1);\r\n\r\n const code = this.route.snapshot.paramMap.get('code');\r\n const draftMode = this.route.snapshot.paramMap.get('draftMode') === 'true';\r\n let isExcuted = false;\r\n this.pageFacade.getSchema().subscribe(pageSchema => {\r\n this.pageSchema = pageSchema;\r\n this.pageFacade.getByCode(code, true).subscribe(page => {\r\n if (page && !isExcuted) {\r\n this.currentPage = page;\r\n if (draftMode) {\r\n this.draftMode = draftMode;\r\n this.publishDateTime = '';\r\n if (this.draftMode && !this.currentPage.newStatus) {\r\n this.createDraft();\r\n } else {\r\n this.initContentsAndForms();\r\n }\r\n } else {\r\n this.publishDateTime = this.dataParser.pullData(this.currentPage, \"publishdatetime\");\r\n this.draftMode = false;\r\n this.initContentsAndForms();\r\n }\r\n isExcuted = true;\r\n } else if (!isExcuted) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.spinnerService.hide();\r\n this.uiNotificationService.error(c.PAGE_LOAD_ERROR, c.FAILED_TITLE);\r\n isExcuted = true;\r\n });\r\n\r\n }\r\n });\r\n });\r\n\r\n this.bsConfig = Object.assign({},\r\n { containerClass: \"theme-orange\", dateInputFormat: AppToken.ISO_DATES_DATE_TIME_UPDATE });\r\n });\r\n\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n private initContentsAndForms() {\r\n this.initContents(this.currentPage);\r\n this.createForm(this.pageSchema.fields, this.currentPage);\r\n const pageUrl = this.buildUrl(this.dataParser.pullData(this.currentPage, 'url', this.dataParser.currentLanguageCode));\r\n this.setPreviewUrl(pageUrl);\r\n }\r\n\r\n private initContents(pageContent: PageModel) {\r\n this.lastModifiedDate = this.pageFacade.getLastModifiedDate(pageContent);\r\n this.title = this.dataParser.pullData(pageContent, FieldsName.METATITLE, this.dataParser.currentLanguageCode);\r\n this.id = pageContent.id;\r\n if (pageContent.scheduleJob && pageContent.scheduleJob.status === 'Published') {\r\n this.currentStatus = pageContent.scheduleJob.status;\r\n } else if (pageContent.newStatus) {\r\n this.currentStatus = pageContent.newStatus;\r\n } else {\r\n this.currentStatus = pageContent.status;\r\n }\r\n this.scheduledJob = pageContent.scheduleJob;\r\n this.deleted = this.dataParser.pullData(pageContent, FieldsName.DELETED, 'iv');\r\n this.updateStatusAndStatusColor(this.currentStatus);\r\n const pageUrl = `${this.document.location.origin}${this.dataParser.pullData(pageContent, 'url', this.dataParser.currentLanguageCode)}?draftMode=${this.draftMode}`;\r\n this.testUrl = pageUrl;\r\n\r\n let thumbnailField: Field = this.pageSchema.fields.filter(field => field.name === 'thumbnail')[0];\r\n const assets = this.dataParser.pullData(pageContent, thumbnailField.name, 'iv');\r\n this.thumbnail = assets[0];\r\n\r\n //init default preview size\r\n this.updateIframeSrc(this.testUrl, PreviewDevices.DESKTOP.name);\r\n\r\n //check if draft version exist\r\n this.isExistDraftVersion();\r\n\r\n this.tc().subscribe(v => {\r\n let title = '';\r\n if (this.title && this.title !== '') {\r\n title = v['NAME'] + this.title;\r\n }\r\n this.pageTitleService.setTitle(title);\r\n this.pageTitleService.key = 'PAGE.NAME';\r\n });\r\n\r\n //init page sections\r\n this.pageContentFacade.getPageContentsByPageId(this.id, 'data/index/iv', this.draftMode).subscribe(pageContents => {\r\n this.pageContents = pageContents;\r\n });\r\n\r\n //init all schema\r\n this.schemaFacadeFactory.getSchemasMetadataByCategory(AppSchemaCategory.CONTENT_SCHEMAS).subscribe(schemas => {\r\n this.schemas = schemas.filter(sch => sch.name.length <= AppToken.SCHEMA_NAME_MAX_LEGTH);\r\n });\r\n\r\n //init pageLayouys\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.LAYOUT_SCHEMA_NAME)\r\n .getTopX(1000, undefined, undefined, ESchemaContentStatus.Published).subscribe(layouts => {\r\n this.pageLayouts = layouts;\r\n });\r\n\r\n //init pageTypes\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_TYPE_SCHEMA_NAME)\r\n .getTopX(1000, undefined, undefined, ESchemaContentStatus.Published).subscribe(pageTypes => {\r\n this.pageTypes = pageTypes;\r\n });\r\n\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME)\r\n .getByParentId(this.id, FieldsName.PAGE_ID, 'id', this.draftMode).subscribe(pageFilters => {\r\n this.pageFilters = pageFilters;\r\n\r\n this.pageFilters.forEach(pageFilter => {\r\n const data: any = {\r\n isCollapsed: true,\r\n };\r\n this.collapseControlsEditTemplate[pageFilter.id] = data;\r\n });\r\n\r\n });\r\n\r\n //init template\r\n const templateId = this.dataParser.pullData(pageContent, FieldsName.TEMPLATE)[0];\r\n if (Validation.isValidGuid(templateId)) {\r\n\r\n this.templateFacade.get(templateId, this.draftMode).subscribe(template => {\r\n this.pageTemplate = template;\r\n if (this.pageTemplate) {\r\n this.schemaFacadeFactory.getDynamicSchemaFacade(AppToken.TEMPLATE_SCHEMA_NAME).getSchemaDefinition()\r\n .subscribe(templateSchema => {\r\n this.pageTemplateSchema = templateSchema;\r\n this.pageTemplateForm = new FormGroup(this.generateFormGroup(null, templateSchema.fields, [''], this.pageTemplate, this.draftMode));\r\n });\r\n }\r\n });\r\n } else {\r\n this.pageTemplate = null;\r\n this.pageTemplateForm = null;\r\n this.pageTemplateSchema = null;\r\n }\r\n }\r\n\r\n private isDirty() {\r\n return (this.pageForm || this.pageTemplateForm);\r\n }\r\n\r\n toogleShowAction(){\r\n this.showAction = !this.showAction;\r\n }\r\n\r\n\r\n private updatePageTemplateContent() {\r\n let tempTemplatePage = cloneDeep(this.pageTemplate);\r\n\r\n if (this.isDirty()) {\r\n const newData = this.dataParser.setContent(tempTemplatePage, this.pageTemplateSchema.fields.find(f => f.name === FieldsName.BODY) as Field, this.pageTemplateForm.get(FieldsName.BODY).value);\r\n this.templateFacade.update(tempTemplatePage.id, newData)\r\n .subscribe(v => {\r\n if (v) {\r\n this.lastModifiedDate = this.pageFacade.getLastModifiedDate(v);\r\n this.templateFacade.translate('T').subscribe(c => {\r\n //this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n openCloneModal(cloneTemplate) {\r\n this.modalRef = this.modalService.show(cloneTemplate);\r\n }\r\n\r\n confirmClone(){\r\n let name = this.cloneNgModel['name'];\r\n\r\n if(Validation.isNullEmptyOrWhiteSpaces(name)){\r\n this.uiNotificationService.error('Name is required', 'Error');\r\n return;\r\n }\r\n\r\n let urls = {};\r\n\r\n this.availableLanguages.forEach(lang => {\r\n let langCode = lang.data.code.iv;\r\n let url = this.cloneNgModel[`url_${langCode}`];\r\n\r\n if(Validation.isNullEmptyOrWhiteSpaces(url)){\r\n this.uiNotificationService.error(`Url ${langCode} is required`, 'Error');\r\n return;\r\n }\r\n\r\n urls[langCode] = url;\r\n });\r\n\r\n //TODO: validate urls are unique and begin with /\r\n this.pageInternalService.clonePage(this.currentPage.id, name, urls, false).subscribe(callback => {\r\n this.modalRef.hide();\r\n this.pageSelected = null;\r\n if(callback.isSuccess()) {\r\n this.router.navigateByUrl(`/page/${callback.content.data.code.iv}`)\r\n return;\r\n }\r\n\r\n this.uiNotificationService.error(callback.getMessage(), 'Error');\r\n });\r\n }\r\n\r\n createDraft() {\r\n this.pageFacade.createDraft(this.currentPage.id).subscribe(p => {\r\n this.currentPage = p;\r\n this.pageFacade.removeStore(p.id);\r\n this.initContentsAndForms();\r\n\r\n //create draft for template\r\n this.templateFacade.createDraft(this.pageTemplate.id).subscribe();\r\n\r\n //create draft for page section\r\n this.pageContents.forEach(pc => {\r\n this.pageContentFacade.createDraft(pc.id).subscribe();\r\n });\r\n\r\n //create draft for page filter\r\n this.pageFilters.forEach(pf => {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).createDraft(pf.id).subscribe();\r\n });\r\n });\r\n }\r\n\r\n deleteDraft() {\r\n this.pageFacade.removeDraft(this.currentPage.id).subscribe(() => {\r\n this.isExistDraftVersion();\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n this.reloadPage(false);\r\n });\r\n });\r\n\r\n this.templateFacade.removeDraft(this.pageTemplate.id).subscribe();\r\n\r\n this.pageContents.forEach(pc => {\r\n this.pageContentFacade.removeDraft(pc.id).subscribe();\r\n });\r\n\r\n this.pageFilters.forEach(pf => {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).removeDraft(pf.id).subscribe();\r\n });\r\n }\r\n\r\n private isExistDraftVersion() {\r\n this.pageFacade.get(this.currentPage.id, true).subscribe(p => {\r\n if (p.newStatus && p.scheduleJob) {\r\n this.draftVersionExist = true;\r\n this.draftMode = true;\r\n } else {\r\n this.draftVersionExist = false;\r\n }\r\n });\r\n }\r\n\r\n updatePage() {\r\n\r\n if (!this.pageForm.valid || !this.isDirty()) {\r\n this.pageForm.markAllAsTouched();\r\n return;\r\n }\r\n\r\n const values = this.pageForm.value;\r\n\r\n let newContentData: any = {};\r\n let pageFields = this.pageSchema.fields.filter(field => !this.pageHiddenFields.includes(field.name));\r\n\r\n for (let field of pageFields) {\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n if (field.properties.editor === 'TextArea' && typeof CKEDITOR !== \"undefined\" && CKEDITOR && CKEDITOR.instances) {\r\n for (const instance in CKEDITOR.instances) {\r\n let textLang: string = CKEDITOR.instances[instance].element.$.nodeName\r\n if (textLang.toLowerCase() === (field.name).toLowerCase()) {\r\n newContentData = this.dataParser.setData(newContentData, field, CKEDITOR.instances[instance].getData(), language);\r\n }\r\n }\r\n } else {\r\n newContentData = this.dataParser.setData(newContentData, field, values[field.name + '_' + language], language);\r\n }\r\n }\r\n } else {\r\n newContentData = this.dataParser.setData(newContentData, field, values[field.name]);\r\n }\r\n }\r\n\r\n const urls = new Array();\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n urls.push(newContentData['url'][language]);\r\n }\r\n\r\n const urlsDistinct = [...new Set(urls)];\r\n if (urls.length > urlsDistinct.length) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_NOT_DISTINCT, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n let startWithSlash: boolean = true;\r\n urls.forEach(url => {\r\n if (!url.trim().startsWith('/')) {\r\n startWithSlash = false;\r\n return;\r\n }\r\n })\r\n\r\n if (!startWithSlash) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_START_SLASH, c.FAILED_TITLE, 10000);\r\n });\r\n return false;\r\n }\r\n\r\n const allVersionParm = new FilterPagination();\r\n allVersionParm.from = 0;\r\n allVersionParm.to = 1;\r\n allVersionParm.filter = '';\r\n allVersionParm.orderBy = 'lastModified descending';\r\n\r\n let filterList: object[] = new Array();\r\n for (const lg of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n let data: any = {};\r\n data = {\r\n path: `data.url.${lg}`,\r\n op: 'eq',\r\n value: newContentData['url'][language]\r\n };\r\n\r\n filterList.push(data);\r\n }\r\n }\r\n\r\n let orFilter: any = {};\r\n orFilter = {\r\n or: filterList\r\n }\r\n\r\n this.pageFacade.validateUrl(allVersionParm, ESchemaContentStatus.All, orFilter, this.currentPage).subscribe(total => {\r\n if (total > 0) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_TAKEN, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n\r\n\r\n this.spinnerService.show();\r\n this.pageFacade\r\n .update(this.id, newContentData)\r\n .subscribe(contentBack => {\r\n const pubDate = this.pageForm.value.pagePublishFormGroup.scheduleJob.dueTime\r\n if (pubDate !== '' && this.pagePublishFormGroup.touched) {\r\n this.publish();\r\n }\r\n this.lastModifiedDate = this.pageFacade.getLastModifiedDate(contentBack);\r\n if (contentBack.data.pageName.iv !== '' && contentBack.data.url[this.dataParser.currentLanguageCode] !== '' && this.pageTemplateForm.dirty && !contentBack.data.issecure.iv) {\r\n this.pageCapture(contentBack);\r\n } else {\r\n this.spinnerService.hide();\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n }\r\n\r\n });\r\n this.updatePageTemplateContent();\r\n });\r\n }\r\n\r\n switchModeDratLive(event) {\r\n this.draftMode = event.srcElement.checked;\r\n\r\n this.pageFacade.get(this.currentPage.id, this.draftMode).subscribe(page => {\r\n this.currentPage = page;\r\n\r\n if (this.draftMode) {\r\n if (this.draftMode && !this.currentPage.newStatus) {\r\n this.createDraft();\r\n } else {\r\n this.initContentsAndForms();\r\n }\r\n } else {\r\n this.draftMode = false;\r\n this.initContentsAndForms();\r\n }\r\n });\r\n }\r\n\r\n reloadPage(draftMode: boolean) {\r\n this.draftMode = draftMode;\r\n this.spinnerService.show();\r\n this.pageFacade.get(this.currentPage.id, this.draftMode).subscribe(page => {\r\n this.currentPage = page;\r\n\r\n if (this.draftMode) {\r\n if (this.draftMode) {\r\n this.createDraft();\r\n } else {\r\n this.initContentsAndForms();\r\n }\r\n } else {\r\n this.draftMode = false;\r\n this.initContentsAndForms();\r\n }\r\n });\r\n }\r\n\r\n private createForm(schemaFields: Field[], pageContent: PageModel): void {\r\n\r\n let tempPageContent = cloneDeep(pageContent);\r\n\r\n const formGroup: any = {};\r\n\r\n for (let i = 0; i < schemaFields.length; i++) {\r\n\r\n const field = schemaFields[i];\r\n\r\n const fieldProperties = field.properties;\r\n\r\n if (field.partitioning === 'language') {\r\n\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n const fieldName = `${field.name}_${language}`;\r\n\r\n const fieldValue = this.dataParser.getData(tempPageContent, field, language);\r\n\r\n const control = new FormControl(fieldValue);\r\n\r\n const isRequired = fieldProperties.isRequired;\r\n\r\n let validators: ValidatorFn[] = [];\r\n\r\n if (isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n\r\n if (fieldProperties.maxLength) {\r\n let maxLengthValidator = Validators.maxLength(fieldProperties.maxLength);\r\n validators.push(maxLengthValidator);\r\n }\r\n\r\n if (fieldProperties.minLength) {\r\n let minLengthValidator = Validators.minLength(fieldProperties.minLength);\r\n validators.push(minLengthValidator);\r\n }\r\n\r\n //custom pattern\r\n if (fieldProperties.pattern) {\r\n validators = validators.concat(this.formValidationService.getValidators(control, fieldProperties.pattern));\r\n }\r\n\r\n control.setValidators(validators);\r\n\r\n formGroup[fieldName] = control;\r\n }\r\n } else {\r\n\r\n const fieldValue = this.dataParser.getData(tempPageContent, field, 'iv');\r\n\r\n const control = new FormControl(fieldValue);\r\n\r\n const isRequired = fieldProperties.isRequired;\r\n\r\n let validators: ValidatorFn[] = [];\r\n\r\n if (isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n\r\n if (fieldProperties.maxLength) {\r\n let maxLengthValidator = Validators.maxLength(fieldProperties.maxLength);\r\n validators.push(maxLengthValidator);\r\n }\r\n\r\n if (fieldProperties.minLength) {\r\n let minLengthValidator = Validators.minLength(fieldProperties.minLength);\r\n validators.push(minLengthValidator);\r\n }\r\n\r\n //custom pattern\r\n if (fieldProperties.pattern) {\r\n validators = validators.concat(this.formValidationService.getValidators(control, fieldProperties.pattern));\r\n }\r\n\r\n control.setValidators(validators);\r\n\r\n formGroup[field.name] = control;\r\n }\r\n\r\n }\r\n //end loop\r\n this.pageForm = new FormGroup(formGroup);\r\n\r\n this.createMetaDataFormGroup(tempPageContent);\r\n this.pageForm.addControl('pagePublishFormGroup', this.pagePublishFormGroup);\r\n this.spinnerService.hide();\r\n }\r\n\r\n private createGenericFormControl(field: string, content: any): FormControl {\r\n\r\n const fieldValue = content[field];\r\n\r\n const control = new FormControl(fieldValue);\r\n\r\n const isRequired = false;\r\n\r\n let validators: ValidatorFn[] = [];\r\n\r\n if (isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n\r\n control.setValidators(validators);\r\n\r\n return control;\r\n }\r\n\r\n private createMetaDataFormGroup(pageContent: PageModel): void {\r\n\r\n let tempPageContent: PageModel = cloneDeep(pageContent);\r\n\r\n const fields = Object.keys(tempPageContent);\r\n\r\n let metaDataFormGroup: any = {};\r\n let scheduledJob = false;\r\n\r\n for (let i = 0; i < fields.length; i++) {\r\n const field = fields[i];\r\n\r\n if (field === 'scheduleJob') {\r\n scheduledJob = true;\r\n let fieldsValue = tempPageContent.scheduleJob;\r\n this.publishDateTime = this.getPublishDate(tempPageContent);\r\n\r\n if (!fieldsValue) {\r\n fieldsValue = { id: null, dueTime: null, scheduledBy: null, status: null };\r\n if (this.publishDateTime && this.getPageStatus(tempPageContent) === 'Published') {\r\n fieldsValue.dueTime = this.publishDateTime;\r\n }\r\n } else {\r\n fieldsValue.dueTime = this.publishDateTime;\r\n }\r\n\r\n const fs = Object.keys(fieldsValue);\r\n\r\n let scheduleJobFromGroup: any = {};\r\n\r\n for (let i = 0; i < fs.length; i++) {\r\n scheduleJobFromGroup[fs[i]] = this.createGenericFormControl(fs[i], fieldsValue);\r\n }\r\n\r\n metaDataFormGroup[field] = new FormGroup(scheduleJobFromGroup);\r\n } else {\r\n metaDataFormGroup[field] = this.createGenericFormControl(fields[i], tempPageContent);\r\n }\r\n }\r\n\r\n if (!scheduledJob) {\r\n this.publishDateTime = this.getPublishDate(tempPageContent);\r\n\r\n let fieldsValue = { id: null, dueTime: null, scheduledBy: null, status: null };\r\n\r\n if (tempPageContent.newStatus) {\r\n fieldsValue.status = tempPageContent.newStatus;\r\n this.currentStatus = tempPageContent.newStatus;\r\n this.draftMode = true;\r\n\r\n } else {\r\n if (tempPageContent.data.publishdatetime) {\r\n fieldsValue.dueTime = this.publishDateTime;\r\n }\r\n fieldsValue.status = tempPageContent.status;\r\n this.currentStatus = tempPageContent.status;\r\n this.draftMode = false;\r\n }\r\n\r\n const fs = Object.keys(fieldsValue);\r\n const scheduleJobFromGroup: any = {};\r\n\r\n for (let i = 0; i < fs.length; i++) {\r\n scheduleJobFromGroup[fs[i]] = this.createGenericFormControl(fs[i], fieldsValue);\r\n }\r\n metaDataFormGroup['scheduleJob'] = new FormGroup(scheduleJobFromGroup);\r\n }\r\n this.pagePublishFormGroup = new FormGroup(metaDataFormGroup);\r\n }\r\n\r\n getPageStatus(page: PageModel) {\r\n if (page.newStatus && page.newStatus === 'Draft')\r\n return 'Draft';\r\n else if (page.status === 'Draft')\r\n return 'Draft';\r\n else\r\n return 'Published';\r\n\r\n }\r\n\r\n getPublishDate(content: PageModel) {\r\n let dt = '';\r\n\r\n if (content.scheduleJob) {\r\n return this.squidexTool.utcToDateString(content.scheduleJob.dueTime);\r\n } else {\r\n return this.squidexTool.utcToDateString(this.dataParser.pullData(content, \"publishdatetime\"));\r\n }\r\n }\r\n\r\n publish() {\r\n let publishStatus = Statuses.PUBLISHED.name;\r\n if (publishStatus === this.currentStatus) {\r\n this.notify(this.currentStatus, false);\r\n return false;\r\n }\r\n\r\n switch (publishStatus) {\r\n case Statuses.PUBLISHED.name:\r\n let dueTime = this.pageForm.value.pagePublishFormGroup.scheduleJob.dueTime;\r\n let publishDate: string;\r\n if (!dueTime) {\r\n dueTime = null;\r\n publishDate = null;\r\n } else {\r\n const currentDate = new Date(Date.now());\r\n const dt = this.pageForm.value.pagePublishFormGroup.scheduleJob.dueTime;\r\n let dueTimeDate = new SquidexDate(dt);\r\n if (dueTimeDate < currentDate) {\r\n publishDate = null\r\n } else {\r\n publishDate = new SquidexDate(dueTimeDate).formatUtc();\r\n }\r\n }\r\n\r\n //publish page\r\n this.spinnerService.show();\r\n this.pageFacade.updateStatus(this.id, publishStatus, publishDate)\r\n .subscribe(content => {\r\n this.spinnerService.show();\r\n let tempContent = cloneDeep(content);\r\n if (content.scheduleJob && content.scheduleJob.status === 'Published') {\r\n this.currentStatus = content.scheduleJob.status\r\n }\r\n if (content.newStatus) {\r\n this.currentStatus = content.newStatus;\r\n } else {\r\n this.currentStatus = content.status;\r\n }\r\n this.draftMode = false;\r\n this.draftVersionExist = false;\r\n this.lastModifiedDate = this.pageFacade.getLastModifiedDate(content);\r\n this.scheduledJob = content.scheduleJob;\r\n this.updateStatusAndStatusColor(content.status);\r\n\r\n\r\n\r\n if (!publishDate) {\r\n let dt = new Date();\r\n publishDate = new SquidexDate(dt).formatUtc();\r\n }\r\n\r\n this.publishMode = true;\r\n if (this.selectedContent) {\r\n this.spinnerService.show();\r\n this.currentContentsFacade.update(this.selectedContent.id, tempContent.data).subscribe(content => {\r\n this.publishMode = false;\r\n this.spinnerService.hide();\r\n });\r\n }\r\n\r\n this.currentStatus = 'Published';\r\n const publishDateField = this.pageSchema.fields.find(f => f.name === FieldsName.PUBLISH_DATE_TIME);\r\n\r\n this.dataParser.putData(tempContent.data, \"publishdatetime\", publishDate);\r\n\r\n this.pageFacade.update(this.id, tempContent.data).subscribe(p => {\r\n this.draftMode = false;\r\n\r\n this.publishDateTime = this.squidexTool.utcToDateString(publishDate);\r\n this.pageFacade.removeStore(this.id);\r\n this.currentPage = tempContent;\r\n\r\n this.initContentsAndForms();\r\n this.spinnerService.hide();\r\n });\r\n this.notify(this.currentStatus);\r\n });\r\n\r\n //publish template\r\n this.templateFacade.updateStatus(this.pageTemplate.id, publishStatus, dueTime).subscribe();\r\n\r\n //publish page section\r\n this.pageContents.forEach(pc => {\r\n this.pageContentFacade.updateStatus(pc.id, publishStatus, dueTime).subscribe();\r\n });\r\n\r\n //publish page filter\r\n this.pageFilters.forEach(pf => {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).updateStatus(pf.id, publishStatus, dueTime).subscribe();\r\n });\r\n break;\r\n case Statuses.DRAFT.name:\r\n this.pageFacade.updateStatus(this.id, this.pageForm.value.pagePublishFormGroup.status, null)\r\n .subscribe(content => {\r\n if (content.newStatus) {\r\n this.currentStatus = content.newStatus;\r\n } else {\r\n this.currentStatus = content.status;\r\n }\r\n this.scheduledJob = content.scheduleJob;\r\n this.updateStatusAndStatusColor(content.status);\r\n this.notify(this.currentStatus);\r\n });\r\n break;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n private notify(status: string, isSuccess: boolean = true): void {\r\n if (isSuccess) {\r\n this.pageFacade.translate('T.STATUS_UPDATE', { currentStatus: status }).subscribe(msg => {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(msg, c.SUCCESS_TITLE, 10000);\r\n });\r\n });\r\n } else {\r\n this.pageFacade.translate('T.STATUS_ERROR', { currentStatus: status }).subscribe(msg => {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(msg, c.FAILED_TITLE, 10000);\r\n });\r\n });\r\n }\r\n }\r\n\r\n private updateStatusAndStatusColor(status: string) {\r\n switch (status) {\r\n case Statuses.PUBLISHED.name:\r\n this.isDraft = false;\r\n this.statusColorClassName = 'badge green-badge';\r\n break;\r\n case Statuses.DRAFT.name:\r\n this.isDraft = true;\r\n this.statusColorClassName = 'badge draft-badge';\r\n break;\r\n default:\r\n this.statusColorClassName = 'badge red-badge';\r\n }\r\n }\r\n\r\n private updateStatusSelect(e) {\r\n this.updateStatusAndStatusColor(e.target.value);\r\n }\r\n\r\n private closeModal() {\r\n this.selectedPageContentId = null;\r\n this.collapseAllEditForm();\r\n if (this.modalRef) {\r\n this.modalRef.hide();\r\n }\r\n }\r\n\r\n openModalDeletePage(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n private confirmDeleteDrafts() {\r\n const subscription = this.pageFacade.translate('T').subscribe(c => {\r\n this.deleteDraft();\r\n });\r\n this.closeModal();\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n private confirmDeletePage() {\r\n const subscription = this.pageFacade.translate('T').subscribe(c => {\r\n\r\n if (Validation.isValidGuid(this.id)) {\r\n\r\n //remove all section relation from page\r\n this.pageContentFacade.getPageContentsByPageId(this.id).subscribe(pageContents =>\r\n pageContents.forEach(pageContent => {\r\n this.pageContentFacade.remove(pageContent.id).subscribe();\r\n })\r\n );\r\n\r\n //remove all content relation from page\r\n const schemaPageFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.SCHEMA_PAGE_SCHEMA_NAME);\r\n schemaPageFacade.getByParentId(this.id, FieldsName.PAGE_ID, FieldsName.ID, true).subscribe(schemaPages => {\r\n schemaPages.forEach(sPage => {\r\n schemaPageFacade.remove(sPage.id).subscribe();\r\n });\r\n });\r\n\r\n //remove all page filter\r\n const pageFilterFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME);\r\n schemaPageFacade.getByParentId(this.id, FieldsName.PAGE_ID, FieldsName.ID, true).subscribe(pageFilter => {\r\n pageFilter.forEach(pFilter => {\r\n pageFilterFacade.remove(pFilter.id).subscribe();\r\n });\r\n });\r\n\r\n //remove template related to page\r\n if (this.pageTemplate) {\r\n this.templateFacade.remove(this.pageTemplate.id).subscribe();\r\n }\r\n\r\n //remove menuItem from menu then remove it\r\n this.menuItemFacade.getMenuItemsByPageId(this.id).subscribe(menuItems => {\r\n menuItems.forEach(menuItem => {\r\n let isExcuted = false;\r\n this.menuFacade.getByParentId(menuItem.id, FieldsName.MENU_ITEMS, FieldsName.ID, true).subscribe(menus => {\r\n if (!isExcuted) {\r\n menus.forEach(menu => {\r\n let menuData = this.clone(menu.data);\r\n let menuItems = menuData.menuItems.iv as string[];\r\n const index = menuItems.indexOf(menuItem.id);\r\n if (index !== -1) {\r\n menuItems.splice(index, 1);\r\n }\r\n this.dataParser.putData(menuData, FieldsName.MENU_ITEMS, menuItems);\r\n this.menuFacade.update(menu.id, menuData).subscribe();\r\n isExcuted = true;\r\n });\r\n }\r\n });\r\n this.menuItemFacade.remove(menuItem.id).subscribe();\r\n });\r\n });\r\n\r\n //remove this page\r\n this.pageFacade.remove(this.id).toPromise().then(\r\n content => {\r\n this.deleted = this.dataParser.pullData(content, FieldsName.DELETED, 'iv');\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n this.closeModal();\r\n this.spinnerService.show();\r\n setTimeout(() => {\r\n this.spinnerService.hide();\r\n this.router.navigateByUrl('/pages');\r\n }\r\n , 4000);\r\n },\r\n () => {\r\n this.uiNotificationService.success(c.DELETE_FAILED, c.FAILED_TITLE);\r\n this.closeModal();\r\n });\r\n }\r\n });\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n openModalDeletePageContent(template: TemplateRef, id: string) {\r\n this.selectedPageContentId = id;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n private confirmDeletePageContent() {\r\n const subscription = this.pageContentFacade.translate('T').subscribe(c => {\r\n if (Validation.isValidGuid(this.selectedPageContentId)) {\r\n\r\n const tempId = this.selectedPageContentId;\r\n const draftStatus: boolean = true;\r\n this.pageContentFacade.remove(this.selectedPageContentId, draftStatus).toPromise().then(\r\n () => {\r\n\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n\r\n this.pageContents = this.pageContents.filter(v => {\r\n return v.id !== tempId;\r\n });\r\n\r\n //const subcriptionGetPage = this.pageContentFacade.getPageContentsByPageId(this.id, 'id', this.draftMode).subscribe(pageContents => {\r\n // this.pageContents = pageContents;\r\n //});\r\n\r\n //this.subscriptions.push(subcriptionGetPage);\r\n },\r\n () => { this.uiNotificationService.error(c.DELETE_FAILED, c.FAILED_TITLE); });\r\n }\r\n });\r\n\r\n this.closeModal();\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n openModalDeletePageFilter(template: TemplateRef, id: string) {\r\n this.selectedPageFilterId = id;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n private confirmDeletePageFilter() {\r\n const subscription = this.pageContentFacade.translate('T').subscribe(c => {\r\n if (Validation.isValidGuid(this.selectedPageFilterId)) {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).remove(this.selectedPageFilterId).toPromise().then(\r\n () => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n this.pageFilters = this.pageFilters.filter(pf => pf.id !== this.selectedPageFilterId);\r\n this.selectedPageFilterId = null;\r\n },\r\n () => { this.uiNotificationService.success(c.DELETE_FAILED, c.FAILED_TITLE); });\r\n }\r\n });\r\n this.closeModal();\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n toggleDescription(e) {\r\n $(e.currentTarget).closest('.frais-main').find('.minu-cnt').slideToggle();\r\n $(e.currentTarget).closest('.frais-main').toggleClass('active');\r\n }\r\n\r\n private buildUrl(url: string): string {\r\n if (!url) {\r\n throw (\"Url undefined\");\r\n }\r\n return `${this.document.location.origin}${url}?draftMode=${this.draftMode}`;\r\n }\r\n\r\n selectTab(e, tabId: number, tabSet: TabsetComponent) {\r\n\r\n if (tabSet === this.contentTabs && tabId === 0) {\r\n const pageUrl = this.buildUrl(this.dataParser.pullData(this.currentPage, 'url', this.dataParser.currentLanguageCode));\r\n this.updateIframeSrc(pageUrl);\r\n }\r\n tabSet.tabs[tabId].active = true;\r\n $(e.currentTarget).parent().parent().find('li').removeClass('active');\r\n $(e.currentTarget).parent().addClass('active');\r\n }\r\n\r\n private updateIframe(event, url: string, plateForm: string = null) {\r\n this.updateIframeSrc(url, plateForm);\r\n $(event.currentTarget).parent().parent().find('li').removeClass('active');\r\n $(event.currentTarget).parent().addClass('active');\r\n }\r\n\r\n changeLanguage(event, languageCode) {\r\n this.dataParser.changeLanguage(languageCode);\r\n $(event.currentTarget).parent().parent().find('li').removeClass('active');\r\n $(event.currentTarget).parent().addClass('active');\r\n const pageUrl = this.buildUrl(this.dataParser.pullData(this.currentPage, 'url', this.dataParser.currentLanguageCode));\r\n this.updateIframeSrc(pageUrl);\r\n this.setPreviewUrl(pageUrl);\r\n }\r\n\r\n private updateIframeSrc(url: string, plateForme: string = null) {\r\n switch (plateForme) {\r\n case PreviewDevices.DESKTOP.name:\r\n this.previewHeight = PreviewDevices.DESKTOP.height;\r\n this.previewWidth = PreviewDevices.DESKTOP.width;\r\n break;\r\n case PreviewDevices.TABLET.name:\r\n this.previewHeight = PreviewDevices.TABLET.height;\r\n this.previewWidth = PreviewDevices.TABLET.width;\r\n break;\r\n case PreviewDevices.PHONE.name:\r\n this.previewHeight = PreviewDevices.PHONE.height;\r\n this.previewWidth = PreviewDevices.PHONE.width;\r\n break;\r\n default:\r\n }\r\n\r\n this.previewUrl = this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n }\r\n\r\n private getLocalizableFieldName(fieldName: string, languageCode): string {\r\n return `${fieldName}_${languageCode}`;\r\n }\r\n\r\n openModalCreatePageContent(template: TemplateRef) {\r\n this.pageContentFacade.getSchema().subscribe(pageContentSchema => {\r\n this.pageContentFields =\r\n pageContentSchema.fields.filter(field => !this.pageContentHiddenFields.includes(field.name));\r\n this.pageContentForm = new FormGroup(this.generateFormGroup(this.pageContentFacade,\r\n pageContentSchema.fields,\r\n this.pageContentHiddenFields));\r\n\r\n this.modalRef = this.modalService.show(template);\r\n });\r\n }\r\n\r\n private collapseAllEditForm() {\r\n const desc = this.collapseControlsEditTemplate;\r\n Object.keys(desc).forEach(function (key) {\r\n if (desc) {\r\n desc[key]['isCollapsed'] = true;\r\n }\r\n });\r\n this.collapseControlsEditTemplate = desc;\r\n this.isCollapsed = true;\r\n const container = document.querySelectorAll('.last_modify-inner');\r\n container.forEach(item => {\r\n item.classList.remove('bubble-content-context');\r\n });\r\n }\r\n\r\n private updateContentsSelect(e) {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(e.target.value)\r\n .getTopX(1000, undefined, undefined, ESchemaContentStatus.Published).subscribe(contents => {\r\n this.contents = contents;\r\n if (contents && contents.length > 0) {\r\n this.pageContentForm.controls['contentid'].setValue(contents[0].id);\r\n } else {\r\n this.pageContentForm.get('contentid').reset();\r\n }\r\n });\r\n }\r\n\r\n private updatePathFilterSelect(e) {\r\n this.getPathFilterFromSchemaName(e.target.value);\r\n }\r\n\r\n private getPathFilterFromSchemaName(schemaName: string) {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(schemaName)\r\n .getSchema().subscribe(contentSchema => {\r\n this.pathFields = [];\r\n for (let i = 0; i < contentSchema.fields.length; i++) {\r\n const field = contentSchema.fields[i];\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n let val = 'data';\r\n val += '.' + field.name + '.' + language;\r\n this.pathFields.push(val);\r\n }\r\n } else {\r\n let val = 'data';\r\n val += '.' + field.name + '.iv';\r\n this.pathFields.push(val);\r\n }\r\n }\r\n });\r\n }\r\n\r\n openModalCreatePageFilter(template: TemplateRef, pageFilterId: string) {\r\n this.selectedPageFilterId = pageFilterId;\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).getSchema().subscribe(\r\n pageFilterSchema => {\r\n this.pageFilterFields =\r\n pageFilterSchema.fields.filter(field => !this.pageFilterHiddenFields.includes(field.name));\r\n let pageFilterContent = null;\r\n if (Validation.isValidGuid(this.selectedPageFilterId)) {\r\n this.collapseAllEditForm()\r\n pageFilterContent = this.pageFilters.find(pf => pf.id === pageFilterId);\r\n this.getPathFilterFromSchemaName(this.dataParser.pullData(pageFilterContent, FieldsName.CONTENT_TYPE));\r\n this.collapseControlsEditTemplate[this.selectedPageFilterId]['isCollapsed'] =\r\n !this.collapseControlsEditTemplate[this.selectedPageFilterId]['isCollapsed'];\r\n } else {\r\n this.collapseAllEditForm();\r\n this.isCollapsed = !this.isCollapsed;\r\n }\r\n this.pageFilterForm = new FormGroup(\r\n this.generateFormGroup(\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME),\r\n pageFilterSchema.fields,\r\n this.pageFilterHiddenFields,\r\n pageFilterContent));\r\n });\r\n }\r\n\r\n private createPageFilter() {\r\n\r\n if (!this.pageFilterForm.dirty) {\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.CREATE_FAILED, c.FAILED_TITLE);\r\n this.pageFilterForm.markAllAsTouched();\r\n });\r\n return;\r\n }\r\n\r\n const values = this.pageFilterForm.value;\r\n\r\n let newPageFilterData: any = {};\r\n\r\n for (let field of this.pageFilterFields) {\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n newPageFilterData = this.dataParser.setData(newPageFilterData, field, values[this.getLocalizableFieldName(field.name, language)], language);\r\n\r\n }\r\n } else {\r\n newPageFilterData = this.dataParser.setData(newPageFilterData, field, values[field.name]);\r\n }\r\n }\r\n\r\n const ids: string[] = [];\r\n ids.push(this.id);\r\n\r\n newPageFilterData = this.dataParser.putData(newPageFilterData, FieldsName.PAGE_ID, ids);\r\n newPageFilterData = this.dataParser.putData(newPageFilterData, FieldsName.INDEX, 0);\r\n\r\n if (Validation.isValidGuid(this.selectedPageFilterId)) {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).update(this.selectedPageFilterId, newPageFilterData).subscribe(pf => {\r\n this.pageFilters = this.pageFilters.filter(pf => pf.id !== this.selectedPageFilterId);\r\n this.pageFilters.push(pf);\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.selectedPageFilterId = null;\r\n this.closeModal();\r\n });\r\n });\r\n } else {\r\n newPageFilterData = this.dataParser.putData(newPageFilterData, FieldsName.CODE, guid());\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).createAsPublished(newPageFilterData).subscribe(pf => {\r\n this.pageFilters.push(pf);\r\n const data: any = {\r\n isCollapsed: true,\r\n };\r\n this.collapseControlsEditTemplate[pf.id] = data;\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.closeModal();\r\n });\r\n });\r\n }\r\n }\r\n\r\n private createPageContent() {\r\n\r\n if (!this.pageContentForm.valid || !this.pageContentForm.dirty) {\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.CREATE_FAILED, c.FAILED_TITLE);\r\n this.contents = null;\r\n this.pageContentForm.markAllAsTouched();\r\n });\r\n return;\r\n }\r\n\r\n const values = this.pageContentForm.value;\r\n\r\n let newPageContentData: any = {};\r\n\r\n for (let field of this.pageContentFields) {\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n newPageContentData = this.dataParser.setData(newPageContentData, field, values[this.getLocalizableFieldName(field.name, language)], language);\r\n\r\n }\r\n } else {\r\n newPageContentData = this.dataParser.setData(newPageContentData, field, values[field.name]);\r\n }\r\n }\r\n\r\n const ids: string[] = [];\r\n ids.push(this.id);\r\n\r\n //newPageContentData = this.dataParser.putData(newPageContentData, 'code', guid());\r\n newPageContentData = this.dataParser.putData(newPageContentData, FieldsName.PAGE_ID, ids);\r\n newPageContentData = this.dataParser.putData(newPageContentData, FieldsName.ISMODIFIED, true);\r\n newPageContentData = this.dataParser.putData(newPageContentData, FieldsName.INDEX, 0);\r\n\r\n this.pageContentFacade.createAsPublished(newPageContentData).subscribe(pc => {\r\n this.pageContents.push(pc);\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.closeModal();\r\n });\r\n },\r\n err => {\r\n if (err.status === 400) {\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.INVALID_CODE, c.ERROR);\r\n });\r\n }\r\n }\r\n );\r\n }\r\n\r\n private getPageContentDescription($event, pageContent: PageContentModel) {\r\n if ($event) {\r\n const data: any = {\r\n title: $event.title,\r\n isModified: $event.isModified,\r\n lastModified: $event.lastModified,\r\n isOpen: $event.isOpen,\r\n contentType: $event.contentType\r\n };\r\n this.pageContentsDescription[pageContent.id] = data;\r\n }\r\n }\r\n\r\n openAllSection() {\r\n const allSectionElement = document.getElementById('panel-all-section');\r\n if (allSectionElement && allSectionElement.classList.contains('all-section-open')) {\r\n allSectionElement.classList.remove('all-section-open');\r\n } else if (allSectionElement) {\r\n allSectionElement.classList.add('all-section-open');\r\n }\r\n this.isAllOpen = !this.isAllOpen;\r\n }\r\n\r\n private navigateToSection(pageContentId: string) {\r\n this.isAllOpen = false;\r\n const desc = this.pageContentsDescription;\r\n Object.keys(this.pageContentsDescription).forEach(function (key) {\r\n if (desc) {\r\n desc[key]['isOpen'] = false;\r\n }\r\n });\r\n this.pageContentsDescription = desc;\r\n this.pageContentsDescription[pageContentId]['isOpen'] = !this.pageContentsDescription[pageContentId]['isOpen'];\r\n document.getElementById('manageContent').click();\r\n }\r\n\r\n pageCapture(pc: Content) {\r\n let tempPc = cloneDeep(pc);\r\n const fname = tempPc.data.url[this.dataParser.currentLanguageCode];\r\n const imageName = tempPc.data.pageName.iv;\r\n\r\n this.assetFacade.generateThumbnail(fname, imageName, this.thumbnail).toPromise().then(asset => {\r\n let data = tempPc.data;\r\n\r\n let assetFields = this.pageSchema.fields.filter(field => field.name === 'thumbnail');\r\n\r\n if (asset) {\r\n data = this.dataParser.setData(data, assetFields[0], asset.id);\r\n if (pc) {\r\n this.pageFacade.update(tempPc.id, data).subscribe(retval => {\r\n this.thumbnail = asset.id\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.spinnerService.hide();\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n });\r\n }\r\n } else {\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.thumbnail = '';\r\n this.spinnerService.hide();\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n }\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n }\r\n\r\n sanitize(url: string) {\r\n return this.sanitizer.bypassSecurityTrustUrl(url);\r\n }\r\n\r\n pageContentDrop(event) {\r\n let pageContentsOrdered: PageContentModel[] = cloneDeep(this.pageContents);\r\n\r\n let temp = pageContentsOrdered[event['previousIndex']];\r\n pageContentsOrdered[event['previousIndex']] = pageContentsOrdered[event['currentIndex']];\r\n pageContentsOrdered[event['currentIndex']] = temp;\r\n\r\n this.pageContents = pageContentsOrdered;\r\n\r\n for (let i = 0; i < pageContentsOrdered.length; i++) {\r\n const pageContentId = pageContentsOrdered[i].id;\r\n const sub = this.pageContentFacade.get(pageContentId).subscribe(pc => {\r\n let pcData = cloneDeep(pc.data);\r\n this.dParser.putData(pcData, 'index', i);\r\n this.pageContentFacade.update(pageContentId, pcData).subscribe();\r\n this.subscriptions.push(sub);\r\n });\r\n }\r\n }\r\n\r\n}\r\n","import { ContentFactory, Schema, Content, ContentList, SchemaService, ContentService } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ID } from '@datorama/akita';\r\nimport { FilterPagination } from './filter.pagination';\r\nimport { ESchemaContentStatus } from './enum';\r\n\r\n\r\nexport abstract class BaseService {\r\n protected contentService: ContentService;\r\n\r\n protected constructor(\r\n readonly schemaName: string,\r\n readonly contentFactory: ContentFactory) {\r\n }\r\n\r\n protected initialize(): void {\r\n if (!this.contentService) {\r\n this.contentService = this.contentFactory.getContentService(this.schemaName);\r\n }\r\n }\r\n\r\n getAll(): Observable {\r\n this.initialize();\r\n return this.contentService.getAllContent();\r\n }\r\n\r\n getAllLanguages(): Observable {\r\n this.initialize();\r\n return this.contentService.getAllLanguages();\r\n }\r\n\r\n\r\n doPagination(filterPagination: FilterPagination): Observable {\r\n this.initialize();\r\n\r\n return this.contentService.findContent(filterPagination.getODataQuery());\r\n }\r\n\r\n getTopX(top: number, filter: string, orderBy: string, contentStatus: ESchemaContentStatus = ESchemaContentStatus.Published): Observable {\r\n this.initialize();\r\n\r\n let publishedText = \"\";\r\n\r\n switch (contentStatus) {\r\n case ESchemaContentStatus.All: {\r\n publishedText = \"and (status eq 'Published' or status eq 'Draft')\";\r\n break;\r\n }\r\n case ESchemaContentStatus.Published: {\r\n publishedText = \"and (status eq 'Published')\";\r\n break;\r\n }\r\n case ESchemaContentStatus.Draft: {\r\n publishedText = \"and (status eq 'Draft')\";\r\n break;\r\n }\r\n default: {\r\n publishedText = \"\";\r\n break;\r\n }\r\n }\r\n\r\n let f = '';\r\n\r\n if (filter) {\r\n f = `?$filter=(data/deleted/iv ne true ) ${publishedText} ${filter} &$top=${top}&$orderby=${orderBy}`;\r\n } else {\r\n f = `?$filter=(data/deleted/iv ne true ) ${publishedText} &$top=${top}&$orderby=${orderBy}`;\r\n }\r\n\r\n return this.contentService.findContent(f);\r\n }\r\n\r\n getFiltered(top: number, orderBy: string, contentStatus: ESchemaContentStatus, filterTextValue?: string): Observable {\r\n this.initialize();\r\n\r\n let publishedText = \"\";\r\n\r\n switch (contentStatus) {\r\n case ESchemaContentStatus.All: {\r\n // publishedText = \"and (status eq 'Published' or status eq 'Draft')\";\r\n break;\r\n }\r\n case ESchemaContentStatus.Published: {\r\n publishedText = \"Published\";\r\n break;\r\n }\r\n case ESchemaContentStatus.Draft: {\r\n publishedText = \"Draft\";\r\n break;\r\n }\r\n default: {\r\n publishedText = \"\";\r\n break;\r\n }\r\n }\r\n\r\n let contentObject =\r\n {\r\n filter:\r\n {\r\n and:\r\n [\r\n {\r\n path: \"data.deleted.iv\",\r\n op: \"eq\",\r\n value: false\r\n },\r\n {\r\n path: \"status\",\r\n op: \"eq\",\r\n value: publishedText\r\n }\r\n ]\r\n }\r\n }\r\n\r\n\r\n let sortInformation = orderBy.split(\" \");\r\n\r\n if (sortInformation.length === 1) {\r\n contentObject[\"sort\"] = [{ path: sortInformation[0] }];\r\n } else if (sortInformation.length === 2) {\r\n contentObject[\"sort\"] = [{\r\n path: sortInformation[0],\r\n order: sortInformation[1],\r\n }];\r\n }\r\n\r\n contentObject[\"take\"] = top;\r\n\r\n if (filterTextValue && filterTextValue != \"\") {\r\n contentObject[\"fullText\"] = filterTextValue + \"*\";\r\n }\r\n\r\n var a = JSON.stringify(contentObject);\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject));\r\n return this.contentService.findContent(filterText);\r\n }\r\n\r\n validateUrl(filterParms: FilterPagination,\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.Published,\r\n AdvancedFilter?: any, content: Content = null\r\n ): Observable {\r\n this.initialize();\r\n\r\n let publishedText = \"\";\r\n let opPublish = \"\";\r\n let unPublish = false;\r\n\r\n if (eSchemaContentStatus === ESchemaContentStatus.Published) {\r\n publishedText = \"Published\";\r\n opPublish = \"eq\";\r\n } else if (eSchemaContentStatus === ESchemaContentStatus.Draft) {\r\n publishedText = \"Draft\";\r\n unPublish = true;\r\n opPublish = \"eq\";\r\n }\r\n\r\n let contentObject =\r\n {\r\n filter:\r\n {\r\n and:\r\n [\r\n {\r\n path: \"data.deleted.iv\",\r\n op: \"ne\",\r\n value: true\r\n }\r\n ]\r\n }\r\n }\r\n\r\n if (eSchemaContentStatus !== ESchemaContentStatus.All) {\r\n let status: any = {};\r\n status = {\r\n path: \"status\",\r\n op: opPublish,\r\n value: publishedText\r\n }\r\n contentObject.filter.and.push(status);\r\n }\r\n\r\n\r\n if (content) {\r\n let orFilter: any = {};\r\n orFilter = {\r\n path: \"id\",\r\n op: \"ne\",\r\n value: content.id\r\n }\r\n contentObject.filter.and.push(orFilter);\r\n }\r\n\r\n if (AdvancedFilter) {\r\n contentObject.filter.and.push(AdvancedFilter);\r\n }\r\n\r\n let sortInformation = filterParms.orderBy.split(\" \");\r\n\r\n if (sortInformation.length === 1) {\r\n contentObject[\"sort\"] = [{ path: sortInformation[0] }];\r\n } else if (sortInformation.length === 2) {\r\n contentObject[\"sort\"] = [{\r\n path: sortInformation[0],\r\n order: sortInformation[1],\r\n }];\r\n }\r\n\r\n contentObject[\"skip\"] = filterParms.from;\r\n contentObject[\"take\"] = filterParms.to - filterParms.from;\r\n\r\n if (typeof filterParms.filter != \"undefined\" && filterParms.filter != \"\") {\r\n contentObject[\"fullText\"] = filterParms.filter + \"*\";\r\n }\r\n\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject));\r\n return this.contentService.findContent(filterText, unPublish).pipe(map(content => {\r\n // console.log(content);\r\n return content['total'];\r\n }));;\r\n }\r\n\r\n getFilteredPagination(filterParms: FilterPagination = null,\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.Published,\r\n advancedFilter: Array = null\r\n ): Observable {\r\n this.initialize();\r\n\r\n const draftMode = eSchemaContentStatus == ESchemaContentStatus.Published ? false : true;\r\n\r\n let publishedText = \"\";\r\n let opPublish = \"\";\r\n\r\n switch (eSchemaContentStatus) {\r\n case ESchemaContentStatus.All: {\r\n publishedText = \"\";\r\n opPublish = \"ne\";\r\n break;\r\n }\r\n case ESchemaContentStatus.Published: {\r\n publishedText = \"Published\";\r\n opPublish = \"eq\";\r\n break;\r\n }\r\n case ESchemaContentStatus.Draft: {\r\n publishedText = \"Draft\";\r\n opPublish = \"eq\";\r\n break;\r\n }\r\n default: {\r\n publishedText = \"\";\r\n opPublish = \"ne\";\r\n break;\r\n }\r\n }\r\n\r\n let contentObject =\r\n {\r\n filter:\r\n {\r\n and:\r\n [\r\n {\r\n path: \"data.deleted.iv\",\r\n op: \"ne\",\r\n value: true\r\n },\r\n {\r\n path: \"status\",\r\n op: opPublish,\r\n value: publishedText\r\n }\r\n ]\r\n },\r\n sort: []\r\n }\r\n\r\n if (advancedFilter) {\r\n if (Array.isArray(advancedFilter)) {\r\n advancedFilter.forEach(v => {\r\n contentObject.filter.and.push(v);\r\n });\r\n } else {\r\n contentObject.filter.and.push(advancedFilter);\r\n }\r\n }\r\n\r\n if (filterParms) {\r\n if (filterParms.orderBy && filterParms.orderBy !== '') {\r\n let idx: number = 0;\r\n let orderings = filterParms.orderBy.split(',');\r\n for (const ordering of orderings) {\r\n let sortInformation = ordering.split(\" \");\r\n\r\n if (sortInformation.length === 1) {\r\n contentObject.sort.push({ path: sortInformation[0] });\r\n } else if (sortInformation.length === 2) {\r\n contentObject.sort.push({ path: sortInformation[0], order: sortInformation[1] });\r\n }\r\n }\r\n }\r\n\r\n contentObject[\"skip\"] = filterParms.from;\r\n contentObject[\"take\"] = filterParms.to - filterParms.from;\r\n\r\n if (filterParms.filter) {\r\n contentObject[\"fullText\"] = filterParms.filter;\r\n }\r\n }\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject));\r\n return this.contentService.findContent(filterText, draftMode);\r\n }\r\n\r\n getByObject(advancedFilter: any,\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.Published,\r\n ): Observable {\r\n this.initialize();\r\n\r\n const draftMode = eSchemaContentStatus == ESchemaContentStatus.Published ? false : true;\r\n\r\n let contentObject =\r\n {\r\n filter:\r\n {\r\n and:\r\n [\r\n {\r\n path: \"data.deleted.iv\",\r\n op: \"ne\",\r\n value: true\r\n }\r\n ]\r\n },\r\n sort: []\r\n }\r\n\r\n if (advancedFilter) {\r\n if (Array.isArray(advancedFilter)) {\r\n advancedFilter.forEach(v => {\r\n contentObject.filter.and.push(v);\r\n });\r\n } else {\r\n contentObject.filter.and.push(advancedFilter);\r\n }\r\n }\r\n\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject));\r\n return this.contentService.findContent(filterText, draftMode);\r\n }\r\n\r\n getUnpublished(orderBy: string, top: number): Observable {\r\n this.initialize();\r\n if (top === -1) {\r\n return this.contentService.findContent(`?$filter=(status eq 'Draft')&$orderby=${orderBy}`);\r\n }\r\n return this.contentService.findContent(`?$filter=(status eq 'Draft') and (data/deleted/iv ne true ) &$top=${top}&$orderby=${orderBy}`);\r\n }\r\n\r\n updateContent(contentId: string, contentData: any): Observable {\r\n this.initialize();\r\n return this.contentService.updateContent(contentId, contentData);\r\n }\r\n\r\n createContent(contentData: any): Observable {\r\n this.initialize();\r\n return this.contentService.createContent(contentData);\r\n }\r\n\r\n createDraft(contentId: string): Observable {\r\n this.initialize();\r\n return this.contentService.createDraft(contentId);\r\n }\r\n\r\n deleteDraft(contentId: string): Observable {\r\n this.initialize();\r\n return this.contentService.deleteDraft(contentId);\r\n }\r\n\r\n removeContent(id: ID, draftMode: boolean = false): Observable {\r\n this.initialize();\r\n return this.contentService.softDeleteContent(id.toString(), draftMode)\r\n }\r\n\r\n removeHardContent(id: ID): Observable {\r\n this.initialize();\r\n return this.contentService.deleteContent(id.toString());\r\n }\r\n\r\n getContentById(id: ID, draftMode: boolean = false): Observable {\r\n this.initialize();\r\n return this.contentService.findContent(`?$filter=id eq '${id.toString()}' and (data/deleted/iv ne true )`, draftMode)\r\n .pipe(map(answer => {\r\n const item = answer['items'][0];\r\n if (item) {\r\n return item as Content;\r\n }\r\n return null;\r\n }));\r\n }\r\n\r\n getContentByIds(ids: string[], orderBy: string): Observable {\r\n this.initialize();\r\n let query = '?$filter=';\r\n\r\n ids.forEach(id => {\r\n query += `id eq '${id.toString()}' or `;\r\n });\r\n\r\n query = query.substring(0, query.length - 4);\r\n\r\n query += ` and (data/deleted/iv ne true )&$orderby=${orderBy}`;\r\n\r\n return this.contentService.findContent(query)\r\n .pipe(map(answer => {\r\n return answer['items'];\r\n }));\r\n }\r\n\r\n find(query: string): Observable {\r\n return this.contentService.findContent(query).pipe(map(items => items.items));\r\n }\r\n\r\n countContent(): Observable {\r\n this.initialize();\r\n return this.contentService.countContent();\r\n }\r\n\r\n addContent(contentData: any): Observable {\r\n this.initialize();\r\n return this.contentService.createContent(contentData);\r\n }\r\n\r\n createAndPublishContent(contentData: any): Observable {\r\n this.initialize();\r\n return this.contentService.createContentAndPublish(contentData);\r\n }\r\n\r\n getContentByCode(code: string, draftMode: boolean = false): Observable {\r\n this.initialize();\r\n return this.contentService.findContent(`?$filter=data/code/iv eq '${code}' and (data/deleted/iv ne true )`, draftMode)\r\n .pipe(map(answer => {\r\n const item = answer['items'][0];\r\n if (item) {\r\n return item as Content;\r\n }\r\n return null;\r\n }));\r\n }\r\n\r\n getByParentId(id: string, parentFieldName: string, orderBy: string = 'id', draftMode: boolean = false): Observable {\r\n this.initialize();\r\n return this.contentService.findContent(`?$filter=data/${parentFieldName}/iv eq '${id}' and (data/deleted/iv ne true ) &$orderby=${orderBy}`, draftMode);\r\n }\r\n\r\n getAllOrdered(orderBy: string = 'data/code/iv'): Observable {\r\n this.initialize();\r\n return this.contentService.getAllContentOrdered(orderBy);\r\n }\r\n\r\n updateContentStatus(contentId: string, status: string, dueTime: string) {\r\n this.initialize();\r\n return this.contentService.updateContentStatus(contentId, status, dueTime);\r\n }\r\n\r\n //TODO: to be fixed\r\n filterContent(filter: string, top: number, orderBy: string): Observable {\r\n this.initialize();\r\n return this.contentService.findContent(`?$filter=contains(data,'${filter}')`);\r\n }\r\n\r\n\r\n createLanguageDefinition(language: any): Observable {\r\n this.initialize();\r\n return this.contentService.createLanguageDefinition(language);\r\n }\r\n\r\n\r\n deleteLanguageDefinition(code: any): Observable {\r\n this.initialize();\r\n return this.contentService.deleteLanguageDefinition(code);\r\n }\r\n\r\n}\r\n\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class SchemaPageModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppTokenService } from '../../../app-token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClaimService extends BaseService {\r\n\r\n constructor(schemasFactory: SchemasFactory,\r\n contentFactory: ContentFactory) {\r\n super(AppTokenService.CLAIM_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PageService } from './page.service';\r\nimport { PageStore } from './page.store';\r\nimport { PageQuery } from './page.query';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppTokenService } from '../../../app-token.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PageFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly pageService: PageService,\r\n pageStore: PageStore,\r\n pageQuery: PageQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(pageService,\r\n pageStore,\r\n pageQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppTokenService.PAGE_SCHEMA_NAME),\r\n translateService,\r\n AppTokenService.PAGE_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n\r\n}\r\n","export enum ESchemaContentStatus {\r\n All = -1,\r\n Draft = 0,\r\n Published = 1\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { PageTypeStore } from \"./page-type.store\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageTypeQuery extends BaseQuery {\r\n\r\n constructor(store: PageTypeStore) {\r\n super(store);\r\n }\r\n}\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"crnd\";","export const environment = {\r\n production: true\r\n};\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { Asset} from '..';\r\nimport { Validation } from '../../../tools';\r\nimport { AssetList } from '../models/asset-list.model';\r\nimport { AppConfigProvider } from '../../../app-config.provider';\r\nimport { ID } from '@datorama/akita';\r\nimport { AssetModel } from '../../akita';\r\n\r\nexport class AssetService {\r\n private readonly assetBaseUrl: string;\r\n private readonly baseUrl: string;\r\n\r\n constructor(private readonly httpClient: HttpClient, private appConfigProvider: AppConfigProvider) {\r\n this.assetBaseUrl = this.appConfigProvider.getAssetsBaseUrl();\r\n this.baseUrl = this.appConfigProvider.getApiEndpoint();\r\n }\r\n\r\n getByQuery(queryPatameters: any): Observable {\r\n const url = `${this.assetBaseUrl}${queryPatameters}`;\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n getById(assetId: any): Observable {\r\n const url = `${this.assetBaseUrl}/${assetId}`;\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n upload(formData: FormData): Observable {\r\n if (formData) {\r\n const url = `${this.assetBaseUrl}`;\r\n return this.httpClient.post(url, formData) as Observable\r\n } else {\r\n throw (new Error('data is null when trying to create asset'));\r\n }\r\n }\r\n\r\n update(assetId: any, assetData: any): Observable {\r\n const url = `${this.assetBaseUrl}/${assetId}`;\r\n return this.httpClient.put(url, assetData) as Observable;\r\n }\r\n\r\n updateTag(assetId: string, assetData: any): Observable {\r\n const url = `${this.assetBaseUrl}/${assetId}`;\r\n return this.httpClient.put(url, assetData) as Observable;\r\n }\r\n\r\n updateParent(assetId: string, assetData: any): Observable {\r\n const url = `${this.assetBaseUrl}/${assetId}/parent`;\r\n return this.httpClient.put(url, assetData) as Observable;\r\n }\r\n\r\n delete(assetId: ID): Observable {\r\n if (Validation.isValidGuid(String(assetId))) {\r\n const url = `${this.assetBaseUrl}/${assetId}`;\r\n return this.httpClient.delete(url) as Observable;\r\n } else {\r\n throw (new Error('Guid is not valid when trying to delete asset'));\r\n }\r\n }\r\n\r\n find(oDataQuery: string): Observable {\r\n const url = `${this.assetBaseUrl}${oDataQuery}`;\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n\r\n countQuery(oDataQuery: string): Observable {\r\n return this.find(oDataQuery)\r\n .pipe(map(asset => asset['total']));\r\n }\r\n\r\n\r\n generateThumbnail(pageUrl: string, pageName: string, imageId?: string): Observable {\r\n\r\n return of(true);\r\n let url = document.location.origin + '/capture/get';\r\n url += encodeURI(`?url=${pageUrl}&imageName=${pageName}${(imageId ? '&parentId='+imageId : '')}` );\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n\r\n count(): Observable {\r\n return this.find('?$top=1')\r\n .pipe(map(asset => asset['total']));\r\n }\r\n\r\n getCount(folderId: any): Observable {\r\n const url = `${this.assetBaseUrl}?parentId=${folderId}&$top1`;\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n\r\n getAllOrdered(orderBy: string = 'id') {\r\n const url = `${this.assetBaseUrl}?$orderby=${orderBy}`;\r\n return this.httpClient.get(url) as Observable;\r\n }\r\n\r\n convertObjectToUrl(urlObject: object) {\r\n return urlObject;\r\n }\r\n\r\n}\r\n","export class StringTool {\r\n\r\n camelize(str: string): string {\r\n return str.replace(/(?:^\\w|[A-Z]|\\b\\w)/g, function(match, index) {\r\n if (+match === 0) return \"\"; // or if (/\\s+/.test(match)) for white spaces\r\n return index === 0 ? match.toLowerCase() : match.toUpperCase();\r\n });\r\n }\r\n\r\n pascalize(str: string):string {\r\n return str.replace(/\\w\\S*/g, function(t) {\r\n return t.charAt(0).toUpperCase() + t.substr(1).toLowerCase();\r\n });\r\n }\r\n\r\n generateGuid(): string {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n var r = Math.random() * 16 | 0,\r\n v = c === 'x' ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory } from '../../squidex';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SchemaPageService extends BaseService {\r\n\r\n constructor(schemasFactory: SchemasFactory,\r\n contentFactory: ContentFactory) {\r\n super(AppToken.SCHEMA_PAGE_SCHEMA_NAME, contentFactory);\r\n }\r\n}\r\n","export default \".ngx-file-drop__drop-zone {\\n height: 100%;\\n margin: auto;\\n}\\n\\n.ngx-file-drop__drop-zone--over {\\n background-color: rgba(147, 147, 147, 0.5);\\n}\\n\\n.ngx-file-drop__content {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n height: 100px;\\n color: #91908E;\\n}\\n\\n.ngx-file-drop__drop-zone-label {\\n text-align: center;\\n}\\n\\n.ngx-file-drop__file-input {\\n display: none;\\n}\\n\\n.center {\\n display: block;\\n margin-left: auto;\\n margin-right: auto;\\n width: 50%;\\n background-color: #F29100;\\n}\\n\\n.orangium-color {\\n background-color: #F29100;\\n color: black;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxuZ3gtZmlsZS1kcm9wLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsWUFBWTtFQUNaLFlBQVk7QUFDZDs7QUFFQTtFQUNFLDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLGFBQWE7RUFDYixjQUFjO0FBQ2hCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixZQUFZO0FBQ2QiLCJmaWxlIjoibmd4LWZpbGUtZHJvcC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5uZ3gtZmlsZS1kcm9wX19kcm9wLXpvbmUge1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBtYXJnaW46IGF1dG87XHJcbn1cclxuXHJcbi5uZ3gtZmlsZS1kcm9wX19kcm9wLXpvbmUtLW92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTQ3LCAxNDcsIDE0NywgMC41KTsgXHJcbn1cclxuXHJcbi5uZ3gtZmlsZS1kcm9wX19jb250ZW50IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgaGVpZ2h0OiAxMDBweDtcclxuICBjb2xvcjogIzkxOTA4RTtcclxufVxyXG5cclxuLm5neC1maWxlLWRyb3BfX2Ryb3Atem9uZS1sYWJlbCB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ubmd4LWZpbGUtZHJvcF9fZmlsZS1pbnB1dCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmNlbnRlciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIHdpZHRoOiA1MCU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyOTEwMDtcclxufVxyXG5cclxuLm9yYW5naXVtLWNvbG9yIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjI5MTAwO1xyXG4gIGNvbG9yOiBibGFjaztcclxufVxyXG4iXX0= */\";","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { MenuItemDto } from '../../../services/akita/menu-item-schema/menu-item.dto';\r\n\r\n@Pipe({\r\n name: 'getMenuShowPlusIcon'\r\n})\r\nexport class GetMenuShowPlusIconPipe implements PipeTransform {\r\n\r\n transform(menuDto: MenuItemDto, menuDtos: MenuItemDto[]): string {\r\n\r\n let classes = 'fa fa-plus pb-2 pt-2';\r\n\r\n if (menuDto.isCurrentPage) {\r\n const selectedChild = menuDtos.find(m => m.isCurrentPage && menuDto.menuItem.id === m.menuItem.data.parentMenuItem.iv[0]);\r\n if (!selectedChild) {\r\n classes += 'text-white';\r\n }\r\n }\r\n\r\n let showIcon = ' d-inline';\r\n if (menuDto.isVisible || menuDto.isCurrentPage) {\r\n showIcon = ' d-none';\r\n }\r\n\r\n return classes + showIcon;\r\n\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonacoEditorModule } from '@materia-ui/ngx-monaco-editor';\r\nimport { MonacoLiquidEditorComponent } from './monaco-liquid-editor.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonacoLiquidEditorComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MonacoEditorModule\r\n ],\r\n exports: [\r\n MonacoLiquidEditorComponent\r\n ],\r\n providers: [{\r\n provide: 'MONACO_PATH',\r\n useValue: 'https://unpkg.com/monaco-editor@0.18.1/min/vs'\r\n }],\r\n})\r\n\r\nexport class MonacoLiquidEditorModule { }\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({\r\n name: 'article-type',\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class ArticleTypeStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","export default \"
    \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","import { Injectable } from '@angular/core';\r\nimport { ApplicationUserStore } from './application-user.store';\r\nimport { ApplicationUserQuery } from './application-user.query';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { ApplicationUserService } from './application-user.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ApplicationUserFacade extends BaseFacade {\r\n constructor(\r\n userService: ApplicationUserService,\r\n userStore: ApplicationUserStore,\r\n userQuery: ApplicationUserQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(userService,\r\n userStore,\r\n userQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade('application-users'),\r\n translateService,\r\n 'application-users-facade'\r\n );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Pipe({\r\n name: 'getDateTimeValue'\r\n})\r\nexport class GetDateTimeValuePipe implements PipeTransform {\r\n\r\n constructor(private datePipe: DatePipe) { }\r\n\r\n transform(value: any, language: string = 'iv'): string {\r\n\r\n if (!value || !value[language]) {\r\n return '';\r\n }\r\n\r\n return this.datePipe.transform(value[language], \"yyyy/MM/dd HH:mm:ss\", \"UTC -5\");\r\n }\r\n}\r\n","import { Schema, DynamicContentSchemaFactory, FilterPagination } from '../../../services';\r\nimport { map } from 'rxjs/operators';\r\nimport { Observable, combineLatest, of } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport {SiteSettingFacade } from '../../../services';\r\nimport { ESchemaContentStatus } from '../../../services/akita/base/enum';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FieldReferenceContent {\r\n\r\n constructor(\r\n private readonly contentFacadeFacto: DynamicContentSchemaFactory,\r\n private readonly siteSettingFacade: SiteSettingFacade\r\n ) { }\r\n\r\n sortByIndex(a, b) {\r\n\r\n if (!a || !a.data || !b || !b.data) {\r\n return 0;\r\n }\r\n\r\n if (a.data.index && b.data.index) {\r\n if (a.data.index.iv < b.data.index.iv)\r\n return -1;\r\n if (a.data.index.iv > b.data.index.iv)\r\n return 1;\r\n }\r\n\r\n if (a.data.Name && b.data.Name) {\r\n if (a.data.Name.iv < b.data.Name.iv)\r\n return -1;\r\n if (a.data.Name.iv > b.data.Name.iv)\r\n return 1;\r\n }\r\n\r\n return 0;\r\n }\r\n\r\n generateContentList( schemaDefinition: Schema): Observable {\r\n\r\n const result = {};\r\n const referenceFields = schemaDefinition.fields.filter(field => field.properties.fieldType === 'References');\r\n\r\n const obsList: Observable[] = [];\r\n\r\n if (referenceFields && referenceFields.length > 0) {\r\n\r\n referenceFields.forEach(field => {\r\n if (!result[field.name]) {\r\n result[field.name] = [];\r\n }\r\n\r\n const filter = new FilterPagination();\r\n\r\n filter.from = 0;\r\n filter.to = 2000;\r\n if (field.properties.schemaIds && field.properties.schemaIds.length > 0) {\r\n const service = this.contentFacadeFacto.getDynamicContentSchemaFacade(field.properties.schemaIds[0]);\r\n obsList.push(service.getFilteredPagination(filter, ESchemaContentStatus.Published).pipe(map(contents => {\r\n contents.sort(this.sortByIndex).forEach(content => {\r\n let label :string;\r\n\r\n if (content.data.Name) {\r\n label = content.data.Name[this.siteSettingFacade.getCurrentLanguage()];\r\n if (!label) {\r\n label = content.data.code.iv;\r\n }\r\n } else\r\n {\r\n label = content.data.code.iv;\r\n }\r\n\r\n result[field.name].push({\r\n Id: content.id,\r\n Code: content.data.code.iv,\r\n Label: label\r\n });\r\n });\r\n\r\n })));\r\n }\r\n\r\n });\r\n }\r\n if (referenceFields.length === 0) {\r\n return of({});\r\n }\r\n\r\n return combineLatest(obsList).pipe(map(([i]) => {\r\n return result;\r\n }));\r\n }\r\n\r\n generateContentListUnknown(schemaDefinition: any): Observable {\r\n\r\n const result = {};\r\n const referenceFields = schemaDefinition.fields.filter(field => field.properties.fieldType === 'References');\r\n\r\n const obsList: Observable[] = [];\r\n\r\n if (referenceFields && referenceFields.length > 0) {\r\n\r\n referenceFields.forEach(field => {\r\n if (!result[field.name]) {\r\n result[field.name] = [];\r\n }\r\n\r\n const filter = new FilterPagination();\r\n\r\n filter.from = 0;\r\n filter.to = 2000;\r\n if (field.properties.schemaIds && field.properties.schemaIds.length > 0) {\r\n const service = this.contentFacadeFacto.getDynamicContentSchemaFacade(field.properties.schemaIds[0]);\r\n obsList.push(service.getFilteredPagination(filter, ESchemaContentStatus.Published).pipe(map(contents => {\r\n contents.sort(this.sortByIndex).forEach(content => {\r\n let label: string;\r\n\r\n if (content.data.Name) {\r\n label = content.data.Name[this.siteSettingFacade.getCurrentLanguage()];\r\n if (!label) {\r\n label = content.data.code.iv;\r\n }\r\n } else {\r\n label = content.data.code.iv;\r\n }\r\n\r\n result[field.name].push({\r\n Id: content.id,\r\n Code: content.data.code.iv,\r\n Label: label\r\n });\r\n });\r\n\r\n })));\r\n }\r\n\r\n });\r\n }\r\n if (referenceFields.length === 0) {\r\n return of({});\r\n }\r\n\r\n return combineLatest(obsList).pipe(map(([i]) => {\r\n return result;\r\n }));\r\n }\r\n\r\n\r\n}\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-spinner',\r\n templateUrl: './spinner.component.html',\r\n styleUrls: ['./spinner.component.scss']\r\n})\r\nexport class SpinnerComponent implements OnInit {\r\n @Input() public message: string;\r\n constructor() {}\r\n isOverlay: boolean;\r\n\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, OnInit, AfterViewInit, Input, TemplateRef, Output, EventEmitter, ViewChildren, QueryList } from '@angular/core';\r\nimport {\r\n Schema, DynamicContentModel,\r\n SchemaMetadataModel, DynamicContentSchemaFacade,\r\n Field, ResourceFacade, LanguageModel,\r\n DataParser, SiteSettingFacade, DynamicContentSchemaFactory,\r\n UiNotificationService, Content, AssetFacade, SquidexDate,\r\n ScheduleJob, Asset, FilterPagination, AssetDirectoryFacade, AuthenticationService\r\n} from '../../../services';\r\nimport { BaseComponent } from '../../../base/base-component.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FormGroup, FormControl, ValidatorFn, Validators, AbstractControl } from '@angular/forms';\r\nimport { Observable, of, forkJoin, combineLatest, Subject } from 'rxjs';\r\nimport { map, catchError, mergeMap } from 'rxjs/operators';\r\nimport { FormGroupMapper } from '../../form-group/form-group-mapper.tool';\r\nimport { Router } from '@angular/router';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { BsDatepickerConfig } from 'ngx-bootstrap/datepicker';\r\nimport { AppSchemaCategory, AppToken, Statuses, FieldsName } from '../../../models/app-token';\r\nimport { guid, ID } from '@datorama/akita';\r\nimport { Validation, SquidexTool } from '../../../tools';\r\nimport { SpinnerService } from '../../../shared/spinner/spinner.service';\r\nimport { ESchemaContentStatus } from '../../../services/akita/base/enum';\r\nimport { ContentInternalService } from '../../../services/squidex/services/content-internal.service';\r\nimport { Folder } from '../../../services/squidex/models/folder.model';\r\nimport { FolderList } from '../../../services/squidex/models/folder-list.model';\r\nimport { NgZone } from '@angular/core';\r\nimport { FieldReferenceModel } from \"../../field-reference-editor/FieldReferenceModel.model\";\r\nimport { SchemaMetadataFacade, DynamicSchemaFactory, SchemaPageFacade } from \"../../../services/akita/index\";\r\nimport { SchemasFactory } from \"../../../services/squidex/factories/schemas.factory\";\r\nimport { FieldReferenceContent } from \"../../field/tools/field-reference-content.service\";\r\nimport { FieldControlComponent } from \"../../field/field-control.component\";\r\n\r\n\r\n@Component({\r\n selector: 'app-content-edition',\r\n templateUrl: './content-edition.component.html',\r\n styleUrls: ['./content-edition.component.css']\r\n})\r\nexport class ContentEditionComponent extends BaseComponent implements OnInit {\r\n\r\n @Input()\r\n schemaDefinition: Schema;\r\n\r\n @Input()\r\n selectedContent: DynamicContentModel;\r\n\r\n @Input()\r\n schemaMetadata: SchemaMetadataModel;\r\n\r\n @Input()\r\n currentContentsFacade: DynamicContentSchemaFacade;\r\n\r\n @Input()\r\n referenceFieldValues: any;\r\n\r\n @Input()\r\n referenceFieldReferenceModel: FieldReferenceModel;\r\n\r\n referenceFieldModelParent: FieldReferenceModel;\r\n\r\n\r\n @Input()\r\n monacoLanguage: string;\r\n\r\n @Input()\r\n selectableContents: Content[];\r\n\r\n @Input()\r\n contentCount: number;\r\n\r\n @Input()\r\n isSingle: boolean = false;\r\n\r\n @Input()\r\n isModal: boolean = false;\r\n\r\n @Input()\r\n showTitle: boolean = true;\r\n\r\n @Output()\r\n onContentChanged = new EventEmitter();\r\n\r\n @Output()\r\n onUpdate = new EventEmitter();\r\n\r\n newImage: any[] = [];\r\n\r\n deletedAssets: any[] = [];\r\n\r\n folderParentId: string;\r\n folderList: FolderList;\r\n\r\n alreadyTried: boolean = false;\r\n\r\n editionFormGroup: FormGroup;\r\n publishFormGroup: FormGroup;\r\n\r\n unhiddenFields: Field[];\r\n hiddenFields: Field[];\r\n\r\n availableLanguages: LanguageModel[];\r\n dataParser: DataParser;\r\n\r\n modalRef: BsModalRef;\r\n bsConfig: Partial;\r\n isNew = false;\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n userIsReadWrite: boolean;\r\n userIsReader: boolean;\r\n\r\n isDraft: boolean = false;\r\n statusColorClassName: string;\r\n scheduledJob: ScheduleJob;\r\n draftMode: boolean = false;\r\n currentStatus: string;\r\n draftVersionExist: boolean = false;\r\n publishMode: boolean = false;\r\n updateParent = true;\r\n\r\n imageChange: boolean = false;\r\n cloneData: any;\r\n showAction: boolean = false;\r\n\r\n fieldReferenceModel: FieldReferenceModel;\r\n fieldReferenceModelParent: FieldReferenceModel;\r\n\r\n\r\n\r\n private isOpen: boolean;\r\n private isModified: boolean;\r\n private lastModified: string;\r\n private title: string;\r\n private contentType: string;\r\n private contentDefinition: any;\r\n\r\n\r\n private weAreInContents: boolean = true;\r\n\r\n\r\n @Input()\r\n hideFieldReferenceModelEditor: boolean;\r\n\r\n @Input()\r\n reloadOnUpdate: boolean;\r\n\r\n @Input()\r\n publishOnUpdate: boolean;\r\n\r\n @ViewChildren(FieldControlComponent) fieldControls: QueryList;\r\n\r\n squidexTool: SquidexTool;\r\n\r\n addValue: boolean = false;\r\n\r\n constructor(\r\n private readonly resourceFacade: ResourceFacade,\r\n private readonly metadataFacade: SchemaMetadataFacade,\r\n private readonly schemasFactory: SchemasFactory,\r\n private readonly schemaPageFacade: SchemaPageFacade,\r\n private readonly contentFacadeFactory: DynamicContentSchemaFactory,\r\n private readonly dynamicSchemaFactory: DynamicSchemaFactory,\r\n private readonly referenceContentService: FieldReferenceContent,\r\n private readonly siteSettingFacade: SiteSettingFacade,\r\n private readonly modalService: BsModalService,\r\n private readonly uiNotificationService: UiNotificationService,\r\n readonly router: Router,\r\n private readonly spinnerService: SpinnerService,\r\n translateService: TranslateService,\r\n private readonly assetFacade: AssetFacade,\r\n private readonly contentInternalService: ContentInternalService,\r\n private readonly assetDirectoryFacade: AssetDirectoryFacade,\r\n private readonly authenticationService: AuthenticationService,\r\n private zone: NgZone,\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('ContentEditionComponent');\r\n this.reloadOnUpdate = true;\r\n //this.hideFieldReferenceModelEditor = true;\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.userIsOwner = this.authenticationService.userHasRole(\"Owner\");\r\n this.userIsDev = this.authenticationService.userHasRole(\"Developer\");\r\n this.userIsEditor = this.authenticationService.userHasRole(\"Editor\");\r\n this.userIsReadWrite = this.authenticationService.userHasRole(\"ReadWrite\");\r\n this.userIsReader = this.authenticationService.userHasRole(\"Reader\");\r\n\r\n this.squidexTool = new SquidexTool();\r\n\r\n this.siteSettingFacade.getSiteLanguages().subscribe(languages => {\r\n this.availableLanguages = languages;\r\n this.dataParser = new DataParser(languages);\r\n this.initData(false);\r\n this.initEditionForm();\r\n });\r\n\r\n const subsDir = this.assetDirectoryFacade.getFolders().subscribe(fs => {\r\n this.folderList = fs;\r\n });\r\n this.subscriptions.push(subsDir);\r\n\r\n const urlTree = this.router.parseUrl(this.router.url);\r\n const currentBaseUrl = urlTree.root.children['primary'].segments[0].path;\r\n\r\n if (currentBaseUrl == 'page') {\r\n this.weAreInContents = false;\r\n } else {\r\n\r\n }\r\n }\r\n\r\n toogleShowAction() {\r\n this.showAction = !this.showAction;\r\n }\r\n\r\n initData(retry: boolean) {\r\n this.bsConfig = Object.assign({},\r\n { containerClass: \"theme-orange\", dateInputFormat: AppToken.ISO_DATES_DATE_TIME_UPDATE });\r\n\r\n if (!this.selectedContent || retry) {\r\n this.selectedContent = new DynamicContentModel();\r\n this.isNew = true;\r\n\r\n const cloneData = localStorage.getItem(\"cloneData-\" + this.schemaDefinition.name);\r\n\r\n if (cloneData) {\r\n this.cloneData = JSON.parse(cloneData);\r\n this.selectedContent.data = this.cloneData;\r\n localStorage.removeItem(\"cloneData-\" + this.schemaDefinition.name);\r\n }\r\n\r\n } else {\r\n if (this.draftMode || (this.selectedContent.newStatus && !this.selectedContent.scheduleJob && !this.publishMode)) {\r\n this.currentStatus = this.selectedContent.newStatus;\r\n this.publishDateTime = '';\r\n } else {\r\n this.currentStatus = this.selectedContent.status;\r\n this.publishDateTime = this.squidexTool.utcToDateString(this.dataParser.pullData(this.selectedContent, \"publishdatetime\"));\r\n }\r\n\r\n if (this.publishDateTime.includes(\"1970-01-01\")) {\r\n this.publishDateTime = '';\r\n }\r\n\r\n this.scheduledJob = this.selectedContent.scheduleJob;\r\n\r\n this.updateStatusAndStatusColor(this.currentStatus);\r\n\r\n // if (!this.publishDateTime) {\r\n this.draftVersionExisted();\r\n //}\r\n // this.getContentDefinition();\r\n\r\n }\r\n }\r\n\r\n initEditionForm() {\r\n if (!this.schemaDefinition) {\r\n return;\r\n }\r\n\r\n this.classifyFields();\r\n this.editionFormGroup = new FormGroup(\r\n this.generateFormGroup(\r\n this.currentContentsFacade,\r\n this.schemaDefinition.fields,\r\n this.hiddenFields.map(field => field.name),\r\n this.selectedContent)\r\n );\r\n\r\n this.createMetaDataFormGroup(this.selectedContent);\r\n\r\n }\r\n\r\n private createMetaDataFormGroup(content: DynamicContentModel): void {\r\n\r\n const fields = Object.keys(content);\r\n\r\n if (!fields.find(s => s === 'scheduleJob')) {\r\n fields.push('scheduleJob');\r\n }\r\n\r\n const metaDataFormGroup: any = {};\r\n let scheduledJob: boolean = false;\r\n\r\n for (let i = 0; i < fields.length; i++) {\r\n const field = fields[i];\r\n\r\n if ((this.publishMode && content.newStatus) || (field === 'scheduleJob' && content.newStatus && content.newStatus === \"Published\")) {\r\n let fieldsValue = content.scheduleJob;\r\n scheduledJob = true\r\n if (!fieldsValue && content.newStatus) {\r\n fieldsValue = { id: null, dueTime: null, scheduledBy: null, status: null };\r\n fieldsValue.dueTime = this.publishDateTime;\r\n this.currentStatus = \"Published\";\r\n }\r\n const fs = Object.keys(fieldsValue);\r\n\r\n const scheduleJobFromGroup: any = {};\r\n\r\n for (let i = 0; i < fs.length; i++) {\r\n scheduleJobFromGroup[fs[i]] = this.createGenericFormControl(fs[i], fieldsValue);\r\n }\r\n\r\n metaDataFormGroup[field] = new FormGroup(scheduleJobFromGroup);\r\n } else {\r\n metaDataFormGroup[field] = this.createGenericFormControl(field, content);\r\n }\r\n }\r\n\r\n if (!scheduledJob) {\r\n let fieldsValue = { id: null, dueTime: null, scheduledBy: null, status: null };\r\n\r\n if (content.data.publishdatetime) {\r\n fieldsValue.dueTime = this.publishDateTime;\r\n }\r\n const fs = Object.keys(fieldsValue);\r\n const scheduleJobFromGroup: any = {};\r\n\r\n for (let i = 0; i < fs.length; i++) {\r\n scheduleJobFromGroup[fs[i]] = this.createGenericFormControl(fs[i], fieldsValue);\r\n }\r\n metaDataFormGroup['scheduleJob'] = new FormGroup(scheduleJobFromGroup);\r\n\r\n }\r\n\r\n this.publishFormGroup = new FormGroup(metaDataFormGroup);\r\n }\r\n\r\n private setJobStatusFormGroup(content: DynamicContentModel): void {\r\n\r\n const metaDataFormGroup: any = {};\r\n let scheduledJob: boolean = false;\r\n\r\n let fieldsValue = { id: null, dueTime: null, scheduledBy: null, status: null };\r\n\r\n if (content.data.publishdatetime && this.currentStatus === 'Published') {\r\n fieldsValue.dueTime = this.squidexTool.utcToDateString(this.dataParser.pullData(content, 'publishdatetime'));\r\n } else if (this.currentStatus === 'Draft') {\r\n fieldsValue.dueTime = null;\r\n } else {\r\n fieldsValue.dueTime = this.publishDateTime;\r\n }\r\n const fs = Object.keys(fieldsValue);\r\n const scheduleJobFromGroup: any = {};\r\n\r\n for (let i = 0; i < fs.length; i++) {\r\n scheduleJobFromGroup[fs[i]] = this.createGenericFormControl(fs[i], fieldsValue);\r\n }\r\n metaDataFormGroup['scheduleJob'] = new FormGroup(scheduleJobFromGroup);\r\n\r\n this.publishFormGroup = new FormGroup(metaDataFormGroup);\r\n }\r\n\r\n private createGenericFormControl(field: string, content: any, isRequired: boolean = false): FormControl {\r\n\r\n const fieldValue = content[field];\r\n\r\n const control = new FormControl(fieldValue);\r\n\r\n const validators: ValidatorFn[] = [];\r\n\r\n if (isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n\r\n control.setValidators(validators);\r\n\r\n return control;\r\n }\r\n\r\n private updateStatusAndStatusColor(status: string) {\r\n switch (status) {\r\n case Statuses.PUBLISHED.name:\r\n this.isDraft = false;\r\n this.statusColorClassName = 'badge green-badge';\r\n break;\r\n case Statuses.DRAFT.name:\r\n this.isDraft = true;\r\n this.statusColorClassName = 'badge draft-badge';\r\n break;\r\n default:\r\n this.statusColorClassName = 'badge red-badge';\r\n }\r\n }\r\n\r\n private updateStatusSelect(e) {\r\n this.updateStatusAndStatusColor(e.target.value);\r\n }\r\n\r\n private draftVersionExisted() {\r\n if (!this.selectedContent.newStatus && this.selectedContent.status === 'Draft' && !this.selectedContent.scheduleJob) {\r\n this.draftVersionExist = true;\r\n this.draftMode = true;\r\n this.publishDateTime = '';\r\n } else {\r\n if (this.selectedContent.scheduleJob) {\r\n this.currentStatus = \"Published\"\r\n } else {\r\n this.currentContentsFacade.get(this.selectedContent.id, true).subscribe(p => {\r\n if (p.newStatus) {\r\n this.draftVersionExist = true;\r\n this.draftMode = true;\r\n this.publishDateTime = '';\r\n } else {\r\n this.draftVersionExist = false;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n getFieldLabel(fieldName: string): Observable {\r\n const resourceCode = `${this.schemaName}.${fieldName}.label`;\r\n return this.resourceFacade.getByCode(resourceCode).pipe(map(resource => {\r\n const value = resource.data.value[this.languageFacade.getDefaultLanguage()];\r\n if (resource && value) {\r\n return value as string;\r\n }\r\n return '';\r\n }),\r\n catchError(err => {\r\n return of('failed');\r\n }));\r\n }\r\n\r\n classifyFields(): void {\r\n if (!this.schemaMetadata) {\r\n return;\r\n }\r\n\r\n let hiddenFieldsNames = (this.schemaMetadata.data.hiddenfields.iv as string).split(';');\r\n this.unhiddenFields = [];\r\n\r\n this.hiddenFields = this.schemaDefinition.fields.filter(field => hiddenFieldsNames.filter(field => !this.isNew || field !== 'code')\r\n .some(hiddenFieldName => field.name === hiddenFieldName));\r\n\r\n //the point is to keep code first\r\n this.unhiddenFields = this.schemaDefinition.fields.filter(field => this.isNew && field.name === \"code\");\r\n\r\n this.unhiddenFields = this.unhiddenFields.concat(this.schemaDefinition.fields.filter(field => !hiddenFieldsNames\r\n .some(hiddenFieldName => field.name === hiddenFieldName)));\r\n\r\n }\r\n\r\n createContent(addValue?: boolean): void {\r\n this.alreadyTried = true;\r\n\r\n if (this.editionFormGroup.invalid) {\r\n this.editionFormGroup.markAllAsTouched();\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.CONTENT_EDITION.INVALID_FORM, c.FAILED_TITLE, 10000);\r\n });\r\n console.error('Edition form group invallid : ');\r\n console.error(this.editionFormGroup);\r\n return;\r\n }\r\n\r\n if (this.selectableContents.map(c => c.data.code.iv).find(cn => cn === this.editionFormGroup.value['code'])) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.CODE_TAKEN, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n\r\n let newContent = new DynamicContentModel(this.selectedContent);\r\n newContent = FormGroupMapper.GetContentFromFormGroup(this.editionFormGroup,\r\n newContent,\r\n this.schemaDefinition,\r\n this.availableLanguages);\r\n\r\n const squidexTool = new SquidexTool();\r\n let sanitizedCode = squidexTool.sanitizeForUniqueName(this.editionFormGroup.value['code']);\r\n\r\n newContent.data.code.iv = sanitizedCode;\r\n newContent.data['index'] = { 'iv': this.contentCount + 1 };\r\n\r\n if (this.schemaDefinition.category === AppSchemaCategory.SCHEMA_AS_A_PAGE) {\r\n const urls = new Array();\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n urls.push(this.dataParser.pullData(newContent, 'url', language));\r\n }\r\n\r\n const urlsDistinct = [...new Set(urls)];\r\n if (urls.length > urlsDistinct.length) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_NOT_DISTINCT, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n let startWithSlash: boolean = true;\r\n urls.forEach(url => {\r\n if (url && !url.trim().startsWith('/')) {\r\n startWithSlash = false;\r\n console.log('Doesn\\'t start with \\'/\\' while been a page... I guess :/');\r\n return;\r\n }\r\n });\r\n\r\n if (!startWithSlash) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_START_SLASH, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n\r\n\r\n let validateBatch: Observable[] = []\r\n\r\n for (const lg of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n let filterList: object[] = new Array();\r\n\r\n const allVersionParm = new FilterPagination();\r\n allVersionParm.from = 0;\r\n allVersionParm.to = 1;\r\n allVersionParm.filter = '';\r\n allVersionParm.orderBy = 'lastModified descending';\r\n\r\n\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n let data: any = {};\r\n data = {\r\n path: `data.url.${lg}`,\r\n op: 'eq',\r\n value: this.dataParser.pullData(newContent, 'url', language)\r\n };\r\n\r\n filterList.push(data);\r\n }\r\n\r\n let orFilter: any = {};\r\n orFilter = {\r\n or: filterList\r\n }\r\n\r\n validateBatch.push(this.currentContentsFacade.validateUrl(allVersionParm, ESchemaContentStatus.All, orFilter));\r\n }\r\n\r\n forkJoin(validateBatch).subscribe(totalArr => {\r\n\r\n let total: number = 0;\r\n\r\n for (const num of totalArr) {\r\n total += num.valueOf();\r\n }\r\n\r\n if (total > 0) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_TAKEN, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n\r\n let hasImage = false;\r\n for (let i = 0; i < this.schemaDefinition.fields.length; i++) {\r\n const field = this.schemaDefinition.fields[i];\r\n if (field.properties.fieldType === 'Assets') {\r\n const idx = this.hiddenFields.findIndex(v => v.name === field.name)\r\n if (idx === -1) {\r\n this.dataParser.putData(newContent.data, field.name, '', 'iv', field);\r\n hasImage = true;\r\n }\r\n }\r\n }\r\n\r\n this.dataParser.putData(newContent, FieldsName.ISSECURE, false);\r\n this.dataParser.putData(newContent, FieldsName.ISNOINDEX, false);\r\n this.dataParser.putData(newContent, FieldsName.ISACTIVE, true);\r\n\r\n if (hasImage) {\r\n this.addImageField(newContent);\r\n } else {\r\n this.finalizeCreate(newContent);\r\n }\r\n\r\n });\r\n } else {\r\n\r\n if (!this.validatePatterns(newContent)) {\r\n return;\r\n }\r\n\r\n let hasImage = false;\r\n for (let i = 0; i < this.schemaDefinition.fields.length; i++) {\r\n const field = this.schemaDefinition.fields[i];\r\n if (field.properties.fieldType === 'Assets') {\r\n this.dataParser.putData(newContent.data, field.name, '', 'iv', field);\r\n hasImage = true;\r\n }\r\n }\r\n\r\n if (hasImage) {\r\n this.addImageField(newContent);\r\n } else {\r\n this.finalizeCreate(newContent);\r\n }\r\n }\r\n }\r\n\r\n getUrl(urlTree: any) {\r\n let url = `${urlTree.root.children['primary'].segments[0].path}`;\r\n if (urlTree.root.children['primary'].segments.length > 1) {\r\n url += `/${urlTree.root.children['primary'].segments[1].path}`;\r\n }\r\n return url;\r\n }\r\n\r\n public updateContent(updateParent = true) {\r\n this.alreadyTried = true;\r\n this.updateParent = updateParent;\r\n\r\n if (this.editionFormGroup.invalid) {\r\n this.editionFormGroup.markAllAsTouched();\r\n return;\r\n }\r\n\r\n let newContent = new DynamicContentModel(this.selectedContent);\r\n\r\n\r\n newContent = FormGroupMapper.GetContentFromFormGroup(this.editionFormGroup,\r\n newContent,\r\n this.schemaDefinition,\r\n this.availableLanguages);\r\n\r\n //Update status if published in future\r\n let dueTime = new Date(this.publishFormGroup.value.scheduleJob.dueTime ?? Date.now);\r\n\r\n let now = new Date();\r\n let publishStatus: string;\r\n\r\n if (this.selectedContent.newStatus) {\r\n publishStatus = this.selectedContent.newStatus;\r\n } else {\r\n publishStatus = this.selectedContent.status;\r\n }\r\n\r\n if ((publishStatus !== this.currentStatus) || this.publishFormGroup.touched) {\r\n this.currentStatus = 'Published';\r\n\r\n let publishDate: string = null;\r\n if (this.publishFormGroup.value.scheduleJob.dueTime > now) {\r\n publishDate = new SquidexDate(dueTime).format();\r\n this.dataParser.putData(newContent.data, 'publishdatetime', publishDate);\r\n } else {\r\n const dt = new SquidexDate(now).format();\r\n this.publishFormGroup.value.scheduleJob.dueTime = null;\r\n this.dataParser.putData(newContent.data, 'publishdatetime', dt);\r\n }\r\n\r\n this.currentContentsFacade.updateStatus(this.selectedContent.id, this.currentStatus, publishDate)\r\n .subscribe(content => {\r\n this.selectedContent = content;\r\n if (content.newStatus) {\r\n this.currentStatus = content.newStatus;\r\n } else {\r\n this.currentStatus = content.status;\r\n }\r\n this.scheduledJob = content.scheduleJob;\r\n this.updateStatusAndStatusColor(this.currentStatus);\r\n\r\n this.notify(this.currentStatus);\r\n });\r\n }\r\n else {\r\n let publishDate = this.dataParser.pullData(newContent, 'publishdatetime');\r\n if (publishDate.substring(0, 2) === '19') {\r\n publishDate = new SquidexDate(new Date()).format();\r\n }\r\n }\r\n\r\n //update images\r\n this.imageChange = false;\r\n\r\n for (let i = 0; i < this.schemaDefinition.fields.length; i++) {\r\n const field = this.schemaDefinition.fields[i];\r\n const elem: HTMLImageElement = document.querySelector('.thumbnail-div-' + field.name);\r\n if (elem && (elem.classList.contains(\"image-changed\") || elem.classList.contains(\"image-deleted\"))) {\r\n this.imageChange = true;\r\n }\r\n }\r\n\r\n const delImages = document.querySelector(\".image-deleted\");\r\n if (delImages) {\r\n this.imageChange = true;\r\n }\r\n\r\n if (this.deletedAssets.length > 0 || this.newImage.length > 0) {\r\n this.updateImageField(newContent);\r\n } else { // No image\r\n this.finalizeUpdate(newContent);\r\n }\r\n }\r\n\r\n updateImageField(newContent: DynamicContentModel) {\r\n const directoryName = 'Content-' + (this.selectedContent.schemaName ?? this.schemaDefinition.name);\r\n\r\n this.spinnerService.show();\r\n const folderExist: Folder = this.folderList.items.find(item => item.folderName === directoryName);\r\n if (!folderExist) {\r\n const folderNew = new Folder();\r\n folderNew.folderName = directoryName;\r\n const subs = this.assetDirectoryFacade.createFolder(folderNew).subscribe(f => {\r\n this.folderParentId = f.id;\r\n this.folderList.items.push(folderNew)\r\n this.finalizeUpdateImageField(newContent, directoryName);\r\n });\r\n this.subscriptions.push(subs);\r\n } else {\r\n this.folderParentId = folderExist.id;\r\n this.finalizeUpdateImageField(newContent, directoryName);\r\n }\r\n }\r\n\r\n finalizeUpdateImageField(newContent: DynamicContentModel, directoryName: string) {\r\n let assetsBatch: Observable[] = []\r\n let deleteButKeepImage = false;\r\n\r\n for (let i = 0; i < this.schemaDefinition.fields.length; i++) {\r\n const field = this.schemaDefinition.fields[i]\r\n if (field.properties.fieldType === 'Assets') {\r\n\r\n let resultDelete: any = this.deletedAssets.find(e => e.fieldName === field.name);\r\n if (resultDelete) {\r\n resultDelete.assets.forEach(asset => {\r\n\r\n // Verify if image is used by other control. if so, don't delete\r\n Object.keys(this.editionFormGroup.controls).forEach((key) => {\r\n const ctrl = this.editionFormGroup.controls[key]\r\n if (Array.isArray(ctrl.value) && ctrl.value.length >= 1 && ctrl.value[0] === asset.id && field.name != key) {\r\n deleteButKeepImage = true;\r\n }\r\n });\r\n if (!deleteButKeepImage) {\r\n assetsBatch.push(this.assetFacade.remove(asset.id));\r\n }\r\n\r\n let assetVal: [] = this.dataParser.pullData(newContent, field.name);\r\n const idx = assetVal.findIndex(a => a === asset.id);\r\n if (idx > 0) {\r\n assetVal.splice(idx);\r\n newContent.data = this.dataParser.putData(newContent.data, field.name, assetVal);\r\n } else if (idx === 0) {\r\n assetVal = [];\r\n newContent.data = this.dataParser.putData(newContent.data, field.name, assetVal);\r\n }\r\n });\r\n }\r\n\r\n let result: any = this.newImage.find(e => e.fieldName === field.name);\r\n if (result) {\r\n result.files.forEach(file => {\r\n if (resultDelete && resultDelete.assets.find(e => e.id === file.id)) {\r\n return;\r\n }\r\n\r\n const formData = new FormData();\r\n formData.append('file', file);\r\n assetsBatch.push(this.assetFacade.create(formData, null, directoryName, field.name, '', this.folderParentId));\r\n });\r\n\r\n const assetValue = this.dataParser.pullData(newContent, field.name);\r\n if (!Array.isArray(assetValue)) {\r\n newContent.data = this.dataParser.setData(newContent.data, field, '');\r\n }\r\n }\r\n\r\n\r\n }\r\n }\r\n\r\n let index = 0;\r\n if (assetsBatch.length > 0) {\r\n combineLatest(assetsBatch).subscribe(assetsBack => {\r\n assetsBack.forEach((asset) => {\r\n let fieldName = '';\r\n if (asset) {\r\n const field = this.schemaDefinition.fields.find(obj => obj.name === asset.fieldName);\r\n if (field) {\r\n newContent.data = this.dataParser.setData(newContent.data, field, asset.id);\r\n }\r\n }\r\n index++;\r\n if (index === assetsBatch.length) {\r\n this.finalizeUpdate(newContent);\r\n }\r\n });\r\n },\r\n err => {\r\n // this.spinnerService.hide();\r\n }\r\n );\r\n\r\n } else if (deleteButKeepImage) {\r\n this.finalizeUpdate(newContent);\r\n } else {\r\n this.spinnerService.hide();\r\n }\r\n }\r\n\r\n addImageField(newContent: DynamicContentModel) {\r\n\r\n this.spinnerService.show();\r\n const directoryName = 'Content-' + (this.selectedContent.schemaName ?? this.schemaDefinition.name);\r\n\r\n const folderExist: Folder = this.folderList.items.find(item => item.folderName === directoryName);\r\n\r\n if (!folderExist) {\r\n const folderNew = new Folder();\r\n folderNew.folderName = directoryName;\r\n const subs = this.assetDirectoryFacade.createFolder(folderNew).subscribe(f => {\r\n this.folderParentId = f.id;\r\n folderNew.id = f.id;\r\n this.folderList.items.push(folderNew);\r\n this.finalizeUpdateImageField(newContent, directoryName);\r\n });\r\n this.subscriptions.push(subs);\r\n } else {\r\n this.folderParentId = folderExist.id;\r\n this.finalizeAddImageField(newContent, directoryName);\r\n }\r\n }\r\n\r\n finalizeAddImageField(newContent: DynamicContentModel, directoryName: string) {\r\n let assetsBatch: Observable[] = []\r\n\r\n for (let i = 0; i < this.schemaDefinition.fields.length; i++) {\r\n const field = this.schemaDefinition.fields[i];\r\n if (field.properties.fieldType === 'Assets') {\r\n\r\n let resultDelete: any = this.deletedAssets.find(e => e.fieldName === field.name);\r\n if (resultDelete) {\r\n resultDelete.assets.forEach(asset => {\r\n assetsBatch.push(this.assetFacade.remove(asset.id));\r\n });\r\n }\r\n\r\n let result: any = this.newImage.find(e => e.fieldName === field.name);\r\n if (result) {\r\n result.files.forEach(file => {\r\n if (resultDelete && resultDelete.assets.find(e => e.id === file.id)) {\r\n return;\r\n }\r\n\r\n const formData = new FormData();\r\n formData.append('file', file);\r\n\r\n assetsBatch.push(this.assetFacade.create(formData, null, directoryName, field.name));\r\n });\r\n }\r\n }\r\n }\r\n\r\n if (assetsBatch.length > 0) {\r\n combineLatest(assetsBatch).subscribe(assetsBack => {\r\n assetsBack.forEach(asset => {\r\n if (asset) {\r\n const field = this.schemaDefinition.fields.find(obj => obj.name === asset.fieldName);\r\n if (field) {\r\n newContent.data = this.dataParser.setData(newContent.data, field, asset.id);\r\n }\r\n }\r\n\r\n });\r\n this.finalizeCreate(newContent);\r\n this.spinnerService.hide();\r\n },\r\n err => {\r\n this.spinnerService.hide();\r\n }\r\n );\r\n } else {\r\n this.finalizeCreate(newContent);\r\n this.spinnerService.hide();\r\n }\r\n }\r\n\r\n finalizeCreate(newContent: DynamicContentModel) {\r\n\r\n let createFunction: Observable;\r\n\r\n if (this.publishOnUpdate) {\r\n createFunction = this.currentContentsFacade.createAsPublished(newContent.data);\r\n }\r\n else {\r\n createFunction = this.currentContentsFacade.create(newContent.data);\r\n }\r\n\r\n const datePublished = new Date()\r\n datePublished.setHours(0, 0, 0, 0);\r\n const dt = new SquidexDate(datePublished.setHours(0, 0, 0, 0)).format();\r\n\r\n this.dataParser.putData(newContent.data, \"publishdatetime\", dt);\r\n\r\n\r\n const subscription = createFunction.subscribe(content => {\r\n const urlTree = this.router.parseUrl(this.router.url);\r\n const currentBaseUrl = this.getUrl(urlTree);\r\n\r\n if (this.schemaDefinition.category === AppSchemaCategory.SCHEMA_AS_A_PAGE) {\r\n //creation menu item\r\n const menuItemFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.MENU_ITEM_SCHEMA_NAME);\r\n let isExcu1 = false;\r\n\r\n let subs: any[] = [];\r\n\r\n const menuItemFacadeSub = menuItemFacade.getByCode(this.schemaDefinition.name);\r\n\r\n //creation schema-page relation page/content\r\n const pageFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_SCHEMA_NAME);\r\n\r\n let isExcu = false;\r\n const subSchemaPageFacade = pageFacade.getByCode(this.schemaDefinition.name);\r\n\r\n this.spinnerService.hide();\r\n\r\n combineLatest([menuItemFacadeSub, subSchemaPageFacade]).subscribe(val => {\r\n\r\n let parentMenuItem: any;\r\n\r\n let menuItemFacadeSub: any;\r\n let subPageFacade: any;\r\n\r\n val.forEach(v => {\r\n let item: any = v;\r\n if (item.schemaName === 'menu-item') {\r\n if (item && !isExcu1) {\r\n const newMenuItemData: any = {};\r\n const ids: string[] = [];\r\n ids.push(item.id);\r\n this.dataParser.putData(newMenuItemData, FieldsName.CODE, this.dataParser.pullData(content, 'code'));\r\n this.dataParser.putData(newMenuItemData, FieldsName.PAGE, content.id);\r\n this.dataParser.putData(newMenuItemData, FieldsName.PARENT_MENU_ITEM, ids);\r\n this.dataParser.putData(newMenuItemData, FieldsName.SCHEMA_NAME, this.schemaDefinition.name);\r\n this.dataParser.putData(newMenuItemData, FieldsName.INDEX, 0);\r\n isExcu1 = true;\r\n menuItemFacadeSub = menuItemFacade.createAsPublished(newMenuItemData);\r\n this.spinnerService.hide();\r\n }\r\n } else if (item.schemaName === 'page') {\r\n if (item && !isExcu) {\r\n const newSchemaPageData: any = {};\r\n this.dataParser.putData(newSchemaPageData, FieldsName.CODE, content.id);\r\n this.dataParser.putData(newSchemaPageData, FieldsName.PAGE_ID, item.id);\r\n this.dataParser.putData(newSchemaPageData, FieldsName.CONTENT_TYPE, this.schemaDefinition.name);\r\n this.dataParser.putData(newSchemaPageData, FieldsName.CONTENT_ID, content.id);\r\n this.dataParser.putData(newSchemaPageData, FieldsName.INDEX, 0);\r\n subPageFacade = this.schemaPageFacade.createAsPublished(newSchemaPageData);\r\n isExcu = true;\r\n }\r\n\r\n };\r\n });\r\n this.spinnerService.hide();\r\n combineLatest([menuItemFacadeSub, subPageFacade]).subscribe(() => {\r\n if (this.reloadOnUpdate) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.router.navigateByUrl(`${currentBaseUrl}/${newContent.data.code.iv}`);\r\n });\r\n } else {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n }\r\n });\r\n\r\n });\r\n this.executeContentChanged(content);\r\n } else {\r\n this.isNew = false;\r\n this.executeContentChanged(content);\r\n\r\n this.spinnerService.hide();\r\n if (this.reloadOnUpdate) {\r\n this.router.navigateByUrl(`${currentBaseUrl}/${newContent.data.code.iv}`);\r\n } else {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n }\r\n }\r\n });\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n finalizeUpdate(newContent: DynamicContentModel) {\r\n if (this.schemaDefinition.category === AppSchemaCategory.SCHEMA_AS_A_PAGE) {\r\n\r\n const urls = new Array();\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n urls.push(this.dataParser.pullData(newContent, 'url', language));\r\n }\r\n\r\n const urlsDistinct = [...new Set(urls)];\r\n if (urls.length > urlsDistinct.length) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_NOT_DISTINCT, c.FAILED_TITLE, 10000);\r\n this.spinnerService.hide();\r\n });\r\n return false;\r\n }\r\n let startWithSlash: boolean = true;\r\n urls.forEach(url => {\r\n if (!url.trim().startsWith('/')) {\r\n startWithSlash = false;\r\n return;\r\n }\r\n });\r\n\r\n if (!startWithSlash) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_START_SLASH, c.FAILED_TITLE, 10000);\r\n this.spinnerService.hide();\r\n });\r\n return false;\r\n }\r\n\r\n\r\n let validateBatch: Observable[] = []\r\n\r\n for (const lg of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n let filterList: object[] = new Array();\r\n\r\n const allVersionParm = new FilterPagination();\r\n allVersionParm.from = 0;\r\n allVersionParm.to = 1;\r\n allVersionParm.filter = '';\r\n allVersionParm.orderBy = 'lastModified descending';\r\n\r\n\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n let data: any = {};\r\n data = {\r\n path: `data.url.${lg}`,\r\n op: 'eq',\r\n value: this.dataParser.pullData(newContent, 'url', language)\r\n };\r\n\r\n filterList.push(data);\r\n }\r\n\r\n let orFilter: any = {};\r\n orFilter = {\r\n or: filterList\r\n }\r\n\r\n validateBatch.push(this.currentContentsFacade.validateUrl(allVersionParm, ESchemaContentStatus.All, orFilter, this.selectedContent));\r\n }\r\n\r\n forkJoin(validateBatch).subscribe(totalArr => {\r\n\r\n let total: number = 0;\r\n\r\n for (const num of totalArr) {\r\n total += num.valueOf();\r\n }\r\n\r\n if (total > 0) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_TAKEN, c.FAILED_TITLE);\r\n this.spinnerService.hide();\r\n });\r\n return;\r\n }\r\n\r\n const subscription = this.currentContentsFacade.update(newContent.id, newContent.data).subscribe(() => {\r\n this.isNew = false;\r\n if (newContent.data.code.iv !== this.selectedContent.data.code.iv) {\r\n const urlTree = this.router.parseUrl(this.router.url);\r\n const currentBaseUrl = this.getUrl(urlTree);\r\n\r\n if (this.reloadOnUpdate) {\r\n this.router.navigateByUrl(`${currentBaseUrl}/${newContent.data.code.iv}`);\r\n return;\r\n }\r\n }\r\n this.selectedContent = newContent;\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_CONTENT_SUCCESS, c.SUCCESS_TITLE);\r\n this.resetImageElements();\r\n let setPublished: boolean = false;\r\n if (this.publishFormGroup.touched) {\r\n if (this.publishFormGroup.value.scheduleJob && this.publishFormGroup.value.scheduleJob.dueTime) {\r\n this.currentStatus = 'Published'\r\n }\r\n }\r\n this.setJobStatusFormGroup(this.selectedContent);\r\n this.spinnerService.hide();\r\n });\r\n this.executeContentChanged(newContent);\r\n });\r\n this.subscriptions.push(subscription);\r\n });\r\n\r\n } else {\r\n if (!this.validatePatterns(newContent)) {\r\n this.spinnerService.hide();\r\n return false;\r\n }\r\n\r\n const subscription = this.currentContentsFacade.update(newContent.id, newContent.data).subscribe(() => {\r\n if (this.reloadOnUpdate && newContent.data.code.iv !== this.selectedContent.data.code.iv) {\r\n const urlTree = this.router.parseUrl(this.router.url);\r\n const currentBaseUrl = this.getUrl(urlTree);\r\n this.router.navigateByUrl(`${currentBaseUrl}/${newContent.data.code.iv}`);\r\n return;\r\n }\r\n\r\n this.selectedContent = newContent;\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.spinnerService.hide();\r\n if (this.imageChange) {\r\n this.uiNotificationService.success(c.UPDATE_CONTENT_SUCCESS, c.SUCCESS_TITLE);\r\n this.reloadCurrentRoute();\r\n } else {\r\n this.uiNotificationService.success(c.UPDATE_CONTENT_SUCCESS, c.SUCCESS_TITLE, 500);\r\n }\r\n });\r\n this.executeContentChanged(newContent);\r\n },\r\n err => {\r\n let msg = '';\r\n for (const errorDetail of err.error.details) {\r\n msg += errorDetail + '\\n';\r\n }\r\n this.resourceFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(msg, c.ERROR);\r\n });\r\n this.spinnerService.hide();\r\n });\r\n this.subscriptions.push(subscription);\r\n }\r\n return true;\r\n }\r\n\r\n resetImageElements() {\r\n this.deletedAssets = [];\r\n this.newImage = [];\r\n }\r\n\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n closeModal(reload = false) {\r\n this.fieldReferenceModel = null;\r\n if (this.modalRef) {\r\n this.modalRef.hide();\r\n } else {\r\n this.modalService.hide();\r\n }\r\n }\r\n\r\n confirmDeleteContent() {\r\n\r\n if (this.selectedContent && Validation.isValidGuid(this.selectedContent.id)) {\r\n\r\n // Validate if content is used by a page\r\n let validationBatch: Observable[] = [];\r\n\r\n // Page content\r\n const pageContentFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_CONTENT_SCHEMA_NAME);\r\n const contentFilter = {\r\n path: 'data.contentid.iv',\r\n op: 'eq',\r\n value: this.selectedContent.id\r\n }\r\n validationBatch.push(pageContentFacade.getByObject(contentFilter, ESchemaContentStatus.All));\r\n\r\n // template\r\n const pageFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_SCHEMA_NAME);\r\n const templateFilter = {\r\n path: 'data.template.iv',\r\n op: 'eq',\r\n value: this.selectedContent.id\r\n }\r\n validationBatch.push(pageFacade.getByObject(templateFilter, ESchemaContentStatus.All));\r\n\r\n // layout\r\n const layoutFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_SCHEMA_NAME);\r\n const layoutFilter = {\r\n path: 'data.layout.iv',\r\n op: 'eq',\r\n value: this.selectedContent.id\r\n }\r\n validationBatch.push(layoutFacade.getByObject(layoutFilter, ESchemaContentStatus.All));\r\n\r\n\r\n const forkSusbcription = forkJoin(validationBatch).subscribe(contents => {\r\n let notValid = false;\r\n contents.forEach(c => {\r\n if (c.length > 0) {\r\n notValid = true;\r\n }\r\n });\r\n\r\n if (notValid) {\r\n this.closeModal();\r\n const subscription = this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.CONTENT_BEING_USED, c.FAILED_TITLE);\r\n this.spinnerService.hide();\r\n this.subscriptions.push(subscription);\r\n });\r\n return;\r\n }\r\n\r\n let draftStatus: boolean = true;\r\n if (this.schemaDefinition.category === AppSchemaCategory.SCHEMA_AS_A_PAGE) {\r\n const schemaPageFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.SCHEMA_PAGE_SCHEMA_NAME);\r\n schemaPageFacade.getByParentId(this.selectedContent.id, 'contentid').subscribe(schemaPages => {\r\n schemaPages.forEach(sPage => {\r\n draftStatus = sPage.status.toLowerCase() === 'draft';\r\n schemaPageFacade.remove(sPage.id, draftStatus).subscribe();\r\n });\r\n });\r\n\r\n const menuItemFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.MENU_ITEM_SCHEMA_NAME);\r\n menuItemFacade.getByParentId(this.selectedContent.id, 'page').subscribe(menuItems => {\r\n menuItems.forEach(menuItem => {\r\n draftStatus = menuItem.status.toLowerCase() === 'draft';\r\n menuItemFacade.remove(menuItem.id, draftStatus).subscribe();\r\n });\r\n });\r\n }\r\n\r\n draftStatus = this.selectedContent.status.toLowerCase() === 'draft';\r\n const subscription = this.currentContentsFacade.remove(this.selectedContent.id, draftStatus).subscribe(() => {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n const urlTree = this.router.parseUrl(this.router.url);\r\n const currentBaseUrl = this.getUrl(urlTree);\r\n this.router.navigateByUrl(`${currentBaseUrl}`);\r\n });\r\n });\r\n this.subscriptions.push(subscription);\r\n this.closeModal();\r\n\r\n });\r\n\r\n this.subscriptions.push(forkSusbcription);\r\n }\r\n }\r\n\r\n // Currently still not executed. this may be risky and not sure if needed\r\n removeReferences(refId: ID) {\r\n\r\n // get all schemas of category content\r\n let contentSchemas = this.dynamicSchemaFacto.getSchemasMetadataByCategory(AppSchemaCategory.CONTENT_SCHEMAS);\r\n this.removeSelectedSchema(contentSchemas, refId);\r\n\r\n contentSchemas = this.dynamicSchemaFacto.getSchemasMetadataByCategory(AppSchemaCategory.SCHEMA_AS_A_PAGE);\r\n this.removeSelectedSchema(contentSchemas, refId);\r\n }\r\n\r\n removeSelectedSchema(contentSchemas: any, refId: ID) {\r\n contentSchemas.subscribe(schemas => {\r\n for (const schema of schemas) {\r\n const schemaFacade = this.dynamicSchemaFacto.getDynamicSchemaFacade(schema.name);\r\n\r\n // Get fields from schema definition and loop\r\n schemaFacade.getSchemaDefinition().subscribe(schemaDef => {\r\n for (const field of schemaDef.fields) {\r\n\r\n // verify if field references the deleted content \r\n if (field.properties.fieldType === \"References\" && field.properties.schemaIds[0] === this.schemaDefinition.id) {\r\n const contentsFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(schemaDef.name);\r\n let filterObj = {\r\n path: `data.${field.name}.iv`,\r\n op: \"contains\",\r\n value: refId\r\n }\r\n // get the content and delete reference if any\r\n contentsFacade.getByObject(filterObj, ESchemaContentStatus.All).subscribe(contents => {\r\n if (contents.length > 0) {\r\n for (const content of contents) {\r\n let dataClone = this.clone(content.data);\r\n const idx = dataClone[field.name].iv.findIndex(x => x === refId);\r\n if (idx >= 0) {\r\n dataClone[field.name].iv.splice(idx, 1);\r\n contentsFacade.update(content.id, dataClone).subscribe(\r\n );\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n private currentTime() {\r\n var current = new Date();\r\n return `${current.getHours().toString()}:${current.getMinutes().toString()}:${current.getSeconds()}:${current.getMilliseconds()}`\r\n }\r\n\r\n private confirmDeleteDrafts() {\r\n const subscription = this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.deleteDraft();\r\n });\r\n this.closeModal();\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n redirectBase() {\r\n const urlTree = this.router.parseUrl(this.router.url);\r\n const currentBaseUrl = this.getUrl(urlTree);\r\n this.router.navigateByUrl(`${currentBaseUrl}`);\r\n }\r\n\r\n redirectMasterPage(contentCode: string) {\r\n var baseUrl = 'contents';\r\n if (this.weAreInContents) {\r\n baseUrl = 'page';\r\n }\r\n this.router.navigateByUrl(`${baseUrl}/${this.schemaDefinition.name}/${contentCode}`);\r\n }\r\n\r\n switchModeDratLive(event) {\r\n this.draftMode = event.srcElement.checked;\r\n\r\n this.currentContentsFacade.get(this.selectedContent.id, this.draftMode).subscribe(content => {\r\n this.selectedContent = content;\r\n\r\n if (this.draftMode) {\r\n if (this.draftMode && !this.selectedContent.newStatus) {\r\n this.createDraft();\r\n } else {\r\n this.initData(false);\r\n this.initEditionForm();\r\n }\r\n } else {\r\n this.draftMode = false;\r\n this.initData(false);\r\n this.initEditionForm();\r\n }\r\n });\r\n }\r\n\r\n reloadPage(draftMode: boolean) {\r\n this.draftMode = draftMode;\r\n\r\n if (this.selectedContent.scheduleJob) {\r\n this.deleteAndCreateDraft()\r\n } else {\r\n this.currentContentsFacade.get(this.selectedContent.id, this.draftMode).subscribe(content => {\r\n this.selectedContent = content;\r\n\r\n if (this.draftMode) {\r\n this.createDraft();\r\n this.currentStatus = 'Draft';\r\n this.dataParser.putData(this.selectedContent.data, \"publishdatetime\", null);\r\n this.selectedContent.scheduleJob = null\r\n this.setJobStatusFormGroup(this.selectedContent);\r\n } else {\r\n this.draftMode = false;\r\n this.setJobStatusFormGroup(this.selectedContent);\r\n }\r\n });\r\n }\r\n }\r\n\r\n private publish() {\r\n let publishStatus = Statuses.PUBLISHED.name;\r\n if (publishStatus === this.currentStatus) {\r\n this.notify(this.currentStatus, false);\r\n return false;\r\n }\r\n\r\n let publishDate: string;\r\n let updateDate: string;\r\n\r\n switch (publishStatus) {\r\n case Statuses.PUBLISHED.name:\r\n let dueTime = this.publishFormGroup.value.scheduleJob.dueTime;\r\n if (!dueTime) {\r\n dueTime = null;\r\n publishDate = null;\r\n updateDate = null;\r\n } else {\r\n const currentDate = new Date(Date.now());\r\n let dueTimeTemp = this.publishFormGroup.value.scheduleJob.dueTime;\r\n let dueTimeDate = new SquidexDate(dueTimeTemp);\r\n if (dueTimeDate < currentDate) {\r\n let now = new Date();\r\n publishDate = new SquidexDate(now).formatUtc();\r\n } else {\r\n let dt = dueTimeDate;\r\n publishDate = new SquidexDate(dt).formatUtc();\r\n }\r\n }\r\n\r\n this.currentContentsFacade.updateStatus(this.selectedContent.id, publishStatus, publishDate)\r\n .subscribe(content => {\r\n const tempContent = this.clone(content);\r\n this.selectedContent = content;\r\n if (content.newStatus) {\r\n this.currentStatus = content.newStatus;\r\n } else {\r\n this.currentStatus = content.status;\r\n }\r\n this.draftMode = false;\r\n this.draftVersionExist = false;\r\n this.scheduledJob = content.scheduleJob;\r\n if (!publishDate) {\r\n let now = new Date();\r\n publishDate = new SquidexDate(now).formatUtc();\r\n } else {\r\n let dt = new SquidexDate(publishDate);\r\n publishDate = new SquidexDate(dt).formatUtc();\r\n\r\n }\r\n this.publishDate = this.squidexTool.utcToDateString(publishDate);\r\n this.dataParser.putData(tempContent.data, \"publishdatetime\", publishDate);\r\n\r\n this.updateStatusAndStatusColor(content.status);\r\n\r\n this.publishMode = true;\r\n this.currentContentsFacade.update(this.selectedContent.id, tempContent.data).subscribe(content => {\r\n this.setJobStatusFormGroup(content);\r\n this.publishMode = false;\r\n });\r\n this.currentStatus = 'Published';\r\n this.notify(this.currentStatus);\r\n });\r\n\r\n break;\r\n case Statuses.DRAFT.name:\r\n this.currentContentsFacade.updateStatus(this.selectedContent.id, this.publishFormGroup.value.status, null)\r\n .subscribe(content => {\r\n this.selectedContent = content;\r\n if (content.newStatus) {\r\n this.currentStatus = content.newStatus;\r\n } else {\r\n this.currentStatus = content.status;\r\n }\r\n this.scheduledJob = content.scheduleJob;\r\n this.updateStatusAndStatusColor(content.status);\r\n this.notify(this.currentStatus);\r\n });\r\n break;\r\n }\r\n return false;\r\n }\r\n\r\n private notify(status: string, isSuccess: boolean = true): void {\r\n if (isSuccess) {\r\n this.currentContentsFacade.translate('T.STATUS_UPDATE', { currentStatus: status }).subscribe(msg => {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(msg, c.SUCCESS_TITLE, 10000);\r\n });\r\n });\r\n } else {\r\n this.currentContentsFacade.translate('T.STATUS_ERROR', { currentStatus: status }).subscribe(msg => {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(msg, c.FAILED_TITLE, 10000);\r\n });\r\n });\r\n }\r\n }\r\n\r\n createDraft() {\r\n this.currentContentsFacade.createDraft(this.selectedContent.id).subscribe(p => {\r\n this.draftMode = true;\r\n this.currentStatus = 'Draft';\r\n this.selectedContent = p;\r\n });\r\n }\r\n\r\n deleteDraft() {\r\n this.currentContentsFacade.removeDraft(this.selectedContent.id).subscribe(() => {\r\n this.draftVersionExisted();\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n this.setJobStatusFormGroup(this.selectedContent);\r\n });\r\n });\r\n }\r\n\r\n deleteAndCreateDraft() {\r\n this.currentContentsFacade.get(this.selectedContent.id, this.draftMode).subscribe(content => {\r\n this.currentContentsFacade.removeDraft(content.id).subscribe(\r\n () => {\r\n let cloneContent = this.clone(content);\r\n if (cloneContent.scheduleJob)\r\n delete cloneContent.scheduleJob;\r\n this.draftVersionExisted();\r\n this.selectedContent = cloneContent;\r\n this.createDraft();\r\n this.currentStatus = 'Draft';\r\n this.dataParser.putData(this.selectedContent.data, \"publishdatetime\", null);\r\n this.scheduledJob = null;\r\n this.setJobStatusFormGroup(this.selectedContent);\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n }, // May receive an error but we still try to create draft\r\n err => {\r\n let cloneContent = this.clone(content);\r\n if (cloneContent.scheduleJob)\r\n delete cloneContent.scheduleJob;\r\n this.draftVersionExisted();\r\n this.selectedContent = cloneContent;\r\n this.createDraft();\r\n this.currentStatus = 'Draft';\r\n this.dataParser.putData(this.selectedContent.data, \"publishdatetime\", null);\r\n this.scheduledJob = null;\r\n this.setJobStatusFormGroup(this.selectedContent);\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n },\r\n () => console.log('Observer got a complete notification')\r\n );\r\n\r\n });\r\n }\r\n\r\n newAsset(files: any) {\r\n this.newImage.forEach((image, index) => {\r\n if (image.fieldName === files.fieldName) {\r\n this.newImage.splice(index, 1);\r\n }\r\n });\r\n this.newImage.push(this.clone(files));\r\n }\r\n\r\n deleteAsset(file: any) {\r\n let resultIndex: any = this.deletedAssets.indexOf(e => e.fieldName === file.fieldName)\r\n\r\n if (resultIndex >= 0) {\r\n this.deletedAssets[resultIndex].assets.push(file.assets)\r\n } else {\r\n if (file.assets) {\r\n this.deletedAssets.push(file);\r\n }\r\n }\r\n\r\n this.newImage.forEach((image, index) => {\r\n if (image.fieldName === file.fieldName) {\r\n this.newImage.splice(index, 1);\r\n }\r\n });\r\n\r\n }\r\n\r\n validatePatterns(content: DynamicContentModel) {\r\n\r\n let isValid: boolean = true;\r\n const pattern = /^(\\/|http:\\/\\/|https:\\/\\/)/;\r\n\r\n let validateUrl: string = this.dataParser.pullData(content, 'originalurl');\r\n if (validateUrl) {\r\n isValid = pattern.test(validateUrl);\r\n }\r\n\r\n if (isValid) {\r\n validateUrl = this.dataParser.pullData(content, 'redirectionurl');\r\n if (validateUrl) {\r\n isValid = pattern.test(validateUrl);\r\n }\r\n }\r\n\r\n if (!isValid) {\r\n this.currentContentsFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_PATTERN_ERROR, 'Error', 5000);\r\n this.spinnerService.hide();\r\n });\r\n }\r\n\r\n return isValid;\r\n }\r\n\r\n updateForm(event: any) {\r\n this.editionFormGroup.value[event.field] = event.values;\r\n const content = this.clone(this.selectedContent);\r\n content.data[event.field] = { iv: event.values.map(v => v.item_id) };\r\n this.selectedContent = content;\r\n this.updateContent();\r\n }\r\n\r\n navigateToSchemaDefinition() {\r\n if (!this.schemaDefinition) {\r\n this.router.navigate(['/schemas/' + this.schemaDefinition.name]);\r\n }\r\n }\r\n\r\n redirectToClone() {\r\n this.contentInternalService.cloneContent(this.selectedContent.id, this.schemaDefinition.name);\r\n }\r\n\r\n copyContentCode() {\r\n const selBox = document.createElement('textarea');\r\n selBox.style.position = 'fixed';\r\n selBox.style.left = '0';\r\n selBox.style.top = '0';\r\n selBox.style.opacity = '0';\r\n selBox.value = this.selectedContent.data.code.iv;\r\n document.body.appendChild(selBox);\r\n selBox.focus();\r\n selBox.select();\r\n document.execCommand('copy');\r\n document.body.removeChild(selBox);\r\n\r\n this.uiNotificationService.successAsync(this.tc('COPY') as Observable, this.t('SUCCESS_TITLE') as Observable);\r\n }\r\n\r\n isReferenceField(field: Field) {\r\n if (!field.properties) {\r\n return false;\r\n }\r\n return field.properties.isReferenceField || field.properties.fieldType === \"References\";\r\n }\r\n\r\n executeContentChanged(content: DynamicContentModel) {\r\n if (!content) return;\r\n\r\n let label: string;\r\n\r\n if (content.data.Name) {\r\n label = content.data.Name[this.siteSettingFacade.getCurrentLanguage()];\r\n if (!label) {\r\n label = content.data.code.iv;\r\n }\r\n } else {\r\n label = content.data.code.iv;\r\n }\r\n\r\n const v = {\r\n Id: content.id,\r\n Code: content.data.code.iv,\r\n Label: label\r\n };\r\n\r\n let t = {\r\n value: v,\r\n fieldReferenceModel: null,\r\n field: null\r\n };\r\n\r\n if (typeof this.fieldReferenceModel !== 'undefined') {\r\n t.fieldReferenceModel = this.fieldReferenceModel\r\n }\r\n\r\n if (typeof this.referenceFieldReferenceModel !== 'undefined') {\r\n t.field = this.referenceFieldReferenceModel.field\r\n }\r\n\r\n\r\n if (this.onContentChanged) {\r\n this.onContentChanged.emit(t);\r\n }\r\n\r\n if (this.referenceFieldReferenceModel) {\r\n const control = this.referenceFieldReferenceModel.control as FieldControlComponent;\r\n if (control) {\r\n\r\n const n = control.referenceItems.concat({\r\n item_id: content.id,\r\n item_text: label\r\n });\r\n\r\n n.sort(function (a, b) {\r\n return a.item_text.localeCompare(b.item_text);\r\n });\r\n\r\n control.referenceItems = n;\r\n }\r\n }\r\n\r\n if (t.field) {\r\n this.editionFormGroup.value[t.field.name] = t.value.Id;\r\n }\r\n\r\n this.closeModal();\r\n }\r\n\r\n openFieldReferenceEditionModal(template: TemplateRef, field: Field) {\r\n if (!field) {\r\n return;\r\n }\r\n\r\n this.field = new FieldReferenceModel();\r\n this.fieldReferenceModel = new FieldReferenceModel();\r\n this.fieldReferenceModel.field = field;\r\n this.fieldReferenceModel.schemaId = field.properties.schemaIds[0];\r\n this.fieldReferenceModel.selectedContent = this.selectedContent;\r\n this.fieldReferenceModel.referenceFieldValues = this.referenceFieldValues;\r\n\r\n this.fieldReferenceModelParent = new FieldReferenceModel();\r\n this.fieldReferenceModelParent.field = this.fieldReferenceModel.field;\r\n this.fieldReferenceModelParent.schemaId = this.fieldReferenceModel.schemaId;\r\n this.fieldReferenceModelParent.selectedContent = this.fieldReferenceModel.selectedContent;\r\n this.fieldReferenceModelParent.referenceFieldValues = this.fieldReferenceModel.referenceFieldValues;\r\n\r\n\r\n\r\n if (this.fieldControls) {\r\n this.fieldReferenceModel.control = this.fieldControls.find(v => v.field.name === field.name);\r\n }\r\n\r\n const sub = this.schemasFactory.getAllSchemas().subscribe(schemas => {\r\n const schema = schemas.find(v => v.id === this.fieldReferenceModel.schemaId);\r\n\r\n const facade = this.dynamicSchemaFactory.getDynamicSchemaFacade(schema.name);\r\n\r\n const sub2 = facade.getSchemaDefinition().subscribe(schemaDefinition => {\r\n this.fieldReferenceModel.schemaDefinition = schemaDefinition;\r\n\r\n const sub3 = this.metadataFacade.getBySchemaId(this.fieldReferenceModel.schemaId)\r\n .subscribe(v => {\r\n const sub5 = this.referenceContentService.generateContentList(schemaDefinition).subscribe(val => {\r\n this.fieldReferenceModel.referenceFieldValues = val;\r\n this.fieldReferenceModel.schemaMetadata = v;\r\n\r\n this.zone.run(() => {\r\n this.modalRef = this.modalService.show(template, { class: 'modal-lg modal-styles' });\r\n });\r\n })\r\n this.subscriptions.push(sub5);\r\n });\r\n this.subscriptions.push(sub3);\r\n });\r\n\r\n this.subscriptions.push(sub2);\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n\r\n }\r\n\r\n allowEditorEditing(field) {\r\n if (this.hideFieldReferenceModelEditor) {\r\n return false;\r\n }\r\n return this.isReferenceField(field) && (this.userIsDev || this.userIsOwner || this.userIsEditor || this.userIsReadWrite);\r\n }\r\n\r\n fromChild(refValue) {\r\n if (!refValue) {\r\n return;\r\n }\r\n\r\n let currentVal = this.editionFormGroup.get(refValue.field.name).value;\r\n\r\n // reset reference field values to parent values\r\n this.fieldReferenceModel.field = this.fieldReferenceModelParent.field;\r\n this.fieldReferenceModel.schemaId = this.fieldReferenceModelParent.schemaId;\r\n this.fieldReferenceModel.selectedContent = this.fieldReferenceModelParent.selectedContent;\r\n this.fieldReferenceModel.referenceFieldValues = this.fieldReferenceModelParent.referenceFieldValues;\r\n\r\n // Add new value to reference field array\r\n if (Object.keys(this.fieldReferenceModel.referenceFieldValues).length > 0) {\r\n if (Array.isArray(refValue.value)) {\r\n this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name] =\r\n this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name].concat(refValue.value);\r\n } else {\r\n this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name].push(refValue.value);\r\n }\r\n\r\n } else {\r\n this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name] = this.fieldReferenceModel.referenceFieldValues[this.fieldReferenceModel.field.name];\r\n }\r\n\r\n // Diaplay new value to select input\r\n const itm = {\r\n item_id: refValue.value.Id,\r\n item_text: refValue.value.Code,\r\n };\r\n\r\n if (refValue.field.properties.editor === 'Dropdown') {\r\n currentVal = [itm];\r\n } else {\r\n if (Array.isArray(currentVal)) {\r\n currentVal.push(itm);\r\n } else {\r\n currentVal = [itm];\r\n }\r\n }\r\n\r\n this.editionFormGroup.get(refValue.field.name).setValue(currentVal);\r\n }\r\n\r\n private getContentDefinition(): any {\r\n\r\n const contentType = this.dataParser.pullData(this.selectedContent, FieldsName.CONTENT_TYPE, 'iv');\r\n const contentId = this.dataParser.pullData(this.selectedContent, FieldsName.ID, 'iv');\r\n const pageContentIsModified = false; // this.dataParser.pullData(this.selectedContent, FieldsName.ISMODIFIED, 'iv');\r\n let contentFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(contentType);\r\n\r\n contentFacade.get(contentId, this.isDraft).subscribe(articleContent => {\r\n this.contentDefinition = articleContent;\r\n\r\n this.title = this.getContentDefinitionCode();\r\n this.isModified = pageContentIsModified;\r\n this.lastModified = contentFacade.getLastModifiedDate(this.contentDefinition);\r\n this.contentType = contentType;\r\n this.pageContentDescription.emit(\r\n {\r\n title: this.title,\r\n isModified: this.isModified,\r\n lastModified: this.lastModified,\r\n isOpen: this.isOpen,\r\n contentType: this.contentType\r\n });\r\n contentFacade.getSchema().subscribe(articleSchema => {\r\n this.referenceContentService.generateContentList(articleSchema).subscribe((contents) => {\r\n this.referenceFieldValues = contents;\r\n });\r\n this.contentSchema = articleSchema;\r\n this.contentFields = articleSchema.fields.filter(field => !this.contentDefinitionHiddenFields.includes(field.name));\r\n this.createContentDefinitionForm(\r\n this.contentFields,\r\n articleContent,\r\n contentFacade);\r\n });\r\n });\r\n\r\n return null;\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ArticleCategoryStore } from './article-category.store';\r\nimport { ArticleCategoryQuery } from './article-category.query';\r\nimport { BaseFacade } from \"../base/base.facade\";\r\nimport { ArticleCategoryService } from './article-category.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleCategoryFacade extends BaseFacade {\r\n\r\n constructor(\r\n articleTypeService: ArticleCategoryService,\r\n articleTypeStore: ArticleCategoryStore,\r\n articleTypeQuery: ArticleCategoryQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(articleTypeService,\r\n articleTypeStore,\r\n articleTypeQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade('article-category'),\r\n translateService,\r\n 'article-category-facade'\r\n );\r\n }\r\n\r\n\r\n}\r\n","import { TranslateService } from '@ngx-translate/core';\r\nimport { Observable, Subscription, of } from 'rxjs';\r\nimport { OnDestroy, Input, HostListener, Directive } from '@angular/core';\r\nimport { Field, SquidexDate, Content, BaseFacade, DataParser, FormValidationsService, LanguageModel } from \"../services/\";\r\nimport { FormControl, ValidatorFn, Validators, FormGroup } from \"@angular/forms\";\r\nimport { SiteSettingModel } from '../services/akita/index';\r\nimport { environment } from '../../environments/environment.prod';\r\nimport { map } from 'rxjs/operators';\r\nimport { AppToken } from '../models/app-token';\r\nimport cloneDeep from 'lodash.clonedeep';\r\n\r\nconst EMPTY = '';\r\n\r\ndeclare var CKEDITOR: any;\r\n\r\nexport abstract class BaseComponent implements OnDestroy {\r\n [x: string]: any;\r\n\r\n @Input()\r\n siteSetting: Observable;\r\n\r\n pageTitle: string;\r\n scrHeight: any;\r\n scrWidth: any;\r\n\r\n protected subscriptions: Subscription[];\r\n protected readonly statusDraft = 'Draft';\r\n protected readonly statusPublished = 'Published';\r\n protected language: string;\r\n protected readonly dParser: DataParser;\r\n private translateContext: string;\r\n\r\n currentPageNumber: number = 0;\r\n paginateSize: number = AppToken.CONTENTS_ITEMS_PER_PAGE;\r\n contentCount: number;\r\n filterValue: string = '';\r\n\r\n siteLabelElem: any = document.getElementById('previewSiteLabel');\r\n siteUrlElem: any = document.getElementById('previewSiteUrl');\r\n pageUrlElement: any = document.getElementById('currentPreviewUrl');\r\n\r\n\r\n protected constructor(\r\n protected readonly translateService: TranslateService) {\r\n this.getScreenSize();\r\n this.dParser = new DataParser(null);\r\n this.subscriptions = [];\r\n\r\n this.pageUrlElement = document.getElementById('currentPreviewUrl');\r\n this.siteUrlElem = document.getElementById('previewSiteUrl');\r\n this.siteLabelElem = document.getElementById('previewSiteLabel');\r\n }\r\n\r\n protected setTranslateContext(context: string): void {\r\n if (context) {\r\n context = context.toLowerCase().replace('component', EMPTY);\r\n this.translateContext = `COMPONENTS.${context}`.toUpperCase();\r\n }\r\n }\r\n\r\n protected clone(value: object): any {\r\n return cloneDeep(value);\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n getScreenSize(event?) {\r\n this.scrHeight = window.innerHeight;\r\n this.scrWidth = window.innerWidth;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(subscription => subscription.unsubscribe());\r\n }\r\n //translate global/general\r\n t(key?: string, interpolateParams?: Object): Observable {\r\n if (!key) {\r\n return this.translateService.get('T', interpolateParams);\r\n }\r\n return this.translateService.get(`T.${key}`, interpolateParams);\r\n }\r\n\r\n //translate with context\r\n tc(key?: string, interpolateParams?: Object): Observable {\r\n if (!key) {\r\n return this.translateService.get(`T.${this.translateContext}`, interpolateParams);\r\n }\r\n return this.translateService.get(`T.${this.translateContext}.${key}`, interpolateParams);\r\n }\r\n\r\n //translate with schema name and return key if not found\r\n ts(key?: string, schemaName?: string, interpolateParams?: Object): Observable {\r\n let context = '';\r\n if (!key) {\r\n return of('');\r\n }\r\n\r\n let getKey: string;\r\n\r\n if (key.includes('.')) {\r\n getKey = `T.COMPONENTS.${key}`;\r\n } else {\r\n if (schemaName) {\r\n context = schemaName;\r\n } else if (this.selectedContent) {\r\n context = this.selectedContent.schemaName;\r\n } else if (this.translateContext) {\r\n context = this.translateContext;\r\n } else {\r\n return of(key);\r\n }\r\n\r\n getKey = `T.COMPONENTS.${context.replace('COMPONENTS.', '').toUpperCase()}.${key.replace(' ', '_').toUpperCase()}`;\r\n }\r\n\r\n return this.translateService.get(getKey, interpolateParams).pipe(map((lang) => {\r\n if (lang === getKey) {\r\n lang = key;\r\n }\r\n return lang;\r\n })) as Observable;\r\n }\r\n\r\n //translate with schema name field name if not found\r\n tsl(key?: string, schemaName?: string, interpolateParams?: Object, fieldName?: string): Observable {\r\n let context = '';\r\n if (!key) {\r\n if (fieldName) {\r\n return of(fieldName);\r\n } else {\r\n return of('');\r\n }\r\n }\r\n\r\n let getKey: string;\r\n\r\n if (key.includes('.')) {\r\n getKey = `T.COMPONENTS.${key}`;\r\n } else {\r\n if (schemaName) {\r\n context = schemaName;\r\n } else if (this.selectedContent) {\r\n context = this.selectedContent.schemaName;\r\n } else if (this.translateContext) {\r\n context = this.translateContext;\r\n } else {\r\n return of(key);\r\n }\r\n\r\n getKey = `T.COMPONENTS.${context.replace('COMPONENTS.', '').toUpperCase()}.${key.replace(' ', '_').toUpperCase()}`;\r\n }\r\n\r\n return this.translateService.get(getKey, interpolateParams).pipe(map((lang) => {\r\n if (lang === getKey) {\r\n lang = key;\r\n }\r\n return lang;\r\n })) as Observable;\r\n }\r\n\r\n\r\n translateText(text: string): Observable {\r\n if (!text) {\r\n return of(text);\r\n }\r\n const textParts = text.split('_');\r\n if (textParts.length === 2) {\r\n return this.t(textParts[1].toUpperCase()).pipe(\r\n map(v => {\r\n if (v) {\r\n return ` (${v})`;\r\n }\r\n return '';\r\n })\r\n );\r\n } else {\r\n return of('');\r\n }\r\n\r\n\r\n }\r\n\r\n getCultureName(code: string): Observable {\r\n if (!code) {\r\n return of(code);\r\n }\r\n return this.t(code.toUpperCase()).pipe(\r\n map(v => {\r\n if (!v || v.toString().includes('T.')) {\r\n v = code;\r\n }\r\n return v;\r\n })\r\n );\r\n }\r\n\r\n getLanguageName(code: string): Observable {\r\n if (!code) {\r\n return of(code);\r\n }\r\n return this.t(code.toUpperCase()).pipe(\r\n map(v => {\r\n if (!v) {\r\n v = code;\r\n }\r\n return v.toString().replace('t.', '');\r\n })\r\n );\r\n }\r\n\r\n getCurrentCulture(): string {\r\n return this.translateService.currentLang;\r\n }\r\n\r\n getDefaultCulture(): string {\r\n return this.translateService.defaultLang;\r\n }\r\n\r\n getLanguageCode(languageModel: LanguageModel): string {\r\n\r\n if (!languageModel || !languageModel.data) return '';\r\n return languageModel.data.code.iv;\r\n }\r\n\r\n fixFieldValue(field: Field, value: any): any {\r\n if (field.properties.editor === \"DateTime\") {\r\n return new SquidexDate(value).format();\r\n } else if (field.properties.editor === \"Dropdown\" && !Array.isArray(value)) {\r\n return [value];\r\n }\r\n return value;\r\n }\r\n\r\n protected validateAllFormFields(formGroup: FormGroup) {\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control = formGroup.get(field);\r\n if (control instanceof FormControl) {\r\n control.markAsTouched({ onlySelf: true });\r\n } else if (control instanceof FormGroup) {\r\n this.validateAllFormFields(control);\r\n }\r\n });\r\n }\r\n\r\n // TODO: Refactor that\r\n protected generateFormGroup(facade: BaseFacade, fields: Field[], hiddenFields: Array, content: Content = null, isDraft: boolean = false, formValidationsService: FormValidationsService = null): any {\r\n const formGroup: any = {};\r\n\r\n const unhiddenFields = fields.filter(field => !hiddenFields.includes(field.name));\r\n\r\n for (let field of unhiddenFields) {\r\n\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n const fieldName = `${field.name}_${language}`;\r\n const fieldValue = this.dParser.getData(content, field, language);\r\n const control = new FormControl(fieldValue);\r\n const isRequired = field.properties.isRequired;\r\n let validators: ValidatorFn[] = [];\r\n\r\n if (isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n\r\n if (field.properties.maxLength) {\r\n const maxLengthValidator = Validators.maxLength(field.properties.maxLength);\r\n validators.push(maxLengthValidator);\r\n }\r\n\r\n if (field.properties.minLength) {\r\n const minLengthValidator = Validators.minLength(field.properties.minLength);\r\n validators.push(minLengthValidator);\r\n }\r\n\r\n\r\n\r\n\r\n //TODO: When refactor manage pattern\r\n //custom pattern\r\n if (field.properties.pattern && formValidationsService) {\r\n validators = validators.concat(formValidationsService.getValidators(control, field.properties.pattern));\r\n }\r\n\r\n if (validators.length > 0) {\r\n control.setValidators(validators);\r\n }\r\n\r\n formGroup[fieldName] = control;\r\n\r\n }\r\n\r\n } else {\r\n\r\n let fieldValue: any = null;\r\n\r\n if (content) {\r\n fieldValue = this.dParser.getData(content, field, \"iv\");\r\n }\r\n\r\n if (!fieldValue && field.properties.editor === \"Toggle\") {\r\n fieldValue = false;\r\n }\r\n\r\n const control = new FormControl(fieldValue);\r\n\r\n let validators: ValidatorFn[] = [];\r\n\r\n\r\n if (field.properties.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n\r\n if (field.properties.maxLength) {\r\n const maxLengthValidator = Validators.maxLength(field.properties.maxLength);\r\n validators.push(maxLengthValidator);\r\n }\r\n\r\n if (field.properties.minLength) {\r\n const minLengthValidator = Validators.minLength(field.properties.minLength);\r\n validators.push(minLengthValidator);\r\n }\r\n\r\n if(field.properties.editor === 'List' && field.properties.fieldType === 'References') {\r\n //Specific for radio button. Value is not an array of references in this very specific context\r\n control.setValue(fieldValue[0]);\r\n }\r\n\r\n //TODO: When refactor manage pattern\r\n if (field.properties.pattern && formValidationsService) {\r\n validators = validators.concat(formValidationsService.getValidators(control, field.properties.pattern));\r\n }\r\n\r\n control.setValidators(validators);\r\n\r\n formGroup[field.name] = control;\r\n }\r\n }\r\n\r\n return formGroup;\r\n }\r\n\r\n isPublishedContent(content: Content): boolean {\r\n return content && content.status.toLowerCase() === 'published';\r\n }\r\n\r\n isPublishedPage(content: Content): boolean {\r\n return (content && content.status.toLowerCase() === 'published') || (content.data.isactive.iv === true);\r\n }\r\n\r\n getNumberOfDays(date: Date): number {\r\n return Math.round((new Date().getTime() - date.getTime()) / (1000 * 3600 * 24));\r\n }\r\n\r\n formatDate(date: string): string {\r\n const options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };\r\n return new Date(date).toLocaleDateString(this.getCurrentCulture(), options);\r\n }\r\n\r\n sortByName(a, b) {\r\n if (a.name < b.name)\r\n return -1;\r\n if (a.name > b.name)\r\n return 1;\r\n return 0;\r\n }\r\n\r\n sortByIndex(a, b) {\r\n if (!a || !a.name) {\r\n return 0;\r\n }\r\n if (a.name < b.name)\r\n return -1;\r\n if (a.name > b.name)\r\n return 1;\r\n return 0;\r\n }\r\n\r\n sortByLabel(a, b) {\r\n const prepareCompare = val => {\r\n var r = val.toLowerCase();\r\n r = r.replace(new RegExp(/\\s/g), \"\");\r\n r = r.replace(new RegExp(/[àáâãäå]/g), \"a\");\r\n r = r.replace(new RegExp(/æ/g), \"ae\");\r\n r = r.replace(new RegExp(/ç/g), \"c\");\r\n r = r.replace(new RegExp(/[èéêë]/g), \"e\");\r\n r = r.replace(new RegExp(/[ìíîï]/g), \"i\");\r\n r = r.replace(new RegExp(/ñ/g), \"n\");\r\n r = r.replace(new RegExp(/[òóôõö]/g), \"o\");\r\n r = r.replace(new RegExp(/œ/g), \"oe\");\r\n r = r.replace(new RegExp(/[ùúûü]/g), \"u\");\r\n r = r.replace(new RegExp(/[ýÿ]/g), \"y\");\r\n r = r.replace(new RegExp(/\\W/g), \"\");\r\n return r.toUpperCase();\r\n }\r\n\r\n const comparval1 = prepareCompare(a.properties.label + a.name);\r\n const comparval2 = prepareCompare(b.properties.label + b.name);\r\n if (comparval1 < comparval2)\r\n return -1;\r\n if (comparval1 > comparval2)\r\n return 1;\r\n return 0;\r\n }\r\n\r\n\r\n log(toLog: any) {\r\n if (environment.production) { return; }\r\n console.log(toLog);\r\n }\r\n\r\n valString(strValue: string) {\r\n if (strValue === null || strValue === undefined) {\r\n return '';\r\n } else {\r\n return strValue;\r\n }\r\n }\r\n\r\n valNumber(numberValue: number) {\r\n if (isNaN(numberValue)) {\r\n return 0;\r\n } else {\r\n return numberValue;\r\n }\r\n }\r\n\r\n getTextAreaValue(field: Field, language: string, value: string) {\r\n if (typeof CKEDITOR !== \"undefined\" && CKEDITOR && CKEDITOR.instances) {\r\n let fname = field.name;\r\n\r\n if (language) {\r\n fname += '_' + language;\r\n }\r\n\r\n for (const instance in CKEDITOR.instances) {\r\n let textLang: string = CKEDITOR.instances[instance].element.$.nodeName;\r\n if (textLang.toLowerCase() === fname.toLowerCase()) {\r\n return CKEDITOR.instances[instance].getData();\r\n }\r\n }\r\n } else if (value) {\r\n return value;\r\n } else {\r\n return '';\r\n }\r\n return null;\r\n }\r\n\r\n reloadCurrentRoute() {\r\n const currentUrl = this.router.url;\r\n this.router.navigateByUrl('/', { skipLocationChange: true }).then(() => {\r\n this.router.navigate([currentUrl]);\r\n });\r\n }\r\n\r\n\r\n getSearchObject(filter): object {\r\n const oSearch = {\r\n or:\r\n [\r\n {\r\n path: 'data.code.iv',\r\n op: 'contains',\r\n value: filter\r\n }\r\n ]\r\n }\r\n return oSearch;\r\n }\r\n\r\n // a bit of a patch\r\n setPreviewUrl(sentUrl = '') {\r\n setTimeout(() => {\r\n this.t('PREVIEW_SITE').subscribe(title => {\r\n if (sentUrl) {\r\n if (this.siteUrlElem) {\r\n this.siteUrlElem.href = sentUrl;\r\n }\r\n } else {\r\n if (this.pageUrlElement) {\r\n if (this.siteUrlElem) {\r\n this.siteUrlElem.href = window.location.origin + this.pageUrlElement.value;\r\n }\r\n }\r\n\r\n }\r\n });\r\n }, 1000);\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Content } from './content.model';\r\n\r\nexport abstract class ContentList {\r\n items: Content[];\r\n total: number;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { MenuItemStore } from './menu-item.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MenuItemQuery extends BaseQuery {\r\n\r\n constructor(store: MenuItemStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n","export class SquidexDate extends Date {\r\n constructor(date: number | string | Date) {\r\n super(date);\r\n }\r\n\r\n format(): string {\r\n if (typeof this === \"object\") {\r\n const validateDate = new Date(1970, 0, 0, 19, 0, 0);\r\n\r\n if (this.toISOString() === validateDate.toISOString()) {\r\n return '';\r\n }\r\n }\r\n\r\n return this.getFullYear() +\r\n '-' + this.pad(this.getMonth() + 1) +\r\n '-' + this.pad(this.getDate()) +\r\n 'T' + this.pad(this.getHours()) +\r\n ':' + this.pad(this.getMinutes()) +\r\n ':' + this.pad(this.getSeconds()) +\r\n 'Z';\r\n }\r\n\r\n formatUtc(): string {\r\n if (typeof this === \"object\") {\r\n const validateDate = new Date(1970, 0, 0, 19, 0, 0);\r\n\r\n if (this.toISOString() === validateDate.toISOString()) {\r\n return '';\r\n }\r\n }\r\n return this.toISOString().slice(0, -5) + 'Z';\r\n }\r\n\r\n formatWithoutTime(): string {\r\n if (typeof this === \"object\") {\r\n const validateDate = new Date(1970, 0, 0, 19, 0, 0);\r\n\r\n if (this.toISOString() === validateDate.toISOString()) {\r\n return '';\r\n }\r\n }\r\n\r\n return this.getUTCFullYear() +\r\n '-' + this.pad(this.getUTCMonth() + 1) +\r\n '-' + this.pad(this.getUTCDate()) +\r\n 'T12' +\r\n ':00' +\r\n ':00' +\r\n 'Z';\r\n }\r\n\r\n private pad(number) {\r\n if (number < 10) {\r\n return '0' + number;\r\n }\r\n return number;\r\n }\r\n}\r\n\r\n\r\n","export default \".validation {\\r\\n color: red;\\r\\n display: block;\\r\\n font-style: italic;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n transition: .4s;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n transition: .4s;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\ninput:checked + .slider {\\r\\n background-color: #f19100;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\ninput:focus + .slider {\\r\\n box-shadow: 0 0 1px #f19100;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\ninput:checked + .slider:before {\\r\\n transform: translateX(26px);\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n/* Rounded sliders */\\r\\n\\r\\n\\r\\n\\r\\n.slider.round {\\r\\n border-radius: 34px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.btn-orangium-save {\\r\\n width: 120px;\\r\\n height: 30px;\\r\\n line-height: 0.5;\\r\\n color: black;\\r\\n background-color: #F29100;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-orangium-cancel {\\r\\n width: 120px;\\r\\n height: 30px;\\r\\n color: black;\\r\\n line-height: 0.5;\\r\\n margin-right: 2.5rem !important;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.section-lt {\\r\\n text-align: right;\\r\\n width: unset;\\r\\n margin-right: 20px;\\r\\n margin-top: 20px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.section-lt .folder-blk {\\r\\n border-bottom: none !important;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.btn-secondary {\\r\\n color: #fff;\\r\\n background-color: #bababa !important;\\r\\n border-color: #bababa !important;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-secondary:hover {\\r\\n background-color: #a3a3a3 !important;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.show > .btn-secondary.dropdown-toggle {\\r\\n color: #fff;\\r\\n background-color: #bababa !important;\\r\\n border-color: #bababa !important;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.show > .btn-secondary.dropdown-toggle:hover {\\r\\n background-color: #a3a3a3 !important\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.btn-group > .btn-group:not(:first-child) {\\r\\n margin-left: -2px;\\r\\n /*width: 151px;*/\\r\\n height: 45px;\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.dropdown-item {\\r\\n padding: .25rem 0 !important;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.mode-draft-checkbox {\\r\\n height: 10px;\\r\\n margin-left: auto !important;\\r\\n padding: 0;\\r\\n position: relative;\\r\\n bottom: 40px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.mode-draft-checkbox label {\\r\\n color: white;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.action-controls button {\\r\\n /*width: 151px;*/\\r\\n height: 45px;\\r\\n background-color: #bababa !important;\\r\\n border-color: #bababa !important;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.action-controls ul li {\\r\\n margin: 10px 0;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.text-right {\\r\\n text-align: right !important;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.text-right button {\\r\\n margin: 18px;\\r\\n width: 200px;\\r\\n height: 45px;\\r\\n color: black;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.notification {\\r\\n background-color: #3F93F1;\\r\\n color: white;\\r\\n padding: 8px;\\r\\n border-radius: 20px;\\r\\n top: 23px;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.badge-type {\\r\\n border: solid lightgray 1px;\\r\\n border-radius: 10px;\\r\\n padding: 4px 5px 2px;\\r\\n font-size: 10px;\\r\\n font-style: italic;\\r\\n text-transform: uppercase;\\r\\n margin-right: 3px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.b-red {\\r\\n border-color: red;\\r\\n color: red;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.b-blue {\\r\\n border-color: blue;\\r\\n color: blue;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.b-violet {\\r\\n border-color: blueviolet;\\r\\n color: blueviolet;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.b-green {\\r\\n border-color: green;\\r\\n color: green;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.b-orangium {\\r\\n border-color: #f19100;\\r\\n color: #f19100;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.b-gray {\\r\\n border: none !important;\\r\\n color: #343a40;\\r\\n background-color: lightgray;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-action-orangium {\\r\\n /* width: 120px;\\r\\n height: 30px; */\\r\\n /* line-height: 0.5; */\\r\\n padding-bottom: 2px !important;\\r\\n padding-top: 2px !important;\\r\\n margin-right: 0 !important;\\r\\n color: black;\\r\\n font-size: 14px;\\r\\n font-weight: 700;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-delete-orangium {\\r\\n /* position: relative; */\\r\\n text-align: center;\\r\\n line-height: 40px;\\r\\n /* margin-right: 10px; */\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-delete-orangium a {\\r\\n background-color: #CD0000;\\r\\n cursor: pointer;\\r\\n height: 45px;\\r\\n color: white;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.btn-delete-orangium img {\\r\\n position: relative;\\r\\n left: 15px;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.btn-publish-orangium, .btn-save-orangium {\\r\\n text-align: center;\\r\\n line-height: 40px;\\r\\n margin-right: 10px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-clone-orangium {\\r\\n text-align: center;\\r\\n line-height: 40px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-publish-orangium a {\\r\\n /*width: 151px;*/\\r\\n height: 45px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-publish-orangium img, .btn-save-orangium img, .btn-clone-orangium img {\\r\\n position: relative;\\r\\n height: 25px;\\r\\n width: 25px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-save-orangium a {\\r\\n height: 45px;\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.btn-clone-orangium a {\\r\\n height: 45px;\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.pointer {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n@media only screen and (max-width: 1200px) {\\r\\n .btn-save-orangium, .mr-top-20-px {\\r\\n margin-top: 10px;\\r\\n margin-right: 0;\\r\\n }\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.max-height {\\r\\n max-height: 750px;\\r\\n padding-right: 10px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.editor-container {\\r\\n max-height: 87vh;\\r\\n overflow-y: auto;\\r\\n overflow-x: hidden;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.area {\\r\\n height: 100px;\\r\\n margin: 10px;\\r\\n text-align: center;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.content {\\r\\n height: 100px;\\r\\n display: table-cell;\\r\\n vertical-align: middle;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbnRlbnQtZWRpdGlvbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsVUFBVTtFQUNWLGNBQWM7RUFDZCxrQkFBa0I7QUFDcEI7Ozs7QUFJQTtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsV0FBVztFQUNYLFlBQVk7QUFDZDs7OztBQUVFO0lBQ0UsVUFBVTtJQUNWLFFBQVE7SUFDUixTQUFTO0VBQ1g7Ozs7QUFFRjtFQUNFLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxRQUFRO0VBQ1IsU0FBUztFQUNULHNCQUFzQjtFQUV0QixlQUFlO0FBQ2pCOzs7O0FBRUU7SUFDRSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWixXQUFXO0lBQ1gsU0FBUztJQUNULFdBQVc7SUFDWCx1QkFBdUI7SUFFdkIsZUFBZTtFQUNqQjs7OztBQUVGO0VBQ0UseUJBQXlCO0FBQzNCOzs7O0FBRUE7RUFDRSwyQkFBMkI7QUFDN0I7Ozs7QUFFQTtFQUdFLDJCQUEyQjtBQUM3Qjs7OztBQUVBLG9CQUFvQjs7OztBQUNwQjtFQUNFLG1CQUFtQjtBQUNyQjs7OztBQUVFO0lBQ0Usa0JBQWtCO0VBQ3BCOzs7O0FBRUY7RUFDRSxZQUFZO0VBQ1osWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1oseUJBQXlCO0FBQzNCOzs7O0FBRUE7RUFDRSxZQUFZO0VBQ1osWUFBWTtFQUNaLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsK0JBQStCO0FBQ2pDOzs7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixnQkFBZ0I7QUFDbEI7Ozs7QUFFRTtJQUNFLDhCQUE4QjtFQUNoQzs7OztBQUVGO0VBQ0UsV0FBVztFQUNYLG9DQUFvQztFQUNwQyxnQ0FBZ0M7QUFDbEM7Ozs7QUFFRTtJQUNFLG9DQUFvQztFQUN0Qzs7OztBQUVGO0VBQ0UsV0FBVztFQUNYLG9DQUFvQztFQUNwQyxnQ0FBZ0M7QUFDbEM7Ozs7QUFFRTtJQUNFO0VBQ0Y7Ozs7QUFFRjtFQUNFLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGVBQWU7QUFDakI7Ozs7QUFFQTtFQUNFLDRCQUE0QjtBQUM5Qjs7OztBQUVBO0VBQ0UsWUFBWTtFQUNaLDRCQUE0QjtFQUM1QixVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLFlBQVk7QUFDZDs7OztBQUVFO0lBQ0UsWUFBWTtFQUNkOzs7O0FBRUY7RUFDRSxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLG9DQUFvQztFQUNwQyxnQ0FBZ0M7QUFDbEM7Ozs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7Ozs7QUFFQTtFQUNFLDRCQUE0QjtBQUM5Qjs7OztBQUVFO0lBQ0UsWUFBWTtJQUNaLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtFQUNkOzs7O0FBRUY7RUFDRSx5QkFBeUI7RUFDekIsWUFBWTtFQUNaLFlBQVk7RUFDWixtQkFBbUI7RUFDbkIsU0FBUztFQUNULGtCQUFrQjtBQUNwQjs7OztBQUVBO0VBQ0UsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQix5QkFBeUI7RUFDekIsaUJBQWlCO0FBQ25COzs7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsVUFBVTtBQUNaOzs7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztBQUNiOzs7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsaUJBQWlCO0FBQ25COzs7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsWUFBWTtBQUNkOzs7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsY0FBYztBQUNoQjs7OztBQUVBO0VBQ0UsdUJBQXVCO0VBQ3ZCLGNBQWM7RUFDZCwyQkFBMkI7QUFDN0I7Ozs7QUFFQTtFQUNFO2lCQUNlO0VBQ2Ysc0JBQXNCO0VBQ3RCLDhCQUE4QjtFQUM5QiwyQkFBMkI7RUFDM0IsMEJBQTBCO0VBQzFCLFlBQVk7RUFDWixlQUFlO0VBQ2YsZ0JBQWdCO0FBQ2xCOzs7O0FBR0E7RUFDRSx3QkFBd0I7RUFDeEIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQix3QkFBd0I7QUFDMUI7Ozs7QUFFRTtJQUNFLHlCQUF5QjtJQUN6QixlQUFlO0lBQ2YsWUFBWTtJQUNaLFlBQVk7RUFDZDs7OztBQUVBO0lBQ0Usa0JBQWtCO0lBQ2xCLFVBQVU7RUFDWjs7OztBQUVGO0VBQ0Usa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEI7Ozs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixpQkFBaUI7QUFDbkI7Ozs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixZQUFZO0FBQ2Q7Ozs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osV0FBVztBQUNiOzs7O0FBSUE7RUFDRSxZQUFZO0VBQ1osZUFBZTtBQUNqQjs7OztBQUdBO0VBQ0UsWUFBWTtFQUNaLGVBQWU7QUFDakI7Ozs7QUFHQTtFQUNFLGVBQWU7QUFDakI7Ozs7QUFFQTtFQUNFO0lBQ0UsZ0JBQWdCO0lBQ2hCLGVBQWU7RUFDakI7QUFDRjs7OztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLG1CQUFtQjtBQUNyQjs7OztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixrQkFBa0I7QUFDcEI7Ozs7QUFFQTtFQUNFLGFBQWE7RUFDYixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7Ozs7QUFFQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsc0JBQXNCO0FBQ3hCIiwiZmlsZSI6ImNvbnRlbnQtZWRpdGlvbi5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnZhbGlkYXRpb24ge1xyXG4gIGNvbG9yOiByZWQ7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG5cclxuXHJcbi5zd2l0Y2gge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgd2lkdGg6IDYwcHg7XHJcbiAgaGVpZ2h0OiAzNHB4O1xyXG59XHJcblxyXG4gIC5zd2l0Y2ggaW5wdXQge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbi5zbGlkZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgdHJhbnNpdGlvbjogLjRzO1xyXG59XHJcblxyXG4gIC5zbGlkZXI6YmVmb3JlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICB3aWR0aDogMjZweDtcclxuICAgIGxlZnQ6IDRweDtcclxuICAgIGJvdHRvbTogNHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcclxuICAgIHRyYW5zaXRpb246IC40cztcclxuICB9XHJcblxyXG5pbnB1dDpjaGVja2VkICsgLnNsaWRlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxOTEwMDtcclxufVxyXG5cclxuaW5wdXQ6Zm9jdXMgKyAuc2xpZGVyIHtcclxuICBib3gtc2hhZG93OiAwIDAgMXB4ICNmMTkxMDA7XHJcbn1cclxuXHJcbmlucHV0OmNoZWNrZWQgKyAuc2xpZGVyOmJlZm9yZSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbn1cclxuXHJcbi8qIFJvdW5kZWQgc2xpZGVycyAqL1xyXG4uc2xpZGVyLnJvdW5kIHtcclxuICBib3JkZXItcmFkaXVzOiAzNHB4O1xyXG59XHJcblxyXG4gIC5zbGlkZXIucm91bmQ6YmVmb3JlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICB9XHJcblxyXG4uYnRuLW9yYW5naXVtLXNhdmUge1xyXG4gIHdpZHRoOiAxMjBweDtcclxuICBoZWlnaHQ6IDMwcHg7XHJcbiAgbGluZS1oZWlnaHQ6IDAuNTtcclxuICBjb2xvcjogYmxhY2s7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyOTEwMDtcclxufVxyXG5cclxuLmJ0bi1vcmFuZ2l1bS1jYW5jZWwge1xyXG4gIHdpZHRoOiAxMjBweDtcclxuICBoZWlnaHQ6IDMwcHg7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIGxpbmUtaGVpZ2h0OiAwLjU7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyLjVyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLnNlY3Rpb24tbHQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIHdpZHRoOiB1bnNldDtcclxuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgbWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuICAuc2VjdGlvbi1sdCAuZm9sZGVyLWJsayB7XHJcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuLmJ0bi1zZWNvbmRhcnkge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYWJhYmEgIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6ICNiYWJhYmEgIWltcG9ydGFudDtcclxufVxyXG5cclxuICAuYnRuLXNlY29uZGFyeTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNhM2EzICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYWJhYmEgIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6ICNiYWJhYmEgIWltcG9ydGFudDtcclxufVxyXG5cclxuICAuc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNhM2EzICFpbXBvcnRhbnRcclxuICB9XHJcblxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XHJcbiAgLyp3aWR0aDogMTUxcHg7Ki9cclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZHJvcGRvd24taXRlbSB7XHJcbiAgcGFkZGluZzogLjI1cmVtIDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1vZGUtZHJhZnQtY2hlY2tib3gge1xyXG4gIGhlaWdodDogMTBweDtcclxuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJvdHRvbTogNDBweDtcclxufVxyXG5cclxuICAubW9kZS1kcmFmdC1jaGVja2JveCBsYWJlbCB7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgfVxyXG5cclxuLmFjdGlvbi1jb250cm9scyBidXR0b24ge1xyXG4gIC8qd2lkdGg6IDE1MXB4OyovXHJcbiAgaGVpZ2h0OiA0NXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYWJhYmEgIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6ICNiYWJhYmEgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFjdGlvbi1jb250cm9scyB1bCBsaSB7XHJcbiAgbWFyZ2luOiAxMHB4IDA7XHJcbn1cclxuXHJcbi50ZXh0LXJpZ2h0IHtcclxuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4gIC50ZXh0LXJpZ2h0IGJ1dHRvbiB7XHJcbiAgICBtYXJnaW46IDE4cHg7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbiAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgfVxyXG5cclxuLm5vdGlmaWNhdGlvbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNGOTNGMTtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgcGFkZGluZzogOHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgdG9wOiAyM3B4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmJhZGdlLXR5cGUge1xyXG4gIGJvcmRlcjogc29saWQgbGlnaHRncmF5IDFweDtcclxuICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gIHBhZGRpbmc6IDRweCA1cHggMnB4O1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBtYXJnaW4tcmlnaHQ6IDNweDtcclxufVxyXG5cclxuLmItcmVkIHtcclxuICBib3JkZXItY29sb3I6IHJlZDtcclxuICBjb2xvcjogcmVkO1xyXG59XHJcblxyXG4uYi1ibHVlIHtcclxuICBib3JkZXItY29sb3I6IGJsdWU7XHJcbiAgY29sb3I6IGJsdWU7XHJcbn1cclxuXHJcbi5iLXZpb2xldCB7XHJcbiAgYm9yZGVyLWNvbG9yOiBibHVldmlvbGV0O1xyXG4gIGNvbG9yOiBibHVldmlvbGV0O1xyXG59XHJcblxyXG4uYi1ncmVlbiB7XHJcbiAgYm9yZGVyLWNvbG9yOiBncmVlbjtcclxuICBjb2xvcjogZ3JlZW47XHJcbn1cclxuXHJcbi5iLW9yYW5naXVtIHtcclxuICBib3JkZXItY29sb3I6ICNmMTkxMDA7XHJcbiAgY29sb3I6ICNmMTkxMDA7XHJcbn1cclxuXHJcbi5iLWdyYXkge1xyXG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAjMzQzYTQwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JheTtcclxufVxyXG5cclxuLmJ0bi1hY3Rpb24tb3JhbmdpdW0ge1xyXG4gIC8qIHdpZHRoOiAxMjBweDtcclxuICBoZWlnaHQ6IDMwcHg7ICovXHJcbiAgLyogbGluZS1oZWlnaHQ6IDAuNTsgKi9cclxuICBwYWRkaW5nLWJvdHRvbTogMnB4ICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZy10b3A6IDJweCAhaW1wb3J0YW50O1xyXG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiBibGFjaztcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuXHJcbi5idG4tZGVsZXRlLW9yYW5naXVtIHtcclxuICAvKiBwb3NpdGlvbjogcmVsYXRpdmU7ICovXHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gIC8qIG1hcmdpbi1yaWdodDogMTBweDsgKi9cclxufVxyXG5cclxuICAuYnRuLWRlbGV0ZS1vcmFuZ2l1bSBhIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNDRDAwMDA7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgfVxyXG5cclxuICAuYnRuLWRlbGV0ZS1vcmFuZ2l1bSBpbWcge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogMTVweDtcclxuICB9XHJcblxyXG4uYnRuLXB1Ymxpc2gtb3JhbmdpdW0sIC5idG4tc2F2ZS1vcmFuZ2l1bSB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gIG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLmJ0bi1jbG9uZS1vcmFuZ2l1bSB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG59XHJcblxyXG4uYnRuLXB1Ymxpc2gtb3JhbmdpdW0gYSB7XHJcbiAgLyp3aWR0aDogMTUxcHg7Ki9cclxuICBoZWlnaHQ6IDQ1cHg7XHJcbn1cclxuXHJcbi5idG4tcHVibGlzaC1vcmFuZ2l1bSBpbWcsIC5idG4tc2F2ZS1vcmFuZ2l1bSBpbWcsIC5idG4tY2xvbmUtb3JhbmdpdW0gaW1nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiAyNXB4O1xyXG4gIHdpZHRoOiAyNXB4O1xyXG59XHJcblxyXG5cclxuXHJcbi5idG4tc2F2ZS1vcmFuZ2l1bSBhIHtcclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5cclxuLmJ0bi1jbG9uZS1vcmFuZ2l1bSBhIHtcclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5cclxuLnBvaW50ZXIge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAuYnRuLXNhdmUtb3JhbmdpdW0sIC5tci10b3AtMjAtcHgge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5tYXgtaGVpZ2h0IHtcclxuICBtYXgtaGVpZ2h0OiA3NTBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4uZWRpdG9yLWNvbnRhaW5lciB7XHJcbiAgbWF4LWhlaWdodDogODd2aDtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxufVxyXG5cclxuLmFyZWEge1xyXG4gIGhlaWdodDogMTAwcHg7XHJcbiAgbWFyZ2luOiAxMHB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmNvbnRlbnQge1xyXG4gIGhlaWdodDogMTAwcHg7XHJcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcbiJdfQ== */\";","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable, } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { AuthenticationService } from \"../services/general/index\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthorizationGuard implements CanActivate {\r\n\r\n constructor(\r\n private readonly authenticationService: AuthenticationService,\r\n private readonly router: Router) {\r\n\r\n }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)\r\n : Observable | Promise | boolean | UrlTree {\r\n \r\n return this.authenticationService\r\n .isAuthorized()\r\n .pipe(\r\n map(v => {\r\n if (v && v.isAuthenticated) {\r\n return true;\r\n }\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n ));\r\n }\r\n}\r\n","import { AssetDirectoryStore } from './asset-directory.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from \"../base/base.query\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AssetDirectoryQuery extends BaseQuery {\r\n\r\n constructor(store: AssetDirectoryStore) {\r\n super(store);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { map, mergeMap, catchError} from 'rxjs/operators';\r\nimport { DynamicContentSchemaFactory, MenuItemFacade, PageFacade, SchemaPageFacade, SchemaPageModel, TemplateFacade } from '../../akita';\r\nimport { Code, ServiceCallback } from '../../services-utils';\r\nimport { PageModel } from '../..';\r\nimport { Content } from '../models/content.model';\r\nimport { SquidexTool } from '../../../tools';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PageInternalService {\r\n\r\n constructor(\r\n private pageFacade: PageFacade,\r\n private dynamicContentSchemaFactory: DynamicContentSchemaFactory,\r\n private schemaPageFacade: SchemaPageFacade,\r\n private templateFacade: TemplateFacade,\r\n private menuItemFacade: MenuItemFacade\r\n ) { }\r\n\r\n createPage(data: any): Observable> {\r\n return this.templateFacade.createAsPublished({\r\n body: {iv: \"Template of page: \" + data.code.iv },\r\n category: {iv: \"default\"},\r\n code: {iv: data.code.iv + \"-template\"},\r\n deleted: {iv: false},\r\n index: {iv: 0}\r\n }).pipe(mergeMap(template => {\r\n data.template.iv = [template.id];\r\n return this.pageFacade.create(data).pipe(mergeMap(page => {\r\n return this.menuItemFacade.createAsPublished({\r\n code: { iv: page.data.code.iv },\r\n page: { iv : page.id },\r\n index: {iv:0},\r\n deleted: {iv:false}\r\n }).pipe(map(() => {\r\n return new ServiceCallback(Code.Success, \"Page created\", page);\r\n }), catchError((error: any) => {\r\n this.pageFacade.removeHard(page.id).subscribe();\r\n this.templateFacade.removeHard(template.id).subscribe();\r\n return of(new ServiceCallback(Code.ServeurError, \"MenuItem creation failed in internal page service create function\", error));\r\n }));\r\n }), catchError((error: any) => {\r\n this.templateFacade.removeHard(template.id).subscribe();\r\n return of(new ServiceCallback(Code.ServeurError, \"Page creation failed in internal page service create function\", error));\r\n }));\r\n }), catchError((error: any) => {\r\n return of(new ServiceCallback(Code.ServeurError, \"Template creation failed in internal page service create function\", error));\r\n }));\r\n }\r\n\r\n deletePage(pageId: string): Observable {\r\n return of(new ServiceCallback(Code.NotImplemented));\r\n }\r\n\r\n private clonePageContent(contentId: string, name:string, url: {[key: string]: string })\r\n : Observable> {\r\n\r\n console.log(contentId);\r\n return this.schemaPageFacade.getSchemaPageByContentId(contentId, true).pipe(mergeMap(schemaPage => {\r\n console.log(schemaPage);\r\n const schemaName= schemaPage.data.contenttype.iv;\r\n\r\n console.log(schemaName);\r\n const contentFacade = this.dynamicContentSchemaFactory.getDynamicContentSchemaFacade(schemaName);\r\n\r\n return contentFacade.get(contentId, true).pipe(mergeMap(content => {\r\n const clonedContentData = cloneDeep(content.data);\r\n let squidexTool = new SquidexTool();\r\n let sanitizedContentCode = squidexTool.sanitizeForUniqueName(name);\r\n\r\n clonedContentData.pageName = { iv: name };\r\n clonedContentData.code = {iv: sanitizedContentCode};\r\n clonedContentData.url = url;\r\n return contentFacade.createAsPublished(clonedContentData).pipe(mergeMap(newContent => {\r\n\r\n let clonedSchemaPageData = cloneDeep(schemaPage.data);\r\n clonedSchemaPageData.code = {iv: sanitizedContentCode};\r\n clonedSchemaPageData.contentid.iv = newContent.id;\r\n\r\n return this.schemaPageFacade.createAsPublished(clonedSchemaPageData).pipe(mergeMap(newSchemaPage => {\r\n\r\n return this.menuItemFacade.getMenuItemsByPageId(contentId).pipe(mergeMap(menuItems => {\r\n let clonedMenuItemData = cloneDeep(menuItems[0].data);\r\n\r\n clonedMenuItemData.page.iv = newSchemaPage.id;\r\n clonedMenuItemData.code = {iv: `${schemaName}/${sanitizedContentCode}`};\r\n\r\n return this.menuItemFacade.createAsPublished(clonedMenuItemData).pipe(map(() => {\r\n return new ServiceCallback(Code.Success,\r\n \"Page cloned\",\r\n newContent);\r\n }), catchError((error: any) => {\r\n this.schemaPageFacade.removeHard(newSchemaPage.id).subscribe();\r\n contentFacade.removeHard(newContent.id).subscribe();\r\n return of(new ServiceCallback(Code.ServeurError,\r\n \"MenuItem creation failed in internal page service clone function\",\r\n error));\r\n }));\r\n }), catchError((error: any) => {\r\n this.schemaPageFacade.removeHard(newSchemaPage.id).subscribe();\r\n contentFacade.removeHard(newContent.id).subscribe();\r\n return of(new ServiceCallback(Code.ServeurError,\r\n \"Cannot get menu item in internal page service clone function\",\r\n error));\r\n }));\r\n }), catchError((error: any) => {\r\n contentFacade.removeHard(newContent.id).subscribe();\r\n return of(new ServiceCallback(Code.ServeurError, \"SchemaPage creation failed in internal page service clone function\", error));\r\n }));\r\n }), catchError((error: any) => {\r\n console.log(\"error :\");\r\n console.log(error);\r\n return of(new ServiceCallback(Code.ClientError, \"Content creation failed in internal page service clone function\", error));\r\n }));\r\n }), catchError((error: any) => {\r\n console.log(\"error :\");\r\n console.log(error);\r\n return of(new ServiceCallback(Code.ClientError, \"Cannot get content in internal page service clone function\", error));\r\n }));\r\n }), catchError((error: any) => {\r\n return of(new ServiceCallback(Code.ClientError, \"Cannot get schema-page in internal page service clone function\", error));\r\n }));\r\n }\r\n\r\n private cloneSinglePage(pageId: string, name:string, url: {[key: string]: string })\r\n : Observable> {\r\n return this.pageFacade.get(pageId, true).pipe(mergeMap(originalPage => {\r\n if(\r\n !originalPage.data.template ||\r\n !originalPage.data.template.iv ||\r\n originalPage.data.template.iv.length == 0 ||\r\n !originalPage.data.template.iv[0]\r\n ) {\r\n return of(new ServiceCallback(Code.ClientError, \"No template id found for page in internal page service clone function\"));\r\n }\r\n let data = cloneDeep(originalPage.data);\r\n let squidexTool = new SquidexTool();\r\n data.code = {iv: squidexTool.sanitizeForUniqueName(name)};\r\n data.pageName = {iv: name};\r\n data.url = url;\r\n\r\n return this.templateFacade.get(originalPage.data.template.iv[0], true).pipe(mergeMap(originalTemplate => {\r\n let templateData = cloneDeep(originalTemplate.data);\r\n templateData.code = {iv: data.code.iv + \"-template\"};\r\n templateData.body = {iv: originalTemplate.data.body.iv + \" - Cloned from \" + originalPage.data.code.iv};\r\n\r\n return this.templateFacade.createAsPublished(templateData).pipe(mergeMap(template => {\r\n data.template.iv = [template.id];\r\n\r\n return this.pageFacade.create(data).pipe(mergeMap(page => {\r\n return this.menuItemFacade.createAsPublished({\r\n code: { iv: page.data.code.iv },\r\n page: { iv : page.id },\r\n index: {iv:0},\r\n deleted: {iv:false}\r\n }).pipe(map(() => {\r\n return new ServiceCallback(Code.Success, \"Page cloned\", page);\r\n }), catchError((error: any) => {\r\n this.pageFacade.removeHard(page.id).subscribe();\r\n this.templateFacade.removeHard(template.id).subscribe();\r\n return of(new ServiceCallback(Code.ServeurError,\r\n \"MenuItem creation failed in internal page service clone function\",\r\n error));\r\n }));\r\n }), catchError((error: any) => {\r\n this.templateFacade.removeHard(template.id).subscribe();\r\n return of(new ServiceCallback(Code.ServeurError,\r\n \"Page creation failed in internal page service clone function\",\r\n error));\r\n }));\r\n }), catchError((error: any) => {\r\n return of(new ServiceCallback(Code.ServeurError,\r\n \"Template creation failed in internal page service clone function\",\r\n error));\r\n }));\r\n }) ) ;\r\n }));\r\n }\r\n\r\n clonePage(pageId: string, name:string, url: {[key: string]: string }, isContent: boolean = false)\r\n : Observable> {\r\n return isContent ? this.clonePageContent(pageId, name, url) : this.cloneSinglePage(pageId, name, url);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AssetStore } from './asset.store';\r\nimport { AssetQuery } from './asset.query';\r\nimport { AssetService } from '../../squidex/services/asset.service';\r\nimport { ID } from '@datorama/akita';\r\nimport { Asset, AssetFactory, ContentList } from '../../squidex';\r\nimport { of, Observable } from 'rxjs';\r\nimport { flatMap, tap, map } from 'rxjs/operators';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FilterPagination } from '../base/filter.pagination';\r\nimport { ESchemaContentStatus } from '../base/enum';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AppConfigProvider } from '../../../app-config.provider';\r\nimport { AssetDirectoryFacade } from '../asset-directory-schema/asset-directory.facade';\r\n\r\n\r\nconst EMPTY = '';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AssetFacade {\r\n\r\n readonly datePipe: DatePipe;\r\n public service: AssetService;\r\n\r\n private _path: string = EMPTY;\r\n private _endPoint: string = EMPTY;\r\n\r\n get path(): string {\r\n return this._path;\r\n }\r\n\r\n get endPoint(): string {\r\n return this._endPoint;\r\n }\r\n\r\n private store: AssetStore;//TODO: make it static\r\n private query: AssetQuery;//TODO: make it static\r\n private readonly emptyGuid = '00000000-0000-0000-0000-000000000000';\r\n\r\n\r\n protected constructor(private readonly assetFactory: AssetFactory,\r\n private readonly translateService: TranslateService,\r\n private readonly appConfigProvider: AppConfigProvider,\r\n private readonly assetDirectoryFacade: AssetDirectoryFacade,\r\n ) {\r\n this.datePipe = new DatePipe(this.getCurrentLanguage());\r\n this._path = appConfigProvider.getAssetsPathUrl();\r\n this._endPoint = appConfigProvider.getApiEndpoint();\r\n\r\n }\r\n\r\n\r\n protected initialize(): void {\r\n if (!this.service) {\r\n this.service = this.assetFactory.getAssetService();\r\n }\r\n if (!this.query) {\r\n this.query = this.assetFactory.getAssetQuery();\r\n }\r\n if (!this.store) {\r\n this.store = this.assetFactory.getAssetStore();\r\n }\r\n this._path = this.appConfigProvider.getAssetsPathUrl();\r\n this._endPoint = this.appConfigProvider.getApiEndpoint();\r\n }\r\n\r\n\r\n getById(id: ID): Observable {\r\n this.initialize();\r\n if (this.query.getValue().ids.indexOf(id) > -1) {\r\n return of(this.query.getValue().entities[id]);\r\n }\r\n\r\n return this.service.getById(id).pipe(flatMap((asset) => {\r\n this.store.add(asset);\r\n return of(asset);\r\n })) as Observable;\r\n }\r\n\r\n create(assetData: any, file?: File, directory?: string, fieldName?: string, fileName?: string, folderParentId?: string): Observable {\r\n this.initialize();\r\n\r\n\r\n return this.service.upload(assetData)\r\n .pipe(\r\n tap(assetBack => {\r\n\r\n if (!fileName) {\r\n fileName = assetBack.fileName;\r\n }\r\n\r\n assetBack.fieldName = fieldName;\r\n this.service.update(assetBack.id, assetBack).toPromise().then(tagBack => {\r\n\r\n const payload = {\r\n tags: []\r\n }\r\n\r\n if (fieldName) {\r\n payload.tags.push(\"field=\" + fieldName);\r\n }\r\n\r\n if (directory) {\r\n payload.tags.push(\"dir=\" + directory);\r\n payload.tags.push(\"infolder\");\r\n }\r\n\r\n if (assetBack.tags) {\r\n assetBack.tags.forEach(tag => {\r\n payload.tags.push(tag);\r\n });\r\n }\r\n\r\n if (assetBack.isImage) {\r\n payload.tags.push('image');\r\n } else {\r\n switch (assetBack.fileType.toLowerCase()) {\r\n case 'mp3':\r\n case 'wav':\r\n case 'acc':\r\n case 'wma':\r\n case 'flac':\r\n case 'aiff':\r\n payload.tags.push('audio');\r\n break;\r\n case 'docx':\r\n case 'doc':\r\n case 'pdf':\r\n case 'xlsx':\r\n case 'txt':\r\n payload.tags.push('document');\r\n break;\r\n default:\r\n payload.tags.push('file');\r\n }\r\n }\r\n\r\n return this.service.updateTag(assetBack.id, payload).toPromise().then(assetTagBack => {\r\n const parentPayload = {\r\n parentId: folderParentId\r\n }\r\n\r\n return this.service.updateParent(assetBack.id, parentPayload).subscribe(assetParentBack => {\r\n this.store.add(assetParentBack);\r\n return assetParentBack;\r\n });\r\n });\r\n });\r\n\r\n })\r\n );\r\n }\r\n\r\n update(assetId: string, assetData: any): Observable {\r\n this.initialize();\r\n\r\n const fname = assetData.fileName.replace(/\\.[^/.]+$/, \"\");\r\n const ext = assetData.fileName.substr(assetData.fileName.lastIndexOf('.') + 1);\r\n assetData.slug = this.getSlug(fname) + '.' + ext;\r\n\r\n return this.service.update(assetId, assetData).\r\n pipe(\r\n tap(assetBack => {\r\n this.store.update(assetId, u => {\r\n return assetBack;\r\n });\r\n })\r\n );\r\n }\r\n\r\n updateTag(asset: any): Observable {\r\n this.initialize();\r\n return this.service.updateTag(asset.id, asset)\r\n .pipe(\r\n tap(v => {\r\n this.store.add(v);\r\n })\r\n );\r\n }\r\n\r\n remove(id: ID): Observable {\r\n this.initialize();\r\n return this.service.delete(id).pipe(\r\n tap(v => {\r\n this.store.remove(id);\r\n })\r\n );\r\n }\r\n\r\n getAssetsFromFolder(folderId?: string, filter?: any, AdvancedFilter?: any): Observable {\r\n this.initialize();\r\n\r\n let contentObject =\r\n {\r\n filter:\r\n {\r\n and: []\r\n }\r\n }\r\n\r\n let parentId = folderId ? `&parentId=${folderId}` : '';\r\n\r\n if (AdvancedFilter) {\r\n contentObject.filter.and.push(AdvancedFilter);\r\n }\r\n\r\n if (filter) {\r\n let sortInformation = filter.orderBy.split(\" \");\r\n\r\n if (sortInformation.length === 1) {\r\n contentObject[\"sort\"] = [{ path: sortInformation[0] }];\r\n } else if (sortInformation.length === 2) {\r\n contentObject[\"sort\"] = [{\r\n path: sortInformation[0],\r\n order: sortInformation[1],\r\n }];\r\n\r\n contentObject[\"skip\"] = filter.from;\r\n contentObject[\"take\"] = filter.to - filter.from;\r\n }\r\n } else {\r\n contentObject[\"take\"] = 100;\r\n contentObject[\"sort\"] = [{\r\n path: 'fileName',\r\n order: 'descending',\r\n }];\r\n\r\n }\r\n\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject)) + parentId;\r\n\r\n return this.service.find(filterText);\r\n }\r\n\r\n fileCount(name: string, folder: string) {\r\n this.initialize();\r\n\r\n let contentObject: object = {};\r\n\r\n const fullName = folder + '_' + name;\r\n\r\n contentObject =\r\n {\r\n filter:\r\n {\r\n and: [\r\n {\r\n \"path\": \"fileName\",\r\n \"op\": \"eq\",\r\n \"value\": fullName,\r\n }\r\n ]\r\n },\r\n }\r\n\r\n contentObject[\"take\"] = 1;\r\n\r\n contentObject[\"sort\"] = [];\r\n\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject));\r\n\r\n return this.service.countQuery(filterText);\r\n\r\n }\r\n\r\n folderCount(id: string): Observable {\r\n this.initialize();\r\n\r\n return this.service.getCount(id)\r\n .pipe(map(object => {\r\n return object.total;\r\n })\r\n );\r\n }\r\n\r\n\r\n getFilesByName(name: string, folder: string): Observable {\r\n this.initialize();\r\n\r\n let contentObject: object = {};\r\n\r\n const fullName = folder + '_' + name;\r\n\r\n contentObject =\r\n {\r\n filter:\r\n {\r\n and: [\r\n {\r\n \"path\": \"fileName\",\r\n \"op\": \"eq\",\r\n \"value\": fullName,\r\n }\r\n ]\r\n },\r\n }\r\n\r\n contentObject[\"take\"] = 1;\r\n\r\n contentObject[\"sort\"] = [];\r\n\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject));\r\n\r\n return this.service.find(filterText);\r\n\r\n }\r\n\r\n\r\n getFolderCount(folder?: string): Observable {\r\n this.initialize();\r\n\r\n let contentObject: object = {};\r\n\r\n if (folder) {\r\n folder = \"dir=\" + folder;\r\n contentObject =\r\n {\r\n filter:\r\n {\r\n and: [\r\n {\r\n \"path\": \"tags\",\r\n \"op\": \"eq\",\r\n \"value\": folder,\r\n }\r\n ]\r\n },\r\n }\r\n }\r\n\r\n contentObject[\"take\"] = 1;\r\n\r\n contentObject[\"sort\"] = [];\r\n\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject));\r\n\r\n return this.service.countQuery(filterText);\r\n }\r\n\r\n getDefaultLanguage(): string {\r\n this.initialize();\r\n return this.translateService.defaultLang;\r\n }\r\n\r\n getCurrentLanguage(): string {\r\n // this.initialize();\r\n return this.translateService.currentLang;\r\n }\r\n\r\n // not tested\r\n getFilteredPagination(filterParms: FilterPagination,\r\n eSchemaContentStatus: ESchemaContentStatus = ESchemaContentStatus.Published,\r\n AdvancedFilter?: any\r\n ): Observable {\r\n this.initialize();\r\n\r\n let publishedText = \"\";\r\n\r\n let contentObject =\r\n {\r\n filter:\r\n {\r\n and: []\r\n }\r\n }\r\n\r\n if (AdvancedFilter) {\r\n contentObject.filter.and.push(AdvancedFilter);\r\n }\r\n\r\n let sortInformation = filterParms.orderBy.split(\" \");\r\n\r\n if (sortInformation.length === 1) {\r\n contentObject[\"sort\"] = [{ path: sortInformation[0] }];\r\n } else if (sortInformation.length === 2) {\r\n contentObject[\"sort\"] = [{\r\n path: sortInformation[0],\r\n order: sortInformation[1],\r\n }];\r\n }\r\n\r\n contentObject[\"skip\"] = filterParms.from;\r\n contentObject[\"take\"] = filterParms.to - filterParms.from;\r\n\r\n if (typeof filterParms.filter != \"undefined\" && filterParms.filter != \"\") {\r\n contentObject[\"fullText\"] = filterParms.filter + \"*\";\r\n }\r\n\r\n let filterText = \"?q=\" + encodeURIComponent(JSON.stringify(contentObject));\r\n return this.service.find(filterText);\r\n }\r\n\r\n translate(key: string | Array, interpolateParams?: Object): Observable {\r\n return this.translateService.get(key, interpolateParams);\r\n }\r\n\r\n getSlug(fileName: string) {\r\n const slug: string = fileName.replace(/\\s+/g, '-')\r\n .replace(/'/g, EMPTY)\r\n .replace(/\\\\/g, EMPTY)\r\n .replace(/\\*/g, EMPTY).toLowerCase();\r\n return slug; // + '-' + this.getFormattedTime();\r\n }\r\n\r\n trimFolder(fname: string): string {\r\n fname = fname.substring(fname.indexOf('_') + 1);\r\n return fname;\r\n }\r\n\r\n getFormattedTime() {\r\n const today = new Date();\r\n const y = today.getFullYear();\r\n const m: string = (today.getMonth() + 1).toString(); // JavaScript months are 0-based.\r\n const d: string = today.getDate().toString();\r\n const h: string = today.getHours().toString();\r\n const mi: string = today.getMinutes().toString();\r\n const s: string = today.getSeconds().toString();\r\n return y + m + d + \"-\" + h + mi + s;\r\n }\r\n\r\n generateThumbnail(pageUrl: any, imageName: string, imageId?: string): Observable {\r\n this.initialize();\r\n return this.service.generateThumbnail(pageUrl, imageName, imageId)\r\n .pipe(\r\n tap(assetBack => {\r\n if (assetBack != null) {\r\n let payload = { tags: [] }\r\n payload.tags.push(\"type/png\");\r\n payload.tags.push(\"dir=thumbnail\");\r\n payload.tags.push(\"infolder\");\r\n payload.tags.push('image');\r\n payload.tags.push('image/large');\r\n this.service.updateTag(assetBack.id, payload).subscribe(assetTagBack => {\r\n this.store.add(assetTagBack);\r\n if (imageId) {\r\n this.service.delete(imageId).subscribe(); // to do. Done here because delete doesn't work in controller.\r\n }\r\n });\r\n }\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpInterceptor,\r\n HttpErrorResponse,\r\n HttpClient\r\n} from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { AppConfigProvider } from '../app-config.provider';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { UiNotificationService } from '../services';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Injectable()\r\nexport class JwtInterceptor implements HttpInterceptor {\r\n\r\n constructor(private readonly appConfigProvider: AppConfigProvider,\r\n private readonly uiNotificationService: UiNotificationService,\r\n private readonly translateService: TranslateService,\r\n private readonly httpClient: HttpClient\r\n ) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n\r\n if (request.url.indexOf('api/o') === -1 && request.url.indexOf('api') > 0) {\r\n const bearerToken = this.appConfigProvider.getBearerToken();\r\n if (bearerToken) {\r\n request = this.addToken(request, bearerToken);\r\n }\r\n if (request.url.indexOf('draftMode') > 0) {\r\n request = this.addUnpublished(request);\r\n }\r\n if (request.method.toLocaleLowerCase() !== \"get\" && request.url.indexOf('clearCache') > 0) {\r\n this.httpClient.post(\"/api/o/cache/clear?clearCache=true\",{}).subscribe();\r\n }\r\n }\r\n return next.handle(request).pipe(\r\n catchError((error: HttpErrorResponse) => {\r\n let msg = null;\r\n let status = null;\r\n\r\n if (error && error.error) {\r\n msg = error.error.message + ' ' + error.error.details;\r\n status = error.error.statusCode;\r\n }\r\n //\r\n if (msg) {\r\n if ((msg as string).indexOf('A schema with this name already exists') > -1) {\r\n\r\n this.translateService.get('T').subscribe(c => {\r\n this.uiNotificationService.error(c.SCHEMA_NAME_TAKEN, c.ERROR);\r\n });\r\n\r\n //this.uiNotificationService.errorAsync(this.translateService.get('T.SCHEMA_NAME_TAKEN'));\r\n } else if ((msg as string).indexOf('Another content with the same value exists') > -1) {\r\n //this.uiNotificationService.errorAsync(this.translateService.get('T.CONTENT_NAME_EXISTS'));\r\n this.translateService.get('T').subscribe(c => {\r\n this.uiNotificationService.error(c.CONTENT_NAME_EXISTS, c.ERROR);\r\n });\r\n } else if ((msg as string).indexOf('ttt') > -1) {\r\n //this.uiNotificationService.errorAsync(this.translateService.get('T.CONTENT_NAME_EXISTS'));\r\n this.translateService.get('T').subscribe(c => {\r\n this.uiNotificationService.error(c.ERROR_MESSAGE, c.ERROR);\r\n });\r\n } else {\r\n //this.uiNotificationService.error(msg, status);\r\n console.log(msg);\r\n console.log(request);\r\n }\r\n } else {\r\n // *to be translated\r\n this.uiNotificationService.error('Error!!!', 'Error');\r\n }\r\n return throwError(error);\r\n }));\r\n }\r\n\r\n private addToken(request: HttpRequest, token: string) {\r\n const r = request.clone({\r\n setHeaders: {\r\n 'Authorization': `Bearer ${token}`\r\n }\r\n });\r\n return r;\r\n }\r\n\r\n private addUnpublished(request: HttpRequest) {\r\n const r = request.clone({\r\n setHeaders: {\r\n 'X-Unpublished': ''\r\n }\r\n });\r\n return r;\r\n }\r\n}\r\n","export default \"
    \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"CONTENTS\\\") | async }}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"MEDIAS\\\") | async }}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"MODULES\\\") | async }}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"ADMIN\\\") | async }}
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\";","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'getCompareValue'\r\n})\r\nexport class GetCompareValuePipe implements PipeTransform {\r\n\r\n transform(value: string, compareValue: string): boolean {\r\n if (!value || !compareValue || !compareValue['iv']) {\r\n return false;\r\n }\r\n return value === compareValue['iv'];\r\n }\r\n\r\n}\r\n","export default \"
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\\"logo\\\"\\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\";","export default \"
    \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    {{dropZoneLabel}}
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { ContentFactory } from '../../squidex';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class UserService extends BaseService {\r\n constructor(contentFactory: ContentFactory) {\r\n super('users', contentFactory);\r\n }\r\n}\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class LayoutModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { LanguageModel } from \"../../../services/akita/language-schema/language.model\";\r\n\r\n\r\n@Pipe({\r\n name: 'getLanguageCode'\r\n})\r\nexport class GetLanguageCodePipe implements PipeTransform {\r\n transform(languageModel: LanguageModel): string {\r\n if (!languageModel || !languageModel.data) return '';\r\n return languageModel.data.code.iv;\r\n }\r\n}\r\n","import { Field, Schema } from '../../../services';\r\nimport { Validation } from '../../../tools';\r\n\r\nexport class FieldReferenceCleaner {\r\n\r\n constructor(private allSchemas: Schema[]) {\r\n }\r\n\r\n public cleanAllReferenceFields(fields: Field[]) {\r\n const cleanedFields: Field[] = [];\r\n\r\n fields.forEach(field => {\r\n cleanedFields.push(this.cleanReferenceField(field));\r\n });\r\n\r\n return cleanedFields;\r\n }\r\n\r\n public cleanReferenceField(field: Field): Field {\r\n if (\r\n field.properties.fieldType !== 'References' ||\r\n !field.properties.schemaIds ||\r\n field.properties.schemaIds.length === 0\r\n ) {\r\n return field;\r\n }\r\n\r\n const cleanedIds: string[] = [];\r\n\r\n field.properties.schemaIds.forEach(id => {\r\n if (Validation.isValidGuid(id)) {\r\n cleanedIds.push(id);\r\n } else {\r\n cleanedIds.push(this.allSchemas.find(schema => schema.name === id).id);\r\n }\r\n });\r\n\r\n field.properties.schemaIds = cleanedIds;\r\n return field;\r\n\r\n }\r\n}\r\n","import { Code } from \"./enums/code.enum\";\r\n\r\nexport class ServiceCallback {\r\n public readonly messages: string[] = [];\r\n constructor(public readonly code: Code, msg: string = null, public readonly content:T = null) {\r\n if(msg) {\r\n this.messages.push(msg);\r\n }\r\n\r\n if (!this.isSuccess()) {\r\n let error = `An unexpected error ${this.code} append \\n ${Code[this.code]}`\r\n if(this.messages[0]) {\r\n error += '\\n' + this.messages[0];\r\n }\r\n console.error(error);\r\n }\r\n }\r\n\r\n addMessage(msg: string) {\r\n this.messages.push(msg);\r\n }\r\n\r\n isSuccess(): boolean {\r\n return this.code == Code.Success || this.code == Code.NoContent;\r\n }\r\n\r\n getMessage(): string {\r\n return this.messages.join('\\n');\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { Role } from '../models/role.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RolesService {\r\n private readonly roleBaseUrl: string;\r\n\r\n constructor(private readonly httpClient: HttpClient,\r\n private readonly baseUrl: string)\r\n {\r\n this.roleBaseUrl = `${this.baseUrl}`;\r\n }\r\n\r\n getAllRoles(): Observable {\r\n const url = this.roleBaseUrl;\r\n return this.httpClient.get(url).pipe(map(roles => {\r\n return roles['items'].map(r => { //roles must be store uppercase in user\r\n r.name = r.name.toUpperCase();\r\n return r;\r\n })\r\n })) as Observable;\r\n }\r\n\r\n postNewRole(name: string): Observable {\r\n return this.httpClient.post(this.roleBaseUrl, {name: name} ) as Observable;\r\n }\r\n\r\n deleteRole(name: string): Observable {\r\n return this.httpClient.delete(this.roleBaseUrl + name);\r\n }\r\n\r\n }\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig(\r\n {\r\n name: 'application-users',\r\n cache: {\r\n ttl: 900000\r\n }\r\n })\r\nexport class ApplicationUserStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { UserStore } from './user.store';\r\nimport { UserQuery } from './user.query';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { UserService } from './user.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class UserFacade extends BaseFacade {\r\n constructor(\r\n userService: UserService,\r\n userStore: UserStore,\r\n userQuery: UserQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(userService,\r\n userStore,\r\n userQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade('users'),\r\n translateService,\r\n 'users-facade'\r\n );\r\n }\r\n}\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig(\r\n {\r\n name: 'users',\r\n cache: {\r\n ttl: 900000\r\n }\r\n })\r\nexport class UserStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppTokenService } from '../../../app-token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageService extends BaseService {\r\n\r\n constructor(schemasFactory: SchemasFactory,\r\n contentFactory: ContentFactory) {\r\n super(AppTokenService.PAGE_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { PageContentStore } from './page-content.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageContentQuery extends BaseQuery {\r\n\r\n constructor(store: PageContentStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppToken } from \"../../../models/app-token\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageCategoryService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n super(AppToken.PAGE_CATEGORY_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n}\r\n","import { Link } from './link.model';\r\n\r\nexport class Folder {\r\n id: string;\r\n parentId: string;\r\n folderName: string;\r\n version: number;\r\n _links: { [id: string]: Link };\r\n\r\n constructor(current?: any) {\r\n if (current) {\r\n Object.assign(this, current);\r\n } else {\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from \"../base/base.service\";\r\nimport { ContentFactory, ContentList } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TemplateService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n\r\n super('template', contentFactory);\r\n }\r\n\r\n\r\n getByCategory(category: string): Observable {\r\n this.initialize();\r\n return this.contentService\r\n .findContent(`?$filter=data/deleted/iv ne true and data/category/iv eq '${category}'`);\r\n }\r\n}\r\n","import { IBaseState } from '../base/base.state';\r\nimport { Schema } from '../../squidex';\r\nimport { HashMap, ID } from '@datorama/akita';\r\nimport { Content } from '../../squidex';\r\n\r\nexport class DynamicContentSchemaState implements IBaseState {\r\n storedIndex: { [index: number]: string; };\r\n lastFilter: string;\r\n lastOrderBy: string;\r\n [key: string]: any;\r\n code: string;\r\n totalCount: number;\r\n entities?: HashMap;\r\n ids?: any[];\r\n loading?: boolean;\r\n error?: any;\r\n active: ID;\r\n schema: Schema;\r\n\r\n constructor() { }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PageTypeService } from './page-type.service';\r\nimport { PageTypeStore } from './page-type.store';\r\nimport { PageTypeQuery } from './page-type.query';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppToken } from \"../../../models/app-token\";\r\nimport { PageTypeModel } from \"./page-type.model\";\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PageTypeFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly pageTypeService: PageTypeService,\r\n private readonly pageTypeStore: PageTypeStore,\r\n private readonly pageTypeQuery: PageTypeQuery,\r\n private readonly dynamicSchemaFactory: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(pageTypeService,\r\n pageTypeStore,\r\n pageTypeQuery,\r\n dynamicSchemaFactory.getDynamicSchemaFacade(AppToken.PAGE_TYPE_SCHEMA_NAME),\r\n translateService,\r\n AppToken.PAGE_TYPE_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n\r\n getDefaultPageType(): Observable {\r\n return this.pageTypeService.getDefaultPageType();\r\n }\r\n\r\n getPlaceholderPageType(): Observable {\r\n return this.pageTypeService.getPlaceholderPageType();\r\n }\r\n}\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig(\r\n {\r\n name: 'schemametadata',\r\n cache: {\r\n ttl: 900000\r\n }\r\n })\r\nexport class SchemaMetadataStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { SchemaMetadataStore } from './schema-metadata.store';\r\nimport { SchemaMetadataQuery } from './schema-metadata.query';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { SchemaMetadataService } from './schema-metadata.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { SchemaMetadataModel } from './schema-metadata.model';\r\nimport { Content } from '../../squidex/index';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SchemaMetadataFacade extends BaseFacade {\r\n\r\n private readonly schemaMetaDataService: SchemaMetadataService;\r\n\r\n constructor(\r\n schemaMetadataService: SchemaMetadataService,\r\n schemaMetadataStore: SchemaMetadataStore,\r\n schemaMetadataQuery: SchemaMetadataQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(schemaMetadataService,\r\n schemaMetadataStore,\r\n schemaMetadataQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade('schemametadata'),\r\n translateService,\r\n 'schemametadata-facade');\r\n\r\n this.schemaMetaDataService = this.getService() as SchemaMetadataService;\r\n }\r\n\r\n getByCategory(category: string): Observable {\r\n // TODO: store data\r\n return this.schemaMetaDataService.getByCategory(category).pipe(map(list => list.items));\r\n }\r\n\r\n\r\n getAll(): Observable {\r\n // TODO: store data\r\n return this.schemaMetaDataService.getAll().pipe(map(list => list.items));\r\n }\r\n\r\n getHiddenFields(schemaId: string): Observable {\r\n return this.getBySchemaId(schemaId)\r\n .pipe(map(meta => (meta.data.hiddenfields.iv as string).split(';')\r\n ));\r\n }\r\n\r\n removeBySchemaId(id: string): Observable {\r\n return this.schemaMetaDataService.getBySchemaId(id).pipe(map(metaList => {\r\n\r\n const items = metaList.items as Content[];\r\n\r\n if (!items || !items[0]) {\r\n throw (new Error('Schema metadata doesn\\'t exist'));\r\n }\r\n\r\n const firstItem = items[0];\r\n\r\n this.getService().removeContent(firstItem.id).toPromise().then(\r\n () => this.getStore().remove(id)\r\n );\r\n\r\n return firstItem;\r\n }));\r\n }\r\n\r\n hardRemoveBySchemaId(id: string): Observable {\r\n return this.schemaMetaDataService.getBySchemaId(id).pipe(map(metaList => {\r\n\r\n const items = metaList.items as Content[];\r\n\r\n if (!items || !items[0]) {\r\n throw (new Error('Schema metadata doesn\\'t exist'));\r\n }\r\n\r\n const firstItem = items[0];\r\n\r\n this.getService().removeHardContent(firstItem.id).toPromise().then(\r\n () => this.getStore().remove(id)\r\n );\r\n\r\n return firstItem;\r\n }));\r\n }\r\n\r\n getBySchemaId(id: string): Observable {\r\n if (this.getQuery().getValue().ids.some(storedId => storedId === id)) {\r\n return this.getQuery().selectEntity(id);\r\n }\r\n\r\n return this.schemaMetaDataService.getBySchemaId(id)\r\n .pipe(map(list => {\r\n\r\n const items = list.items as Content[];\r\n\r\n if (!items) {\r\n throw (new Error('Schema metadata not found'));\r\n }\r\n\r\n const firstItem = items[0];\r\n\r\n this.getStore().add(firstItem);\r\n\r\n return firstItem;\r\n }));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from \"../base/base.service\";\r\nimport { ContentFactory } from '../../squidex';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n super('article', contentFactory);\r\n }\r\n}\r\n","import { ApplicationUserStore } from './application-user.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ApplicationUserQuery extends BaseQuery {\r\n constructor(store: ApplicationUserStore) {\r\n super(store);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { AppConfigProvider } from '../../../app-config.provider';\r\nimport { AssetService } from '../services/asset.service';\r\nimport { AssetQuery } from '../../akita/asset-schema/asset.query';\r\nimport { AssetStore } from '../../akita/asset-schema/asset.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AssetFactory {\r\n\r\n constructor(private readonly appConfigProvider: AppConfigProvider, private readonly httpClient: HttpClient) {\r\n\r\n }\r\n\r\n public getAssetService(): AssetService {\r\n return new AssetService(this.httpClient, this.appConfigProvider);\r\n }\r\n\r\n public getAssetQuery(): AssetQuery {\r\n return new AssetQuery(this.getAssetStore());\r\n}\r\n\r\n public getAssetStore(): AssetStore {\r\n return new AssetStore();\r\n}\r\n\r\n\r\n}\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class ClaimModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","export default \"
    \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n

    \\r\\n

    \\r\\n {{ tc(\\\"CONTENT_TYPE\\\") | async }} :
    \\r\\n \\r\\n {{ schemaSelectedLabel }}\\r\\n \\r\\n

    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    paginationSize && !isAlphaOrder\\\">\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({ selector: '[ngx-file-drop-content-tmp]' })\r\nexport class NgxFileDropContentTemplateDirective {\r\n constructor(public template: TemplateRef) { }\r\n}\r\n","\r\nexport * from './akita';\r\nexport * from './general';\r\nexport * from './squidex';\r\nexport * from './services-utils'\r\n","import { DynamicContentSchemaStore } from './dynamic-content.store';\r\nimport { BaseQuery } from '../base/base.query';\r\n\r\nexport class DynamicContentSchemaQuery extends BaseQuery {\r\n constructor(store: DynamicContentSchemaStore) {\r\n super(store);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppToken } from \"../../../models/app-token\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppToken.PAGE_TYPE_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class PageTypeStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PageContentService } from './page-content.service';\r\nimport { PageContentStore } from './page-content.store';\r\nimport { PageContentQuery } from './page-content.query';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppToken } from '../../../models/app-token';\r\nimport { Observable, of } from 'rxjs';\r\nimport { flatMap } from 'rxjs/operators';\r\nimport { PageContentModel } from './page-content.model';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PageContentFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly pageContentService: PageContentService,\r\n pageContentStore: PageContentStore,\r\n pageContentQuery: PageContentQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(pageContentService,\r\n pageContentStore,\r\n pageContentQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppToken.PAGE_CONTENT_SCHEMA_NAME),\r\n translateService,\r\n AppToken.PAGE_CONTENT_SCHEMA_NAME + '-facade');\r\n }\r\n\r\n getPageContentsByPageId(id: string, orderBy: string = 'id', draftMode: boolean = false): Observable {\r\n return this.pageContentService.getByParentId(id, 'pageid', orderBy, draftMode).pipe(flatMap((contentList) => {\r\n return of(contentList.items) as Observable;\r\n }));\r\n }\r\n\r\n getPageContentsByContentId(id: string): Observable {\r\n return this.pageContentService.getByParentId(id, 'contentid').pipe(flatMap((contentList) => {\r\n return of(contentList.items) as Observable;\r\n }));\r\n }\r\n\r\n}\r\n","export default \"
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n\";","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { DynamicContentSchemaFacade, DynamicContentSchemaFactory } from '../../akita';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ContentInternalService {\r\n\r\n dynamicContentSchemaFacade: DynamicContentSchemaFacade;\r\n\r\n constructor(\r\n private dynamicContentSchemaFactory: DynamicContentSchemaFactory,\r\n private router: Router) {\r\n }\r\n\r\n\r\n cloneContent(contentId: string, schemaName: string) {\r\n this.dynamicContentSchemaFacade = this.dynamicContentSchemaFactory.getDynamicContentSchemaFacade(schemaName);\r\n\r\n this.dynamicContentSchemaFacade.get(contentId, true).subscribe(content => {\r\n localStorage.setItem(\"cloneData-\" + schemaName, JSON.stringify(content.data));\r\n this.router.navigate(['/contents/' + schemaName]);\r\n });\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Pipe({\r\n name: 'getDateValue'\r\n})\r\nexport class GetDateValuePipe implements PipeTransform {\r\n\r\n constructor(private datePipe: DatePipe) { }\r\n\r\n transform(value: any, language: string = 'iv'): string {\r\n\r\n if (!value || !value[language]) {\r\n return '';\r\n }\r\n\r\n return this.datePipe.transform(value[language], \"yyyy/MM/dd\", \"UTC -5\");\r\n }\r\n}\r\n","export default \"a.disabled {\\r\\n pointer-events: none;\\r\\n cursor: default;\\r\\n}\\r\\n\\r\\n.title {\\r\\n font-size: 14px;\\r\\n line-height: 16px;\\r\\n font-weight: 700;\\r\\n color: #f29100;\\r\\n}\\r\\n\\r\\n.no-drag {\\r\\n -webkit-user-drag: none;\\r\\n}\\r\\n\\r\\n.on-hover:hover {\\r\\n transition: all .2s ease-in;\\r\\n background-color: #f29100;\\r\\n color: black !important;\\r\\n}\\r\\n\\r\\n.is-selected {\\r\\n background-color: #f29100;\\r\\n z-index: 1000;\\r\\n}\\r\\n\\r\\na.disabled {\\r\\n pointer-events: none;\\r\\n cursor: default;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1lbnUtaXRlbS5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usb0JBQW9CO0VBQ3BCLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsdUJBQXVCO0FBQ3pCOztBQUVBO0VBSUUsMkJBQTJCO0VBQzNCLHlCQUF5QjtFQUN6Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsYUFBYTtBQUNmOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLGVBQWU7QUFDakIiLCJmaWxlIjoibWVudS1pdGVtLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJhLmRpc2FibGVkIHtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbi50aXRsZSB7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgY29sb3I6ICNmMjkxMDA7XHJcbn1cclxuXHJcbi5uby1kcmFnIHtcclxuICAtd2Via2l0LXVzZXItZHJhZzogbm9uZTtcclxufVxyXG5cclxuLm9uLWhvdmVyOmhvdmVyIHtcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbjtcclxuICAtby10cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW47XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW47XHJcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMjkxMDA7XHJcbiAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pcy1zZWxlY3RlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyOTEwMDtcclxuICB6LWluZGV4OiAxMDAwO1xyXG59XHJcblxyXG5hLmRpc2FibGVkIHtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuIl19 */\";","export default \"\\r\\n.max-height {\\r\\n max-height: 800px;\\r\\n}\\r\\n\\r\\n.on-hover a {\\r\\n width: 100%;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.on-hover:hover {\\r\\n transition: all .2s ease-in;\\r\\n background-color: #f29100;\\r\\n}\\r\\n\\r\\n.on-hover:hover a {\\r\\n color: black;\\r\\n }\\r\\n\\r\\n.on-hover a.active {\\r\\n color: black;\\r\\n background-color: #f29100;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxlZnQtbWVudS5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQTtFQUNFLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxjQUFjO0FBQ2hCOztBQUVBO0VBSUUsMkJBQTJCO0VBQzNCLHlCQUF5QjtBQUMzQjs7QUFFRTtJQUNFLFlBQVk7RUFDZDs7QUFFRjtFQUNFLFlBQVk7RUFDWix5QkFBeUI7QUFDM0IiLCJmaWxlIjoibGVmdC1tZW51LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLm1heC1oZWlnaHQge1xyXG4gIG1heC1oZWlnaHQ6IDgwMHB4O1xyXG59XHJcblxyXG4ub24taG92ZXIgYSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5vbi1ob3Zlcjpob3ZlciB7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW47XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluO1xyXG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI5MTAwO1xyXG59XHJcblxyXG4gIC5vbi1ob3Zlcjpob3ZlciBhIHtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICB9XHJcblxyXG4ub24taG92ZXIgYS5hY3RpdmUge1xyXG4gIGNvbG9yOiBibGFjaztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI5MTAwO1xyXG59XHJcbiJdfQ== */\";","import { Component, OnInit, Input, EventEmitter, Output } from '@angular/core';\r\nimport { FormGroupDirective, ControlContainer } from '@angular/forms';\r\nimport { MonacoEditorLoaderService } from '@materia-ui/ngx-monaco-editor';\r\nimport { filter, take } from 'rxjs/operators';\r\n\r\n//https://materiahq.github.io/ngx-monaco-editor/api-reference/index.html\r\n//https://stackoverflow.com/questions/51359689/monaco-editor-registercompletionitemprovider-removes-the-default-local-variable\r\n//https://gist.github.com/mwrouse/05d8c11cd3872c19c684bd1904a2202e\r\n//https://microsoft.github.io/monaco-editor/monarch.html\r\n@Component({\r\n selector: 'monaco-liquid-editor',\r\n templateUrl: './monaco-liquid-editor.component.html',\r\n styleUrls: ['./monaco-liquid-editor.component.css'],\r\n viewProviders: [\r\n {\r\n provide: ControlContainer,\r\n useExisting: FormGroupDirective\r\n }\r\n ]\r\n})\r\nexport class MonacoLiquidEditorComponent implements OnInit {\r\n\r\n @Input()\r\n theme = 'vs-dark';\r\n\r\n @Input()\r\n language = 'html';\r\n\r\n @Output()\r\n onInitEvent = new EventEmitter();\r\n\r\n editorOptions: {};\r\n\r\n @Input()\r\n editorForm: any; // formControlName\r\n\r\n private monaco: any;\r\n\r\n constructor(private readonly monacoLoaderService: MonacoEditorLoaderService) {\r\n let isInitialized = false;\r\n this.monacoLoaderService.isMonacoLoaded$.pipe(\r\n filter(isLoaded => isLoaded),\r\n take(1),\r\n ).subscribe((loaded) => {\r\n if (!isInitialized) {\r\n this.monaco = (window).monaco;\r\n if (this.monaco && (this.language === 'liquid' || this.language === 'html')) {\r\n isInitialized = true;\r\n this.registerAutocompleteProvider(this.monaco);\r\n }\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.language) {\r\n this.language = 'html';\r\n }\r\n this.editorOptions = { theme: this.theme, language: this.language };\r\n }\r\n\r\n editorInit(editor) {\r\n editor.tabCompletion = 'on';\r\n this.onInitEvent.emit(editor);\r\n }\r\n\r\n private registerAutocompleteProvider(monaco) {\r\n //monaco.languages.register({ id: 'liquid' });\r\n monaco.languages.registerCompletionItemProvider('html', {\r\n provideCompletionItems: () => {\r\n var autocompleteProviderItems = [];\r\n var keywords = ['assign', 'capture', 'endcapture', 'increment', 'decrement',\r\n 'if', 'else', 'elsif', 'endif', 'for', 'endfor', 'break',\r\n 'continue', 'limit', 'offset', 'range', 'reversed', 'cols',\r\n 'case', 'endcase', 'when', 'block', 'endblock', 'true', 'false',\r\n 'in', 'unless', 'endunless', 'cycle', 'tablerow', 'endtablerow',\r\n 'contains', 'startswith', 'endswith', 'comment', 'endcomment',\r\n 'raw', 'endraw', 'editable', 'endentitylist', 'endentityview', 'endinclude',\r\n 'endmarker', 'entitylist', 'entityview', 'forloop', 'image', 'include',\r\n 'marker', 'outputcache', 'plugin', 'style', 'text', 'widget',\r\n 'abs', 'append', 'at_least', 'at_most', 'capitalize', 'ceil', 'compact',\r\n 'concat', 'date', 'default', 'divided_by', 'downcase', 'escape',\r\n 'escape_once', 'first', 'floor', 'join', 'last', 'lstrip', 'map',\r\n 'minus', 'modulo', 'newline_to_br', 'plus', 'prepend', 'remove',\r\n 'remove_first', 'replace', 'replace_first', 'reverse', 'round',\r\n 'rstrip', 'size', 'slice', 'sort', 'sort_natural', 'split', 'strip',\r\n 'strip_html', 'strip_newlines', 'times', 'truncate', 'truncatewords',\r\n 'uniq', 'upcase', 'url_decode', 'url_encode'];\r\n\r\n for (var i = 0; i < keywords.length; i++) {\r\n autocompleteProviderItems.push({ 'label': keywords[i], kind: monaco.languages.CompletionItemKind.Keyword });\r\n }\r\n\r\n return { suggestions: autocompleteProviderItems };\r\n }\r\n });\r\n }\r\n}\r\n","import { Asset } from './asset.model';\r\n\r\nexport abstract class AssetList {\r\n items: Asset[];\r\n total: number;\r\n}\r\n","import { FieldProperty } from './field-property.model';\r\nimport { Link } from \"./link.model\";\r\n\r\nexport class Field {\r\n fieldId: number;\r\n isDisable: boolean;\r\n isHidden: boolean;\r\n isLocked: boolean;\r\n name: string; //^[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*\r\n partitioning: string;\r\n properties: FieldProperty;\r\n nested: Field[];\r\n _links: { [id: string]: Link };\r\n\r\n constructor(current?: any) {\r\n if (current) {\r\n Object.assign(this, current);\r\n } else {\r\n this.properties = new FieldProperty();\r\n }\r\n }\r\n\r\n public isLocalized(): boolean {\r\n return this.partitioning === 'language';\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../../base/base-component.component';\r\nimport { SiteSettingModel, AuthenticationService } from '../../../services';\r\n\r\n@Component({\r\n selector: 'side-left-bar',\r\n templateUrl: './side-left-bar.component.html',\r\n styleUrls: ['./side-left-bar.component.css']\r\n})\r\nexport class SideLeftBarComponent extends BaseComponent implements OnInit {\r\n\r\n @Input()\r\n siteSettingModel: SiteSettingModel;\r\n isCage = false;\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n userIsReadWrite: boolean;\r\n userIsReader: boolean;\r\n\r\n constructor(\r\n translateService: TranslateService,\r\n private authenticationService: AuthenticationService) {\r\n super(translateService);\r\n this.setTranslateContext('SideLeftBarComponent');\r\n }\r\n\r\n ngOnInit() {\r\n this.userIsOwner = this.authenticationService.userHasRole(\"Owner\");\r\n this.userIsDev = this.authenticationService.userHasRole(\"Developer\");\r\n this.userIsEditor = this.authenticationService.userHasRole(\"Editor\");\r\n this.userIsReadWrite = this.authenticationService.userHasRole(\"ReadWrite\");\r\n this.userIsReader = this.authenticationService.userHasRole(\"Reader\");\r\n }\r\n\r\n}\r\n","import { Component, OnInit, AfterViewInit } from '@angular/core';\r\nimport {\r\n Schema,\r\n SchemaMetadataModel,\r\n DynamicSchemaFacade,\r\n DynamicSchemaFactory,\r\n SchemaMetadataFacade,\r\n DynamicContentSchemaFactory,\r\n DynamicContentModel,\r\n DynamicContentSchemaFacade,\r\n FilterPagination,\r\n AuthenticationService\r\n} from '../../services';\r\n\r\nimport { PageTitleService } from '../../services/general/page-title.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../base/base-component.component';\r\nimport { AppSchemaCategory } from '../../models/app-token';\r\nimport { flatMap, map, mergeMap } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\nimport { FieldReferenceContent } from '../../shared/field/tools/field-reference-content.service';\r\nimport { ESchemaContentStatus } from '../../services/akita/base/enum';\r\n\r\n@Component({\r\n selector: 'app-contents',\r\n templateUrl: './contents.component.html',\r\n styleUrls: ['./contents.component.css']\r\n})\r\nexport class ContentsComponent extends BaseComponent implements OnInit, AfterViewInit {\r\n\r\n schemaSelectedName = '';\r\n schemaSelectedLabel = '';\r\n contentSelectedCode = '';\r\n\r\n schemaDefinition: Schema;\r\n schemaMetadata: SchemaMetadataModel;\r\n listableSchemas: Schema[];\r\n listableSchemasMetadata: SchemaMetadataModel[];\r\n\r\n currentSchemaFacade: DynamicSchemaFacade;\r\n currentContentsFacade: DynamicContentSchemaFacade;\r\n\r\n selectedSchemaContents: DynamicContentModel[];\r\n selectedContent: DynamicContentModel;\r\n\r\n currentPageSchemas: Schema[];\r\n\r\n referenceFieldValues: any;\r\n referenceFieldValues$: Observable;\r\n orderBySwitch: boolean;\r\n\r\n paginationSize: number = 14;\r\n totalItems: number;\r\n currentPage: number = 1;\r\n isAlphaOrder: boolean = false;\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n userIsReadWrite: boolean;\r\n userIsReader: boolean;\r\n\r\n\r\n constructor(\r\n private readonly dynamicSchemaFacto: DynamicSchemaFactory,\r\n private readonly dynamicContentSchemaFactory: DynamicContentSchemaFactory,\r\n private readonly pageTitleService: PageTitleService,\r\n private readonly route: ActivatedRoute,\r\n private readonly router: Router,\r\n private readonly metadataFacade: SchemaMetadataFacade,\r\n private readonly referenceContentService: FieldReferenceContent,\r\n private authenticationService: AuthenticationService,\r\n translateService: TranslateService) {\r\n super(translateService);\r\n this.setTranslateContext('ContentsComponent');\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.userIsOwner = this.authenticationService.userHasRole(\"Owner\");\r\n this.userIsDev = this.authenticationService.userHasRole(\"Developer\");\r\n this.userIsEditor = this.authenticationService.userHasRole(\"Editor\");\r\n this.userIsReadWrite = this.authenticationService.userHasRole(\"ReadWrite\");\r\n this.userIsReader = this.authenticationService.userHasRole(\"Reader\");\r\n\r\n if (!this.userIsOwner && !this.userIsDev && !this.userIsEditor && !this.userIsReadWrite && !this.userIsReader) {\r\n this.router.navigateByUrl('/');\r\n return;\r\n }\r\n\r\n const sub1 = this.dynamicSchemaFacto\r\n .getSchemasMetadataByCategory(AppSchemaCategory.SCHEMA_AS_A_PAGE).pipe(flatMap(defaults => {\r\n return this.dynamicSchemaFacto\r\n .getSchemasMetadataByCategory(AppSchemaCategory.CONTENT_SCHEMAS).pipe(map(contents => {\r\n return defaults.concat(contents).sort(this.sortByLabel);\r\n }));\r\n }))\r\n .subscribe(result => {\r\n this.listableSchemas = result.filter(meta => meta.name.length <= 40);\r\n const start: number = (this.currentPage - 1) * this.paginationSize;\r\n const end = start + this.paginationSize;\r\n this.totalItems = this.listableSchemas.length;\r\n this.currentPageSchemas = this.listableSchemas.slice(start, end);\r\n });\r\n\r\n this.subscriptions.push(sub1);\r\n\r\n this.updateObservable();\r\n\r\n const sub = this.tc('TITLE').subscribe(title => {\r\n this.pageTitleService.setTitle(title as string);\r\n this.pageTitleService.key = 'CONTENTS.TITLE';\r\n });\r\n this.subscriptions.push(sub);\r\n this.orderBySwitch = false;\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n }\r\n\r\n updateObservable() {\r\n this.schemaSelectedName = this.route.snapshot.paramMap.get('name');\r\n this.contentSelectedCode = this.route.snapshot.paramMap.get('code');\r\n\r\n if (this.schemaSelectedName && this.schemaSelectedName.length > 0) {\r\n this.currentSchemaFacade = this.dynamicSchemaFacto.getDynamicSchemaFacade(this.schemaSelectedName);\r\n\r\n\r\n this.referenceFieldValues$ = this.currentSchemaFacade\r\n .getSchemaDefinition()\r\n .pipe(mergeMap(result => {\r\n this.schemaDefinition = result;\r\n this.schemaSelectedLabel = this.schemaDefinition[\"properties\"][\"label\"];\r\n return this.referenceContentService.generateContentList(result);\r\n }));\r\n\r\n var sub = this.referenceFieldValues$.subscribe();\r\n this.subscriptions.push(sub);\r\n\r\n const sub1 = this.metadataFacade\r\n .getByCode(this.schemaSelectedName)\r\n .subscribe(result => this.schemaMetadata = result);\r\n\r\n this.subscriptions.push(sub1);\r\n\r\n this.currentContentsFacade = this.dynamicContentSchemaFactory\r\n .getDynamicContentSchemaFacade(this.schemaSelectedName);\r\n\r\n this.filterValue = this.route.snapshot.paramMap.get('filter');\r\n this.currentPageNumber = Number(this.route.snapshot.paramMap.get('page'));\r\n\r\n if (this.filterValue === null) {\r\n this.filterValue = '';\r\n }\r\n\r\n const filterObject = {\r\n or:\r\n [\r\n {\r\n path: 'data.code.iv',\r\n op: 'contains',\r\n value: this.filterValue\r\n }\r\n ]\r\n }\r\n\r\n const filter = new FilterPagination();\r\n\r\n filter.from = (this.currentPageNumber - 1) * this.paginateSize;\r\n filter.to = filter.from + this.paginateSize;\r\n filter.orderBy = 'data.index.iv ascending,data.code.iv ascending';\r\n filter.filterObject = this.getSearchObject(this.filterValue);\r\n\r\n this.currentContentsFacade.getFilteredPagination(filter, ESchemaContentStatus.All, filterObject)\r\n .subscribe(contents => {\r\n this.selectedSchemaContents = contents;\r\n this.currentContentsFacade.fullCount().subscribe(c => {\r\n this.contentCount = c;\r\n });\r\n });\r\n\r\n if (this.contentSelectedCode && this.contentSelectedCode.length > 0) {\r\n\r\n this.currentContentsFacade.getByCode(this.contentSelectedCode, true).subscribe(c => {\r\n this.selectedContent = c;\r\n });\r\n }\r\n\r\n } else {\r\n this.schemaDefinition = null;\r\n this.schemaMetadata = null;\r\n }\r\n }\r\n\r\n getSearchObject(filter): object {\r\n const oSearch = {\r\n or:\r\n [\r\n {\r\n path: 'data.code.iv',\r\n op: 'contains',\r\n value: filter\r\n }\r\n ]\r\n }\r\n return oSearch;\r\n }\r\n\r\n updatePaginateSize(qty: number) {\r\n this.paginateSize = qty;\r\n this.updateObservable();\r\n }\r\n\r\n unselectSchema() {\r\n this.schemaSelectedName = '';\r\n this.selectedSchemaContents = null;\r\n }\r\n\r\n getPageData($event) {\r\n this.currentPageNumber = $event.page;\r\n this.search(null, true);\r\n }\r\n\r\n getSearchFilterContent($event) {\r\n this.currentContentsFacade.getFilteredPagination($event, ESchemaContentStatus.All, $event.filterObject)\r\n .subscribe(contents => {\r\n this.selectedSchemaContents = contents;\r\n this.currentContentsFacade.fullCount().subscribe(c => {\r\n this.contentCount = c;\r\n });\r\n });\r\n }\r\n\r\n setOrderBySwitch(bySwitch: boolean) {\r\n this.orderBySwitch = bySwitch;\r\n }\r\n\r\n pageChanged(event: any) {\r\n\r\n this.currentPage = event.page;\r\n\r\n const start: number = (this.currentPage - 1) * this.paginationSize;\r\n const end = start + this.paginationSize;\r\n\r\n this.currentPageSchemas = this.listableSchemas.slice(start, end);\r\n }\r\n\r\n setAlphaOrder(isAlpha: boolean) {\r\n this.isAlphaOrder = isAlpha;\r\n }\r\n\r\n redirectToSelectedSchema() {\r\n this.router.navigateByUrl(`/schemas/${this.schemaSelectedName}`);\r\n }\r\n\r\n}\r\n","import { FileSystemEntry, FileSystemFileEntry, FileSystemDirectoryEntry } from './dom.types';\r\n\r\n/**\r\n * fileEntry is an instance of {@link FileSystemFileEntry} or {@link FileSystemDirectoryEntry}.\r\n * Which one is it can be checked using {@link FileSystemEntry.isFile} or {@link FileSystemEntry.isDirectory}\r\n * properties of the given {@link FileSystemEntry}.\r\n */\r\nexport class NgxFileDropEntry {\r\n constructor(\r\n public relativePath: string,\r\n public fileEntry: FileSystemEntry\r\n ) {\r\n }\r\n}\r\n","\r\n// TODO: Refactor the function generate form in BaseComponent here\r\nexport class FormGroupBuilder {\r\n\r\n}\r\n","import { Store } from '@datorama/akita';\r\nimport { DynamicSchemaModel } from './dynamic-schema.model';\r\n\r\nexport class DynamicSchemaStore extends Store {\r\n public constructor(schemaName: string) {\r\n super(new DynamicSchemaModel(), { cache : { ttl : 15000}, name : `${schemaName}-schema`});\r\n }\r\n }\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from \"../../../base/base-component.component\";\r\n\r\n@Component({\r\n selector: 'assets-left-menu',\r\n templateUrl: './assets-left-menu.component.html',\r\n styleUrls: ['./assets-left-menu.component.css']\r\n})\r\nexport class AssetsLeftMenuComponent extends BaseComponent implements OnInit {\r\n \r\n constructor(\r\n translateService: TranslateService) {\r\n super(translateService);\r\n this.setTranslateContext('AssetsLeftMenuComponent');\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","declare var $: any;\r\nimport { Component, OnInit, ViewChild, AfterViewInit, TemplateRef, Inject, Input } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport {\r\n PageFacade,\r\n UiNotificationService,\r\n FormValidationsService,\r\n PageModel,\r\n Field,\r\n SquidexDate,\r\n DataParser,\r\n SiteSettingFacade,\r\n ScheduleJob,\r\n LanguageModel,\r\n PageContentFacade,\r\n PageContentModel,\r\n DynamicSchemaFactory,\r\n SchemaMetadataFacade,\r\n DynamicContentSchemaFactory,\r\n Schema,\r\n Content,\r\n LayoutModel,\r\n TemplateModel,\r\n DynamicSchemaModel,\r\n TemplateFacade,\r\n SchemaPageFacade,\r\n SchemaPageModel,\r\n DynamicContentModel,\r\n DynamicContentSchemaFacade,\r\n AssetFacade,\r\n MenuFacade,\r\n MenuItemFacade,\r\n AuthenticationService,\r\n FilterPagination\r\n} from '../../services';\r\nimport { SpinnerService } from '../../shared/spinner/spinner.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../base/base-component.component';\r\nimport { AppToken, Statuses, PreviewDevices, AppSchemaCategory, FieldsName, UserRoles } from '../../models/app-token';\r\nimport { FormGroup, FormControl, ValidatorFn, Validators } from '@angular/forms';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { BsDatepickerConfig } from 'ngx-bootstrap/datepicker';\r\nimport { TabsetComponent } from 'ngx-bootstrap/tabs';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { PageTitleService } from '../../services/general/page-title.service';\r\nimport { ESchemaContentStatus } from '../../services/akita/base/enum';\r\nimport { guid } from '@datorama/akita';\r\nimport { SquidexTool, Validation } from '../../tools';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { PageTypeModel } from '../../services/akita/page-type/page-type.model';\r\nimport { SchemaPageComponent } from './schema-page/schema-page.component';\r\n\r\n\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\n@Component({\r\n selector: 'advanced-page',\r\n templateUrl: './advanced-page.component.html',\r\n styleUrls: ['./advanced-page.component.scss']\r\n})\r\nexport class AdvancedPageComponent extends BaseComponent implements OnInit, AfterViewInit {\r\n\r\n\r\n pageForm: FormGroup;\r\n pageHiddenFields: string[] = [];\r\n pagePublishFormGroup: FormGroup;\r\n pageTemplateForm: FormGroup;\r\n\r\n\r\n @ViewChild('propertyTabs', null) propertyTabs: TabsetComponent;\r\n @ViewChild('contentTabs', null) contentTabs: TabsetComponent;\r\n @ViewChild(\"schemaPage\", null) schemaPageComponent: SchemaPageComponent;\r\n\r\n modalRef: BsModalRef;\r\n bsConfig: Partial;\r\n\r\n pageSchema: Schema;\r\n lastModifiedDate: string;\r\n title: string;\r\n id: string;\r\n draftMode: boolean = false;\r\n\r\n deleted: boolean = false;\r\n isDraft: boolean = false;\r\n currentStatus: string;\r\n scheduledJob: ScheduleJob;\r\n statusColorClassName: string;\r\n isAllOpen: boolean;\r\n isCollapsed: boolean = true;\r\n collapseControlsEditTemplate: any = {};\r\n currentPage: PageModel;\r\n placeHolderPage: PageModel;\r\n draftVersionExist: boolean = false;\r\n\r\n previewWidth: number;\r\n previewHeight: number;\r\n previewUrl: any;\r\n testUrl: any;\r\n\r\n dataParser: DataParser;\r\n availableLanguages: LanguageModel[];\r\n\r\n pageContents: PageContentModel[];\r\n pageContentForm: FormGroup;\r\n pageContentHiddenFields: string[] = [];\r\n pageContentFields: Field[];\r\n schemas: Schema[];\r\n contents: Content[];\r\n\r\n pageFilters: Content[];\r\n pageFilterHiddenFields: string[] = [];\r\n pageFilterForm: FormGroup;\r\n pageFilterFields: Field[];\r\n selectedPageFilterId: string;\r\n pathFields: string[] = [];\r\n\r\n schemaPage: SchemaPageModel;\r\n relatedContent: DynamicContentModel;\r\n relatedContentFacade: DynamicContentSchemaFacade;\r\n\r\n pageContentsDescription: any = {};\r\n selectedPageContentId: string;\r\n sharedFieldsContentPage: string[] = [];\r\n\r\n userIsOwner: boolean;\r\n userIsDev: boolean;\r\n userIsEditor: boolean;\r\n userIsReadWrite: boolean;\r\n userIsReader: boolean;\r\n\r\n pageLayouts: LayoutModel[];\r\n pageTypes: PageTypeModel[];\r\n pageTemplate: TemplateModel;\r\n pageTemplateSchema: DynamicSchemaModel;\r\n\r\n thumbnail: string = '';\r\n\r\n cloneNgModel: any = {};\r\n showAction: boolean = false;\r\n\r\n languageCustomClass: string = 'language-nav-tabs';\r\n publishDateTime: string = '';\r\n\r\n squidexTool: SquidexTool;\r\n constructor(\r\n private readonly pageTitleService: PageTitleService,\r\n private readonly pageFacade: PageFacade,\r\n private readonly pageContentFacade: PageContentFacade,\r\n private readonly schemaPageFacade: SchemaPageFacade,\r\n private readonly templateFacade: TemplateFacade,\r\n private readonly menuFacade: MenuFacade,\r\n private readonly menuItemFacade: MenuItemFacade,\r\n private readonly siteSettingFacade: SiteSettingFacade,\r\n private readonly schemaFacadeFactory: DynamicSchemaFactory,\r\n private readonly schemaMetadataFacade: SchemaMetadataFacade, //To be used\r\n private readonly contentFacadeFactory: DynamicContentSchemaFactory,\r\n private readonly uiNotificationService: UiNotificationService,\r\n private readonly spinnerService: SpinnerService,\r\n translateService: TranslateService,\r\n private readonly formValidationService: FormValidationsService,\r\n private readonly route: ActivatedRoute,\r\n private readonly router: Router,\r\n @Inject(DOCUMENT) private readonly document: any,\r\n private readonly modalService: BsModalService,\r\n private readonly sanitizer: DomSanitizer,\r\n private readonly authenticationService: AuthenticationService,\r\n private readonly assetFacade: AssetFacade\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('AdvancedPageComponent');\r\n\r\n this.pageHiddenFields = ['deleted',\r\n 'publishdatetime',\r\n 'deletedatetime',\r\n 'index',\r\n 'thumbnail',\r\n ];\r\n\r\n this.pageContentHiddenFields = ['deleted',\r\n 'publishdatetime',\r\n 'deletedatetime',\r\n 'pageid',\r\n 'index',\r\n 'ismodified',\r\n 'thumbnail',\r\n ]; //to be inited by schemaMetatadat hidden Field\r\n this.pageFilterHiddenFields = ['deleted',\r\n 'publishdatetime',\r\n 'deletedatetime',\r\n 'index',\r\n 'pageid']; //to be inited by schemaMetatadat hidden Field\r\n\r\n this.sharedFieldsContentPage = [\r\n 'index',\r\n 'metatitle',\r\n 'url',\r\n 'metaKeywords',\r\n 'metaDescription',\r\n 'isactive',\r\n 'issecure',\r\n 'isnoindex',\r\n 'priority',\r\n 'pageName'\r\n ];\r\n\r\n this.isAllOpen = false;\r\n this.testUrl = 'https://localhost:5002';\r\n }\r\n\r\n ngOnInit() {\r\n this.spinnerService.show();\r\n\r\n this.userIsOwner = this.authenticationService.userHasRole(UserRoles.OWNER);\r\n this.userIsDev = this.authenticationService.userHasRole(UserRoles.DEVELOPER);\r\n this.userIsEditor = this.authenticationService.userHasRole(UserRoles.EDITOR);\r\n this.userIsReadWrite = this.authenticationService.userHasRole(UserRoles.READWRITE);\r\n this.userIsReader = this.authenticationService.userHasRole(UserRoles.READER);\r\n\r\n this.squidexTool = new SquidexTool();\r\n\r\n //to be removed when siteModel passed in router outlet\r\n const siteSettingSubscription = this.siteSettingFacade.getSiteLanguages().subscribe(languages => {\r\n if (languages.length <= 1) {\r\n this.languageCustomClass = 'hide-nav-tabs';\r\n }\r\n this.dataParser = new DataParser(languages);\r\n this.availableLanguages = languages.sort((a, b) => a.data.index.iv < b.data.index.iv ? -1 : 1);\r\n const code = this.route.snapshot.paramMap.get('code');\r\n const name = this.route.snapshot.paramMap.get('name');\r\n const draftMode = this.route.snapshot.paramMap.get('draftMode') === 'true';\r\n\r\n let isEx = false;\r\n this.relatedContentFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(name);\r\n const relatedContentSubscription = this.relatedContentFacade.getByCode(code, true).subscribe(content => {\r\n if (content && !isEx) {\r\n this.relatedContent = content;\r\n const schemaPageSubscription = this.schemaPageFacade.getSchemaPageByContentId(content.id, true).subscribe(sPage => {\r\n this.schemaPage = sPage;\r\n let isExecuted = false;\r\n const pageSubscription = this.pageFacade.getSchema().subscribe(pageSchema => {\r\n this.pageSchema = pageSchema;\r\n const singlePageSubscription = this.pageFacade.get(this.dataParser.pullData(this.schemaPage, FieldsName.PAGE_ID), true).subscribe(page => {\r\n if (page && !isExecuted) {\r\n this.placeHolderPage = page;\r\n let clonePage = cloneDeep(page);\r\n //mapping propriety of page from content\r\n for (let i in this.sharedFieldsContentPage) {\r\n const field = this.sharedFieldsContentPage[i];\r\n clonePage.data[field] = this.relatedContent.data[field];\r\n }\r\n this.currentPage = clonePage;\r\n if (draftMode) {\r\n this.draftMode = draftMode;\r\n this.publishDateTime = '';\r\n if (this.draftMode && !this.relatedContent.newStatus) {\r\n this.createDraft();\r\n } else {\r\n this.initContentsAndForms();\r\n }\r\n } else {\r\n this.publishDateTime = this.getPublishDate(this.relatedContent);\r\n this.draftMode = false;\r\n this.initContentsAndForms();\r\n }\r\n isExecuted = true;\r\n } else {\r\n this.spinnerService.hide();\r\n const translateSubscription = this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.PAGE_LOAD_ERROR, c.ERROR);\r\n });\r\n this.subscriptions.push(translateSubscription);\r\n }\r\n });\r\n this.subscriptions.push(singlePageSubscription);\r\n });\r\n this.subscriptions.push(pageSubscription);\r\n });\r\n this.subscriptions.push(schemaPageSubscription);\r\n isEx = true;\r\n } else {\r\n if (!content) {\r\n this.templateFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.PAGE_LOAD_ERROR, c.ERROR, 1000);\r\n this.spinnerService.hide();\r\n });\r\n }\r\n }\r\n });\r\n\r\n this.subscriptions.push(relatedContentSubscription);\r\n\r\n this.bsConfig = Object.assign({},\r\n { containerClass: \"theme-orange\", dateInputFormat: AppToken.ISO_DATES_DATE_TIME_UPDATE });\r\n });\r\n\r\n this.subscriptions.push(siteSettingSubscription);\r\n }\r\n\r\n getPublishDate(content: DynamicContentModel) {\r\n let dt = '';\r\n\r\n if (content.scheduleJob) {\r\n return this.squidexTool.utcToDateString(content.scheduleJob.dueTime);\r\n } else {\r\n return this.squidexTool.utcToDateString(this.dataParser.pullData(content, \"publishdatetime\"));\r\n }\r\n }\r\n\r\n private initContentsAndForms() {\r\n this.initContents(this.currentPage);\r\n this.createForm(this.pageSchema.fields, this.currentPage);\r\n const pageUrl = this.buildUrl(this.dataParser.pullData(this.currentPage, 'url', this.dataParser.currentLanguageCode));\r\n this.setPreviewUrl(pageUrl);\r\n }\r\n\r\n private initContents(pageContent: PageModel) {\r\n this.lastModifiedDate = this.pageFacade.getLastModifiedDate(pageContent);\r\n this.title = this.dataParser.pullData(pageContent, FieldsName.METATITLE, this.dataParser.currentLanguageCode);\r\n this.id = pageContent.id;\r\n if (this.relatedContent.scheduleJob && this.relatedContent.scheduleJob.status === 'Published') {\r\n this.currentStatus = this.relatedContent.scheduleJob.status;\r\n } else if (this.relatedContent.newStatus) {\r\n this.currentStatus = this.relatedContent.newStatus;\r\n } else {\r\n this.currentStatus = this.relatedContent.status;\r\n }\r\n this.scheduledJob = this.relatedContent.scheduleJob;\r\n this.deleted = this.dataParser.pullData(pageContent, FieldsName.DELETED, 'iv');\r\n this.updateStatusAndStatusColor(this.currentStatus);\r\n const pageUrl = `${this.document.location.origin}${this.dataParser.pullData(this.relatedContent, 'url', this.dataParser.currentLanguageCode)}?draftMode=${this.draftMode}`;\r\n this.testUrl = pageUrl;\r\n\r\n this.updateIframeSrc(this.testUrl, PreviewDevices.DESKTOP.name);\r\n\r\n let manageContent: HTMLElement = document.getElementById('manage_content') as HTMLElement;\r\n manageContent.click();\r\n\r\n //check if draft version exist\r\n this.isExistDraftVersion();\r\n\r\n this.tc().subscribe(v => {\r\n let title = '';\r\n if (this.title && this.title !== '') {\r\n title = v['NAME'] + this.title;\r\n }\r\n this.pageTitleService.setTitle(title);\r\n this.pageTitleService.key = 'ADVANCEDPAGE.NAME';\r\n });\r\n\r\n this.pageContentFacade.getPageContentsByPageId(this.id, 'data/index/iv', this.draftMode).subscribe(pageContents => {\r\n this.pageContents = pageContents;\r\n });\r\n\r\n //init all schema\r\n this.schemaFacadeFactory.getSchemasMetadataByCategory(AppSchemaCategory.CONTENT_SCHEMAS).subscribe(schemas => {\r\n this.schemas = schemas.filter(sch => sch.name.length <= AppToken.SCHEMA_NAME_MAX_LEGTH);\r\n });\r\n\r\n //init pageLayouys\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.LAYOUT_SCHEMA_NAME)\r\n .getTopX(1000, undefined, undefined, ESchemaContentStatus.Published).subscribe(layouts => {\r\n this.pageLayouts = layouts;\r\n });\r\n\r\n //init pageTypes\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_TYPE_SCHEMA_NAME)\r\n .getTopX(1000, undefined, undefined, ESchemaContentStatus.Published).subscribe(pageTypes => {\r\n this.pageTypes = pageTypes;\r\n });\r\n\r\n\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME)\r\n .getByParentId(this.id, FieldsName.PAGE_ID, 'id', this.draftMode).subscribe(pageFilters => {\r\n this.pageFilters = pageFilters;\r\n\r\n this.pageFilters.forEach(pageFilter => {\r\n const data: any = {\r\n isCollapsed: true,\r\n };\r\n this.collapseControlsEditTemplate[pageFilter.id] = data;\r\n });\r\n\r\n });\r\n\r\n //init template\r\n const templateId = this.dataParser.pullData(pageContent, FieldsName.TEMPLATE)[0];\r\n if (Validation.isValidGuid(templateId)) {\r\n\r\n this.templateFacade.get(templateId, this.draftMode).subscribe(template => {\r\n this.pageTemplate = template;\r\n if (this.pageTemplate) {\r\n this.schemaFacadeFactory.getDynamicSchemaFacade(AppToken.TEMPLATE_SCHEMA_NAME).getSchemaDefinition()\r\n .subscribe(templateSchema => {\r\n this.pageTemplateSchema = templateSchema;\r\n this.pageTemplateForm = new FormGroup(this.generateFormGroup(null, templateSchema.fields, [''], this.pageTemplate, this.draftMode));\r\n });\r\n }\r\n });\r\n } else {\r\n this.pageTemplate = null;\r\n this.pageTemplateForm = null;\r\n this.pageTemplateSchema = null;\r\n }\r\n }\r\n private isDirty() {\r\n return (this.pageForm || this.pageTemplateForm);\r\n }\r\n\r\n private updatePageTemplateContent(hideSpinner: boolean = true) {\r\n let tempTemplatePage = cloneDeep(this.pageTemplate);\r\n if (this.isDirty()) {\r\n const newData = this.dataParser.setContent(tempTemplatePage, this.pageTemplateSchema.fields.find(f => f.name === FieldsName.BODY) as Field, this.pageTemplateForm.get(FieldsName.BODY).value);\r\n this.templateFacade.update(tempTemplatePage.id, newData)\r\n .subscribe(v => {\r\n if (v) {\r\n this.lastModifiedDate = this.pageFacade.getLastModifiedDate(v);\r\n if (hideSpinner) {\r\n this.templateFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_PAGE_SUCCESS, c.SUCCESS_TITLE);\r\n this.spinnerService.hide();\r\n });\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n toogleShowAction() {\r\n this.showAction = !this.showAction;\r\n }\r\n\r\n openCloneModal(cloneTemplate) {\r\n console.log(cloneTemplate);\r\n this.modalRef = this.modalService.show(cloneTemplate);\r\n }\r\n\r\n confirmClone() {\r\n let name = this.cloneNgModel['name'];\r\n\r\n if (Validation.isNullEmptyOrWhiteSpaces(name)) {\r\n this.uiNotificationService.error('Name is required', 'Error');\r\n return;\r\n }\r\n\r\n let urls = {};\r\n\r\n this.availableLanguages.forEach(lang => {\r\n let langCode = lang.data.code.iv;\r\n let url = this.cloneNgModel[`url_${langCode}`];\r\n\r\n if (Validation.isNullEmptyOrWhiteSpaces(url)) {\r\n this.uiNotificationService.error(`Url ${langCode} is required`, 'Error');\r\n return;\r\n }\r\n\r\n urls[langCode] = url;\r\n });\r\n\r\n //TODO: validate urls are unique and begin with /\r\n this.pageInternalService.clonePage(this.currentPage.id, name, urls, true).subscribe(callback => {\r\n this.modalRef.hide();\r\n this.pageSelected = null;\r\n if (callback.isSuccess()) {\r\n console.log(callback.content);\r\n this.router.navigateByUrl(`/page/${callback.content.data.code.iv}`)\r\n return;\r\n }\r\n\r\n this.uiNotificationService.error(callback.getMessage(), 'Error');\r\n });\r\n }\r\n\r\n createDraft() {\r\n this.pageFacade.createDraft(this.currentPage.id).subscribe(p => {\r\n\r\n this.pageFacade.removeStore(p.id);\r\n\r\n //create draft for page content\r\n this.relatedContentFacade.createDraft(this.relatedContent.id).subscribe(c => {\r\n this.currentPage = p;\r\n this.relatedContent = c;\r\n this.initContentsAndForms();\r\n\r\n //create draft for template\r\n this.templateFacade.createDraft(this.pageTemplate.id).subscribe();\r\n\r\n //create draft for page section\r\n this.pageContents.forEach(pc => {\r\n this.pageContentFacade.createDraft(pc.id).subscribe();\r\n });\r\n\r\n //create draft for page filter\r\n this.pageFilters.forEach(pf => {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).createDraft(pf.id).subscribe();\r\n });\r\n this.spinnerService.hide();\r\n });\r\n });\r\n }\r\n\r\n deleteDraft() {\r\n this.pageFacade.removeDraft(this.currentPage.id).subscribe(() => {\r\n this.relatedContentFacade.removeDraft(this.relatedContent.id).subscribe(c => {\r\n this.isExistDraftVersion();\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n this.reloadPage(false);\r\n });\r\n });\r\n });\r\n\r\n this.templateFacade.removeDraft(this.pageTemplate.id).subscribe();\r\n\r\n this.pageContents.forEach(pc => {\r\n this.pageContentFacade.removeDraft(pc.id).subscribe();\r\n });\r\n\r\n this.pageFilters.forEach(pf => {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).removeDraft(pf.id).subscribe();\r\n });\r\n }\r\n\r\n private isExistDraftVersion() {\r\n if (!this.relatedContent.newStatus && this.relatedContent.status === 'Draft' && !this.relatedContent.scheduleJob) {\r\n this.draftVersionExist = true;\r\n this.draftMode = true;\r\n this.publishDateTime = '';\r\n } else {\r\n if (this.relatedContent.scheduleJob) {\r\n this.currentStatus = \"Published\"\r\n } else {\r\n this.relatedContentFacade.get(this.relatedContent.id, true).subscribe(p => {\r\n if (p.newStatus) {\r\n this.draftVersionExist = true;\r\n this.draftMode = true;\r\n this.publishDateTime = '';\r\n } else {\r\n this.draftVersionExist = false;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n updateRelatedContent(updateChild = false) {\r\n if (!this.pageForm.valid) {\r\n this.pageForm.markAllAsTouched();\r\n console.error(\"Form is not valid\");\r\n console.error(this.pageForm);\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.INVALID_FORM, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n\r\n const values = this.pageForm.value;\r\n\r\n let newContentData: any = {};\r\n newContentData = cloneDeep(this.relatedContent.data);\r\n\r\n let sharedFields = this.pageSchema.fields.filter(field => this.sharedFieldsContentPage.includes(field.name));\r\n\r\n for (let field of sharedFields) {\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n newContentData = this.dataParser.setData(newContentData, field, values[field.name + '_' + language], language);\r\n }\r\n } else {\r\n newContentData = this.dataParser.setData(newContentData, field, values[field.name]);\r\n }\r\n }\r\n\r\n const urls = new Array();\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n urls.push(newContentData['url'][language]);\r\n }\r\n\r\n const urlsDistinct = [...new Set(urls)];\r\n if (urls.length > urlsDistinct.length) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_NOT_DISTINCT, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n let startWithSlash: boolean = true;\r\n urls.forEach(url => {\r\n if (!url.trim().startsWith('/')) {\r\n startWithSlash = false;\r\n return;\r\n }\r\n });\r\n\r\n if (!startWithSlash) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_START_SLASH, c.FAILED_TITLE, 10000);\r\n });\r\n return false;\r\n }\r\n\r\n const allVersionParm = new FilterPagination();\r\n allVersionParm.from = 0;\r\n allVersionParm.to = 1;\r\n allVersionParm.filter = '';\r\n allVersionParm.orderBy = 'lastModified descending';\r\n\r\n let filterList: object[] = new Array();\r\n for (const lg of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n let data: any = {};\r\n data = {\r\n path: `data.url.${lg}`,\r\n op: 'eq',\r\n value: newContentData['url'][language]\r\n };\r\n\r\n filterList.push(data);\r\n }\r\n }\r\n\r\n let orFilter: any = {};\r\n orFilter = {\r\n or: filterList\r\n }\r\n\r\n this.pageFacade.validateUrl(allVersionParm, ESchemaContentStatus.All, orFilter, this.currentPage).subscribe(total => {\r\n if (total > 0) {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.URL_TAKEN, c.FAILED_TITLE, 10000);\r\n });\r\n return;\r\n }\r\n\r\n this.spinnerService.show();\r\n\r\n if (this.relatedContent) {\r\n this.relatedContentFacade\r\n .update(this.relatedContent.id, newContentData)\r\n .subscribe(content => {\r\n this.lastModifiedDate = this.pageFacade.getLastModifiedDate(content);\r\n this.relatedContent = content;\r\n });\r\n }\r\n\r\n newContentData = {};\r\n newContentData = cloneDeep(this.placeHolderPage.data);\r\n let pageFields = this.pageSchema.fields\r\n .filter(field => !this.pageHiddenFields.includes(field.name))\r\n .filter(field => !this.sharedFieldsContentPage.includes(field.name))\r\n\r\n for (let field of pageFields) {\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n newContentData = this.dataParser.setData(newContentData, field, values[field.name + '_' + language], language);\r\n }\r\n } else {\r\n newContentData = this.dataParser.setData(newContentData, field, values[field.name]);\r\n }\r\n }\r\n\r\n this.pageFacade\r\n .update(this.id, newContentData)\r\n .subscribe(newContent => {\r\n if (newContent.data.code.iv !== '' && newContent.data.url[this.dataParser.currentLanguageCode] !== '' && this.pageTemplateForm.dirty && !newContent.data.issecure.iv) {\r\n this.updatePageTemplateContent(false);\r\n this.pageCapture(newContent);\r\n } else {\r\n this.updatePageTemplateContent();\r\n if (updateChild) {\r\n this.schemaPageComponent.updateChild(false);\r\n }\r\n }\r\n },\r\n err => {\r\n console.error('Observer got an error: ' + err);\r\n this.spinnerService.hide();\r\n }\r\n );\r\n\r\n // this.spinnerService.hide();\r\n });\r\n }\r\n\r\n switchModeDratLive(event) {\r\n this.draftMode = event.srcElement.checked;\r\n\r\n this.pageFacade.get(this.currentPage.id, this.draftMode).subscribe(page => {\r\n this.relatedContentFacade.get(this.relatedContent.id, this.draftMode).subscribe(content => {\r\n this.relatedContent = content;\r\n let clonePage = cloneDeep(page);\r\n //mapping propriety of page from content\r\n for (let i in this.sharedFieldsContentPage) {\r\n let field = this.sharedFieldsContentPage[i];\r\n clonePage.data[field] = content.data[field];\r\n }\r\n this.currentPage = clonePage;\r\n if (this.draftMode) {\r\n if (this.draftMode && !this.relatedContent.newStatus) {\r\n this.createDraft();\r\n } else {\r\n this.initContentsAndForms();\r\n }\r\n } else {\r\n this.draftMode = false;\r\n this.initContentsAndForms();\r\n }\r\n });\r\n });\r\n }\r\n\r\n reloadPage(draftMode: boolean) {\r\n this.draftMode = draftMode;\r\n\r\n this.pageFacade.get(this.currentPage.id, this.draftMode).subscribe(page => {\r\n this.spinnerService.show();\r\n this.relatedContentFacade.get(this.relatedContent.id, this.draftMode).subscribe(content => {\r\n this.relatedContent = content;\r\n let clonePage = cloneDeep(page);\r\n //mapping propriety of page from content\r\n for (let i in this.sharedFieldsContentPage) {\r\n let field = this.sharedFieldsContentPage[i];\r\n clonePage.data[field] = content.data[field];\r\n }\r\n this.currentPage = clonePage;\r\n if (this.draftMode) {\r\n if (this.draftMode) {\r\n this.createDraft();\r\n } else {\r\n this.initContentsAndForms();\r\n }\r\n } else {\r\n this.draftMode = false;\r\n this.initContentsAndForms();\r\n }\r\n });\r\n });\r\n }\r\n\r\n private createForm(schemaFields: Field[], pageContent: PageModel): void {\r\n\r\n let tempPageContent = cloneDeep(pageContent);\r\n\r\n const formGroup: any = {};\r\n\r\n for (let i = 0; i < schemaFields.length; i++) {\r\n\r\n const field = schemaFields[i];\r\n\r\n const fieldProperties = field.properties;\r\n\r\n if (field.partitioning === 'language') {\r\n\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n const fieldName = `${field.name}_${language}`;\r\n\r\n const fieldValue = this.dataParser.getData(tempPageContent, field, language);\r\n\r\n const control = new FormControl(fieldValue);\r\n\r\n const isRequired = fieldProperties.isRequired;\r\n\r\n let validators: ValidatorFn[] = [];\r\n\r\n if (isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n\r\n if (fieldProperties.maxLength) {\r\n let maxLengthValidator = Validators.maxLength(fieldProperties.maxLength);\r\n validators.push(maxLengthValidator);\r\n }\r\n\r\n if (fieldProperties.minLength) {\r\n let minLengthValidator = Validators.minLength(fieldProperties.minLength);\r\n validators.push(minLengthValidator);\r\n }\r\n\r\n //custom pattern\r\n if (fieldProperties.pattern) {\r\n validators = validators.concat(this.formValidationService.getValidators(control, fieldProperties.pattern));\r\n }\r\n\r\n control.setValidators(validators);\r\n\r\n formGroup[fieldName] = control;\r\n }\r\n } else {\r\n\r\n const fieldValue = this.dataParser.getData(tempPageContent, field, 'iv');\r\n\r\n const control = new FormControl(fieldValue);\r\n\r\n const isRequired = fieldProperties.isRequired;\r\n\r\n let validators: ValidatorFn[] = [];\r\n\r\n if (isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n\r\n if (fieldProperties.maxLength) {\r\n let maxLengthValidator = Validators.maxLength(fieldProperties.maxLength);\r\n validators.push(maxLengthValidator);\r\n }\r\n\r\n if (fieldProperties.minLength) {\r\n let minLengthValidator = Validators.minLength(fieldProperties.minLength);\r\n validators.push(minLengthValidator);\r\n }\r\n\r\n //custom pattern\r\n if (fieldProperties.pattern) {\r\n validators = validators.concat(this.formValidationService.getValidators(control, fieldProperties.pattern));\r\n }\r\n\r\n control.setValidators(validators);\r\n\r\n formGroup[field.name] = control;\r\n }\r\n\r\n }\r\n //end loop\r\n this.pageForm = new FormGroup(formGroup);\r\n\r\n if (this.relatedContent) {\r\n this.createMetaDataFormGroup(this.relatedContent);\r\n }\r\n this.pageForm.addControl('pagePublishFormGroup', this.pagePublishFormGroup);\r\n\r\n this.spinnerService.hide();\r\n\r\n }\r\n\r\n private createGenericFormControl(field: string, content: any): FormControl {\r\n\r\n const fieldValue = content[field];\r\n\r\n const control = new FormControl(fieldValue);\r\n\r\n //let validators: ValidatorFn[] = [];\r\n\r\n //control.setValidators(validators);\r\n\r\n return control;\r\n }\r\n\r\n private createMetaDataFormGroup(pageContent: PageModel): void {\r\n\r\n let tempPageContent: PageModel = cloneDeep(pageContent);\r\n\r\n const fields = Object.keys(tempPageContent);\r\n\r\n let metaDataFormGroup: any = {};\r\n let scheduledJob = false;\r\n\r\n for (let i = 0; i < fields.length; i++) {\r\n const field = fields[i];\r\n // this.publishDateTime = this.dataParser.pullData(tempPageContent, \"publishdatetime\");\r\n\r\n if (field === 'scheduleJob') {\r\n scheduledJob = true;\r\n\r\n let fieldsValue = tempPageContent.scheduleJob;\r\n\r\n if (!fieldsValue) {\r\n fieldsValue = { id: null, dueTime: null, scheduledBy: null, status: null };\r\n if (this.publishDateTime && this.getPageStatus(tempPageContent) === 'Published') {\r\n fieldsValue.dueTime = this.squidexTool.dateStringToUtc(this.publishDateTime);\r\n }\r\n\r\n } else {\r\n fieldsValue.dueTime = this.squidexTool.dateStringToUtc(this.publishDateTime);\r\n }\r\n\r\n const fs = Object.keys(fieldsValue);\r\n\r\n let scheduleJobFromGroup: any = {};\r\n\r\n for (let i = 0; i < fs.length; i++) {\r\n scheduleJobFromGroup[fs[i]] = this.createGenericFormControl(fs[i], fieldsValue);\r\n }\r\n\r\n metaDataFormGroup[field] = new FormGroup(scheduleJobFromGroup);\r\n } else {\r\n metaDataFormGroup[field] = this.createGenericFormControl(fields[i], tempPageContent);\r\n }\r\n }\r\n\r\n if (!scheduledJob) {\r\n let fieldsValue = { id: null, dueTime: null, scheduledBy: null, status: null };\r\n\r\n this.publishDateTime = this.getPublishDate(tempPageContent);\r\n\r\n if (tempPageContent.newStatus) {\r\n fieldsValue.status = tempPageContent.newStatus;\r\n this.currentStatus = tempPageContent.newStatus;\r\n this.draftMode = true;\r\n\r\n } else {\r\n const dt = this.dataParser.pullData(tempPageContent, 'publishdatetime')\r\n if (this.publishDateTime > '1970-01-01') {\r\n fieldsValue.dueTime = this.publishDateTime;\r\n }\r\n fieldsValue.status = tempPageContent.status;\r\n this.currentStatus = tempPageContent.status;\r\n this.draftMode = false;\r\n }\r\n\r\n const fs = Object.keys(fieldsValue);\r\n const scheduleJobFromGroup: any = {};\r\n\r\n for (let i = 0; i < fs.length; i++) {\r\n scheduleJobFromGroup[fs[i]] = this.createGenericFormControl(fs[i], fieldsValue);\r\n }\r\n metaDataFormGroup['scheduleJob'] = new FormGroup(scheduleJobFromGroup);\r\n }\r\n\r\n this.pagePublishFormGroup = new FormGroup(metaDataFormGroup);\r\n }\r\n\r\n getPageStatus(page?: PageModel) {\r\n if (!page) {\r\n page = this.currentPage;\r\n }\r\n\r\n if (page.newStatus && page.newStatus === 'Draft')\r\n return 'Draft';\r\n else if (page.status === 'Draft')\r\n return 'Draft';\r\n else\r\n return 'Published';\r\n }\r\n\r\n publish() {\r\n let publishStatus = Statuses.PUBLISHED.name;\r\n if (publishStatus === this.currentStatus) {\r\n this.notify(this.currentStatus, false);\r\n return false;\r\n }\r\n\r\n switch (publishStatus) {\r\n case Statuses.PUBLISHED.name:\r\n this.spinnerService.show();\r\n let dueTime = this.pageForm.value.pagePublishFormGroup.scheduleJob.dueTime;\r\n let publishDate: string;\r\n if (!dueTime) {\r\n dueTime = null;\r\n publishDate = null;\r\n } else {\r\n const currentDate = new Date(Date.now());\r\n const dt = this.pageForm.value.pagePublishFormGroup.scheduleJob.dueTime;\r\n let dueTimeDate = new SquidexDate(dt);\r\n if (dueTimeDate < currentDate) {\r\n publishDate = null\r\n } else {\r\n publishDate = new SquidexDate(dueTimeDate).formatUtc();\r\n }\r\n }\r\n this.relatedContentFacade.updateStatus(this.relatedContent.id, publishStatus, publishDate)\r\n .subscribe(content => {\r\n let tempContent = cloneDeep(content);\r\n if (content.scheduleJob && content.scheduleJob.status === 'Published') {\r\n this.currentStatus = content.scheduleJob.status\r\n }\r\n this.relatedContent = tempContent;\r\n if (this.relatedContent.newStatus) {\r\n this.currentStatus = this.relatedContent.newStatus;\r\n } else {\r\n this.currentStatus = this.relatedContent.status;\r\n }\r\n this.draftMode = false;\r\n this.draftVersionExist = false;\r\n this.lastModifiedDate = this.pageFacade.getLastModifiedDate(content);\r\n this.scheduledJob = content.scheduleJob;\r\n\r\n if (!publishDate) {\r\n let dt = new Date();\r\n publishDate = new SquidexDate(dt).formatUtc();\r\n }\r\n\r\n this.dataParser.putData(tempContent.data, \"publishdatetime\", publishDate);\r\n this.publishMode = true;\r\n this.publishDateTime = this.squidexTool.utcToDateString(publishDate);\r\n\r\n this.currentPage = tempContent;\r\n this.relatedContentFacade.getSchema().subscribe(schema => {\r\n const publishDateField = schema.fields.find(f => f.name === FieldsName.PUBLISH_DATE_TIME);\r\n this.relatedContentFacade.update(this.relatedContent.id, tempContent.data).subscribe(r => {\r\n this.initContentsAndForms();\r\n this.updateStatusAndStatusColor(content.status);\r\n this.spinnerService.hide();\r\n });\r\n });\r\n\r\n this.notify(this.currentStatus);\r\n });\r\n\r\n //publish template\r\n this.templateFacade.updateStatus(this.pageTemplate.id, publishStatus, dueTime).subscribe();\r\n\r\n //publish page section\r\n this.pageContents.forEach(pc => {\r\n this.pageContentFacade.updateStatus(pc.id, publishStatus, dueTime).subscribe();\r\n });\r\n\r\n //publish page filter\r\n this.pageFilters.forEach(pf => {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).updateStatus(pf.id, publishStatus, dueTime).subscribe();\r\n });\r\n\r\n break;\r\n case Statuses.DRAFT.name:\r\n this.relatedContentFacade.updateStatus(this.relatedContent.id, this.pageForm.value.pagePublishFormGroup.status, null)\r\n .subscribe(content => {\r\n this.relatedContent = content;\r\n if (this.relatedContent.newStatus) {\r\n this.currentStatus = this.relatedContent.newStatus;\r\n } else {\r\n this.currentStatus = this.relatedContent.status;\r\n }\r\n this.scheduledJob = content.scheduleJob;\r\n this.updateStatusAndStatusColor(content.status);\r\n this.notify(this.currentStatus);\r\n });\r\n break;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n private notify(status: string, isSuccess: boolean = true): void {\r\n if (isSuccess) {\r\n this.pageFacade.translate('T.STATUS_UPDATE_PAGE', { currentStatus: status }).subscribe(msg => {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(msg, c.SUCCESS_TITLE, 10000);\r\n });\r\n });\r\n } else {\r\n this.pageFacade.translate('T.STATUS_ERROR', { currentStatus: status }).subscribe(msg => {\r\n this.pageFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(msg, c.FAILED_TITLE, 10000);\r\n });\r\n });\r\n }\r\n }\r\n\r\n private updateStatusAndStatusColor(status: string) {\r\n switch (status) {\r\n case Statuses.PUBLISHED.name:\r\n this.isDraft = false;\r\n this.statusColorClassName = 'badge green-badge';\r\n break;\r\n case Statuses.DRAFT.name:\r\n this.isDraft = true;\r\n this.statusColorClassName = 'badge draft-badge';\r\n break;\r\n default:\r\n this.statusColorClassName = 'badge red-badge';\r\n }\r\n }\r\n\r\n private updateStatusSelect(e) {\r\n this.updateStatusAndStatusColor(e.target.value);\r\n }\r\n\r\n private closeModal() {\r\n this.selectedPageContentId = null;\r\n this.collapseAllEditForm();\r\n if (this.modalRef) {\r\n this.modalRef.hide();\r\n }\r\n }\r\n\r\n openModalDeletePage(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n private confirmDeleteDrafts() {\r\n const subscription = this.pageFacade.translate('T').subscribe(c => {\r\n this.deleteDraft();\r\n });\r\n this.closeModal();\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n private confirmDeletePage() {\r\n const subscription = this.pageFacade.translate('T').subscribe(c => {\r\n\r\n if (Validation.isValidGuid(this.id)) {\r\n\r\n //remove all section relation from page\r\n this.pageContentFacade.getPageContentsByPageId(this.id).subscribe(pageContents =>\r\n pageContents.forEach(pageContent => {\r\n this.pageContentFacade.remove(pageContent.id).subscribe();\r\n })\r\n );\r\n\r\n //remove all content relation from page\r\n const schemaPageFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.SCHEMA_PAGE_SCHEMA_NAME);\r\n schemaPageFacade.getByParentId(this.id, FieldsName.PAGE_ID, FieldsName.ID, true).subscribe(schemaPages => {\r\n schemaPages.forEach(sPage => {\r\n schemaPageFacade.remove(sPage.id).subscribe();\r\n });\r\n });\r\n\r\n //remove all page filter\r\n const pageFilterFacade = this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME);\r\n schemaPageFacade.getByParentId(this.id, FieldsName.PAGE_ID, FieldsName.ID, true).subscribe(pageFilter => {\r\n pageFilter.forEach(pFilter => {\r\n pageFilterFacade.remove(pFilter.id).subscribe();\r\n });\r\n });\r\n\r\n //remove template related to page\r\n this.templateFacade.remove(this.pageTemplate.id).subscribe();\r\n\r\n //remove menuItem from menu then remove it\r\n this.menuItemFacade.getMenuItemsByPageId(this.id).subscribe(menuItems => {\r\n menuItems.forEach(menuItem => {\r\n let isExcuted = false;\r\n this.menuFacade.getByParentId(menuItem.id, FieldsName.MENU_ITEMS, FieldsName.ID, true).subscribe(menus => {\r\n if (!isExcuted) {\r\n menus.forEach(menu => {\r\n let menuData = this.clone(menu.data);\r\n let menuItems = menuData.menuItems.iv as string[];\r\n const index = menuItems.indexOf(menuItem.id);\r\n if (index !== -1) {\r\n menuItems.splice(index, 1);\r\n }\r\n this.dataParser.putData(menuData, FieldsName.MENU_ITEMS, menuItems);\r\n this.menuFacade.update(menu.id, menuData).subscribe();\r\n isExcuted = true;\r\n });\r\n }\r\n });\r\n this.menuItemFacade.remove(menuItem.id).subscribe();\r\n });\r\n });\r\n\r\n //remove this page\r\n this.pageFacade.remove(this.id).toPromise().then(\r\n content => {\r\n this.deleted = this.dataParser.pullData(content, FieldsName.DELETED, 'iv');\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n this.spinnerService.show();\r\n setTimeout(() => {\r\n this.router.navigateByUrl('/pages');\r\n }\r\n , 5000);\r\n },\r\n () => {\r\n this.uiNotificationService.success(c.DELETE_FAILED, c.FAILED_TITLE);\r\n this.closeModal();\r\n });\r\n\r\n }\r\n });\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n openModalDeletePageContent(template: TemplateRef, id: string) {\r\n this.selectedPageContentId = id;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n private confirmDeletePageContent() {\r\n const subscription = this.pageContentFacade.translate('T').subscribe(c => {\r\n if (Validation.isValidGuid(this.selectedPageContentId)) {\r\n this.pageContentFacade.remove(this.selectedPageContentId).toPromise().then(\r\n () => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n this.pageContentFacade.getPageContentsByPageId(this.id, 'id', this.draftMode).subscribe(pageContents => {\r\n this.pageContents = pageContents;\r\n });\r\n },\r\n () => { this.uiNotificationService.success(c.DELETE_FAILED, c.FAILED_TITLE); });\r\n }\r\n });\r\n\r\n this.closeModal();\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n openModalDeletePageFilter(template: TemplateRef, id: string) {\r\n this.selectedPageFilterId = id;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n private confirmDeletePageFilter() {\r\n const subscription = this.pageContentFacade.translate('T').subscribe(c => {\r\n if (Validation.isValidGuid(this.selectedPageFilterId)) {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).remove(this.selectedPageFilterId).toPromise().then(\r\n () => {\r\n this.uiNotificationService.success(c.DELETE_SUCCESS, c.SUCCESS_TITLE);\r\n this.pageFilters = this.pageFilters.filter(pf => pf.id !== this.selectedPageFilterId);\r\n this.selectedPageFilterId = null;\r\n },\r\n () => { this.uiNotificationService.success(c.DELETE_FAILED, c.FAILED_TITLE); });\r\n }\r\n });\r\n this.closeModal();\r\n this.subscriptions.push(subscription);\r\n }\r\n\r\n toggleDescription(e) {\r\n $(e.currentTarget).closest('.frais-main').find('.minu-cnt').slideToggle();\r\n $(e.currentTarget).closest('.frais-main').toggleClass('active');\r\n }\r\n\r\n private buildUrl(url: string): string {\r\n if (!url) {\r\n throw (\"Url undefined\");\r\n }\r\n return `${this.document.location.origin}${url}?draftMode=${this.draftMode}`;\r\n }\r\n\r\n selectTab(e, tabId: number, tabSet: TabsetComponent) {\r\n\r\n if (tabSet === this.contentTabs && tabId === 0) {\r\n const pageUrl = this.buildUrl(this.dataParser.pullData(this.relatedContent, 'url', this.dataParser.currentLanguageCode));\r\n this.updateIframeSrc(pageUrl);\r\n }\r\n tabSet.tabs[tabId].active = true;\r\n $(e.currentTarget).parent().parent().find('li').removeClass('active');\r\n $(e.currentTarget).parent().addClass('active');\r\n }\r\n\r\n changeLanguage(event, languageCode) {\r\n this.dataParser.changeLanguage(languageCode);\r\n $(event.currentTarget).parent().parent().find('li').removeClass('active');\r\n $(event.currentTarget).parent().addClass('active');\r\n const pageUrl = `${this.document.location.origin}${this.dataParser.pullData(this.relatedContent, 'url', this.dataParser.currentLanguageCode)}?draftMode=${this.draftMode}`;\r\n this.updateIframeSrc(pageUrl, '');\r\n this.setPreviewUrl(pageUrl);\r\n }\r\n\r\n private updateIframe(event, url: string, plateForme: string) {\r\n this.updateIframeSrc(url, plateForme);\r\n $(event.currentTarget).parent().parent().find('li').removeClass('active');\r\n $(event.currentTarget).parent().addClass('active');\r\n }\r\n\r\n private updateIframeSrc(url: string, plateForme: string = null) {\r\n switch (plateForme) {\r\n case PreviewDevices.DESKTOP.name:\r\n this.previewHeight = PreviewDevices.DESKTOP.height;\r\n this.previewWidth = PreviewDevices.DESKTOP.width;\r\n break;\r\n case PreviewDevices.TABLET.name:\r\n this.previewHeight = PreviewDevices.TABLET.height;\r\n this.previewWidth = PreviewDevices.TABLET.width;\r\n break;\r\n case PreviewDevices.PHONE.name:\r\n this.previewHeight = PreviewDevices.PHONE.height;\r\n this.previewWidth = PreviewDevices.PHONE.width;\r\n break;\r\n default:\r\n }\r\n\r\n this.previewUrl = this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n }\r\n\r\n private getLocalizableFieldName(fieldName: string, languageCode): string {\r\n return `${fieldName}_${languageCode}`;\r\n }\r\n\r\n openModalCreatePageContent(template: TemplateRef) {\r\n this.pageContentFacade.getSchema().subscribe(pageContentSchema => {\r\n this.pageContentFields =\r\n pageContentSchema.fields.filter(field => !this.pageContentHiddenFields.includes(field.name));\r\n this.pageContentForm = new FormGroup(this.generateFormGroup(this.pageContentFacade,\r\n pageContentSchema.fields,\r\n this.pageContentHiddenFields));\r\n\r\n this.modalRef = this.modalService.show(template);\r\n });\r\n }\r\n\r\n openModalCreatePageFilter(template: TemplateRef, pageFilterId: string) {\r\n this.selectedPageFilterId = pageFilterId;\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).getSchema().subscribe(\r\n pageFilterSchema => {\r\n this.pageFilterFields =\r\n pageFilterSchema.fields.filter(field => !this.pageFilterHiddenFields.includes(field.name));\r\n let pageFilterContent = null;\r\n if (Validation.isValidGuid(this.selectedPageFilterId)) {\r\n this.collapseAllEditForm();\r\n pageFilterContent = this.pageFilters.find(pf => pf.id === pageFilterId);\r\n this.getPathFilterFromSchemaName(this.dataParser.pullData(pageFilterContent, FieldsName.CONTENT_TYPE));\r\n this.collapseControlsEditTemplate[this.selectedPageFilterId]['isCollapsed'] =\r\n !this.collapseControlsEditTemplate[this.selectedPageFilterId]['isCollapsed'];\r\n } else {\r\n this.collapseAllEditForm();\r\n this.isCollapsed = !this.isCollapsed;\r\n }\r\n this.pageFilterForm = new FormGroup(\r\n this.generateFormGroup(\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME),\r\n pageFilterSchema.fields,\r\n this.pageFilterHiddenFields,\r\n pageFilterContent));\r\n });\r\n }\r\n\r\n private collapseAllEditForm() {\r\n const desc = this.collapseControlsEditTemplate;\r\n Object.keys(desc).forEach(function (key) {\r\n if (desc) {\r\n desc[key]['isCollapsed'] = true;\r\n }\r\n });\r\n this.collapseControlsEditTemplate = desc;\r\n this.isCollapsed = true;\r\n const container = document.querySelectorAll('.last_modify-inner');\r\n container.forEach(item => {\r\n item.classList.remove('bubble-content-context');\r\n });\r\n }\r\n\r\n private updateContentsSelect(e) {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(e.target.value)\r\n .getTopX(1000, undefined, undefined, ESchemaContentStatus.Published).subscribe(contents => {\r\n this.contents = contents;\r\n this.pageContentForm.get('contentid').reset();\r\n });\r\n }\r\n\r\n private updatePathFilterSelect(e) {\r\n this.getPathFilterFromSchemaName(e.target.value);\r\n }\r\n\r\n private getPathFilterFromSchemaName(schemaName: string) {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(schemaName)\r\n .getSchema().subscribe(contentSchema => {\r\n this.pathFields = [];\r\n for (let i = 0; i < contentSchema.fields.length; i++) {\r\n const field = contentSchema.fields[i];\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n let val = 'data';\r\n val += '.' + field.name + '.' + language;\r\n this.pathFields.push(val);\r\n }\r\n } else {\r\n let val = 'data';\r\n val += '.' + field.name + '.iv';\r\n this.pathFields.push(val);\r\n }\r\n }\r\n });\r\n }\r\n\r\n private createPageFilter() {\r\n\r\n if (!this.pageFilterForm.dirty) {\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.CREATE_FAILED, c.FAILED_TITLE);\r\n this.pageFilterForm.markAllAsTouched();\r\n });\r\n return;\r\n }\r\n\r\n const values = this.pageFilterForm.value;\r\n\r\n let newPageFilterData: any = {};\r\n\r\n for (let field of this.pageFilterFields) {\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n newPageFilterData = this.dataParser.setData(newPageFilterData, field, values[this.getLocalizableFieldName(field.name, language)], language);\r\n }\r\n } else {\r\n newPageFilterData = this.dataParser.setData(newPageFilterData, field, values[field.name]);\r\n }\r\n }\r\n\r\n const ids: string[] = [];\r\n ids.push(this.id);\r\n\r\n newPageFilterData = this.dataParser.putData(newPageFilterData, FieldsName.PAGE_ID, ids);\r\n newPageFilterData = this.dataParser.putData(newPageFilterData, FieldsName.INDEX, 0);\r\n\r\n if (Validation.isValidGuid(this.selectedPageFilterId)) {\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME)\r\n .update(this.selectedPageFilterId, newPageFilterData).subscribe(pf => {\r\n this.pageFilters = this.pageFilters.filter(pf => pf.id !== this.selectedPageFilterId);\r\n this.pageFilters.push(pf);\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.selectedPageFilterId = null;\r\n this.closeModal();\r\n });\r\n });\r\n } else {\r\n newPageFilterData = this.dataParser.putData(newPageFilterData, FieldsName.CODE, guid());\r\n this.contentFacadeFactory.getDynamicContentSchemaFacade(AppToken.PAGE_FILTER_SCHEMA_NAME).createAsPublished(newPageFilterData).subscribe(pf => {\r\n this.pageFilters.push(pf);\r\n const data: any = {\r\n isCollapsed: true,\r\n };\r\n this.collapseControlsEditTemplate[pf.id] = data;\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.closeModal();\r\n });\r\n });\r\n }\r\n }\r\n\r\n private createPageContent() {\r\n\r\n if (!this.pageContentForm.valid || !this.pageContentForm.dirty) {\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.error(c.CREATE_FAILED, c.FAILED_TITLE);\r\n this.contents = null;\r\n this.pageContentForm.markAllAsTouched();\r\n });\r\n return;\r\n }\r\n\r\n const values = this.pageContentForm.value;\r\n\r\n let newPageContentData: any = {};\r\n\r\n for (let field of this.pageContentFields) {\r\n if (field.partitioning === 'language') {\r\n for (const language of this.availableLanguages.map(languages => languages.data.code.iv)) {\r\n\r\n newPageContentData = this.dataParser.setData(newPageContentData, field, values[this.getLocalizableFieldName(field.name, language)], language);\r\n\r\n }\r\n } else {\r\n newPageContentData = this.dataParser.setData(newPageContentData, field, values[field.name]);\r\n }\r\n }\r\n\r\n const ids: string[] = [];\r\n ids.push(this.id);\r\n\r\n //newPageContentData = this.dataParser.putData(newPageContentData, 'code', guid());\r\n newPageContentData = this.dataParser.putData(newPageContentData, FieldsName.PAGE_ID, ids);\r\n newPageContentData = this.dataParser.putData(newPageContentData, FieldsName.ISMODIFIED, true);\r\n newPageContentData = this.dataParser.putData(newPageContentData, FieldsName.INDEX, 0);\r\n\r\n this.pageContentFacade.createAsPublished(newPageContentData).subscribe(pc => {\r\n this.pageContents.push(pc);\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n this.closeModal();\r\n });\r\n });\r\n\r\n }\r\n\r\n private getPageContentDescription($event, pageContent: PageContentModel) {\r\n if ($event) {\r\n const data: any = {\r\n title: $event.title,\r\n isModified: $event.isModified,\r\n lastModified: $event.lastModified,\r\n isOpen: $event.isOpen,\r\n contentType: $event.contentType\r\n };\r\n this.pageContentsDescription[pageContent.id] = data;\r\n }\r\n }\r\n\r\n openAllSection() {\r\n const allSectionElement = document.getElementById('panel-all-section');\r\n if (allSectionElement && allSectionElement.classList.contains('all-section-open')) {\r\n allSectionElement.classList.remove('all-section-open');\r\n } else if (allSectionElement) {\r\n allSectionElement.classList.add('all-section-open');\r\n }\r\n this.isAllOpen = !this.isAllOpen;\r\n }\r\n\r\n private navigateToSection(pageContentId: string) {\r\n this.isAllOpen = false;\r\n const desc = this.pageContentsDescription;\r\n Object.keys(this.pageContentsDescription).forEach(function (key) {\r\n if (desc) {\r\n desc[key]['isOpen'] = false;\r\n }\r\n });\r\n this.pageContentsDescription = desc;\r\n this.pageContentsDescription[pageContentId]['isOpen'] = !this.pageContentsDescription[pageContentId]['isOpen'];\r\n document.getElementById('manageContent').click();\r\n }\r\n\r\n pageCapture(pc: Content) {\r\n let tempPc = cloneDeep(this.relatedContent);\r\n const fname = tempPc.data.url[this.dataParser.currentLanguageCode];\r\n const imageName = tempPc.data.pageName.iv;\r\n\r\n this.assetFacade.generateThumbnail(fname, imageName, this.thumbnail).toPromise().then(thumbnail => {\r\n let data = tempPc.data;\r\n\r\n let assetField: Field = this.pageSchema.fields.find(field => field.name === 'thumbnail');\r\n\r\n if (thumbnail) {\r\n if (tempPc.data.thumbnail) {\r\n tempPc.data.thumbnail.iv = [];\r\n }\r\n data = this.dataParser.setData(tempPc.data, assetField, thumbnail.id);\r\n if (pc) {\r\n this.pageFacade.update(tempPc.id, data).subscribe(retval => {\r\n this.thumbnail = thumbnail.id\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.spinnerService.hide();\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n });\r\n }\r\n } else {\r\n this.pageContentFacade.translate('T').subscribe(c => {\r\n this.thumbnail = '';\r\n this.spinnerService.hide();\r\n this.uiNotificationService.success(c.UPDATE_SUCCESS, c.SUCCESS_TITLE);\r\n });\r\n }\r\n });\r\n }\r\n\r\n pageContentDrop(event) {\r\n let pageContentsOrdered: PageContentModel[] = cloneDeep(this.pageContents);\r\n\r\n let temp = pageContentsOrdered[event['previousIndex']];\r\n pageContentsOrdered[event['previousIndex']] = pageContentsOrdered[event['currentIndex']];\r\n pageContentsOrdered[event['currentIndex']] = temp;\r\n\r\n this.pageContents = pageContentsOrdered;\r\n\r\n for (let i = 0; i < pageContentsOrdered.length; i++) {\r\n const pageContentId = pageContentsOrdered[i].id;\r\n const sub = this.pageContentFacade.get(pageContentId).subscribe(pc => {\r\n let pcData = cloneDeep(pc.data);\r\n this.dParser.putData(pcData, 'index', i);\r\n this.pageContentFacade.update(pageContentId, pcData).subscribe();\r\n this.subscriptions.push(sub);\r\n });\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n }\r\n\r\n updateFromChild() {\r\n this.updateRelatedContent(false);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Field, SchemaService, SchemaProperty } from '../../../services/squidex';\r\nimport { DynamicSchemaModel } from './dynamic-schema.model';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class DynamicSchemaService {\r\n\r\n constructor(private readonly schemaService: SchemaService) { }\r\n\r\n addField(field: Field): Observable {\r\n return this.schemaService.addField(field);\r\n }\r\n\r\n updateField(field: Field, fieldId?: number): Observable {\r\n return this.schemaService.updateField(field, fieldId);\r\n }\r\n\r\n deleteField(fieldId: number, force: boolean = false): Observable {\r\n return this.schemaService.deleteField(fieldId, force);\r\n }\r\n\r\n getSchemaDefinition(): Observable {\r\n return this.schemaService.getSchemaDefinition();\r\n }\r\n\r\n\r\n reorderField(fieldIds: number[]): Observable {\r\n return this.schemaService.reorderFields(fieldIds);\r\n }\r\n\r\n disableField(fieldId: number): Observable {\r\n return this.schemaService.disableField(fieldId);\r\n }\r\n\r\n\r\n enableField(fieldId: number): Observable {\r\n return this.schemaService.enableField(fieldId);\r\n }\r\n\r\n\r\n updateSchemaProperties(properties: SchemaProperty): Observable {\r\n return this.schemaService.updateSchemaProperties(properties);\r\n }\r\n\r\n}\r\n","import { Content } from \"../../squidex\";\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\nexport class ArticleModel extends Content {\r\n constructor(current?: Content) {\r\n if (current) {\r\n super(cloneDeep(current) as Content);\r\n } else {\r\n super({});\r\n }\r\n }\r\n}\r\n","declare var $: any;\r\nimport { Component, Input, OnInit, Output, EventEmitter, ViewChild } from '@angular/core';\r\nimport { Field, SiteSettingFacade, LanguageModel, ResourceFacade, DataParser } from '../../services';\r\nimport { ControlContainer, FormGroupDirective, FormGroup } from '@angular/forms';\r\nimport { FieldTool } from './tools/fields.tool';\r\nimport { EFieldType } from './tools/field-type.enum';\r\nimport { BaseComponent } from \"../../base/base-component.component\";\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { IDropdownSettings, MultiSelectComponent } from 'ng-multiselect-dropdown';\r\nimport { Observable, of } from 'rxjs';\r\nimport { StringTool } from \"../../tools/index\";\r\n\r\n\r\n@Component({\r\n selector: 'field-control',\r\n templateUrl: './field-control.component.html',\r\n styleUrls: ['./field-control.component.css'],\r\n\r\n viewProviders: [\r\n {\r\n provide: ControlContainer,\r\n useExisting: FormGroupDirective\r\n }\r\n ]\r\n})\r\nexport class FieldControlComponent extends BaseComponent implements OnInit {\r\n\r\n @Input() schemaName: string;\r\n @Input() field: Field;\r\n @Input() value: any;\r\n @Input() referenceValues: any;\r\n @Input() monacoLanguage: string;\r\n @Input() form: FormGroup;\r\n\r\n @Input()\r\n uniqueFieldControlId: string;\r\n\r\n @Output() imageEmitter = new EventEmitter();\r\n @Output() deleteAssetEmitter = new EventEmitter();\r\n @Output() newAssetEmitter = new EventEmitter();\r\n @Output() updateFormControl = new EventEmitter();\r\n\r\n\r\n eFieldType = EFieldType;\r\n fieldType: EFieldType;\r\n languages: LanguageModel[];\r\n isLocalize: boolean;\r\n currentLanguage: string;\r\n placeholder = {};\r\n label = '';\r\n referenceItems: any = [];\r\n referenceInitObs$: Observable;\r\n\r\n private dataParser: DataParser;\r\n languageCustomClass = 'language-nav-tabs';\r\n\r\n dropdownSettings: IDropdownSettings;\r\n ckEditorConfig: any;\r\n\r\n @ViewChild('currentElement', null) currentElement;\r\n\r\n constructor(\r\n translateService: TranslateService,\r\n private readonly siteSettingFacade: SiteSettingFacade,\r\n private readonly resourceFacade: ResourceFacade) {\r\n super(translateService);\r\n this.setCkEditorConfig();\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n if (!this.uniqueFieldControlId) {\r\n const guidRegEx = (new StringTool()).generateGuid();\r\n this.uniqueFieldControlId = guidRegEx;\r\n }\r\n\r\n this.initLabel();\r\n this.initLanguages();\r\n this.initType();\r\n this.referenceInitObs$ = of(this.initReferenceItem());\r\n this.initCurrentLanguage();\r\n this.initPlaceholder();\r\n this.initIsLocalized();\r\n this.initDropdown();\r\n\r\n\r\n\r\n }\r\n\r\n setCkEditorConfig(): void {\r\n this.ckEditorConfig = {\r\n autoParagraph: false,\r\n ignoreEmptyParagraph: true,\r\n allowedContent: true,\r\n fillEmptyBlocks: false,\r\n extraAllowedContent: 'p(*)[*]{*};div(*)[*]{*};li(*)[*]{*};ul(*)[*]{*};span(*);i(*)[*]{*};',\r\n // CKEDITOR: [{ dtd: { $removeEmpty: { i: 0 } } }],\r\n height: 500,\r\n toolbarGroups: [\r\n { name: 'document', groups: ['mode', 'document', 'doctools'] },\r\n { name: 'clipboard', groups: ['clipboard', 'undo'] },\r\n { name: 'editing', groups: ['find', 'selection', 'spellchecker', 'editing'] },\r\n { name: 'forms', groups: ['forms'] },\r\n { name: 'styles', groups: ['styles'] },\r\n { name: 'colors', groups: ['colors'] },\r\n { name: 'tools', groups: ['tools'] },\r\n '/',\r\n { name: 'basicstyles', groups: ['basicstyles', 'cleanup'] },\r\n { name: 'paragraph', groups: ['list', 'indent', 'blocks', 'align', 'bidi', 'paragraph'] },\r\n { name: 'links', groups: ['links'] },\r\n { name: 'insert', groups: ['insert'] },\r\n '/',\r\n { name: 'others', groups: ['others'] },\r\n ],\r\n removeButtons:\r\n 'Save,NewPage,Print,Paste,PasteText,PasteFromWord,Scayt,Form,Radio,Checkbox,TextField,Textarea,Select,Button,ImageButton,HiddenField',\r\n removePlugins: 'htmldataprocessor',\r\n protectedSource: [/{{[\\s\\S]*?}}/g],\r\n extraPlugins: 'colorbutton,colordialog',\r\n };\r\n }\r\n\r\n initDropdown() {\r\n this.dropdownSettings = {\r\n idField: 'item_id',\r\n textField: 'item_text',\r\n selectAllText: 'Select All',\r\n unSelectAllText: 'UnSelect All',\r\n itemsShowLimit: 3,\r\n allowSearchFilter: true,\r\n singleSelection: this.fieldType === this.eFieldType.SELECT\r\n };\r\n }\r\n\r\n initLabel() {\r\n this.resourceFacade.getByCode(`${this.schemaName}.${this.field.name}.label`).subscribe(result => {\r\n if (result) {\r\n this.label = result.data.value[this.resourceFacade.getCurrentLanguage()];\r\n } else {\r\n if (this.field.properties.label) {\r\n this.label = this.field.properties.label;\r\n } else {\r\n this.ts(this.field.name.toUpperCase(), this.schemaName).subscribe(val => {\r\n this.label = val.toString();\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n initPlaceholder() {\r\n this.resourceFacade.getByCode(`${this.schemaName}.${this.field.name}.placeholder`).subscribe(result => {\r\n if (result) {\r\n this.placeholder = result.data.value;\r\n } else {\r\n this.placeholder = this.field.properties.placeholder;\r\n }\r\n });\r\n }\r\n\r\n initIsLocalized() {\r\n this.isLocalize = this.field.partitioning === 'language';\r\n }\r\n\r\n initType() {\r\n this.fieldType = FieldTool.getTypeFromField(this.field);\r\n if (this.field.properties.allowedValues)\r\n this.referenceValues = this.field.properties.allowedValues;\r\n }\r\n\r\n initReferenceItem(): boolean {\r\n\r\n if (this.fieldType !== this.eFieldType.SELECT_MULTIPLE &&\r\n this.fieldType !== this.eFieldType.ORDONNABLE_SELECT_MULTIPLE &&\r\n this.fieldType !== this.eFieldType.SELECT\r\n ) {\r\n return false;\r\n }\r\n\r\n if (!this.referenceValues) {\r\n console.log('no values for multiselect');\r\n return false;\r\n }\r\n\r\n this.referenceItems = [];\r\n\r\n if (this.referenceValues && this.referenceValues.length > 0) {\r\n for (let i = 0; i < this.referenceValues.length; i++) {\r\n let item = this.referenceValues[i];\r\n this.referenceItems.push({\r\n item_id: item.Id ?? item,\r\n item_text: item.Label ?? item\r\n });\r\n }\r\n }\r\n\r\n if (this.value && Object.keys(this.value).length > 0) {\r\n let initialItem = [];\r\n for (let i = 0; i < this.value.iv.length; i++) {\r\n let itm = this.referenceItems.find(v => v.item_id === this.value.iv[i]);\r\n\r\n if (itm) {\r\n initialItem.push(itm);\r\n }\r\n }\r\n this.form.get(this.field.name).setValue(initialItem);\r\n }\r\n return true;\r\n }\r\n\r\n selectReferenceFieldValue(items: any) {\r\n if (!items) {\r\n return;\r\n }\r\n\r\n const initialItem = [];\r\n for (let i = 0; i < items.length; i++) {\r\n const vv = items[i];\r\n const itm = this.referenceItems.find(v => v.item_id === vv.item_id);\r\n if (itm) {\r\n return;\r\n }\r\n this.referenceItems.push(vv);\r\n initialItem.push(vv);\r\n }\r\n\r\n if (initialItem.length <= 0) {\r\n return;\r\n }\r\n\r\n this.form.get(this.field.name).setValue(initialItem);\r\n }\r\n\r\n initLanguages() {\r\n this.siteSettingFacade.getSiteLanguages().subscribe(languages => {\r\n if (languages.length <= 1) {\r\n this.languageCustomClass = 'hide-nav-tabs';\r\n }\r\n this.languages = languages;\r\n this.dataParser = new DataParser(this.languages);\r\n });\r\n }\r\n\r\n getDateObj(language: string): Date {\r\n if (!this.value || !this.value[language]) {\r\n return null;\r\n }\r\n\r\n return new Date(this.value[language]);\r\n }\r\n\r\n initCurrentLanguage() {\r\n this.currentLanguage = this.siteSettingFacade.getCurrentLanguage();\r\n }\r\n\r\n changeLanguage(event, langCode) {\r\n if (langCode !== '') {\r\n this.dataParser.changeLanguage(langCode);\r\n }\r\n $(event.currentTarget).parent().parent().find('li').removeClass('active');\r\n $(event.currentTarget).parent().addClass('active');\r\n }\r\n\r\n assetLoaded(file: any) {\r\n const input = document.getElementById(this.field.name);\r\n input.setAttribute('value', file.id);\r\n this.form.controls[this.field.name].setValue([file.id]);\r\n }\r\n\r\n newAsset(file: any) {\r\n this.imageEmitter.emit(file);\r\n }\r\n\r\n deleteAsset(file: any) {\r\n this.deleteAssetEmitter.emit(file);\r\n }\r\n\r\n ordMultiSelectDrop(event) {\r\n let clone = this.clone(this.value.iv);\r\n let newValues = this.moveArray(clone, event['previousIndex'], event['currentIndex']);\r\n this.updateFormControl.emit({ field: this.field.name, values: newValues });\r\n }\r\n\r\n moveArray(array: any[], from: number, to: number): any[] {\r\n array.splice(to, 0, array.splice(from, 1)[0]);\r\n return array;\r\n }\r\n}\r\n","import { Content } from \"../../squidex\";\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\nexport class LanguageModel extends Content {\r\n constructor(current?: Content) {\r\n if (current) {\r\n super(cloneDeep(current) as Content);\r\n } else {\r\n super({});\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { FormGroup, AbstractControl } from '@angular/forms';\r\n\r\n@Pipe({\r\n name: 'getPublishFormGroupScheduleJobDueTime'\r\n})\r\nexport class GetPublishFormGroupScheduleJobDueTimePipe implements PipeTransform {\r\n\r\n transform(value: FormGroup): AbstractControl {\r\n if (value.get('publishFormGroup')) {\r\n return value.get('publishFormGroup').get('scheduleJob').get('dueTime');\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n}\r\n","export default \"
    \\r\\n
    \\r\\n {{ tc('REQUIRED') | async }} {{translateText(name) | async}}.\\r\\n
    \\r\\n
    \\r\\n {{ tc('MIN_LENGTH') | async }} {{control.errors.minlength.requiredLength}} {{ tc('CHARACTERS') | async }}.\\r\\n
    \\r\\n
    \\r\\n {{ tc('MAX_LENGTH') | async }} {{control.errors.maxlength.requiredLength}} {{ tc('CHARACTERS') | async }}.\\r\\n
    \\r\\n
    \\r\\n {{ tc('EMAIL') | async }}.\\r\\n
    \\r\\n
    \\r\\n {{ tc('PASSWORD') | async }}.\\r\\n
    \\r\\n
    \\r\\n {{ tc('CREDIT_CARD') | async }}.\\r\\n
    \\r\\n
    \\r\\n {{ tc('PHONE') | async }}.\\r\\n
    \\r\\n
    \\r\\n {{ tc('URL') | async }}.\\r\\n
    \\r\\n
    \\r\\n {{ tc('SLUG') | async }}.\\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n {{ tc('CUSTOM_VALIDATION') | async }}.\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","export default \"\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n {{ language.data.code.iv | getCultureName | async }}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n {{ t(\\\"ALL\\\") | async }}\\r\\n \\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n
    {{ ts('LOADING') | async }} {{field.name}}
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n
    {{ ts('LOADING') | async }} {{field.name}}
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    {{ item | getLabel: referenceValues }}
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { ContentService } from '../services/content.service';\r\nimport { AppConfigProvider } from '../../../app-config.provider';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ContentFactory {\r\n private readonly baseUrl: string;\r\n\r\n constructor(private readonly httpClient: HttpClient, private readonly appConfigProvider: AppConfigProvider) {\r\n this.baseUrl = appConfigProvider.getContentBaseUrl();\r\n\r\n }\r\n getContentService(schemaName: string): ContentService {\r\n return new ContentService(this.httpClient, this.baseUrl, schemaName, this.appConfigProvider);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseService } from \"../base/base.service\";\r\nimport { ContentFactory, ContentList } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { Folder } from '../../squidex/models/folder.model';\r\nimport { ID } from '@datorama/akita';\r\nimport { AppConfigProvider } from '../../../app-config.provider';\r\nimport { FolderList } from '../../squidex/models/folder-list.model';\r\n\r\n\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AssetDirectoryService extends BaseService {\r\n private readonly assetBaseUrl: string;\r\n private readonly emptyGuid: string = '00000000-0000-0000-0000-000000000000';\r\n\r\n \r\n constructor(contentFactory: ContentFactory,\r\n private readonly httpClient: HttpClient,\r\n private appConfigProvider: AppConfigProvider ) {\r\n super('assetdirectory', contentFactory);\r\n this.assetBaseUrl = this.appConfigProvider.getAssetsBaseUrl();\r\n }\r\n\r\n createFolder(folder: Folder): Observable {\r\n\r\n if (folder.folderName) {\r\n const url = `${this.assetBaseUrl}/folders/`;\r\n return this.httpClient.post(url, folder) as Observable\r\n } else {\r\n throw (new Error('data is null when trying to create asset'));\r\n }\r\n }\r\n\r\n updateFolder(folder: Folder): Observable {\r\n if (folder.folderName) {\r\n const payload = { folderName: folder.folderName };\r\n const url = `${this.assetBaseUrl}/folders/${folder.id}`;\r\n return this.httpClient.put(url, payload) as Observable\r\n } else {\r\n throw (new Error('data is null when trying to create asset'));\r\n }\r\n }\r\n\r\n deleteFolder(folderId: ID): Observable {\r\n const url = `${this.assetBaseUrl}/folders/${folderId}`;\r\n return this.httpClient.delete(url) as Observable;\r\n }\r\n\r\n getFolders(): Observable {\r\n // this.initialize();\r\n const url = `${this.assetBaseUrl}/folders?parentId=${this.emptyGuid}`;\r\n return this.httpClient.get(url,) as Observable;\r\n }\r\n\r\n\r\n}\r\n","export default \"\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    {{ t(\\\"CODE\\\") | async }}
    {{ content.data.code.iv }}
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\";","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppToken.LAYOUT_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class LayoutStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Observable, of } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { SchemaService } from '../services/schema.service';\r\nimport { Field } from '../models/field.model';\r\nimport { Schema } from '../models/schema.model';\r\nimport { AppConfigProvider } from '../../../app-config.provider';\r\nimport { DefaultFieldService } from '../services/default-field.service';\r\nimport { map, flatMap } from 'rxjs/operators';\r\nimport { ContentFactory } from './content.factory';\r\nimport { DynamicContentModel } from '../../akita/dynamic-content-schema/dynamic-content.model';\r\nimport { FieldReferenceCleaner } from '../../../shared/field/tools/field-reference-cleaner';\r\nimport { AppSchemaCategory } from '../../../models/app-token';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SchemasFactory {\r\n public readonly baseUrl: string;\r\n private defaultFieldService: DefaultFieldService;\r\n public reloadSchemas: boolean = false;\r\n\r\n schemaAsPageHiddenFields: string[] = ['pageName', 'metatitle',\r\n 'url', 'metaDescription',\r\n 'metaKeywords'];\r\n\r\n constructor(\r\n private readonly httpClient: HttpClient,\r\n appConfigProvider: AppConfigProvider,\r\n private contentFactory: ContentFactory\r\n ) {\r\n this.baseUrl = appConfigProvider.getSchemaBaseUrl();\r\n }\r\n\r\n getSchemaService(schemaName: string): SchemaService {\r\n return new SchemaService(this.httpClient, this.baseUrl, schemaName);\r\n }\r\n\r\n //! Hard debug function, should never be used, never be refered, can be usefull, don't delete\r\n initSchemasDefaultFields() {\r\n this.getAllSchemas().subscribe(schemas => {\r\n this.initDefaultFieldService();\r\n const defaultField = this.defaultFieldService.generateDefaultFields();\r\n schemas.forEach(metaSchema => {\r\n const schemaService = this.getSchemaService(metaSchema.name);\r\n schemaService.getSchemaDefinition().subscribe(schema => {\r\n\r\n let fieldsNeeded: Field[];\r\n\r\n if (schema.fields) {\r\n fieldsNeeded = defaultField\r\n .filter(field => !schema.fields.some(schemaField => schemaField.name === field.name));\r\n } else {\r\n fieldsNeeded = defaultField;\r\n }\r\n\r\n fieldsNeeded.forEach(fieldNeeded => {\r\n schemaService.addField(fieldNeeded).subscribe();\r\n });\r\n\r\n });\r\n });\r\n });\r\n }\r\n\r\n hardDeleteSchema(id: string): Promise {\r\n return this.httpClient.delete(`${this.baseUrl}/schemas/${id}`).toPromise().then();\r\n }\r\n\r\n createSchema(schema: Schema): Observable {\r\n const url = `${this.baseUrl}/schemas/`;\r\n if (!schema.category || schema.category === '') {\r\n throw (new Error('Your schema MUST have a valid category'));\r\n }\r\n\r\n this.initDefaultFieldService();\r\n let defaultFields = this.defaultFieldService.generateFields(schema.category);\r\n\r\n return this.getAllSchemas().pipe(flatMap(allSchema => {\r\n const cleaner = new FieldReferenceCleaner(allSchema);\r\n defaultFields = cleaner.cleanAllReferenceFields(defaultFields);\r\n if (!schema.fields) {\r\n schema.fields = defaultFields;\r\n } else {\r\n defaultFields.forEach((field) => {\r\n if (!schema.fields.some(f => f.name === field.name)) {\r\n schema.fields.push(field);\r\n }\r\n });\r\n }\r\n\r\n const oSchema = this.httpClient.post(url, schema) as Observable;\r\n const contentService = this.contentFactory.getContentService('schemametadata');\r\n\r\n let hiddenFields = '';\r\n let defaultHiddenFields = defaultFields;\r\n if (schema.category === AppSchemaCategory.SCHEMA_AS_A_PAGE) {\r\n defaultHiddenFields = defaultHiddenFields.filter(field => !this.schemaAsPageHiddenFields.includes(field.name));\r\n }\r\n\r\n defaultHiddenFields.forEach(field => {\r\n hiddenFields += field.name + ';';\r\n });\r\n hiddenFields = hiddenFields.substring(0, hiddenFields.length - 1);\r\n\r\n let securedSchema = false;\r\n if(schema.category == AppSchemaCategory.SYSTEM_SCHEMAS) {\r\n securedSchema = true;\r\n }\r\n\r\n return oSchema.pipe(map(sch => {\r\n const meta = new DynamicContentModel();\r\n meta.data = {\r\n schemaid: { iv: sch.id },\r\n code: { iv: sch.name },\r\n category: { iv: sch.category },\r\n hiddenfields: { iv: hiddenFields },\r\n secured: { iv: securedSchema }\r\n };\r\n\r\n contentService.createContentAndPublish(meta.data).subscribe();\r\n this.httpClient.put(`${url}${schema.name}/publish`, {}).subscribe(schemaBack => {\r\n this.getAllSchemas().subscribe();\r\n });\r\n return sch;\r\n }));\r\n }));\r\n }\r\n\r\n // TODO: store schemas list in AKITA as an individual list\r\n getAllSchemas(): Observable {\r\n if (this.schemas && !this.reloadSchemas) {\r\n return of(this.schemas);\r\n } else {\r\n const url = `${this.baseUrl}/schemas/`;\r\n return this.httpClient.get(url).pipe(map(schemasList => {\r\n this.schemas = schemasList['items'];\r\n this.reloadSchemas = false;\r\n return this.schemas;\r\n }));\r\n }\r\n }\r\n\r\n // tslint:disable-next-line: member-ordering\r\n private schemas: Schema[];\r\n\r\n private initDefaultFieldService() {\r\n if (!this.defaultFieldService) {\r\n this.defaultFieldService = new DefaultFieldService();\r\n }\r\n }\r\n\r\n //! Hard debug function, should never be used, never be refered, can be usefull, don't delete\r\n regenarateMetadata() {\r\n this.getAllSchemas().subscribe(allSchemas => {\r\n const service = this.contentFactory.getContentService('schemametadata');\r\n const defaultFieldService = new DefaultFieldService();\r\n\r\n allSchemas.forEach(schema => {\r\n\r\n service.createContent({\r\n \"code\": { 'iv': schema.name },\r\n \"schemaid\": { 'iv': schema.id },\r\n \"hiddenfields\": { 'iv': defaultFieldService.generateDefaultFields().map(field => field.name).join(';') },\r\n \"category\": { 'iv': schema.category }\r\n }).subscribe();\r\n });\r\n });\r\n }\r\n}\r\n","\r\nexport { BaseFacade } from './base/base.facade';\r\n\r\nexport { ResourceFacade } from './resource-schema/resource.facade';\r\nexport { ResourceModel } from './resource-schema/resource.model';\r\n\r\nexport { ArticleFacade } from './article-schema/article.facade';\r\nexport { ArticleModel } from './article-schema/article.model';\r\n\r\nexport { DynamicContentSchemaFacade } from './dynamic-content-schema/dynamic-content.facade';\r\nexport { DynamicContentModel } from './dynamic-content-schema/dynamic-content.model';\r\n\r\nexport { DynamicSchemaFacade } from './dynamic-schema/dynamic-schema.facade';\r\nexport { DynamicSchemaModel } from './dynamic-schema/dynamic-schema.model';\r\n\r\nexport { SiteSettingFacade } from './site-setting-schema/site-setting.facade';\r\nexport { SiteSettingModel } from './site-setting-schema/site-setting.model';\r\n\r\nexport { TemplateFacade } from './template-schema/template.facade';\r\nexport { TemplateModel } from './template-schema/template.model';\r\n\r\nexport { UserFacade } from './user-schema/user.facade';\r\nexport { UserModel } from './user-schema/user.model';\r\n\r\nexport { ApplicationUserFacade } from './application-user-schema/application-user.facade';\r\nexport { ApplicationUserModel } from './application-user-schema/application-user.model';\r\n\r\nexport { SchemaMetadataFacade } from './schema-metadata-schema/schema-metadata.facade';\r\nexport { SchemaMetadataModel } from './schema-metadata-schema/schema-metadata.model';\r\n\r\nexport { DynamicContentSchemaFactory } from './dynamic-content-schema.factory';\r\nexport { DynamicSchemaFactory } from './dynamic-schema.factory';\r\n\r\nexport { ArticleTypeFacade } from './article-type-schema/article-type.facade';\r\nexport { ArticleTypeModel } from './article-type-schema/article-type.model';\r\n\r\nexport { ArticleCategoryFacade } from './article-category-schema/article-category.facade';\r\nexport { ArticleCategoryModel } from './article-category-schema/article-category.model';\r\n\r\nexport { PageCategoryModel } from './page-category-schema/page-category.model';\r\nexport { PageCategoryFacade } from './page-category-schema/page-category.facade';\r\n\r\nexport { PageModel } from './page-schema/page.model';\r\nexport { PageFacade } from './page-schema/page.facade';\r\n\r\nexport { PageContentModel } from './page-content-schema/page-content.model';\r\nexport { PageContentFacade } from './page-content-schema/page-content.facade';\r\n\r\nexport { MenuItemFacade } from './menu-item-schema/menu-item.facade';\r\nexport { MenuItemModel } from './menu-item-schema/menu-item.model';\r\nexport { MenuItemDto } from './menu-item-schema/menu-item.dto';\r\n\r\nexport { MenuFacade } from './menu-schema/menu.facade';\r\nexport { MenuModel } from './menu-schema/menu.model';\r\n\r\nexport { LanguageModel } from './language-schema/language.model';\r\nexport { LanguageFacade } from './language-schema/language.facade';\r\n\r\nexport { FilterPagination } from './base/filter.pagination';\r\n\r\nexport { LayoutModel } from './layout-schema/layout.model';\r\nexport { LayoutFacade } from './layout-schema/layout.facade';\r\n\r\nexport { AssetDirectoryFacade } from './asset-directory-schema/asset-directory.facade';\r\nexport { AssetDirectoryModel } from './asset-directory-schema/asset-directory.model';\r\n\r\nexport { SectionFacade } from './section-schema/section.facade';\r\nexport { SectionModel } from './section-schema/section.model';\r\n\r\nexport { AssetFacade } from './asset-schema/asset.facade';\r\nexport { AssetModel } from './asset-schema/asset.model';\r\n\r\nexport { SchemaPageFacade } from './schema-page-schema/schema-page.facade';\r\nexport { SchemaPageModel } from './schema-page-schema/schema-page.model';\r\n\r\nexport { ClaimFacade } from './claim-schema/claim.facade';\r\nexport { ClaimModel } from './claim-schema/claim.model';\r\n","import {\r\n Component,\r\n ContentChild,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Output,\r\n Renderer2,\r\n TemplateRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { Subscription, timer } from 'rxjs';\r\n\r\nimport { NgxFileDropEntry } from './ngx-file-drop-entry';\r\nimport { FileSystemDirectoryEntry, FileSystemEntry, FileSystemFileEntry } from './dom.types';\r\nimport { NgxFileDropContentTemplateDirective } from './ngx-templates.directive';\r\nimport { BaseComponent } from '../../base/base-component.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'ngx-file-drop',\r\n templateUrl: './ngx-file-drop.component.html',\r\n styleUrls: ['./ngx-file-drop.component.scss'],\r\n})\r\nexport class NgxFileDropComponent extends BaseComponent implements OnDestroy {\r\n\r\n @Input()\r\n public accept: string = '*';\r\n\r\n @Input()\r\n public directory: boolean = false;\r\n\r\n @Input()\r\n public multiple: boolean = true;\r\n\r\n @Input()\r\n public dropZoneLabel: string = '';\r\n\r\n @Input()\r\n public dropZoneClassName: string = 'ngx-file-drop__drop-zone';\r\n\r\n @Input()\r\n public contentClassName: string = 'ngx-file-drop__content';\r\n\r\n public get disabled(): boolean { return this._disabled; }\r\n @Input()\r\n public set disabled(value: boolean) {\r\n this._disabled = (value != null && `${value}` !== 'false');\r\n }\r\n\r\n @Input()\r\n public showBrowseBtn: boolean = false;\r\n @Input()\r\n public browseBtnClassName: string = 'btn btn-primary btn-xs ngx-file-drop__browse-btn';\r\n\r\n @Input()\r\n public browseBtnLabel: string = 'Browse files';\r\n\r\n @Input()\r\n public buttonPosition: number = 0;\r\n\r\n @Input()\r\n public autoUpload: boolean = true;\r\n\r\n\r\n @Output()\r\n public onFileDrop: EventEmitter = new EventEmitter();\r\n @Output()\r\n public onFileOver: EventEmitter = new EventEmitter();\r\n @Output()\r\n public onFileLeave: EventEmitter = new EventEmitter();\r\n\r\n\r\n // custom templates\r\n @ContentChild(NgxFileDropContentTemplateDirective, { read: TemplateRef }) contentTemplate: TemplateRef;\r\n\r\n @ViewChild('fileSelector', { static: true })\r\n public fileSelector: ElementRef;\r\n\r\n public isDraggingOverDropZone: boolean = false;\r\n\r\n private globalDraggingInProgress: boolean = false;\r\n private globalDragStartListener: () => void;\r\n private globalDragEndListener: () => void;\r\n\r\n private files: NgxFileDropEntry[] = [];\r\n private numOfActiveReadEntries: number = 0;\r\n\r\n private helperFormEl: HTMLFormElement | null = null;\r\n private fileInputPlaceholderEl: HTMLDivElement | null = null;\r\n\r\n private dropEventTimerSubscription: Subscription | null = null;\r\n\r\n private _disabled: boolean = false;\r\n\r\n constructor(\r\n private zone: NgZone,\r\n private renderer: Renderer2,\r\n translateService: TranslateService\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('NgxFileDropComponent');\r\n this.globalDragStartListener = this.renderer.listen('document', 'dragstart', (evt: Event) => {\r\n this.globalDraggingInProgress = true;\r\n });\r\n this.globalDragEndListener = this.renderer.listen('document', 'dragend', (evt: Event) => {\r\n this.globalDraggingInProgress = false;\r\n });\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this.dropEventTimerSubscription) {\r\n this.dropEventTimerSubscription.unsubscribe();\r\n this.dropEventTimerSubscription = null;\r\n }\r\n this.globalDragStartListener();\r\n this.globalDragEndListener();\r\n this.files = [];\r\n this.helperFormEl = null;\r\n this.fileInputPlaceholderEl = null;\r\n }\r\n\r\n public onDragOver(event: Event): void {\r\n if (!this.isDropzoneDisabled()) {\r\n if (!this.isDraggingOverDropZone) {\r\n this.isDraggingOverDropZone = true;\r\n this.onFileOver.emit(event);\r\n }\r\n this.preventAndStop(event);\r\n }\r\n }\r\n\r\n public onDragLeave(event: Event): void {\r\n if (!this.isDropzoneDisabled()) {\r\n if (this.isDraggingOverDropZone) {\r\n this.isDraggingOverDropZone = false;\r\n this.onFileLeave.emit(event);\r\n }\r\n this.preventAndStop(event);\r\n }\r\n }\r\n\r\n public dropFiles(event: DragEvent): void {\r\n if (!this.isDropzoneDisabled()) {\r\n this.isDraggingOverDropZone = false;\r\n if (event.dataTransfer) {\r\n event.dataTransfer.dropEffect = 'copy';\r\n let items: FileList | DataTransferItemList;\r\n if (event.dataTransfer.items) {\r\n items = event.dataTransfer.items;\r\n } else {\r\n items = event.dataTransfer.files;\r\n }\r\n this.preventAndStop(event);\r\n this.checkFiles(items);\r\n }\r\n }\r\n }\r\n\r\n public openFileSelector = (event?: MouseEvent): void => {\r\n if (this.fileSelector && this.fileSelector.nativeElement) {\r\n (this.fileSelector.nativeElement as HTMLInputElement).click();\r\n }\r\n };\r\n\r\n public openFileSelector2 = (event?: MouseEvent): boolean => {\r\n this.openFileSelector(event);\r\n return false;\r\n };\r\n\r\n\r\n /**\r\n * Processes the change event of the file input and adds the given files.\r\n * @param Event event\r\n */\r\n public uploadFiles(event: Event): void {\r\n if (!this.isDropzoneDisabled()) {\r\n if (event.target) {\r\n const items = (event.target as HTMLInputElement).files || ([] as any);\r\n this.checkFiles(items);\r\n this.resetFileInput();\r\n }\r\n }\r\n }\r\n\r\n private checkFiles(items: FileList | DataTransferItemList): void {\r\n for (let i = 0; i < items.length; i++) {\r\n const item = items[i];\r\n let entry: FileSystemEntry | null = null;\r\n if (this.canGetAsEntry(item)) {\r\n entry = item.webkitGetAsEntry();\r\n }\r\n\r\n if (!entry) {\r\n if (item) {\r\n const fakeFileEntry: FileSystemFileEntry = {\r\n name: (item as File).name,\r\n isDirectory: false,\r\n isFile: true,\r\n file: (callback: (filea: File) => void): void => {\r\n callback(item as File);\r\n },\r\n };\r\n const toUpload: NgxFileDropEntry = new NgxFileDropEntry(fakeFileEntry.name, fakeFileEntry);\r\n this.addToQueue(toUpload);\r\n }\r\n\r\n } else {\r\n if (entry.isFile) {\r\n const toUpload: NgxFileDropEntry = new NgxFileDropEntry(entry.name, entry);\r\n this.addToQueue(toUpload);\r\n\r\n } else if (entry.isDirectory) {\r\n this.traverseFileTree(entry, entry.name);\r\n }\r\n }\r\n }\r\n\r\n if (this.dropEventTimerSubscription) {\r\n this.dropEventTimerSubscription.unsubscribe();\r\n }\r\n this.dropEventTimerSubscription = timer(200, 200)\r\n .subscribe(() => {\r\n if (this.files.length > 0 && this.numOfActiveReadEntries === 0) {\r\n const files = this.files;\r\n this.files = [];\r\n this.onFileDrop.emit(files);\r\n }\r\n });\r\n }\r\n\r\n private traverseFileTree(item: FileSystemEntry, path: string): void {\r\n if (item.isFile) {\r\n const toUpload: NgxFileDropEntry = new NgxFileDropEntry(path, item);\r\n this.files.push(toUpload);\r\n\r\n } else {\r\n path = path + '/';\r\n const dirReader = (item as FileSystemDirectoryEntry).createReader();\r\n let entries: FileSystemEntry[] = [];\r\n\r\n const readEntries = () => {\r\n this.numOfActiveReadEntries++;\r\n dirReader.readEntries((result) => {\r\n if (!result.length) {\r\n // add empty folders\r\n if (entries.length === 0) {\r\n const toUpload: NgxFileDropEntry = new NgxFileDropEntry(path, item);\r\n this.zone.run(() => {\r\n this.addToQueue(toUpload);\r\n });\r\n\r\n } else {\r\n for (let i = 0; i < entries.length; i++) {\r\n this.zone.run(() => {\r\n this.traverseFileTree(entries[i], path + entries[i].name);\r\n });\r\n }\r\n }\r\n\r\n } else {\r\n // continue with the reading\r\n entries = entries.concat(result);\r\n readEntries();\r\n }\r\n\r\n this.numOfActiveReadEntries--;\r\n });\r\n };\r\n\r\n readEntries();\r\n }\r\n }\r\n\r\n /**\r\n * Clears any added files from the file input element so the same file can subsequently be added multiple times.\r\n */\r\n private resetFileInput(): void {\r\n if (this.fileSelector && this.fileSelector.nativeElement) {\r\n const fileInputEl = this.fileSelector.nativeElement as HTMLInputElement;\r\n const fileInputContainerEl = fileInputEl.parentElement;\r\n const helperFormEl = this.getHelperFormElement();\r\n const fileInputPlaceholderEl = this.getFileInputPlaceholderElement();\r\n\r\n // Just a quick check so we do not mess up the DOM (will never happen though).\r\n if (fileInputContainerEl !== helperFormEl) {\r\n // Insert the form input placeholder in the DOM before the form input element.\r\n this.renderer.insertBefore(fileInputContainerEl, fileInputPlaceholderEl, fileInputEl);\r\n // Add the form input as child of the temporary form element, removing the form input from the DOM.\r\n this.renderer.appendChild(helperFormEl, fileInputEl);\r\n // Reset the form, thus clearing the input element of any files.\r\n helperFormEl.reset();\r\n // Add the file input back to the DOM in place of the file input placeholder element.\r\n this.renderer.insertBefore(fileInputContainerEl, fileInputEl, fileInputPlaceholderEl);\r\n // Remove the input placeholder from the DOM\r\n this.renderer.removeChild(fileInputContainerEl, fileInputPlaceholderEl);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Get a cached HTML form element as a helper element to clear the file input element.\r\n */\r\n private getHelperFormElement(): HTMLFormElement {\r\n if (!this.helperFormEl) {\r\n this.helperFormEl = this.renderer.createElement('form') as HTMLFormElement;\r\n }\r\n\r\n return this.helperFormEl;\r\n }\r\n\r\n /**\r\n * Get a cached HTML div element to be used as placeholder for the file input element when clearing said element.\r\n */\r\n private getFileInputPlaceholderElement(): HTMLDivElement {\r\n if (!this.fileInputPlaceholderEl) {\r\n this.fileInputPlaceholderEl = this.renderer.createElement('div') as HTMLDivElement;\r\n }\r\n\r\n return this.fileInputPlaceholderEl;\r\n }\r\n\r\n private canGetAsEntry(item: any): item is DataTransferItem {\r\n return !!item.webkitGetAsEntry;\r\n }\r\n\r\n private isDropzoneDisabled(): boolean {\r\n return (this.globalDraggingInProgress || this.disabled);\r\n }\r\n\r\n private addToQueue(item: NgxFileDropEntry): void {\r\n this.files.push(item);\r\n }\r\n\r\n private preventAndStop(event: Event): void {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n }\r\n}\r\n","export default \"
    \\r\\n \\r\\n
    \\r\\n\";","export default \"\\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n\";","import { Content } from '../../squidex/models/content.model';\r\nconst cloneDeep = require('lodash.clonedeep');\r\n\r\n\r\nexport class DynamicContentModel extends Content {\r\n constructor(content?: Partial) {\r\n if (content) {\r\n super(cloneDeep(content));\r\n } else {\r\n super({});\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppToken } from '../../../models/app-token';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n@StoreConfig({\r\n name: AppToken.SECTION_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class SectionStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}\r\n","export default \"
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
      \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\\"img\\\"\\r\\n \\\"img\\\"\\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n {{language.data.code.iv | getCultureName | async}}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n {{language.data.code.iv | getCultureName | async}}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    {{ tc(\\\"EDITABLE_SECTION\\\") | async | uppercase }}
    \\r\\n \\r\\n {{ t(\\\"OPEN_ALL_SECTION\\\") | async }}\\r\\n \\\"double-open\\\"\\r\\n \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
    \\r\\n\\r\\n

    Template : {{this.pageTemplate.data.code.iv}}

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

    {{ tc(\\\"CREATE_CONTENT\\\") | async | uppercase }}

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

    {{ (this.selectedPageFilterId ? tc(\\\"MODIFIY_FILTER\\\") : tc(\\\"CREATE_FILTER\\\")) | async | uppercase }}

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

    {{ t(\\\"DELETE\\\") | async }} {{this.title}}

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

    \\r\\n {{ t('WARNING_DELETE', {name: this.title} ) | async }}\\r\\n \\r\\n \\r\\n

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

    {{ t(\\\"DELETE_DRAFT\\\") | async }}

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

    \\r\\n {{ t('WARNING_DELETE', {name: 'draft'}) | async }}\\r\\n \\r\\n \\r\\n

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

    {{ t(\\\"DELETE\\\") | async }} {{this.pageContentsDescription[this.selectedPageContentId]['title']}}

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

    \\r\\n {{ t('WARNING_DELETE', {name: this.pageContentsDescription[this.selectedPageContentId]['title']} ) | async }}\\r\\n \\r\\n \\r\\n

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

    {{ t(\\\"DELETE\\\") | async }}

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

    \\r\\n {{ t('WARNING_DELETE', 'pageFilter' ) | async }}\\r\\n \\r\\n \\r\\n

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

    {{ t(\\\"CLONE\\\") | async }} {{ currentPage.data.pageName.iv }}

    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{language.data.code.iv | getCultureName | async}}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","import { Schema } from '../../squidex/models/schema.model';\r\n\r\nexport class DynamicSchemaModel extends Schema {\r\n\r\n constructor(schema?: Partial) {\r\n super(schema);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { AuthorizationGuard } from './guards/authorization.guard';\r\nimport { PublicComponent } from './layout/public/public.component';\r\nimport { PrivateComponent } from './layout/private/private.component';\r\nimport { SharedModule } from './shared/';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: PrivateComponent,\r\n children: [\r\n {\r\n path: '',\r\n redirectTo: 'contents',\r\n pathMatch: 'full',\r\n canActivate: [AuthorizationGuard]\r\n },\r\n {\r\n path: 'assistance',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/assistance/assistance.module').then(m => m.AssistanceModule)\r\n },\r\n {\r\n path: 'settings',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/settings/settings.module').then(m => m.SettingsModule)\r\n },\r\n {\r\n path: 'last-pages-modified',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/dashboard/dashboard.module').then(m => m.DashboardModule)\r\n },\r\n {\r\n path: 'profile',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/profile/profile.module').then(m => m.ProfileModule)\r\n },\r\n {\r\n path: 'articles',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/articles/articles.module').then(m => m.ArticlesModule)\r\n },\r\n {\r\n path: 'assets',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/assets/assets.module').then(m => m.AssetsModule)\r\n },\r\n {\r\n path: 'pages',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/pages/pages.module').then(m => m.PagesModule)\r\n },\r\n {\r\n path: 'page/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/page/page.module').then(m => m.PageModule),\r\n data: { state: true }\r\n },\r\n {\r\n path: 'page/:name/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/advanced-page/advanced-page.module').then(m => m.AdvancedPageModule),\r\n data: { state: true }\r\n },\r\n {\r\n path: 'files',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/files/files.module').then(m => m.FilesModule)\r\n },\r\n {\r\n path: 'banners',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/banners/banners.module').then(m => m.BannersModule)\r\n },\r\n {\r\n path: 'forms',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/forms/forms.module').then(m => m.AppFormsModule)\r\n },\r\n {\r\n path: 'schemas',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/schemas/schemas.module').then(m => m.SchemasModule)\r\n },\r\n {\r\n path: 'contents',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/contents/contents.module').then(m => m.ContentsModule)\r\n },\r\n {\r\n path: 'layouts',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/layouts/layouts.module').then(m => m.LayoutsModule)\r\n },\r\n {\r\n path: 'layouts/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/layouts/layouts.module').then(m => m.LayoutsModule)\r\n },\r\n {\r\n path: 'resource',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/resources/resource.module').then(m => m.ResourceModule)\r\n },\r\n {\r\n path: 'app-resource/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/resources/resource.module').then(m => m.ResourceModule)\r\n },\r\n {\r\n path: 'sections',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/sections/sections.module').then(m => m.SectionsModule)\r\n },\r\n {\r\n path: 'sections/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/sections/sections.module').then(m => m.SectionsModule)\r\n },\r\n {\r\n path: 'scripts',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/scripts/scripts.module').then(m => m.ScriptsModule)\r\n },\r\n {\r\n path: 'scripts/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/scripts/scripts.module').then(m => m.ScriptsModule)\r\n },\r\n {\r\n path: 'styles',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/styles/styles.module').then(m => m.StylesModule)\r\n },\r\n {\r\n path: 'styles/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/styles/styles.module').then(m => m.StylesModule)\r\n },\r\n {\r\n path: 'templates',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/templates/templates.module').then(m => m.TemplatesModule)\r\n },\r\n {\r\n path: 'templates/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/templates/templates.module').then(m => m.TemplatesModule)\r\n },\r\n {\r\n path: 'users',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/users/users.module').then(m => m.UsersModule)\r\n },\r\n {\r\n path: 'change-password',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/change-password/change-password.module').then(m => m.ChangePasswordModule)\r\n },\r\n {\r\n path: 'redirection',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/redirection/redirection.module').then(m => m.RedirectionModule)\r\n },\r\n {\r\n path: 'redirection/:code',\r\n canActivate: [AuthorizationGuard],\r\n loadChildren: () => import('./pages/redirection/redirection.module').then(m => m.RedirectionModule)\r\n }\r\n ]\r\n },\r\n {\r\n path: '',\r\n component: PublicComponent,\r\n children: [\r\n {\r\n path: 'login',\r\n loadChildren: () => import('./pages/login/login.module').then(m => m.LoginModule),\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'logout',\r\n loadChildren: () => import('./pages/logout/logout.module').then(m => m.LogoutModule),\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'register',\r\n loadChildren: () => import('./pages/register/register.module').then(m => m.RegisterModule),\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'forgot-password',\r\n loadChildren: () => import('./pages/forgot-password/forgot-password.module').then(m => m.ForgotPasswordModule),\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'reset-password',\r\n loadChildren: () => import('./pages/reset-password/reset-password.module').then(m => m.ResetPasswordModule),\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'help',\r\n loadChildren: () => import('./pages/help/help.module').then(m => m.HelpModule),\r\n pathMatch: 'full'\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule(\r\n {\r\n declarations: [\r\n PrivateComponent,\r\n PublicComponent\r\n ],\r\n entryComponents: [],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n SharedModule,\r\n RouterModule.forRoot(routes)\r\n ],\r\n exports: [RouterModule]\r\n })\r\nexport class AppRoutingModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { MenuStore } from './menu.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MenuQuery extends BaseQuery {\r\n\r\n constructor(store: MenuStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n","export * from './callback-models/enums/code.enum';\r\nexport * from './callback-models/service-callback-base.model';\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'getLabel'\r\n})\r\nexport class FieldPipe implements PipeTransform {\r\n\r\n transform(id: string, items:any ): string {\r\n\r\n let i = items.find(v => v.Id == id);\r\n\r\n if(!i){\r\n return \"This content seems to have been deleted\";\r\n }\r\n\r\n return items.find(v => v.Id == id).Label; // Check if any \"eating\" property is equal to food\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppToken } from '../../../models/app-token';\r\nimport { SchemaPageStore } from './schema-page.store';\r\nimport { SchemaPageQuery } from './schema-page.query';\r\nimport { SchemaPageService } from './schema-page.service';\r\nimport { SchemaPageModel } from './schema-page.model';\r\nimport { Observable, of } from 'rxjs';\r\nimport { flatMap } from 'rxjs/operators';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SchemaPageFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly schemaPageService: SchemaPageService,\r\n schemaPageStore: SchemaPageStore,\r\n schemaPageQuery: SchemaPageQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(schemaPageService,\r\n schemaPageStore,\r\n schemaPageQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppToken.SCHEMA_PAGE_SCHEMA_NAME),\r\n translateService,\r\n AppToken.SCHEMA_PAGE_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n\r\n getSchemaPageByPageId(pageId: string): Observable {\r\n return this.schemaPageService.getByParentId(pageId, 'pageid').pipe(flatMap((contentList) => {\r\n return of(contentList.items[0]);\r\n }));\r\n }\r\n\r\n\r\n getSchemaPageByContentId(contentId: string, draftMode: boolean = false): Observable {\r\n return this.schemaPageService.getByParentId(contentId, 'contentid', 'id', draftMode).pipe(flatMap((contentList) => {\r\n return of(contentList.items[0]);\r\n }));\r\n }\r\n\r\n\r\n getSchemaPageByContentCode(contentCode: string): SchemaPageModel {\r\n\r\n\r\n\r\n return null;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { SchemasFactory, ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppTokenService } from '../../../app-token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MenuService extends BaseService {\r\n\r\n constructor(schemasFactory: SchemasFactory,\r\n contentFactory: ContentFactory) {\r\n super(AppTokenService.MENU_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseFacade } from '../base/base.facade';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DynamicSchemaFactory } from '../dynamic-schema.factory';\r\nimport { AppTokenService } from '../../../app-token.service';\r\nimport { MenuService } from './menu.service';\r\nimport { MenuStore } from './menu.store';\r\nimport { MenuQuery } from './menu.query';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MenuFacade extends BaseFacade {\r\n\r\n constructor(\r\n private readonly menuService: MenuService,\r\n menuStore: MenuStore,\r\n menuQuery: MenuQuery,\r\n dynamicSchemaFacto: DynamicSchemaFactory,\r\n translateService: TranslateService) {\r\n super(menuService,\r\n menuStore,\r\n menuQuery,\r\n dynamicSchemaFacto.getDynamicSchemaFacade(AppTokenService.MENU_SCHEMA_NAME),\r\n translateService,\r\n AppTokenService.MENU_SCHEMA_NAME + '-facade'\r\n );\r\n }\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';\r\nimport { BaseComponent } from '../../../base/base-component.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxFileDropEntry } from '../../../shared/ngx-file-drop/ngx-file-drop-entry';\r\nimport { AssetFacade } from '../../../services/akita/asset-schema/asset.facade';\r\nimport { FileSystemFileEntry } from '../../ngx-file-drop/dom.types';\r\nimport { Asset, AssetDirectoryFacade } from '../../../services';\r\nimport { Validation } from '../../../tools';\r\nimport { result } from 'lodash';\r\ndeclare var $;\r\n\r\n@Component({\r\n selector: 'app-upload-field',\r\n templateUrl: './upload-field.component.html',\r\n styleUrls: ['./upload-field.component.css'],\r\n})\r\nexport class UploadFieldComponent extends BaseComponent implements OnInit {\r\n\r\n @Input()\r\n schemaName: string;\r\n\r\n @Input()\r\n fieldName: string;\r\n \r\n @Input()\r\n value: string[];\r\n\r\n @Input()\r\n uniqueFieldControlId: string;\r\n\r\n @Output()\r\n fileUploaded = new EventEmitter();\r\n\r\n assetName: string[] = [];\r\n\r\n assetPath: any = '';\r\n\r\n file: Asset[] = [];\r\n\r\n newImage: any ;\r\n\r\n @Output()\r\n newImageEmitter = new EventEmitter();\r\n\r\n @Output()\r\n deleteAssetEmitter = new EventEmitter();\r\n\r\n files: NgxFileDropEntry[] = [];\r\n\r\n filesToUpload: any[] = [];\r\n\r\n fileCount: number = 0;\r\n \r\n constructor(\r\n private readonly assetFacade: AssetFacade,\r\n private readonly assetDirectoryFacade: AssetDirectoryFacade,\r\n translateService: TranslateService\r\n ) {\r\n super(translateService);\r\n this.setTranslateContext('UploadField');\r\n }\r\n\r\n ngOnInit() {\r\n for (let i = 0; i < this.value.length; i++) {\r\n if (Validation.isValidGuid(this.value[i])) {\r\n\r\n this.assetFacade.getById(this.value[i]).subscribe(file => {\r\n this.assetName[i] = file.fileName;\r\n this.file[i] = file;\r\n this.assetPath = this.assetFacade.path;\r\n });\r\n }\r\n }\r\n }\r\n\r\n uploadFiles(event) {\r\n console.log(event);\r\n }\r\n\r\n // We only handle one dropped asset at a time.\r\n dropped(files: NgxFileDropEntry[]) {\r\n this.files = files;\r\n\r\n if (this.assetName.length > 0) {\r\n const imgs = $(\".thumbnail-div-\" + this.fieldName).find('img');\r\n imgs.each((index, img) => {\r\n if (img.currentSrc && img.currentSrc.includes('data:')) {\r\n console.log('found');\r\n } else {\r\n this.deleteImage(this.file[0], img);\r\n }\r\n\r\n\r\n });\r\n \r\n // const img:any = document.querySelector(\".thumbnail-div-\" + this.fieldName).querySelectorAll('img');\r\n // if (img) {\r\n // for (const im of img) {\r\n // if (im.currentSrc.contains('data:')) {\r\n // img.remove()\r\n // }\r\n\r\n // }\r\n // }\r\n }\r\n\r\n\r\n for (let i = 0; i < files.length; i++) {\r\n\r\n const fileEntry = files[i].fileEntry as FileSystemFileEntry;\r\n let images: any;\r\n\r\n fileEntry.file((file: File) => {\r\n // Only process image files.\r\n const reader = new FileReader();\r\n // Closure to capture the file information.\r\n let self = this;\r\n reader.onload = (function (theFile) {\r\n return function (event) {\r\n\r\n const imageDiv = document.querySelector(\".thumbnail-div-\" + self.fieldName + \"-\" + self.uniqueFieldControlId);\r\n\r\n let newElem: any = document.createElement(\"img\");\r\n newElem.src = event.target.result;\r\n newElem.classList.add(\"thumbnail-link-\" + self.fieldName + \"-\" + self.uniqueFieldControlId);\r\n newElem.classList.add(\"image-changed\");\r\n newElem.classList.add(\"thumbnail-image\");\r\n newElem.style.width = \"200px\";\r\n newElem.style.maxHeight = \"195px\";\r\n newElem.style.marginLeft = \"3rem\";\r\n\r\n const divOverlayElem: HTMLElement = document.createElement(\"div\");\r\n divOverlayElem.classList.add(\"overlay\");\r\n divOverlayElem.style.textAlign = \"right\";\r\n divOverlayElem.style.padding = \"5px\";\r\n\r\n const id = \"ico-\" + Math.floor(Math.random() * 9999);\r\n const trashElem: any = document.createElement(\"i\");\r\n trashElem.classList.add(\"fa\");\r\n trashElem.classList.add(\"fa-trash\");\r\n trashElem.classList.add(\"cursor-pointer\");\r\n trashElem.ariaHidden = \"true\";\r\n trashElem.style.marginRight = \"4rem\";\r\n trashElem.style.color = \"#F29100\";\r\n trashElem.style.fontSize = \"20px\"\r\n trashElem.id = id;\r\n divOverlayElem.appendChild(trashElem);\r\n imageDiv.append(divOverlayElem);\r\n\r\n imageDiv.appendChild(newElem);\r\n imageDiv.classList.add(\"image-changed\");\r\n let newElem2: any = document.createElement(\"input\");\r\n newElem2.classList.add(\"label-image\");\r\n newElem2.classList.add(\"form-control\");\r\n newElem2.style.margin = \"1rem 1rem 1rem 3rem\";\r\n newElem2.style.width = \"70%\";\r\n newElem2.value = files[0].relativePath;\r\n newElem2.readOnly = true;\r\n newElem2.id = 'imageFileName'\r\n imageDiv.append(newElem2);\r\n $(\"#\" + id).on(\"click\", function () {\r\n const elem = $(this).closest('.thumbnail-area');\r\n\r\n if (elem.length > 0) {\r\n elem.empty();\r\n }\r\n\r\n\r\n self.assetName[0] = '';\r\n\r\n const index = self.filesToUpload.findIndex(v => v.name === file.name);\r\n\r\n self.filesToUpload.splice(index, 1);\r\n\r\n self.deleteAssetEmitter.emit(images);\r\n\r\n })\r\n };\r\n })(file);\r\n\r\n reader.readAsDataURL(file);\r\n this.filesToUpload = [];\r\n this.filesToUpload.push(file);\r\n\r\n this.fileCount++;\r\n images = {\r\n fieldName: this.fieldName,\r\n files: this.filesToUpload,\r\n isDeleted: false\r\n };\r\n this.newImageEmitter.emit(images);\r\n });\r\n\r\n }\r\n\r\n }\r\n\r\n assetExist() {\r\n return Validation.isValidGuid(this.value[0]);\r\n }\r\n\r\n fileOver($event: any) {\r\n }\r\n\r\n fileLeave($event: any) {\r\n }\r\n\r\n deleteCurrentAsset() {\r\n const index = 0;\r\n this.assetFacade.remove(this.value[index]).subscribe(() => {\r\n this.assetName[index] = '';\r\n this.value[index] = '';\r\n });\r\n }\r\n\r\n downloadCurrentAsset() {\r\n const data = 'todo';\r\n const blob = new Blob([data], { type: 'application/octet-stream' });\r\n\r\n //this.fileUrl = this.sanitizer.bypassSecurityTrustResourceUrl(window.URL.createObjectURL(blob));\r\n }\r\n\r\n fileIsValid(file: Asset) {\r\n try {\r\n if (typeof file === 'undefined') {\r\n return false;\r\n } else if (typeof file['id'] === 'undefined') {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n catch (err) {\r\n console.log(err);\r\n console.log(JSON.stringify(file));\r\n };\r\n }\r\n\r\n deleteImage(file: any, element : ElementRef) {\r\n let img = document.querySelector(`.thumbnail-div-${this.fieldName}-${this.uniqueFieldControlId}`).querySelector(`[src*='${file.id}']`);\r\n\r\n if (img) {\r\n img.classList.add('d-none');\r\n $(img).parent().parent().find(\"#imageFileName\").addClass('d-none')\r\n }\r\n\r\n if (element) {\r\n const elem = $(element).find().parent().parent().find('img');\r\n elem.addClass('d-none');\r\n elem.parent().parent().find(\"#imageFileName\").addClass('d-none')\r\n }\r\n\r\n this.assetName[0] = '';\r\n\r\n const index = this.filesToUpload.findIndex(v => v.name === file.name);\r\n\r\n this.filesToUpload.splice(index, 1);\r\n\r\n let images = {\r\n fieldName: this.fieldName,\r\n assets: [file]\r\n };\r\n\r\n this.deleteAssetEmitter.emit(images);\r\n\r\n }\r\n\r\n showThumbnail(item: Asset) {\r\n if (item.isImage || item.tags.findIndex(a => a === 'type/ico') >= 0 || item.tags.findIndex(a => a === 'type/svg') >= 0) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n}\r\n","import { Content } from \"../../squidex\";\r\n\r\nexport class SectionModel extends Content {\r\n\r\n constructor(current?: Content) {\r\n super(current);\r\n if (current) {\r\n Object.assign(this, current);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from '../base/base.service';\r\nimport { ContentFactory, Content } from '../../squidex';\r\nimport { Observable } from 'rxjs';\r\nimport { AppToken } from \"../../../models/app-token\";\r\nimport { PageTypeModel } from \"./page-type.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PageTypeService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n super(AppToken.PAGE_TYPE_SCHEMA_NAME, contentFactory);\r\n }\r\n\r\n getFirstContent(): Observable {\r\n this.initialize();\r\n return this.contentService.getFirstContent();\r\n }\r\n\r\n getPageType(pageType: string): Observable {\r\n this.initialize();\r\n return this.getContentByCode(pageType) as Observable;\r\n }\r\n\r\n getPlaceholderPageType(): Observable {\r\n return this.getPageType(\"placeholder\");\r\n }\r\n\r\n getDefaultPageType(): Observable {\r\n return this.getPageType(\"default\");\r\n }\r\n}\r\n","export default \"
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\\"ico-close\\\"\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
    0\\\">\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n

    {{ tc(\\\"PAGES_PUBLIES\\\") | async }}

    \\r\\n
    \\r\\n \\r\\n
      \\r\\n
    • \\r\\n
      \\r\\n 10\\r\\n
      \\r\\n
    • \\r\\n
    • \\r\\n
      \\r\\n 25\\r\\n
      \\r\\n
    • \\r\\n
    • \\r\\n
      \\r\\n 50\\r\\n
      \\r\\n
    • \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    {{ tc(\\\"ORDER_BY\\\") | async }}

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

    {{ tc(\\\"LIST_TITLE\\\") | async }}

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

    {{ t(\\\"DATE_MODIF\\\") | async }}

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

    {{ t(\\\"DATE_CREATED\\\") | async }}

    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
    0\\\">\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n

    {{ tc(\\\"PAGE_CONTENTS_PUBLIES\\\") | async }}

    \\r\\n
    \\r\\n \\r\\n
      \\r\\n
    • \\r\\n
      \\r\\n 10\\r\\n
      \\r\\n
    • \\r\\n
    • \\r\\n
      \\r\\n 25\\r\\n
      \\r\\n
    • \\r\\n
    • \\r\\n
      \\r\\n 50\\r\\n
      \\r\\n
    • \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    {{ tc(\\\"ORDER_BY\\\") | async }}

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

    {{ tc(\\\"LIST_TITLE\\\") | async }}

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

    {{ t(\\\"DATE_MODIF\\\") | async }}

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

    {{ t(\\\"DATE_CREATED\\\") | async }}

    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n \\r\\n
    0\\\">\\r\\n
    \\r\\n

    {{ tc(\\\"EN_ATTENTE_DUNE_ACTION\\\") | async }}

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

    {{ tc(\\\"LIST_TITLE\\\") | async }}

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

    {{ t(\\\"DATE_MODIF\\\") | async }}

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

    {{ t(\\\"DATE_CREATED\\\") | async }}

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

    {{ tc(\\\"MODIFY_PAGE\\\") | async }}

    \\r\\n

    {{ tc(\\\"CREATE_PAGE\\\") | async }}

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{ language.data.code.iv | getCultureName | async }}\\r\\n \\\"check\\\"\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{ language.data.code.iv | getCultureName | async }}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n

    {{ t(\\\"CLONE\\\") | async }} {{ pageSelected.data.pageName.iv }}

    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{ language.data.code.iv | getCultureName | async }}\\r\\n \\\"check\\\"\\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n

    {{ tc(\\\"DELETE_PAGE\\\") | async }}

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

    \\r\\n {{ tc(\\\"WARNING_DELETE\\\") | async }}\\r\\n \\r\\n {{ page }}\\r\\n \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\";","import { Component, OnInit, Input, ViewChild, Output, EventEmitter } from '@angular/core';\r\nimport {\r\n Schema,\r\n SchemaMetadataModel,\r\n DynamicSchemaFacade,\r\n DynamicSchemaFactory,\r\n SchemaMetadataFacade,\r\n DynamicContentSchemaFactory,\r\n DynamicContentModel,\r\n DynamicContentSchemaFacade,\r\n SchemaPageModel,\r\n LanguageModel,\r\n FilterPagination\r\n} from '../../../services';\r\n\r\nimport { ActivatedRoute} from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BaseComponent } from '../../../base/base-component.component';\r\nimport { AppSchemaCategory } from '../../../models/app-token';\r\nimport { map, mergeMap } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\nimport { FieldReferenceContent } from '../../../shared/field/tools/field-reference-content.service';\r\nimport { ESchemaContentStatus } from '../../../services/akita/base/enum';\r\nimport { ContentEditionComponent } from '../../../shared/content/content-edition/content-edition.component';\r\n\r\n\r\n@Component({\r\n selector: 'schema-page',\r\n templateUrl: './schema-page.component.html',\r\n styleUrls: ['./schema-page.component.css']\r\n})\r\nexport class SchemaPageComponent extends BaseComponent implements OnInit {\r\n schemaSelectedName = '';\r\n schemaSelectedLabel = '';\r\n contentSelectedCode = '';\r\n\r\n schemaDefinition: Schema;\r\n schemaMetadata: SchemaMetadataModel;\r\n listableSchemas: Schema[];\r\n\r\n currentSchemaFacade: DynamicSchemaFacade;\r\n currentContentsFacade: DynamicContentSchemaFacade;\r\n\r\n selectedSchemaContents: DynamicContentModel[];\r\n selectedContent: DynamicContentModel;\r\n\r\n referenceFieldValues: any;\r\n referenceFieldValues$: Observable;\r\n orderBySwitch: boolean;\r\n\r\n @ViewChild(\"contentEdition\", null) contentEditionComponent: ContentEditionComponent;\r\n\r\n @Output()\r\n onUpdatePage = new EventEmitter();\r\n\r\n constructor(\r\n private readonly dynamicSchemaFacto: DynamicSchemaFactory,\r\n private readonly dynamicContentSchemaFactory: DynamicContentSchemaFactory,\r\n private readonly route: ActivatedRoute,\r\n private readonly metadataFacade: SchemaMetadataFacade,\r\n private readonly referenceContentService: FieldReferenceContent,\r\n translateService: TranslateService) {\r\n super(translateService);\r\n this.setTranslateContext('SchemaPageComponent');\r\n }\r\n\r\n ngOnInit() {\r\n const sub1 = this.dynamicSchemaFacto\r\n .getSchemasMetadataByCategory(AppSchemaCategory.SCHEMA_AS_A_PAGE).pipe(mergeMap(defaults => {\r\n return this.dynamicSchemaFacto\r\n .getSchemasMetadataByCategory(AppSchemaCategory.CONTENT_SCHEMAS).pipe(map(contents => {\r\n return defaults.concat(contents).sort(this.sortByName);\r\n }));\r\n }))\r\n .subscribe(result => {\r\n this.listableSchemas = result.filter(meta => meta.name.length <= 40);\r\n });\r\n\r\n this.subscriptions.push(sub1);\r\n\r\n this.updateObservable();\r\n }\r\n\r\n updateObservable() {\r\n this.schemaSelectedName = this.route.snapshot.paramMap.get('name');\r\n this.contentSelectedCode = this.route.snapshot.paramMap.get('code');\r\n\r\n if (this.schemaSelectedName && this.schemaSelectedName.length > 0) {\r\n this.currentSchemaFacade = this.dynamicSchemaFacto.getDynamicSchemaFacade(this.schemaSelectedName);\r\n\r\n\r\n this.referenceFieldValues$ = this.currentSchemaFacade\r\n .getSchemaDefinition()\r\n .pipe(mergeMap(result => {\r\n this.schemaDefinition = result;\r\n this.schemaSelectedLabel = this.schemaDefinition[\"properties\"][\"label\"];\r\n return this.referenceContentService.generateContentList(result);\r\n }));\r\n\r\n var sub = this.referenceFieldValues$.subscribe();\r\n this.subscriptions.push(sub);\r\n\r\n const sub1 = this.metadataFacade\r\n .getByCode(this.schemaSelectedName)\r\n .subscribe(result => this.schemaMetadata = result);\r\n\r\n this.subscriptions.push(sub1);\r\n\r\n this.currentContentsFacade = this.dynamicContentSchemaFactory\r\n .getDynamicContentSchemaFacade(this.schemaSelectedName);\r\n\r\n this.filterValue = this.route.snapshot.paramMap.get('filter');\r\n this.currentPageNumber = Number(this.route.snapshot.paramMap.get('page'));\r\n\r\n if (this.filterValue === null) {\r\n this.filterValue = '';\r\n }\r\n\r\n const filterObject = {\r\n or:\r\n [\r\n {\r\n path: 'data.code.iv',\r\n op: 'contains',\r\n value: this.filterValue\r\n }\r\n ]\r\n }\r\n\r\n const filter = new FilterPagination();\r\n\r\n filter.from = (this.currentPageNumber - 1) * this.paginateSize;\r\n filter.to = filter.from + this.paginateSize;\r\n filter.orderBy = 'data.index.iv ascending,data.code.iv ascending';\r\n filter.filterObject = this.getSearchObject(this.filterValue);\r\n\r\n this.currentContentsFacade.getFilteredPagination(filter, ESchemaContentStatus.All, filterObject)\r\n .subscribe(contents => {\r\n this.selectedSchemaContents = contents;\r\n this.currentContentsFacade.fullCount().subscribe(c => {\r\n this.contentCount = c;\r\n });\r\n });\r\n\r\n if (this.contentSelectedCode && this.contentSelectedCode.length > 0) {\r\n\r\n this.currentContentsFacade.getByCode(this.contentSelectedCode, true).subscribe(c => {\r\n this.selectedContent = c;\r\n });\r\n }\r\n\r\n } else {\r\n this.schemaDefinition = null;\r\n this.schemaMetadata = null;\r\n }\r\n }\r\n\r\n getSearchObject(filter): object {\r\n const oSearch = {\r\n or:\r\n [\r\n {\r\n path: 'data.code.iv',\r\n op: 'contains',\r\n value: filter\r\n }\r\n ]\r\n }\r\n return oSearch;\r\n }\r\n\r\n getPageData($event) {\r\n this.currentPageNumber = $event.page;\r\n this.search(null, true);\r\n }\r\n\r\n updateChild(updateParent = true) {\r\n this.contentEditionComponent.updateContent(updateParent);\r\n }\r\n\r\n onUpdate() {\r\n if (this.onUpdatePage) {\r\n this.onUpdatePage.emit();\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseService } from \"../base/base.service\";\r\nimport { ContentFactory } from '../../squidex';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ArticleCategoryService extends BaseService {\r\n\r\n constructor(contentFactory: ContentFactory) {\r\n super('article-category', contentFactory);\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ0b3AtbWVudS5jb21wb25lbnQuY3NzIn0= */\";","import { TemplateStore } from './template.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseQuery } from \"../base/base.query\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TemplateQuery extends BaseQuery {\r\n\r\n constructor(store: TemplateStore) {\r\n super(store);\r\n }\r\n}\r\n","import { StoreConfig } from '@datorama/akita';\r\nimport { Injectable } from '@angular/core';\r\nimport { BaseStore } from '../base/base.store';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({\r\n name: 'article-category',\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class ArticleCategoryStore extends BaseStore {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","/***************************************************************************************************\r\n * Load `$localize` onto the global scope - used if i18n tags appear in Angular templates.\r\n */\r\nimport '@angular/localize/init';\r\nimport { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\nimport { akitaConfig, enableAkitaProdMode } from '@datorama/akita';\r\n\r\nakitaConfig({\r\n resettable: true\r\n});\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\nconst providers = [\r\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\r\n];\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n enableAkitaProdMode();\r\n}\r\n\r\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../base/base.store';\r\nimport { AppTokenService } from '../../../app-token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n @StoreConfig({\r\n name: AppTokenService.MENU_ITEM_SCHEMA_NAME,\r\n cache: {\r\n ttl: 15000\r\n }\r\n})\r\nexport class MenuItemStore extends BaseStore {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../base/base.query';\r\nimport { ClaimStore } from './claim.store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClaimQuery extends BaseQuery {\r\n\r\n constructor(store: ClaimStore) {\r\n super(store);\r\n }\r\n\r\n\r\n}\r\n"]}