@firestitch/content 12.0.3 → 12.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"firestitch-content.umd.js","sources":["../../src/app/enums/page-type.enum.ts","../../src/app/consts/page-types.const.ts","../../src/app/injectors/content-config.injector.ts","../../src/app/modules/content-pages/components/content-page/content-page.component.ts","../../src/app/modules/content-pages/components/content-page/content-page.component.html","../../src/app/modules/editor/components/editor/editor.component.ts","../../src/app/modules/editor/components/editor/editor.component.html","../../src/app/modules/content-pages/components/content-pages/content-pages.component.ts","../../src/app/modules/content-pages/components/content-pages/content-pages.component.html","../../src/app/modules/editor/fs-content-editor.module.ts","../../src/app/modules/content-pages/fs-content-pages.module.ts","../../src/app/modules/content-layouts/components/content-layout/content-layout.component.ts","../../src/app/modules/content-layouts/components/content-layout/content-layout.component.html","../../src/app/modules/content-layouts/components/content-layouts/content-layouts.component.ts","../../src/app/modules/content-layouts/components/content-layouts/content-layouts.component.html","../../src/app/modules/content-layouts/fs-content-layouts.module.ts","../../src/app/modules/content/components/content-renderer/content-renderer.component.ts","../../src/app/modules/content/components/content-renderer/content-renderer.component.html","../../src/app/modules/content/components/content/content.component.ts","../../src/app/modules/content/components/content/content.component.html","../../src/app/modules/content/fs-content.module.ts","../../src/firestitch-content.ts"],"sourcesContent":["export enum PageType {\n StandardPage = 'standardPage',\n BlogPost = 'blogPost',\n HomePage = 'homePage',\n NotFoundPage = 'notFoundPage',\n}\n","import { PageType } from '../enums';\n\nexport const PageTypes = [\n { name: 'Standard Page', value: PageType.StandardPage },\n { name: 'Home Page', value: PageType.HomePage },\n { name: 'Not Found Page', value: PageType.NotFoundPage },\n { name: 'Blog Post', value: PageType.BlogPost },\n];\n","import { InjectionToken } from '@angular/core';\n\nexport const FS_CONTENT_CONFIG = new InjectionToken<any>('fs-content-config');\n","import {\n Component,\n Inject,\n OnInit,\n OnDestroy,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChildren,\n QueryList,\n} from '@angular/core';\n\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\nimport { FsMessage } from '@firestitch/message';\nimport { FsTextEditorComponent } from '@firestitch/text-editor';\n\nimport { Subject, of } from 'rxjs';\nimport { switchMap, tap, takeUntil } from 'rxjs/operators';\n\nimport { PageTypes } from '../../../../consts';\nimport { FsContentConfig } from '../../../../interfaces';\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\n\n\n@Component({\n templateUrl: './content-page.component.html',\n styleUrls: ['./content-page.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ContentPageComponent implements OnInit, OnDestroy {\n\n @ViewChildren(FsTextEditorComponent)\n public textEditors: QueryList<FsTextEditorComponent>;\n\n public contentPage = null;\n public PageTypes = PageTypes;\n public contentLayouts;\n public editors = { content: true, styles: true };\n\n private _destroy$ = new Subject<void>();\n\n constructor(\n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n @Inject(MAT_DIALOG_DATA) private _data: any,\n private _dialogRef: MatDialogRef<ContentPageComponent>,\n private _message: FsMessage,\n private _cdRef: ChangeDetectorRef,\n ) {}\n\n public ngOnInit(): void {\n this._fetchData();\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public save = () => {\n return this._config.saveContentPage(this.contentPage)\n .pipe(\n tap((contentPage) => {\n this._message.success('Saved Changes');\n this._dialogRef.close(contentPage);\n }),\n );\n };\n\n private _fetchData(): void {\n this._config.loadContentLayouts()\n .subscribe((contentLayouts) => {\n this.contentLayouts = contentLayouts;\n this._cdRef.markForCheck();\n });\n\n of(this._data.contentPage)\n .pipe(\n switchMap((contentPage) => {\n return of(contentPage);\n }),\n takeUntil(this._destroy$),\n )\n .subscribe((contentPage) => {\n this.contentPage = {\n ...contentPage,\n };\n\n this._cdRef.markForCheck();\n });\n }\n\n}\n","<form fsForm [submit]=\"save\" *fsSkeletonForm=\"contentPage\">\n <fs-dialog>\n <h1 mat-dialog-title>{{contentPage.id ? 'Page' : 'Create Page'}}</h1>\n <div mat-dialog-content>\n <div fxLayout=\"column\">\n <mat-form-field>\n <mat-select\n [(ngModel)]=\"contentPage.type\"\n name=\"type\"\n required\n placeholder=\"Type\">\n <mat-option\n *ngFor=\"let item of PageTypes\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.name\"\n name=\"name\"\n required\n placeholder=\"Name\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.path\"\n name=\"path\"\n placeholder=\"Path\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.title\"\n name=\"title\"\n placeholder=\"Title\">\n </mat-form-field>\n <mat-form-field *ngIf=\"contentLayouts\">\n <mat-select\n [(ngModel)]=\"contentPage.contentLayoutId\"\n required\n name=\"contentLayoutId\"\n placeholder=\"Layout\">\n <mat-option\n *ngFor=\"let item of contentLayouts\"\n [value]=\"item.id\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n","import {\n Component,\n Inject,\n OnInit,\n OnDestroy,\n ChangeDetectionStrategy,\n ViewChildren,\n QueryList,\n} from '@angular/core';\n\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { MatButtonToggleChange } from '@angular/material/button-toggle';\n\nimport { FsMessage } from '@firestitch/message';\nimport { FsTextEditorComponent } from '@firestitch/text-editor';\n\nimport { Subject } from 'rxjs';\nimport { tap } from 'rxjs/operators';\n\n\n@Component({\n templateUrl: './editor.component.html',\n styleUrls: ['./editor.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EditorComponent implements OnInit, OnDestroy {\n\n @ViewChildren(FsTextEditorComponent)\n public textEditors: QueryList<FsTextEditorComponent>;\n\n public styles = null;\n public content = null;\n public editors = { content: true, styles: true };\n\n private _destroy$ = new Subject<void>();\n\n constructor(\n @Inject(MAT_DIALOG_DATA) private _data: any,\n private _dialogRef: MatDialogRef<EditorComponent>,\n private _message: FsMessage,\n ) {}\n\n public ngOnInit(): void {\n this._dialogRef.updateSize('100%','100%');\n this.content = this._data.content;\n this.styles = this._data.styles;\n }\n\n public editorToggleChange(event: MatButtonToggleChange): void {\n this.editors[event.value] = !this.editors[event.value];\n setTimeout(() => {\n this.textEditors.forEach((textEditor) => {\n textEditor.updateLayout();\n });\n }, 100);\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public save = () => {\n return this._data.save({ content: this.content, styles: this.styles })\n .pipe(\n tap(() => {\n this._message.success('Saved Changes');\n }),\n );\n };\n\n}\n","<form fsForm [submit]=\"save\">\n <fs-dialog>\n <h1 mat-dialog-title>Design</h1>\n <div mat-dialog-content>\n <div class=\"container\">\n <div class=\"toggles\">\n <mat-button-toggle-group multiple>\n <mat-button-toggle value=\"content\" [checked]=\"editors.content\" (change)=\"editorToggleChange($event)\">Content</mat-button-toggle>\n <mat-button-toggle value=\"styles\" [checked]=\"editors.styles\" (change)=\"editorToggleChange($event)\">Styles</mat-button-toggle>\n </mat-button-toggle-group> \n </div>\n <div class=\"editors\">\n <div class=\"editor\" *ngIf=\"editors.content\">\n <fs-label>Content</fs-label>\n <div class=\"editor-container\">\n <fs-text-editor \n [(ngModel)]=\"content\" \n name=\"content\"\n [config]=\"{ tabSize: 2, language: 'html' }\">\n </fs-text-editor> \n </div>\n </div>\n <div class=\"editor\" *ngIf=\"editors.styles\">\n <fs-label>Styles</fs-label>\n <div class=\"editor-container\">\n <fs-text-editor \n [(ngModel)]=\"styles\" \n name=\"styles\"\n [config]=\"{ tabSize: 2, language: 'scss' }\">\n </fs-text-editor> \n </div>\n </div> \n </div>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n","import {\n Component,\n OnInit,\n ViewChild,\n ChangeDetectionStrategy,\n OnDestroy,\n Input,\n Inject,\n} from '@angular/core';\n\nimport { MatDialog } from '@angular/material/dialog';\n\nimport { FsListComponent, FsListConfig } from '@firestitch/list';\nimport { ItemType } from '@firestitch/filter';\nimport { index } from '@firestitch/common';\nimport { FsHtmlEditorConfig } from '@firestitch/html-editor';\n\nimport { filter, map, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\nimport { PageTypes } from '../../../../consts';\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\nimport { FsContentConfig } from '../../../../interfaces';\nimport { ContentPageComponent } from '../content-page/content-page.component';\nimport { EditorComponent } from '../../../editor/components/editor';\n\n\n@Component({\n selector: 'fs-content-pages',\n templateUrl: './content-pages.component.html',\n styleUrls: ['./content-pages.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FsContentPagesComponent implements OnInit, OnDestroy {\n\n @Input() public htmlEditorConfig: FsHtmlEditorConfig;\n\n @ViewChild(FsListComponent)\n public listComponent: FsListComponent;\n\n public listConfig: FsListConfig;\n public pageTypes = index(PageTypes, 'value', 'name');\n\n private _destroy$ = new Subject<void>();\n\n constructor(\n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n private _dialog: MatDialog,\n ) {}\n\n public ngOnInit(): void {\n this._initListConfig();\n }\n\n public openEditor(contentPage: any): void {\n this._dialog.open(EditorComponent, {\n maxWidth: null,\n maxHeight: null,\n data: {\n styles: contentPage.styles,\n content: contentPage.content,\n save: (data) => {\n return this._config.saveContentPage({\n id: contentPage.id,\n ...data,\n });\n }, \n },\n })\n .afterClosed()\n .pipe(\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.listComponent.reload();\n });\n }\n\n public openPage(contentPage: any): void {\n this._dialog.open(ContentPageComponent, {\n data: {\n contentPage,\n },\n })\n .afterClosed()\n .pipe(\n filter((_contentPage) => !!_contentPage),\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.listComponent.reload();\n });\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n private _initListConfig(): void {\n this.listConfig = {\n filters: [\n {\n name: 'keyword',\n type: ItemType.Keyword,\n label: 'Search',\n },\n ],\n actions: [\n {\n label: 'Create',\n click: () => {\n this.openPage({});\n },\n },\n ],\n rowActions: [\n {\n click: (data) => {\n return this._config.deleteContentPage(data);\n },\n remove: {\n title: 'Confirm',\n template: 'Are you sure you would like to delete this record?',\n },\n menu: true,\n label: 'Delete',\n },\n ],\n fetch: (query) => {\n return this._config.loadContentPages(query)\n .pipe(\n map((response: any) => {\n return { data: response.contentPages, paging: response.paging };\n }),\n );\n },\n restore: {\n query: { state: 'deleted' },\n filterLabel: 'Show Deleted',\n menuLabel: 'Restore',\n reload: true,\n click: (row) => {\n return this._config.saveContentPage({ id: row.id, state: 'active' });\n },\n },\n };\n }\n\n}\n\n\n","<fs-list [config]=\"listConfig\">\n <fs-list-column name=\"design\" width=\"1%\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"openEditor(row)\"><mat-icon>design_services</mat-icon></a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"name\" title=\"Name\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"openPage(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"path\" title=\"Path\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <a [href]=\"'/' + row.path\" target=\"_black\">/{{row.path}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"type\" title=\"Type\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n {{pageTypes[row.type]}}\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"modify_date\" title=\"Modified\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.modifyDate | fsDate: 'date-time-yearless'}}\n </ng-template>\n </fs-list-column>\n</fs-list>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatIconModule } from '@angular/material/icon';\nimport { FormsModule } from '@angular/forms';\n\nimport { FsListModule } from '@firestitch/list';\nimport { FsLabelModule } from '@firestitch/label';\nimport { FsDialogModule } from '@firestitch/dialog';\nimport { FsFormModule } from '@firestitch/form';\nimport { FsHtmlEditorModule } from '@firestitch/html-editor';\nimport { FsTextEditorModule } from '@firestitch/text-editor';\n\nimport { EditorComponent } from './components/editor';\n\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n\n MatDialogModule,\n MatButtonModule,\n MatTabsModule,\n MatIconModule,\n MatButtonToggleModule,\n\n FsListModule,\n FsFormModule,\n FsLabelModule,\n FsHtmlEditorModule,\n FsDialogModule,\n FsTextEditorModule,\n ],\n exports: [\n EditorComponent,\n ],\n declarations: [\n EditorComponent,\n ],\n})\nexport class FsContentEditorModule {\n }\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { FormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSelectModule } from '@angular/material/select';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\n\nimport { FsListModule } from '@firestitch/list';\nimport { FsDateModule } from '@firestitch/date';\nimport { FsDialogModule } from '@firestitch/dialog';\nimport { FsFormModule } from '@firestitch/form';\nimport { FsHtmlEditorModule } from '@firestitch/html-editor';\nimport { FsTextEditorModule } from '@firestitch/text-editor';\nimport { FsLabelModule } from '@firestitch/label';\nimport { FsSkeletonModule } from '@firestitch/skeleton';\n\nimport { ContentPageComponent } from './components/content-page';\nimport { FsContentPagesComponent } from './components/content-pages';\nimport { FsContentEditorModule } from '../editor';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n\n FlexLayoutModule,\n\n MatDialogModule,\n MatInputModule,\n MatFormFieldModule,\n MatButtonModule,\n MatTabsModule,\n MatIconModule,\n MatSelectModule,\n MatButtonToggleModule,\n\n FsListModule,\n FsDateModule,\n FsFormModule,\n FsLabelModule,\n FsSkeletonModule,\n FsHtmlEditorModule,\n FsDialogModule,\n FsTextEditorModule,\n\n FsContentEditorModule,\n ],\n exports: [\n FsContentPagesComponent,\n ],\n declarations: [\n FsContentPagesComponent,\n ContentPageComponent,\n ],\n})\nexport class FsContentPagesModule {\n static forRoot(): ModuleWithProviders<FsContentPagesModule> {\n return {\n ngModule: FsContentPagesModule,\n };\n }\n}\n","import {\n Component,\n Inject,\n OnInit,\n OnDestroy,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChildren,\n QueryList,\n} from '@angular/core';\n\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\nimport { FsMessage } from '@firestitch/message';\nimport { FsTextEditorComponent } from '@firestitch/text-editor';\n\nimport { Subject, of } from 'rxjs';\nimport { switchMap, tap, takeUntil } from 'rxjs/operators';\n\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\nimport { FsContentConfig } from '../../../../interfaces';\n\n\n@Component({\n templateUrl: './content-layout.component.html',\n styleUrls: ['./content-layout.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ContentLayoutComponent implements OnInit, OnDestroy {\n\n @ViewChildren(FsTextEditorComponent)\n public textEditors: QueryList<FsTextEditorComponent>;\n\n public contentLayout = null;\n public editors = { content: true, styles: true };\n\n private _destroy$ = new Subject<void>();\n\n constructor( \n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n @Inject(MAT_DIALOG_DATA) private _data: any,\n private _dialogRef: MatDialogRef<ContentLayoutComponent>,\n private _message: FsMessage,\n private _cdRef: ChangeDetectorRef,\n ) {}\n\n public ngOnInit(): void {\n this._fetchData();\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public save = () => {\n return this._config.saveContentLayout(this.contentLayout)\n .pipe(\n tap((contentLayout) => {\n this._message.success('Saved Changes');\n this._dialogRef.close(contentLayout);\n }),\n );\n };\n\n private _fetchData(): void {\n of(this._data.contentLayout)\n .pipe(\n switchMap((contentLayout) => {\n return of(contentLayout);\n }),\n takeUntil(this._destroy$),\n )\n .subscribe((contentLayout) => {\n this.contentLayout = { ...contentLayout };\n\n this._cdRef.markForCheck();\n });\n }\n\n}\n","<form fsForm [submit]=\"save\" *fsSkeletonForm=\"contentLayout\">\n <fs-dialog>\n <h1 mat-dialog-title>{{contentLayout.id ? 'Layout' : 'Layout Page'}}</h1>\n <div mat-dialog-content>\n <div fxLayout=\"column\">\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentLayout.name\"\n name=\"name\"\n required\n placeholder=\"Name\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentLayout.tag\"\n name=\"tag\"\n placeholder=\"Tag\">\n </mat-form-field>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n","import {\n Component,\n OnInit,\n ViewChild,\n ChangeDetectionStrategy,\n OnDestroy,\n Inject,\n} from '@angular/core';\n\nimport { MatDialog } from '@angular/material/dialog';\n\nimport { FsListComponent, FsListConfig } from '@firestitch/list';\nimport { ItemType } from '@firestitch/filter';\n\nimport { map, takeUntil, filter } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\nimport { ContentLayoutComponent } from '../../components/content-layout';\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\nimport { FsContentConfig } from '../../../../interfaces';\nimport { EditorComponent } from '../../../editor/components/editor';\n\n\n@Component({\n selector: 'fs-content-layouts',\n templateUrl: './content-layouts.component.html',\n styleUrls: ['./content-layouts.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FsContentLayoutsComponent implements OnInit, OnDestroy {\n\n @ViewChild(FsListComponent)\n public listComponent: FsListComponent;\n\n public listConfig: FsListConfig;\n\n private _destroy$ = new Subject<void>();\n\n constructor(\n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n private _dialog: MatDialog,\n ) {}\n\n public ngOnInit(): void {\n this._initListConfig();\n }\n\n public openEditor(contentLayout: any): void {\n this._dialog.open(EditorComponent, {\n maxWidth: null,\n maxHeight: null, \n data: {\n styles: contentLayout.styles,\n content: contentLayout.content,\n save: (data) => {\n return this._config.saveContentLayout({\n id: contentLayout.id,\n ...data,\n });\n },\n },\n })\n .afterClosed()\n .pipe(\n takeUntil(this._destroy$),\n ) \n .subscribe(() => {\n this.listComponent.reload();\n });\n }\n\n public openLayout(contentLayout: any): void {\n this._dialog.open(ContentLayoutComponent, {\n data: {\n contentLayout,\n },\n })\n .afterClosed()\n .pipe(\n filter((_contentLayout) => !!_contentLayout),\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.listComponent.reload();\n });\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n private _initListConfig(): void {\n this.listConfig = {\n paging: false,\n filters: [\n {\n name: 'keyword',\n type: ItemType.Keyword,\n label: 'Search',\n },\n ],\n actions: [\n {\n label: 'Create',\n click: () => {\n this.openLayout({});\n },\n },\n ],\n rowActions: [\n {\n click: (data) => {\n return this._config.deleteContentLayout(data);\n },\n remove: {\n title: 'Confirm',\n template: 'Are you sure you would like to delete this record?',\n },\n menu: true,\n label: 'Delete',\n },\n ],\n fetch: (query) => {\n return this._config.loadContentLayouts(query)\n .pipe(\n map((contentLayouts: any) => {\n return { data: contentLayouts };\n }),\n );\n },\n restore: {\n query: { state: 'deleted' },\n filterLabel: 'Show Deleted',\n menuLabel: 'Restore',\n reload: true,\n click: (row) => {\n return this._config.saveContentLayout({ id: row.id, state: 'active' });\n },\n },\n };\n }\n\n}\n\n","<fs-list [config]=\"listConfig\">\n <fs-list-column name=\"design\" width=\"1%\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"openEditor(row)\"><mat-icon>design_services</mat-icon></a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"name\" title=\"Name\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"openLayout(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"modify_date\" title=\"Modified\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.modifyDate | fsDate: 'date-time-yearless'}}\n </ng-template>\n </fs-list-column>\n</fs-list>\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { FormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatFormFieldModule } from '@angular/material/form-field';\n\nimport { FsListModule } from '@firestitch/list';\nimport { FsDateModule } from '@firestitch/date';\nimport { FsDialogModule } from '@firestitch/dialog';\nimport { FsFormModule } from '@firestitch/form';\nimport { FsHtmlEditorModule } from '@firestitch/html-editor';\nimport { FsTextEditorModule } from '@firestitch/text-editor';\n\nimport { FsContentLayoutsComponent } from './components/content-layouts';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { FsLabelModule } from '@firestitch/label';\nimport { FsSkeletonModule } from '@firestitch/skeleton';\nimport { FsContentEditorModule } from '../editor';\nimport { ContentLayoutComponent } from './components/content-layout';\nimport { FlexLayoutModule } from '@angular/flex-layout';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n\n FlexLayoutModule,\n\n MatDialogModule,\n MatInputModule,\n MatFormFieldModule,\n MatButtonModule,\n MatTabsModule,\n MatIconModule,\n MatSelectModule,\n MatButtonToggleModule,\n\n FsListModule,\n FsDateModule,\n FsFormModule,\n FsLabelModule,\n FsSkeletonModule,\n FsHtmlEditorModule,\n FsDialogModule,\n FsTextEditorModule,\n\n FsContentEditorModule,\n ],\n exports: [\n FsContentLayoutsComponent,\n ],\n declarations: [\n ContentLayoutComponent,\n FsContentLayoutsComponent,\n ],\n})\nexport class FsContentLayoutsModule {\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n OnDestroy,\n ElementRef,\n Input,\n AfterViewChecked,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Router } from '@angular/router';\n\nimport { Subject } from 'rxjs';\n\n\n@Component({\n selector: 'fs-content-renderer',\n templateUrl: './content-renderer.component.html',\n styleUrls: ['./content-renderer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ContentRendererComponent implements OnDestroy, AfterViewChecked {\n\n @Input() public set contentPage(contentPage) {\n if(contentPage) {\n this.content = this._sanitizer.bypassSecurityTrustHtml(contentPage.content);\n this.styles = contentPage.styles;\n }\n }\n\n public content;\n public styles;\n public _destroy$ = new Subject();\n\n constructor(\n private _sanitizer: DomSanitizer,\n private _router: Router,\n private _el: ElementRef,\n ) {}\n\n public ngAfterViewChecked(): void {\n let el = document.querySelector('#contentPageStyles');\n if(!el) {\n el = document.createElement('style');\n el.setAttribute('id','contentPageStyles');\n document.getElementsByTagName('head')[0].appendChild(el);\n }\n\n el.innerHTML = this.styles;\n\n this.registerHrefs();\n }\n\n public registerHrefs(): void {\n Array.from(this.el.querySelectorAll('a[href]'))\n .filter((el: Element) => {\n return el.getAttribute('href').match(/^\\//);\n })\n .forEach((el: Element) => {\n el.addEventListener('click',(event: MouseEvent) => {\n if(!event.shiftKey && !event.ctrlKey) {\n event.preventDefault();\n const href = el.getAttribute('href');\n this._router.navigateByUrl(href);\n }\n });\n });\n }\n\n public get el(): any {\n return this._el.nativeElement;\n }\n\n public ngOnDestroy(): void {\n this.removeStyles();\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public removeStyles(): void {\n const el = document.querySelector('#contentPageStyles');\n if(el) {\n el.remove();\n }\n }\n\n}\n","<div *ngIf=\"content\" [innerHTML]=\"content\"></div>\n","import {\n Component,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n OnInit,\n OnDestroy,\n ElementRef,\n Inject,\n} from '@angular/core';\nimport { Title } from '@angular/platform-browser';\nimport { NavigationEnd, Router } from '@angular/router';\n\nimport { Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\nimport { FsContentConfig } from '../../../../interfaces';\n\n\n@Component({\n selector: 'fs-content',\n templateUrl: './content.component.html',\n styleUrls: ['./content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FsContentComponent implements OnInit, OnDestroy {\n\n public contentPage;\n \n private _destroy$ = new Subject();\n\n constructor(\n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n private _title: Title,\n private _cdRef: ChangeDetectorRef,\n private _router: Router,\n private _el: ElementRef,\n ) {}\n\n public ngOnInit(): void {\n this.load();\n\n this._router.events\n .pipe(\n filter((e) => e instanceof NavigationEnd),\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.load();\n });\n }\n\n public load(): void {\n const path = (window as any).location.pathname;\n this._config.loadContent(path)\n .subscribe((contentPage) => {\n if(contentPage.title) {\n this._title.setTitle(contentPage.title);\n\n let ogTitleEl = document.querySelector('head meta[property=\"og:title\"]');\n if(!ogTitleEl) {\n ogTitleEl = document.createElement('meta');\n ogTitleEl.setAttribute('property','og:title');\n document.getElementsByTagName('head')[0].appendChild(ogTitleEl);\n }\n\n ogTitleEl.setAttribute('content',contentPage.title);\n }\n\n this.contentPage = contentPage;\n this._cdRef.markForCheck();\n });\n }\n\n public get el(): any {\n return this._el.nativeElement;\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n this._title.setTitle('');\n }\n\n}\n","<fs-content-renderer *ngIf=\"contentPage\" [contentPage]=\"contentPage\"></fs-content-renderer>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { FsHtmlEditorModule } from '@firestitch/html-editor';\n\nimport { FsContentComponent } from './components/content';\nimport { ContentRendererComponent } from './components/content-renderer';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n FsHtmlEditorModule,\n ],\n exports: [\n FsContentComponent,\n ],\n declarations: [\n FsContentComponent,\n ContentRendererComponent,\n ],\n})\nexport class FsContentModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["InjectionToken","Subject","tap","of","switchMap","takeUntil","MAT_DIALOG_DATA","FsTextEditorComponent","Component","ChangeDetectionStrategy","Inject","ViewChildren","index","filter","ItemType","map","FsListComponent","Input","ViewChild","CommonModule","FormsModule","MatDialogModule","MatButtonModule","MatTabsModule","MatIconModule","MatButtonToggleModule","FsListModule","FsFormModule","FsLabelModule","FsHtmlEditorModule","FsDialogModule","FsTextEditorModule","NgModule","FlexLayoutModule","MatInputModule","MatFormFieldModule","MatSelectModule","FsDateModule","FsSkeletonModule","NavigationEnd"],"mappings":"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"}
1
+ {"version":3,"file":"firestitch-content.umd.js","sources":["../../src/app/modules/editor/components/editor/editor.component.ts","../../src/app/modules/editor/components/editor/editor.component.html","../../src/app/modules/editor/fs-content-editor.module.ts","../../src/app/enums/page-type.enum.ts","../../src/app/consts/page-types.const.ts","../../src/app/injectors/content-config.injector.ts","../../src/app/modules/content-pages/components/content-page/content-page.component.ts","../../src/app/modules/content-pages/components/content-page/content-page.component.html","../../src/app/modules/content-pages/components/content-pages/content-pages.component.ts","../../src/app/modules/content-pages/components/content-pages/content-pages.component.html","../../src/app/modules/content-pages/fs-content-pages.module.ts","../../src/app/modules/content-layouts/components/content-layout/content-layout.component.ts","../../src/app/modules/content-layouts/components/content-layout/content-layout.component.html","../../src/app/modules/content-layouts/components/content-layouts/content-layouts.component.ts","../../src/app/modules/content-layouts/components/content-layouts/content-layouts.component.html","../../src/app/modules/content-layouts/fs-content-layouts.module.ts","../../src/app/modules/content/components/content-renderer/content-renderer.component.ts","../../src/app/modules/content/components/content-renderer/content-renderer.component.html","../../src/app/modules/content/components/content/content.component.ts","../../src/app/modules/content/components/content/content.component.html","../../src/app/modules/content/fs-content.module.ts","../../src/firestitch-content.ts"],"sourcesContent":["import {\n Component,\n Inject,\n OnInit,\n OnDestroy,\n ChangeDetectionStrategy,\n ViewChildren,\n QueryList,\n} from '@angular/core';\n\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { MatButtonToggleChange } from '@angular/material/button-toggle';\n\nimport { FsMessage } from '@firestitch/message';\nimport { FsTextEditorComponent } from '@firestitch/text-editor';\n\nimport { Subject } from 'rxjs';\nimport { tap } from 'rxjs/operators';\n\n\n@Component({\n templateUrl: './editor.component.html',\n styleUrls: ['./editor.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EditorComponent implements OnInit, OnDestroy {\n\n @ViewChildren(FsTextEditorComponent)\n public textEditors: QueryList<FsTextEditorComponent>;\n\n public styles = null;\n public content = null;\n public editors = { content: true, styles: true };\n\n private _destroy$ = new Subject<void>();\n\n constructor(\n @Inject(MAT_DIALOG_DATA) private _data: any,\n private _dialogRef: MatDialogRef<EditorComponent>,\n private _message: FsMessage,\n ) {}\n\n public ngOnInit(): void {\n this._dialogRef.updateSize('100%','100%');\n this.content = this._data.content;\n this.styles = this._data.styles;\n }\n\n public editorToggleChange(event: MatButtonToggleChange): void {\n this.editors[event.value] = !this.editors[event.value];\n setTimeout(() => {\n this.textEditors.forEach((textEditor) => {\n textEditor.updateLayout();\n });\n }, 100);\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public save = () => {\n return this._data.save({ content: this.content, styles: this.styles })\n .pipe(\n tap(() => {\n this._message.success('Saved Changes');\n }),\n );\n };\n\n}\n","<form fsForm [submit]=\"save\">\n <fs-dialog>\n <h1 mat-dialog-title>Design</h1>\n <div mat-dialog-content>\n <div class=\"container\">\n <div class=\"toggles\">\n <mat-button-toggle-group multiple>\n <mat-button-toggle value=\"content\" [checked]=\"editors.content\" (change)=\"editorToggleChange($event)\">Content</mat-button-toggle>\n <mat-button-toggle value=\"styles\" [checked]=\"editors.styles\" (change)=\"editorToggleChange($event)\">Styles</mat-button-toggle>\n </mat-button-toggle-group> \n </div>\n <div class=\"editors\">\n <div class=\"editor\" *ngIf=\"editors.content\">\n <fs-label>Content</fs-label>\n <div class=\"editor-container\">\n <fs-text-editor \n [(ngModel)]=\"content\" \n name=\"content\"\n [config]=\"{ tabSize: 2, language: 'html' }\">\n </fs-text-editor> \n </div>\n </div>\n <div class=\"editor\" *ngIf=\"editors.styles\">\n <fs-label>Styles</fs-label>\n <div class=\"editor-container\">\n <fs-text-editor \n [(ngModel)]=\"styles\" \n name=\"styles\"\n [config]=\"{ tabSize: 2, language: 'scss' }\">\n </fs-text-editor> \n </div>\n </div> \n </div>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatIconModule } from '@angular/material/icon';\nimport { FormsModule } from '@angular/forms';\n\nimport { FsListModule } from '@firestitch/list';\nimport { FsLabelModule } from '@firestitch/label';\nimport { FsDialogModule } from '@firestitch/dialog';\nimport { FsFormModule } from '@firestitch/form';\nimport { FsHtmlEditorModule } from '@firestitch/html-editor';\nimport { FsTextEditorModule } from '@firestitch/text-editor';\n\nimport { EditorComponent } from './components/editor';\n\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n\n MatDialogModule,\n MatButtonModule,\n MatTabsModule,\n MatIconModule,\n MatButtonToggleModule,\n\n FsListModule,\n FsFormModule,\n FsLabelModule,\n FsHtmlEditorModule,\n FsDialogModule,\n FsTextEditorModule,\n ],\n exports: [\n EditorComponent,\n ],\n declarations: [\n EditorComponent,\n ],\n})\nexport class FsContentEditorModule {\n }\n","export enum PageType {\n StandardPage = 'standardPage',\n BlogPost = 'blogPost',\n HomePage = 'homePage',\n NotFoundPage = 'notFoundPage',\n}\n","import { PageType } from '../enums';\n\nexport const PageTypes = [\n { name: 'Standard Page', value: PageType.StandardPage },\n { name: 'Home Page', value: PageType.HomePage },\n { name: 'Not Found Page', value: PageType.NotFoundPage },\n { name: 'Blog Post', value: PageType.BlogPost },\n];\n","import { InjectionToken } from '@angular/core';\n\nexport const FS_CONTENT_CONFIG = new InjectionToken<any>('fs-content-config');\n","import {\n Component,\n Inject,\n OnInit,\n OnDestroy,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChildren,\n QueryList,\n} from '@angular/core';\n\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\nimport { FsMessage } from '@firestitch/message';\nimport { FsTextEditorComponent } from '@firestitch/text-editor';\n\nimport { Subject, of } from 'rxjs';\nimport { switchMap, tap, takeUntil } from 'rxjs/operators';\n\nimport { PageTypes } from '../../../../consts';\nimport { FsContentConfig } from '../../../../interfaces';\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\n\n\n@Component({\n templateUrl: './content-page.component.html',\n styleUrls: ['./content-page.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ContentPageComponent implements OnInit, OnDestroy {\n\n @ViewChildren(FsTextEditorComponent)\n public textEditors: QueryList<FsTextEditorComponent>;\n\n public contentPage = null;\n public PageTypes = PageTypes;\n public contentLayouts;\n public editors = { content: true, styles: true };\n\n private _destroy$ = new Subject<void>();\n\n constructor(\n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n @Inject(MAT_DIALOG_DATA) private _data: any,\n private _dialogRef: MatDialogRef<ContentPageComponent>,\n private _message: FsMessage,\n private _cdRef: ChangeDetectorRef,\n ) {}\n\n public ngOnInit(): void {\n this._fetchData();\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public save = () => {\n return this._config.saveContentPage(this.contentPage)\n .pipe(\n tap((contentPage) => {\n this._message.success('Saved Changes');\n this._dialogRef.close(contentPage);\n }),\n );\n };\n\n private _fetchData(): void {\n this._config.loadContentLayouts()\n .subscribe((contentLayouts) => {\n this.contentLayouts = contentLayouts;\n this._cdRef.markForCheck();\n });\n\n of(this._data.contentPage)\n .pipe(\n switchMap((contentPage) => {\n return of(contentPage);\n }),\n takeUntil(this._destroy$),\n )\n .subscribe((contentPage) => {\n this.contentPage = {\n ...contentPage,\n };\n\n this._cdRef.markForCheck();\n });\n }\n\n}\n","<form fsForm [submit]=\"save\" *fsSkeletonForm=\"contentPage\">\n <fs-dialog>\n <h1 mat-dialog-title>{{contentPage.id ? 'Page' : 'Create Page'}}</h1>\n <div mat-dialog-content>\n <div class=\"fs-column\">\n <mat-form-field>\n <mat-select\n [(ngModel)]=\"contentPage.type\"\n name=\"type\"\n required\n placeholder=\"Type\">\n <mat-option\n *ngFor=\"let item of PageTypes\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.name\"\n name=\"name\"\n required\n placeholder=\"Name\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.path\"\n name=\"path\"\n placeholder=\"Path\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.title\"\n name=\"title\"\n placeholder=\"Title\">\n </mat-form-field>\n <mat-form-field *ngIf=\"contentLayouts\">\n <mat-select\n [(ngModel)]=\"contentPage.contentLayoutId\"\n required\n name=\"contentLayoutId\"\n placeholder=\"Layout\">\n <mat-option\n *ngFor=\"let item of contentLayouts\"\n [value]=\"item.id\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n","import {\n Component,\n OnInit,\n ViewChild,\n ChangeDetectionStrategy,\n OnDestroy,\n Input,\n Inject,\n} from '@angular/core';\n\nimport { MatDialog } from '@angular/material/dialog';\n\nimport { FsListComponent, FsListConfig } from '@firestitch/list';\nimport { ItemType } from '@firestitch/filter';\nimport { index } from '@firestitch/common';\nimport { FsHtmlEditorConfig } from '@firestitch/html-editor';\n\nimport { filter, map, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\nimport { PageTypes } from '../../../../consts';\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\nimport { FsContentConfig } from '../../../../interfaces';\nimport { ContentPageComponent } from '../content-page/content-page.component';\nimport { EditorComponent } from '../../../editor/components/editor';\n\n\n@Component({\n selector: 'fs-content-pages',\n templateUrl: './content-pages.component.html',\n styleUrls: ['./content-pages.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FsContentPagesComponent implements OnInit, OnDestroy {\n\n @Input() public htmlEditorConfig: FsHtmlEditorConfig;\n\n @ViewChild(FsListComponent)\n public listComponent: FsListComponent;\n\n public listConfig: FsListConfig;\n public pageTypes = index(PageTypes, 'value', 'name');\n\n private _destroy$ = new Subject<void>();\n\n constructor(\n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n private _dialog: MatDialog,\n ) {}\n\n public ngOnInit(): void {\n this._initListConfig();\n }\n\n public openEditor(contentPage: any): void {\n this._dialog.open(EditorComponent, {\n maxWidth: null,\n maxHeight: null,\n data: {\n styles: contentPage.styles,\n content: contentPage.content,\n save: (data) => {\n return this._config.saveContentPage({\n id: contentPage.id,\n ...data,\n });\n }, \n },\n })\n .afterClosed()\n .pipe(\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.listComponent.reload();\n });\n }\n\n public openPage(contentPage: any): void {\n this._dialog.open(ContentPageComponent, {\n data: {\n contentPage,\n },\n })\n .afterClosed()\n .pipe(\n filter((_contentPage) => !!_contentPage),\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.listComponent.reload();\n });\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n private _initListConfig(): void {\n this.listConfig = {\n filters: [\n {\n name: 'keyword',\n type: ItemType.Keyword,\n label: 'Search',\n },\n ],\n actions: [\n {\n label: 'Create',\n click: () => {\n this.openPage({});\n },\n },\n ],\n rowActions: [\n {\n click: (data) => {\n return this._config.deleteContentPage(data);\n },\n remove: {\n title: 'Confirm',\n template: 'Are you sure you would like to delete this record?',\n },\n menu: true,\n label: 'Delete',\n },\n ],\n fetch: (query) => {\n return this._config.loadContentPages(query)\n .pipe(\n map((response: any) => {\n return { data: response.contentPages, paging: response.paging };\n }),\n );\n },\n restore: {\n query: { state: 'deleted' },\n filterLabel: 'Show Deleted',\n menuLabel: 'Restore',\n reload: true,\n click: (row) => {\n return this._config.saveContentPage({ id: row.id, state: 'active' });\n },\n },\n };\n }\n\n}\n\n\n","<fs-list [config]=\"listConfig\">\n <fs-list-column name=\"design\" width=\"1%\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"openEditor(row)\"><mat-icon>design_services</mat-icon></a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"name\" title=\"Name\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"openPage(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"path\" title=\"Path\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <a [href]=\"'/' + row.path\" target=\"_black\">/{{row.path}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"type\" title=\"Type\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n {{pageTypes[row.type]}}\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"modify_date\" title=\"Modified\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.modifyDate | fsDate: 'date-time-yearless'}}\n </ng-template>\n </fs-list-column>\n</fs-list>\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatTabsModule } from '@angular/material/tabs';\n\nimport { FsDateModule } from '@firestitch/date';\nimport { FsDialogModule } from '@firestitch/dialog';\nimport { FsFormModule } from '@firestitch/form';\nimport { FsHtmlEditorModule } from '@firestitch/html-editor';\nimport { FsLabelModule } from '@firestitch/label';\nimport { FsListModule } from '@firestitch/list';\nimport { FsSkeletonModule } from '@firestitch/skeleton';\nimport { FsTextEditorModule } from '@firestitch/text-editor';\n\nimport { FsContentEditorModule } from '../editor';\nimport { ContentPageComponent } from './components/content-page';\nimport { FsContentPagesComponent } from './components/content-pages';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n\n MatDialogModule,\n MatInputModule,\n MatFormFieldModule,\n MatButtonModule,\n MatTabsModule,\n MatIconModule,\n MatSelectModule,\n MatButtonToggleModule,\n\n FsListModule,\n FsDateModule,\n FsFormModule,\n FsLabelModule,\n FsSkeletonModule,\n FsHtmlEditorModule,\n FsDialogModule,\n FsTextEditorModule,\n\n FsContentEditorModule,\n ],\n exports: [\n FsContentPagesComponent,\n ],\n declarations: [\n FsContentPagesComponent,\n ContentPageComponent,\n ],\n})\nexport class FsContentPagesModule {\n static forRoot(): ModuleWithProviders<FsContentPagesModule> {\n return {\n ngModule: FsContentPagesModule,\n };\n }\n}\n","import {\n Component,\n Inject,\n OnInit,\n OnDestroy,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChildren,\n QueryList,\n} from '@angular/core';\n\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\nimport { FsMessage } from '@firestitch/message';\nimport { FsTextEditorComponent } from '@firestitch/text-editor';\n\nimport { Subject, of } from 'rxjs';\nimport { switchMap, tap, takeUntil } from 'rxjs/operators';\n\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\nimport { FsContentConfig } from '../../../../interfaces';\n\n\n@Component({\n templateUrl: './content-layout.component.html',\n styleUrls: ['./content-layout.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ContentLayoutComponent implements OnInit, OnDestroy {\n\n @ViewChildren(FsTextEditorComponent)\n public textEditors: QueryList<FsTextEditorComponent>;\n\n public contentLayout = null;\n public editors = { content: true, styles: true };\n\n private _destroy$ = new Subject<void>();\n\n constructor( \n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n @Inject(MAT_DIALOG_DATA) private _data: any,\n private _dialogRef: MatDialogRef<ContentLayoutComponent>,\n private _message: FsMessage,\n private _cdRef: ChangeDetectorRef,\n ) {}\n\n public ngOnInit(): void {\n this._fetchData();\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public save = () => {\n return this._config.saveContentLayout(this.contentLayout)\n .pipe(\n tap((contentLayout) => {\n this._message.success('Saved Changes');\n this._dialogRef.close(contentLayout);\n }),\n );\n };\n\n private _fetchData(): void {\n of(this._data.contentLayout)\n .pipe(\n switchMap((contentLayout) => {\n return of(contentLayout);\n }),\n takeUntil(this._destroy$),\n )\n .subscribe((contentLayout) => {\n this.contentLayout = { ...contentLayout };\n\n this._cdRef.markForCheck();\n });\n }\n\n}\n","<form fsForm [submit]=\"save\" *fsSkeletonForm=\"contentLayout\">\n <fs-dialog>\n <h1 mat-dialog-title>{{contentLayout.id ? 'Layout' : 'Layout Page'}}</h1>\n <div mat-dialog-content>\n <div class=\"fs-column\">\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentLayout.name\"\n name=\"name\"\n required\n placeholder=\"Name\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentLayout.tag\"\n name=\"tag\"\n placeholder=\"Tag\">\n </mat-form-field>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n","import {\n Component,\n OnInit,\n ViewChild,\n ChangeDetectionStrategy,\n OnDestroy,\n Inject,\n} from '@angular/core';\n\nimport { MatDialog } from '@angular/material/dialog';\n\nimport { FsListComponent, FsListConfig } from '@firestitch/list';\nimport { ItemType } from '@firestitch/filter';\n\nimport { map, takeUntil, filter } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\nimport { ContentLayoutComponent } from '../../components/content-layout';\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\nimport { FsContentConfig } from '../../../../interfaces';\nimport { EditorComponent } from '../../../editor/components/editor';\n\n\n@Component({\n selector: 'fs-content-layouts',\n templateUrl: './content-layouts.component.html',\n styleUrls: ['./content-layouts.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FsContentLayoutsComponent implements OnInit, OnDestroy {\n\n @ViewChild(FsListComponent)\n public listComponent: FsListComponent;\n\n public listConfig: FsListConfig;\n\n private _destroy$ = new Subject<void>();\n\n constructor(\n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n private _dialog: MatDialog,\n ) {}\n\n public ngOnInit(): void {\n this._initListConfig();\n }\n\n public openEditor(contentLayout: any): void {\n this._dialog.open(EditorComponent, {\n maxWidth: null,\n maxHeight: null, \n data: {\n styles: contentLayout.styles,\n content: contentLayout.content,\n save: (data) => {\n return this._config.saveContentLayout({\n id: contentLayout.id,\n ...data,\n });\n },\n },\n })\n .afterClosed()\n .pipe(\n takeUntil(this._destroy$),\n ) \n .subscribe(() => {\n this.listComponent.reload();\n });\n }\n\n public openLayout(contentLayout: any): void {\n this._dialog.open(ContentLayoutComponent, {\n data: {\n contentLayout,\n },\n })\n .afterClosed()\n .pipe(\n filter((_contentLayout) => !!_contentLayout),\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.listComponent.reload();\n });\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n private _initListConfig(): void {\n this.listConfig = {\n paging: false,\n filters: [\n {\n name: 'keyword',\n type: ItemType.Keyword,\n label: 'Search',\n },\n ],\n actions: [\n {\n label: 'Create',\n click: () => {\n this.openLayout({});\n },\n },\n ],\n rowActions: [\n {\n click: (data) => {\n return this._config.deleteContentLayout(data);\n },\n remove: {\n title: 'Confirm',\n template: 'Are you sure you would like to delete this record?',\n },\n menu: true,\n label: 'Delete',\n },\n ],\n fetch: (query) => {\n return this._config.loadContentLayouts(query)\n .pipe(\n map((contentLayouts: any) => {\n return { data: contentLayouts };\n }),\n );\n },\n restore: {\n query: { state: 'deleted' },\n filterLabel: 'Show Deleted',\n menuLabel: 'Restore',\n reload: true,\n click: (row) => {\n return this._config.saveContentLayout({ id: row.id, state: 'active' });\n },\n },\n };\n }\n\n}\n\n","<fs-list [config]=\"listConfig\">\n <fs-list-column name=\"design\" width=\"1%\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"openEditor(row)\"><mat-icon>design_services</mat-icon></a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"name\" title=\"Name\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"openLayout(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column name=\"modify_date\" title=\"Modified\" [sortable]=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.modifyDate | fsDate: 'date-time-yearless'}}\n </ng-template>\n </fs-list-column>\n</fs-list>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTabsModule } from '@angular/material/tabs';\n\nimport { FsDateModule } from '@firestitch/date';\nimport { FsDialogModule } from '@firestitch/dialog';\nimport { FsFormModule } from '@firestitch/form';\nimport { FsHtmlEditorModule } from '@firestitch/html-editor';\nimport { FsListModule } from '@firestitch/list';\nimport { FsTextEditorModule } from '@firestitch/text-editor';\n\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSelectModule } from '@angular/material/select';\nimport { FsLabelModule } from '@firestitch/label';\nimport { FsSkeletonModule } from '@firestitch/skeleton';\nimport { FsContentEditorModule } from '../editor';\nimport { ContentLayoutComponent } from './components/content-layout';\nimport { FsContentLayoutsComponent } from './components/content-layouts';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n\n MatDialogModule,\n MatInputModule,\n MatFormFieldModule,\n MatButtonModule,\n MatTabsModule,\n MatIconModule,\n MatSelectModule,\n MatButtonToggleModule,\n\n FsListModule,\n FsDateModule,\n FsFormModule,\n FsLabelModule,\n FsSkeletonModule,\n FsHtmlEditorModule,\n FsDialogModule,\n FsTextEditorModule,\n\n FsContentEditorModule,\n ],\n exports: [\n FsContentLayoutsComponent,\n ],\n declarations: [\n ContentLayoutComponent,\n FsContentLayoutsComponent,\n ],\n})\nexport class FsContentLayoutsModule {\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n OnDestroy,\n ElementRef,\n Input,\n AfterViewChecked,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Router } from '@angular/router';\n\nimport { Subject } from 'rxjs';\n\n\n@Component({\n selector: 'fs-content-renderer',\n templateUrl: './content-renderer.component.html',\n styleUrls: ['./content-renderer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ContentRendererComponent implements OnDestroy, AfterViewChecked {\n\n @Input() public set contentPage(contentPage) {\n if(contentPage) {\n this.content = this._sanitizer.bypassSecurityTrustHtml(contentPage.content);\n this.styles = contentPage.styles;\n }\n }\n\n public content;\n public styles;\n public _destroy$ = new Subject();\n\n constructor(\n private _sanitizer: DomSanitizer,\n private _router: Router,\n private _el: ElementRef,\n ) {}\n\n public ngAfterViewChecked(): void {\n let el = document.querySelector('#contentPageStyles');\n if(!el) {\n el = document.createElement('style');\n el.setAttribute('id','contentPageStyles');\n document.getElementsByTagName('head')[0].appendChild(el);\n }\n\n el.innerHTML = this.styles;\n\n this.registerHrefs();\n }\n\n public registerHrefs(): void {\n Array.from(this.el.querySelectorAll('a[href]'))\n .filter((el: Element) => {\n return el.getAttribute('href').match(/^\\//);\n })\n .forEach((el: Element) => {\n el.addEventListener('click',(event: MouseEvent) => {\n if(!event.shiftKey && !event.ctrlKey) {\n event.preventDefault();\n const href = el.getAttribute('href');\n this._router.navigateByUrl(href);\n }\n });\n });\n }\n\n public get el(): any {\n return this._el.nativeElement;\n }\n\n public ngOnDestroy(): void {\n this.removeStyles();\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public removeStyles(): void {\n const el = document.querySelector('#contentPageStyles');\n if(el) {\n el.remove();\n }\n }\n\n}\n","<div *ngIf=\"content\" [innerHTML]=\"content\"></div>\n","import {\n Component,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n OnInit,\n OnDestroy,\n ElementRef,\n Inject,\n} from '@angular/core';\nimport { Title } from '@angular/platform-browser';\nimport { NavigationEnd, Router } from '@angular/router';\n\nimport { Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\nimport { FS_CONTENT_CONFIG } from '../../../../injectors';\nimport { FsContentConfig } from '../../../../interfaces';\n\n\n@Component({\n selector: 'fs-content',\n templateUrl: './content.component.html',\n styleUrls: ['./content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FsContentComponent implements OnInit, OnDestroy {\n\n public contentPage;\n \n private _destroy$ = new Subject();\n\n constructor(\n @Inject(FS_CONTENT_CONFIG) private _config: FsContentConfig,\n private _title: Title,\n private _cdRef: ChangeDetectorRef,\n private _router: Router,\n private _el: ElementRef,\n ) {}\n\n public ngOnInit(): void {\n this.load();\n\n this._router.events\n .pipe(\n filter((e) => e instanceof NavigationEnd),\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.load();\n });\n }\n\n public load(): void {\n const path = (window as any).location.pathname;\n this._config.loadContent(path)\n .subscribe((contentPage) => {\n if(contentPage.title) {\n this._title.setTitle(contentPage.title);\n\n let ogTitleEl = document.querySelector('head meta[property=\"og:title\"]');\n if(!ogTitleEl) {\n ogTitleEl = document.createElement('meta');\n ogTitleEl.setAttribute('property','og:title');\n document.getElementsByTagName('head')[0].appendChild(ogTitleEl);\n }\n\n ogTitleEl.setAttribute('content',contentPage.title);\n }\n\n this.contentPage = contentPage;\n this._cdRef.markForCheck();\n });\n }\n\n public get el(): any {\n return this._el.nativeElement;\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n this._title.setTitle('');\n }\n\n}\n","<fs-content-renderer *ngIf=\"contentPage\" [contentPage]=\"contentPage\"></fs-content-renderer>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { FsHtmlEditorModule } from '@firestitch/html-editor';\n\nimport { FsContentComponent } from './components/content';\nimport { ContentRendererComponent } from './components/content-renderer';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n FsHtmlEditorModule,\n ],\n exports: [\n FsContentComponent,\n ],\n declarations: [\n FsContentComponent,\n ContentRendererComponent,\n ],\n})\nexport class FsContentModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["Subject","tap","MAT_DIALOG_DATA","FsTextEditorComponent","Component","ChangeDetectionStrategy","Inject","ViewChildren","CommonModule","FormsModule","MatDialogModule","MatButtonModule","MatTabsModule","MatIconModule","MatButtonToggleModule","FsListModule","FsFormModule","FsLabelModule","FsHtmlEditorModule","FsDialogModule","FsTextEditorModule","NgModule","InjectionToken","of","switchMap","takeUntil","index","filter","ItemType","map","FsListComponent","Input","ViewChild","MatInputModule","MatFormFieldModule","MatSelectModule","FsDateModule","FsSkeletonModule","NavigationEnd"],"mappings":"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"}
@@ -13,8 +13,7 @@ import * as i4 from "@angular/material/form-field";
13
13
  import * as i5 from "@firestitch/form";
14
14
  import * as i6 from "@firestitch/skeleton";
15
15
  import * as i7 from "@angular/forms";
16
- import * as i8 from "@angular/flex-layout/flex";
17
- import * as i9 from "@angular/material/input";
16
+ import * as i8 from "@angular/material/input";
18
17
  export class ContentLayoutComponent {
19
18
  constructor(_config, _data, _dialogRef, _message, _cdRef) {
20
19
  this._config = _config;
@@ -52,7 +51,7 @@ export class ContentLayoutComponent {
52
51
  }
53
52
  }
54
53
  ContentLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ContentLayoutComponent, deps: [{ token: FS_CONTENT_CONFIG }, { token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }, { token: i2.FsMessage }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
55
- ContentLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ContentLayoutComponent, selector: "ng-component", viewQueries: [{ propertyName: "textEditors", predicate: FsTextEditorComponent, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"save\" *fsSkeletonForm=\"contentLayout\">\n <fs-dialog>\n <h1 mat-dialog-title>{{contentLayout.id ? 'Layout' : 'Layout Page'}}</h1>\n <div mat-dialog-content>\n <div fxLayout=\"column\">\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentLayout.name\"\n name=\"name\"\n required\n placeholder=\"Name\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentLayout.tag\"\n name=\"tag\"\n placeholder=\"Tag\">\n </mat-form-field>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n", styles: [""], components: [{ type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i5.FsFormDialogActionsComponent, selector: "fs-form-dialog-actions", inputs: ["save", "create", "close", "closeData", "name"] }], directives: [{ type: i6.FsSkeletonFormDirective, selector: "[fsSkeletonForm]", inputs: ["fsSkeletonForm", "fsSkeletonFormLines"] }, { type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i8.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
54
+ ContentLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ContentLayoutComponent, selector: "ng-component", viewQueries: [{ propertyName: "textEditors", predicate: FsTextEditorComponent, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"save\" *fsSkeletonForm=\"contentLayout\">\n <fs-dialog>\n <h1 mat-dialog-title>{{contentLayout.id ? 'Layout' : 'Layout Page'}}</h1>\n <div mat-dialog-content>\n <div class=\"fs-column\">\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentLayout.name\"\n name=\"name\"\n required\n placeholder=\"Name\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentLayout.tag\"\n name=\"tag\"\n placeholder=\"Tag\">\n </mat-form-field>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n", styles: [""], components: [{ type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileActionPlacement", "mobileWidth", "mode"] }, { type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i5.FsFormDialogActionsComponent, selector: "fs-form-dialog-actions", inputs: ["save", "create", "close", "done", "closeData", "name"] }], directives: [{ type: i6.FsSkeletonFormDirective, selector: "[fsSkeletonForm]", inputs: ["fsSkeletonForm", "fsSkeletonFormLines"] }, { type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i5.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
56
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ContentLayoutComponent, decorators: [{
57
56
  type: Component,
58
57
  args: [{
@@ -70,4 +69,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
70
69
  type: ViewChildren,
71
70
  args: [FsTextEditorComponent]
72
71
  }] } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2NvbnRlbnQtbGF5b3V0cy9jb21wb25lbnRzL2NvbnRlbnQtbGF5b3V0L2NvbnRlbnQtbGF5b3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9jb250ZW50LWxheW91dHMvY29tcG9uZW50cy9jb250ZW50LWxheW91dC9jb250ZW50LWxheW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFHTix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7O0FBUzFELE1BQU0sT0FBTyxzQkFBc0I7SUFVakMsWUFDcUMsT0FBd0IsRUFDMUIsS0FBVSxFQUNuQyxVQUFnRCxFQUNoRCxRQUFtQixFQUNuQixNQUF5QjtRQUpFLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQzFCLFVBQUssR0FBTCxLQUFLLENBQUs7UUFDbkMsZUFBVSxHQUFWLFVBQVUsQ0FBc0M7UUFDaEQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixXQUFNLEdBQU4sTUFBTSxDQUFtQjtRQVY1QixrQkFBYSxHQUFHLElBQUksQ0FBQztRQUNyQixZQUFPLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUV6QyxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQW1CakMsU0FBSSxHQUFHLEdBQUcsRUFBRTtZQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztpQkFDdEQsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO2dCQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDdkMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNOLENBQUMsQ0FBQztJQW5CQyxDQUFDO0lBRUcsUUFBUTtRQUNiLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQVlPLFVBQVU7UUFDaEIsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO2FBQ3pCLElBQUksQ0FDSCxTQUFTLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRTtZQUMxQixPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQjthQUNBLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxhQUFhLHFCQUFRLGFBQWEsQ0FBRSxDQUFDO1lBRTFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztvSEFsRFUsc0JBQXNCLGtCQVd2QixpQkFBaUIsYUFDakIsZUFBZTt3R0FaZCxzQkFBc0Isb0ZBRW5CLHFCQUFxQixnREM5QnJDLDJ5QkE2QkE7NEZERGEsc0JBQXNCO2tCQUxsQyxTQUFTO21CQUFDO29CQUNULFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDO29CQUM5QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQVlJLE1BQU07MkJBQUMsaUJBQWlCOzswQkFDeEIsTUFBTTsyQkFBQyxlQUFlOytIQVRsQixXQUFXO3NCQURqQixZQUFZO3VCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5qZWN0LFxuICBPbkluaXQsXG4gIE9uRGVzdHJveSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBWaWV3Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuaW1wb3J0IHsgRnNNZXNzYWdlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvbWVzc2FnZSc7XG5pbXBvcnQgeyBGc1RleHRFZGl0b3JDb21wb25lbnQgfSBmcm9tICdAZmlyZXN0aXRjaC90ZXh0LWVkaXRvcic7XG5cbmltcG9ydCB7IFN1YmplY3QsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRhcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBGU19DT05URU5UX0NPTkZJRyB9IGZyb20gJy4uLy4uLy4uLy4uL2luamVjdG9ycyc7XG5pbXBvcnQgeyBGc0NvbnRlbnRDb25maWcgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnRlbnQtbGF5b3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGVudC1sYXlvdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRMYXlvdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQFZpZXdDaGlsZHJlbihGc1RleHRFZGl0b3JDb21wb25lbnQpXG4gIHB1YmxpYyB0ZXh0RWRpdG9yczogUXVlcnlMaXN0PEZzVGV4dEVkaXRvckNvbXBvbmVudD47XG5cbiAgcHVibGljIGNvbnRlbnRMYXlvdXQgPSBudWxsO1xuICBwdWJsaWMgZWRpdG9ycyA9IHsgY29udGVudDogdHJ1ZSwgc3R5bGVzOiB0cnVlIH07XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKCAgICBcbiAgICBASW5qZWN0KEZTX0NPTlRFTlRfQ09ORklHKSBwcml2YXRlIF9jb25maWc6IEZzQ29udGVudENvbmZpZyxcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHJpdmF0ZSBfZGF0YTogYW55LFxuICAgIHByaXZhdGUgX2RpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPENvbnRlbnRMYXlvdXRDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgX21lc3NhZ2U6IEZzTWVzc2FnZSxcbiAgICBwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZmV0Y2hEYXRhKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2F2ZSA9ICgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnLnNhdmVDb250ZW50TGF5b3V0KHRoaXMuY29udGVudExheW91dClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKGNvbnRlbnRMYXlvdXQpID0+IHtcbiAgICAgICAgICB0aGlzLl9tZXNzYWdlLnN1Y2Nlc3MoJ1NhdmVkIENoYW5nZXMnKTtcbiAgICAgICAgICB0aGlzLl9kaWFsb2dSZWYuY2xvc2UoY29udGVudExheW91dCk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfTtcblxuICBwcml2YXRlIF9mZXRjaERhdGEoKTogdm9pZCB7XG4gICAgb2YodGhpcy5fZGF0YS5jb250ZW50TGF5b3V0KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoY29udGVudExheW91dCkgPT4ge1xuICAgICAgICAgIHJldHVybiBvZihjb250ZW50TGF5b3V0KTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChjb250ZW50TGF5b3V0KSA9PiB7XG4gICAgICAgIHRoaXMuY29udGVudExheW91dCA9IHsgLi4uY29udGVudExheW91dCB9O1xuXG4gICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxufVxuIiwiPGZvcm0gZnNGb3JtIFtzdWJtaXRdPVwic2F2ZVwiICpmc1NrZWxldG9uRm9ybT1cImNvbnRlbnRMYXlvdXRcIj5cbiAgPGZzLWRpYWxvZz5cbiAgICA8aDEgbWF0LWRpYWxvZy10aXRsZT57e2NvbnRlbnRMYXlvdXQuaWQgPyAnTGF5b3V0JyA6ICdMYXlvdXQgUGFnZSd9fTwvaDE+XG4gICAgPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCI+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRMYXlvdXQubmFtZVwiXG4gICAgICAgICAgICBuYW1lPVwibmFtZVwiXG4gICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJOYW1lXCI+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRMYXlvdXQudGFnXCJcbiAgICAgICAgICAgIG5hbWU9XCJ0YWdcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJUYWdcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnM+XG4gICAgICA8ZnMtZm9ybS1kaWFsb2ctYWN0aW9ucz5cbiAgICAgIDwvZnMtZm9ybS1kaWFsb2ctYWN0aW9ucz5cbiAgICA8L2Rpdj5cbiAgPC9mcy1kaWFsb2c+XG48L2Zvcm0+XG4iXX0=
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2NvbnRlbnQtbGF5b3V0cy9jb21wb25lbnRzL2NvbnRlbnQtbGF5b3V0L2NvbnRlbnQtbGF5b3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9jb250ZW50LWxheW91dHMvY29tcG9uZW50cy9jb250ZW50LWxheW91dC9jb250ZW50LWxheW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFHTix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7QUFTMUQsTUFBTSxPQUFPLHNCQUFzQjtJQVVqQyxZQUNxQyxPQUF3QixFQUMxQixLQUFVLEVBQ25DLFVBQWdELEVBQ2hELFFBQW1CLEVBQ25CLE1BQXlCO1FBSkUsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBSztRQUNuQyxlQUFVLEdBQVYsVUFBVSxDQUFzQztRQUNoRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBVjVCLGtCQUFhLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLFlBQU8sR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDO1FBRXpDLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBbUJqQyxTQUFJLEdBQUcsR0FBRyxFQUFFO1lBQ2pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO2lCQUN0RCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUN2QyxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ04sQ0FBQyxDQUFDO0lBbkJDLENBQUM7SUFFRyxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBWU8sVUFBVTtRQUNoQixFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUM7YUFDekIsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQzFCLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGFBQWEscUJBQVEsYUFBYSxDQUFFLENBQUM7WUFFMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O29IQWxEVSxzQkFBc0Isa0JBV3ZCLGlCQUFpQixhQUNqQixlQUFlO3dHQVpkLHNCQUFzQixvRkFFbkIscUJBQXFCLGdEQzlCckMsMnlCQTZCQTs0RkREYSxzQkFBc0I7a0JBTGxDLFNBQVM7bUJBQUM7b0JBQ1QsV0FBVyxFQUFFLGlDQUFpQztvQkFDOUMsU0FBUyxFQUFFLENBQUMsaUNBQWlDLENBQUM7b0JBQzlDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDs7MEJBWUksTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLGVBQWU7K0hBVGxCLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIFZpZXdDaGlsZHJlbixcbiAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBGc01lc3NhZ2UgfSBmcm9tICdAZmlyZXN0aXRjaC9tZXNzYWdlJztcbmltcG9ydCB7IEZzVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJ0BmaXJlc3RpdGNoL3RleHQtZWRpdG9yJztcblxuaW1wb3J0IHsgU3ViamVjdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZTX0NPTlRFTlRfQ09ORklHIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW5qZWN0b3JzJztcbmltcG9ydCB7IEZzQ29udGVudENvbmZpZyB9IGZyb20gJy4uLy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuXG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vY29udGVudC1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb250ZW50LWxheW91dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudExheW91dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBAVmlld0NoaWxkcmVuKEZzVGV4dEVkaXRvckNvbXBvbmVudClcbiAgcHVibGljIHRleHRFZGl0b3JzOiBRdWVyeUxpc3Q8RnNUZXh0RWRpdG9yQ29tcG9uZW50PjtcblxuICBwdWJsaWMgY29udGVudExheW91dCA9IG51bGw7XG4gIHB1YmxpYyBlZGl0b3JzID0geyBjb250ZW50OiB0cnVlLCBzdHlsZXM6IHRydWUgfTtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoICAgIFxuICAgIEBJbmplY3QoRlNfQ09OVEVOVF9DT05GSUcpIHByaXZhdGUgX2NvbmZpZzogRnNDb250ZW50Q29uZmlnLFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwcml2YXRlIF9kYXRhOiBhbnksXG4gICAgcHJpdmF0ZSBfZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29udGVudExheW91dENvbXBvbmVudD4sXG4gICAgcHJpdmF0ZSBfbWVzc2FnZTogRnNNZXNzYWdlLFxuICAgIHByaXZhdGUgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9mZXRjaERhdGEoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlID0gKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWcuc2F2ZUNvbnRlbnRMYXlvdXQodGhpcy5jb250ZW50TGF5b3V0KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoY29udGVudExheW91dCkgPT4ge1xuICAgICAgICAgIHRoaXMuX21lc3NhZ2Uuc3VjY2VzcygnU2F2ZWQgQ2hhbmdlcycpO1xuICAgICAgICAgIHRoaXMuX2RpYWxvZ1JlZi5jbG9zZShjb250ZW50TGF5b3V0KTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9O1xuXG4gIHByaXZhdGUgX2ZldGNoRGF0YSgpOiB2b2lkIHtcbiAgICBvZih0aGlzLl9kYXRhLmNvbnRlbnRMYXlvdXQpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChjb250ZW50TGF5b3V0KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIG9mKGNvbnRlbnRMYXlvdXQpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGNvbnRlbnRMYXlvdXQpID0+IHtcbiAgICAgICAgdGhpcy5jb250ZW50TGF5b3V0ID0geyAuLi5jb250ZW50TGF5b3V0IH07XG5cbiAgICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG59XG4iLCI8Zm9ybSBmc0Zvcm0gW3N1Ym1pdF09XCJzYXZlXCIgKmZzU2tlbGV0b25Gb3JtPVwiY29udGVudExheW91dFwiPlxuICA8ZnMtZGlhbG9nPlxuICAgIDxoMSBtYXQtZGlhbG9nLXRpdGxlPnt7Y29udGVudExheW91dC5pZCA/ICdMYXlvdXQnIDogJ0xheW91dCBQYWdlJ319PC9oMT5cbiAgICA8ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cbiAgICAgIDxkaXYgY2xhc3M9XCJmcy1jb2x1bW5cIj5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudExheW91dC5uYW1lXCJcbiAgICAgICAgICAgIG5hbWU9XCJuYW1lXCJcbiAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIk5hbWVcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudExheW91dC50YWdcIlxuICAgICAgICAgICAgbmFtZT1cInRhZ1wiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlRhZ1wiPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucz5cbiAgICAgIDxmcy1mb3JtLWRpYWxvZy1hY3Rpb25zPlxuICAgICAgPC9mcy1mb3JtLWRpYWxvZy1hY3Rpb25zPlxuICAgIDwvZGl2PlxuICA8L2ZzLWRpYWxvZz5cbjwvZm9ybT5cbiJdfQ==
@@ -1,26 +1,25 @@
1
- import { NgModule } from '@angular/core';
2
1
  import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
3
4
  import { MatButtonModule } from '@angular/material/button';
4
- import { MatTabsModule } from '@angular/material/tabs';
5
5
  import { MatDialogModule } from '@angular/material/dialog';
6
- import { FormsModule } from '@angular/forms';
7
- import { MatInputModule } from '@angular/material/input';
8
6
  import { MatFormFieldModule } from '@angular/material/form-field';
9
- import { FsListModule } from '@firestitch/list';
7
+ import { MatInputModule } from '@angular/material/input';
8
+ import { MatTabsModule } from '@angular/material/tabs';
10
9
  import { FsDateModule } from '@firestitch/date';
11
10
  import { FsDialogModule } from '@firestitch/dialog';
12
11
  import { FsFormModule } from '@firestitch/form';
13
12
  import { FsHtmlEditorModule } from '@firestitch/html-editor';
13
+ import { FsListModule } from '@firestitch/list';
14
14
  import { FsTextEditorModule } from '@firestitch/text-editor';
15
- import { FsContentLayoutsComponent } from './components/content-layouts';
15
+ import { MatButtonToggleModule } from '@angular/material/button-toggle';
16
16
  import { MatIconModule } from '@angular/material/icon';
17
17
  import { MatSelectModule } from '@angular/material/select';
18
- import { MatButtonToggleModule } from '@angular/material/button-toggle';
19
18
  import { FsLabelModule } from '@firestitch/label';
20
19
  import { FsSkeletonModule } from '@firestitch/skeleton';
21
20
  import { FsContentEditorModule } from '../editor';
22
21
  import { ContentLayoutComponent } from './components/content-layout';
23
- import { FlexLayoutModule } from '@angular/flex-layout';
22
+ import { FsContentLayoutsComponent } from './components/content-layouts';
24
23
  import * as i0 from "@angular/core";
25
24
  export class FsContentLayoutsModule {
26
25
  }
@@ -28,7 +27,6 @@ FsContentLayoutsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", v
28
27
  FsContentLayoutsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsContentLayoutsModule, declarations: [ContentLayoutComponent,
29
28
  FsContentLayoutsComponent], imports: [CommonModule,
30
29
  FormsModule,
31
- FlexLayoutModule,
32
30
  MatDialogModule,
33
31
  MatInputModule,
34
32
  MatFormFieldModule,
@@ -49,7 +47,6 @@ FsContentLayoutsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0",
49
47
  FsContentLayoutsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsContentLayoutsModule, imports: [[
50
48
  CommonModule,
51
49
  FormsModule,
52
- FlexLayoutModule,
53
50
  MatDialogModule,
54
51
  MatInputModule,
55
52
  MatFormFieldModule,
@@ -74,7 +71,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
74
71
  imports: [
75
72
  CommonModule,
76
73
  FormsModule,
77
- FlexLayoutModule,
78
74
  MatDialogModule,
79
75
  MatInputModule,
80
76
  MatFormFieldModule,
@@ -102,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
102
98
  ],
103
99
  }]
104
100
  }] });
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtY29udGVudC1sYXlvdXRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9jb250ZW50LWxheW91dHMvZnMtY29udGVudC1sYXlvdXRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDekUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQXFDeEQsTUFBTSxPQUFPLHNCQUFzQjs7b0hBQXRCLHNCQUFzQjtxSEFBdEIsc0JBQXNCLGlCQUovQixzQkFBc0I7UUFDdEIseUJBQXlCLGFBOUJ6QixZQUFZO1FBQ1osV0FBVztRQUVYLGdCQUFnQjtRQUVoQixlQUFlO1FBQ2YsY0FBYztRQUNkLGtCQUFrQjtRQUNsQixlQUFlO1FBQ2YsYUFBYTtRQUNiLGFBQWE7UUFDYixlQUFlO1FBQ2YscUJBQXFCO1FBRXJCLFlBQVk7UUFDWixZQUFZO1FBQ1osWUFBWTtRQUNaLGFBQWE7UUFDYixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGNBQWM7UUFDZCxrQkFBa0I7UUFFbEIscUJBQXFCLGFBR3JCLHlCQUF5QjtxSEFPaEIsc0JBQXNCLFlBbEN4QjtZQUNQLFlBQVk7WUFDWixXQUFXO1lBRVgsZ0JBQWdCO1lBRWhCLGVBQWU7WUFDZixjQUFjO1lBQ2Qsa0JBQWtCO1lBQ2xCLGVBQWU7WUFDZixhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixxQkFBcUI7WUFFckIsWUFBWTtZQUNaLFlBQVk7WUFDWixZQUFZO1lBQ1osYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLGtCQUFrQjtZQUVsQixxQkFBcUI7U0FDdEI7NEZBU1Usc0JBQXNCO2tCQW5DbEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUVYLGdCQUFnQjt3QkFFaEIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixxQkFBcUI7d0JBRXJCLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUVsQixxQkFBcUI7cUJBQ3RCO29CQUNELE9BQU8sRUFBRTt3QkFDUCx5QkFBeUI7cUJBQzFCO29CQUNELFlBQVksRUFBRTt3QkFDWixzQkFBc0I7d0JBQ3RCLHlCQUF5QjtxQkFDMUI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5cbmltcG9ydCB7IEZzTGlzdE1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2xpc3QnO1xuaW1wb3J0IHsgRnNEYXRlTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZGF0ZSc7XG5pbXBvcnQgeyBGc0RpYWxvZ01vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2RpYWxvZyc7XG5pbXBvcnQgeyBGc0Zvcm1Nb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9mb3JtJztcbmltcG9ydCB7IEZzSHRtbEVkaXRvck1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2h0bWwtZWRpdG9yJztcbmltcG9ydCB7IEZzVGV4dEVkaXRvck1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL3RleHQtZWRpdG9yJztcblxuaW1wb3J0IHsgRnNDb250ZW50TGF5b3V0c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb250ZW50LWxheW91dHMnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xuaW1wb3J0IHsgRnNMYWJlbE1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2xhYmVsJztcbmltcG9ydCB7IEZzU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9za2VsZXRvbic7XG5pbXBvcnQgeyBGc0NvbnRlbnRFZGl0b3JNb2R1bGUgfSBmcm9tICcuLi9lZGl0b3InO1xuaW1wb3J0IHsgQ29udGVudExheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb250ZW50LWxheW91dCc7XG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuXG4gICAgRmxleExheW91dE1vZHVsZSxcblxuICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdFRhYnNNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRTZWxlY3RNb2R1bGUsXG4gICAgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlLFxuXG4gICAgRnNMaXN0TW9kdWxlLFxuICAgIEZzRGF0ZU1vZHVsZSxcbiAgICBGc0Zvcm1Nb2R1bGUsXG4gICAgRnNMYWJlbE1vZHVsZSxcbiAgICBGc1NrZWxldG9uTW9kdWxlLFxuICAgIEZzSHRtbEVkaXRvck1vZHVsZSxcbiAgICBGc0RpYWxvZ01vZHVsZSxcbiAgICBGc1RleHRFZGl0b3JNb2R1bGUsXG5cbiAgICBGc0NvbnRlbnRFZGl0b3JNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBGc0NvbnRlbnRMYXlvdXRzQ29tcG9uZW50LFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBDb250ZW50TGF5b3V0Q29tcG9uZW50LFxuICAgIEZzQ29udGVudExheW91dHNDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzQ29udGVudExheW91dHNNb2R1bGUge1xufVxuIl19
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtY29udGVudC1sYXlvdXRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9jb250ZW50LWxheW91dHMvZnMtY29udGVudC1sYXlvdXRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBbUN6RSxNQUFNLE9BQU8sc0JBQXNCOztvSEFBdEIsc0JBQXNCO3FIQUF0QixzQkFBc0IsaUJBSi9CLHNCQUFzQjtRQUN0Qix5QkFBeUIsYUE1QnpCLFlBQVk7UUFDWixXQUFXO1FBRVgsZUFBZTtRQUNmLGNBQWM7UUFDZCxrQkFBa0I7UUFDbEIsZUFBZTtRQUNmLGFBQWE7UUFDYixhQUFhO1FBQ2IsZUFBZTtRQUNmLHFCQUFxQjtRQUVyQixZQUFZO1FBQ1osWUFBWTtRQUNaLFlBQVk7UUFDWixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2Qsa0JBQWtCO1FBRWxCLHFCQUFxQixhQUdyQix5QkFBeUI7cUhBT2hCLHNCQUFzQixZQWhDeEI7WUFDUCxZQUFZO1lBQ1osV0FBVztZQUVYLGVBQWU7WUFDZixjQUFjO1lBQ2Qsa0JBQWtCO1lBQ2xCLGVBQWU7WUFDZixhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixxQkFBcUI7WUFFckIsWUFBWTtZQUNaLFlBQVk7WUFDWixZQUFZO1lBQ1osYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLGtCQUFrQjtZQUVsQixxQkFBcUI7U0FDdEI7NEZBU1Usc0JBQXNCO2tCQWpDbEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUVYLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YscUJBQXFCO3dCQUVyQixZQUFZO3dCQUNaLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGtCQUFrQjt3QkFFbEIscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AseUJBQXlCO3FCQUMxQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osc0JBQXNCO3dCQUN0Qix5QkFBeUI7cUJBQzFCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0VGFic01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnO1xuXG5pbXBvcnQgeyBGc0RhdGVNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9kYXRlJztcbmltcG9ydCB7IEZzRGlhbG9nTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZGlhbG9nJztcbmltcG9ydCB7IEZzRm9ybU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2Zvcm0nO1xuaW1wb3J0IHsgRnNIdG1sRWRpdG9yTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvaHRtbC1lZGl0b3InO1xuaW1wb3J0IHsgRnNMaXN0TW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvbGlzdCc7XG5pbXBvcnQgeyBGc1RleHRFZGl0b3JNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC90ZXh0LWVkaXRvcic7XG5cbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IEZzTGFiZWxNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9sYWJlbCc7XG5pbXBvcnQgeyBGc1NrZWxldG9uTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvc2tlbGV0b24nO1xuaW1wb3J0IHsgRnNDb250ZW50RWRpdG9yTW9kdWxlIH0gZnJvbSAnLi4vZWRpdG9yJztcbmltcG9ydCB7IENvbnRlbnRMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29udGVudC1sYXlvdXQnO1xuaW1wb3J0IHsgRnNDb250ZW50TGF5b3V0c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb250ZW50LWxheW91dHMnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0VGFic01vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsXG5cbiAgICBGc0xpc3RNb2R1bGUsXG4gICAgRnNEYXRlTW9kdWxlLFxuICAgIEZzRm9ybU1vZHVsZSxcbiAgICBGc0xhYmVsTW9kdWxlLFxuICAgIEZzU2tlbGV0b25Nb2R1bGUsXG4gICAgRnNIdG1sRWRpdG9yTW9kdWxlLFxuICAgIEZzRGlhbG9nTW9kdWxlLFxuICAgIEZzVGV4dEVkaXRvck1vZHVsZSxcblxuICAgIEZzQ29udGVudEVkaXRvck1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZzQ29udGVudExheW91dHNDb21wb25lbnQsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENvbnRlbnRMYXlvdXRDb21wb25lbnQsXG4gICAgRnNDb250ZW50TGF5b3V0c0NvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNDb250ZW50TGF5b3V0c01vZHVsZSB7XG59XG4iXX0=
@@ -16,9 +16,8 @@ import * as i6 from "@angular/material/core";
16
16
  import * as i7 from "@firestitch/form";
17
17
  import * as i8 from "@firestitch/skeleton";
18
18
  import * as i9 from "@angular/forms";
19
- import * as i10 from "@angular/flex-layout/flex";
20
- import * as i11 from "@angular/common";
21
- import * as i12 from "@angular/material/input";
19
+ import * as i10 from "@angular/common";
20
+ import * as i11 from "@angular/material/input";
22
21
  export class ContentPageComponent {
23
22
  constructor(_config, _data, _dialogRef, _message, _cdRef) {
24
23
  this._config = _config;
@@ -62,7 +61,7 @@ export class ContentPageComponent {
62
61
  }
63
62
  }
64
63
  ContentPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ContentPageComponent, deps: [{ token: FS_CONTENT_CONFIG }, { token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }, { token: i2.FsMessage }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
65
- ContentPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ContentPageComponent, selector: "ng-component", viewQueries: [{ propertyName: "textEditors", predicate: FsTextEditorComponent, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"save\" *fsSkeletonForm=\"contentPage\">\n <fs-dialog>\n <h1 mat-dialog-title>{{contentPage.id ? 'Page' : 'Create Page'}}</h1>\n <div mat-dialog-content>\n <div fxLayout=\"column\">\n <mat-form-field>\n <mat-select\n [(ngModel)]=\"contentPage.type\"\n name=\"type\"\n required\n placeholder=\"Type\">\n <mat-option\n *ngFor=\"let item of PageTypes\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.name\"\n name=\"name\"\n required\n placeholder=\"Name\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.path\"\n name=\"path\"\n placeholder=\"Path\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.title\"\n name=\"title\"\n placeholder=\"Title\">\n </mat-form-field>\n <mat-form-field *ngIf=\"contentLayouts\">\n <mat-select\n [(ngModel)]=\"contentPage.contentLayoutId\"\n required\n name=\"contentLayoutId\"\n placeholder=\"Layout\">\n <mat-option\n *ngFor=\"let item of contentLayouts\"\n [value]=\"item.id\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n", styles: [""], components: [{ type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i7.FsFormDialogActionsComponent, selector: "fs-form-dialog-actions", inputs: ["save", "create", "close", "closeData", "name"] }], directives: [{ type: i8.FsSkeletonFormDirective, selector: "[fsSkeletonForm]", inputs: ["fsSkeletonForm", "fsSkeletonFormLines"] }, { type: i9.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i9.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i9.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i10.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i9.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i12.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
64
+ ContentPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ContentPageComponent, selector: "ng-component", viewQueries: [{ propertyName: "textEditors", predicate: FsTextEditorComponent, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"save\" *fsSkeletonForm=\"contentPage\">\n <fs-dialog>\n <h1 mat-dialog-title>{{contentPage.id ? 'Page' : 'Create Page'}}</h1>\n <div mat-dialog-content>\n <div class=\"fs-column\">\n <mat-form-field>\n <mat-select\n [(ngModel)]=\"contentPage.type\"\n name=\"type\"\n required\n placeholder=\"Type\">\n <mat-option\n *ngFor=\"let item of PageTypes\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.name\"\n name=\"name\"\n required\n placeholder=\"Name\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.path\"\n name=\"path\"\n placeholder=\"Path\">\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n [(ngModel)]=\"contentPage.title\"\n name=\"title\"\n placeholder=\"Title\">\n </mat-form-field>\n <mat-form-field *ngIf=\"contentLayouts\">\n <mat-select\n [(ngModel)]=\"contentPage.contentLayoutId\"\n required\n name=\"contentLayoutId\"\n placeholder=\"Layout\">\n <mat-option\n *ngFor=\"let item of contentLayouts\"\n [value]=\"item.id\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n </div>\n\n <div mat-dialog-actions>\n <fs-form-dialog-actions>\n </fs-form-dialog-actions>\n </div>\n </fs-dialog>\n</form>\n", styles: [""], components: [{ type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileActionPlacement", "mobileWidth", "mode"] }, { type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i7.FsFormDialogActionsComponent, selector: "fs-form-dialog-actions", inputs: ["save", "create", "close", "done", "closeData", "name"] }], directives: [{ type: i8.FsSkeletonFormDirective, selector: "[fsSkeletonForm]", inputs: ["fsSkeletonForm", "fsSkeletonFormLines"] }, { type: i9.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i9.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i9.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i9.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i11.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
66
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ContentPageComponent, decorators: [{
67
66
  type: Component,
68
67
  args: [{
@@ -80,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
80
79
  type: ViewChildren,
81
80
  args: [FsTextEditorComponent]
82
81
  }] } });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9jb250ZW50LXBhZ2VzL2NvbXBvbmVudHMvY29udGVudC1wYWdlL2NvbnRlbnQtcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvY29udGVudC1wYWdlcy9jb21wb25lbnRzL2NvbnRlbnQtcGFnZS9jb250ZW50LXBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBR04sdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFRMUQsTUFBTSxPQUFPLG9CQUFvQjtJQVkvQixZQUNxQyxPQUF3QixFQUMxQixLQUFVLEVBQ25DLFVBQThDLEVBQzlDLFFBQW1CLEVBQ25CLE1BQXlCO1FBSkUsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBSztRQUNuQyxlQUFVLEdBQVYsVUFBVSxDQUFvQztRQUM5QyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBWjVCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ25CLGNBQVMsR0FBRyxTQUFTLENBQUM7UUFFdEIsWUFBTyxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFFekMsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFtQmpDLFNBQUksR0FBRyxHQUFHLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO2lCQUNsRCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNyQyxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ04sQ0FBQyxDQUFDO0lBbkJDLENBQUM7SUFFRyxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBWU8sVUFBVTtRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFO2FBQzlCLFNBQVMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFO1lBQzVCLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7UUFFTCxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7YUFDdkIsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3hCLE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDekIsSUFBSSxDQUFDLFdBQVcscUJBQ1gsV0FBVyxDQUNmLENBQUM7WUFFRixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7a0hBNURVLG9CQUFvQixrQkFhckIsaUJBQWlCLGFBQ2pCLGVBQWU7c0dBZGQsb0JBQW9CLG9GQUVqQixxQkFBcUIsZ0RDL0JyQyw2MURBOERBOzRGRGpDYSxvQkFBb0I7a0JBTGhDLFNBQVM7bUJBQUM7b0JBQ1QsV0FBVyxFQUFFLCtCQUErQjtvQkFDNUMsU0FBUyxFQUFFLENBQUMsK0JBQStCLENBQUM7b0JBQzVDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDs7MEJBY0ksTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLGVBQWU7K0hBWGxCLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIFZpZXdDaGlsZHJlbixcbiAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBGc01lc3NhZ2UgfSBmcm9tICdAZmlyZXN0aXRjaC9tZXNzYWdlJztcbmltcG9ydCB7IEZzVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJ0BmaXJlc3RpdGNoL3RleHQtZWRpdG9yJztcblxuaW1wb3J0IHsgU3ViamVjdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFBhZ2VUeXBlcyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbnN0cyc7XG5pbXBvcnQgeyBGc0NvbnRlbnRDb25maWcgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEZTX0NPTlRFTlRfQ09ORklHIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW5qZWN0b3JzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnRlbnQtcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnRlbnQtcGFnZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQFZpZXdDaGlsZHJlbihGc1RleHRFZGl0b3JDb21wb25lbnQpXG4gIHB1YmxpYyB0ZXh0RWRpdG9yczogUXVlcnlMaXN0PEZzVGV4dEVkaXRvckNvbXBvbmVudD47XG5cbiAgcHVibGljIGNvbnRlbnRQYWdlID0gbnVsbDtcbiAgcHVibGljIFBhZ2VUeXBlcyA9IFBhZ2VUeXBlcztcbiAgcHVibGljIGNvbnRlbnRMYXlvdXRzO1xuICBwdWJsaWMgZWRpdG9ycyA9IHsgY29udGVudDogdHJ1ZSwgc3R5bGVzOiB0cnVlIH07XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRlNfQ09OVEVOVF9DT05GSUcpIHByaXZhdGUgX2NvbmZpZzogRnNDb250ZW50Q29uZmlnLFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwcml2YXRlIF9kYXRhOiBhbnksXG4gICAgcHJpdmF0ZSBfZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29udGVudFBhZ2VDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgX21lc3NhZ2U6IEZzTWVzc2FnZSxcbiAgICBwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZmV0Y2hEYXRhKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2F2ZSA9ICgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnLnNhdmVDb250ZW50UGFnZSh0aGlzLmNvbnRlbnRQYWdlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoY29udGVudFBhZ2UpID0+IHtcbiAgICAgICAgICB0aGlzLl9tZXNzYWdlLnN1Y2Nlc3MoJ1NhdmVkIENoYW5nZXMnKTtcbiAgICAgICAgICB0aGlzLl9kaWFsb2dSZWYuY2xvc2UoY29udGVudFBhZ2UpO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH07XG5cbiAgcHJpdmF0ZSBfZmV0Y2hEYXRhKCk6IHZvaWQge1xuICAgIHRoaXMuX2NvbmZpZy5sb2FkQ29udGVudExheW91dHMoKVxuICAgICAgLnN1YnNjcmliZSgoY29udGVudExheW91dHMpID0+IHtcbiAgICAgICAgdGhpcy5jb250ZW50TGF5b3V0cyA9IGNvbnRlbnRMYXlvdXRzO1xuICAgICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuXG4gICAgb2YodGhpcy5fZGF0YS5jb250ZW50UGFnZSlcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKGNvbnRlbnRQYWdlKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIG9mKGNvbnRlbnRQYWdlKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChjb250ZW50UGFnZSkgPT4ge1xuICAgICAgICB0aGlzLmNvbnRlbnRQYWdlID0ge1xuICAgICAgICAgIC4uLmNvbnRlbnRQYWdlLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxufVxuIiwiPGZvcm0gZnNGb3JtIFtzdWJtaXRdPVwic2F2ZVwiICpmc1NrZWxldG9uRm9ybT1cImNvbnRlbnRQYWdlXCI+XG4gIDxmcy1kaWFsb2c+XG4gICAgPGgxIG1hdC1kaWFsb2ctdGl0bGU+e3tjb250ZW50UGFnZS5pZCA/ICdQYWdlJyA6ICdDcmVhdGUgUGFnZSd9fTwvaDE+XG4gICAgPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCI+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb250ZW50UGFnZS50eXBlXCJcbiAgICAgICAgICAgIG5hbWU9XCJ0eXBlXCJcbiAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlR5cGVcIj5cbiAgICAgICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBQYWdlVHlwZXNcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICB7eyBpdGVtLm5hbWUgfX1cbiAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudFBhZ2UubmFtZVwiXG4gICAgICAgICAgICBuYW1lPVwibmFtZVwiXG4gICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJOYW1lXCI+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRQYWdlLnBhdGhcIlxuICAgICAgICAgICAgbmFtZT1cInBhdGhcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJQYXRoXCI+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRQYWdlLnRpdGxlXCJcbiAgICAgICAgICAgIG5hbWU9XCJ0aXRsZVwiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlRpdGxlXCI+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cImNvbnRlbnRMYXlvdXRzXCI+XG4gICAgICAgICAgPG1hdC1zZWxlY3RcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudFBhZ2UuY29udGVudExheW91dElkXCJcbiAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICBuYW1lPVwiY29udGVudExheW91dElkXCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiTGF5b3V0XCI+XG4gICAgICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudExheW91dHNcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtLmlkXCI+XG4gICAgICAgICAgICAgICAgICB7eyBpdGVtLm5hbWUgfX1cbiAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnM+XG4gICAgICA8ZnMtZm9ybS1kaWFsb2ctYWN0aW9ucz5cbiAgICAgIDwvZnMtZm9ybS1kaWFsb2ctYWN0aW9ucz5cbiAgICA8L2Rpdj5cbiAgPC9mcy1kaWFsb2c+XG48L2Zvcm0+XG4iXX0=
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9jb250ZW50LXBhZ2VzL2NvbXBvbmVudHMvY29udGVudC1wYWdlL2NvbnRlbnQtcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvY29udGVudC1wYWdlcy9jb21wb25lbnRzL2NvbnRlbnQtcGFnZS9jb250ZW50LXBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBR04sdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVExRCxNQUFNLE9BQU8sb0JBQW9CO0lBWS9CLFlBQ3FDLE9BQXdCLEVBQzFCLEtBQVUsRUFDbkMsVUFBOEMsRUFDOUMsUUFBbUIsRUFDbkIsTUFBeUI7UUFKRSxZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUMxQixVQUFLLEdBQUwsS0FBSyxDQUFLO1FBQ25DLGVBQVUsR0FBVixVQUFVLENBQW9DO1FBQzlDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7UUFaNUIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsY0FBUyxHQUFHLFNBQVMsQ0FBQztRQUV0QixZQUFPLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUV6QyxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQW1CakMsU0FBSSxHQUFHLEdBQUcsRUFBRTtZQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7aUJBQ2xELElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxDQUNILENBQUM7UUFDTixDQUFDLENBQUM7SUFuQkMsQ0FBQztJQUVHLFFBQVE7UUFDYixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFZTyxVQUFVO1FBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUU7YUFDOUIsU0FBUyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUU7WUFDNUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7WUFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUVMLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQzthQUN2QixJQUFJLENBQ0gsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDeEIsT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUN6QixJQUFJLENBQUMsV0FBVyxxQkFDWCxXQUFXLENBQ2YsQ0FBQztZQUVGLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztrSEE1RFUsb0JBQW9CLGtCQWFyQixpQkFBaUIsYUFDakIsZUFBZTtzR0FkZCxvQkFBb0Isb0ZBRWpCLHFCQUFxQixnREMvQnJDLDYxREE4REE7NEZEakNhLG9CQUFvQjtrQkFMaEMsU0FBUzttQkFBQztvQkFDVCxXQUFXLEVBQUUsK0JBQStCO29CQUM1QyxTQUFTLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztvQkFDNUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOzswQkFjSSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsZUFBZTsrSEFYbEIsV0FBVztzQkFEakIsWUFBWTt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgT25Jbml0LFxuICBPbkRlc3Ryb3ksXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgVmlld0NoaWxkcmVuLFxuICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmltcG9ydCB7IEZzTWVzc2FnZSB9IGZyb20gJ0BmaXJlc3RpdGNoL21lc3NhZ2UnO1xuaW1wb3J0IHsgRnNUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnQGZpcmVzdGl0Y2gvdGV4dC1lZGl0b3InO1xuXG5pbXBvcnQgeyBTdWJqZWN0LCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCB0YXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgUGFnZVR5cGVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29uc3RzJztcbmltcG9ydCB7IEZzQ29udGVudENvbmZpZyB9IGZyb20gJy4uLy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgRlNfQ09OVEVOVF9DT05GSUcgfSBmcm9tICcuLi8uLi8uLi8uLi9pbmplY3RvcnMnO1xuXG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vY29udGVudC1wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGVudC1wYWdlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDb250ZW50UGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBAVmlld0NoaWxkcmVuKEZzVGV4dEVkaXRvckNvbXBvbmVudClcbiAgcHVibGljIHRleHRFZGl0b3JzOiBRdWVyeUxpc3Q8RnNUZXh0RWRpdG9yQ29tcG9uZW50PjtcblxuICBwdWJsaWMgY29udGVudFBhZ2UgPSBudWxsO1xuICBwdWJsaWMgUGFnZVR5cGVzID0gUGFnZVR5cGVzO1xuICBwdWJsaWMgY29udGVudExheW91dHM7XG4gIHB1YmxpYyBlZGl0b3JzID0geyBjb250ZW50OiB0cnVlLCBzdHlsZXM6IHRydWUgfTtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChGU19DT05URU5UX0NPTkZJRykgcHJpdmF0ZSBfY29uZmlnOiBGc0NvbnRlbnRDb25maWcsXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHByaXZhdGUgX2RhdGE6IGFueSxcbiAgICBwcml2YXRlIF9kaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDb250ZW50UGFnZUNvbXBvbmVudD4sXG4gICAgcHJpdmF0ZSBfbWVzc2FnZTogRnNNZXNzYWdlLFxuICAgIHByaXZhdGUgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9mZXRjaERhdGEoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlID0gKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWcuc2F2ZUNvbnRlbnRQYWdlKHRoaXMuY29udGVudFBhZ2UpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKChjb250ZW50UGFnZSkgPT4ge1xuICAgICAgICAgIHRoaXMuX21lc3NhZ2Uuc3VjY2VzcygnU2F2ZWQgQ2hhbmdlcycpO1xuICAgICAgICAgIHRoaXMuX2RpYWxvZ1JlZi5jbG9zZShjb250ZW50UGFnZSk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfTtcblxuICBwcml2YXRlIF9mZXRjaERhdGEoKTogdm9pZCB7XG4gICAgdGhpcy5fY29uZmlnLmxvYWRDb250ZW50TGF5b3V0cygpXG4gICAgICAuc3Vic2NyaWJlKChjb250ZW50TGF5b3V0cykgPT4ge1xuICAgICAgICB0aGlzLmNvbnRlbnRMYXlvdXRzID0gY29udGVudExheW91dHM7XG4gICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG5cbiAgICBvZih0aGlzLl9kYXRhLmNvbnRlbnRQYWdlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoY29udGVudFBhZ2UpID0+IHtcbiAgICAgICAgICByZXR1cm4gb2YoY29udGVudFBhZ2UpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGNvbnRlbnRQYWdlKSA9PiB7XG4gICAgICAgIHRoaXMuY29udGVudFBhZ2UgPSB7XG4gICAgICAgICAgLi4uY29udGVudFBhZ2UsXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG59XG4iLCI8Zm9ybSBmc0Zvcm0gW3N1Ym1pdF09XCJzYXZlXCIgKmZzU2tlbGV0b25Gb3JtPVwiY29udGVudFBhZ2VcIj5cbiAgPGZzLWRpYWxvZz5cbiAgICA8aDEgbWF0LWRpYWxvZy10aXRsZT57e2NvbnRlbnRQYWdlLmlkID8gJ1BhZ2UnIDogJ0NyZWF0ZSBQYWdlJ319PC9oMT5cbiAgICA8ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cbiAgICAgIDxkaXYgY2xhc3M9XCJmcy1jb2x1bW5cIj5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxtYXQtc2VsZWN0XG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRQYWdlLnR5cGVcIlxuICAgICAgICAgICAgbmFtZT1cInR5cGVcIlxuICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiVHlwZVwiPlxuICAgICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIFBhZ2VUeXBlc1wiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb250ZW50UGFnZS5uYW1lXCJcbiAgICAgICAgICAgIG5hbWU9XCJuYW1lXCJcbiAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIk5hbWVcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudFBhZ2UucGF0aFwiXG4gICAgICAgICAgICBuYW1lPVwicGF0aFwiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlBhdGhcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudFBhZ2UudGl0bGVcIlxuICAgICAgICAgICAgbmFtZT1cInRpdGxlXCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiVGl0bGVcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwiY29udGVudExheW91dHNcIj5cbiAgICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb250ZW50UGFnZS5jb250ZW50TGF5b3V0SWRcIlxuICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgIG5hbWU9XCJjb250ZW50TGF5b3V0SWRcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJMYXlvdXRcIj5cbiAgICAgICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250ZW50TGF5b3V0c1wiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0uaWRcIj5cbiAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucz5cbiAgICAgIDxmcy1mb3JtLWRpYWxvZy1hY3Rpb25zPlxuICAgICAgPC9mcy1mb3JtLWRpYWxvZy1hY3Rpb25zPlxuICAgIDwvZGl2PlxuICA8L2ZzLWRpYWxvZz5cbjwvZm9ybT5cbiJdfQ==