@firestitch/content-widget 12.2.2 → 13.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/content-widget/components/content-widget/content-widget.component.d.ts +16 -16
- package/app/content-widget/components/content-widget/index.d.ts +1 -1
- package/app/content-widget/components/content-widget-dialog/content-widget-dialog.component.d.ts +9 -9
- package/app/content-widget/components/content-widget-dialog/index.d.ts +1 -1
- package/app/content-widget/components/content-widget-renderer/content-widget-renderer.component.d.ts +16 -16
- package/app/content-widget/components/content-widget-renderer/index.d.ts +1 -1
- package/app/content-widget/components/index.d.ts +1 -1
- package/app/content-widget/directives/content-widget-content.directive.d.ts +5 -5
- package/app/content-widget/directives/index.d.ts +1 -1
- package/app/content-widget/fs-content-widget.module.d.ts +17 -17
- package/app/content-widget/injectors/content-wiget.injector.d.ts +2 -2
- package/app/content-widget/injectors/index.d.ts +1 -1
- package/app/content-widget/interfaces/content-widget-config.d.ts +4 -4
- package/app/content-widget/services/content-widget.service.d.ts +9 -9
- package/app/content-widget/services/index.d.ts +1 -1
- package/app/content-widgets/components/content-widget/content-widget.component.d.ts +17 -17
- package/app/content-widgets/components/content-widget/index.d.ts +1 -1
- package/app/content-widgets/components/content-widgets/content-widgets.component.d.ts +24 -24
- package/app/content-widgets/components/content-widgets/index.d.ts +1 -1
- package/app/content-widgets/fs-content-widgets.module.d.ts +23 -23
- package/esm2020/app/content-widget/components/content-widget/content-widget.component.mjs +42 -0
- package/{esm2015/app/content-widget/components/content-widget/index.js → esm2020/app/content-widget/components/content-widget/index.mjs} +1 -1
- package/esm2020/app/content-widget/components/content-widget-dialog/content-widget-dialog.component.mjs +25 -0
- package/{esm2015/app/content-widget/components/content-widget-dialog/index.js → esm2020/app/content-widget/components/content-widget-dialog/index.mjs} +1 -1
- package/{esm2015/app/content-widget/components/content-widget-renderer/content-widget-renderer.component.js → esm2020/app/content-widget/components/content-widget-renderer/content-widget-renderer.component.mjs} +48 -52
- package/{esm2015/app/content-widget/components/content-widget-renderer/index.js → esm2020/app/content-widget/components/content-widget-renderer/index.mjs} +1 -1
- package/{esm2015/app/content-widget/components/index.js → esm2020/app/content-widget/components/index.mjs} +1 -1
- package/{esm2015/app/content-widget/directives/content-widget-content.directive.js → esm2020/app/content-widget/directives/content-widget-content.directive.mjs} +13 -13
- package/{esm2015/app/content-widget/directives/index.js → esm2020/app/content-widget/directives/index.mjs} +1 -1
- package/{esm2015/app/content-widget/fs-content-widget.module.js → esm2020/app/content-widget/fs-content-widget.module.mjs} +61 -61
- package/{esm2015/app/content-widget/injectors/content-wiget.injector.js → esm2020/app/content-widget/injectors/content-wiget.injector.mjs} +2 -2
- package/{esm2015/app/content-widget/injectors/index.js → esm2020/app/content-widget/injectors/index.mjs} +1 -1
- package/{esm2015/app/content-widget/interfaces/content-widget-config.js → esm2020/app/content-widget/interfaces/content-widget-config.mjs} +1 -1
- package/{esm2015/app/content-widget/services/content-widget.service.js → esm2020/app/content-widget/services/content-widget.service.mjs} +27 -27
- package/{esm2015/app/content-widget/services/index.js → esm2020/app/content-widget/services/index.mjs} +1 -1
- package/esm2020/app/content-widgets/components/content-widget/content-widget.component.mjs +46 -0
- package/{esm2015/app/content-widgets/components/content-widget/index.js → esm2020/app/content-widgets/components/content-widget/index.mjs} +1 -1
- package/esm2020/app/content-widgets/components/content-widgets/content-widgets.component.mjs +68 -0
- package/{esm2015/app/content-widgets/components/content-widgets/index.js → esm2020/app/content-widgets/components/content-widgets/index.mjs} +1 -1
- package/{esm2015/app/content-widgets/fs-content-widgets.module.js → esm2020/app/content-widgets/fs-content-widgets.module.mjs} +82 -82
- package/{esm2015/firestitch-content-widget.js → esm2020/firestitch-content-widget.mjs} +4 -4
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +7 -7
- package/fesm2015/firestitch-content-widget.mjs +373 -0
- package/fesm2015/firestitch-content-widget.mjs.map +1 -0
- package/fesm2020/firestitch-content-widget.mjs +369 -0
- package/fesm2020/firestitch-content-widget.mjs.map +1 -0
- package/firestitch-content-widget.d.ts +5 -5
- package/package.json +20 -7
- package/public_api.d.ts +8 -8
- package/bundles/firestitch-content-widget.umd.js +0 -433
- package/bundles/firestitch-content-widget.umd.js.map +0 -1
- package/esm2015/app/content-widget/components/content-widget/content-widget.component.js +0 -46
- package/esm2015/app/content-widget/components/content-widget-dialog/content-widget-dialog.component.js +0 -29
- package/esm2015/app/content-widgets/components/content-widget/content-widget.component.js +0 -47
- package/esm2015/app/content-widgets/components/content-widgets/content-widgets.component.js +0 -72
- package/fesm2015/firestitch-content-widget.js +0 -386
- package/fesm2015/firestitch-content-widget.js.map +0 -1
package/public_api.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { FsContentWidgetsModule } from './app/content-widgets/fs-content-widgets.module';
|
|
2
|
-
export { FsContentWidgetModule } from './app/content-widget/fs-content-widget.module';
|
|
3
|
-
export { FsContentWidgetConfig } from './app/content-widget/interfaces/content-widget-config';
|
|
4
|
-
export { FsContentWidgetsComponent } from './app/content-widgets/components/content-widgets/content-widgets.component';
|
|
5
|
-
export { FsContentWidgetComponent } from './app/content-widget/components/content-widget/content-widget.component';
|
|
6
|
-
export { FsContentWidgetContentDirective } from './app/content-widget/directives';
|
|
7
|
-
export { FS_CONTENT_WIDGET_CONFIG } from './app/content-widget/injectors/content-wiget.injector';
|
|
8
|
-
export { FsContentWidget } from './app/content-widget/services';
|
|
1
|
+
export { FsContentWidgetsModule } from './app/content-widgets/fs-content-widgets.module';
|
|
2
|
+
export { FsContentWidgetModule } from './app/content-widget/fs-content-widget.module';
|
|
3
|
+
export { FsContentWidgetConfig } from './app/content-widget/interfaces/content-widget-config';
|
|
4
|
+
export { FsContentWidgetsComponent } from './app/content-widgets/components/content-widgets/content-widgets.component';
|
|
5
|
+
export { FsContentWidgetComponent } from './app/content-widget/components/content-widget/content-widget.component';
|
|
6
|
+
export { FsContentWidgetContentDirective } from './app/content-widget/directives';
|
|
7
|
+
export { FS_CONTENT_WIDGET_CONFIG } from './app/content-widget/injectors/content-wiget.injector';
|
|
8
|
+
export { FsContentWidget } from './app/content-widget/services';
|
|
@@ -1,433 +0,0 @@
|
|
|
1
|
-
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/material/button'), require('@angular/material/tabs'), require('@angular/material/dialog'), require('@angular/forms'), require('@angular/material/input'), require('@angular/material/form-field'), require('@firestitch/list'), require('@firestitch/date'), require('@firestitch/dialog'), require('@firestitch/form'), require('@firestitch/html-editor'), require('@firestitch/text-editor'), require('rxjs/operators'), require('@firestitch/message'), require('@firestitch/filter'), require('rxjs'), require('@angular/router')) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define('@firestitch/content-widget', ['exports', '@angular/core', '@angular/common', '@angular/material/button', '@angular/material/tabs', '@angular/material/dialog', '@angular/forms', '@angular/material/input', '@angular/material/form-field', '@firestitch/list', '@firestitch/date', '@firestitch/dialog', '@firestitch/form', '@firestitch/html-editor', '@firestitch/text-editor', 'rxjs/operators', '@firestitch/message', '@firestitch/filter', 'rxjs', '@angular/router'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.firestitch = global.firestitch || {}, global.firestitch["content-widget"] = {}), global.ng.core, global.ng.common, global.ng.material.button, global.ng.material.tabs, global.ng.material.dialog, global.ng.forms, global.ng.material.input, global.ng.material.formField, global.i2$1, global.i3$1, global.i2, global.i9, global.i5, global.i4, global.rxjs.operators, global.i1, global.filter, global.rxjs, global.ng.router));
|
|
5
|
-
})(this, (function (exports, i0, i2$2, i7, i3, i10, i8, i11, i6, i2$1, i3$1, i2, i9, i5, i4, operators, i1, filter, rxjs, i1$1) { 'use strict';
|
|
6
|
-
|
|
7
|
-
function _interopNamespace(e) {
|
|
8
|
-
if (e && e.__esModule) return e;
|
|
9
|
-
var n = Object.create(null);
|
|
10
|
-
if (e) {
|
|
11
|
-
Object.keys(e).forEach(function (k) {
|
|
12
|
-
if (k !== 'default') {
|
|
13
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
14
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
get: function () { return e[k]; }
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
n["default"] = e;
|
|
22
|
-
return Object.freeze(n);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
|
|
26
|
-
var i2__namespace$2 = /*#__PURE__*/_interopNamespace(i2$2);
|
|
27
|
-
var i7__namespace = /*#__PURE__*/_interopNamespace(i7);
|
|
28
|
-
var i3__namespace = /*#__PURE__*/_interopNamespace(i3);
|
|
29
|
-
var i10__namespace = /*#__PURE__*/_interopNamespace(i10);
|
|
30
|
-
var i8__namespace = /*#__PURE__*/_interopNamespace(i8);
|
|
31
|
-
var i11__namespace = /*#__PURE__*/_interopNamespace(i11);
|
|
32
|
-
var i6__namespace = /*#__PURE__*/_interopNamespace(i6);
|
|
33
|
-
var i2__namespace$1 = /*#__PURE__*/_interopNamespace(i2$1);
|
|
34
|
-
var i3__namespace$1 = /*#__PURE__*/_interopNamespace(i3$1);
|
|
35
|
-
var i2__namespace = /*#__PURE__*/_interopNamespace(i2);
|
|
36
|
-
var i9__namespace = /*#__PURE__*/_interopNamespace(i9);
|
|
37
|
-
var i5__namespace = /*#__PURE__*/_interopNamespace(i5);
|
|
38
|
-
var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
|
|
39
|
-
var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
|
|
40
|
-
var i1__namespace$1 = /*#__PURE__*/_interopNamespace(i1$1);
|
|
41
|
-
|
|
42
|
-
var FsContentWidgetComponent$1 = /** @class */ (function () {
|
|
43
|
-
function FsContentWidgetComponent(_message, _data) {
|
|
44
|
-
var _this = this;
|
|
45
|
-
this._message = _message;
|
|
46
|
-
this._data = _data;
|
|
47
|
-
this.save = function () {
|
|
48
|
-
return _this._saveContentWidget(_this.contentWidget)
|
|
49
|
-
.pipe(operators.tap(function (contentWidget) {
|
|
50
|
-
_this.contentWidget = Object.assign(Object.assign({}, _this.contentWidget), contentWidget);
|
|
51
|
-
_this._message.success('Saved Changes');
|
|
52
|
-
}));
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
FsContentWidgetComponent.prototype.ngOnInit = function () {
|
|
56
|
-
this._saveContentWidget = this._data.saveContentWidget;
|
|
57
|
-
this.htmlEditorConfig = Object.assign({}, this._data.htmlEditorConfig);
|
|
58
|
-
this.contentWidget = Object.assign({}, this._data.contentWidget);
|
|
59
|
-
};
|
|
60
|
-
return FsContentWidgetComponent;
|
|
61
|
-
}());
|
|
62
|
-
FsContentWidgetComponent$1.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetComponent$1, deps: [{ token: i1__namespace.FsMessage }, { token: i10.MAT_DIALOG_DATA }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
63
|
-
FsContentWidgetComponent$1.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsContentWidgetComponent$1, selector: "ng-component", ngImport: i0__namespace, template: "\n<form fsForm [submit]=\"save\">\n <fs-dialog>\n <div mat-dialog-title>\n Content Widget\n <div class=\"subtitle\">{{contentWidget.name}}</div>\n </div>\n <mat-dialog-content>\n <mat-tab-group>\n <mat-tab label=\"HTML\">\n <ng-template matTabContent>\n <fs-text-editor\n [(ngModel)]=\"contentWidget.content\"\n [config]=\"{ language: 'html', tabSize: 2 }\"\n name=\"html\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Rich Text\">\n <ng-template matTabContent>\n <fs-html-editor\n [(ngModel)]=\"contentWidget.content\"\n [config]=\"htmlEditorConfig\"\n name=\"content\">\n </fs-html-editor>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Styles\">\n <ng-template matTabContent>\n <fs-text-editor\n [(ngModel)]=\"contentWidget.styles\"\n [config]=\"{ language: 'scss', tabSize: 2 }\"\n name=\"styles\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Settings\">\n <mat-form-field>\n <input\n matInput\n placeholder=\"Name\"\n [(ngModel)]=\"contentWidget.name\"\n name=\"name\"\n [required]=\"true\">\n </mat-form-field>\n </mat-tab>\n </mat-tab-group>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\">\n Save\n </button>\n <button\n mat-button\n [mat-dialog-close]=\"null\"\n type=\"button\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: ["mat-form-field{width:100%}fs-html-editor{min-height:400px;display:block;overflow:hidden}.subtitle{font-size:60%;line-height:normal}:host ::ng-deep .mat-tab-body-content{overflow:visible}\n"], components: [{ type: i2__namespace.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i3__namespace.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { type: i3__namespace.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby"], exportAs: ["matTab"] }, { type: i4__namespace.FsTextEditorComponent, selector: "fs-text-editor", inputs: ["config", "scrollable"], outputs: ["init", "blur"] }, { type: i5__namespace.FsHtmlEditorComponent, selector: "fs-html-editor", inputs: ["config"] }, { type: i6__namespace.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i7__namespace.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i8__namespace.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8__namespace.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8__namespace.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9__namespace.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: i10__namespace.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i10__namespace.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i3__namespace.MatTabContent, selector: "[matTabContent]" }, { type: i8__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i11__namespace.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: i8__namespace.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: i9__namespace.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i8__namespace.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i10__namespace.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i10__namespace.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }] });
|
|
64
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetComponent$1, decorators: [{
|
|
65
|
-
type: i0.Component,
|
|
66
|
-
args: [{
|
|
67
|
-
templateUrl: './content-widget.component.html',
|
|
68
|
-
styleUrls: ['./content-widget.component.scss'],
|
|
69
|
-
}]
|
|
70
|
-
}], ctorParameters: function () {
|
|
71
|
-
return [{ type: i1__namespace.FsMessage }, { type: undefined, decorators: [{
|
|
72
|
-
type: i0.Inject,
|
|
73
|
-
args: [i10.MAT_DIALOG_DATA]
|
|
74
|
-
}] }];
|
|
75
|
-
} });
|
|
76
|
-
|
|
77
|
-
var FsContentWidgetsComponent = /** @class */ (function () {
|
|
78
|
-
function FsContentWidgetsComponent(_dialog) {
|
|
79
|
-
this._dialog = _dialog;
|
|
80
|
-
this._destroy$ = new rxjs.Subject();
|
|
81
|
-
}
|
|
82
|
-
FsContentWidgetsComponent.prototype.ngOnInit = function () {
|
|
83
|
-
var _this = this;
|
|
84
|
-
this.config = {
|
|
85
|
-
paging: false,
|
|
86
|
-
filters: [
|
|
87
|
-
{
|
|
88
|
-
name: 'keyword',
|
|
89
|
-
type: filter.ItemType.Keyword,
|
|
90
|
-
label: 'Search',
|
|
91
|
-
},
|
|
92
|
-
],
|
|
93
|
-
fetch: function (query) {
|
|
94
|
-
return _this.fetchContentWidgets(query)
|
|
95
|
-
.pipe(operators.map(function (data) { return ({ data: data.contentWidgets }); }));
|
|
96
|
-
},
|
|
97
|
-
};
|
|
98
|
-
};
|
|
99
|
-
FsContentWidgetsComponent.prototype.ngOnDestroy = function () {
|
|
100
|
-
this._destroy$.next();
|
|
101
|
-
this._destroy$.complete();
|
|
102
|
-
};
|
|
103
|
-
FsContentWidgetsComponent.prototype.open = function (contentWidget) {
|
|
104
|
-
var _this = this;
|
|
105
|
-
this._dialog.open(FsContentWidgetComponent$1, {
|
|
106
|
-
width: '90%',
|
|
107
|
-
data: {
|
|
108
|
-
contentWidget: contentWidget,
|
|
109
|
-
htmlEditorConfig: this.htmlEditorConfig,
|
|
110
|
-
saveContentWidget: this.saveContentWidget,
|
|
111
|
-
},
|
|
112
|
-
})
|
|
113
|
-
.afterClosed()
|
|
114
|
-
.pipe(operators.takeUntil(this._destroy$))
|
|
115
|
-
.subscribe(function () {
|
|
116
|
-
_this.list.reload();
|
|
117
|
-
});
|
|
118
|
-
};
|
|
119
|
-
return FsContentWidgetsComponent;
|
|
120
|
-
}());
|
|
121
|
-
FsContentWidgetsComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetsComponent, deps: [{ token: i10__namespace.MatDialog }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
122
|
-
FsContentWidgetsComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsContentWidgetsComponent, selector: "fs-content-widgets", inputs: { fetchContentWidgets: "fetchContentWidgets", saveContentWidget: "saveContentWidget", htmlEditorConfig: "htmlEditorConfig" }, viewQueries: [{ propertyName: "list", first: true, predicate: i2$1.FsListComponent, descendants: true, static: true }], ngImport: i0__namespace, template: "<fs-list [config]=\"config\">\n <fs-list-column class=\"name\">\n <ng-template fs-list-header>Name</ng-template>\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"open(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>Preview</ng-template>\n <ng-template fs-list-cell let-row=\"row\">\n <div class=\"preview-container\">\n <div class=\"preview-content\">\n <div [innerHTML]=\"row.content\"></div>\n </div>\n </div>\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"modified\">\n <ng-template fs-list-header>Modified</ng-template>\n <ng-template fs-list-cell let-row=\"row\">\n <fs-date-ago [date]=\"row.modifiedDate\"></fs-date-ago>\n </ng-template>\n </fs-list-column>\n</fs-list>\n", styles: [":host ::ng-deep .modified,:host ::ng-deep .name{width:1%;white-space:nowrap}:host ::ng-deep .preview-content img{display:none}.preview-content{position:relative;max-height:100px;max-width:100%;overflow:hidden;-webkit-mask-image:-webkit-gradient(linear,left 60%,left bottom,from(black),to(rgba(0,0,0,0)))}\n"], components: [{ type: i2__namespace$1.FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }, { type: i3__namespace$1.FsDateAgoComponent, selector: "fs-date-ago", inputs: ["date", "showTime", "format", "showTooltip", "tooltipDateFormat"] }], directives: [{ type: i2__namespace$1.FsListColumnDirective, selector: "fs-list-column", inputs: ["show", "title", "name", "customize", "sortable", "sortableDefault", "direction", "align", "width", "class"] }, { type: i2__namespace$1.FsListHeaderDirective, selector: "[fs-list-header]", inputs: ["colspan", "align", "class"] }, { type: i2__namespace$1.FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }] });
|
|
123
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetsComponent, decorators: [{
|
|
124
|
-
type: i0.Component,
|
|
125
|
-
args: [{
|
|
126
|
-
selector: 'fs-content-widgets',
|
|
127
|
-
templateUrl: './content-widgets.component.html',
|
|
128
|
-
styleUrls: ['./content-widgets.component.scss'],
|
|
129
|
-
}]
|
|
130
|
-
}], ctorParameters: function () { return [{ type: i10__namespace.MatDialog }]; }, propDecorators: { fetchContentWidgets: [{
|
|
131
|
-
type: i0.Input
|
|
132
|
-
}], saveContentWidget: [{
|
|
133
|
-
type: i0.Input
|
|
134
|
-
}], htmlEditorConfig: [{
|
|
135
|
-
type: i0.Input
|
|
136
|
-
}], list: [{
|
|
137
|
-
type: i0.ViewChild,
|
|
138
|
-
args: [i2$1.FsListComponent, { static: true }]
|
|
139
|
-
}] } });
|
|
140
|
-
|
|
141
|
-
var FsContentWidgetsModule = /** @class */ (function () {
|
|
142
|
-
function FsContentWidgetsModule() {
|
|
143
|
-
}
|
|
144
|
-
FsContentWidgetsModule.forRoot = function () {
|
|
145
|
-
return {
|
|
146
|
-
ngModule: FsContentWidgetsModule,
|
|
147
|
-
};
|
|
148
|
-
};
|
|
149
|
-
return FsContentWidgetsModule;
|
|
150
|
-
}());
|
|
151
|
-
FsContentWidgetsModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetsModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
|
152
|
-
FsContentWidgetsModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetsModule, declarations: [FsContentWidgetsComponent,
|
|
153
|
-
FsContentWidgetComponent$1], imports: [i2$2.CommonModule,
|
|
154
|
-
i8.FormsModule,
|
|
155
|
-
i10.MatDialogModule,
|
|
156
|
-
i11.MatInputModule,
|
|
157
|
-
i6.MatFormFieldModule,
|
|
158
|
-
i7.MatButtonModule,
|
|
159
|
-
i3.MatTabsModule,
|
|
160
|
-
i2$1.FsListModule,
|
|
161
|
-
i3$1.FsDateModule,
|
|
162
|
-
i9.FsFormModule,
|
|
163
|
-
i5.FsHtmlEditorModule,
|
|
164
|
-
i2.FsDialogModule,
|
|
165
|
-
i4.FsTextEditorModule], exports: [FsContentWidgetsComponent] });
|
|
166
|
-
FsContentWidgetsModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetsModule, imports: [[
|
|
167
|
-
i2$2.CommonModule,
|
|
168
|
-
i8.FormsModule,
|
|
169
|
-
i10.MatDialogModule,
|
|
170
|
-
i11.MatInputModule,
|
|
171
|
-
i6.MatFormFieldModule,
|
|
172
|
-
i7.MatButtonModule,
|
|
173
|
-
i3.MatTabsModule,
|
|
174
|
-
i2$1.FsListModule,
|
|
175
|
-
i3$1.FsDateModule,
|
|
176
|
-
i9.FsFormModule,
|
|
177
|
-
i5.FsHtmlEditorModule,
|
|
178
|
-
i2.FsDialogModule,
|
|
179
|
-
i4.FsTextEditorModule,
|
|
180
|
-
]] });
|
|
181
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetsModule, decorators: [{
|
|
182
|
-
type: i0.NgModule,
|
|
183
|
-
args: [{
|
|
184
|
-
imports: [
|
|
185
|
-
i2$2.CommonModule,
|
|
186
|
-
i8.FormsModule,
|
|
187
|
-
i10.MatDialogModule,
|
|
188
|
-
i11.MatInputModule,
|
|
189
|
-
i6.MatFormFieldModule,
|
|
190
|
-
i7.MatButtonModule,
|
|
191
|
-
i3.MatTabsModule,
|
|
192
|
-
i2$1.FsListModule,
|
|
193
|
-
i3$1.FsDateModule,
|
|
194
|
-
i9.FsFormModule,
|
|
195
|
-
i5.FsHtmlEditorModule,
|
|
196
|
-
i2.FsDialogModule,
|
|
197
|
-
i4.FsTextEditorModule,
|
|
198
|
-
],
|
|
199
|
-
exports: [
|
|
200
|
-
FsContentWidgetsComponent,
|
|
201
|
-
],
|
|
202
|
-
declarations: [
|
|
203
|
-
FsContentWidgetsComponent,
|
|
204
|
-
FsContentWidgetComponent$1,
|
|
205
|
-
],
|
|
206
|
-
}]
|
|
207
|
-
}] });
|
|
208
|
-
|
|
209
|
-
var FsContentWidgetContentDirective = /** @class */ (function () {
|
|
210
|
-
function FsContentWidgetContentDirective() {
|
|
211
|
-
}
|
|
212
|
-
return FsContentWidgetContentDirective;
|
|
213
|
-
}());
|
|
214
|
-
FsContentWidgetContentDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetContentDirective, deps: [], target: i0__namespace.ɵɵFactoryTarget.Directive });
|
|
215
|
-
FsContentWidgetContentDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: FsContentWidgetContentDirective, selector: "[fsContentWidgetContent]", ngImport: i0__namespace });
|
|
216
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetContentDirective, decorators: [{
|
|
217
|
-
type: i0.Directive,
|
|
218
|
-
args: [{
|
|
219
|
-
selector: '[fsContentWidgetContent]',
|
|
220
|
-
}]
|
|
221
|
-
}] });
|
|
222
|
-
|
|
223
|
-
var FS_CONTENT_WIDGET_CONFIG = new i0.InjectionToken('fs-content-widget-config');
|
|
224
|
-
|
|
225
|
-
var FsContentWidgetRendererComponent = /** @class */ (function () {
|
|
226
|
-
function FsContentWidgetRendererComponent(_router, _el) {
|
|
227
|
-
this._router = _router;
|
|
228
|
-
this._el = _el;
|
|
229
|
-
this.destroy$ = new rxjs.Subject();
|
|
230
|
-
}
|
|
231
|
-
FsContentWidgetRendererComponent.prototype.ngAfterViewChecked = function () {
|
|
232
|
-
this.registerHrefs();
|
|
233
|
-
};
|
|
234
|
-
Object.defineProperty(FsContentWidgetRendererComponent.prototype, "el", {
|
|
235
|
-
get: function () {
|
|
236
|
-
return this._el.nativeElement;
|
|
237
|
-
},
|
|
238
|
-
enumerable: false,
|
|
239
|
-
configurable: true
|
|
240
|
-
});
|
|
241
|
-
FsContentWidgetRendererComponent.prototype.registerHrefs = function () {
|
|
242
|
-
var _this = this;
|
|
243
|
-
Array.from(this.el.querySelectorAll('a[href]'))
|
|
244
|
-
.filter(function (el) {
|
|
245
|
-
return el.getAttribute('href').match(/^\//);
|
|
246
|
-
})
|
|
247
|
-
.forEach(function (el) {
|
|
248
|
-
el.addEventListener('click', function (event) {
|
|
249
|
-
if (!event.shiftKey && !event.ctrlKey) {
|
|
250
|
-
event.preventDefault();
|
|
251
|
-
var href = el.getAttribute('href');
|
|
252
|
-
_this._router.navigateByUrl(href);
|
|
253
|
-
}
|
|
254
|
-
});
|
|
255
|
-
});
|
|
256
|
-
};
|
|
257
|
-
FsContentWidgetRendererComponent.prototype.ngOnDestroy = function () {
|
|
258
|
-
this.destroy$.next();
|
|
259
|
-
this.destroy$.complete();
|
|
260
|
-
};
|
|
261
|
-
return FsContentWidgetRendererComponent;
|
|
262
|
-
}());
|
|
263
|
-
FsContentWidgetRendererComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetRendererComponent, deps: [{ token: i1__namespace$1.Router }, { token: i0__namespace.ElementRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
264
|
-
FsContentWidgetRendererComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsContentWidgetRendererComponent, selector: "fs-content-widget-renderer", inputs: { content: "content" }, ngImport: i0__namespace, template: "<fs-html-renderer *ngIf=\"content\" [html]=\"content\"></fs-html-renderer>", styles: [":host ::ng-deep img{max-width:100%}\n"], components: [{ type: i5__namespace.FsHtmlRendererComponent, selector: "fs-html-renderer", inputs: ["html"] }], directives: [{ type: i2__namespace$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
265
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetRendererComponent, decorators: [{
|
|
266
|
-
type: i0.Component,
|
|
267
|
-
args: [{
|
|
268
|
-
selector: 'fs-content-widget-renderer',
|
|
269
|
-
templateUrl: './content-widget-renderer.component.html',
|
|
270
|
-
styleUrls: ['./content-widget-renderer.component.scss'],
|
|
271
|
-
}]
|
|
272
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$1.Router }, { type: i0__namespace.ElementRef }]; }, propDecorators: { content: [{
|
|
273
|
-
type: i0.Input
|
|
274
|
-
}] } });
|
|
275
|
-
|
|
276
|
-
var FsContentWidgetComponent = /** @class */ (function () {
|
|
277
|
-
function FsContentWidgetComponent(config, _cdRef) {
|
|
278
|
-
this.config = config;
|
|
279
|
-
this._cdRef = _cdRef;
|
|
280
|
-
this.destroy$ = new rxjs.Subject();
|
|
281
|
-
}
|
|
282
|
-
FsContentWidgetComponent.prototype.ngOnInit = function () {
|
|
283
|
-
var _this = this;
|
|
284
|
-
this.config.fetchContentWidget(this.tag)
|
|
285
|
-
.pipe(operators.takeUntil(this.destroy$))
|
|
286
|
-
.subscribe(function (content) {
|
|
287
|
-
_this.content = content;
|
|
288
|
-
_this._cdRef.markForCheck();
|
|
289
|
-
});
|
|
290
|
-
};
|
|
291
|
-
FsContentWidgetComponent.prototype.ngOnDestroy = function () {
|
|
292
|
-
this.destroy$.next();
|
|
293
|
-
this.destroy$.complete();
|
|
294
|
-
};
|
|
295
|
-
return FsContentWidgetComponent;
|
|
296
|
-
}());
|
|
297
|
-
FsContentWidgetComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetComponent, deps: [{ token: FS_CONTENT_WIDGET_CONFIG }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
298
|
-
FsContentWidgetComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsContentWidgetComponent, selector: "fs-content-widget", inputs: { tag: "tag" }, queries: [{ propertyName: "contentWidgetContent", first: true, predicate: FsContentWidgetContentDirective, descendants: true, read: i0.TemplateRef }], ngImport: i0__namespace, template: "<ng-container *ngIf=\"content\">\n <ng-container *ngIf=\"contentWidgetContent; else renderer\">\n <ng-container \n [ngTemplateOutlet]=\"contentWidgetContent\" \n [ngTemplateOutletContext]=\"{ content: renderer }\">\n </ng-container>\n </ng-container>\n <ng-template #renderer>\n <fs-content-widget-renderer \n [content]=\"content\">\n </fs-content-widget-renderer>\n </ng-template>\n</ng-container>", styles: [":host ::ng-deep img{max-width:100%}\n"], components: [{ type: FsContentWidgetRendererComponent, selector: "fs-content-widget-renderer", inputs: ["content"] }], directives: [{ type: i2__namespace$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
|
299
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetComponent, decorators: [{
|
|
300
|
-
type: i0.Component,
|
|
301
|
-
args: [{
|
|
302
|
-
selector: 'fs-content-widget',
|
|
303
|
-
templateUrl: './content-widget.component.html',
|
|
304
|
-
styleUrls: ['./content-widget.component.scss'],
|
|
305
|
-
}]
|
|
306
|
-
}], ctorParameters: function () {
|
|
307
|
-
return [{ type: undefined, decorators: [{
|
|
308
|
-
type: i0.Inject,
|
|
309
|
-
args: [FS_CONTENT_WIDGET_CONFIG]
|
|
310
|
-
}] }, { type: i0__namespace.ChangeDetectorRef }];
|
|
311
|
-
}, propDecorators: { contentWidgetContent: [{
|
|
312
|
-
type: i0.ContentChild,
|
|
313
|
-
args: [FsContentWidgetContentDirective, { read: i0.TemplateRef }]
|
|
314
|
-
}], tag: [{
|
|
315
|
-
type: i0.Input
|
|
316
|
-
}] } });
|
|
317
|
-
|
|
318
|
-
var FsContentWidgetDialogComponent = /** @class */ (function () {
|
|
319
|
-
function FsContentWidgetDialogComponent(_data) {
|
|
320
|
-
this._data = _data;
|
|
321
|
-
this.title = _data.title;
|
|
322
|
-
this.tag = _data.tag;
|
|
323
|
-
}
|
|
324
|
-
return FsContentWidgetDialogComponent;
|
|
325
|
-
}());
|
|
326
|
-
FsContentWidgetDialogComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetDialogComponent, deps: [{ token: i10.MAT_DIALOG_DATA }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
327
|
-
FsContentWidgetDialogComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsContentWidgetDialogComponent, selector: "ng-component", ngImport: i0__namespace, template: "<fs-dialog>\n <ng-container *ngIf=\"title\">\n <div mat-dialog-title>{{title}}</div>\n </ng-container>\n <mat-dialog-content>\n <fs-content-widget [tag]=\"tag\"></fs-content-widget>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button \n mat-button \n color=\"primary\" \n type=\"button\" \n [mat-dialog-close]=\"null\">\n Close \n </button>\n </mat-dialog-actions>\n</fs-dialog>\n", styles: [""], components: [{ type: i2__namespace.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: FsContentWidgetComponent, selector: "fs-content-widget", inputs: ["tag"] }, { type: i7__namespace.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i2__namespace$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10__namespace.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i10__namespace.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i10__namespace.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i10__namespace.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
|
328
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetDialogComponent, decorators: [{
|
|
329
|
-
type: i0.Component,
|
|
330
|
-
args: [{
|
|
331
|
-
templateUrl: './content-widget-dialog.component.html',
|
|
332
|
-
styleUrls: ['./content-widget-dialog.component.scss'],
|
|
333
|
-
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
|
334
|
-
}]
|
|
335
|
-
}], ctorParameters: function () {
|
|
336
|
-
return [{ type: undefined, decorators: [{
|
|
337
|
-
type: i0.Inject,
|
|
338
|
-
args: [i10.MAT_DIALOG_DATA]
|
|
339
|
-
}] }];
|
|
340
|
-
} });
|
|
341
|
-
|
|
342
|
-
var FsContentWidgetModule = /** @class */ (function () {
|
|
343
|
-
function FsContentWidgetModule() {
|
|
344
|
-
}
|
|
345
|
-
FsContentWidgetModule.forRoot = function () {
|
|
346
|
-
return {
|
|
347
|
-
ngModule: FsContentWidgetModule,
|
|
348
|
-
};
|
|
349
|
-
};
|
|
350
|
-
return FsContentWidgetModule;
|
|
351
|
-
}());
|
|
352
|
-
FsContentWidgetModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
|
353
|
-
FsContentWidgetModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetModule, declarations: [FsContentWidgetRendererComponent,
|
|
354
|
-
FsContentWidgetComponent,
|
|
355
|
-
FsContentWidgetDialogComponent,
|
|
356
|
-
FsContentWidgetContentDirective], imports: [i2$2.CommonModule,
|
|
357
|
-
i10.MatDialogModule,
|
|
358
|
-
i7.MatButtonModule,
|
|
359
|
-
i5.FsHtmlEditorModule,
|
|
360
|
-
i2.FsDialogModule,
|
|
361
|
-
i5.FsHtmlRendererModule], exports: [FsContentWidgetComponent,
|
|
362
|
-
FsContentWidgetContentDirective] });
|
|
363
|
-
FsContentWidgetModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetModule, imports: [[
|
|
364
|
-
i2$2.CommonModule,
|
|
365
|
-
i10.MatDialogModule,
|
|
366
|
-
i7.MatButtonModule,
|
|
367
|
-
i5.FsHtmlEditorModule,
|
|
368
|
-
i2.FsDialogModule,
|
|
369
|
-
i5.FsHtmlRendererModule,
|
|
370
|
-
]] });
|
|
371
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidgetModule, decorators: [{
|
|
372
|
-
type: i0.NgModule,
|
|
373
|
-
args: [{
|
|
374
|
-
imports: [
|
|
375
|
-
i2$2.CommonModule,
|
|
376
|
-
i10.MatDialogModule,
|
|
377
|
-
i7.MatButtonModule,
|
|
378
|
-
i5.FsHtmlEditorModule,
|
|
379
|
-
i2.FsDialogModule,
|
|
380
|
-
i5.FsHtmlRendererModule,
|
|
381
|
-
],
|
|
382
|
-
exports: [
|
|
383
|
-
FsContentWidgetComponent,
|
|
384
|
-
FsContentWidgetContentDirective,
|
|
385
|
-
],
|
|
386
|
-
declarations: [
|
|
387
|
-
FsContentWidgetRendererComponent,
|
|
388
|
-
FsContentWidgetComponent,
|
|
389
|
-
FsContentWidgetDialogComponent,
|
|
390
|
-
FsContentWidgetContentDirective,
|
|
391
|
-
],
|
|
392
|
-
}]
|
|
393
|
-
}] });
|
|
394
|
-
|
|
395
|
-
var FsContentWidget = /** @class */ (function () {
|
|
396
|
-
function FsContentWidget(_dialog) {
|
|
397
|
-
this._dialog = _dialog;
|
|
398
|
-
}
|
|
399
|
-
FsContentWidget.prototype.open = function (tag, title) {
|
|
400
|
-
this._dialog.open(FsContentWidgetDialogComponent, {
|
|
401
|
-
data: {
|
|
402
|
-
tag: tag,
|
|
403
|
-
title: title,
|
|
404
|
-
}
|
|
405
|
-
});
|
|
406
|
-
};
|
|
407
|
-
return FsContentWidget;
|
|
408
|
-
}());
|
|
409
|
-
FsContentWidget.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidget, deps: [{ token: i10__namespace.MatDialog }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
|
410
|
-
FsContentWidget.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidget, providedIn: 'root' });
|
|
411
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsContentWidget, decorators: [{
|
|
412
|
-
type: i0.Injectable,
|
|
413
|
-
args: [{
|
|
414
|
-
providedIn: 'root',
|
|
415
|
-
}]
|
|
416
|
-
}], ctorParameters: function () { return [{ type: i10__namespace.MatDialog }]; } });
|
|
417
|
-
|
|
418
|
-
/**
|
|
419
|
-
* Generated bundle index. Do not edit.
|
|
420
|
-
*/
|
|
421
|
-
|
|
422
|
-
exports.FS_CONTENT_WIDGET_CONFIG = FS_CONTENT_WIDGET_CONFIG;
|
|
423
|
-
exports.FsContentWidget = FsContentWidget;
|
|
424
|
-
exports.FsContentWidgetComponent = FsContentWidgetComponent;
|
|
425
|
-
exports.FsContentWidgetContentDirective = FsContentWidgetContentDirective;
|
|
426
|
-
exports.FsContentWidgetModule = FsContentWidgetModule;
|
|
427
|
-
exports.FsContentWidgetsComponent = FsContentWidgetsComponent;
|
|
428
|
-
exports.FsContentWidgetsModule = FsContentWidgetsModule;
|
|
429
|
-
|
|
430
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
431
|
-
|
|
432
|
-
}));
|
|
433
|
-
//# sourceMappingURL=firestitch-content-widget.umd.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"firestitch-content-widget.umd.js","sources":["../../src/app/content-widgets/components/content-widget/content-widget.component.ts","../../src/app/content-widgets/components/content-widget/content-widget.component.html","../../src/app/content-widgets/components/content-widgets/content-widgets.component.ts","../../src/app/content-widgets/components/content-widgets/content-widgets.component.html","../../src/app/content-widgets/fs-content-widgets.module.ts","../../src/app/content-widget/directives/content-widget-content.directive.ts","../../src/app/content-widget/injectors/content-wiget.injector.ts","../../src/app/content-widget/components/content-widget-renderer/content-widget-renderer.component.ts","../../src/app/content-widget/components/content-widget-renderer/content-widget-renderer.component.html","../../src/app/content-widget/components/content-widget/content-widget.component.ts","../../src/app/content-widget/components/content-widget/content-widget.component.html","../../src/app/content-widget/components/content-widget-dialog/content-widget-dialog.component.ts","../../src/app/content-widget/components/content-widget-dialog/content-widget-dialog.component.html","../../src/app/content-widget/fs-content-widget.module.ts","../../src/app/content-widget/services/content-widget.service.ts","../../src/firestitch-content-widget.ts"],"sourcesContent":["import { Component, Inject, OnInit } from '@angular/core';\n\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { FsHtmlEditorConfig } from '@firestitch/html-editor';\n\nimport { FsMessage } from '@firestitch/message';\nimport { Observable } from 'rxjs';\n\nimport { tap } from 'rxjs/operators';\n\n\n@Component({\n templateUrl: './content-widget.component.html',\n styleUrls: ['./content-widget.component.scss'],\n})\nexport class FsContentWidgetComponent implements OnInit {\n\n public contentWidget;\n public htmlEditorConfig: FsHtmlEditorConfig;\n \n private _saveContentWidget: (contentWidget: any) => Observable<any>;\n\n public constructor(\n private _message: FsMessage,\n @Inject(MAT_DIALOG_DATA) private _data: any,\n ) {\n }\n\n public ngOnInit(): void {\n this._saveContentWidget = this._data.saveContentWidget;\n this.htmlEditorConfig = {\n ...this._data.htmlEditorConfig\n };\n \n this.contentWidget = { ...this._data.contentWidget };\n }\n\n public save = () => {\n return this._saveContentWidget(this.contentWidget)\n .pipe(\n tap((contentWidget) => {\n this.contentWidget = { ...this.contentWidget, ...contentWidget };\n this._message.success('Saved Changes');\n }),\n );\n }\n\n}\n","\n<form fsForm [submit]=\"save\">\n <fs-dialog>\n <div mat-dialog-title>\n Content Widget\n <div class=\"subtitle\">{{contentWidget.name}}</div>\n </div>\n <mat-dialog-content>\n <mat-tab-group>\n <mat-tab label=\"HTML\">\n <ng-template matTabContent>\n <fs-text-editor\n [(ngModel)]=\"contentWidget.content\"\n [config]=\"{ language: 'html', tabSize: 2 }\"\n name=\"html\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Rich Text\">\n <ng-template matTabContent>\n <fs-html-editor\n [(ngModel)]=\"contentWidget.content\"\n [config]=\"htmlEditorConfig\"\n name=\"content\">\n </fs-html-editor>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Styles\">\n <ng-template matTabContent>\n <fs-text-editor\n [(ngModel)]=\"contentWidget.styles\"\n [config]=\"{ language: 'scss', tabSize: 2 }\"\n name=\"styles\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Settings\">\n <mat-form-field>\n <input\n matInput\n placeholder=\"Name\"\n [(ngModel)]=\"contentWidget.name\"\n name=\"name\"\n [required]=\"true\">\n </mat-form-field>\n </mat-tab>\n </mat-tab-group>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n color=\"primary\">\n Save\n </button>\n <button\n mat-button\n [mat-dialog-close]=\"null\"\n type=\"button\">\n Cancel\n </button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n","import { Component, ViewChild, OnInit, OnDestroy, Input } from '@angular/core';\n\nimport { MatDialog } from '@angular/material/dialog';\n\nimport { FsListComponent, FsListConfig } from '@firestitch/list';\nimport { ItemType } from '@firestitch/filter';\n\nimport { Observable, Subject } from 'rxjs';\nimport { map, takeUntil } from 'rxjs/operators';\n\nimport { FsContentWidgetComponent } from '../content-widget/content-widget.component';\nimport { FsHtmlEditorConfig } from '@firestitch/html-editor';\n\n\n@Component({\n selector: 'fs-content-widgets',\n templateUrl: './content-widgets.component.html',\n styleUrls: ['./content-widgets.component.scss'],\n})\nexport class FsContentWidgetsComponent implements OnInit, OnDestroy {\n\n @Input() public fetchContentWidgets: (query?: any) => Observable<{ contentWidgets: any[], paging?: any }>;\n @Input() public saveContentWidget: (contentWidget: any) => Observable<any>;\n @Input() public htmlEditorConfig: FsHtmlEditorConfig;\n\n @ViewChild(FsListComponent, { static: true })\n public list: FsListComponent;\n\n public config: FsListConfig;\n\n private _destroy$ = new Subject();\n\n constructor(\n private _dialog: MatDialog,\n ) {}\n\n public ngOnInit(): void {\n this.config = {\n paging: false,\n filters: [\n {\n name: 'keyword',\n type: ItemType.Keyword,\n label: 'Search',\n },\n ],\n fetch: (query) => {\n return this.fetchContentWidgets(query)\n .pipe(\n map((data: any) => ({ data: data.contentWidgets })),\n );\n },\n };\n }\n\n public ngOnDestroy(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n public open(contentWidget): void {\n this._dialog.open(FsContentWidgetComponent, {\n width: '90%',\n data: { \n contentWidget,\n htmlEditorConfig: this.htmlEditorConfig,\n saveContentWidget: this.saveContentWidget,\n },\n })\n .afterClosed()\n .pipe(\n takeUntil(this._destroy$),\n )\n .subscribe(() => {\n this.list.reload();\n });\n }\n\n}\n","<fs-list [config]=\"config\">\n <fs-list-column class=\"name\">\n <ng-template fs-list-header>Name</ng-template>\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"open(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>Preview</ng-template>\n <ng-template fs-list-cell let-row=\"row\">\n <div class=\"preview-container\">\n <div class=\"preview-content\">\n <div [innerHTML]=\"row.content\"></div>\n </div>\n </div>\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"modified\">\n <ng-template fs-list-header>Modified</ng-template>\n <ng-template fs-list-cell let-row=\"row\">\n <fs-date-ago [date]=\"row.modifiedDate\"></fs-date-ago>\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 { FsContentWidgetComponent } from './components/content-widget';\nimport { FsContentWidgetsComponent } from './components/content-widgets';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n\n MatDialogModule,\n MatInputModule,\n MatFormFieldModule,\n MatButtonModule,\n MatTabsModule,\n\n FsListModule,\n FsDateModule,\n FsFormModule,\n FsHtmlEditorModule,\n FsDialogModule,\n FsTextEditorModule,\n ],\n exports: [\n FsContentWidgetsComponent,\n ],\n declarations: [\n FsContentWidgetsComponent,\n FsContentWidgetComponent,\n ],\n})\nexport class FsContentWidgetsModule {\n static forRoot(): ModuleWithProviders<FsContentWidgetsModule> {\n return {\n ngModule: FsContentWidgetsModule,\n };\n }\n}\n","import { Directive } from '@angular/core';\n\n\n@Directive({\n selector: '[fsContentWidgetContent]',\n})\nexport class FsContentWidgetContentDirective {\n\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const FS_CONTENT_WIDGET_CONFIG = new InjectionToken<any>('fs-content-widget-config');\n","import { AfterViewChecked, Component, ElementRef, Input, OnDestroy } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { Subject } from 'rxjs';\n\n\n@Component({\n selector: 'fs-content-widget-renderer',\n templateUrl: './content-widget-renderer.component.html',\n styleUrls: ['./content-widget-renderer.component.scss'],\n})\nexport class FsContentWidgetRendererComponent implements OnDestroy, AfterViewChecked {\n\n @Input() public content;\n\n private destroy$ = new Subject();\n\n constructor(\n private _router: Router,\n private _el: ElementRef,\n ) { }\n \n public ngAfterViewChecked(): void {\n this.registerHrefs();\n }\n\n public get el(): any {\n return this._el.nativeElement;\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 ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n}\n","<fs-html-renderer *ngIf=\"content\" [html]=\"content\"></fs-html-renderer>","import { ChangeDetectorRef, Component, ContentChild, Inject, Input, OnDestroy, OnInit, TemplateRef } from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { FsContentWidgetContentDirective } from '../../directives';\nimport { FS_CONTENT_WIDGET_CONFIG } from '../../injectors';\nimport { FsContentWidgetConfig } from '../../interfaces/content-widget-config';\n\n\n@Component({\n selector: 'fs-content-widget',\n templateUrl: './content-widget.component.html',\n styleUrls: ['./content-widget.component.scss'],\n})\nexport class FsContentWidgetComponent implements OnDestroy, OnInit {\n\n @ContentChild(FsContentWidgetContentDirective, { read: TemplateRef })\n public contentWidgetContent: TemplateRef<any>;\n\n public content;\n\n private destroy$ = new Subject();\n\n @Input() public tag: string;\n\n constructor(\n @Inject(FS_CONTENT_WIDGET_CONFIG) public config: FsContentWidgetConfig,\n private _cdRef: ChangeDetectorRef,\n ) { }\n \n public ngOnInit(): void {\n this.config.fetchContentWidget(this.tag)\n .pipe(\n takeUntil(this.destroy$),\n )\n .subscribe((content) => {\n this.content = content;\n this._cdRef.markForCheck();\n });\n }\n\n public ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n}\n","<ng-container *ngIf=\"content\">\n <ng-container *ngIf=\"contentWidgetContent; else renderer\">\n <ng-container \n [ngTemplateOutlet]=\"contentWidgetContent\" \n [ngTemplateOutletContext]=\"{ content: renderer }\">\n </ng-container>\n </ng-container>\n <ng-template #renderer>\n <fs-content-widget-renderer \n [content]=\"content\">\n </fs-content-widget-renderer>\n </ng-template>\n</ng-container>","import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';\n\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\n\n@Component({\n templateUrl: './content-widget-dialog.component.html',\n styleUrls: ['./content-widget-dialog.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FsContentWidgetDialogComponent {\n\n public title;\n public tag;\n\n constructor(@Inject(MAT_DIALOG_DATA) private _data) {\n this.title = _data.title;\n this.tag = _data.tag;\n }\n}\n","<fs-dialog>\n <ng-container *ngIf=\"title\">\n <div mat-dialog-title>{{title}}</div>\n </ng-container>\n <mat-dialog-content>\n <fs-content-widget [tag]=\"tag\"></fs-content-widget>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button \n mat-button \n color=\"primary\" \n type=\"button\" \n [mat-dialog-close]=\"null\">\n Close \n </button>\n </mat-dialog-actions>\n</fs-dialog>\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { FsHtmlEditorModule, FsHtmlRendererModule } from '@firestitch/html-editor';\n\nimport { FsContentWidgetComponent } from './components/content-widget';\nimport { FsContentWidgetRendererComponent } from './components/content-widget-renderer';\nimport { FsContentWidgetDialogComponent } from './components';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatButtonModule } from '@angular/material/button';\nimport { FsDialogModule } from '@firestitch/dialog';\nimport { FsContentWidgetContentDirective } from './directives';\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n MatDialogModule,\n MatButtonModule,\n\n FsHtmlEditorModule,\n FsDialogModule,\n FsHtmlRendererModule,\n ],\n exports: [\n FsContentWidgetComponent,\n FsContentWidgetContentDirective,\n ],\n declarations: [\n FsContentWidgetRendererComponent,\n FsContentWidgetComponent,\n FsContentWidgetDialogComponent,\n FsContentWidgetContentDirective,\n ],\n})\nexport class FsContentWidgetModule {\n static forRoot(): ModuleWithProviders<FsContentWidgetModule> {\n return {\n ngModule: FsContentWidgetModule,\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\n\nimport { FsContentWidgetDialogComponent } from '../components';\n\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FsContentWidget {\n\n public constructor(\n private _dialog: MatDialog,\n ) {}\n\n public open(tag: string, title?: string) {\n this._dialog.open(FsContentWidgetDialogComponent, {\n data: { \n tag, \n title,\n }\n });\n }\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["FsContentWidgetComponent","tap","i0","MAT_DIALOG_DATA","i2","i3","i4","i5","i6","i7","i8","i9","i10","i11","Component","Inject","Subject","ItemType","map","takeUntil","i1","FsListComponent","Input","ViewChild","CommonModule","FormsModule","MatDialogModule","MatInputModule","MatFormFieldModule","MatButtonModule","MatTabsModule","FsListModule","FsDateModule","FsFormModule","FsHtmlEditorModule","FsDialogModule","FsTextEditorModule","NgModule","Directive","InjectionToken","TemplateRef","i1.FsContentWidgetRendererComponent","ContentChild","i2.FsContentWidgetComponent","ChangeDetectionStrategy","FsHtmlRendererModule","Injectable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAeA,IAAAA,0BAAA,kBAAA,YAAA;QAOE,SACU,wBAAA,CAAA,QAAmB,EACM,KAAU,EAAA;YAF7C,IAIC,KAAA,GAAA,IAAA,CAAA;IAHS,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;IACM,QAAA,IAAK,CAAA,KAAA,GAAL,KAAK,CAAK;YAatC,IAAI,CAAA,IAAA,GAAG,YAAA;IACZ,YAAA,OAAO,KAAI,CAAC,kBAAkB,CAAC,KAAI,CAAC,aAAa,CAAC;IAC/C,iBAAA,IAAI,CACHC,aAAG,CAAC,UAAC,aAAa,EAAA;oBAChB,KAAI,CAAC,aAAa,GAAQ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAI,CAAC,aAAa,CAAA,EAAK,aAAa,CAAE,CAAC;IACjE,gBAAA,KAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;iBACxC,CAAC,CACH,CAAC;IACN,SAAC,CAAA;SAnBA;IAEM,IAAA,wBAAA,CAAA,SAAA,CAAA,QAAQ,GAAR,YAAA;YACL,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACvD,QAAA,IAAI,CAAC,gBAAgB,GAChB,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAC/B,CAAC;IAEF,QAAA,IAAI,CAAC,aAAa,GAAQ,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,KAAK,CAAC,aAAa,CAAE,CAAC;SACtD,CAAA;;;AApBUD,8BAAA,CAAA,IAAA,GAAAE,aAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAAF,0BAAwB,sDASzBG,mBAAe,EAAA,CAAA,EAAA,MAAA,EAAAD,aAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AATdF,8BAAA,CAAA,IAAA,GAAAE,aAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAAF,0BAAwB,+DCfrC,q0DA+DA,EAAA,MAAA,EAAA,CAAA,8LAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAI,aAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,WAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,EAAA,YAAA,EAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,0FAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,MAAA,EAAA,QAAA,EAAA,wDAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,eAAA,EAAA,cAAA,EAAA,WAAA,EAAA,SAAA,EAAA,eAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,YAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,OAAA,EAAA,WAAA,EAAA,SAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,cAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,cAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAAP,aAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAAK,aAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAG,cAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,kBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAH,aAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,UAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAD,aAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,wIAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,cAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,cAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;sHDhDaZ,0BAAwB,EAAA,UAAA,EAAA,CAAA;sBAJpCc,YAAS;IAAC,YAAA,IAAA,EAAA,CAAA;IACT,oBAAA,WAAW,EAAE,iCAAiC;wBAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;qBAC/C,CAAA;;;kCAUIC,SAAM;mCAACZ,mBAAe,CAAA;;;;AEL3B,QAAA,yBAAA,kBAAA,YAAA;IAaE,IAAA,SAAA,yBAAA,CACU,OAAkB,EAAA;IAAlB,QAAA,IAAO,CAAA,OAAA,GAAP,OAAO,CAAW;IAHpB,QAAA,IAAA,CAAA,SAAS,GAAG,IAAIa,YAAO,EAAE,CAAC;SAI9B;IAEG,IAAA,yBAAA,CAAA,SAAA,CAAA,QAAQ,GAAR,YAAA;YAAA,IAiBN,KAAA,GAAA,IAAA,CAAA;YAhBC,IAAI,CAAC,MAAM,GAAG;IACZ,YAAA,MAAM,EAAE,KAAK;IACb,YAAA,OAAO,EAAE;IACP,gBAAA;IACE,oBAAA,IAAI,EAAE,SAAS;wBACf,IAAI,EAAEC,eAAQ,CAAC,OAAO;IACtB,oBAAA,KAAK,EAAE,QAAQ;IAChB,iBAAA;IACF,aAAA;gBACD,KAAK,EAAE,UAAC,KAAK,EAAA;IACX,gBAAA,OAAO,KAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;yBACnC,IAAI,CACHC,aAAG,CAAC,UAAC,IAAS,EAAK,EAAA,QAAC,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,IAAC,CAAC,CACpD,CAAC;iBACL;aACF,CAAC;SACH,CAAA;IAEM,IAAA,yBAAA,CAAA,SAAA,CAAA,WAAW,GAAX,YAAA;IACL,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IACtB,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;SAC3B,CAAA;QAEM,yBAAI,CAAA,SAAA,CAAA,IAAA,GAAJ,UAAK,aAAa,EAAA;YAAlB,IAgBN,KAAA,GAAA,IAAA,CAAA;IAfC,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAClB,0BAAwB,EAAE;IAC1C,YAAA,KAAK,EAAE,KAAK;IACZ,YAAA,IAAI,EAAE;IACJ,gBAAA,aAAa,EAAA,aAAA;oBACb,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;oBACvC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;IAC1C,aAAA;aACF,CAAC;IACC,aAAA,WAAW,EAAE;IACb,aAAA,IAAI,CACHmB,mBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAC1B;IACA,aAAA,SAAS,CAAC,YAAA;IACT,YAAA,KAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IACrB,SAAC,CAAC,CAAC;SACN,CAAA;;;iJAzDU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,cAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAAlB,aAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0HAAzB,yBAAyB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAMzBmB,oBAAe,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAAnB,aAAA,EAAA,QAAA,ECzB5B,40BAwBA,EAAA,MAAA,EAAA,CAAA,oTAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAE,eAAA,CAAA,eAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,eAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAD,eAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,WAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,OAAA,EAAA,OAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,eAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,eAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;sHDLa,yBAAyB,EAAA,UAAA,EAAA,CAAA;sBALrCU,YAAS;IAAC,YAAA,IAAA,EAAA,CAAA;IACT,oBAAA,QAAQ,EAAE,oBAAoB;IAC9B,oBAAA,WAAW,EAAE,kCAAkC;wBAC/C,SAAS,EAAE,CAAC,kCAAkC,CAAC;qBAChD,CAAA;gHAGiB,mBAAmB,EAAA,CAAA;0BAAlCQ,QAAK;oBACU,iBAAiB,EAAA,CAAA;0BAAhCA,QAAK;oBACU,gBAAgB,EAAA,CAAA;0BAA/BA,QAAK;oBAGC,IAAI,EAAA,CAAA;0BADVC,YAAS;oBAAC,IAAA,EAAA,CAAAF,oBAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;;;AEqB9C,QAAA,sBAAA,kBAAA,YAAA;IAAA,IAAA,SAAA,sBAAA,GAAA;;IACS,IAAA,sBAAA,CAAA,OAAO,GAAd,YAAA;YACE,OAAO;IACL,YAAA,QAAQ,EAAE,sBAAsB;aACjC,CAAC;SACH,CAAA;;;8IALU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAAnB,aAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;IAAtB,sBAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,sBAAsB,iBAJ/B,yBAAyB;IACzB,QAAAF,0BAAwB,aArBxBwB,iBAAY;YACZC,cAAW;YAEXC,mBAAe;YACfC,kBAAc;YACdC,qBAAkB;YAClBC,kBAAe;YACfC,gBAAa;YAEbC,iBAAY;YACZC,iBAAY;YACZC,eAAY;YACZC,qBAAkB;YAClBC,iBAAc;YACdC,qBAAkB,aAGlB,yBAAyB,CAAA,EAAA,CAAA,CAAA;IAOhB,sBAAA,CAAA,IAAA,GAAAlC,aAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,sBAAsB,EAzBxB,OAAA,EAAA,CAAA;gBACPsB,iBAAY;gBACZC,cAAW;gBAEXC,mBAAe;gBACfC,kBAAc;gBACdC,qBAAkB;gBAClBC,kBAAe;gBACfC,gBAAa;gBAEbC,iBAAY;gBACZC,iBAAY;gBACZC,eAAY;gBACZC,qBAAkB;gBAClBC,iBAAc;gBACdC,qBAAkB;aACnB,CAAA,EAAA,CAAA,CAAA;sHASU,sBAAsB,EAAA,UAAA,EAAA,CAAA;sBA1BlCC,WAAQ;IAAC,YAAA,IAAA,EAAA,CAAA;IACR,oBAAA,OAAO,EAAE;4BACPb,iBAAY;4BACZC,cAAW;4BAEXC,mBAAe;4BACfC,kBAAc;4BACdC,qBAAkB;4BAClBC,kBAAe;4BACfC,gBAAa;4BAEbC,iBAAY;4BACZC,iBAAY;4BACZC,eAAY;4BACZC,qBAAkB;4BAClBC,iBAAc;4BACdC,qBAAkB;IACnB,qBAAA;IACD,oBAAA,OAAO,EAAE;4BACP,yBAAyB;IAC1B,qBAAA;IACD,oBAAA,YAAY,EAAE;4BACZ,yBAAyB;4BACzBpC,0BAAwB;IACzB,qBAAA;qBACF,CAAA;;;ACvCD,QAAA,+BAAA,kBAAA,YAAA;IAAA,IAAA,SAAA,+BAAA,GAAA;;;;uJAAa,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAAE,aAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gIAA/B,+BAA+B,EAAA,QAAA,EAAA,0BAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,CAAA,CAAA;sHAA/B,+BAA+B,EAAA,UAAA,EAAA,CAAA;sBAH3CoC,YAAS;IAAC,YAAA,IAAA,EAAA,CAAA;IACT,oBAAA,QAAQ,EAAE,0BAA0B;qBACrC,CAAA;;;QCHY,wBAAwB,GAAG,IAAIC,iBAAc,CAAM,0BAA0B;;ICS1F,IAAA,gCAAA,kBAAA,YAAA;QAME,SACU,gCAAA,CAAA,OAAe,EACf,GAAe,EAAA;IADf,QAAA,IAAO,CAAA,OAAA,GAAP,OAAO,CAAQ;IACf,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAY;IAJjB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAIvB,YAAO,EAAE,CAAC;SAK5B;IAEE,IAAA,gCAAA,CAAA,SAAA,CAAA,kBAAkB,GAAlB,YAAA;YACL,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB,CAAA;IAED,IAAA,MAAA,CAAA,cAAA,CAAW,gCAAE,CAAA,SAAA,EAAA,IAAA,EAAA;IAAb,QAAA,GAAA,EAAA,YAAA;IACE,YAAA,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC;aAC/B;;;IAAA,KAAA,CAAA,CAAA;IAEM,IAAA,gCAAA,CAAA,SAAA,CAAA,aAAa,GAAb,YAAA;YAAA,IAcN,KAAA,GAAA,IAAA,CAAA;YAbC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;iBAC5C,MAAM,CAAC,UAAC,EAAW,EAAA;gBAClB,OAAO,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9C,SAAC,CAAC;iBACD,OAAO,CAAC,UAAC,EAAW,EAAA;IACnB,YAAA,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAC,UAAC,KAAiB,EAAA;oBAC5C,IAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;wBACpC,KAAK,CAAC,cAAc,EAAE,CAAC;wBACvB,IAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACrC,oBAAA,KAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAClC,iBAAA;IACH,aAAC,CAAC,CAAC;IACL,SAAC,CAAC,CAAC;SACN,CAAA;IAEM,IAAA,gCAAA,CAAA,SAAA,CAAA,WAAW,GAAX,YAAA;IACL,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACrB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SAC1B,CAAA;;;wJAtCU,gCAAgC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAI,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAlB,aAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAAA,aAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;IAAhC,gCAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gCAAgC,6GCX7C,4EAAsE,EAAA,MAAA,EAAA,CAAA,uCAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAE,aAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,eAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;sHDWzD,gCAAgC,EAAA,UAAA,EAAA,CAAA;sBAL5CS,YAAS;IAAC,YAAA,IAAA,EAAA,CAAA;IACT,oBAAA,QAAQ,EAAE,4BAA4B;IACtC,oBAAA,WAAW,EAAE,0CAA0C;wBACvD,SAAS,EAAE,CAAC,0CAA0C,CAAC;qBACxD,CAAA;kJAGiB,OAAO,EAAA,CAAA;0BAAtBQ,QAAK;;;AECR,QAAA,wBAAA,kBAAA,YAAA;QAWE,SAC2C,wBAAA,CAAA,MAA6B,EAC9D,MAAyB,EAAA;IADQ,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAuB;IAC9D,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAmB;IAN3B,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAIN,YAAO,EAAE,CAAC;SAO5B;IAEE,IAAA,wBAAA,CAAA,SAAA,CAAA,QAAQ,GAAR,YAAA;YAAA,IASN,KAAA,GAAA,IAAA,CAAA;YARC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC;IACvC,aAAA,IAAI,CACHG,mBAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB;iBACA,SAAS,CAAC,UAAC,OAAO,EAAA;IACjB,YAAA,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,YAAA,KAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IAC7B,SAAC,CAAC,CAAC;SACJ,CAAA;IAEM,IAAA,wBAAA,CAAA,SAAA,CAAA,WAAW,GAAX,YAAA;IACL,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACrB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SAC1B,CAAA;;;IA9BU,wBAAA,CAAA,IAAA,GAAAjB,aAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,wBAAwB,kBAYzB,wBAAwB,EAAA,EAAA,EAAA,KAAA,EAAAA,aAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAAA,aAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;IAZvB,wBAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,EAErB,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,+BAA+B,EAAU,WAAA,EAAA,IAAA,EAAA,IAAA,EAAAsC,cAAW,wCChBpE,mbAYe,EAAA,MAAA,EAAA,CAAA,uCAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,gCAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAArC,eAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,eAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;sHDEF,wBAAwB,EAAA,UAAA,EAAA,CAAA;sBALpCU,YAAS;IAAC,YAAA,IAAA,EAAA,CAAA;IACT,oBAAA,QAAQ,EAAE,mBAAmB;IAC7B,oBAAA,WAAW,EAAE,iCAAiC;wBAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;qBAC/C,CAAA;;;kCAaIC,SAAM;mCAAC,wBAAwB,CAAA;;6BAT3B,oBAAoB,EAAA,CAAA;0BAD1B2B,eAAY;oBAAC,IAAA,EAAA,CAAA,+BAA+B,EAAE,EAAE,IAAI,EAAEF,cAAW,EAAE,CAAA;oBAOpD,GAAG,EAAA,CAAA;0BAAlBlB,QAAK;;;IEdR,IAAA,8BAAA,kBAAA,YAAA;IAKE,IAAA,SAAA,8BAAA,CAA6C,KAAK,EAAA;IAAL,QAAA,IAAK,CAAA,KAAA,GAAL,KAAK,CAAA;IAChD,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IACzB,QAAA,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;SACtB;;;IARU,8BAAA,CAAA,IAAA,GAAApB,aAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,8BAA8B,kBAKrBC,mBAAe,EAAA,CAAA,EAAA,MAAA,EAAAD,aAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;IALxB,8BAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,8BAA8B,+DCT3C,sbAiBA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAkB,aAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAuB,wBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,KAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAtC,aAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,eAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,cAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,cAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,cAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,cAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAAL,aAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;sHDRa,8BAA8B,EAAA,UAAA,EAAA,CAAA;sBAL1CY,YAAS;IAAC,YAAA,IAAA,EAAA,CAAA;IACT,oBAAA,WAAW,EAAE,wCAAwC;wBACrD,SAAS,EAAE,CAAC,wCAAwC,CAAC;wBACrD,eAAe,EAAE8B,0BAAuB,CAAC,MAAM;qBAChD,CAAA;;;kCAMc7B,SAAM;mCAACZ,mBAAe,CAAA;;;;AEsBrC,QAAA,qBAAA,kBAAA,YAAA;IAAA,IAAA,SAAA,qBAAA,GAAA;;IACS,IAAA,qBAAA,CAAA,OAAO,GAAd,YAAA;YACE,OAAO;IACL,YAAA,QAAQ,EAAE,qBAAqB;aAChC,CAAC;SACH,CAAA;;;6IALU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAAD,aAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;IAArB,qBAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,qBAAqB,iBAN9B,gCAAgC;YAChC,wBAAwB;YACxB,8BAA8B;IAC9B,QAAA,+BAA+B,aAjB/BsB,iBAAY;YAEZE,mBAAe;YACfG,kBAAe;YAEfK,qBAAkB;YAClBC,iBAAc;IACd,QAAAU,uBAAoB,aAGpB,wBAAwB;YACxB,+BAA+B,CAAA,EAAA,CAAA,CAAA;IAStB,qBAAA,CAAA,IAAA,GAAA3C,aAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,qBAAqB,EArBvB,OAAA,EAAA,CAAA;gBACPsB,iBAAY;gBAEZE,mBAAe;gBACfG,kBAAe;gBAEfK,qBAAkB;gBAClBC,iBAAc;gBACdU,uBAAoB;aACrB,CAAA,EAAA,CAAA,CAAA;sHAYU,qBAAqB,EAAA,UAAA,EAAA,CAAA;sBAtBjCR,WAAQ;IAAC,YAAA,IAAA,EAAA,CAAA;IACR,oBAAA,OAAO,EAAE;4BACPb,iBAAY;4BAEZE,mBAAe;4BACfG,kBAAe;4BAEfK,qBAAkB;4BAClBC,iBAAc;4BACdU,uBAAoB;IACrB,qBAAA;IACD,oBAAA,OAAO,EAAE;4BACP,wBAAwB;4BACxB,+BAA+B;IAChC,qBAAA;IACD,oBAAA,YAAY,EAAE;4BACZ,gCAAgC;4BAChC,wBAAwB;4BACxB,8BAA8B;4BAC9B,+BAA+B;IAChC,qBAAA;qBACF,CAAA;;;AC1BD,QAAA,eAAA,kBAAA,YAAA;IAEE,IAAA,SAAA,eAAA,CACU,OAAkB,EAAA;IAAlB,QAAA,IAAO,CAAA,OAAA,GAAP,OAAO,CAAW;SACxB;IAEG,IAAA,eAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,UAAK,GAAW,EAAE,KAAc,EAAA;IACrC,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE;IAChD,YAAA,IAAI,EAAE;IACJ,gBAAA,GAAG,EAAA,GAAA;IACH,gBAAA,KAAK,EAAA,KAAA;IACN,aAAA;IACF,SAAA,CAAC,CAAC;SACJ,CAAA;;;uIAbU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAzB,cAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAAlB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;IAAf,eAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,eAAe,cAFd,MAAM,EAAA,CAAA,CAAA;sHAEP,eAAe,EAAA,UAAA,EAAA,CAAA;sBAH3B4C,aAAU;IAAC,YAAA,IAAA,EAAA,CAAA;IACV,oBAAA,UAAU,EAAE,MAAM;qBACnB,CAAA;;;ICRD;;IAEG;;;;;;;;;;;;;;;;"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Component, ContentChild, Inject, Input, TemplateRef } from '@angular/core';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
|
-
import { takeUntil } from 'rxjs/operators';
|
|
4
|
-
import { FsContentWidgetContentDirective } from '../../directives';
|
|
5
|
-
import { FS_CONTENT_WIDGET_CONFIG } from '../../injectors';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../content-widget-renderer/content-widget-renderer.component";
|
|
8
|
-
import * as i2 from "@angular/common";
|
|
9
|
-
export class FsContentWidgetComponent {
|
|
10
|
-
constructor(config, _cdRef) {
|
|
11
|
-
this.config = config;
|
|
12
|
-
this._cdRef = _cdRef;
|
|
13
|
-
this.destroy$ = new Subject();
|
|
14
|
-
}
|
|
15
|
-
ngOnInit() {
|
|
16
|
-
this.config.fetchContentWidget(this.tag)
|
|
17
|
-
.pipe(takeUntil(this.destroy$))
|
|
18
|
-
.subscribe((content) => {
|
|
19
|
-
this.content = content;
|
|
20
|
-
this._cdRef.markForCheck();
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
ngOnDestroy() {
|
|
24
|
-
this.destroy$.next();
|
|
25
|
-
this.destroy$.complete();
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
FsContentWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsContentWidgetComponent, deps: [{ token: FS_CONTENT_WIDGET_CONFIG }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
-
FsContentWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsContentWidgetComponent, selector: "fs-content-widget", inputs: { tag: "tag" }, queries: [{ propertyName: "contentWidgetContent", first: true, predicate: FsContentWidgetContentDirective, descendants: true, read: TemplateRef }], ngImport: i0, template: "<ng-container *ngIf=\"content\">\n <ng-container *ngIf=\"contentWidgetContent; else renderer\">\n <ng-container \n [ngTemplateOutlet]=\"contentWidgetContent\" \n [ngTemplateOutletContext]=\"{ content: renderer }\">\n </ng-container>\n </ng-container>\n <ng-template #renderer>\n <fs-content-widget-renderer \n [content]=\"content\">\n </fs-content-widget-renderer>\n </ng-template>\n</ng-container>", styles: [":host ::ng-deep img{max-width:100%}\n"], components: [{ type: i1.FsContentWidgetRendererComponent, selector: "fs-content-widget-renderer", inputs: ["content"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsContentWidgetComponent, decorators: [{
|
|
31
|
-
type: Component,
|
|
32
|
-
args: [{
|
|
33
|
-
selector: 'fs-content-widget',
|
|
34
|
-
templateUrl: './content-widget.component.html',
|
|
35
|
-
styleUrls: ['./content-widget.component.scss'],
|
|
36
|
-
}]
|
|
37
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
38
|
-
type: Inject,
|
|
39
|
-
args: [FS_CONTENT_WIDGET_CONFIG]
|
|
40
|
-
}] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { contentWidgetContent: [{
|
|
41
|
-
type: ContentChild,
|
|
42
|
-
args: [FsContentWidgetContentDirective, { read: TemplateRef }]
|
|
43
|
-
}], tag: [{
|
|
44
|
-
type: Input
|
|
45
|
-
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb250ZW50LXdpZGdldC9jb21wb25lbnRzL2NvbnRlbnQtd2lkZ2V0L2NvbnRlbnQtd2lkZ2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29udGVudC13aWRnZXQvY29tcG9uZW50cy9jb250ZW50LXdpZGdldC9jb250ZW50LXdpZGdldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFTM0QsTUFBTSxPQUFPLHdCQUF3QjtJQVduQyxZQUMyQyxNQUE2QixFQUM5RCxNQUF5QjtRQURRLFdBQU0sR0FBTixNQUFNLENBQXVCO1FBQzlELFdBQU0sR0FBTixNQUFNLENBQW1CO1FBTjNCLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBTzdCLENBQUM7SUFFRSxRQUFRO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2FBQ3ZDLElBQUksQ0FDSCxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUN6QjthQUNBLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7c0hBOUJVLHdCQUF3QixrQkFZekIsd0JBQXdCOzBHQVp2Qix3QkFBd0IsbUlBRXJCLCtCQUErQiwyQkFBVSxXQUFXLDZCQ2hCcEUsbWJBWWU7NEZERUYsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDO2lCQUMvQzs7MEJBYUksTUFBTTsyQkFBQyx3QkFBd0I7NEVBVDNCLG9CQUFvQjtzQkFEMUIsWUFBWTt1QkFBQywrQkFBK0IsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBT3BELEdBQUc7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBGc0NvbnRlbnRXaWRnZXRDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBGU19DT05URU5UX1dJREdFVF9DT05GSUcgfSBmcm9tICcuLi8uLi9pbmplY3RvcnMnO1xuaW1wb3J0IHsgRnNDb250ZW50V2lkZ2V0Q29uZmlnIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9jb250ZW50LXdpZGdldC1jb25maWcnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWNvbnRlbnQtd2lkZ2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnRlbnQtd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGVudC13aWRnZXQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNDb250ZW50V2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuXG4gIEBDb250ZW50Q2hpbGQoRnNDb250ZW50V2lkZ2V0Q29udGVudERpcmVjdGl2ZSwgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBwdWJsaWMgY29udGVudFdpZGdldENvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcHVibGljIGNvbnRlbnQ7XG5cbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgQElucHV0KCkgcHVibGljIHRhZzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRlNfQ09OVEVOVF9XSURHRVRfQ09ORklHKSBwdWJsaWMgY29uZmlnOiBGc0NvbnRlbnRXaWRnZXRDb25maWcsXG4gICAgcHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHsgfVxuICBcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlnLmZldGNoQ29udGVudFdpZGdldCh0aGlzLnRhZylcbiAgICAucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICApXG4gICAgLnN1YnNjcmliZSgoY29udGVudCkgPT4ge1xuICAgICAgdGhpcy5jb250ZW50ID0gY29udGVudDtcbiAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGVudFwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGVudFdpZGdldENvbnRlbnQ7IGVsc2UgcmVuZGVyZXJcIj5cbiAgICA8bmctY29udGFpbmVyIFxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGVudFdpZGdldENvbnRlbnRcIiBcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGNvbnRlbnQ6IHJlbmRlcmVyIH1cIj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy10ZW1wbGF0ZSAjcmVuZGVyZXI+XG4gICAgPGZzLWNvbnRlbnQtd2lkZ2V0LXJlbmRlcmVyICAgICBcbiAgICAgIFtjb250ZW50XT1cImNvbnRlbnRcIj5cbiAgICA8L2ZzLWNvbnRlbnQtd2lkZ2V0LXJlbmRlcmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy1jb250YWluZXI+Il19
|