@sitecore-jss/sitecore-jss-angular 21.7.0 → 21.7.1-canary.2
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/LICENSE.txt +202 -202
- package/README.md +7 -7
- package/angular.json +48 -48
- package/dist/README.md +7 -7
- package/dist/components/date.directive.d.ts +20 -20
- package/dist/components/editframe.component.d.ts +22 -22
- package/dist/components/file.directive.d.ts +17 -17
- package/dist/components/generic-link.directive.d.ts +20 -20
- package/dist/components/hidden-rendering.component.d.ts +7 -7
- package/dist/components/image.directive.d.ts +35 -35
- package/dist/components/link.directive.d.ts +26 -26
- package/dist/components/missing-component.component.d.ts +7 -7
- package/dist/components/placeholder-loading.directive.d.ts +8 -8
- package/dist/components/placeholder.component.d.ts +60 -60
- package/dist/components/raw.component.d.ts +12 -12
- package/dist/components/render-component.component.d.ts +33 -33
- package/dist/components/render-each.directive.d.ts +8 -8
- package/dist/components/render-empty.directive.d.ts +8 -8
- package/dist/components/rendering-field.d.ts +41 -41
- package/dist/components/rendering.d.ts +5 -5
- package/dist/components/rich-text.directive.d.ts +18 -18
- package/dist/components/router-link.directive.d.ts +19 -19
- package/dist/components/text.directive.d.ts +16 -16
- package/dist/esm2022/components/date.directive.mjs +67 -67
- package/dist/esm2022/components/editframe.component.mjs +70 -70
- package/dist/esm2022/components/file.directive.mjs +48 -48
- package/dist/esm2022/components/generic-link.directive.mjs +67 -67
- package/dist/esm2022/components/hidden-rendering.component.mjs +20 -20
- package/dist/esm2022/components/image.directive.mjs +150 -150
- package/dist/esm2022/components/link.directive.mjs +122 -122
- package/dist/esm2022/components/missing-component.component.mjs +16 -16
- package/dist/esm2022/components/placeholder-loading.directive.mjs +16 -16
- package/dist/esm2022/components/placeholder.component.mjs +281 -281
- package/dist/esm2022/components/raw.component.mjs +38 -38
- package/dist/esm2022/components/render-component.component.mjs +98 -98
- package/dist/esm2022/components/render-each.directive.mjs +16 -16
- package/dist/esm2022/components/render-empty.directive.mjs +16 -16
- package/dist/esm2022/components/rendering-field.mjs +1 -1
- package/dist/esm2022/components/rendering.mjs +7 -7
- package/dist/esm2022/components/rich-text.directive.mjs +68 -68
- package/dist/esm2022/components/router-link.directive.mjs +49 -49
- package/dist/esm2022/components/text.directive.mjs +61 -61
- package/dist/esm2022/lib.module.mjs +160 -160
- package/dist/esm2022/public_api.mjs +25 -25
- package/dist/esm2022/services/data-resolver-factory.mjs +58 -58
- package/dist/esm2022/services/guard-resolver-factory.mjs +86 -86
- package/dist/esm2022/services/jss-can-activate-error.mjs +14 -14
- package/dist/esm2022/services/jss-component-factory.service.mjs +88 -88
- package/dist/esm2022/services/placeholder.token.mjs +27 -27
- package/dist/esm2022/sitecore-jss-sitecore-jss-angular.mjs +4 -4
- package/dist/esm2022/utils.mjs +16 -16
- package/dist/fesm2022/sitecore-jss-sitecore-jss-angular.mjs +1530 -1530
- package/dist/index.d.ts +5 -5
- package/dist/lib.module.d.ts +48 -48
- package/dist/package.json +2 -2
- package/dist/public_api.d.ts +26 -26
- package/dist/services/data-resolver-factory.d.ts +13 -13
- package/dist/services/guard-resolver-factory.d.ts +11 -11
- package/dist/services/jss-can-activate-error.d.ts +10 -10
- package/dist/services/jss-component-factory.service.d.ts +26 -26
- package/dist/services/placeholder.token.d.ts +64 -64
- package/dist/utils.d.ts +6 -6
- package/ng-package.json +13 -13
- package/package.json +3 -3
- package/tsconfig.json +9 -9
- package/tsconfig.spec.json +17 -17
- package/typings/README.md +2 -2
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { OnChanges, SimpleChanges, TemplateRef, ViewContainerRef, Renderer2 } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
3
|
-
import { RichTextField } from './rendering-field';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class RichTextDirective implements OnChanges {
|
|
6
|
-
private viewContainer;
|
|
7
|
-
private templateRef;
|
|
8
|
-
private renderer;
|
|
9
|
-
private router;
|
|
10
|
-
editable: boolean;
|
|
11
|
-
field: RichTextField;
|
|
12
|
-
private viewRef;
|
|
13
|
-
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<unknown>, renderer: Renderer2, router: Router);
|
|
14
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
15
|
-
private updateView;
|
|
16
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RichTextDirective, never>;
|
|
17
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RichTextDirective, "[scRichText]", never, { "editable": { "alias": "scRichTextEditable"; "required": false; }; "field": { "alias": "scRichText"; "required": false; }; }, {}, never, never, false, never>;
|
|
18
|
-
}
|
|
1
|
+
import { OnChanges, SimpleChanges, TemplateRef, ViewContainerRef, Renderer2 } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
import { RichTextField } from './rendering-field';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class RichTextDirective implements OnChanges {
|
|
6
|
+
private viewContainer;
|
|
7
|
+
private templateRef;
|
|
8
|
+
private renderer;
|
|
9
|
+
private router;
|
|
10
|
+
editable: boolean;
|
|
11
|
+
field: RichTextField;
|
|
12
|
+
private viewRef;
|
|
13
|
+
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<unknown>, renderer: Renderer2, router: Router);
|
|
14
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
15
|
+
private updateView;
|
|
16
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RichTextDirective, never>;
|
|
17
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RichTextDirective, "[scRichText]", never, { "editable": { "alias": "scRichTextEditable"; "required": false; }; "field": { "alias": "scRichText"; "required": false; }; }, {}, never, never, false, never>;
|
|
18
|
+
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { ElementRef, Renderer2, TemplateRef, ViewContainerRef } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
3
|
-
import { LinkDirective } from './link.directive';
|
|
4
|
-
import { LinkField } from './rendering-field';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export declare class RouterLinkDirective extends LinkDirective {
|
|
7
|
-
private router;
|
|
8
|
-
editable: boolean;
|
|
9
|
-
attrs: {
|
|
10
|
-
[attr: string]: string;
|
|
11
|
-
};
|
|
12
|
-
field: LinkField;
|
|
13
|
-
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<unknown>, renderer: Renderer2, elementRef: ElementRef, router: Router);
|
|
14
|
-
protected renderTemplate(props: {
|
|
15
|
-
[prop: string]: string;
|
|
16
|
-
}, linkText: string): void;
|
|
17
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkDirective, never>;
|
|
18
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkDirective, "[scRouterLink]", never, { "editable": { "alias": "scRouterLinkEditable"; "required": false; }; "attrs": { "alias": "scRouterLinkAttrs"; "required": false; }; "field": { "alias": "scRouterLink"; "required": false; }; }, {}, never, never, false, never>;
|
|
19
|
-
}
|
|
1
|
+
import { ElementRef, Renderer2, TemplateRef, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
import { LinkDirective } from './link.directive';
|
|
4
|
+
import { LinkField } from './rendering-field';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class RouterLinkDirective extends LinkDirective {
|
|
7
|
+
private router;
|
|
8
|
+
editable: boolean;
|
|
9
|
+
attrs: {
|
|
10
|
+
[attr: string]: string;
|
|
11
|
+
};
|
|
12
|
+
field: LinkField;
|
|
13
|
+
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<unknown>, renderer: Renderer2, elementRef: ElementRef, router: Router);
|
|
14
|
+
protected renderTemplate(props: {
|
|
15
|
+
[prop: string]: string;
|
|
16
|
+
}, linkText: string): void;
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkDirective, never>;
|
|
18
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkDirective, "[scRouterLink]", never, { "editable": { "alias": "scRouterLinkEditable"; "required": false; }; "attrs": { "alias": "scRouterLinkAttrs"; "required": false; }; "field": { "alias": "scRouterLink"; "required": false; }; }, {}, never, never, false, never>;
|
|
19
|
+
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { OnChanges, SimpleChanges, TemplateRef, ViewContainerRef } from '@angular/core';
|
|
2
|
-
import { TextField } from './rendering-field';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class TextDirective implements OnChanges {
|
|
5
|
-
private viewContainer;
|
|
6
|
-
private templateRef;
|
|
7
|
-
editable: boolean;
|
|
8
|
-
encode: boolean;
|
|
9
|
-
field: TextField;
|
|
10
|
-
private viewRef;
|
|
11
|
-
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<unknown>);
|
|
12
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
13
|
-
private updateView;
|
|
14
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TextDirective, never>;
|
|
15
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TextDirective, "[scText]", never, { "editable": { "alias": "scTextEditable"; "required": false; }; "encode": { "alias": "scTextEncode"; "required": false; }; "field": { "alias": "scText"; "required": false; }; }, {}, never, never, false, never>;
|
|
16
|
-
}
|
|
1
|
+
import { OnChanges, SimpleChanges, TemplateRef, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import { TextField } from './rendering-field';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class TextDirective implements OnChanges {
|
|
5
|
+
private viewContainer;
|
|
6
|
+
private templateRef;
|
|
7
|
+
editable: boolean;
|
|
8
|
+
encode: boolean;
|
|
9
|
+
field: TextField;
|
|
10
|
+
private viewRef;
|
|
11
|
+
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<unknown>);
|
|
12
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
13
|
+
private updateView;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TextDirective, never>;
|
|
15
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TextDirective, "[scText]", never, { "editable": { "alias": "scTextEditable"; "required": false; }; "encode": { "alias": "scTextEncode"; "required": false; }; "field": { "alias": "scText"; "required": false; }; }, {}, never, never, false, never>;
|
|
16
|
+
}
|
|
@@ -1,68 +1,68 @@
|
|
|
1
|
-
import { Directive, Input, } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
export class DateDirective {
|
|
5
|
-
viewContainer;
|
|
6
|
-
templateRef;
|
|
7
|
-
datePipe;
|
|
8
|
-
format;
|
|
9
|
-
timezone;
|
|
10
|
-
locale;
|
|
11
|
-
editable = true;
|
|
12
|
-
field;
|
|
13
|
-
viewRef;
|
|
14
|
-
constructor(viewContainer, templateRef, datePipe) {
|
|
15
|
-
this.viewContainer = viewContainer;
|
|
16
|
-
this.templateRef = templateRef;
|
|
17
|
-
this.datePipe = datePipe;
|
|
18
|
-
}
|
|
19
|
-
ngOnChanges(changes) {
|
|
20
|
-
if (changes.field || changes.format) {
|
|
21
|
-
if (!this.viewRef) {
|
|
22
|
-
this.viewContainer.clear();
|
|
23
|
-
this.viewRef = this.viewContainer.createEmbeddedView(this.templateRef);
|
|
24
|
-
}
|
|
25
|
-
this.updateView();
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
updateView() {
|
|
29
|
-
const field = this.field;
|
|
30
|
-
if (!field || (!field.editable && !field.value)) {
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
const html = field.editable && this.editable ? field.editable : field.value;
|
|
34
|
-
const setDangerously = field.editable && this.editable;
|
|
35
|
-
this.viewRef.rootNodes.forEach((node) => {
|
|
36
|
-
if (setDangerously) {
|
|
37
|
-
node.innerHTML = html;
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
node.textContent = this.datePipe.transform(html, this.format, this.timezone, this.locale);
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DateDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i1.DatePipe }], target: i0.ɵɵFactoryTarget.Directive });
|
|
45
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DateDirective, selector: "[scDate]", inputs: { format: ["scDateFormat", "format"], timezone: ["scDateTimezone", "timezone"], locale: ["scDateLocale", "locale"], editable: ["scDateEditable", "editable"], field: ["scDate", "field"] }, usesOnChanges: true, ngImport: i0 });
|
|
46
|
-
}
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DateDirective, decorators: [{
|
|
48
|
-
type: Directive,
|
|
49
|
-
args: [{
|
|
50
|
-
selector: '[scDate]',
|
|
51
|
-
}]
|
|
52
|
-
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i1.DatePipe }]; }, propDecorators: { format: [{
|
|
53
|
-
type: Input,
|
|
54
|
-
args: ['scDateFormat']
|
|
55
|
-
}], timezone: [{
|
|
56
|
-
type: Input,
|
|
57
|
-
args: ['scDateTimezone']
|
|
58
|
-
}], locale: [{
|
|
59
|
-
type: Input,
|
|
60
|
-
args: ['scDateLocale']
|
|
61
|
-
}], editable: [{
|
|
62
|
-
type: Input,
|
|
63
|
-
args: ['scDateEditable']
|
|
64
|
-
}], field: [{
|
|
65
|
-
type: Input,
|
|
66
|
-
args: ['scDate']
|
|
67
|
-
}] } });
|
|
1
|
+
import { Directive, Input, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class DateDirective {
|
|
5
|
+
viewContainer;
|
|
6
|
+
templateRef;
|
|
7
|
+
datePipe;
|
|
8
|
+
format;
|
|
9
|
+
timezone;
|
|
10
|
+
locale;
|
|
11
|
+
editable = true;
|
|
12
|
+
field;
|
|
13
|
+
viewRef;
|
|
14
|
+
constructor(viewContainer, templateRef, datePipe) {
|
|
15
|
+
this.viewContainer = viewContainer;
|
|
16
|
+
this.templateRef = templateRef;
|
|
17
|
+
this.datePipe = datePipe;
|
|
18
|
+
}
|
|
19
|
+
ngOnChanges(changes) {
|
|
20
|
+
if (changes.field || changes.format) {
|
|
21
|
+
if (!this.viewRef) {
|
|
22
|
+
this.viewContainer.clear();
|
|
23
|
+
this.viewRef = this.viewContainer.createEmbeddedView(this.templateRef);
|
|
24
|
+
}
|
|
25
|
+
this.updateView();
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
updateView() {
|
|
29
|
+
const field = this.field;
|
|
30
|
+
if (!field || (!field.editable && !field.value)) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const html = field.editable && this.editable ? field.editable : field.value;
|
|
34
|
+
const setDangerously = field.editable && this.editable;
|
|
35
|
+
this.viewRef.rootNodes.forEach((node) => {
|
|
36
|
+
if (setDangerously) {
|
|
37
|
+
node.innerHTML = html;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
node.textContent = this.datePipe.transform(html, this.format, this.timezone, this.locale);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DateDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i1.DatePipe }], target: i0.ɵɵFactoryTarget.Directive });
|
|
45
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DateDirective, selector: "[scDate]", inputs: { format: ["scDateFormat", "format"], timezone: ["scDateTimezone", "timezone"], locale: ["scDateLocale", "locale"], editable: ["scDateEditable", "editable"], field: ["scDate", "field"] }, usesOnChanges: true, ngImport: i0 });
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DateDirective, decorators: [{
|
|
48
|
+
type: Directive,
|
|
49
|
+
args: [{
|
|
50
|
+
selector: '[scDate]',
|
|
51
|
+
}]
|
|
52
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i1.DatePipe }]; }, propDecorators: { format: [{
|
|
53
|
+
type: Input,
|
|
54
|
+
args: ['scDateFormat']
|
|
55
|
+
}], timezone: [{
|
|
56
|
+
type: Input,
|
|
57
|
+
args: ['scDateTimezone']
|
|
58
|
+
}], locale: [{
|
|
59
|
+
type: Input,
|
|
60
|
+
args: ['scDateLocale']
|
|
61
|
+
}], editable: [{
|
|
62
|
+
type: Input,
|
|
63
|
+
args: ['scDateEditable']
|
|
64
|
+
}], field: [{
|
|
65
|
+
type: Input,
|
|
66
|
+
args: ['scDate']
|
|
67
|
+
}] } });
|
|
68
68
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9kYXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssR0FLTixNQUFNLGVBQWUsQ0FBQzs7O0FBTXZCLE1BQU0sT0FBTyxhQUFhO0lBY2Q7SUFDQTtJQUNBO0lBZmEsTUFBTSxDQUFVO0lBRWQsUUFBUSxDQUFVO0lBRXBCLE1BQU0sQ0FBVTtJQUVkLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFFeEIsS0FBSyxDQUFZO0lBRTFCLE9BQU8sQ0FBMkI7SUFFMUMsWUFDVSxhQUErQixFQUMvQixXQUFpQyxFQUNqQyxRQUFrQjtRQUZsQixrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQVU7SUFDekIsQ0FBQztJQUVKLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUN4RTtZQUVELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFTyxVQUFVO1FBQ2hCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFekIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMvQyxPQUFPO1NBQ1I7UUFFRCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDNUUsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDO1FBRXZELElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3RDLElBQUksY0FBYyxFQUFFO2dCQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQzthQUN2QjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQS9DVSxhQUFhOzRGQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBSHpCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFVBQVU7aUJBQ3JCO3dKQUV3QixNQUFNO3NCQUE1QixLQUFLO3VCQUFDLGNBQWM7Z0JBRUksUUFBUTtzQkFBaEMsS0FBSzt1QkFBQyxnQkFBZ0I7Z0JBRUEsTUFBTTtzQkFBNUIsS0FBSzt1QkFBQyxjQUFjO2dCQUVJLFFBQVE7c0JBQWhDLEtBQUs7dUJBQUMsZ0JBQWdCO2dCQUVOLEtBQUs7c0JBQXJCLEtBQUs7dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRW1iZWRkZWRWaWV3UmVmLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVGaWVsZCB9IGZyb20gJy4vcmVuZGVyaW5nLWZpZWxkJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3NjRGF0ZV0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCdzY0RhdGVGb3JtYXQnKSBmb3JtYXQ/OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgnc2NEYXRlVGltZXpvbmUnKSB0aW1lem9uZT86IHN0cmluZztcclxuXHJcbiAgQElucHV0KCdzY0RhdGVMb2NhbGUnKSBsb2NhbGU/OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgnc2NEYXRlRWRpdGFibGUnKSBlZGl0YWJsZSA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgnc2NEYXRlJykgZmllbGQ6IERhdGVGaWVsZDtcclxuXHJcbiAgcHJpdmF0ZSB2aWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8dW5rbm93bj47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj4sXHJcbiAgICBwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgaWYgKGNoYW5nZXMuZmllbGQgfHwgY2hhbmdlcy5mb3JtYXQpIHtcclxuICAgICAgaWYgKCF0aGlzLnZpZXdSZWYpIHtcclxuICAgICAgICB0aGlzLnZpZXdDb250YWluZXIuY2xlYXIoKTtcclxuICAgICAgICB0aGlzLnZpZXdSZWYgPSB0aGlzLnZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMudGVtcGxhdGVSZWYpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVmlldygpIHtcclxuICAgIGNvbnN0IGZpZWxkID0gdGhpcy5maWVsZDtcclxuXHJcbiAgICBpZiAoIWZpZWxkIHx8ICghZmllbGQuZWRpdGFibGUgJiYgIWZpZWxkLnZhbHVlKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaHRtbCA9IGZpZWxkLmVkaXRhYmxlICYmIHRoaXMuZWRpdGFibGUgPyBmaWVsZC5lZGl0YWJsZSA6IGZpZWxkLnZhbHVlO1xyXG4gICAgY29uc3Qgc2V0RGFuZ2Vyb3VzbHkgPSBmaWVsZC5lZGl0YWJsZSAmJiB0aGlzLmVkaXRhYmxlO1xyXG5cclxuICAgIHRoaXMudmlld1JlZi5yb290Tm9kZXMuZm9yRWFjaCgobm9kZSkgPT4ge1xyXG4gICAgICBpZiAoc2V0RGFuZ2Vyb3VzbHkpIHtcclxuICAgICAgICBub2RlLmlubmVySFRNTCA9IGh0bWw7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbm9kZS50ZXh0Q29udGVudCA9IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKGh0bWwsIHRoaXMuZm9ybWF0LCB0aGlzLnRpbWV6b25lLCB0aGlzLmxvY2FsZSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,50 +1,50 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { mapButtonToCommand, } from '@sitecore-jss/sitecore-jss/utils';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
export class EditFrameComponent {
|
|
6
|
-
dataSource;
|
|
7
|
-
buttons;
|
|
8
|
-
title;
|
|
9
|
-
tooltip;
|
|
10
|
-
cssClass;
|
|
11
|
-
parameters;
|
|
12
|
-
sitecore;
|
|
13
|
-
isEditing = false;
|
|
14
|
-
frameProps = {};
|
|
15
|
-
chromeData = '';
|
|
16
|
-
ngOnChanges() {
|
|
17
|
-
this.isEditing = this.sitecore.context.pageEditing || false;
|
|
18
|
-
if (!this.isEditing) {
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
this.frameProps.class = 'scLooseFrameZone';
|
|
22
|
-
if (this.cssClass) {
|
|
23
|
-
this.frameProps.class = `${this.frameProps.class} ${this.cssClass}`;
|
|
24
|
-
}
|
|
25
|
-
// item uri for edit frame target
|
|
26
|
-
if (this.dataSource) {
|
|
27
|
-
const route = this.sitecore.route;
|
|
28
|
-
const databaseName = this.dataSource.databaseName || route?.databaseName;
|
|
29
|
-
const language = this.dataSource.language || this.sitecore.context.language;
|
|
30
|
-
this.frameProps.sc_item = `sitecore://${databaseName}/${this.dataSource.itemId}?lang=${language}`;
|
|
31
|
-
}
|
|
32
|
-
this.chromeData = this.buildChromeData();
|
|
33
|
-
}
|
|
34
|
-
buildChromeData() {
|
|
35
|
-
const chromeData = {
|
|
36
|
-
displayName: this.title,
|
|
37
|
-
expandedDisplayName: this.tooltip,
|
|
38
|
-
};
|
|
39
|
-
if (this.dataSource) {
|
|
40
|
-
chromeData.contextItemUri = this.frameProps.sc_item;
|
|
41
|
-
}
|
|
42
|
-
chromeData.commands = this.buttons?.map((value) => {
|
|
43
|
-
return mapButtonToCommand(value, this.dataSource?.itemId, this.parameters);
|
|
44
|
-
});
|
|
45
|
-
return JSON.stringify(chromeData);
|
|
46
|
-
}
|
|
47
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditFrameComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { mapButtonToCommand, } from '@sitecore-jss/sitecore-jss/utils';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
export class EditFrameComponent {
|
|
6
|
+
dataSource;
|
|
7
|
+
buttons;
|
|
8
|
+
title;
|
|
9
|
+
tooltip;
|
|
10
|
+
cssClass;
|
|
11
|
+
parameters;
|
|
12
|
+
sitecore;
|
|
13
|
+
isEditing = false;
|
|
14
|
+
frameProps = {};
|
|
15
|
+
chromeData = '';
|
|
16
|
+
ngOnChanges() {
|
|
17
|
+
this.isEditing = this.sitecore.context.pageEditing || false;
|
|
18
|
+
if (!this.isEditing) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
this.frameProps.class = 'scLooseFrameZone';
|
|
22
|
+
if (this.cssClass) {
|
|
23
|
+
this.frameProps.class = `${this.frameProps.class} ${this.cssClass}`;
|
|
24
|
+
}
|
|
25
|
+
// item uri for edit frame target
|
|
26
|
+
if (this.dataSource) {
|
|
27
|
+
const route = this.sitecore.route;
|
|
28
|
+
const databaseName = this.dataSource.databaseName || route?.databaseName;
|
|
29
|
+
const language = this.dataSource.language || this.sitecore.context.language;
|
|
30
|
+
this.frameProps.sc_item = `sitecore://${databaseName}/${this.dataSource.itemId}?lang=${language}`;
|
|
31
|
+
}
|
|
32
|
+
this.chromeData = this.buildChromeData();
|
|
33
|
+
}
|
|
34
|
+
buildChromeData() {
|
|
35
|
+
const chromeData = {
|
|
36
|
+
displayName: this.title,
|
|
37
|
+
expandedDisplayName: this.tooltip,
|
|
38
|
+
};
|
|
39
|
+
if (this.dataSource) {
|
|
40
|
+
chromeData.contextItemUri = this.frameProps.sc_item;
|
|
41
|
+
}
|
|
42
|
+
chromeData.commands = this.buttons?.map((value) => {
|
|
43
|
+
return mapButtonToCommand(value, this.dataSource?.itemId, this.parameters);
|
|
44
|
+
});
|
|
45
|
+
return JSON.stringify(chromeData);
|
|
46
|
+
}
|
|
47
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditFrameComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
48
48
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditFrameComponent, selector: "sc-edit-frame,[sc-edit-frame]", inputs: { dataSource: "dataSource", buttons: "buttons", title: "title", tooltip: "tooltip", cssClass: "cssClass", parameters: "parameters", sitecore: "sitecore" }, usesOnChanges: true, ngImport: i0, template: `
|
|
49
49
|
<ng-template #childContent>
|
|
50
50
|
<ng-content></ng-content>
|
|
@@ -60,12 +60,12 @@ export class EditFrameComponent {
|
|
|
60
60
|
<ng-template #elseBlock>
|
|
61
61
|
<ng-container *ngTemplateOutlet="childContent"></ng-container>
|
|
62
62
|
</ng-template>
|
|
63
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
64
|
-
}
|
|
65
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditFrameComponent, decorators: [{
|
|
66
|
-
type: Component,
|
|
67
|
-
args: [{
|
|
68
|
-
selector: 'sc-edit-frame,[sc-edit-frame]',
|
|
63
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
64
|
+
}
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditFrameComponent, decorators: [{
|
|
66
|
+
type: Component,
|
|
67
|
+
args: [{
|
|
68
|
+
selector: 'sc-edit-frame,[sc-edit-frame]',
|
|
69
69
|
template: `
|
|
70
70
|
<ng-template #childContent>
|
|
71
71
|
<ng-content></ng-content>
|
|
@@ -81,21 +81,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
81
81
|
<ng-template #elseBlock>
|
|
82
82
|
<ng-container *ngTemplateOutlet="childContent"></ng-container>
|
|
83
83
|
</ng-template>
|
|
84
|
-
`,
|
|
85
|
-
}]
|
|
86
|
-
}], propDecorators: { dataSource: [{
|
|
87
|
-
type: Input
|
|
88
|
-
}], buttons: [{
|
|
89
|
-
type: Input
|
|
90
|
-
}], title: [{
|
|
91
|
-
type: Input
|
|
92
|
-
}], tooltip: [{
|
|
93
|
-
type: Input
|
|
94
|
-
}], cssClass: [{
|
|
95
|
-
type: Input
|
|
96
|
-
}], parameters: [{
|
|
97
|
-
type: Input
|
|
98
|
-
}], sitecore: [{
|
|
99
|
-
type: Input
|
|
100
|
-
}] } });
|
|
84
|
+
`,
|
|
85
|
+
}]
|
|
86
|
+
}], propDecorators: { dataSource: [{
|
|
87
|
+
type: Input
|
|
88
|
+
}], buttons: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}], title: [{
|
|
91
|
+
type: Input
|
|
92
|
+
}], tooltip: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], cssClass: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], parameters: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], sitecore: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}] } });
|
|
101
101
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGZyYW1lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2VkaXRmcmFtZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUlMLGtCQUFrQixHQUNuQixNQUFNLGtDQUFrQyxDQUFDOzs7QUFzQjFDLE1BQU0sT0FBTyxrQkFBa0I7SUFDcEIsVUFBVSxDQUFzQjtJQUVoQyxPQUFPLENBQW9CO0lBRTNCLEtBQUssQ0FBUztJQUVkLE9BQU8sQ0FBUztJQUVoQixRQUFRLENBQVM7SUFFakIsVUFBVSxDQUErRDtJQUV6RSxRQUFRLENBRWY7SUFFRixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLFVBQVUsR0FBNEIsRUFBRSxDQUFDO0lBQ3pDLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFFaEIsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQztRQUM1RCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNuQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxrQkFBa0IsQ0FBQztRQUMzQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDckU7UUFFRCxpQ0FBaUM7UUFDakMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ2xDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxJQUFJLEtBQUssRUFBRSxZQUFZLENBQUM7WUFDekUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQzVFLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxHQUFHLGNBQWMsWUFBWSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxTQUFTLFFBQVEsRUFBRSxDQUFDO1NBQ25HO1FBRUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLFVBQVUsR0FBNEI7WUFDMUMsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ3ZCLG1CQUFtQixFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ2xDLENBQUM7UUFFRixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsVUFBVSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztTQUNyRDtRQUVELFVBQVUsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQ3JDLENBQUMsS0FBSyxFQUFpQixFQUFFO1lBQ3ZCLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3RSxDQUFDLENBQ0YsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO3dHQTVEVSxrQkFBa0I7NEZBQWxCLGtCQUFrQiw4UEFqQm5COzs7Ozs7Ozs7Ozs7Ozs7R0FlVDs7NEZBRVUsa0JBQWtCO2tCQW5COUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsK0JBQStCO29CQUN6QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OztHQWVUO2lCQUNGOzhCQUVVLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBFZGl0RnJhbWVEYXRhU291cmNlLFxyXG4gIENocm9tZUNvbW1hbmQsXHJcbiAgRWRpdEJ1dHRvblR5cGVzLFxyXG4gIG1hcEJ1dHRvblRvQ29tbWFuZCxcclxufSBmcm9tICdAc2l0ZWNvcmUtanNzL3NpdGVjb3JlLWpzcy91dGlscyc7XHJcbmltcG9ydCB7IExheW91dFNlcnZpY2VDb250ZXh0RGF0YSwgUm91dGVEYXRhIH0gZnJvbSAnQHNpdGVjb3JlLWpzcy9zaXRlY29yZS1qc3MvbGF5b3V0JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2MtZWRpdC1mcmFtZSxbc2MtZWRpdC1mcmFtZV0nLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8bmctdGVtcGxhdGUgI2NoaWxkQ29udGVudD5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxkaXZcclxuICAgICAgKm5nSWY9XCJpc0VkaXRpbmc7IGVsc2UgZWxzZUJsb2NrXCJcclxuICAgICAgW2NsYXNzXT1cImZyYW1lUHJvcHMuY2xhc3NcIlxyXG4gICAgICBbYXR0ci5zY19pdGVtXT1cImZyYW1lUHJvcHMuc2NfaXRlbVwiXHJcbiAgICA+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwic2NDaHJvbWVEYXRhXCI+e3sgY2hyb21lRGF0YSB9fTwvc3Bhbj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNoaWxkQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctdGVtcGxhdGUgI2Vsc2VCbG9jaz5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNoaWxkQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWRpdEZyYW1lQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBkYXRhU291cmNlOiBFZGl0RnJhbWVEYXRhU291cmNlO1xyXG5cclxuICBASW5wdXQoKSBidXR0b25zOiBFZGl0QnV0dG9uVHlwZXNbXTtcclxuXHJcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgdG9vbHRpcDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBjc3NDbGFzczogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBwYXJhbWV0ZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgdW5kZWZpbmVkIHwgbnVsbD47XHJcblxyXG4gIEBJbnB1dCgpIHNpdGVjb3JlOiBMYXlvdXRTZXJ2aWNlQ29udGV4dERhdGEgJiB7XHJcbiAgICByb3V0ZTogUm91dGVEYXRhPHVua25vd24+IHwgbnVsbDtcclxuICB9O1xyXG5cclxuICBpc0VkaXRpbmcgPSBmYWxzZTtcclxuICBmcmFtZVByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xyXG4gIGNocm9tZURhdGEgPSAnJztcclxuXHJcbiAgbmdPbkNoYW5nZXMoKSB7XHJcbiAgICB0aGlzLmlzRWRpdGluZyA9IHRoaXMuc2l0ZWNvcmUuY29udGV4dC5wYWdlRWRpdGluZyB8fCBmYWxzZTtcclxuICAgIGlmICghdGhpcy5pc0VkaXRpbmcpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZnJhbWVQcm9wcy5jbGFzcyA9ICdzY0xvb3NlRnJhbWVab25lJztcclxuICAgIGlmICh0aGlzLmNzc0NsYXNzKSB7XHJcbiAgICAgIHRoaXMuZnJhbWVQcm9wcy5jbGFzcyA9IGAke3RoaXMuZnJhbWVQcm9wcy5jbGFzc30gJHt0aGlzLmNzc0NsYXNzfWA7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gaXRlbSB1cmkgZm9yIGVkaXQgZnJhbWUgdGFyZ2V0XHJcbiAgICBpZiAodGhpcy5kYXRhU291cmNlKSB7XHJcbiAgICAgIGNvbnN0IHJvdXRlID0gdGhpcy5zaXRlY29yZS5yb3V0ZTtcclxuICAgICAgY29uc3QgZGF0YWJhc2VOYW1lID0gdGhpcy5kYXRhU291cmNlLmRhdGFiYXNlTmFtZSB8fCByb3V0ZT8uZGF0YWJhc2VOYW1lO1xyXG4gICAgICBjb25zdCBsYW5ndWFnZSA9IHRoaXMuZGF0YVNvdXJjZS5sYW5ndWFnZSB8fCB0aGlzLnNpdGVjb3JlLmNvbnRleHQubGFuZ3VhZ2U7XHJcbiAgICAgIHRoaXMuZnJhbWVQcm9wcy5zY19pdGVtID0gYHNpdGVjb3JlOi8vJHtkYXRhYmFzZU5hbWV9LyR7dGhpcy5kYXRhU291cmNlLml0ZW1JZH0/bGFuZz0ke2xhbmd1YWdlfWA7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jaHJvbWVEYXRhID0gdGhpcy5idWlsZENocm9tZURhdGEoKTtcclxuICB9XHJcblxyXG4gIGJ1aWxkQ2hyb21lRGF0YSgpIHtcclxuICAgIGNvbnN0IGNocm9tZURhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge1xyXG4gICAgICBkaXNwbGF5TmFtZTogdGhpcy50aXRsZSxcclxuICAgICAgZXhwYW5kZWREaXNwbGF5TmFtZTogdGhpcy50b29sdGlwLFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAodGhpcy5kYXRhU291cmNlKSB7XHJcbiAgICAgIGNocm9tZURhdGEuY29udGV4dEl0ZW1VcmkgPSB0aGlzLmZyYW1lUHJvcHMuc2NfaXRlbTtcclxuICAgIH1cclxuXHJcbiAgICBjaHJvbWVEYXRhLmNvbW1hbmRzID0gdGhpcy5idXR0b25zPy5tYXAoXHJcbiAgICAgICh2YWx1ZSk6IENocm9tZUNvbW1hbmQgPT4ge1xyXG4gICAgICAgIHJldHVybiBtYXBCdXR0b25Ub0NvbW1hbmQodmFsdWUsIHRoaXMuZGF0YVNvdXJjZT8uaXRlbUlkLCB0aGlzLnBhcmFtZXRlcnMpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG5cclxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShjaHJvbWVEYXRhKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
import { Directive, Input, } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* File fields cannot be managed via the EE. We never output "editable."
|
|
5
|
-
*/
|
|
6
|
-
export class FileDirective {
|
|
7
|
-
viewContainer;
|
|
8
|
-
templateRef;
|
|
9
|
-
field;
|
|
10
|
-
viewRef;
|
|
11
|
-
constructor(viewContainer, templateRef) {
|
|
12
|
-
this.viewContainer = viewContainer;
|
|
13
|
-
this.templateRef = templateRef;
|
|
14
|
-
}
|
|
15
|
-
ngOnChanges(changes) {
|
|
16
|
-
if (changes.field) {
|
|
17
|
-
if (!this.viewRef) {
|
|
18
|
-
this.viewContainer.clear();
|
|
19
|
-
this.viewRef = this.viewContainer.createEmbeddedView(this.templateRef);
|
|
20
|
-
}
|
|
21
|
-
this.updateView();
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
updateView() {
|
|
25
|
-
const field = this.field;
|
|
26
|
-
if (!field || (!field.value && !field.src)) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
const file = field.src ? field : field.value;
|
|
30
|
-
this.viewRef.rootNodes.forEach((node) => {
|
|
31
|
-
if (!file)
|
|
32
|
-
return;
|
|
33
|
-
node.href = file.src;
|
|
34
|
-
if (node.innerHTML === '') {
|
|
35
|
-
node.innerHTML = file.title || file.displayName;
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
40
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FileDirective, selector: "[scFile]", inputs: { field: ["scFile", "field"] }, usesOnChanges: true, ngImport: i0 });
|
|
41
|
-
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileDirective, decorators: [{
|
|
43
|
-
type: Directive,
|
|
44
|
-
args: [{ selector: '[scFile]' }]
|
|
45
|
-
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }]; }, propDecorators: { field: [{
|
|
46
|
-
type: Input,
|
|
47
|
-
args: ['scFile']
|
|
48
|
-
}] } });
|
|
1
|
+
import { Directive, Input, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* File fields cannot be managed via the EE. We never output "editable."
|
|
5
|
+
*/
|
|
6
|
+
export class FileDirective {
|
|
7
|
+
viewContainer;
|
|
8
|
+
templateRef;
|
|
9
|
+
field;
|
|
10
|
+
viewRef;
|
|
11
|
+
constructor(viewContainer, templateRef) {
|
|
12
|
+
this.viewContainer = viewContainer;
|
|
13
|
+
this.templateRef = templateRef;
|
|
14
|
+
}
|
|
15
|
+
ngOnChanges(changes) {
|
|
16
|
+
if (changes.field) {
|
|
17
|
+
if (!this.viewRef) {
|
|
18
|
+
this.viewContainer.clear();
|
|
19
|
+
this.viewRef = this.viewContainer.createEmbeddedView(this.templateRef);
|
|
20
|
+
}
|
|
21
|
+
this.updateView();
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
updateView() {
|
|
25
|
+
const field = this.field;
|
|
26
|
+
if (!field || (!field.value && !field.src)) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const file = field.src ? field : field.value;
|
|
30
|
+
this.viewRef.rootNodes.forEach((node) => {
|
|
31
|
+
if (!file)
|
|
32
|
+
return;
|
|
33
|
+
node.href = file.src;
|
|
34
|
+
if (node.innerHTML === '') {
|
|
35
|
+
node.innerHTML = file.title || file.displayName;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
40
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FileDirective, selector: "[scFile]", inputs: { field: ["scFile", "field"] }, usesOnChanges: true, ngImport: i0 });
|
|
41
|
+
}
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileDirective, decorators: [{
|
|
43
|
+
type: Directive,
|
|
44
|
+
args: [{ selector: '[scFile]' }]
|
|
45
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }]; }, propDecorators: { field: [{
|
|
46
|
+
type: Input,
|
|
47
|
+
args: ['scFile']
|
|
48
|
+
}] } });
|
|
49
49
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9maWxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssR0FLTixNQUFNLGVBQWUsQ0FBQzs7QUFHdkI7O0dBRUc7QUFFSCxNQUFNLE9BQU8sYUFBYTtJQUtKO0lBQXlDO0lBSjVDLEtBQUssQ0FBWTtJQUUxQixPQUFPLENBQTJCO0lBRTFDLFlBQW9CLGFBQStCLEVBQVUsV0FBaUM7UUFBMUUsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO0lBQUcsQ0FBQztJQUVsRyxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ3hFO1lBRUQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVPLFVBQVU7UUFDaEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUV6QixJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzFDLE9BQU87U0FDUjtRQUVELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsSUFBSTtnQkFBRSxPQUFPO1lBRWxCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNyQixJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssRUFBRSxFQUFFO2dCQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQzthQUNqRDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0FsQ1UsYUFBYTs0RkFBYixhQUFhOzs0RkFBYixhQUFhO2tCQUR6QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRTtpSUFFaEIsS0FBSztzQkFBckIsS0FBSzt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRW1iZWRkZWRWaWV3UmVmLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZpbGVGaWVsZCB9IGZyb20gJy4vcmVuZGVyaW5nLWZpZWxkJztcclxuXHJcbi8qKlxyXG4gKiBGaWxlIGZpZWxkcyBjYW5ub3QgYmUgbWFuYWdlZCB2aWEgdGhlIEVFLiBXZSBuZXZlciBvdXRwdXQgXCJlZGl0YWJsZS5cIlxyXG4gKi9cclxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW3NjRmlsZV0nIH0pXHJcbmV4cG9ydCBjbGFzcyBGaWxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoJ3NjRmlsZScpIGZpZWxkOiBGaWxlRmllbGQ7XHJcblxyXG4gIHByaXZhdGUgdmlld1JlZjogRW1iZWRkZWRWaWV3UmVmPHVua25vd24+O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPHVua25vd24+KSB7fVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlcy5maWVsZCkge1xyXG4gICAgICBpZiAoIXRoaXMudmlld1JlZikge1xyXG4gICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jbGVhcigpO1xyXG4gICAgICAgIHRoaXMudmlld1JlZiA9IHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMudXBkYXRlVmlldygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVWaWV3KCkge1xyXG4gICAgY29uc3QgZmllbGQgPSB0aGlzLmZpZWxkO1xyXG5cclxuICAgIGlmICghZmllbGQgfHwgKCFmaWVsZC52YWx1ZSAmJiAhZmllbGQuc3JjKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZmlsZSA9IGZpZWxkLnNyYyA/IGZpZWxkIDogZmllbGQudmFsdWU7XHJcbiAgICB0aGlzLnZpZXdSZWYucm9vdE5vZGVzLmZvckVhY2goKG5vZGUpID0+IHtcclxuICAgICAgaWYgKCFmaWxlKSByZXR1cm47XHJcblxyXG4gICAgICBub2RlLmhyZWYgPSBmaWxlLnNyYztcclxuICAgICAgaWYgKG5vZGUuaW5uZXJIVE1MID09PSAnJykge1xyXG4gICAgICAgIG5vZGUuaW5uZXJIVE1MID0gZmlsZS50aXRsZSB8fCBmaWxlLmRpc3BsYXlOYW1lO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|