@eui/ecl 18.0.0-next.24 → 18.0.0-next.26
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/docs/components/EclNavigationListComponent.html +83 -1
- package/docs/components/EclNavigationListItemComponent.html +28 -5
- package/docs/dependencies.html +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/esm2022/lib/components/ecl-navigation-list/ecl-navigation-list-item.component.mjs +15 -10
- package/esm2022/lib/components/ecl-navigation-list/ecl-navigation-list.component.mjs +23 -12
- package/fesm2022/eui-ecl.mjs +140 -124
- package/fesm2022/eui-ecl.mjs.map +3 -3
- package/lib/components/ecl-navigation-list/ecl-navigation-list-item.component.d.ts +4 -3
- package/lib/components/ecl-navigation-list/ecl-navigation-list-item.component.d.ts.map +1 -1
- package/lib/components/ecl-navigation-list/ecl-navigation-list.component.d.ts +10 -3
- package/lib/components/ecl-navigation-list/ecl-navigation-list.component.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -5,11 +5,16 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
export class EclNavigationListItemComponent extends ECLBaseDirective {
|
|
6
6
|
constructor() {
|
|
7
7
|
super(...arguments);
|
|
8
|
-
this.columns = 2;
|
|
9
8
|
this.role = 'article';
|
|
9
|
+
this.variant = '';
|
|
10
|
+
this.hasBorder = true;
|
|
10
11
|
}
|
|
11
12
|
get cssClasses() {
|
|
12
|
-
return [
|
|
13
|
+
return [
|
|
14
|
+
super.getCssClasses('ecl-navigation-list__item'),
|
|
15
|
+
this.hasBorder ? '' : 'ecl-navigation-list__item--no-border',
|
|
16
|
+
this.variant === 'illustration' ? 'ecl-navigation-list__item--illustration' : '',
|
|
17
|
+
].join(' ').trim();
|
|
13
18
|
}
|
|
14
19
|
ngAfterContentInit() {
|
|
15
20
|
if (this.eclContentBlock) {
|
|
@@ -17,21 +22,21 @@ export class EclNavigationListItemComponent extends ECLBaseDirective {
|
|
|
17
22
|
}
|
|
18
23
|
}
|
|
19
24
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclNavigationListItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-next.3", type: EclNavigationListItemComponent, selector: "ecl-navigation-list-item", inputs: {
|
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-next.3", type: EclNavigationListItemComponent, selector: "ecl-navigation-list-item", inputs: { variant: "variant" }, host: { properties: { "attr.role": "this.role", "class": "this.cssClasses" } }, queries: [{ propertyName: "eclContentBlock", first: true, predicate: i0.forwardRef(() => EclContentBlockComponent), descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n" }); }
|
|
21
26
|
}
|
|
22
27
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclNavigationListItemComponent, decorators: [{
|
|
23
28
|
type: Component,
|
|
24
29
|
args: [{ selector: 'ecl-navigation-list-item', template: "<ng-content></ng-content>\n" }]
|
|
25
|
-
}], propDecorators: {
|
|
26
|
-
type: Input
|
|
27
|
-
}], eclContentBlock: [{
|
|
28
|
-
type: ContentChild,
|
|
29
|
-
args: [forwardRef(() => EclContentBlockComponent)]
|
|
30
|
-
}], role: [{
|
|
30
|
+
}], propDecorators: { role: [{
|
|
31
31
|
type: HostBinding,
|
|
32
32
|
args: ['attr.role']
|
|
33
33
|
}], cssClasses: [{
|
|
34
34
|
type: HostBinding,
|
|
35
35
|
args: ['class']
|
|
36
|
+
}], variant: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], eclContentBlock: [{
|
|
39
|
+
type: ContentChild,
|
|
40
|
+
args: [forwardRef(() => EclContentBlockComponent)]
|
|
36
41
|
}] } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW5hdmlnYXRpb24tbGlzdC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbmF2aWdhdGlvbi1saXN0L2VjbC1uYXZpZ2F0aW9uLWxpc3QtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW5hdmlnYXRpb24tbGlzdC9lY2wtbmF2aWdhdGlvbi1saXN0LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQU1oRSxNQUFNLE9BQU8sOEJBQStCLFNBQVEsZ0JBQWdCO0lBSnBFOztRQU04QixTQUFJLEdBQUcsU0FBUyxDQUFDO1FBU2xDLFlBQU8sR0FBd0IsRUFBRSxDQUFDO1FBSTNDLGNBQVMsR0FBRyxJQUFJLENBQUM7S0FPcEI7SUFuQkcsSUFDSSxVQUFVO1FBQ1YsT0FBTztZQUNILEtBQUssQ0FBQyxhQUFhLENBQUMsMkJBQTJCLENBQUM7WUFDaEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxzQ0FBc0M7WUFDNUQsSUFBSSxDQUFDLE9BQU8sS0FBSyxjQUFjLENBQUMsQ0FBQyxDQUFDLHlDQUF5QyxDQUFBLENBQUMsQ0FBQyxFQUFFO1NBQ2xGLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFPRCxrQkFBa0I7UUFDZCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssR0FBRyxvQ0FBb0MsQ0FBQztRQUN0RSxDQUFDO0lBQ0wsQ0FBQztxSEFyQlEsOEJBQThCO3lHQUE5Qiw4QkFBOEIsaVBBYVIsd0JBQXdCLHdFQ3JCM0QsNkJBQ0E7O2tHRE9hLDhCQUE4QjtrQkFKMUMsU0FBUzsrQkFDSSwwQkFBMEI7OEJBS1YsSUFBSTtzQkFBN0IsV0FBVzt1QkFBQyxXQUFXO2dCQUVwQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsT0FBTztnQkFRWCxPQUFPO3NCQUFmLEtBQUs7Z0JBRW9ELGVBQWU7c0JBQXhFLFlBQVk7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIGZvcndhcmRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRUNMQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4uL2VjbC1iYXNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFY2xDb250ZW50QmxvY2tDb21wb25lbnQgfSBmcm9tICcuLi9lY2wtY29udGVudC1ibG9jayc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLW5hdmlnYXRpb24tbGlzdC1pdGVtJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2VjbC1uYXZpZ2F0aW9uLWxpc3QtaXRlbS5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEVjbE5hdmlnYXRpb25MaXN0SXRlbUNvbXBvbmVudCBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5yb2xlJykgcm9sZSA9ICdhcnRpY2xlJztcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLW5hdmlnYXRpb24tbGlzdF9faXRlbScpLFxuICAgICAgICAgICAgdGhpcy5oYXNCb3JkZXIgPyAnJyA6ICdlY2wtbmF2aWdhdGlvbi1saXN0X19pdGVtLS1uby1ib3JkZXInLFxuICAgICAgICAgICAgdGhpcy52YXJpYW50ID09PSAnaWxsdXN0cmF0aW9uJyA/ICdlY2wtbmF2aWdhdGlvbi1saXN0X19pdGVtLS1pbGx1c3RyYXRpb24nOiAnJyxcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbiAgICBASW5wdXQoKSB2YXJpYW50OiAnaWxsdXN0cmF0aW9uJyB8ICcnID0gJyc7XG5cbiAgICBAQ29udGVudENoaWxkKGZvcndhcmRSZWYoKCkgPT4gRWNsQ29udGVudEJsb2NrQ29tcG9uZW50KSkgZWNsQ29udGVudEJsb2NrOiBFY2xDb250ZW50QmxvY2tDb21wb25lbnQ7XG5cbiAgICBoYXNCb3JkZXIgPSB0cnVlO1xuICAgIFxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZWNsQ29udGVudEJsb2NrKSB7XG4gICAgICAgICAgICB0aGlzLmVjbENvbnRlbnRCbG9jay5jbGFzcyA9ICdlY2wtbmF2aWdhdGlvbi1saXN0X19jb250ZW50LWJsb2NrJztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
|
|
@@ -1,30 +1,41 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Component, HostBinding, Input } from '@angular/core';
|
|
3
|
-
import { coerceNumber } from '@eui/base';
|
|
1
|
+
import { Component, ContentChildren, HostBinding, Input, booleanAttribute, forwardRef, numberAttribute } from '@angular/core';
|
|
4
2
|
import { ECLBaseDirective } from '../ecl-base.directive';
|
|
3
|
+
import { EclNavigationListItemComponent } from './ecl-navigation-list-item.component';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
export class EclNavigationListComponent extends ECLBaseDirective {
|
|
7
6
|
constructor() {
|
|
8
7
|
super(...arguments);
|
|
9
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
10
8
|
this.columns = 2;
|
|
9
|
+
this.hasBorders = true;
|
|
11
10
|
}
|
|
12
11
|
get cssClasses() {
|
|
13
12
|
return [super.getCssClasses('ecl-navigation-list'), `ecl-navigation-list--col-${this.columns}`].join(' ').trim();
|
|
14
13
|
}
|
|
14
|
+
ngAfterContentInit() {
|
|
15
|
+
setTimeout(() => {
|
|
16
|
+
if (!this.hasBorders) {
|
|
17
|
+
console.log(this.listItems);
|
|
18
|
+
this.listItems.forEach(item => item.hasBorder = false);
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
}
|
|
15
22
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclNavigationListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.0-next.3", type: EclNavigationListComponent, selector: "ecl-navigation-list", inputs: { columns: ["columns", "columns", numberAttribute], hasBorders: ["hasBorders", "hasBorders", booleanAttribute] }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "listItems", predicate: i0.forwardRef(() => EclNavigationListItemComponent) }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n" }); }
|
|
17
24
|
}
|
|
18
|
-
__decorate([
|
|
19
|
-
coerceNumber
|
|
20
|
-
], EclNavigationListComponent.prototype, "columns", void 0);
|
|
21
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclNavigationListComponent, decorators: [{
|
|
22
26
|
type: Component,
|
|
23
27
|
args: [{ selector: 'ecl-navigation-list', template: "<ng-content></ng-content>\n" }]
|
|
24
|
-
}], propDecorators: {
|
|
25
|
-
type: Input
|
|
26
|
-
}], cssClasses: [{
|
|
28
|
+
}], propDecorators: { cssClasses: [{
|
|
27
29
|
type: HostBinding,
|
|
28
30
|
args: ['class']
|
|
31
|
+
}], columns: [{
|
|
32
|
+
type: Input,
|
|
33
|
+
args: [{ transform: numberAttribute }]
|
|
34
|
+
}], hasBorders: [{
|
|
35
|
+
type: Input,
|
|
36
|
+
args: [{ transform: booleanAttribute }]
|
|
37
|
+
}], listItems: [{
|
|
38
|
+
type: ContentChildren,
|
|
39
|
+
args: [forwardRef(() => EclNavigationListItemComponent)]
|
|
29
40
|
}] } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW5hdmlnYXRpb24tbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW5hdmlnYXRpb24tbGlzdC9lY2wtbmF2aWdhdGlvbi1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbmF2aWdhdGlvbi1saXN0L2VjbC1uYXZpZ2F0aW9uLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQWEsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzSixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7QUFNdEYsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGdCQUFnQjtJQUpoRTs7UUFXMkMsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNYLGVBQVUsR0FBRyxJQUFJLENBQUM7S0FZN0Q7SUFsQkcsSUFDSSxVQUFVO1FBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsRUFBRSw0QkFBNEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JILENBQUM7SUFPRCxrQkFBa0I7UUFDZCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQztZQUMzRCxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3FIQW5CUSwwQkFBMEI7eUdBQTFCLDBCQUEwQiw2RUFPZixlQUFlLDRDQUNmLGdCQUFnQixpSUFFRiw4QkFBOEIscURDbEJwRSw2QkFDQTs7a0dET2EsMEJBQTBCO2tCQUp0QyxTQUFTOytCQUNJLHFCQUFxQjs4QkFNM0IsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU87Z0JBS21CLE9BQU87c0JBQTdDLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUNHLFVBQVU7c0JBQWpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBRTZCLFNBQVM7c0JBQTNFLGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEhvc3RCaW5kaW5nLCBJbnB1dCwgUXVlcnlMaXN0LCBib29sZWFuQXR0cmlidXRlLCBmb3J3YXJkUmVmLCBudW1iZXJBdHRyaWJ1dGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsTmF2aWdhdGlvbkxpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9lY2wtbmF2aWdhdGlvbi1saXN0LWl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlY2wtbmF2aWdhdGlvbi1saXN0JyxcbiAgICB0ZW1wbGF0ZVVybDogJ2VjbC1uYXZpZ2F0aW9uLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xOYXZpZ2F0aW9uTGlzdENvbXBvbmVudCBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLW5hdmlnYXRpb24tbGlzdCcpLCBgZWNsLW5hdmlnYXRpb24tbGlzdC0tY29sLSR7dGhpcy5jb2x1bW5zfWBdLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSkgY29sdW1ucyA9IDI7XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGhhc0JvcmRlcnMgPSB0cnVlO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEVjbE5hdmlnYXRpb25MaXN0SXRlbUNvbXBvbmVudCkpIGxpc3RJdGVtczogUXVlcnlMaXN0PEVjbE5hdmlnYXRpb25MaXN0SXRlbUNvbXBvbmVudD47XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmhhc0JvcmRlcnMpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmxpc3RJdGVtcyk7XG4gICAgICAgICAgICAgICAgdGhpcy5saXN0SXRlbXMuZm9yRWFjaChpdGVtID0+IGl0ZW0uaGFzQm9yZGVyID0gZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
|