@eui/showcase 15.0.0-next.9 → 15.0.0-rc.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.
Files changed (29) hide show
  1. package/esm2020/lib/components/doc-page/doc-page.component.mjs +46 -29
  2. package/esm2020/lib/components/doc-page-code/doc-page-code.component.mjs +1 -1
  3. package/esm2020/lib/components/doc-page-code-fab/doc-page-code-fab.component.mjs +1 -1
  4. package/esm2020/lib/components/doc-page-pattern/doc-page-pattern.component.mjs +70 -0
  5. package/esm2020/lib/components/doc-sample/doc-sample.component.mjs +19 -8
  6. package/esm2020/lib/components/doc-section-code/doc-section-code.component.mjs +1 -1
  7. package/esm2020/lib/components/index.mjs +4 -1
  8. package/esm2020/lib/components/playground/playground.component.mjs +203 -0
  9. package/esm2020/lib/components/playground/stackblitz.files.mjs +208 -0
  10. package/esm2020/lib/eui-showcase.module.mjs +27 -6
  11. package/fesm2015/eui-showcase.mjs +567 -55
  12. package/fesm2015/eui-showcase.mjs.map +1 -1
  13. package/fesm2020/eui-showcase.mjs +569 -55
  14. package/fesm2020/eui-showcase.mjs.map +1 -1
  15. package/lib/components/doc-page/doc-page.component.d.ts +4 -1
  16. package/lib/components/doc-page/doc-page.component.d.ts.map +1 -1
  17. package/lib/components/doc-page-pattern/doc-page-pattern.component.d.ts +28 -0
  18. package/lib/components/doc-page-pattern/doc-page-pattern.component.d.ts.map +1 -0
  19. package/lib/components/doc-sample/doc-sample.component.d.ts +14 -0
  20. package/lib/components/doc-sample/doc-sample.component.d.ts.map +1 -1
  21. package/lib/components/index.d.ts +3 -0
  22. package/lib/components/index.d.ts.map +1 -1
  23. package/lib/components/playground/playground.component.d.ts +62 -0
  24. package/lib/components/playground/playground.component.d.ts.map +1 -0
  25. package/lib/components/playground/stackblitz.files.d.ts +16 -0
  26. package/lib/components/playground/stackblitz.files.d.ts.map +1 -0
  27. package/lib/eui-showcase.module.d.ts +13 -9
  28. package/lib/eui-showcase.module.d.ts.map +1 -1
  29. package/package.json +1 -1
@@ -0,0 +1,203 @@
1
+ import { Component, ElementRef, Input, ViewChild } from '@angular/core';
2
+ import sdk from '@stackblitz/sdk';
3
+ import { lastValueFrom } from 'rxjs';
4
+ import { angularJsonFile, indexHtmlFile, mainFile, PACKAGE_JSON, polyfillsFile, tsConfig } from './stackblitz.files';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@eui/core";
7
+ import * as i2 from "@angular/common/http";
8
+ import * as i3 from "@eui/components/eui-block-content";
9
+ export class PlaygroundComponent {
10
+ constructor(renderer, elementRef, appShell, http) {
11
+ this.renderer = renderer;
12
+ this.elementRef = elementRef;
13
+ this.appShell = appShell;
14
+ this.http = http;
15
+ this.title = 'eUI Playground';
16
+ this.activated = false;
17
+ this.isLoaded = false;
18
+ }
19
+ ngOnChanges(changes) {
20
+ if (changes.activated) {
21
+ if (changes.activated.currentValue) {
22
+ this.initStackblitz();
23
+ }
24
+ else {
25
+ this.isLoaded = false;
26
+ }
27
+ }
28
+ }
29
+ initStackblitz() {
30
+ this.getStackblitzDependencies()
31
+ .then((deps) => {
32
+ const { dependencies, devDependencies } = deps;
33
+ const { selector, className } = this.extractComponentMetadata(this.typescriptContent);
34
+ const moduleName = this.extractModuleName(this.typescriptContent);
35
+ return sdk.embedProject('stackblitz', {
36
+ title: this.title,
37
+ description: `An eUI example for the ${this.title}.`,
38
+ template: 'angular-cli',
39
+ files: {
40
+ 'src/component.html': this.htmlContent,
41
+ 'src/component.ts': this.appendVitalNgModules(this.typescriptContent),
42
+ // 'src/app.module.ts': moduleFile(className, this.modules),
43
+ 'src/main.ts': mainFile(moduleName),
44
+ 'src/polyfills.ts': polyfillsFile,
45
+ 'src/index.html': indexHtmlFile(selector),
46
+ 'angular.json': angularJsonFile,
47
+ 'package.json': JSON.stringify({
48
+ ...PACKAGE_JSON,
49
+ dependencies,
50
+ devDependencies,
51
+ }, null, 2),
52
+ 'tsconfig.json': tsConfig
53
+ },
54
+ settings: {
55
+ compile: {
56
+ trigger: 'auto',
57
+ clearConsole: false,
58
+ },
59
+ },
60
+ dependencies,
61
+ }, {
62
+ openFile: ['component.ts'],
63
+ height: 500,
64
+ });
65
+ })
66
+ .then((instance) => {
67
+ this.stackblitzInstance = instance;
68
+ this.isLoaded = true;
69
+ });
70
+ }
71
+ /**
72
+ * Retrieve only the dependencies that stackblitz will need filtered from @eui/deps-base
73
+ *
74
+ * @private
75
+ */
76
+ getStackblitzDependencies() {
77
+ // a list of dependencies only stackblitz needs
78
+ const stackblitzDependencies = [
79
+ '@angular/animations',
80
+ '@angular/cdk',
81
+ '@angular/common',
82
+ '@angular/compiler',
83
+ '@angular/core',
84
+ '@angular/forms',
85
+ '@angular/material',
86
+ '@angular/material-moment-adapter',
87
+ '@angular/platform-browser',
88
+ '@angular/platform-browser-dynamic',
89
+ '@angular/router',
90
+ '@eui/base',
91
+ '@eui/components',
92
+ '@eui/core',
93
+ '@eui/styles',
94
+ '@eui/styles-base',
95
+ '@ngrx/effects',
96
+ '@ngrx/store',
97
+ '@ngx-translate/core',
98
+ 'localforage',
99
+ 'lodash-es',
100
+ 'reselect',
101
+ 'rxjs',
102
+ 'tslib',
103
+ 'zone.js'
104
+ ];
105
+ const stackblitzDevDependencies = [
106
+ '@angular-devkit/build-angular',
107
+ '@angular/cli',
108
+ '@angular/compiler-cli',
109
+ 'typescript'
110
+ ];
111
+ return this.getCurrentShowcaseEuiVersion()
112
+ .then((version) => this.retrievePackageDependencies(version))
113
+ .then((dependencies) => {
114
+ // filter dependencies to only what stackblitz needs
115
+ let filteredArr = Object.entries(dependencies)
116
+ .filter((v) => stackblitzDependencies.find(s => s === v[0]));
117
+ let filteredObj = Object.fromEntries(filteredArr);
118
+ let extraDependencies = {
119
+ uuid: '8.3.2',
120
+ 'ngx-device-detector': '3.0.0',
121
+ 'ngx-moment': '~6.0.0',
122
+ 'ngx-mask': '^14.0.0',
123
+ 'cleave.js': '^1.6.0',
124
+ moment: '^2.19.3',
125
+ extend: '^3.0.2',
126
+ };
127
+ // filter devDependencies to only what stackblitz needs
128
+ filteredArr = Object.entries(dependencies)
129
+ .filter((v) => stackblitzDevDependencies.find(s => s === v[0]));
130
+ dependencies = { ...extraDependencies, ...filteredObj };
131
+ let devDependencies = Object.fromEntries(filteredArr);
132
+ return { dependencies, devDependencies };
133
+ });
134
+ }
135
+ /**
136
+ * Retrieve the dependencies from the package.json file of @eui/deps-base for the given version.
137
+ *
138
+ * @param version
139
+ * @private
140
+ */
141
+ retrievePackageDependencies(version) {
142
+ return fetch(`https://unpkg.com/@eui/deps-base@${version}/package.json`)
143
+ .then((response) => response.json())
144
+ .then((pkg) => pkg?.dependencies);
145
+ }
146
+ /**
147
+ * Retrieve the eUI version used to build the showcase from application app-metadata.json
148
+ *
149
+ * @private
150
+ */
151
+ getCurrentShowcaseEuiVersion() {
152
+ return lastValueFrom(this.http.get('assets/app-metadata.json', { responseType: 'json' }))
153
+ .then((res) => res?.appVersion || 'latest');
154
+ }
155
+ /**
156
+ * extract the name of the component class name and selector name from the typescript content
157
+ *
158
+ * @param contents
159
+ * @private
160
+ */
161
+ extractComponentMetadata(contents) {
162
+ const className = contents.match(/export class ([\w\d]+)/);
163
+ const selectorName = contents.match(/selector: '([\w\d-]+)'/);
164
+ return { className: className ? className[1] : '', selector: selectorName ? selectorName[1] : '' };
165
+ }
166
+ /**
167
+ * extract module class name from the typescript content
168
+ *
169
+ * @param contents
170
+ * @private
171
+ */
172
+ extractModuleName(contents) {
173
+ const moduleClass = contents.match(/export class (\w+Module)/);
174
+ return moduleClass ? moduleClass[1] : '';
175
+ }
176
+ appendVitalNgModules(contents) {
177
+ const imports = contents.match(/imports: \[([\s\S]*?)\]/);
178
+ // appends BrowserModule to imports
179
+ contents = contents.replace(/imports: \[([\s\S]*?)\]/, `imports: [BrowserModule, $1]`);
180
+ // appends import of BrowserModule
181
+ return `import { BrowserModule } from '@angular/platform-browser';\n${contents}`;
182
+ }
183
+ }
184
+ /** @nocollapse */ PlaygroundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: PlaygroundComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.UxAppShellService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
185
+ /** @nocollapse */ PlaygroundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0-next.4", type: PlaygroundComponent, selector: "eui-playground", inputs: { title: "title", htmlContent: "htmlContent", typescriptContent: "typescriptContent", activated: "activated", modules: "modules" }, viewQueries: [{ propertyName: "stackblitzElWrapper", first: true, predicate: ["container"], descendants: true, read: ElementRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<eui-block-content [isBlocked]=\"!isLoaded\">\n <iframe #container id=\"stackblitz\"></iframe>\n</eui-block-content>\n", dependencies: [{ kind: "component", type: i3.EuiBlockContentComponent, selector: "eui-block-content", inputs: ["isBlocked"] }] });
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: PlaygroundComponent, decorators: [{
187
+ type: Component,
188
+ args: [{ selector: 'eui-playground', template: "<eui-block-content [isBlocked]=\"!isLoaded\">\n <iframe #container id=\"stackblitz\"></iframe>\n</eui-block-content>\n" }]
189
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.UxAppShellService }, { type: i2.HttpClient }]; }, propDecorators: { title: [{
190
+ type: Input
191
+ }], htmlContent: [{
192
+ type: Input
193
+ }], typescriptContent: [{
194
+ type: Input
195
+ }], activated: [{
196
+ type: Input
197
+ }], modules: [{
198
+ type: Input
199
+ }], stackblitzElWrapper: [{
200
+ type: ViewChild,
201
+ args: ['container', { read: ElementRef, static: true }]
202
+ }] } });
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxheWdyb3VuZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGxheWdyb3VuZC9wbGF5Z3JvdW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wbGF5Z3JvdW5kL3BsYXlncm91bmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUlMLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEdBQWdDLE1BQU0saUJBQWlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQ0gsZUFBZSxFQUNmLGFBQWEsRUFDYixRQUFRLEVBRVIsWUFBWSxFQUNaLGFBQWEsRUFDYixRQUFRLEVBQ1gsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7QUFNNUIsTUFBTSxPQUFPLG1CQUFtQjtJQWtCNUIsWUFBb0IsUUFBbUIsRUFDbkIsVUFBc0IsRUFDdEIsUUFBMkIsRUFDM0IsSUFBZ0I7UUFIaEIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLGFBQVEsR0FBUixRQUFRLENBQW1CO1FBQzNCLFNBQUksR0FBSixJQUFJLENBQVk7UUFsQjdCLFVBQUssR0FBVyxnQkFBZ0IsQ0FBQztRQU1qQyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBRzNCLGFBQVEsR0FBWSxLQUFLLENBQUM7SUFVakMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDbkIsSUFBRyxPQUFPLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRTtnQkFDL0IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2FBQ3pCO2lCQUFNO2dCQUNI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QUF5QixDQUFDLENBQUM7UUFDMUQsbUNBQW1DO1FBQ25DLFFBQVEsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLHlCQUF5QixFQUFFLDhCQUE4QixDQUFDLENBQUM7UUFDdkYsa0NBQWtDO1FBQ2xDLE9BQU8sK0RBQStELFFBQVEsRUFBRSxDQUFDO0lBQ3JGLENBQUM7OzBJQXhNUSxtQkFBbUI7OEhBQW5CLG1CQUFtQiwrUkFhRyxVQUFVLGdFQ3hDN0MsMkhBR0E7a0dEd0JhLG1CQUFtQjtrQkFKL0IsU0FBUzsrQkFDSSxnQkFBZ0I7a0xBTW5CLEtBQUs7c0JBRFgsS0FBSztnQkFHQyxXQUFXO3NCQURqQixLQUFLO2dCQUdDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFHQyxTQUFTO3NCQURmLEtBQUs7Z0JBR0MsT0FBTztzQkFEYixLQUFLO2dCQUlFLG1CQUFtQjtzQkFEMUIsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBSZW5kZXJlcjIsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVeEFwcFNoZWxsU2VydmljZSB9IGZyb20gJ0BldWkvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHNkaywgeyBQcm9qZWN0RGVwZW5kZW5jaWVzLCBWTSB9IGZyb20gJ0BzdGFja2JsaXR6L3Nkayc7XG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIGFuZ3VsYXJKc29uRmlsZSxcbiAgICBpbmRleEh0bWxGaWxlLFxuICAgIG1haW5GaWxlLFxuICAgIG1vZHVsZUZpbGUsXG4gICAgUEFDS0FHRV9KU09OLFxuICAgIHBvbHlmaWxsc0ZpbGUsXG4gICAgdHNDb25maWdcbn0gZnJvbSAnLi9zdGFja2JsaXR6LmZpbGVzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktcGxheWdyb3VuZCcsXG4gICAgdGVtcGxhdGVVcmw6IGBwbGF5Z3JvdW5kLmNvbXBvbmVudC5odG1sYCxcbn0pXG5leHBvcnQgY2xhc3MgUGxheWdyb3VuZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0aXRsZTogc3RyaW5nID0gJ2VVSSBQbGF5Z3JvdW5kJztcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBodG1sQ29udGVudDogc3RyaW5nO1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHR5cGVzY3JpcHRDb250ZW50OiBzdHJpbmc7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYWN0aXZhdGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbW9kdWxlczogW3tuYW1lOiBzdHJpbmc7IHBhdGg6IHN0cmluZzt9XTtcbiAgICBwdWJsaWMgaXNMb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7cmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlfSlcbiAgICBwcml2YXRlIHN0YWNrYmxpdHpFbFdyYXBwZXI6IEVsZW1lbnRSZWY8SFRNTElGcmFtZUVsZW1lbnQ+O1xuICAgIC8qKiBpbnN0YW5jZSB0aGF0IGhvbGRzIHRoZSBzdGFja2JsaXR6IFZNIG9iamVjdCAqL1xuICAgIHByaXZhdGUgc3RhY2tibGl0ekluc3RhbmNlOiBWTTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgICAgICAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBhcHBTaGVsbDogVXhBcHBTaGVsbFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5hY3RpdmF0ZWQpIHtcbiAgICAgICAgICAgIGlmKGNoYW5nZXMuYWN0aXZhdGVkLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdFN0YWNrYmxpdHooKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRlZCA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0U3RhY2tibGl0eigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nZXRTdGFja2JsaXR6RGVwZW5kZW5jaWVzKClcbiAgICAgICAgICAgIC50aGVuKChkZXBzKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qge2RlcGVuZGVuY2llcywgZGV2RGVwZW5kZW5jaWVzfSA9IGRlcHM7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBzZWxlY3RvciwgY2xhc3NOYW1lIH0gPSB0aGlzLmV4dHJhY3RDb21wb25lbnRNZXRhZGF0YSh0aGlzLnR5cGVzY3JpcHRDb250ZW50KTtcbiAgICAgICAgICAgICAgICBjb25zdCBtb2R1bGVOYW1lID0gdGhpcy5leHRyYWN0TW9kdWxlTmFtZSh0aGlzLnR5cGVzY3JpcHRDb250ZW50KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2RrLmVtYmVkUHJvamVjdChcbiAgICAgICAgICAgICAgICAgICAgJ3N0YWNrYmxpdHonLFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogdGhpcy50aXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgQW4gZVVJIGV4YW1wbGUgZm9yIHRoZSAke3RoaXMudGl0bGV9LmAsXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZTogJ2FuZ3VsYXItY2xpJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NyYy9jb21wb25lbnQuaHRtbCc6IHRoaXMuaHRtbENvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NyYy9jb21wb25lbnQudHMnOiB0aGlzLmFwcGVuZFZpdGFsTmdNb2R1bGVzKHRoaXMudHlwZXNjcmlwdENvbnRlbnQpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICdzcmMvYXBwLm1vZHVsZS50cyc6IG1vZHVsZUZpbGUoY2xhc3NOYW1lLCB0aGlzLm1vZHVsZXMpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzcmMvbWFpbi50cyc6IG1haW5GaWxlKG1vZHVsZU5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzcmMvcG9seWZpbGxzLnRzJzogcG9seWZpbGxzRmlsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3JjL2luZGV4Lmh0bWwnOiBpbmRleEh0bWxGaWxlKHNlbGVjdG9yKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYW5ndWxhci5qc29uJzogYW5ndWxhckpzb25GaWxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwYWNrYWdlLmpzb24nOiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLlBBQ0tBR0VfSlNPTixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kZW5jaWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXZEZXBlbmRlbmNpZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgbnVsbCwgMiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RzY29uZmlnLmpzb24nOiB0c0NvbmZpZ1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyOiAnYXV0bycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyQ29uc29sZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXBlbmRlbmNpZXMsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5GaWxlOiBbJ2NvbXBvbmVudC50cyddLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MDAsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAudGhlbigoaW5zdGFuY2U6IFZNKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGFja2JsaXR6SW5zdGFuY2UgPSBpbnN0YW5jZTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlIG9ubHkgdGhlIGRlcGVuZGVuY2llcyB0aGF0IHN0YWNrYmxpdHogd2lsbCBuZWVkIGZpbHRlcmVkIGZyb20gQGV1aS9kZXBzLWJhc2VcbiAgICAgKlxuICAgICAqIEBwcml2YXRlXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRTdGFja2JsaXR6RGVwZW5kZW5jaWVzKCk6IFByb21pc2U8eyBkZXBlbmRlbmNpZXM6IFByb2plY3REZXBlbmRlbmNpZXM7IGRldkRlcGVuZGVuY2llczogUHJvamVjdERlcGVuZGVuY2llczsgfT4ge1xuICAgICAgICAvLyBhIGxpc3Qgb2YgZGVwZW5kZW5jaWVzIG9ubHkgc3RhY2tibGl0eiBuZWVkc1xuICAgICAgICBjb25zdCBzdGFja2JsaXR6RGVwZW5kZW5jaWVzID0gW1xuICAgICAgICAgICAgJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnLFxuICAgICAgICAgICAgJ0Bhbmd1bGFyL2NkaycsXG4gICAgICAgICAgICAnQGFuZ3VsYXIvY29tbW9uJyxcbiAgICAgICAgICAgICdAYW5ndWxhci9jb21waWxlcicsXG4gICAgICAgICAgICAnQGFuZ3VsYXIvY29yZScsXG4gICAgICAgICAgICAnQGFuZ3VsYXIvZm9ybXMnLFxuICAgICAgICAgICAgJ0Bhbmd1bGFyL21hdGVyaWFsJyxcbiAgICAgICAgICAgICdAYW5ndWxhci9tYXRlcmlhbC1tb21lbnQtYWRhcHRlcicsXG4gICAgICAgICAgICAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlcicsXG4gICAgICAgICAgICAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci1keW5hbWljJyxcbiAgICAgICAgICAgICdAYW5ndWxhci9yb3V0ZXInLFxuICAgICAgICAgICAgJ0BldWkvYmFzZScsXG4gICAgICAgICAgICAnQGV1aS9jb21wb25lbnRzJyxcbiAgICAgICAgICAgICdAZXVpL2NvcmUnLFxuICAgICAgICAgICAgJ0BldWkvc3R5bGVzJyxcbiAgICAgICAgICAgICdAZXVpL3N0eWxlcy1iYXNlJyxcbiAgICAgICAgICAgICdAbmdyeC9lZmZlY3RzJyxcbiAgICAgICAgICAgICdAbmdyeC9zdG9yZScsXG4gICAgICAgICAgICAnQG5neC10cmFuc2xhdGUvY29yZScsXG4gICAgICAgICAgICAnbG9jYWxmb3JhZ2UnLFxuICAgICAgICAgICAgJ2xvZGFzaC1lcycsXG4gICAgICAgICAgICAncmVzZWxlY3QnLFxuICAgICAgICAgICAgJ3J4anMnLFxuICAgICAgICAgICAgJ3RzbGliJyxcbiAgICAgICAgICAgICd6b25lLmpzJ1xuICAgICAgICBdO1xuXG4gICAgICAgIGNvbnN0IHN0YWNrYmxpdHpEZXZEZXBlbmRlbmNpZXMgPSBbXG4gICAgICAgICAgICAnQGFuZ3VsYXItZGV2a2l0L2J1aWxkLWFuZ3VsYXInLFxuICAgICAgICAgICAgJ0Bhbmd1bGFyL2NsaScsXG4gICAgICAgICAgICAnQGFuZ3VsYXIvY29tcGlsZXItY2xpJyxcbiAgICAgICAgICAgICd0eXBlc2NyaXB0J1xuICAgICAgICBdO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmdldEN1cnJlbnRTaG93Y2FzZUV1aVZlcnNpb24oKVxuICAgICAgICAgICAgLnRoZW4oKHZlcnNpb24pID0+IHRoaXMucmV0cmlldmVQYWNrYWdlRGVwZW5kZW5jaWVzKHZlcnNpb24pKVxuICAgICAgICAgICAgLnRoZW4oKGRlcGVuZGVuY2llcykgPT4ge1xuICAgICAgICAgICAgICAgIC8vIGZpbHRlciBkZXBlbmRlbmNpZXMgdG8gb25seSB3aGF0IHN0YWNrYmxpdHogbmVlZHNcbiAgICAgICAgICAgICAgICBsZXQgZmlsdGVyZWRBcnIgPSBPYmplY3QuZW50cmllcyhkZXBlbmRlbmNpZXMpXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKHYpID0+IHN0YWNrYmxpdHpEZXBlbmRlbmNpZXMuZmluZChzID0+IHMgPT09IHZbMF0pKTtcbiAgICAgICAgICAgICAgICBsZXQgZmlsdGVyZWRPYmogPSBPYmplY3QuZnJvbUVudHJpZXMoZmlsdGVyZWRBcnIpO1xuICAgICAgICAgICAgICAgIGxldCBleHRyYURlcGVuZGVuY2llcyA9IHtcbiAgICAgICAgICAgICAgICAgICAgdXVpZDogJzguMy4yJyxcbiAgICAgICAgICAgICAgICAgICAgJ25neC1kZXZpY2UtZGV0ZWN0b3InOiAnMy4wLjAnLFxuICAgICAgICAgICAgICAgICAgICAnbmd4LW1vbWVudCc6ICd+Ni4wLjAnLFxuICAgICAgICAgICAgICAgICAgICAnbmd4LW1hc2snOiAnXjE0LjAuMCcsXG4gICAgICAgICAgICAgICAgICAgICdjbGVhdmUuanMnOiAnXjEuNi4wJyxcbiAgICAgICAgICAgICAgICAgICAgbW9tZW50OiAnXjIuMTkuMycsXG4gICAgICAgICAgICAgICAgICAgIGV4dGVuZDogJ14zLjAuMicsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAvLyBmaWx0ZXIgZGV2RGVwZW5kZW5jaWVzIHRvIG9ubHkgd2hhdCBzdGFja2JsaXR6IG5lZWRzXG4gICAgICAgICAgICAgICAgZmlsdGVyZWRBcnIgPSBPYmplY3QuZW50cmllcyhkZXBlbmRlbmNpZXMpXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKHYpID0+IHN0YWNrYmxpdHpEZXZEZXBlbmRlbmNpZXMuZmluZChzID0+IHMgPT09IHZbMF0pKTtcbiAgICAgICAgICAgICAgICBkZXBlbmRlbmNpZXMgPSB7Li4uZXh0cmFEZXBlbmRlbmNpZXMsIC4uLmZpbHRlcmVkT2JqfTtcbiAgICAgICAgICAgICAgICBsZXQgZGV2RGVwZW5kZW5jaWVzID0gT2JqZWN0LmZyb21FbnRyaWVzKGZpbHRlcmVkQXJyKTtcblxuICAgICAgICAgICAgICAgIHJldHVybiB7ZGVwZW5kZW5jaWVzLCBkZXZEZXBlbmRlbmNpZXN9O1xuICAgICAgICAgICAgfSApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlIHRoZSBkZXBlbmRlbmNpZXMgZnJvbSB0aGUgcGFja2FnZS5qc29uIGZpbGUgb2YgQGV1aS9kZXBzLWJhc2UgZm9yIHRoZSBnaXZlbiB2ZXJzaW9uLlxuICAgICAqXG4gICAgICogQHBhcmFtIHZlcnNpb25cbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIHByaXZhdGUgcmV0cmlldmVQYWNrYWdlRGVwZW5kZW5jaWVzKHZlcnNpb24pOiBQcm9taXNlPFByb2plY3REZXBlbmRlbmNpZXM+IHtcbiAgICAgICAgcmV0dXJuIGZldGNoKGBodHRwczovL3VucGtnLmNvbS9AZXVpL2RlcHMtYmFzZUAke3ZlcnNpb259L3BhY2thZ2UuanNvbmApXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmpzb24oKSlcbiAgICAgICAgICAgIC50aGVuKChwa2cpID0+IHBrZz8uZGVwZW5kZW5jaWVzKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZSB0aGUgZVVJIHZlcnNpb24gdXNlZCB0byBidWlsZCB0aGUgc2hvd2Nhc2UgZnJvbSBhcHBsaWNhdGlvbiBhcHAtbWV0YWRhdGEuanNvblxuICAgICAqXG4gICAgICogQHByaXZhdGVcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldEN1cnJlbnRTaG93Y2FzZUV1aVZlcnNpb24oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5odHRwLmdldDxhbnk+KCdhc3NldHMvYXBwLW1ldGFkYXRhLmpzb24nLCB7cmVzcG9uc2VUeXBlOiAnanNvbid9KSlcbiAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHJlcz8uYXBwVmVyc2lvbiB8fCAnbGF0ZXN0Jyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZXh0cmFjdCB0aGUgbmFtZSBvZiB0aGUgY29tcG9uZW50IGNsYXNzIG5hbWUgYW5kIHNlbGVjdG9yIG5hbWUgZnJvbSB0aGUgdHlwZXNjcmlwdCBjb250ZW50XG4gICAgICpcbiAgICAgKiBAcGFyYW0gY29udGVudHNcbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIHByaXZhdGUgZXh0cmFjdENvbXBvbmVudE1ldGFkYXRhKGNvbnRlbnRzOiBzdHJpbmcpOiB7IHNlbGVjdG9yOiBzdHJpbmc7IGNsYXNzTmFtZTogc3RyaW5nOyB9IHtcbiAgICAgICAgY29uc3QgY2xhc3NOYW1lID0gY29udGVudHMubWF0Y2goL2V4cG9ydCBjbGFzcyAoW1xcd1xcZF0rKS8pO1xuICAgICAgICBjb25zdCBzZWxlY3Rvck5hbWUgPSBjb250ZW50cy5tYXRjaCgvc2VsZWN0b3I6ICcoW1xcd1xcZC1dKyknLyk7XG4gICAgICAgIHJldHVybiB7IGNsYXNzTmFtZTogY2xhc3NOYW1lID8gY2xhc3NOYW1lWzFdIDogJycsIHNlbGVjdG9yOiBzZWxlY3Rvck5hbWUgPyBzZWxlY3Rvck5hbWVbMV0gOiAnJ307XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZXh0cmFjdCBtb2R1bGUgY2xhc3MgbmFtZSBmcm9tIHRoZSB0eXBlc2NyaXB0IGNvbnRlbnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb250ZW50c1xuICAgICAqIEBwcml2YXRlXG4gICAgICovXG4gICAgcHJpdmF0ZSBleHRyYWN0TW9kdWxlTmFtZShjb250ZW50czogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgbW9kdWxlQ2xhc3MgPSBjb250ZW50cy5tYXRjaCgvZXhwb3J0IGNsYXNzIChcXHcrTW9kdWxlKS8pO1xuICAgICAgICByZXR1cm4gbW9kdWxlQ2xhc3MgPyBtb2R1bGVDbGFzc1sxXSA6ICcnO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBwZW5kVml0YWxOZ01vZHVsZXMoY29udGVudHM6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGltcG9ydHMgPSBjb250ZW50cy5tYXRjaCgvaW1wb3J0czogXFxbKFtcXHNcXFNdKj8pXFxdLyk7XG4gICAgICAgIC8vIGFwcGVuZHMgQnJvd3Nlck1vZHVsZSB0byBpbXBvcnRzXG4gICAgICAgIGNvbnRlbnRzID0gY29udGVudHMucmVwbGFjZSgvaW1wb3J0czogXFxbKFtcXHNcXFNdKj8pXFxdLywgYGltcG9ydHM6IFtCcm93c2VyTW9kdWxlLCAkMV1gKTtcbiAgICAgICAgLy8gYXBwZW5kcyBpbXBvcnQgb2YgQnJvd3Nlck1vZHVsZVxuICAgICAgICByZXR1cm4gYGltcG9ydCB7IEJyb3dzZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcXG4ke2NvbnRlbnRzfWA7XG4gICAgfVxuXG59XG4iLCI8ZXVpLWJsb2NrLWNvbnRlbnQgW2lzQmxvY2tlZF09XCIhaXNMb2FkZWRcIj5cbiAgICA8aWZyYW1lICNjb250YWluZXIgaWQ9XCJzdGFja2JsaXR6XCI+PC9pZnJhbWU+XG48L2V1aS1ibG9jay1jb250ZW50PlxuIl19
@@ -0,0 +1,208 @@
1
+ export const polyfillsFile = `import 'zone.js/dist/zone';`;
2
+ export const mainFile = (moduleName) => `
3
+ import './polyfills';
4
+ import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
5
+ import { preInitApp } from '@eui/core';
6
+ import { ${moduleName} } from './component';
7
+
8
+ preInitApp({production: false}).then(() => platformBrowserDynamic().bootstrapModule(${moduleName}).then(ref => {
9
+ // Ensure Angular destroys itself on hot reloads.
10
+ if (window['ngRef']) {
11
+ window['ngRef'].destroy();
12
+ }
13
+ window['ngRef'] = ref;
14
+
15
+ // Otherwise, log the boot error
16
+ }).catch(err => console.error(err))
17
+ );
18
+
19
+ `;
20
+ export const moduleFile = (componentName, m = []) => {
21
+ return `
22
+ import { NgModule, InjectionToken } from '@angular/core';
23
+ import { BrowserModule } from '@angular/platform-browser';
24
+ import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
25
+ import { RouterModule } from '@angular/router';
26
+ import { APP_BASE_HREF } from '@angular/common';
27
+ import { HttpClientModule } from '@angular/common/http';
28
+ import { StoreModule } from '@ngrx/store';
29
+ import { EffectsModule } from '@ngrx/effects';
30
+ import { TranslateModule } from '@ngx-translate/core';
31
+ import { FormsModule } from '@angular/forms';
32
+ import { CommonModule } from '@angular/common';
33
+ import { EuiAllModule } from '@eui/components';
34
+ import {
35
+ reducers as coreReducers,
36
+ CoreModule as EuiCoreModule,
37
+ translateConfig,
38
+ CoreModuleEffects,
39
+ EUI_CONFIG_TOKEN,
40
+ } from '@eui/core';
41
+
42
+ import { ${componentName} } from './component';
43
+ ` + m.map((i) => `import { ${i.name} } from '${i.path}';\n`).join('') + `
44
+
45
+ export const REDUCER_TOKEN = new InjectionToken<any>('Registered Reducers');
46
+
47
+ @NgModule({
48
+ imports: [
49
+ BrowserAnimationsModule,
50
+ CommonModule,
51
+ BrowserModule,
52
+ FormsModule,
53
+ EuiAllModule,
54
+ HttpClientModule,
55
+ RouterModule.forRoot([]),
56
+ EuiCoreModule.forRoot(),
57
+ EffectsModule.forRoot([...CoreModuleEffects]),
58
+ TranslateModule.forRoot(translateConfig),
59
+ StoreModule.forRoot(REDUCER_TOKEN, { })
60
+ ` + m.map((i) => `${i.name},`).join('') + `
61
+ ],
62
+ declarations: [${componentName}],
63
+ providers: [
64
+ {
65
+ provide: REDUCER_TOKEN,
66
+ deps: [],
67
+ useFactory: () => Object.assign({}, coreReducers),
68
+ },
69
+ {
70
+ provide: EUI_CONFIG_TOKEN,
71
+ useValue: { appConfig: {}, environment: {} }
72
+ },
73
+ {
74
+ provide: APP_BASE_HREF, useValue: '/'
75
+ }
76
+ ],
77
+ bootstrap: [${componentName}],
78
+ })
79
+ export class AppModule {}
80
+ `;
81
+ };
82
+ export const angularJsonFile = `
83
+ {
84
+ "version": 1,
85
+ "newProjectRoot": "projects",
86
+ "projects": {
87
+ "demo": {
88
+ "root": "",
89
+ "sourceRoot": "",
90
+ "projectType": "application",
91
+ "prefix": "app",
92
+ "schematics": {},
93
+ "architect": {
94
+ "build": {
95
+ "builder": "@angular-devkit/build-angular:browser",
96
+ "options": {
97
+ "outputPath": "dist/demo",
98
+ "index": "src/index.html",
99
+ "main": "src/main.ts",
100
+ "polyfills": "src/polyfills.ts",
101
+ "tsConfig": "tsconfig.json",
102
+ "assets": [
103
+ {
104
+ "glob": "**/*",
105
+ "input": "./node_modules/@eui/styles-base/src/assets/",
106
+ "output": "src/assets"
107
+ },
108
+ {
109
+ "glob": "**/*",
110
+ "input": "./node_modules/@eui/core/assets/",
111
+ "output": "src/assets"
112
+ }
113
+ ],
114
+ "styles": [
115
+ "./node_modules/@eui/styles/dist/styles/eui.css"
116
+ ],
117
+ "scripts": [],
118
+ "preserveSymlinks": true
119
+ },
120
+ "configurations": {
121
+ "production": {
122
+ "optimization": true,
123
+ "outputHashing": "all",
124
+ "sourceMap": false,
125
+ "extractCss": true,
126
+ "namedChunks": false,
127
+ "aot": true,
128
+ "extractLicenses": true,
129
+ "vendorChunk": false,
130
+ "buildOptimizer": true
131
+ }
132
+ }
133
+ },
134
+ "serve": {
135
+ "builder": "@angular-devkit/build-angular:dev-server",
136
+ "options": {
137
+ "browserTarget": "demo:build"
138
+ },
139
+ "configurations": {
140
+ "production": {
141
+ "browserTarget": "demo:build:production"
142
+ }
143
+ }
144
+ },
145
+ "lint": {
146
+ "builder": "@angular-devkit/build-angular:tslint",
147
+ "options": {
148
+ "tsConfig": ["tsconfig.json"],
149
+ "exclude": ["**/node_modules/**"]
150
+ }
151
+ }
152
+ }
153
+ }
154
+ },
155
+ "defaultProject": "demo",
156
+ "cli": {
157
+ "analytics": "0f944abb-e787-4c1f-9092-e34292361c91"
158
+ }
159
+ }
160
+ `;
161
+ export const indexHtmlFile = (selector) => `
162
+ <!-- TODO: Find a workaround -->
163
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
164
+ <link rel="stylesheet" href="assets/eui.css" />
165
+ <!-- END TODO -->
166
+ <${selector}>
167
+ <div id="loader-wrapper">
168
+ <div id="loader"></div>
169
+ </div>
170
+ </${selector}>
171
+ `;
172
+ export const PACKAGE_JSON = {
173
+ name: 'demo',
174
+ version: '0.0.0',
175
+ private: true,
176
+ dependencies: {},
177
+ };
178
+ export const tsConfig = `
179
+ {
180
+ "compileOnSave": false,
181
+ "compilerOptions": {
182
+ "baseUrl": "./",
183
+ "outDir": "./dist/out-tsc",
184
+ "sourceMap": true,
185
+ "declaration": false,
186
+ "downlevelIteration": true,
187
+ "experimentalDecorators": true,
188
+ "module": "esnext",
189
+ "moduleResolution": "node",
190
+ "importHelpers": true,
191
+ "target": "es2016",
192
+ "allowSyntheticDefaultImports": true,
193
+ "emitDecoratorMetadata": true,
194
+ "typeRoots": [
195
+ "node_modules/@types"
196
+ ],
197
+ "lib": [
198
+ "es2020",
199
+ "dom"
200
+ ]
201
+ },
202
+ "angularCompilerOptions": {
203
+ "enableIvy": true,
204
+ "fullTemplateTypeCheck": true,
205
+ "strictInjectionParameters": true
206
+ }
207
+ }`;
208
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhY2tibGl0ei5maWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wbGF5Z3JvdW5kL3N0YWNrYmxpdHouZmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLDZCQUE2QixDQUFDO0FBQzNELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLFVBQWtCLEVBQUUsRUFBRSxDQUFDOzs7O1dBSXJDLFVBQVU7O3NGQUVpRSxVQUFVOzs7Ozs7Ozs7OztDQVcvRixDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsYUFBcUIsRUFBRSxJQUFxQyxFQUFFLEVBQUUsRUFBRTtJQUN6RixPQUFPOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FxQkEsYUFBYTtDQUN2QixHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBaUJuRSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHOzttQkFFM0IsYUFBYTs7Ozs7Ozs7Ozs7Ozs7O2dCQWVoQixhQUFhOzs7Q0FHNUIsQ0FBQztBQUVGLENBQUMsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBOEU5QixDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQUMsUUFBZ0IsRUFBRSxFQUFFLENBQUM7Ozs7O0dBS2hELFFBQVE7Ozs7SUFJUCxRQUFRO0NBQ1gsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRztJQUN4QixJQUFJLEVBQUUsTUFBTTtJQUNaLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsWUFBWSxFQUFFLEVBQ2I7Q0FDSixDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQTZCdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBwb2x5ZmlsbHNGaWxlID0gYGltcG9ydCAnem9uZS5qcy9kaXN0L3pvbmUnO2A7XG5leHBvcnQgY29uc3QgbWFpbkZpbGUgPSAobW9kdWxlTmFtZTogc3RyaW5nKSA9PiBgXG5pbXBvcnQgJy4vcG9seWZpbGxzJztcbmltcG9ydCB7IHBsYXRmb3JtQnJvd3NlckR5bmFtaWMgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyLWR5bmFtaWMnO1xuaW1wb3J0IHsgcHJlSW5pdEFwcCB9IGZyb20gJ0BldWkvY29yZSc7XG5pbXBvcnQgeyAke21vZHVsZU5hbWV9IH0gZnJvbSAnLi9jb21wb25lbnQnO1xuXG5wcmVJbml0QXBwKHtwcm9kdWN0aW9uOiBmYWxzZX0pLnRoZW4oKCkgPT4gcGxhdGZvcm1Ccm93c2VyRHluYW1pYygpLmJvb3RzdHJhcE1vZHVsZSgke21vZHVsZU5hbWV9KS50aGVuKHJlZiA9PiB7XG4gICAgICAvLyBFbnN1cmUgQW5ndWxhciBkZXN0cm95cyBpdHNlbGYgb24gaG90IHJlbG9hZHMuXG4gICAgICBpZiAod2luZG93WyduZ1JlZiddKSB7XG4gICAgICAgIHdpbmRvd1snbmdSZWYnXS5kZXN0cm95KCk7XG4gICAgICB9XG4gICAgICB3aW5kb3dbJ25nUmVmJ10gPSByZWY7XG5cbiAgICAgIC8vIE90aGVyd2lzZSwgbG9nIHRoZSBib290IGVycm9yXG4gICAgfSkuY2F0Y2goZXJyID0+IGNvbnNvbGUuZXJyb3IoZXJyKSlcbik7XG5cbmA7XG5leHBvcnQgY29uc3QgbW9kdWxlRmlsZSA9IChjb21wb25lbnROYW1lOiBzdHJpbmcsIG06IHtuYW1lOiBzdHJpbmc7IHBhdGg6IHN0cmluZzt9W10gPSBbXSkgPT4ge1xuICAgIHJldHVybiBgXG5pbXBvcnQgeyBOZ01vZHVsZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJyb3dzZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEJyb3dzZXJBbmltYXRpb25zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBUFBfQkFTRV9IUkVGIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBTdG9yZU1vZHVsZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEVmZmVjdHNNb2R1bGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRXVpQWxsTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzJztcbmltcG9ydCB7XG4gICAgcmVkdWNlcnMgYXMgY29yZVJlZHVjZXJzLFxuICAgIENvcmVNb2R1bGUgYXMgRXVpQ29yZU1vZHVsZSxcbiAgICB0cmFuc2xhdGVDb25maWcsXG4gICAgQ29yZU1vZHVsZUVmZmVjdHMsXG4gICAgRVVJX0NPTkZJR19UT0tFTixcbn0gZnJvbSAnQGV1aS9jb3JlJztcblxuaW1wb3J0IHsgJHtjb21wb25lbnROYW1lfSB9IGZyb20gJy4vY29tcG9uZW50JztcbmAgKyBtLm1hcCgoaSkgPT4gYGltcG9ydCB7ICR7aS5uYW1lfSB9IGZyb20gJyR7aS5wYXRofSc7XFxuYCkuam9pbignJykgKyBgXG5cbmV4cG9ydCBjb25zdCBSRURVQ0VSX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oJ1JlZ2lzdGVyZWQgUmVkdWNlcnMnKTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEJyb3dzZXJBbmltYXRpb25zTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCcm93c2VyTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEV1aUFsbE1vZHVsZSxcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZS5mb3JSb290KFtdKSxcbiAgICBFdWlDb3JlTW9kdWxlLmZvclJvb3QoKSxcbiAgICBFZmZlY3RzTW9kdWxlLmZvclJvb3QoWy4uLkNvcmVNb2R1bGVFZmZlY3RzXSksXG4gICAgVHJhbnNsYXRlTW9kdWxlLmZvclJvb3QodHJhbnNsYXRlQ29uZmlnKSxcbiAgICBTdG9yZU1vZHVsZS5mb3JSb290KFJFRFVDRVJfVE9LRU4sIHsgfSlcbiAgICBgICsgbS5tYXAoKGkpID0+IGAke2kubmFtZX0sYCkuam9pbignJykgKyBgXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogWyR7Y29tcG9uZW50TmFtZX1dLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICAgIHByb3ZpZGU6IFJFRFVDRVJfVE9LRU4sXG4gICAgICAgIGRlcHM6IFtdLFxuICAgICAgICB1c2VGYWN0b3J5OiAoKSA9PiBPYmplY3QuYXNzaWduKHt9LCBjb3JlUmVkdWNlcnMpLFxuICAgIH0sXG4gICAge1xuICAgICAgICBwcm92aWRlOiBFVUlfQ09ORklHX1RPS0VOLFxuICAgICAgICB1c2VWYWx1ZTogeyBhcHBDb25maWc6IHt9LCBlbnZpcm9ubWVudDoge30gfVxuICAgIH0sXG4gICAge1xuICAgICAgICBwcm92aWRlOiBBUFBfQkFTRV9IUkVGLCB1c2VWYWx1ZTogJy8nXG4gICAgfVxuICBdLFxuICBib290c3RyYXA6IFske2NvbXBvbmVudE5hbWV9XSxcbn0pXG5leHBvcnQgY2xhc3MgQXBwTW9kdWxlIHt9XG5gO1xuXG59O1xuZXhwb3J0IGNvbnN0IGFuZ3VsYXJKc29uRmlsZSA9IGBcbntcbiAgXCJ2ZXJzaW9uXCI6IDEsXG4gIFwibmV3UHJvamVjdFJvb3RcIjogXCJwcm9qZWN0c1wiLFxuICBcInByb2plY3RzXCI6IHtcbiAgICBcImRlbW9cIjoge1xuICAgICAgXCJyb290XCI6IFwiXCIsXG4gICAgICBcInNvdXJjZVJvb3RcIjogXCJcIixcbiAgICAgIFwicHJvamVjdFR5cGVcIjogXCJhcHBsaWNhdGlvblwiLFxuICAgICAgXCJwcmVmaXhcIjogXCJhcHBcIixcbiAgICAgIFwic2NoZW1hdGljc1wiOiB7fSxcbiAgICAgIFwiYXJjaGl0ZWN0XCI6IHtcbiAgICAgICAgXCJidWlsZFwiOiB7XG4gICAgICAgICAgXCJidWlsZGVyXCI6IFwiQGFuZ3VsYXItZGV2a2l0L2J1aWxkLWFuZ3VsYXI6YnJvd3NlclwiLFxuICAgICAgICAgIFwib3B0aW9uc1wiOiB7XG4gICAgICAgICAgICBcIm91dHB1dFBhdGhcIjogXCJkaXN0L2RlbW9cIixcbiAgICAgICAgICAgIFwiaW5kZXhcIjogXCJzcmMvaW5kZXguaHRtbFwiLFxuICAgICAgICAgICAgXCJtYWluXCI6IFwic3JjL21haW4udHNcIixcbiAgICAgICAgICAgIFwicG9seWZpbGxzXCI6IFwic3JjL3BvbHlmaWxscy50c1wiLFxuICAgICAgICAgICAgXCJ0c0NvbmZpZ1wiOiBcInRzY29uZmlnLmpzb25cIixcbiAgICAgICAgICAgIFwiYXNzZXRzXCI6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiZ2xvYlwiOiBcIioqLypcIixcbiAgICAgICAgICAgICAgICBcImlucHV0XCI6IFwiLi9ub2RlX21vZHVsZXMvQGV1aS9zdHlsZXMtYmFzZS9zcmMvYXNzZXRzL1wiLFxuICAgICAgICAgICAgICAgIFwib3V0cHV0XCI6IFwic3JjL2Fzc2V0c1wiXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcImdsb2JcIjogXCIqKi8qXCIsXG4gICAgICAgICAgICAgICAgXCJpbnB1dFwiOiBcIi4vbm9kZV9tb2R1bGVzL0BldWkvY29yZS9hc3NldHMvXCIsXG4gICAgICAgICAgICAgICAgXCJvdXRwdXRcIjogXCJzcmMvYXNzZXRzXCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFwic3R5bGVzXCI6IFtcbiAgICAgICAgICAgICAgXCIuL25vZGVfbW9kdWxlcy9AZXVpL3N0eWxlcy9kaXN0L3N0eWxlcy9ldWkuY3NzXCJcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBcInNjcmlwdHNcIjogW10sXG4gICAgICAgICAgICBcInByZXNlcnZlU3ltbGlua3NcIjogdHJ1ZVxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJjb25maWd1cmF0aW9uc1wiOiB7XG4gICAgICAgICAgICBcInByb2R1Y3Rpb25cIjoge1xuICAgICAgICAgICAgICBcIm9wdGltaXphdGlvblwiOiB0cnVlLFxuICAgICAgICAgICAgICBcIm91dHB1dEhhc2hpbmdcIjogXCJhbGxcIixcbiAgICAgICAgICAgICAgXCJzb3VyY2VNYXBcIjogZmFsc2UsXG4gICAgICAgICAgICAgIFwiZXh0cmFjdENzc1wiOiB0cnVlLFxuICAgICAgICAgICAgICBcIm5hbWVkQ2h1bmtzXCI6IGZhbHNlLFxuICAgICAgICAgICAgICBcImFvdFwiOiB0cnVlLFxuICAgICAgICAgICAgICBcImV4dHJhY3RMaWNlbnNlc1wiOiB0cnVlLFxuICAgICAgICAgICAgICBcInZlbmRvckNodW5rXCI6IGZhbHNlLFxuICAgICAgICAgICAgICBcImJ1aWxkT3B0aW1pemVyXCI6IHRydWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIFwic2VydmVcIjoge1xuICAgICAgICAgIFwiYnVpbGRlclwiOiBcIkBhbmd1bGFyLWRldmtpdC9idWlsZC1hbmd1bGFyOmRldi1zZXJ2ZXJcIixcbiAgICAgICAgICBcIm9wdGlvbnNcIjoge1xuICAgICAgICAgICAgXCJicm93c2VyVGFyZ2V0XCI6IFwiZGVtbzpidWlsZFwiXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcImNvbmZpZ3VyYXRpb25zXCI6IHtcbiAgICAgICAgICAgIFwicHJvZHVjdGlvblwiOiB7XG4gICAgICAgICAgICAgIFwiYnJvd3NlclRhcmdldFwiOiBcImRlbW86YnVpbGQ6cHJvZHVjdGlvblwiXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBcImxpbnRcIjoge1xuICAgICAgICAgIFwiYnVpbGRlclwiOiBcIkBhbmd1bGFyLWRldmtpdC9idWlsZC1hbmd1bGFyOnRzbGludFwiLFxuICAgICAgICAgIFwib3B0aW9uc1wiOiB7XG4gICAgICAgICAgICBcInRzQ29uZmlnXCI6IFtcInRzY29uZmlnLmpzb25cIl0sXG4gICAgICAgICAgICBcImV4Y2x1ZGVcIjogW1wiKiovbm9kZV9tb2R1bGVzLyoqXCJdXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LFxuICBcImRlZmF1bHRQcm9qZWN0XCI6IFwiZGVtb1wiLFxuICBcImNsaVwiOiB7XG4gICAgXCJhbmFseXRpY3NcIjogXCIwZjk0NGFiYi1lNzg3LTRjMWYtOTA5Mi1lMzQyOTIzNjFjOTFcIlxuICB9XG59XG5gO1xuZXhwb3J0IGNvbnN0IGluZGV4SHRtbEZpbGUgPSAoc2VsZWN0b3I6IHN0cmluZykgPT4gYFxuPCEtLSBUT0RPOiBGaW5kIGEgd29ya2Fyb3VuZCAtLT5cbjxtZXRhIGh0dHAtZXF1aXY9XCJDb250ZW50LVR5cGVcIiBjb250ZW50PVwidGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04XCIgLz5cbjxsaW5rIHJlbD1cInN0eWxlc2hlZXRcIiBocmVmPVwiYXNzZXRzL2V1aS5jc3NcIiAvPlxuPCEtLSBFTkQgVE9ETyAtLT5cbjwke3NlbGVjdG9yfT5cbiAgICA8ZGl2IGlkPVwibG9hZGVyLXdyYXBwZXJcIj5cbiAgICAgICAgPGRpdiBpZD1cImxvYWRlclwiPjwvZGl2PlxuICAgIDwvZGl2PlxuPC8ke3NlbGVjdG9yfT5cbmA7XG5leHBvcnQgY29uc3QgUEFDS0FHRV9KU09OID0ge1xuICAgIG5hbWU6ICdkZW1vJyxcbiAgICB2ZXJzaW9uOiAnMC4wLjAnLFxuICAgIHByaXZhdGU6IHRydWUsXG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgfSxcbn07XG5leHBvcnQgY29uc3QgdHNDb25maWcgPSBgXG57XG4gIFwiY29tcGlsZU9uU2F2ZVwiOiBmYWxzZSxcbiAgXCJjb21waWxlck9wdGlvbnNcIjoge1xuICAgIFwiYmFzZVVybFwiOiBcIi4vXCIsXG4gICAgXCJvdXREaXJcIjogXCIuL2Rpc3Qvb3V0LXRzY1wiLFxuICAgIFwic291cmNlTWFwXCI6IHRydWUsXG4gICAgXCJkZWNsYXJhdGlvblwiOiBmYWxzZSxcbiAgICBcImRvd25sZXZlbEl0ZXJhdGlvblwiOiB0cnVlLFxuICAgIFwiZXhwZXJpbWVudGFsRGVjb3JhdG9yc1wiOiB0cnVlLFxuICAgIFwibW9kdWxlXCI6IFwiZXNuZXh0XCIsXG4gICAgXCJtb2R1bGVSZXNvbHV0aW9uXCI6IFwibm9kZVwiLFxuICAgIFwiaW1wb3J0SGVscGVyc1wiOiB0cnVlLFxuICAgIFwidGFyZ2V0XCI6IFwiZXMyMDE2XCIsXG4gICAgXCJhbGxvd1N5bnRoZXRpY0RlZmF1bHRJbXBvcnRzXCI6IHRydWUsXG4gICAgXCJlbWl0RGVjb3JhdG9yTWV0YWRhdGFcIjogdHJ1ZSxcbiAgICBcInR5cGVSb290c1wiOiBbXG4gICAgICBcIm5vZGVfbW9kdWxlcy9AdHlwZXNcIlxuICAgIF0sXG4gICAgXCJsaWJcIjogW1xuICAgICAgXCJlczIwMjBcIixcbiAgICAgIFwiZG9tXCJcbiAgICBdXG4gIH0sXG4gIFwiYW5ndWxhckNvbXBpbGVyT3B0aW9uc1wiOiB7XG4gICAgXCJlbmFibGVJdnlcIjogdHJ1ZSxcbiAgICBcImZ1bGxUZW1wbGF0ZVR5cGVDaGVja1wiOiB0cnVlLFxuICAgIFwic3RyaWN0SW5qZWN0aW9uUGFyYW1ldGVyc1wiOiB0cnVlXG4gIH1cbn1gO1xuIl19
@@ -7,6 +7,8 @@ import { EuiPageModule } from '@eui/components/eui-page';
7
7
  import { EuiChipModule } from '@eui/components/eui-chip';
8
8
  import { EuiDialogModule } from '@eui/components/eui-dialog';
9
9
  import { EuiAlertModule } from '@eui/components/eui-alert';
10
+ import { EuiBlockContentModule } from '@eui/components/eui-block-content';
11
+ import { EuiBadgeModule } from '@eui/components/eui-badge';
10
12
  import { DocPageComponent, DocPageOverviewContentDirective, DocPageSamplesContentDirective, DocPageApiContentDirective, DocPageInteractiveContentDirective, DocPageSectionsContentDirective, DocPageAccessibilityContentDirective, DocPageThemingContentDirective, } from './components/doc-page/doc-page.component';
11
13
  import { DocSampleComponent } from './components/doc-sample/doc-sample.component';
12
14
  import { DocSampleApiComponent } from './components/doc-sample-api/doc-sample-api.component';
@@ -14,7 +16,8 @@ import { DocSectionComponent } from './components/doc-section/doc-section.compon
14
16
  import { DocPageCodeComponent } from './components/doc-page-code/doc-page-code.component';
15
17
  import { EuiCodeHighlighterDirective } from './components/eui-code-highlighter/eui-code-highlighter.component';
16
18
  import { DocSectionCodeComponent, DocSectionCodeHtmlTagDirective, DocSectionCodeTsTagDirective, DocSectionCodeServiceTagDirective, DocSectionCodeCssTagDirective, DocSectionCodeDocTagDirective, DocSectionCodeDescriptionTagDirective, } from './components/doc-section-code/doc-section-code.component';
17
- import { DocPageCodeFabComponent, LoremIpsumSampleComponent } from './components';
19
+ import { DocPageCodeFabComponent, LoremIpsumSampleComponent, PlaygroundComponent } from './components';
20
+ import { DocPagePatternComponent, DocPagePatternDocDirective, DocPagePatternSampleDirective, } from './components/doc-page-pattern/doc-page-pattern.component';
18
21
  import * as i0 from "@angular/core";
19
22
  const COMPONENTS = [
20
23
  EuiCodeHighlighterDirective,
@@ -39,6 +42,10 @@ const COMPONENTS = [
39
42
  DocSectionCodeDocTagDirective,
40
43
  DocSectionCodeDescriptionTagDirective,
41
44
  LoremIpsumSampleComponent,
45
+ PlaygroundComponent,
46
+ DocPagePatternComponent,
47
+ DocPagePatternDocDirective,
48
+ DocPagePatternSampleDirective,
42
49
  ];
43
50
  export class EuiShowcaseModule {
44
51
  }
@@ -64,14 +71,20 @@ export class EuiShowcaseModule {
64
71
  DocSectionCodeCssTagDirective,
65
72
  DocSectionCodeDocTagDirective,
66
73
  DocSectionCodeDescriptionTagDirective,
67
- LoremIpsumSampleComponent], imports: [CommonModule,
74
+ LoremIpsumSampleComponent,
75
+ PlaygroundComponent,
76
+ DocPagePatternComponent,
77
+ DocPagePatternDocDirective,
78
+ DocPagePatternSampleDirective], imports: [CommonModule,
68
79
  EuiCardModule,
69
80
  EuiButtonModule,
70
81
  EuiTabsModule,
71
82
  EuiPageModule,
72
83
  EuiChipModule,
73
84
  EuiDialogModule,
74
- EuiAlertModule], exports: [EuiCodeHighlighterDirective,
85
+ EuiAlertModule,
86
+ EuiBlockContentModule,
87
+ EuiBadgeModule], exports: [EuiCodeHighlighterDirective,
75
88
  DocPageComponent,
76
89
  DocPageCodeComponent,
77
90
  DocPageCodeFabComponent,
@@ -92,7 +105,11 @@ export class EuiShowcaseModule {
92
105
  DocSectionCodeCssTagDirective,
93
106
  DocSectionCodeDocTagDirective,
94
107
  DocSectionCodeDescriptionTagDirective,
95
- LoremIpsumSampleComponent] });
108
+ LoremIpsumSampleComponent,
109
+ PlaygroundComponent,
110
+ DocPagePatternComponent,
111
+ DocPagePatternDocDirective,
112
+ DocPagePatternSampleDirective] });
96
113
  /** @nocollapse */ EuiShowcaseModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EuiShowcaseModule, imports: [CommonModule,
97
114
  EuiCardModule,
98
115
  EuiButtonModule,
@@ -100,7 +117,9 @@ export class EuiShowcaseModule {
100
117
  EuiPageModule,
101
118
  EuiChipModule,
102
119
  EuiDialogModule,
103
- EuiAlertModule] });
120
+ EuiAlertModule,
121
+ EuiBlockContentModule,
122
+ EuiBadgeModule] });
104
123
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EuiShowcaseModule, decorators: [{
105
124
  type: NgModule,
106
125
  args: [{
@@ -114,8 +133,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4",
114
133
  EuiChipModule,
115
134
  EuiDialogModule,
116
135
  EuiAlertModule,
136
+ EuiBlockContentModule,
137
+ EuiBadgeModule,
117
138
  ],
118
139
  exports: [...COMPONENTS],
119
140
  }]
120
141
  }] });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXNob3djYXNlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZXVpLXNob3djYXNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFM0QsT0FBTyxFQUNILGdCQUFnQixFQUNoQiwrQkFBK0IsRUFDL0IsOEJBQThCLEVBQzlCLDBCQUEwQixFQUMxQixrQ0FBa0MsRUFDbEMsK0JBQStCLEVBQy9CLG9DQUFvQyxFQUNwQyw4QkFBOEIsR0FDakMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM3RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNyRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUUxRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUMvRyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLDhCQUE4QixFQUM5Qiw0QkFBNEIsRUFDNUIsaUNBQWlDLEVBQ2pDLDZCQUE2QixFQUM3Qiw2QkFBNkIsRUFDN0IscUNBQXFDLEdBQ3hDLE1BQU0sMERBQTBELENBQUM7QUFDbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLHlCQUF5QixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUVsRixNQUFNLFVBQVUsR0FBRztJQUNmLDJCQUEyQjtJQUMzQixnQkFBZ0I7SUFDaEIsb0JBQW9CO0lBQ3BCLHVCQUF1QjtJQUN2QiwrQkFBK0I7SUFDL0IsMEJBQTBCO0lBQzFCLGtDQUFrQztJQUNsQyw4QkFBOEI7SUFDOUIsK0JBQStCO0lBQy9CLG9DQUFvQztJQUNwQyw4QkFBOEI7SUFDOUIsa0JBQWtCO0lBQ2xCLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLDhCQUE4QjtJQUM5Qiw0QkFBNEI7SUFDNUIsaUNBQWlDO0lBQ2pDLDZCQUE2QjtJQUM3Qiw2QkFBNkI7SUFDN0IscUNBQXFDO0lBQ3JDLHlCQUF5QjtDQUM1QixDQUFDO0FBZ0JGLE1BQU0sT0FBTyxpQkFBaUI7O3dJQUFqQixpQkFBaUI7eUlBQWpCLGlCQUFpQixpQkF0QzFCLDJCQUEyQjtRQUMzQixnQkFBZ0I7UUFDaEIsb0JBQW9CO1FBQ3BCLHVCQUF1QjtRQUN2QiwrQkFBK0I7UUFDL0IsMEJBQTBCO1FBQzFCLGtDQUFrQztRQUNsQyw4QkFBOEI7UUFDOUIsK0JBQStCO1FBQy9CLG9DQUFvQztRQUNwQyw4QkFBOEI7UUFDOUIsa0JBQWtCO1FBQ2xCLHFCQUFxQjtRQUNyQixtQkFBbUI7UUFDbkIsdUJBQXVCO1FBQ3ZCLDhCQUE4QjtRQUM5Qiw0QkFBNEI7UUFDNUIsaUNBQWlDO1FBQ2pDLDZCQUE2QjtRQUM3Qiw2QkFBNkI7UUFDN0IscUNBQXFDO1FBQ3JDLHlCQUF5QixhQU1yQixZQUFZO1FBQ1osYUFBYTtRQUNiLGVBQWU7UUFDZixhQUFhO1FBQ2IsYUFBYTtRQUNiLGFBQWE7UUFDYixlQUFlO1FBQ2YsY0FBYyxhQWxDbEIsMkJBQTJCO1FBQzNCLGdCQUFnQjtRQUNoQixvQkFBb0I7UUFDcEIsdUJBQXVCO1FBQ3ZCLCtCQUErQjtRQUMvQiwwQkFBMEI7UUFDMUIsa0NBQWtDO1FBQ2xDLDhCQUE4QjtRQUM5QiwrQkFBK0I7UUFDL0Isb0NBQW9DO1FBQ3BDLDhCQUE4QjtRQUM5QixrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLG1CQUFtQjtRQUNuQix1QkFBdUI7UUFDdkIsOEJBQThCO1FBQzlCLDRCQUE0QjtRQUM1QixpQ0FBaUM7UUFDakMsNkJBQTZCO1FBQzdCLDZCQUE2QjtRQUM3QixxQ0FBcUM7UUFDckMseUJBQXlCO3lJQWlCaEIsaUJBQWlCLFlBWHRCLFlBQVk7UUFDWixhQUFhO1FBQ2IsZUFBZTtRQUNmLGFBQWE7UUFDYixhQUFhO1FBQ2IsYUFBYTtRQUNiLGVBQWU7UUFDZixjQUFjO2tHQUlULGlCQUFpQjtrQkFkN0IsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztvQkFDN0IsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsY0FBYztxQkFDakI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IEV1aUNhcmRNb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWNhcmQnO1xuaW1wb3J0IHsgRXVpQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1idXR0b24nO1xuaW1wb3J0IHsgRXVpVGFic01vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktdGFicyc7XG5pbXBvcnQgeyBFdWlQYWdlTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1wYWdlJztcbmltcG9ydCB7IEV1aUNoaXBNb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWNoaXAnO1xuaW1wb3J0IHsgRXVpRGlhbG9nTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1kaWFsb2cnO1xuaW1wb3J0IHsgRXVpQWxlcnRNb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWFsZXJ0JztcblxuaW1wb3J0IHtcbiAgICBEb2NQYWdlQ29tcG9uZW50LFxuICAgIERvY1BhZ2VPdmVydmlld0NvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZVNhbXBsZXNDb250ZW50RGlyZWN0aXZlLFxuICAgIERvY1BhZ2VBcGlDb250ZW50RGlyZWN0aXZlLFxuICAgIERvY1BhZ2VJbnRlcmFjdGl2ZUNvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZVNlY3Rpb25zQ29udGVudERpcmVjdGl2ZSxcbiAgICBEb2NQYWdlQWNjZXNzaWJpbGl0eUNvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZVRoZW1pbmdDb250ZW50RGlyZWN0aXZlLFxufSBmcm9tICcuL2NvbXBvbmVudHMvZG9jLXBhZ2UvZG9jLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IERvY1NhbXBsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kb2Mtc2FtcGxlL2RvYy1zYW1wbGUuY29tcG9uZW50JztcbmltcG9ydCB7IERvY1NhbXBsZUFwaUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kb2Mtc2FtcGxlLWFwaS9kb2Mtc2FtcGxlLWFwaS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kb2Mtc2VjdGlvbi9kb2Mtc2VjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jUGFnZUNvZGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZG9jLXBhZ2UtY29kZS9kb2MtcGFnZS1jb2RlLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IEV1aUNvZGVIaWdobGlnaHRlckRpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9uZW50cy9ldWktY29kZS1oaWdobGlnaHRlci9ldWktY29kZS1oaWdobGlnaHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBEb2NTZWN0aW9uQ29kZUNvbXBvbmVudCxcbiAgICBEb2NTZWN0aW9uQ29kZUh0bWxUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVUc1RhZ0RpcmVjdGl2ZSxcbiAgICBEb2NTZWN0aW9uQ29kZVNlcnZpY2VUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVDc3NUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVEb2NUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVEZXNjcmlwdGlvblRhZ0RpcmVjdGl2ZSxcbn0gZnJvbSAnLi9jb21wb25lbnRzL2RvYy1zZWN0aW9uLWNvZGUvZG9jLXNlY3Rpb24tY29kZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jUGFnZUNvZGVGYWJDb21wb25lbnQsIExvcmVtSXBzdW1TYW1wbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuXG5jb25zdCBDT01QT05FTlRTID0gW1xuICAgIEV1aUNvZGVIaWdobGlnaHRlckRpcmVjdGl2ZSxcbiAgICBEb2NQYWdlQ29tcG9uZW50LFxuICAgIERvY1BhZ2VDb2RlQ29tcG9uZW50LFxuICAgIERvY1BhZ2VDb2RlRmFiQ29tcG9uZW50LFxuICAgIERvY1BhZ2VPdmVydmlld0NvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZUFwaUNvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZUludGVyYWN0aXZlQ29udGVudERpcmVjdGl2ZSxcbiAgICBEb2NQYWdlU2FtcGxlc0NvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZVNlY3Rpb25zQ29udGVudERpcmVjdGl2ZSxcbiAgICBEb2NQYWdlQWNjZXNzaWJpbGl0eUNvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZVRoZW1pbmdDb250ZW50RGlyZWN0aXZlLFxuICAgIERvY1NhbXBsZUNvbXBvbmVudCxcbiAgICBEb2NTYW1wbGVBcGlDb21wb25lbnQsXG4gICAgRG9jU2VjdGlvbkNvbXBvbmVudCxcbiAgICBEb2NTZWN0aW9uQ29kZUNvbXBvbmVudCxcbiAgICBEb2NTZWN0aW9uQ29kZUh0bWxUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVUc1RhZ0RpcmVjdGl2ZSxcbiAgICBEb2NTZWN0aW9uQ29kZVNlcnZpY2VUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVDc3NUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVEb2NUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVEZXNjcmlwdGlvblRhZ0RpcmVjdGl2ZSxcbiAgICBMb3JlbUlwc3VtU2FtcGxlQ29tcG9uZW50LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFsuLi5DT01QT05FTlRTXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRXVpQ2FyZE1vZHVsZSxcbiAgICAgICAgRXVpQnV0dG9uTW9kdWxlLFxuICAgICAgICBFdWlUYWJzTW9kdWxlLFxuICAgICAgICBFdWlQYWdlTW9kdWxlLFxuICAgICAgICBFdWlDaGlwTW9kdWxlLFxuICAgICAgICBFdWlEaWFsb2dNb2R1bGUsXG4gICAgICAgIEV1aUFsZXJ0TW9kdWxlLFxuICAgIF0sXG4gICAgZXhwb3J0czogWy4uLkNPTVBPTkVOVFNdLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlTaG93Y2FzZU1vZHVsZSB7IH1cbiJdfQ==
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXNob3djYXNlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZXVpLXNob3djYXNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTNELE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsK0JBQStCLEVBQy9CLDhCQUE4QixFQUM5QiwwQkFBMEIsRUFDMUIsa0NBQWtDLEVBQ2xDLCtCQUErQixFQUMvQixvQ0FBb0MsRUFDcEMsOEJBQThCLEdBQ2pDLE1BQU0sMENBQTBDLENBQUM7QUFDbEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDN0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDckYsT0FBTyxFQUFFLG9C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Q2IsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGNBQWM7d0JBQ2QscUJBQXFCO3dCQUNyQixjQUFjO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgRXVpQ2FyZE1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktY2FyZCc7XG5pbXBvcnQgeyBFdWlCdXR0b25Nb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWJ1dHRvbic7XG5pbXBvcnQgeyBFdWlUYWJzTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS10YWJzJztcbmltcG9ydCB7IEV1aVBhZ2VNb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLXBhZ2UnO1xuaW1wb3J0IHsgRXVpQ2hpcE1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktY2hpcCc7XG5pbXBvcnQgeyBFdWlEaWFsb2dNb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWRpYWxvZyc7XG5pbXBvcnQgeyBFdWlBbGVydE1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktYWxlcnQnO1xuaW1wb3J0IHsgRXVpQmxvY2tDb250ZW50TW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1ibG9jay1jb250ZW50JztcbmltcG9ydCB7IEV1aUJhZGdlTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1iYWRnZSc7XG5cbmltcG9ydCB7XG4gICAgRG9jUGFnZUNvbXBvbmVudCxcbiAgICBEb2NQYWdlT3ZlcnZpZXdDb250ZW50RGlyZWN0aXZlLFxuICAgIERvY1BhZ2VTYW1wbGVzQ29udGVudERpcmVjdGl2ZSxcbiAgICBEb2NQYWdlQXBpQ29udGVudERpcmVjdGl2ZSxcbiAgICBEb2NQYWdlSW50ZXJhY3RpdmVDb250ZW50RGlyZWN0aXZlLFxuICAgIERvY1BhZ2VTZWN0aW9uc0NvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZUFjY2Vzc2liaWxpdHlDb250ZW50RGlyZWN0aXZlLFxuICAgIERvY1BhZ2VUaGVtaW5nQ29udGVudERpcmVjdGl2ZSxcbn0gZnJvbSAnLi9jb21wb25lbnRzL2RvYy1wYWdlL2RvYy1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb2NTYW1wbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZG9jLXNhbXBsZS9kb2Mtc2FtcGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb2NTYW1wbGVBcGlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZG9jLXNhbXBsZS1hcGkvZG9jLXNhbXBsZS1hcGkuY29tcG9uZW50JztcbmltcG9ydCB7IERvY1NlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZG9jLXNlY3Rpb24vZG9jLXNlY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IERvY1BhZ2VDb2RlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2RvYy1wYWdlLWNvZGUvZG9jLXBhZ2UtY29kZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBFdWlDb2RlSGlnaGxpZ2h0ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvbmVudHMvZXVpLWNvZGUtaGlnaGxpZ2h0ZXIvZXVpLWNvZGUtaGlnaGxpZ2h0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgRG9jU2VjdGlvbkNvZGVDb21wb25lbnQsXG4gICAgRG9jU2VjdGlvbkNvZGVIdG1sVGFnRGlyZWN0aXZlLFxuICAgIERvY1NlY3Rpb25Db2RlVHNUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVTZXJ2aWNlVGFnRGlyZWN0aXZlLFxuICAgIERvY1NlY3Rpb25Db2RlQ3NzVGFnRGlyZWN0aXZlLFxuICAgIERvY1NlY3Rpb25Db2RlRG9jVGFnRGlyZWN0aXZlLFxuICAgIERvY1NlY3Rpb25Db2RlRGVzY3JpcHRpb25UYWdEaXJlY3RpdmUsXG59IGZyb20gJy4vY29tcG9uZW50cy9kb2Mtc2VjdGlvbi1jb2RlL2RvYy1zZWN0aW9uLWNvZGUuY29tcG9uZW50JztcbmltcG9ydCB7IERvY1BhZ2VDb2RlRmFiQ29tcG9uZW50LCBMb3JlbUlwc3VtU2FtcGxlQ29tcG9uZW50LCBQbGF5Z3JvdW5kQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7XG4gICAgRG9jUGFnZVBhdHRlcm5Db21wb25lbnQsIERvY1BhZ2VQYXR0ZXJuRG9jRGlyZWN0aXZlLCBEb2NQYWdlUGF0dGVyblNhbXBsZURpcmVjdGl2ZSxcbn0gZnJvbSAnLi9jb21wb25lbnRzL2RvYy1wYWdlLXBhdHRlcm4vZG9jLXBhZ2UtcGF0dGVybi5jb21wb25lbnQnO1xuXG5jb25zdCBDT01QT05FTlRTID0gW1xuICAgIEV1aUNvZGVIaWdobGlnaHRlckRpcmVjdGl2ZSxcbiAgICBEb2NQYWdlQ29tcG9uZW50LFxuICAgIERvY1BhZ2VDb2RlQ29tcG9uZW50LFxuICAgIERvY1BhZ2VDb2RlRmFiQ29tcG9uZW50LFxuICAgIERvY1BhZ2VPdmVydmlld0NvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZUFwaUNvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZUludGVyYWN0aXZlQ29udGVudERpcmVjdGl2ZSxcbiAgICBEb2NQYWdlU2FtcGxlc0NvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZVNlY3Rpb25zQ29udGVudERpcmVjdGl2ZSxcbiAgICBEb2NQYWdlQWNjZXNzaWJpbGl0eUNvbnRlbnREaXJlY3RpdmUsXG4gICAgRG9jUGFnZVRoZW1pbmdDb250ZW50RGlyZWN0aXZlLFxuICAgIERvY1NhbXBsZUNvbXBvbmVudCxcbiAgICBEb2NTYW1wbGVBcGlDb21wb25lbnQsXG4gICAgRG9jU2VjdGlvbkNvbXBvbmVudCxcbiAgICBEb2NTZWN0aW9uQ29kZUNvbXBvbmVudCxcbiAgICBEb2NTZWN0aW9uQ29kZUh0bWxUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVUc1RhZ0RpcmVjdGl2ZSxcbiAgICBEb2NTZWN0aW9uQ29kZVNlcnZpY2VUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVDc3NUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVEb2NUYWdEaXJlY3RpdmUsXG4gICAgRG9jU2VjdGlvbkNvZGVEZXNjcmlwdGlvblRhZ0RpcmVjdGl2ZSxcbiAgICBMb3JlbUlwc3VtU2FtcGxlQ29tcG9uZW50LFxuICAgIFBsYXlncm91bmRDb21wb25lbnQsXG4gICAgRG9jUGFnZVBhdHRlcm5Db21wb25lbnQsXG4gICAgRG9jUGFnZVBhdHRlcm5Eb2NEaXJlY3RpdmUsXG4gICAgRG9jUGFnZVBhdHRlcm5TYW1wbGVEaXJlY3RpdmUsXG5dO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogWy4uLkNPTVBPTkVOVFNdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBFdWlDYXJkTW9kdWxlLFxuICAgICAgICBFdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIEV1aVRhYnNNb2R1bGUsXG4gICAgICAgIEV1aVBhZ2VNb2R1bGUsXG4gICAgICAgIEV1aUNoaXBNb2R1bGUsXG4gICAgICAgIEV1aURpYWxvZ01vZHVsZSxcbiAgICAgICAgRXVpQWxlcnRNb2R1bGUsXG4gICAgICAgIEV1aUJsb2NrQ29udGVudE1vZHVsZSxcbiAgICAgICAgRXVpQmFkZ2VNb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbLi4uQ09NUE9ORU5UU10sXG59KVxuZXhwb3J0IGNsYXNzIEV1aVNob3djYXNlTW9kdWxlIHsgfVxuIl19