@eui/showcase 18.0.0-next.76 → 18.0.0-next.78

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.
@@ -1,6 +1,42 @@
1
- // lib/components/playground/stackblitz.files.mjs
2
- var polyfillsFile = "import 'zone.js';";
3
- var mainFile = (moduleName, componentName) => `
1
+ import * as i0 from '@angular/core';
2
+ import { inject, Injectable, Directive, booleanAttribute, Component, ViewEncapsulation, Input, HostBinding, ContentChildren, forwardRef, ViewChild, ContentChild, ElementRef, HostListener, NgModule } from '@angular/core';
3
+ import * as i4$1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i2$1 from '@eui/components/eui-card';
6
+ import { EuiCardModule } from '@eui/components/eui-card';
7
+ import * as i2$2 from '@eui/components/eui-button';
8
+ import { EuiButtonModule } from '@eui/components/eui-button';
9
+ import * as i9 from '@eui/components/eui-tabs';
10
+ import { EuiTabsModule } from '@eui/components/eui-tabs';
11
+ import * as i6 from '@eui/components/eui-page';
12
+ import { EuiPageModule } from '@eui/components/eui-page';
13
+ import * as i7 from '@eui/components/eui-chip';
14
+ import { EuiChipModule } from '@eui/components/eui-chip';
15
+ import * as i3$2 from '@eui/components/eui-dialog';
16
+ import { EuiDialogModule } from '@eui/components/eui-dialog';
17
+ import * as i8 from '@eui/components/eui-alert';
18
+ import { EuiAlertModule } from '@eui/components/eui-alert';
19
+ import * as i1$1 from '@eui/components/eui-block-content';
20
+ import { EuiBlockContentModule } from '@eui/components/eui-block-content';
21
+ import * as i6$1 from '@eui/components/eui-badge';
22
+ import { EuiBadgeModule } from '@eui/components/eui-badge';
23
+ import * as i10 from '@eui/components/eui-icon';
24
+ import { EuiIconModule } from '@eui/components/eui-icon';
25
+ import * as i11 from '@eui/components/eui-label';
26
+ import { EuiLabelModule } from '@eui/components/eui-label';
27
+ import { lastValueFrom, forkJoin, Observable } from 'rxjs';
28
+ import { map, catchError } from 'rxjs/operators';
29
+ import sdk from '@stackblitz/sdk';
30
+ import * as i2 from '@angular/common/http';
31
+ import { HttpClient } from '@angular/common/http';
32
+ import * as i3 from '@eui/core';
33
+ import * as i4 from '@angular/cdk/clipboard';
34
+ import * as i1 from '@angular/router';
35
+ import * as i3$1 from '@angular/platform-browser';
36
+ import { DomSanitizer } from '@angular/platform-browser';
37
+
38
+ const polyfillsFile = 'import \'zone.js\';';
39
+ const mainFile = (moduleName, componentName) => `
4
40
  import './polyfills';
5
41
  import { BrowserModule } from '@angular/platform-browser';
6
42
  import { InjectionToken, NgModule } from '@angular/core';
@@ -55,7 +91,7 @@ platformBrowserDynamic().bootstrapModule(RootModule).then(ref => {
55
91
  // Otherwise, log the boot error
56
92
  }).catch(err => console.error(err));
57
93
  `;
58
- var moduleFile = (componentName, m = []) => `
94
+ const moduleFile = (componentName, m = []) => `
59
95
  import { NgModule, InjectionToken } from '@angular/core';
60
96
  import { BrowserModule } from '@angular/platform-browser';
61
97
  import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
@@ -77,8 +113,9 @@ import {
77
113
  } from '@eui/core';
78
114
 
79
115
  import { ${componentName} } from './component';
80
- ` + m.map((i) => `import { ${i.name} } from '${i.path}';
81
- `).join("") + `
116
+ ` +
117
+ m.map((i) => `import { ${i.name} } from '${i.path}';\n`).join('') +
118
+ `
82
119
 
83
120
  export const REDUCER_TOKEN = new InjectionToken<any>('Registered Reducers');
84
121
 
@@ -95,7 +132,9 @@ export const REDUCER_TOKEN = new InjectionToken<any>('Registered Reducers');
95
132
  EffectsModule.forRoot([...CoreModuleEffects]),
96
133
  TranslateModule.forRoot(translateConfig),
97
134
  StoreModule.forRoot(REDUCER_TOKEN, { })
98
- ` + m.map((i) => `${i.name},`).join("") + `
135
+ ` +
136
+ m.map((i) => `${i.name},`).join('') +
137
+ `
99
138
  ],
100
139
  declarations: [${componentName}],
101
140
  providers: [
@@ -116,7 +155,7 @@ export const REDUCER_TOKEN = new InjectionToken<any>('Registered Reducers');
116
155
  })
117
156
  export class AppModule {}
118
157
  `;
119
- var angularJsonFile = `
158
+ const angularJsonFile = `
120
159
  {
121
160
  "version": 1,
122
161
  "newProjectRoot": "projects",
@@ -195,18 +234,18 @@ var angularJsonFile = `
195
234
  }
196
235
  }
197
236
  `;
198
- var indexHtmlFile = (selector) => `
237
+ const indexHtmlFile = (selector) => `
199
238
  <div style="padding: 10px">
200
239
  <${selector}></${selector}>
201
240
  </div>
202
241
  `;
203
- var PACKAGE_JSON = {
204
- name: "demo",
205
- version: "0.0.0",
206
- private: true,
207
- dependencies: {}
242
+ const PACKAGE_JSON = {
243
+ name: 'demo',
244
+ version: '0.0.0',
245
+ private: true,
246
+ dependencies: {},
208
247
  };
209
- var tsConfig = `
248
+ const tsConfig = `
210
249
  {
211
250
  "compileOnSave": false,
212
251
  "compilerOptions": {
@@ -237,2741 +276,1355 @@ var tsConfig = `
237
276
  }
238
277
  }`;
239
278
 
240
- // lib/components/playground/stackblitz.service.mjs
241
- import sdk from "@stackblitz/sdk";
242
- import { lastValueFrom } from "rxjs";
243
- import { inject, Injectable } from "@angular/core";
244
- import { HttpClient } from "@angular/common/http";
245
- import * as i0 from "@angular/core";
246
- var StackblitzService = class _StackblitzService {
247
- constructor() {
248
- this.http = inject(HttpClient);
249
- }
250
- /**
251
- * extract the name of the component class name and selector name from the typescript content
252
- *
253
- * @param contents
254
- * @private
255
- */
256
- extractComponentMetadata(contents) {
257
- const selectorRegex = /selector: ('(?<singleQuotedSelector>[\w\d-]+)'|"(?<doubleQuotedSelector>[\w\d-]+)")/;
258
- const classRegex = /export class ([\w\d]+)/;
259
- const className = contents.match(classRegex);
260
- const selectorName = contents.match(selectorRegex);
261
- const found = selectorName?.groups?.singleQuotedSelector || selectorName?.groups?.doubleQuotedSelector;
262
- return {
263
- className: className ? className[1] : "",
264
- selector: found || ""
265
- };
266
- }
267
- /**
268
- * extract module class name from the typescript content
269
- *
270
- * @param contents
271
- * @private
272
- */
273
- extractModuleName(contents) {
274
- const moduleClass = contents.match(/export class (\w+Module)/);
275
- return moduleClass ? moduleClass[1] : "";
276
- }
277
- /**
278
- * extract the name of the component class name and selector name from the typescript content
279
- *
280
- * @param contents
281
- * @private
282
- */
283
- extractComponentName(contents) {
284
- const componentName = contents.match(/bootstrap: \[([\s\S]*?)]/);
285
- return componentName ? componentName[1] : "";
286
- }
287
- appendVitalNgModules(contents) {
288
- contents = contents.replace(/imports: \[([\s\S]*?)\]/, "imports: [\n BrowserModule, $1]");
289
- contents = `import { BrowserModule } from '@angular/platform-browser';
290
- ${contents}`;
291
- contents = contents.replace(/imports: \[([\s\S]*?)\]/, "imports: [\n BrowserAnimationsModule, $1]");
292
- contents = `import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
293
- ${contents}`;
294
- return contents;
295
- }
296
- /**
297
- * Open a stackblitz project in a new browser TAB with the given html and typescript content
298
- * @param htmlContent
299
- * @param typescriptContent
300
- * @param title
301
- * @param sampleId
302
- */
303
- openStackBlitz(htmlContent, typescriptContent, title, sampleId) {
304
- this.getStackblitzDependencies().then((deps) => {
305
- const { dependencies, devDependencies } = deps;
306
- const { selector } = this.extractComponentMetadata(typescriptContent);
307
- const moduleName = this.extractModuleName(typescriptContent);
308
- const componentName = this.extractComponentName(typescriptContent);
309
- const project = {
310
- title,
311
- description: `An eUI example for the ${title}.`,
312
- template: "angular-cli",
313
- files: {
314
- "src/component.html": htmlContent,
315
- "src/component.ts": this.appendVitalNgModules(typescriptContent),
316
- "src/main.ts": mainFile(moduleName, componentName),
317
- "src/polyfills.ts": polyfillsFile,
318
- "src/index.html": indexHtmlFile(selector),
319
- "angular.json": angularJsonFile,
320
- "package.json": JSON.stringify({
321
- ...PACKAGE_JSON,
322
- dependencies,
323
- devDependencies
324
- }, null, 2),
325
- "tsconfig.json": tsConfig
326
- },
327
- settings: {
328
- compile: {
329
- trigger: "auto",
330
- clearConsole: true
331
- }
332
- },
333
- dependencies
334
- };
335
- return sdk.openProject(project, {
336
- openFile: ["src/component.ts", "src/component.html"],
337
- zenMode: true
338
- });
339
- });
340
- }
341
- /**
342
- * Retrieve only the dependencies that stackblitz will need filtered from @eui/deps-base
343
- *
344
- * @private
345
- */
346
- getStackblitzDependencies() {
347
- const stackblitzDependencies = [
348
- "@angular/animations",
349
- "@angular/cdk",
350
- "@angular/common",
351
- "@angular/compiler",
352
- "@angular/core",
353
- "@angular/forms",
354
- "@angular/material",
355
- "@angular/material-moment-adapter",
356
- "@angular/platform-browser",
357
- "@angular/platform-browser-dynamic",
358
- "@angular/router",
359
- "@eui/base",
360
- "@eui/components",
361
- "@eui/core",
362
- "@eui/styles",
363
- "@ngrx/effects",
364
- "@ngrx/store",
365
- "@ngx-translate/core",
366
- "localforage",
367
- "lodash-es",
368
- "reselect",
369
- "rxjs",
370
- "tslib",
371
- "zone.js"
372
- ];
373
- const stackblitzDevDependencies = ["@angular-devkit/build-angular", "@angular/cli", "@angular/compiler-cli", "typescript"];
374
- return this.getCurrentShowcaseEuiVersion().then((version) => this.retrievePackageDependencies(version)).then((dependencies) => {
375
- let filteredArr = Object.entries(dependencies).filter((v) => stackblitzDependencies.find((s) => s === v[0]));
376
- const filteredObj = Object.fromEntries(filteredArr);
377
- const extraDependencies = {
378
- uuid: "8.3.2",
379
- "ngx-device-detector": "3.0.0",
380
- "ngx-moment": "~6.0.0",
381
- "ngx-mask": "^14.0.0",
382
- "cleave.js": "^1.6.0",
383
- moment: "^2.19.3",
384
- extend: "^3.0.2"
385
- };
386
- filteredArr = Object.entries(dependencies).filter((v) => stackblitzDevDependencies.find((s) => s === v[0]));
387
- dependencies = { ...extraDependencies, ...filteredObj };
388
- const devDependencies = Object.fromEntries(filteredArr);
389
- return { dependencies, devDependencies };
390
- });
391
- }
392
- /**
393
- * Retrieve the dependencies from the package.json file of @eui/deps-base for the given version.
394
- *
395
- * @param version
396
- * @private
397
- */
398
- retrievePackageDependencies(version) {
399
- return fetch(`https://unpkg.com/@eui/deps-base@${version}/package.json`).then((response) => response.json()).then((pkg) => pkg?.dependencies);
400
- }
401
- /**
402
- * Retrieve the eUI version used to build the showcase from application app-metadata.json
403
- *
404
- * @private
405
- */
406
- getCurrentShowcaseEuiVersion() {
407
- return lastValueFrom(this.http.get("assets/app-metadata.json", { responseType: "json" })).then((res) => res?.appVersion || "latest");
408
- }
409
- static {
410
- this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: _StackblitzService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
411
- }
412
- static {
413
- this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: _StackblitzService });
414
- }
415
- };
279
+ class StackblitzService {
280
+ constructor() {
281
+ this.http = inject(HttpClient);
282
+ }
283
+ /**
284
+ * extract the name of the component class name and selector name from the typescript content
285
+ *
286
+ * @param contents
287
+ * @private
288
+ */
289
+ extractComponentMetadata(contents) {
290
+ const selectorRegex = /selector: ('(?<singleQuotedSelector>[\w\d-]+)'|"(?<doubleQuotedSelector>[\w\d-]+)")/;
291
+ const classRegex = /export class ([\w\d]+)/;
292
+ const className = contents.match(classRegex);
293
+ const selectorName = contents.match(selectorRegex);
294
+ const found = selectorName?.groups?.singleQuotedSelector || selectorName?.groups?.doubleQuotedSelector;
295
+ return {
296
+ className: className ? className[1] : '',
297
+ selector: found || '',
298
+ };
299
+ }
300
+ /**
301
+ * extract module class name from the typescript content
302
+ *
303
+ * @param contents
304
+ * @private
305
+ */
306
+ extractModuleName(contents) {
307
+ const moduleClass = contents.match(/export class (\w+Module)/);
308
+ return moduleClass ? moduleClass[1] : '';
309
+ }
310
+ /**
311
+ * extract the name of the component class name and selector name from the typescript content
312
+ *
313
+ * @param contents
314
+ * @private
315
+ */
316
+ extractComponentName(contents) {
317
+ const componentName = contents.match(/bootstrap: \[([\s\S]*?)]/);
318
+ return componentName ? componentName[1] : '';
319
+ }
320
+ appendVitalNgModules(contents) {
321
+ // const imports = contents.match(/imports: \[([\s\S]*?)\]/);
322
+ // appends BrowserModule to imports
323
+ contents = contents.replace(/imports: \[([\s\S]*?)\]/, 'imports: [\n\t\tBrowserModule, $1]');
324
+ // appends import of BrowserModule
325
+ contents = `import { BrowserModule } from '@angular/platform-browser';\n${contents}`;
326
+ // appends BrowserAnimationsModule to imports
327
+ contents = contents.replace(/imports: \[([\s\S]*?)\]/, 'imports: [\n\t\tBrowserAnimationsModule, $1]');
328
+ // appends import of BrowserAnimationsModule
329
+ contents = `import { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n${contents}`;
330
+ return contents;
331
+ }
332
+ /**
333
+ * Open a stackblitz project in a new browser TAB with the given html and typescript content
334
+ * @param htmlContent
335
+ * @param typescriptContent
336
+ * @param title
337
+ * @param sampleId
338
+ */
339
+ openStackBlitz(htmlContent, typescriptContent, title, sampleId) {
340
+ this.getStackblitzDependencies()
341
+ .then((deps) => {
342
+ const { dependencies, devDependencies } = deps;
343
+ const { selector } = this.extractComponentMetadata(typescriptContent);
344
+ const moduleName = this.extractModuleName(typescriptContent);
345
+ const componentName = this.extractComponentName(typescriptContent);
346
+ const project = {
347
+ title: title,
348
+ description: `An eUI example for the ${title}.`,
349
+ template: 'angular-cli',
350
+ files: {
351
+ 'src/component.html': htmlContent,
352
+ 'src/component.ts': this.appendVitalNgModules(typescriptContent),
353
+ 'src/main.ts': mainFile(moduleName, componentName),
354
+ 'src/polyfills.ts': polyfillsFile,
355
+ 'src/index.html': indexHtmlFile(selector),
356
+ 'angular.json': angularJsonFile,
357
+ 'package.json': JSON.stringify({
358
+ ...PACKAGE_JSON,
359
+ dependencies,
360
+ devDependencies,
361
+ }, null, 2),
362
+ 'tsconfig.json': tsConfig,
363
+ },
364
+ settings: {
365
+ compile: {
366
+ trigger: 'auto',
367
+ clearConsole: true,
368
+ },
369
+ },
370
+ dependencies,
371
+ };
372
+ return sdk.openProject(project, {
373
+ openFile: ['src/component.ts', 'src/component.html'],
374
+ zenMode: true,
375
+ });
376
+ });
377
+ }
378
+ /**
379
+ * Retrieve only the dependencies that stackblitz will need filtered from @eui/deps-base
380
+ *
381
+ * @private
382
+ */
383
+ getStackblitzDependencies() {
384
+ // a list of dependencies only stackblitz needs
385
+ const stackblitzDependencies = [
386
+ '@angular/animations',
387
+ '@angular/cdk',
388
+ '@angular/common',
389
+ '@angular/compiler',
390
+ '@angular/core',
391
+ '@angular/forms',
392
+ '@angular/material',
393
+ '@angular/material-moment-adapter',
394
+ '@angular/platform-browser',
395
+ '@angular/platform-browser-dynamic',
396
+ '@angular/router',
397
+ '@eui/base',
398
+ '@eui/components',
399
+ '@eui/core',
400
+ '@eui/styles',
401
+ '@ngrx/effects',
402
+ '@ngrx/store',
403
+ '@ngx-translate/core',
404
+ 'localforage',
405
+ 'lodash-es',
406
+ 'reselect',
407
+ 'rxjs',
408
+ 'tslib',
409
+ 'zone.js',
410
+ ];
411
+ const stackblitzDevDependencies = ['@angular-devkit/build-angular', '@angular/cli', '@angular/compiler-cli', 'typescript'];
412
+ return this.getCurrentShowcaseEuiVersion()
413
+ .then((version) => this.retrievePackageDependencies(version))
414
+ .then((dependencies) => {
415
+ // filter dependencies to only what stackblitz needs
416
+ let filteredArr = Object.entries(dependencies).filter((v) => stackblitzDependencies.find((s) => s === v[0]));
417
+ const filteredObj = Object.fromEntries(filteredArr);
418
+ const extraDependencies = {
419
+ uuid: '8.3.2',
420
+ 'ngx-device-detector': '3.0.0',
421
+ 'ngx-moment': '~6.0.0',
422
+ 'ngx-mask': '^14.0.0',
423
+ 'cleave.js': '^1.6.0',
424
+ moment: '^2.19.3',
425
+ extend: '^3.0.2',
426
+ };
427
+ // filter devDependencies to only what stackblitz needs
428
+ filteredArr = Object.entries(dependencies).filter((v) => stackblitzDevDependencies.find((s) => s === v[0]));
429
+ dependencies = { ...extraDependencies, ...filteredObj };
430
+ const devDependencies = Object.fromEntries(filteredArr);
431
+ return { dependencies, devDependencies };
432
+ });
433
+ }
434
+ /**
435
+ * Retrieve the dependencies from the package.json file of @eui/deps-base for the given version.
436
+ *
437
+ * @param version
438
+ * @private
439
+ */
440
+ retrievePackageDependencies(version) {
441
+ return fetch(`https://unpkg.com/@eui/deps-base@${version}/package.json`)
442
+ .then((response) => response.json())
443
+ .then((pkg) => pkg?.dependencies);
444
+ }
445
+ /**
446
+ * Retrieve the eUI version used to build the showcase from application app-metadata.json
447
+ *
448
+ * @private
449
+ */
450
+ getCurrentShowcaseEuiVersion() {
451
+ return lastValueFrom(this.http.get('assets/app-metadata.json', { responseType: 'json' })).then((res) => res?.appVersion || 'latest');
452
+ }
453
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: StackblitzService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
454
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: StackblitzService }); }
455
+ }
416
456
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: StackblitzService, decorators: [{
417
- type: Injectable
418
- }] });
457
+ type: Injectable
458
+ }] });
419
459
 
420
- // lib/components/eui-code-highlighter/eui-code-highlighter.component.mjs
421
- import { Directive } from "@angular/core";
422
- import * as i02 from "@angular/core";
423
- var EuiCodeHighlighterDirective = class _EuiCodeHighlighterDirective {
424
- constructor(el) {
425
- this.el = el;
426
- }
427
- ngAfterViewInit() {
428
- if (window["Prism"]) {
429
- window["Prism"].highlightElement(this.el.nativeElement);
460
+ class EuiCodeHighlighterDirective {
461
+ constructor(el) {
462
+ this.el = el;
430
463
  }
431
- }
432
- static {
433
- this.ɵfac = i02.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i02, type: _EuiCodeHighlighterDirective, deps: [{ token: i02.ElementRef }], target: i02.ɵɵFactoryTarget.Directive });
434
- }
435
- static {
436
- this.ɵdir = i02.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _EuiCodeHighlighterDirective, selector: "[euiCode]", ngImport: i02 });
437
- }
438
- };
439
- i02.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i02, type: EuiCodeHighlighterDirective, decorators: [{
440
- type: Directive,
441
- args: [{
442
- selector: "[euiCode]"
443
- }]
444
- }], ctorParameters: () => [{ type: i02.ElementRef }] });
445
-
446
- // lib/components/doc-sample/doc-sample.component.mjs
447
- import { Component, Input, ViewEncapsulation, HostBinding, booleanAttribute } from "@angular/core";
448
- import { forkJoin, Observable } from "rxjs";
449
- import { map, catchError } from "rxjs/operators";
450
- import * as i03 from "@angular/core";
451
- import * as i2 from "@angular/common/http";
452
- import * as i3 from "@eui/core";
453
- import * as i4 from "@angular/cdk/clipboard";
454
- import * as i5 from "@angular/router";
455
- import * as i6 from "@angular/common";
456
- import * as i7 from "@eui/components/eui-card";
457
- import * as i8 from "@eui/components/eui-button";
458
- import * as i9 from "@eui/components/eui-tabs";
459
- import * as i10 from "@eui/components/eui-icon";
460
- import * as i11 from "@eui/components/eui-label";
461
- var DocSampleComponent = class _DocSampleComponent {
462
- constructor(sb, _http, asService, cd, growlService, clipboard, router) {
463
- this.sb = sb;
464
- this._http = _http;
465
- this.asService = asService;
466
- this.cd = cd;
467
- this.growlService = growlService;
468
- this.clipboard = clipboard;
469
- this.router = router;
470
- this.id = "";
471
- this.label = "";
472
- this.styleClass = "";
473
- this.renderPlayground = false;
474
- this.isCodeButtonVisible = true;
475
- this.isInnerSection = false;
476
- this.classes = "eui-showcase-doc-sample";
477
- this.isCodeLoaded = false;
478
- this.isCodeLoading = false;
479
- this.isCodeExpanded = false;
480
- this.playground_activated = false;
481
- }
482
- ngAfterContentInit() {
483
- if (!this.label) {
484
- this.label = this.id;
464
+ ngAfterViewInit() {
465
+ if (window['Prism']) {
466
+ window['Prism'].highlightElement(this.el.nativeElement);
467
+ }
485
468
  }
486
- }
487
- copyCurrentUrlToClipboard(id) {
488
- try {
489
- const baseDomain = window?.location?.origin;
490
- const currentUrl = this.router.url.split("#");
491
- const fullUrl = baseDomain + currentUrl[0] + "#" + id;
492
- this.clipboard.copy(fullUrl);
493
- } catch (err) {
494
- this.growlService.growl({ severity: "danger", summary: "Clipboard service not available" });
495
- } finally {
496
- this.growlService.growl({ severity: "info", summary: "Link URL copied to clipboard" });
469
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: EuiCodeHighlighterDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
470
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: EuiCodeHighlighterDirective, selector: "[euiCode]", ngImport: i0 }); }
471
+ }
472
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: EuiCodeHighlighterDirective, decorators: [{
473
+ type: Directive,
474
+ args: [{
475
+ selector: '[euiCode]',
476
+ }]
477
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
478
+
479
+ class DocSampleComponent {
480
+ constructor(sb, _http, asService, cd, growlService, clipboard, router) {
481
+ this.sb = sb;
482
+ this._http = _http;
483
+ this.asService = asService;
484
+ this.cd = cd;
485
+ this.growlService = growlService;
486
+ this.clipboard = clipboard;
487
+ this.router = router;
488
+ this.id = '';
489
+ this.label = '';
490
+ this.styleClass = '';
491
+ this.renderPlayground = false;
492
+ this.isCodeButtonVisible = true;
493
+ this.isInnerSection = false;
494
+ this.classes = 'eui-showcase-doc-sample';
495
+ this.isCodeLoaded = false;
496
+ this.isCodeLoading = false;
497
+ this.isCodeExpanded = false;
498
+ this.playground_activated = false;
497
499
  }
498
- }
499
- onToggleCode() {
500
- if (this.isCodeLoaded) {
501
- this.isCodeExpanded = !this.isCodeExpanded;
500
+ ngAfterContentInit() {
501
+ if (!this.label) {
502
+ this.label = this.id;
503
+ }
502
504
  }
503
- if (!this.isCodeLoaded) {
504
- this.loadCodeFiles().subscribe((demo) => {
505
- this.tsContent = demo.typescript;
506
- this.htmlContent = demo.html;
507
- this.isCodeLoaded = true;
508
- this.isCodeExpanded = true;
509
- this.isCodeLoading = false;
510
- this.cd.detectChanges();
511
- });
505
+ copyCurrentUrlToClipboard(id) {
506
+ try {
507
+ const baseDomain = window?.location?.origin;
508
+ const currentUrl = this.router.url.split('#');
509
+ const fullUrl = baseDomain + currentUrl[0] + '#' + id;
510
+ this.clipboard.copy(fullUrl);
511
+ }
512
+ catch (err) {
513
+ this.growlService.growl({ severity: 'danger', summary: 'Clipboard service not available' });
514
+ }
515
+ finally {
516
+ this.growlService.growl({ severity: 'info', summary: 'Link URL copied to clipboard' });
517
+ }
512
518
  }
513
- }
514
- /**
515
- * on playground tab selected inform the playground component that its content is rendered
516
- * TODO: fix the bug on eui-tab implementation where the ngAfterViewInit is called without the view actually
517
- * being rendered on screen. Issue is that initially the view is being rendered and then removed from the DOM.
518
- * Internally eui-tabs is moving the projected content.
519
- *
520
- * @param selected The selected tab component reference and its index in the tabs array.
521
- */
522
- onSelectedTab(selected) {
523
- this.playground_activated = selected.index === 2;
524
- }
525
- /**
526
- * filter out the extra import and module from the code sample
527
- *
528
- * @param code
529
- */
530
- filterOutModuleAndImports(code) {
531
- const moduleRegex = /@NgModule\(([\s\S]*?)\)\nexport class \w+ \{([\s\S]*?)\}/g;
532
- code = code.replace(moduleRegex, "");
533
- code = code.replace("import { EuiAllModule } from '@eui/components';\n", "");
534
- code = code.replace("import { NgModule } from '@angular/core';\n", "");
535
- return code;
536
- }
537
- /**
538
- * open the code sample in stackblitz
539
- */
540
- onStackblitzOpen() {
541
- this.loadCodeFiles().subscribe((demo) => {
542
- this.tsContent = demo.typescript;
543
- this.htmlContent = demo.html;
544
- this.sb.openStackBlitz(this.htmlContent, this.tsContent, "eUI Playground", this.id);
545
- });
546
- }
547
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
548
- _getComponent(id) {
549
- const flatLinks = this.flatten(this.asService.state.sidebarLinks);
550
- return flatLinks.filter((item) => item.id === id)[0];
551
- }
552
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
553
- flatten(links) {
554
- return links ? links.reduce(
555
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
556
- (result, item) => [
557
- ...result,
558
- {
559
- id: item.id,
560
- alternateSampleLocation: item.alternateSampleLocation
561
- },
562
- ...this.flatten(item.children)
563
- ],
564
- []
565
- ) : [];
566
- }
567
- loadCodeFiles() {
568
- this.isCodeLoading = true;
569
- const url = window.location;
570
- const pathName = url.pathname;
571
- const pathNameArray = pathName.split("/");
572
- let samplePathArray = [];
573
- const cmpId = pathNameArray[pathNameArray.length - 1];
574
- const cmp = this._getComponent(cmpId);
575
- if (cmp && cmp.alternateSampleLocation) {
576
- samplePathArray = cmp.alternateSampleLocation.split("/").reverse();
577
- } else {
578
- for (let i = pathNameArray.length - 1; i >= 0; i--) {
579
- if (pathNameArray[i].indexOf("eui-showcase-") > -1 || pathNameArray[i].indexOf("localhost") > -1) {
580
- break;
519
+ onToggleCode() {
520
+ if (this.isCodeLoaded) {
521
+ this.isCodeExpanded = !this.isCodeExpanded;
581
522
  }
582
- if (pathNameArray[i] !== "") {
583
- samplePathArray.push(pathNameArray[i]);
523
+ if (!this.isCodeLoaded) {
524
+ this.loadCodeFiles().subscribe((demo) => {
525
+ this.tsContent = demo.typescript;
526
+ this.htmlContent = demo.html;
527
+ this.isCodeLoaded = true;
528
+ this.isCodeExpanded = true;
529
+ this.isCodeLoading = false;
530
+ this.cd.detectChanges();
531
+ });
584
532
  }
585
- }
586
533
  }
587
- samplePathArray = samplePathArray.reverse();
588
- samplePathArray.push("samples");
589
- samplePathArray.push(this.id);
590
- const samplesPath = `assets/samples/${samplePathArray.join("/")}`;
591
- return forkJoin({
592
- typescript: this._http.get(`${samplesPath}/component.ts`, {
593
- responseType: "text"
594
- }),
595
- html: this._http.get(`${samplesPath}/component.html`, {
596
- responseType: "text"
597
- })
598
- }).pipe(map((responses) => {
599
- this.isCodeLoaded = true;
600
- this.isCodeLoading = false;
601
- return { typescript: responses.typescript, html: responses.html };
602
- }), catchError((error) => {
603
- this.growlService.growlError(`Issue while fetching : ${error.url} : ${error.status}-${error.statusText}`);
604
- return new Observable((subscriber) => {
605
- try {
606
- subscriber.error(error);
607
- } catch (err) {
608
- subscriber.error(error);
534
+ /**
535
+ * on playground tab selected inform the playground component that its content is rendered
536
+ * TODO: fix the bug on eui-tab implementation where the ngAfterViewInit is called without the view actually
537
+ * being rendered on screen. Issue is that initially the view is being rendered and then removed from the DOM.
538
+ * Internally eui-tabs is moving the projected content.
539
+ *
540
+ * @param selected The selected tab component reference and its index in the tabs array.
541
+ */
542
+ onSelectedTab(selected) {
543
+ this.playground_activated = selected.index === 2;
544
+ }
545
+ /**
546
+ * filter out the extra import and module from the code sample
547
+ *
548
+ * @param code
549
+ */
550
+ filterOutModuleAndImports(code) {
551
+ // filter out module
552
+ const moduleRegex = /@NgModule\(([\s\S]*?)\)\nexport class \w+ \{([\s\S]*?)\}/g;
553
+ code = code.replace(moduleRegex, '');
554
+ // filter out extra imports
555
+ // eslint-disable-next-line
556
+ code = code.replace("import { EuiAllModule } from '@eui/components';\n", '');
557
+ // eslint-disable-next-line
558
+ code = code.replace("import { NgModule } from '@angular/core';\n", '');
559
+ return code;
560
+ }
561
+ /**
562
+ * open the code sample in stackblitz
563
+ */
564
+ onStackblitzOpen() {
565
+ this.loadCodeFiles().subscribe((demo) => {
566
+ this.tsContent = demo.typescript;
567
+ this.htmlContent = demo.html;
568
+ this.sb.openStackBlitz(this.htmlContent, this.tsContent, 'eUI Playground', this.id);
569
+ });
570
+ }
571
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
572
+ _getComponent(id) {
573
+ const flatLinks = this.flatten(this.asService.state.sidebarLinks);
574
+ return flatLinks.filter((item) => item.id === id)[0];
575
+ }
576
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
577
+ flatten(links) {
578
+ return links
579
+ ? links.reduce(
580
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
581
+ (result, item) => [
582
+ ...result,
583
+ {
584
+ id: item.id,
585
+ alternateSampleLocation: item.alternateSampleLocation,
586
+ },
587
+ ...this.flatten(item.children),
588
+ ], [])
589
+ : [];
590
+ }
591
+ loadCodeFiles() {
592
+ this.isCodeLoading = true;
593
+ const url = window.location;
594
+ const pathName = url.pathname;
595
+ const pathNameArray = pathName.split('/');
596
+ let samplePathArray = [];
597
+ const cmpId = pathNameArray[pathNameArray.length - 1];
598
+ const cmp = this._getComponent(cmpId);
599
+ if (cmp && cmp.alternateSampleLocation) {
600
+ samplePathArray = cmp.alternateSampleLocation.split('/').reverse();
609
601
  }
610
- });
611
- }));
612
- }
613
- static {
614
- this.ɵfac = i03.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i03, type: _DocSampleComponent, deps: [{ token: StackblitzService }, { token: i2.HttpClient }, { token: i3.EuiAppShellService }, { token: i03.ChangeDetectorRef }, { token: i3.EuiGrowlService }, { token: i4.Clipboard }, { token: i5.Router }], target: i03.ɵɵFactoryTarget.Component });
615
- }
616
- static {
617
- this.ɵcmp = i03.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.0-rc.3", type: _DocSampleComponent, selector: "eui-showcase-doc-sample", inputs: { id: "id", label: "label", category: "category", description: "description", defaultValue: "defaultValue", styleClass: "styleClass", renderPlayground: ["renderPlayground", "renderPlayground", booleanAttribute], isCodeButtonVisible: ["isCodeButtonVisible", "isCodeButtonVisible", booleanAttribute], isInnerSection: ["isInnerSection", "isInnerSection", booleanAttribute] }, host: { properties: { "class": "this.classes" } }, ngImport: i03, template: '<div class="doc-sample-title">\n <div class="doc-sample-title__label" [class.doc-sample-title__label--inner]="isInnerSection">\n {{ label }}\n <button\n euiButton\n euiIconButton\n euiBasicButton\n euiRounded\n euiPrimary\n euiSizeS\n (click)="copyCurrentUrlToClipboard(id)"\n class="doc-sample-title__link"\n tabindex="-1">\n <eui-icon-svg icon="link" set="outline" size="l" fillColor="grey-75"></eui-icon-svg>\n </button>\n </div>\n <div *ngIf="renderPlayground" class="doc-sample-title__items" style="margin-right: 3px">\n <button\n *ngIf="isCodeButtonVisible"\n type="button"\n euiButton\n [euiOutline]="!isCodeExpanded"\n euiPrimary\n euiSizeS\n (click)="onStackblitzOpen()">\n <span euiLabel>Stackblitz</span>\n <eui-icon-svg icon="expand:sharp"></eui-icon-svg>\n </button>\n </div>\n <div class="doc-sample-title__items">\n <button\n *ngIf="isCodeButtonVisible"\n type="button"\n euiButton\n [euiOutline]="!isCodeExpanded"\n euiPrimary\n euiSizeS\n (click)="onToggleCode()"\n [euiDisabled]="isCodeLoading">\n <eui-icon-svg *ngIf="isCodeLoading" isLoading></eui-icon-svg>\n <span *ngIf="!isCodeExpanded" euiLabel>Code</span>\n <span *ngIf="isCodeExpanded" euiLabel>Hide Code</span>\n <eui-icon-svg icon="eui-code"></eui-icon-svg>\n </button>\n </div>\n</div>\n\n<ng-template [ngIf]="isCodeExpanded">\n <eui-card euiNoContentPadding>\n <eui-card-content>\n <eui-tabs (tabSelect)="onSelectedTab($event)">\n <eui-tab [isVisible]="htmlContent">\n <euiTabLabel>\n HTML\n <euiTabSubLabel>HyperText Markup Language</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class="language-markup" euiCode>{{htmlContent}}</code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="tsContent">\n <euiTabLabel>\n TS\n <euiTabSubLabel>Typescript</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class="language-javascript" euiCode>{{filterOutModuleAndImports(tsContent)}}</code></pre>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n </eui-card-content>\n </eui-card>\n</ng-template>\n\n<ng-content></ng-content>\n', styles: [".eui-showcase-doc-sample{display:block;margin-bottom:var(--eui-s-2xl);margin-top:var(--eui-s-6xl);width:100%}.eui-showcase-doc-sample:first-child{margin-top:var(--eui-s-xl)}.eui-showcase-doc-sample .doc-sample-title{align-items:flex-end;display:flex;width:100%;margin-bottom:var(--eui-s-m);padding-bottom:var(--eui-s-s);border-bottom:1px solid var(--eui-c-neutral-lightest)}.eui-showcase-doc-sample .doc-sample-title__label{align-items:center;display:flex;min-height:var(--eui-s-xl);width:100%;letter-spacing:-.75px;font:var(--eui-f-xl-bold)}.eui-showcase-doc-sample .doc-sample-title__label:hover .doc-sample-title__link{opacity:1;transition:all .25s ease-in-out}.eui-showcase-doc-sample .doc-sample-title__label--inner{color:var(--eui-c-neutral-light);font:var(--eui-f-l)}.eui-showcase-doc-sample .doc-sample-title__items{display:flex;margin-left:auto}.eui-showcase-doc-sample .doc-sample-title__link{opacity:0;margin-left:var(--eui-s-m)}.eui-showcase-doc-sample .doc-sample-section-title,.eui-showcase-doc-sample h6.section-title{border-bottom:none;letter-spacing:-.5px;margin:var(--eui-s-3xl) 0 var(--eui-s-xs) 0!important;width:auto;display:table;color:var(--eui-c-info-darker);font:var(--eui-f-l)!important}.eui-showcase-doc-sample .doc-sample-section-title:first-child,.eui-showcase-doc-sample h6.section-title:first-child{margin-top:var(--eui-s-m)!important}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.EuiCardComponent, selector: "eui-card", inputs: ["e2eAttr", "euiSelected", "euiCollapsible", "euiCollapsed", "euiUrgent", "euiNoShadow", "euiNoContentPadding", "euiHoverable"], outputs: ["collapse"] }, { kind: "component", type: i7.EuiCardContentComponent, selector: "eui-card-content" }, { kind: "component", type: i8.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i9.EuiTabsComponent, selector: "eui-tabs", inputs: ["tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClose", "tabSelect"] }, { kind: "component", type: i9.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "component", type: i9.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "directive", type: i9.EuiTabSubLabelDirective, selector: "euiTabSubLabel" }, { kind: "component", type: i9.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i10.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i11.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }, { kind: "directive", type: EuiCodeHighlighterDirective, selector: "[euiCode]" }], encapsulation: i03.ViewEncapsulation.None });
618
- }
619
- };
620
- i03.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i03, type: DocSampleComponent, decorators: [{
621
- type: Component,
622
- args: [{ selector: "eui-showcase-doc-sample", encapsulation: ViewEncapsulation.None, template: '<div class="doc-sample-title">\n <div class="doc-sample-title__label" [class.doc-sample-title__label--inner]="isInnerSection">\n {{ label }}\n <button\n euiButton\n euiIconButton\n euiBasicButton\n euiRounded\n euiPrimary\n euiSizeS\n (click)="copyCurrentUrlToClipboard(id)"\n class="doc-sample-title__link"\n tabindex="-1">\n <eui-icon-svg icon="link" set="outline" size="l" fillColor="grey-75"></eui-icon-svg>\n </button>\n </div>\n <div *ngIf="renderPlayground" class="doc-sample-title__items" style="margin-right: 3px">\n <button\n *ngIf="isCodeButtonVisible"\n type="button"\n euiButton\n [euiOutline]="!isCodeExpanded"\n euiPrimary\n euiSizeS\n (click)="onStackblitzOpen()">\n <span euiLabel>Stackblitz</span>\n <eui-icon-svg icon="expand:sharp"></eui-icon-svg>\n </button>\n </div>\n <div class="doc-sample-title__items">\n <button\n *ngIf="isCodeButtonVisible"\n type="button"\n euiButton\n [euiOutline]="!isCodeExpanded"\n euiPrimary\n euiSizeS\n (click)="onToggleCode()"\n [euiDisabled]="isCodeLoading">\n <eui-icon-svg *ngIf="isCodeLoading" isLoading></eui-icon-svg>\n <span *ngIf="!isCodeExpanded" euiLabel>Code</span>\n <span *ngIf="isCodeExpanded" euiLabel>Hide Code</span>\n <eui-icon-svg icon="eui-code"></eui-icon-svg>\n </button>\n </div>\n</div>\n\n<ng-template [ngIf]="isCodeExpanded">\n <eui-card euiNoContentPadding>\n <eui-card-content>\n <eui-tabs (tabSelect)="onSelectedTab($event)">\n <eui-tab [isVisible]="htmlContent">\n <euiTabLabel>\n HTML\n <euiTabSubLabel>HyperText Markup Language</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class="language-markup" euiCode>{{htmlContent}}</code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="tsContent">\n <euiTabLabel>\n TS\n <euiTabSubLabel>Typescript</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class="language-javascript" euiCode>{{filterOutModuleAndImports(tsContent)}}</code></pre>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n </eui-card-content>\n </eui-card>\n</ng-template>\n\n<ng-content></ng-content>\n', styles: [".eui-showcase-doc-sample{display:block;margin-bottom:var(--eui-s-2xl);margin-top:var(--eui-s-6xl);width:100%}.eui-showcase-doc-sample:first-child{margin-top:var(--eui-s-xl)}.eui-showcase-doc-sample .doc-sample-title{align-items:flex-end;display:flex;width:100%;margin-bottom:var(--eui-s-m);padding-bottom:var(--eui-s-s);border-bottom:1px solid var(--eui-c-neutral-lightest)}.eui-showcase-doc-sample .doc-sample-title__label{align-items:center;display:flex;min-height:var(--eui-s-xl);width:100%;letter-spacing:-.75px;font:var(--eui-f-xl-bold)}.eui-showcase-doc-sample .doc-sample-title__label:hover .doc-sample-title__link{opacity:1;transition:all .25s ease-in-out}.eui-showcase-doc-sample .doc-sample-title__label--inner{color:var(--eui-c-neutral-light);font:var(--eui-f-l)}.eui-showcase-doc-sample .doc-sample-title__items{display:flex;margin-left:auto}.eui-showcase-doc-sample .doc-sample-title__link{opacity:0;margin-left:var(--eui-s-m)}.eui-showcase-doc-sample .doc-sample-section-title,.eui-showcase-doc-sample h6.section-title{border-bottom:none;letter-spacing:-.5px;margin:var(--eui-s-3xl) 0 var(--eui-s-xs) 0!important;width:auto;display:table;color:var(--eui-c-info-darker);font:var(--eui-f-l)!important}.eui-showcase-doc-sample .doc-sample-section-title:first-child,.eui-showcase-doc-sample h6.section-title:first-child{margin-top:var(--eui-s-m)!important}\n"] }]
623
- }], ctorParameters: () => [{ type: StackblitzService }, { type: i2.HttpClient }, { type: i3.EuiAppShellService }, { type: i03.ChangeDetectorRef }, { type: i3.EuiGrowlService }, { type: i4.Clipboard }, { type: i5.Router }], propDecorators: { id: [{
624
- type: Input
625
- }], label: [{
626
- type: Input
627
- }], category: [{
628
- type: Input
629
- }], description: [{
630
- type: Input
631
- }], defaultValue: [{
632
- type: Input
633
- }], styleClass: [{
634
- type: Input
635
- }], renderPlayground: [{
636
- type: Input,
637
- args: [{ transform: booleanAttribute }]
638
- }], isCodeButtonVisible: [{
639
- type: Input,
640
- args: [{ transform: booleanAttribute }]
641
- }], isInnerSection: [{
642
- type: Input,
643
- args: [{ transform: booleanAttribute }]
644
- }], classes: [{
645
- type: HostBinding,
646
- args: ["class"]
647
- }] } });
648
-
649
- // lib/components/doc-section/doc-section.component.mjs
650
- import { Component as Component2, Input as Input2, ViewEncapsulation as ViewEncapsulation3, HostBinding as HostBinding2 } from "@angular/core";
651
- import * as i04 from "@angular/core";
652
- var DocSectionComponent = class _DocSectionComponent {
653
- constructor() {
654
- this.string = "eui-showcase-doc-section";
655
- this.id = "";
656
- this.label = "";
657
- this.styleClass = "";
658
- }
659
- ngAfterContentInit() {
660
- if (!this.label) {
661
- this.label = this.id;
602
+ else {
603
+ for (let i = pathNameArray.length - 1; i >= 0; i--) {
604
+ if (pathNameArray[i].indexOf('eui-showcase-') > -1 || pathNameArray[i].indexOf('localhost') > -1) {
605
+ break;
606
+ }
607
+ if (pathNameArray[i] !== '') {
608
+ samplePathArray.push(pathNameArray[i]);
609
+ }
610
+ }
611
+ }
612
+ samplePathArray = samplePathArray.reverse();
613
+ samplePathArray.push('samples');
614
+ samplePathArray.push(this.id);
615
+ const samplesPath = `assets/samples/${samplePathArray.join('/')}`;
616
+ return forkJoin({
617
+ typescript: this._http.get(`${samplesPath}/component.ts`, {
618
+ responseType: 'text',
619
+ }),
620
+ html: this._http.get(`${samplesPath}/component.html`, {
621
+ responseType: 'text',
622
+ }),
623
+ })
624
+ .pipe(map((responses) => {
625
+ this.isCodeLoaded = true;
626
+ this.isCodeLoading = false;
627
+ return { typescript: responses.typescript, html: responses.html };
628
+ }), catchError((error) => {
629
+ this.growlService.growlError(`Issue while fetching : ${error.url} : ${error.status}-${error.statusText}`);
630
+ return new Observable((subscriber) => {
631
+ try {
632
+ subscriber.error(error);
633
+ }
634
+ catch (err) {
635
+ subscriber.error(error);
636
+ }
637
+ });
638
+ }));
662
639
  }
663
- }
664
- static {
665
- this.ɵfac = i04.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i04, type: _DocSectionComponent, deps: [], target: i04.ɵɵFactoryTarget.Component });
666
- }
667
- static {
668
- this.ɵcmp = i04.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSectionComponent, selector: "eui-showcase-doc-section", inputs: { id: "id", label: "label", styleClass: "styleClass" }, host: { properties: { "class": "this.string" } }, ngImport: i04, template: '<div id="sections" class="doc-section-title">{{label}}</div>\n<!-- <h4 id="sections" class="eui-u-font-bold eui-u-color-info eui-u-text-h4 mb-3">{{ label }}</h4> -->\n\n<ng-content></ng-content>\n', styles: [".eui-showcase-doc-section{display:block;margin-bottom:var(--eui-s-4xl)}.doc-section-title{display:flex;align-items:center;width:100%;margin-top:var(--eui-s-m);margin-bottom:var(--eui-s-m);padding-bottom:var(--eui-s-xs);border-bottom:1px solid var(--eui-c-neutral-lightest);font:var(--eui-f-xl-bold)}.doc-sample-section-title{border-bottom:1px solid var(--eui-c-neutral-lighter);letter-spacing:-.25px;margin:var(--eui-s-2xl) 0 var(--eui-s-s);padding-bottom:var(--eui-s-2xs);width:auto;display:table;color:var(--eui-c-primary-dark);font:var(--eui-f-l)}.doc-sample-section-title:first-child{margin-top:0}\n"], encapsulation: i04.ViewEncapsulation.None });
669
- }
670
- };
671
- i04.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i04, type: DocSectionComponent, decorators: [{
672
- type: Component2,
673
- args: [{ selector: "eui-showcase-doc-section", encapsulation: ViewEncapsulation3.None, template: '<div id="sections" class="doc-section-title">{{label}}</div>\n<!-- <h4 id="sections" class="eui-u-font-bold eui-u-color-info eui-u-text-h4 mb-3">{{ label }}</h4> -->\n\n<ng-content></ng-content>\n', styles: [".eui-showcase-doc-section{display:block;margin-bottom:var(--eui-s-4xl)}.doc-section-title{display:flex;align-items:center;width:100%;margin-top:var(--eui-s-m);margin-bottom:var(--eui-s-m);padding-bottom:var(--eui-s-xs);border-bottom:1px solid var(--eui-c-neutral-lightest);font:var(--eui-f-xl-bold)}.doc-sample-section-title{border-bottom:1px solid var(--eui-c-neutral-lighter);letter-spacing:-.25px;margin:var(--eui-s-2xl) 0 var(--eui-s-s);padding-bottom:var(--eui-s-2xs);width:auto;display:table;color:var(--eui-c-primary-dark);font:var(--eui-f-l)}.doc-sample-section-title:first-child{margin-top:0}\n"] }]
674
- }], propDecorators: { string: [{
675
- type: HostBinding2,
676
- args: ["class"]
677
- }], id: [{
678
- type: Input2
679
- }], label: [{
680
- type: Input2
681
- }], styleClass: [{
682
- type: Input2
683
- }] } });
684
-
685
- // lib/components/doc-page-code/doc-page-code.component.mjs
686
- import { Component as Component3, Input as Input3 } from "@angular/core";
687
- import * as i05 from "@angular/core";
688
- import * as i1 from "@eui/components/eui-button";
689
- import * as i22 from "@eui/components/eui-icon";
690
- import * as i32 from "@eui/components/eui-label";
691
- var DocPageCodeComponent = class _DocPageCodeComponent {
692
- constructor() {
693
- this.codeFolder = "";
694
- this.showcase = "ux";
695
- }
696
- onOpenCode() {
697
- const sourceRootPath = `https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/app-eui-showcase-${this.showcase}/browse/src/app/`;
698
- window.open(sourceRootPath + this.codeFolder, "_blank");
699
- }
700
- static {
701
- this.ɵfac = i05.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i05, type: _DocPageCodeComponent, deps: [], target: i05.ɵɵFactoryTarget.Component });
702
- }
703
- static {
704
- this.ɵcmp = i05.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageCodeComponent, selector: "eui-showcase-doc-page-code", inputs: { codeFolder: "codeFolder", showcase: "showcase" }, ngImport: i05, template: '<button type="button" euiButton euiAccent (click)="onOpenCode()">\n <span euiLabel>Check the code</span>\n <eui-icon-svg icon="eui-code"></eui-icon-svg>\n</button>\n', dependencies: [{ kind: "component", type: i1.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i22.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i32.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }] });
705
- }
706
- };
707
- i05.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i05, type: DocPageCodeComponent, decorators: [{
708
- type: Component3,
709
- args: [{ selector: "eui-showcase-doc-page-code", template: '<button type="button" euiButton euiAccent (click)="onOpenCode()">\n <span euiLabel>Check the code</span>\n <eui-icon-svg icon="eui-code"></eui-icon-svg>\n</button>\n' }]
710
- }], propDecorators: { codeFolder: [{
711
- type: Input3
712
- }], showcase: [{
713
- type: Input3
714
- }] } });
715
-
716
- // lib/components/doc-page/doc-page.component.mjs
717
- import { Component as Component4, Input as Input4, Directive as Directive2, ContentChildren, forwardRef, ViewEncapsulation as ViewEncapsulation5, ViewChild } from "@angular/core";
718
- import * as i06 from "@angular/core";
719
- import * as i12 from "@angular/router";
720
- import * as i23 from "@eui/core";
721
- import * as i33 from "@angular/platform-browser";
722
- import * as i42 from "@angular/common";
723
- import * as i52 from "@eui/components/eui-tabs";
724
- import * as i62 from "@eui/components/eui-page";
725
- import * as i72 from "@eui/components/eui-chip";
726
- import * as i82 from "@eui/components/eui-alert";
727
- import * as i92 from "@eui/components/eui-label";
728
- var DocPageComponent = class _DocPageComponent {
729
- constructor(router, route, asService, sanitizer, location) {
730
- this.router = router;
731
- this.route = route;
732
- this.asService = asService;
733
- this.sanitizer = sanitizer;
734
- this.location = location;
735
- this.isNotReady = false;
736
- this.isDeprecated = false;
737
- this.isLegacy = false;
738
- this.showcase = "ux";
739
- this.isNavigationVisible = true;
740
- this.hasApi = true;
741
- this.hasA11y = true;
742
- this.isLoading = true;
743
- this.isNavClicked = true;
744
- this.hasCategories = false;
745
- this.categories = [];
746
- this.TABS_DEF = [
747
- { index: 0, id: "samples" },
748
- { index: 1, id: "api" },
749
- { index: 2, id: "a11y" },
750
- { index: 3, id: "theming" },
751
- { index: 4, id: "advanced" }
752
- ];
753
- }
754
- ngOnInit() {
755
- setTimeout(() => {
756
- this.asService.isBlockDocumentActive = true;
757
- });
758
- this.appMetadata = this.asService.state.appMetadata;
759
- if (this.id && !this.label) {
760
- this.label = this.id;
640
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSampleComponent, deps: [{ token: StackblitzService }, { token: i2.HttpClient }, { token: i3.EuiAppShellService }, { token: i0.ChangeDetectorRef }, { token: i3.EuiGrowlService }, { token: i4.Clipboard }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
641
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.0-rc.3", type: DocSampleComponent, selector: "eui-showcase-doc-sample", inputs: { id: "id", label: "label", category: "category", description: "description", defaultValue: "defaultValue", styleClass: "styleClass", renderPlayground: ["renderPlayground", "renderPlayground", booleanAttribute], isCodeButtonVisible: ["isCodeButtonVisible", "isCodeButtonVisible", booleanAttribute], isInnerSection: ["isInnerSection", "isInnerSection", booleanAttribute] }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: "<div class=\"doc-sample-title\">\n <div class=\"doc-sample-title__label\" [class.doc-sample-title__label--inner]=\"isInnerSection\">\n {{ label }}\n <button\n euiButton\n euiIconButton\n euiBasicButton\n euiRounded\n euiPrimary\n euiSizeS\n (click)=\"copyCurrentUrlToClipboard(id)\"\n class=\"doc-sample-title__link\"\n tabindex=\"-1\">\n <eui-icon-svg icon=\"link\" set=\"outline\" size=\"l\" fillColor=\"grey-75\"></eui-icon-svg>\n </button>\n </div>\n <div *ngIf=\"renderPlayground\" class=\"doc-sample-title__items\" style=\"margin-right: 3px\">\n <button\n *ngIf=\"isCodeButtonVisible\"\n type=\"button\"\n euiButton\n [euiOutline]=\"!isCodeExpanded\"\n euiPrimary\n euiSizeS\n (click)=\"onStackblitzOpen()\">\n <span euiLabel>Stackblitz</span>\n <eui-icon-svg icon=\"expand:sharp\"></eui-icon-svg>\n </button>\n </div>\n <div class=\"doc-sample-title__items\">\n <button\n *ngIf=\"isCodeButtonVisible\"\n type=\"button\"\n euiButton\n [euiOutline]=\"!isCodeExpanded\"\n euiPrimary\n euiSizeS\n (click)=\"onToggleCode()\"\n [euiDisabled]=\"isCodeLoading\">\n <eui-icon-svg *ngIf=\"isCodeLoading\" isLoading></eui-icon-svg>\n <span *ngIf=\"!isCodeExpanded\" euiLabel>Code</span>\n <span *ngIf=\"isCodeExpanded\" euiLabel>Hide Code</span>\n <eui-icon-svg icon=\"eui-code\"></eui-icon-svg>\n </button>\n </div>\n</div>\n\n<ng-template [ngIf]=\"isCodeExpanded\">\n <eui-card euiNoContentPadding>\n <eui-card-content>\n <eui-tabs (tabSelect)=\"onSelectedTab($event)\">\n <eui-tab [isVisible]=\"htmlContent\">\n <euiTabLabel>\n HTML\n <euiTabSubLabel>HyperText Markup Language</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-markup\" euiCode>{{htmlContent}}</code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"tsContent\">\n <euiTabLabel>\n TS\n <euiTabSubLabel>Typescript</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-javascript\" euiCode>{{filterOutModuleAndImports(tsContent)}}</code></pre>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n </eui-card-content>\n </eui-card>\n</ng-template>\n\n<ng-content></ng-content>\n", styles: [".eui-showcase-doc-sample{display:block;margin-bottom:var(--eui-s-2xl);margin-top:var(--eui-s-6xl);width:100%}.eui-showcase-doc-sample:first-child{margin-top:var(--eui-s-xl)}.eui-showcase-doc-sample .doc-sample-title{align-items:flex-end;display:flex;width:100%;margin-bottom:var(--eui-s-m);padding-bottom:var(--eui-s-s);border-bottom:1px solid var(--eui-c-neutral-lightest)}.eui-showcase-doc-sample .doc-sample-title__label{align-items:center;display:flex;min-height:var(--eui-s-xl);width:100%;letter-spacing:-.75px;font:var(--eui-f-xl-bold)}.eui-showcase-doc-sample .doc-sample-title__label:hover .doc-sample-title__link{opacity:1;transition:all .25s ease-in-out}.eui-showcase-doc-sample .doc-sample-title__label--inner{color:var(--eui-c-neutral-light);font:var(--eui-f-l)}.eui-showcase-doc-sample .doc-sample-title__items{display:flex;margin-left:auto}.eui-showcase-doc-sample .doc-sample-title__link{opacity:0;margin-left:var(--eui-s-m)}.eui-showcase-doc-sample .doc-sample-section-title,.eui-showcase-doc-sample h6.section-title{border-bottom:none;letter-spacing:-.5px;margin:var(--eui-s-3xl) 0 var(--eui-s-xs) 0!important;width:auto;display:table;color:var(--eui-c-info-darker);font:var(--eui-f-l)!important}.eui-showcase-doc-sample .doc-sample-section-title:first-child,.eui-showcase-doc-sample h6.section-title:first-child{margin-top:var(--eui-s-m)!important}\n"], dependencies: [{ kind: "directive", type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.EuiCardComponent, selector: "eui-card", inputs: ["e2eAttr", "euiSelected", "euiCollapsible", "euiCollapsed", "euiUrgent", "euiNoShadow", "euiNoContentPadding", "euiHoverable"], outputs: ["collapse"] }, { kind: "component", type: i2$1.EuiCardContentComponent, selector: "eui-card-content" }, { kind: "component", type: i2$2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i9.EuiTabsComponent, selector: "eui-tabs", inputs: ["tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClose", "tabSelect"] }, { kind: "component", type: i9.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "component", type: i9.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "directive", type: i9.EuiTabSubLabelDirective, selector: "euiTabSubLabel" }, { kind: "component", type: i9.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i10.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i11.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }, { kind: "directive", type: EuiCodeHighlighterDirective, selector: "[euiCode]" }], encapsulation: i0.ViewEncapsulation.None }); }
642
+ }
643
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSampleComponent, decorators: [{
644
+ type: Component,
645
+ args: [{ selector: 'eui-showcase-doc-sample', encapsulation: ViewEncapsulation.None, template: "<div class=\"doc-sample-title\">\n <div class=\"doc-sample-title__label\" [class.doc-sample-title__label--inner]=\"isInnerSection\">\n {{ label }}\n <button\n euiButton\n euiIconButton\n euiBasicButton\n euiRounded\n euiPrimary\n euiSizeS\n (click)=\"copyCurrentUrlToClipboard(id)\"\n class=\"doc-sample-title__link\"\n tabindex=\"-1\">\n <eui-icon-svg icon=\"link\" set=\"outline\" size=\"l\" fillColor=\"grey-75\"></eui-icon-svg>\n </button>\n </div>\n <div *ngIf=\"renderPlayground\" class=\"doc-sample-title__items\" style=\"margin-right: 3px\">\n <button\n *ngIf=\"isCodeButtonVisible\"\n type=\"button\"\n euiButton\n [euiOutline]=\"!isCodeExpanded\"\n euiPrimary\n euiSizeS\n (click)=\"onStackblitzOpen()\">\n <span euiLabel>Stackblitz</span>\n <eui-icon-svg icon=\"expand:sharp\"></eui-icon-svg>\n </button>\n </div>\n <div class=\"doc-sample-title__items\">\n <button\n *ngIf=\"isCodeButtonVisible\"\n type=\"button\"\n euiButton\n [euiOutline]=\"!isCodeExpanded\"\n euiPrimary\n euiSizeS\n (click)=\"onToggleCode()\"\n [euiDisabled]=\"isCodeLoading\">\n <eui-icon-svg *ngIf=\"isCodeLoading\" isLoading></eui-icon-svg>\n <span *ngIf=\"!isCodeExpanded\" euiLabel>Code</span>\n <span *ngIf=\"isCodeExpanded\" euiLabel>Hide Code</span>\n <eui-icon-svg icon=\"eui-code\"></eui-icon-svg>\n </button>\n </div>\n</div>\n\n<ng-template [ngIf]=\"isCodeExpanded\">\n <eui-card euiNoContentPadding>\n <eui-card-content>\n <eui-tabs (tabSelect)=\"onSelectedTab($event)\">\n <eui-tab [isVisible]=\"htmlContent\">\n <euiTabLabel>\n HTML\n <euiTabSubLabel>HyperText Markup Language</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-markup\" euiCode>{{htmlContent}}</code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"tsContent\">\n <euiTabLabel>\n TS\n <euiTabSubLabel>Typescript</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-javascript\" euiCode>{{filterOutModuleAndImports(tsContent)}}</code></pre>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n </eui-card-content>\n </eui-card>\n</ng-template>\n\n<ng-content></ng-content>\n", styles: [".eui-showcase-doc-sample{display:block;margin-bottom:var(--eui-s-2xl);margin-top:var(--eui-s-6xl);width:100%}.eui-showcase-doc-sample:first-child{margin-top:var(--eui-s-xl)}.eui-showcase-doc-sample .doc-sample-title{align-items:flex-end;display:flex;width:100%;margin-bottom:var(--eui-s-m);padding-bottom:var(--eui-s-s);border-bottom:1px solid var(--eui-c-neutral-lightest)}.eui-showcase-doc-sample .doc-sample-title__label{align-items:center;display:flex;min-height:var(--eui-s-xl);width:100%;letter-spacing:-.75px;font:var(--eui-f-xl-bold)}.eui-showcase-doc-sample .doc-sample-title__label:hover .doc-sample-title__link{opacity:1;transition:all .25s ease-in-out}.eui-showcase-doc-sample .doc-sample-title__label--inner{color:var(--eui-c-neutral-light);font:var(--eui-f-l)}.eui-showcase-doc-sample .doc-sample-title__items{display:flex;margin-left:auto}.eui-showcase-doc-sample .doc-sample-title__link{opacity:0;margin-left:var(--eui-s-m)}.eui-showcase-doc-sample .doc-sample-section-title,.eui-showcase-doc-sample h6.section-title{border-bottom:none;letter-spacing:-.5px;margin:var(--eui-s-3xl) 0 var(--eui-s-xs) 0!important;width:auto;display:table;color:var(--eui-c-info-darker);font:var(--eui-f-l)!important}.eui-showcase-doc-sample .doc-sample-section-title:first-child,.eui-showcase-doc-sample h6.section-title:first-child{margin-top:var(--eui-s-m)!important}\n"] }]
646
+ }], ctorParameters: () => [{ type: StackblitzService }, { type: i2.HttpClient }, { type: i3.EuiAppShellService }, { type: i0.ChangeDetectorRef }, { type: i3.EuiGrowlService }, { type: i4.Clipboard }, { type: i1.Router }], propDecorators: { id: [{
647
+ type: Input
648
+ }], label: [{
649
+ type: Input
650
+ }], category: [{
651
+ type: Input
652
+ }], description: [{
653
+ type: Input
654
+ }], defaultValue: [{
655
+ type: Input
656
+ }], styleClass: [{
657
+ type: Input
658
+ }], renderPlayground: [{
659
+ type: Input,
660
+ args: [{ transform: booleanAttribute }]
661
+ }], isCodeButtonVisible: [{
662
+ type: Input,
663
+ args: [{ transform: booleanAttribute }]
664
+ }], isInnerSection: [{
665
+ type: Input,
666
+ args: [{ transform: booleanAttribute }]
667
+ }], classes: [{
668
+ type: HostBinding,
669
+ args: ['class']
670
+ }] } });
671
+
672
+ class DocSectionComponent {
673
+ constructor() {
674
+ this.string = 'eui-showcase-doc-section';
675
+ this.id = '';
676
+ this.label = '';
677
+ this.styleClass = '';
761
678
  }
762
- try {
763
- this.cmp = this._getComponentStatus(this.id);
764
- if (this.cmp) {
765
- switch (this.cmp.status) {
766
- case "success":
767
- this.stateLabel = "ACTIVE";
768
- this.stateTypeClass = "success";
769
- break;
770
- case "warning":
771
- this.stateLabel = "DEPRECATED - will be removed in eUI 18";
772
- this.stateTypeClass = "warning";
773
- this.isDeprecated = true;
774
- break;
775
- case "danger":
776
- this.stateLabel = "LEGACY - will be removed in eUI 18";
777
- this.stateTypeClass = "danger";
778
- this.isLegacy = true;
779
- break;
780
- case "info":
781
- this.stateLabel = "NOT READY";
782
- this.stateTypeClass = "accent";
783
- this.isNotReady = true;
784
- break;
679
+ ngAfterContentInit() {
680
+ if (!this.label) {
681
+ this.label = this.id;
785
682
  }
786
- this.cmpModuleImport = `import { ${this.cmp.metadata?.moduleName} } from '@eui/${this.cmp.metadata?.subEntryName}';`;
787
- }
788
- } catch (e) {
789
- console.log("Warning, errors detected while getting page state");
790
- console.log(e);
791
683
  }
792
- this.fragmentId = this.route.snapshot.fragment;
793
- }
794
- ngAfterViewInit() {
795
- try {
796
- this.apiUrl = this._getApiUrl();
797
- console.log(`Fetching API url from : ${this.apiUrl}`);
798
- setTimeout(() => {
799
- this.apiUrlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(this.apiUrl);
800
- });
801
- } catch (e) {
802
- console.log(e);
684
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
685
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSectionComponent, selector: "eui-showcase-doc-section", inputs: { id: "id", label: "label", styleClass: "styleClass" }, host: { properties: { "class": "this.string" } }, ngImport: i0, template: "<div id=\"sections\" class=\"doc-section-title\">{{label}}</div>\n<!-- <h4 id=\"sections\" class=\"eui-u-font-bold eui-u-color-info eui-u-text-h4 mb-3\">{{ label }}</h4> -->\n\n<ng-content></ng-content>\n", styles: [".eui-showcase-doc-section{display:block;margin-bottom:var(--eui-s-4xl)}.doc-section-title{display:flex;align-items:center;width:100%;margin-top:var(--eui-s-m);margin-bottom:var(--eui-s-m);padding-bottom:var(--eui-s-xs);border-bottom:1px solid var(--eui-c-neutral-lightest);font:var(--eui-f-xl-bold)}.doc-sample-section-title{border-bottom:1px solid var(--eui-c-neutral-lighter);letter-spacing:-.25px;margin:var(--eui-s-2xl) 0 var(--eui-s-s);padding-bottom:var(--eui-s-2xs);width:auto;display:table;color:var(--eui-c-primary-dark);font:var(--eui-f-l)}.doc-sample-section-title:first-child{margin-top:0}\n"], encapsulation: i0.ViewEncapsulation.None }); }
686
+ }
687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionComponent, decorators: [{
688
+ type: Component,
689
+ args: [{ selector: 'eui-showcase-doc-section', encapsulation: ViewEncapsulation.None, template: "<div id=\"sections\" class=\"doc-section-title\">{{label}}</div>\n<!-- <h4 id=\"sections\" class=\"eui-u-font-bold eui-u-color-info eui-u-text-h4 mb-3\">{{ label }}</h4> -->\n\n<ng-content></ng-content>\n", styles: [".eui-showcase-doc-section{display:block;margin-bottom:var(--eui-s-4xl)}.doc-section-title{display:flex;align-items:center;width:100%;margin-top:var(--eui-s-m);margin-bottom:var(--eui-s-m);padding-bottom:var(--eui-s-xs);border-bottom:1px solid var(--eui-c-neutral-lightest);font:var(--eui-f-xl-bold)}.doc-sample-section-title{border-bottom:1px solid var(--eui-c-neutral-lighter);letter-spacing:-.25px;margin:var(--eui-s-2xl) 0 var(--eui-s-s);padding-bottom:var(--eui-s-2xs);width:auto;display:table;color:var(--eui-c-primary-dark);font:var(--eui-f-l)}.doc-sample-section-title:first-child{margin-top:0}\n"] }]
690
+ }], propDecorators: { string: [{
691
+ type: HostBinding,
692
+ args: ['class']
693
+ }], id: [{
694
+ type: Input
695
+ }], label: [{
696
+ type: Input
697
+ }], styleClass: [{
698
+ type: Input
699
+ }] } });
700
+
701
+ class DocPageCodeComponent {
702
+ constructor() {
703
+ this.codeFolder = '';
704
+ this.showcase = 'ux';
803
705
  }
804
- setTimeout(() => {
805
- const tab = this.TABS_DEF.filter((t) => t.id === this.fragmentId)[0];
806
- const sampleTabIndex = 0;
807
- let tabIndex;
808
- if (!tab) {
809
- tabIndex = sampleTabIndex;
810
- } else {
811
- tabIndex = tab.index;
812
- }
813
- const categoriesJson = {};
814
- this.samples.forEach((s) => {
815
- if (!s.category && s.id !== "_default" && s.id !== "Default") {
816
- if (!categoriesJson["others"]) {
817
- categoriesJson["others"] = [];
818
- categoriesJson["others"].push(s);
819
- } else {
820
- categoriesJson["others"].push(s);
821
- }
822
- } else {
823
- if (s.id === "_default" || s.id === "Default") {
824
- if (!categoriesJson["Base"]) {
825
- categoriesJson["Base"] = [];
826
- categoriesJson["Base"].push(s);
827
- } else {
828
- categoriesJson["Base"].push(s);
829
- }
830
- } else {
831
- this.hasCategories = true;
832
- if (!categoriesJson[s.category]) {
833
- categoriesJson[s.category] = [];
834
- categoriesJson[s.category].push(s);
835
- } else {
836
- categoriesJson[s.category].push(s);
706
+ onOpenCode() {
707
+ // eslint-disable-next-line max-len
708
+ const sourceRootPath = `https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/app-eui-showcase-${this.showcase}/browse/src/app/`;
709
+ window.open(sourceRootPath + this.codeFolder, '_blank');
710
+ }
711
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
712
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageCodeComponent, selector: "eui-showcase-doc-page-code", inputs: { codeFolder: "codeFolder", showcase: "showcase" }, ngImport: i0, template: "<button type=\"button\" euiButton euiAccent (click)=\"onOpenCode()\">\n <span euiLabel>Check the code</span>\n <eui-icon-svg icon=\"eui-code\"></eui-icon-svg>\n</button>\n", dependencies: [{ kind: "component", type: i2$2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i10.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i11.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }] }); }
713
+ }
714
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageCodeComponent, decorators: [{
715
+ type: Component,
716
+ args: [{ selector: 'eui-showcase-doc-page-code', template: "<button type=\"button\" euiButton euiAccent (click)=\"onOpenCode()\">\n <span euiLabel>Check the code</span>\n <eui-icon-svg icon=\"eui-code\"></eui-icon-svg>\n</button>\n" }]
717
+ }], propDecorators: { codeFolder: [{
718
+ type: Input
719
+ }], showcase: [{
720
+ type: Input
721
+ }] } });
722
+
723
+ class DocPageComponent {
724
+ constructor(router, route, asService, sanitizer, location) {
725
+ this.router = router;
726
+ this.route = route;
727
+ this.asService = asService;
728
+ this.sanitizer = sanitizer;
729
+ this.location = location;
730
+ this.isNotReady = false;
731
+ this.isDeprecated = false;
732
+ this.isLegacy = false;
733
+ this.showcase = 'ux';
734
+ this.isNavigationVisible = true;
735
+ this.hasApi = true;
736
+ this.hasA11y = true;
737
+ this.isLoading = true;
738
+ this.isNavClicked = true;
739
+ this.hasCategories = false;
740
+ this.categories = [];
741
+ this.TABS_DEF = [
742
+ { index: 0, id: 'samples' },
743
+ { index: 1, id: 'api' },
744
+ { index: 2, id: 'a11y' },
745
+ { index: 3, id: 'theming' },
746
+ { index: 4, id: 'advanced' },
747
+ ];
748
+ }
749
+ ngOnInit() {
750
+ setTimeout(() => {
751
+ this.asService.isBlockDocumentActive = true;
752
+ });
753
+ this.appMetadata = this.asService.state.appMetadata;
754
+ if (this.id && !this.label) {
755
+ this.label = this.id;
756
+ }
757
+ try {
758
+ this.cmp = this._getComponentStatus(this.id);
759
+ if (this.cmp) {
760
+ switch (this.cmp.status) {
761
+ case 'success':
762
+ this.stateLabel = 'ACTIVE';
763
+ this.stateTypeClass = 'success';
764
+ break;
765
+ case 'warning':
766
+ this.stateLabel = 'DEPRECATED - will be removed in eUI 18';
767
+ this.stateTypeClass = 'warning';
768
+ this.isDeprecated = true;
769
+ break;
770
+ case 'danger':
771
+ this.stateLabel = 'LEGACY - will be removed in eUI 18';
772
+ this.stateTypeClass = 'danger';
773
+ this.isLegacy = true;
774
+ break;
775
+ case 'info':
776
+ this.stateLabel = 'NOT READY';
777
+ this.stateTypeClass = 'accent';
778
+ this.isNotReady = true;
779
+ break;
780
+ }
781
+ // construct cmp module import string
782
+ // eslint-disable-next-line
783
+ this.cmpModuleImport = `import { ${this.cmp.metadata?.moduleName} } from '@eui/${this.cmp.metadata?.subEntryName}';`;
837
784
  }
838
- }
839
785
  }
840
- });
841
- Object.keys(categoriesJson).forEach((c) => {
842
- this.categories.push({
843
- name: c,
844
- samples: categoriesJson[c]
786
+ catch (e) {
787
+ console.log('Warning, errors detected while getting page state');
788
+ console.log(e);
789
+ }
790
+ this.fragmentId = this.route.snapshot.fragment;
791
+ }
792
+ ngAfterViewInit() {
793
+ // getting API url
794
+ try {
795
+ this.apiUrl = this._getApiUrl();
796
+ console.log(`Fetching API url from : ${this.apiUrl}`);
797
+ setTimeout(() => {
798
+ this.apiUrlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(this.apiUrl);
799
+ });
800
+ }
801
+ catch (e) {
802
+ console.log(e);
803
+ }
804
+ setTimeout(() => {
805
+ const tab = this.TABS_DEF.filter((t) => t.id === this.fragmentId)[0];
806
+ const sampleTabIndex = 0;
807
+ let tabIndex;
808
+ if (!tab) {
809
+ tabIndex = sampleTabIndex;
810
+ }
811
+ else {
812
+ tabIndex = tab.index;
813
+ }
814
+ // constructing categories, if at least one set, if not backward compat with old display
815
+ const categoriesJson = {};
816
+ this.samples.forEach((s) => {
817
+ // "Default" or "_default" sample are always put first in the nav list
818
+ if (!s.category && s.id !== '_default' && s.id !== 'Default') {
819
+ if (!categoriesJson['others']) {
820
+ categoriesJson['others'] = [];
821
+ categoriesJson['others'].push(s);
822
+ }
823
+ else {
824
+ categoriesJson['others'].push(s);
825
+ }
826
+ }
827
+ else {
828
+ if (s.id === '_default' || s.id === 'Default') {
829
+ if (!categoriesJson['Base']) {
830
+ categoriesJson['Base'] = [];
831
+ categoriesJson['Base'].push(s);
832
+ }
833
+ else {
834
+ categoriesJson['Base'].push(s);
835
+ }
836
+ }
837
+ else {
838
+ this.hasCategories = true;
839
+ if (!categoriesJson[s.category]) {
840
+ categoriesJson[s.category] = [];
841
+ categoriesJson[s.category].push(s);
842
+ }
843
+ else {
844
+ categoriesJson[s.category].push(s);
845
+ }
846
+ }
847
+ }
848
+ });
849
+ // making the list of categories iterable for display
850
+ Object.keys(categoriesJson).forEach((c) => {
851
+ this.categories.push({
852
+ name: c,
853
+ samples: categoriesJson[c],
854
+ });
855
+ });
856
+ // push the "others" at the end of the nav list
857
+ this.categories.push(this.categories.splice(this.categories.findIndex(v => v.name == 'others'), 1)[0]);
858
+ this._scrollToFragment(this.fragmentId, tabIndex, true, true);
859
+ setTimeout(() => {
860
+ this.asService.isBlockDocumentActive = false;
861
+ this.isLoading = false;
862
+ });
845
863
  });
846
- });
847
- this.categories.push(this.categories.splice(this.categories.findIndex((v) => v.name == "others"), 1)[0]);
848
- this._scrollToFragment(this.fragmentId, tabIndex, true, true);
849
- setTimeout(() => {
850
- this.asService.isBlockDocumentActive = false;
851
- this.isLoading = false;
852
- });
853
- });
854
- }
855
- onNavClick(fragmentId, tabIndex) {
856
- this.fragmentId = fragmentId;
857
- this.isNavClicked = true;
858
- this._scrollToFragment(this.fragmentId, tabIndex, false, true);
859
- }
860
- onTabSelected(event) {
861
- if (!this.isLoading && !this.isNavClicked) {
862
- const tabId = this.TABS_DEF.filter((t) => t.index === event.index)[0].id;
863
- this._scrollToFragment(tabId, event.index, false, false);
864
864
  }
865
- this.isNavClicked = false;
866
- }
867
- _scrollToFragment(fragmentId, tabIndex, init, changeTab) {
868
- if (init) {
869
- if (this.tabsContent) {
870
- this.tabsContent.changeTab(tabIndex);
871
- if (fragmentId) {
872
- setTimeout(() => {
873
- const fgm = document.getElementById(fragmentId);
874
- const yOffset = -80;
875
- if (fgm) {
876
- const y = fgm.getBoundingClientRect().top + window.pageYOffset + yOffset;
877
- window.scrollTo({ top: y });
865
+ onNavClick(fragmentId, tabIndex) {
866
+ this.fragmentId = fragmentId;
867
+ this.isNavClicked = true;
868
+ this._scrollToFragment(this.fragmentId, tabIndex, false, true);
869
+ }
870
+ onTabSelected(event) {
871
+ if (!this.isLoading && !this.isNavClicked) {
872
+ const tabId = this.TABS_DEF.filter((t) => t.index === event.index)[0].id;
873
+ this._scrollToFragment(tabId, event.index, false, false);
874
+ }
875
+ this.isNavClicked = false;
876
+ }
877
+ _scrollToFragment(fragmentId, tabIndex, init, changeTab) {
878
+ if (init) {
879
+ if (this.tabsContent) {
880
+ this.tabsContent.changeTab(tabIndex);
881
+ if (fragmentId) {
882
+ setTimeout(() => {
883
+ const fgm = document.getElementById(fragmentId);
884
+ const yOffset = -80;
885
+ if (fgm) {
886
+ const y = fgm.getBoundingClientRect().top + window.pageYOffset + yOffset;
887
+ window.scrollTo({ top: y });
888
+ }
889
+ });
890
+ }
891
+ }
892
+ }
893
+ else {
894
+ if (changeTab) {
895
+ this.router.onSameUrlNavigation = 'reload';
896
+ this.router.navigate(['.'], { relativeTo: this.route, fragment: fragmentId }).then(() => {
897
+ if (this.tabsContent) {
898
+ this.tabsContent.changeTab(tabIndex);
899
+ }
900
+ });
901
+ }
902
+ else {
903
+ const routeRoot = this.router.url.split('#')[0];
904
+ this.location.go(`${routeRoot}#${fragmentId}`);
878
905
  }
879
- });
880
906
  }
881
- }
882
- } else {
883
- if (changeTab) {
884
- this.router.onSameUrlNavigation = "reload";
885
- this.router.navigate(["."], { relativeTo: this.route, fragment: fragmentId }).then(() => {
886
- if (this.tabsContent) {
887
- this.tabsContent.changeTab(tabIndex);
888
- }
889
- });
890
- } else {
891
- const routeRoot = this.router.url.split("#")[0];
892
- this.location.go(`${routeRoot}#${fragmentId}`);
893
- }
894
907
  }
895
- }
896
- _getComponentStatus(id) {
897
- const flatten = (links) => links ? links.reduce((result, item) => [
898
- ...result,
899
- {
900
- id: item.label,
901
- alternateId: item.name,
902
- status: item.markerTypeClass,
903
- cmpReplacement: item.cmpReplacement,
904
- cmpReplacementUrl: item.cmpReplacementUrl,
905
- cmpReplacementNote: item.cmpReplacementNote,
906
- alternateApiCategory: item.alternateApiCategory,
907
- metadata: item.metadata
908
- },
909
- ...flatten(item.children)
910
- ], []) : [];
911
- const flatLinks = flatten(this.asService.state.sidebarLinks);
912
- const idBasedCmp = flatLinks.filter((item) => item.id === id)[0];
913
- if (idBasedCmp) {
914
- return idBasedCmp;
915
- } else {
916
- const alternateIdBasedCmp = flatLinks.filter((item) => item.alternateId === id)[0];
917
- return alternateIdBasedCmp;
908
+ _getComponentStatus(id) {
909
+ const flatten = (links) => links
910
+ ? links.reduce((result, item) => [
911
+ ...result,
912
+ {
913
+ id: item.label,
914
+ alternateId: item.name,
915
+ status: item.markerTypeClass,
916
+ cmpReplacement: item.cmpReplacement,
917
+ cmpReplacementUrl: item.cmpReplacementUrl,
918
+ cmpReplacementNote: item.cmpReplacementNote,
919
+ alternateApiCategory: item.alternateApiCategory,
920
+ metadata: item.metadata,
921
+ },
922
+ ...flatten(item.children),
923
+ ], [])
924
+ : [];
925
+ const flatLinks = flatten(this.asService.state.sidebarLinks);
926
+ const idBasedCmp = flatLinks.filter((item) => item.id === id)[0];
927
+ if (idBasedCmp) {
928
+ return idBasedCmp;
929
+ }
930
+ else {
931
+ const alternateIdBasedCmp = flatLinks.filter((item) => item.alternateId === id)[0];
932
+ return alternateIdBasedCmp;
933
+ }
918
934
  }
919
- }
920
- _getApiUrl() {
921
- const url = window.location;
922
- const protocol = url.protocol;
923
- const host = url.host;
924
- const pathName = url.pathname;
925
- const pathNameArray = pathName.split("/");
926
- const name = pathNameArray[pathNameArray.length - 1];
927
- let category = pathNameArray[pathNameArray.length - 2];
928
- let showcaseType;
929
- showcaseType = pathNameArray[pathNameArray.length - 3];
930
- if (showcaseType.indexOf("eui-showcase") === -1) {
931
- showcaseType = pathNameArray[pathNameArray.length - 4];
935
+ _getApiUrl() {
936
+ const url = window.location;
937
+ const protocol = url.protocol;
938
+ const host = url.host;
939
+ const pathName = url.pathname;
940
+ const pathNameArray = pathName.split('/');
941
+ const name = pathNameArray[pathNameArray.length - 1];
942
+ let category = pathNameArray[pathNameArray.length - 2];
943
+ let showcaseType;
944
+ showcaseType = pathNameArray[pathNameArray.length - 3];
945
+ if (showcaseType.indexOf('eui-showcase') === -1) {
946
+ showcaseType = pathNameArray[pathNameArray.length - 4];
947
+ }
948
+ let protocolGen = protocol;
949
+ let hostGen = host;
950
+ if (host.indexOf('localhost') > -1) {
951
+ protocolGen = 'https:';
952
+ hostGen = 'euidev.ecdevops.eu';
953
+ }
954
+ const appVersionNumber = this.appMetadata.appVersion.split('.')[0];
955
+ let docTypeRoot = `eui-docs-eui-${appVersionNumber}.x`;
956
+ if (showcaseType.indexOf('-ecl') > -1) {
957
+ docTypeRoot = `eui-docs-ecl-${appVersionNumber}.x`;
958
+ }
959
+ if (showcaseType.indexOf('-mobile') > -1) {
960
+ docTypeRoot = `eui-docs-mobile-core-${appVersionNumber}.x`;
961
+ }
962
+ if (category === 'layout-components' || category === 'externals' || category === 'layout' || category === 'atoms') {
963
+ category = 'components';
964
+ }
965
+ const cmp = this._getComponentStatus(name);
966
+ if (cmp && cmp.alternateApiCategory) {
967
+ category = cmp.alternateApiCategory;
968
+ }
969
+ const formattedName = this._camelCaseString(name + '-' + category.slice(0, -1), '-', true);
970
+ const docPath = `${protocolGen}//${hostGen}/${docTypeRoot}/${category}/${formattedName}.html`;
971
+ console.log(`fetching API from: ${docPath}`);
972
+ return docPath;
932
973
  }
933
- let protocolGen = protocol;
934
- let hostGen = host;
935
- if (host.indexOf("localhost") > -1) {
936
- protocolGen = "https:";
937
- hostGen = "euidev.ecdevops.eu";
974
+ _camelCaseString(string, separator, first) {
975
+ const stringArray = string.split(separator);
976
+ let result = '';
977
+ let s;
978
+ for (let i = 0; i < stringArray.length; i++) {
979
+ s = stringArray[i];
980
+ if (i === 0) {
981
+ if (first) {
982
+ result += s.substring(0, 1).toUpperCase() + s.substr(1);
983
+ }
984
+ else {
985
+ result += s;
986
+ }
987
+ }
988
+ else {
989
+ result += s.substring(0, 1).toUpperCase() + s.substr(1);
990
+ }
991
+ }
992
+ return result;
938
993
  }
939
- const appVersionNumber = this.appMetadata.appVersion.split(".")[0];
940
- let docTypeRoot = `eui-docs-eui-${appVersionNumber}.x`;
941
- if (showcaseType.indexOf("-ecl") > -1) {
942
- docTypeRoot = `eui-docs-ecl-${appVersionNumber}.x`;
994
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i3.EuiAppShellService }, { token: i3$1.DomSanitizer }, { token: i4$1.Location }], target: i0.ɵɵFactoryTarget.Component }); }
995
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageComponent, selector: "eui-showcase-doc-page", inputs: { id: "id", label: "label", subLabel: "subLabel", isNotReady: "isNotReady", isDeprecated: "isDeprecated", isLegacy: "isLegacy", codeFolder: "codeFolder", showcase: "showcase", isNavigationVisible: "isNavigationVisible", hasApi: "hasApi", hasA11y: "hasA11y" }, queries: [{ propertyName: "samples", predicate: DocSampleComponent, descendants: true }, { propertyName: "sections", predicate: DocSectionComponent, descendants: true }, { propertyName: "pageOverviewContent", predicate: i0.forwardRef(() => DocPageOverviewContentDirective) }, { propertyName: "pageOverviewDefaultContent", predicate: i0.forwardRef(() => DocPageOverviewDefaultContentDirective) }, { propertyName: "pageSamplesContent", predicate: i0.forwardRef(() => DocPageSamplesContentDirective) }, { propertyName: "pageSectionsContent", predicate: i0.forwardRef(() => DocPageSectionsContentDirective) }, { propertyName: "pageInteractiveContent", predicate: i0.forwardRef(() => DocPageInteractiveContentDirective) }, { propertyName: "pageAccessibilityContent", predicate: i0.forwardRef(() => DocPageAccessibilityContentDirective) }, { propertyName: "pageApiContent", predicate: i0.forwardRef(() => DocPageApiContentDirective) }, { propertyName: "pageThemingContent", predicate: i0.forwardRef(() => DocPageThemingContentDirective) }], viewQueries: [{ propertyName: "tabsContent", first: true, predicate: ["tabsContent"], descendants: true }], ngImport: i0, template: "<div class=\"doc-page-navigation-wrapper\" [class.eui-u-hidden]=\"isLoading\">\n <div class=\"doc-page-main-column\">\n <eui-page>\n <eui-page-header label=\"{{ label }}\" subLabel=\"{{ subLabel }}\">\n <eui-page-header-action-items>\n <eui-showcase-doc-page-code\n *ngIf=\"codeFolder\"\n codeFolder=\"{{ codeFolder }}\"\n showcase=\"{{ showcase }}\"></eui-showcase-doc-page-code>\n <eui-chip\n *ngIf=\"stateLabel\"\n [euiSuccess]=\"stateLabel === 'ACTIVE'\"\n [euiInfo]=\"isNotReady\"\n [euiWarning]=\"isDeprecated\"\n [euiDanger]=\"isLegacy\">\n <span euiLabel>\n <strong>{{ stateLabel }}</strong>\n </span>\n </eui-chip>\n </eui-page-header-action-items>\n </eui-page-header>\n\n <eui-page-content>\n <eui-alert *ngIf=\"stateLabel === 'LEGACY' || isLegacy\" euiDanger class=\"eui-u-mb-xl\">\n <eui-alert-title>LEGACY component</eui-alert-title>\n <strong class=\"eui-u-color-danger\">This component will be removed in eUI 19 release (end of 2024)</strong>\n <div *ngIf=\"cmp\">\n <div *ngIf=\"cmp.cmpReplacement !== 'NONE'\">\n It has been replaced by :\n <strong class=\"eui-u-color-success-darkest\">{{ cmp.cmpReplacement }}</strong>\n <!-- <div *ngIf=\"cmp.cmpReplacementUrl\">\n <br><br>\n You can find more information on the new component here : <a [routerLink]=\"cmp.cmpReplacementUrl\">{{cmp.cmpReplacementUrl}}</a>\n </div> -->\n </div>\n <div *ngIf=\"cmp.cmpReplacement === 'NONE'\">\n <strong class=\"eui-u-color-danger\"> This component will be removed in eUI 18 release (end of 2023)</strong>\n </div>\n <div *ngIf=\"cmp.cmpReplacementNote\">\n <strong class=\"eui-u-color-warning\">{{ cmp.cmpReplacementNote }}</strong>\n </div>\n </div>\n </eui-alert>\n\n <eui-alert *ngIf=\"stateLabel === 'DEPRECATED' || isDeprecated\" euiWarning class=\"eui-u-mb-xl\">\n <eui-alert-title>DEPRECATED component</eui-alert-title>\n This component has been <strong class=\"eui-u-color-danger\">deprecated</strong>\n <div *ngIf=\"cmp\">\n This component has no replacement in current version AND won't have replacement in next version of eUI,\n <strong class=\"eui-u-color-danger\">it will be removed in eUI 18 release (end of 2023)</strong>\n </div>\n </eui-alert>\n\n <eui-alert *ngIf=\"stateLabel === 'NOT_READY' || isNotReady\" euiInfo class=\"eui-u-mb-xl\">\n <eui-alert-title>NOT READY for production usage</eui-alert-title>\n <div *ngIf=\"cmp\">\n This component is under development / some features might be missing, it'll be available in a future release once\n validated.\n </div>\n </eui-alert>\n\n <div *ngIf=\"(stateLabel || isNotReady || isDeprecated) && stateLabel !== 'ACTIVE'\" class=\"mb-5\"></div>\n\n <eui-tabs #tabsContent *ngIf=\"pageSectionsContent.length === 0\" (tabSelect)=\"onTabSelected($event)\">\n <eui-tab>\n <euiTabLabel> OPTIONS & SAMPLES </euiTabLabel>\n <euiTabContent>\n <ng-container *ngIf=\"cmp && cmp.metadata\">\n <div class=\"doc-page-section-title\">Module import</div>\n <pre><code class=\"language-javascript eui-u-bg-color-grey-5\" euiCode>{{ cmpModuleImport }}</code></pre>\n <br />\n </ng-container>\n\n <div id=\"overview\" class=\"doc-page-section-title\">Overview</div>\n\n <div *ngIf=\"pageOverviewContent.length > 0\">\n <ng-content select=\"docPageOverview\"></ng-content>\n </div>\n\n <div *ngIf=\"pageOverviewDefaultContent.length > 0\">\n <ng-content select=\"docPageOverviewDefault\"></ng-content>\n </div>\n <br />\n\n <div id=\"samples\" class=\"doc-page-section-title\">Options & samples</div>\n <ng-content select=\"docPageSamples\"></ng-content>\n </euiTabContent>\n </eui-tab>\n\n <eui-tab *ngIf=\"hasApi\">\n <euiTabLabel> API </euiTabLabel>\n <euiTabContent>\n <ng-container *ngIf=\"apiUrlSafe\">\n <div class=\"flex-container\">\n <a href=\"{{ apiUrl }}\" target=\"_blank\" class=\"ms-auto pb-2 eui-u-text-link-external\">Open API page</a>\n </div>\n <div class=\"doc-page-api-iframe-wrapper\">\n <iframe id=\"iframe_api\" [width]=\"'100%'\" height=\"700px\" frameBorder=\"0\" [src]=\"apiUrlSafe\"></iframe>\n </div>\n </ng-container>\n </euiTabContent>\n </eui-tab>\n\n <eui-tab *ngIf=\"hasA11y\">\n <euiTabLabel> A11Y </euiTabLabel>\n <euiTabContent>\n <div id=\"accessibility\" class=\"doc-page-section-title\">Accessibility</div>\n <ng-container *ngIf=\"pageAccessibilityContent.length !== 0\">\n <ng-content select=\"docPageAccessibility\"></ng-content>\n <p>\n For more information regarding Accessibility, please refer to the <a class=\"eui-u-text-link-external\" href=\"https://eui.ecdevops.eu/eui-showcase-ux-components-18.x/showcase-dev-guide/accessibility/intro\" target=\"_blank\">Accessibility Dev Guide</a>.\n </p>\n </ng-container>\n <ng-container *ngIf=\"pageAccessibilityContent.length === 0\">\n No accessibility rules applicable\n </ng-container>\n </euiTabContent>\n </eui-tab>\n\n <eui-tab *ngIf=\"pageThemingContent.length > 0\">\n <euiTabLabel> THEMING </euiTabLabel>\n <euiTabContent>\n <div id=\"theming\" class=\"doc-page-section-title\">Theming</div>\n <ng-content select=\"docPageTheming\"></ng-content>\n </euiTabContent>\n </eui-tab>\n\n <eui-tab *ngIf=\"pageInteractiveContent.length > 0\">\n <euiTabLabel>\n {{ pageInteractiveContent.first.title }}\n </euiTabLabel>\n <euiTabContent>\n <div id=\"interactive\" class=\"doc-page-section-title\">\n {{ pageInteractiveContent.first.subTitle }}\n </div>\n <ng-content select=\"docPageInteractive\"></ng-content>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n\n <ng-container *ngIf=\"pageSectionsContent.length > 0\">\n <div id=\"demo\" *ngIf=\"sections.length === 0\" class=\"doc-page-section-title\">Demo</div>\n <ng-content select=\"docPageSections\"></ng-content>\n </ng-container>\n </eui-page-content>\n </eui-page>\n </div>\n\n <div *ngIf=\"isNavigationVisible\" class=\"doc-page-navigation-column eui-u-hidden-desktop-down\">\n <div id=\"doc-page-nav\">\n <div class=\"doc-page-navigation-title\">In this page</div>\n <div class=\"doc-page-navigation-content\" tabindex=\"0\">\n <ul class=\"doc-page-navigation\">\n <ng-container *ngIf=\"pageSectionsContent.length === 0\">\n <li\n *ngIf=\"hasApi\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'api'\"\n (click)=\"onNavClick('api', 1)\">\n <span>API</span>\n </li>\n <li\n *ngIf=\"hasA11y\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'a11y'\"\n (click)=\"onNavClick('a11y', 2)\">\n <span>A11Y</span>\n </li>\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'samples'\"\n (click)=\"onNavClick('samples', 0)\">\n <span>OPTIONS & SAMPLES</span>\n </li>\n <li class=\"doc-page-navigation-item doc-page-navigation-sub\">\n <ng-container *ngIf=\"categories.length > 0\">\n <ng-container *ngIf=\"hasCategories; else noCategories\">\n <ng-container *ngFor=\"let category of categories\">\n <ng-container *ngIf=\"category.name === 'Base'; else notBase\">\n <ul *ngFor=\"let sample of category.samples\" class=\"doc-page-navigation-list\">\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === sample.id\"\n (click)=\"onNavClick(sample.id, 0)\">\n <span>{{ sample.label }}</span>\n </li>\n </ul>\n </ng-container>\n <ng-template #notBase>\n <div *ngIf=\"category.name !== 'Base'\" class=\"doc-page-navigation-category\">{{category.name}}</div>\n <ul *ngFor=\"let sample of category.samples\" class=\"doc-page-navigation-list\">\n <li\n class=\"doc-page-navigation-item doc-page-navigation-item-sub\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === sample.id\"\n (click)=\"onNavClick(sample.id, 0)\">\n <span>{{ sample.label }}</span>\n </li>\n </ul>\n </ng-template>\n </ng-container>\n </ng-container>\n\n <ng-template #noCategories>\n <ul *ngFor=\"let sample of samples\" class=\"doc-page-navigation-list\">\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === sample.id\"\n (click)=\"onNavClick(sample.id, 0)\">\n <span>{{ sample.label }}</span>\n </li>\n </ul>\n </ng-template>\n </ng-container>\n </li>\n\n\n\n <!-- OPTIONAL TABS-->\n <ng-container *ngIf=\"pageThemingContent.length > 0\">\n <li\n *ngIf=\"pageThemingContent.length > 0\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'theming'\"\n (click)=\"onNavClick('theming', 3)\">\n <span>THEMING</span>\n </li>\n <li\n *ngIf=\"pageInteractiveContent.length > 0\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'advanced'\"\n (click)=\"onNavClick('advanced', 4)\">\n <span>{{ pageInteractiveContent.first.title }}</span>\n </li>\n </ng-container>\n <ng-container *ngIf=\"pageThemingContent.length === 0\">\n <li\n *ngIf=\"pageInteractiveContent.length > 0\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'advanced'\"\n (click)=\"onNavClick('advanced', 3)\">\n <span>{{ pageInteractiveContent.first.title }}</span>\n </li>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"pageSectionsContent.length > 0\">\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'sections'\"\n (click)=\"onNavClick('sections', null)\">\n <span>Sections</span>\n </li>\n <li\n *ngIf=\"sections.length === 0\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'demo'\"\n (click)=\"onNavClick('demo', null)\">\n <span>Demo</span>\n </li>\n <li *ngIf=\"sections.length > 0\" class=\"doc-page-navigation-item doc-page-navigation-sub\">\n <ul *ngFor=\"let section of sections\">\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === section.id\"\n (click)=\"onNavClick(section.id, null)\">\n <span>{{ section.label }}</span>\n </li>\n </ul>\n </li>\n </ng-container>\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".doc-page-navigation-wrapper{display:flex;flex-wrap:wrap;width:100%}.doc-page-navigation-wrapper .doc-page-main-column{padding-right:var(--eui-s-m);width:calc(100% - 400px)}.doc-page-navigation-wrapper .doc-page-navigation-column{background:var(--eui-c-white);box-shadow:0 8px 10px #b7c0ce33;position:fixed;right:0;transition:all ease-in-out .25s;width:400px;z-index:auto;box-shadow:var(--eui-sh-1)}.doc-page-navigation-wrapper .doc-page-navigation-column:hover{width:400px}.doc-page-navigation-wrapper .language-javascript:focus:not([readonly]){outline:2px solid var(--eui-c-focus)!important;outline-offset:0!important;transition:none}.doc-page-navigation-wrapper .language-javascript:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:0!important;transition:none}.doc-page-navigation-wrapper .language-javascript [tabindex=\"0\"]:focus:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:0!important;transition:none}.doc-page-navigation-title{padding:var(--eui-s-s);font:var(--eui-f-xl)}.doc-page-navigation-content{display:block;height:100vh;max-height:calc(100vh - 7.25rem);overflow-y:auto;width:100%}.doc-page-navigation-content::-webkit-scrollbar{display:inherit;height:6px;width:6px;background-color:var(--eui-c-neutral-bg-light)}.doc-page-navigation-content::-webkit-scrollbar-thumb{background-color:var(--eui-c-neutral-lightest);border-radius:5rem}.doc-page-navigation-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-c-neutral-lighter)}.doc-page-navigation-content::-webkit-scrollbar-track{background-color:var(--eui-c-neutral-bg-light);border-radius:0}.doc-page-navigation{background-color:transparent;border-left:2px solid transparent;padding-top:var(--eui-s-xs);margin:0;padding:0}.doc-page-navigation .doc-page-navigation-list{margin:0;padding:0}.doc-page-navigation .doc-page-navigation-item{color:var(--eui-c-info-darker);cursor:pointer;line-height:1.5;overflow:hidden;padding:var(--eui-s-3xs);text-overflow:ellipsis;transition:background-color ease-in .2s;white-space:nowrap;list-style:none}.doc-page-navigation .doc-page-navigation-item span{font-weight:700;color:var(--eui-c-info-darker);padding-left:var(--eui-s-xs)}.doc-page-navigation .doc-page-navigation-item:not(.doc-page-navigation-sub):hover{background-color:var(--eui-c-neutral-bg-light);border-left:2px solid var(--eui-c-info-darker)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-sub .doc-page-navigation-item span{font-weight:400;padding-left:var(--eui-s-s)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-sub .doc-page-navigation-item:hover{background-color:var(--eui-c-neutral-bg-light);border-left:2px solid var(--eui-c-neutral-lightest)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-item--selected{background-color:var(--eui-c-info-bg);border-left:2px solid var(--eui-c-info-darker)}.doc-page-navigation .doc-page-navigation-item-sub{padding-left:var(--eui-s-l)}.doc-page-navigation .doc-page-navigation-category{padding-left:var(--eui-s-m);color:var(--eui-c-text);margin-top:var(--eui-s-s);font-weight:700;text-transform:capitalize}.doc-page-api-iframe-wrapper{display:flex;justify-content:space-around;margin:0}.doc-page-section-title{margin-top:var(--eui-s-2xl);margin-bottom:var(--eui-s-xl);color:var(--eui-c-info-darker);letter-spacing:-1px;font:var(--eui-f-2xl-bold)}.doc-page-section-subtitle{font:var(--eui-f-l-bold);letter-spacing:-.25px;margin:var(--eui-s-2xl) 0 var(--eui-s-s);padding-bottom:var(--eui-s-2xs);width:auto;display:table;color:var(--eui-c-neutral)}@media screen and (max-width: 767px){.doc-page-navigation-wrapper .doc-page-main-column{padding-right:0;width:100%}.doc-page-navigation-wrapper .doc-page-navigation-column{display:none;width:0}}@media screen and (min-width: 768px) and (max-width: 995px){.doc-page-navigation-wrapper .doc-page-main-column{width:80%}.doc-page-navigation-wrapper .doc-page-navigation-column{width:20%}}@media screen and (max-width: 1550px){.doc-page-api-iframe-wrapper{display:none}}\n"], dependencies: [{ kind: "directive", type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i9.EuiTabsComponent, selector: "eui-tabs", inputs: ["tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClose", "tabSelect"] }, { kind: "component", type: i9.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "component", type: i9.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "component", type: i9.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i6.EuiPageComponent, selector: "eui-page" }, { kind: "component", type: i6.EuiPageContentComponent, selector: "eui-page-content" }, { kind: "component", type: i6.EuiPageHeaderComponent, selector: "eui-page-header", inputs: ["label", "subLabel", "labelTooltip", "subLabelTooltip", "isCollapsible", "isCollapsed", "isHeaderMultilines", "collapsedLabel", "expandedLabel"], outputs: ["collapse"] }, { kind: "component", type: i6.EuiPageHeaderActionItemsComponent, selector: "eui-page-header-action-items" }, { kind: "component", type: i7.EuiChipComponent, selector: "eui-chip, span[euiChip], li[euiChip]", inputs: ["ariaLabel", "e2eAttr", "euiInternalId", "tooltipMessage", "id", "data", "isChipRemovable", "isSquared"], outputs: ["remove"] }, { kind: "component", type: i8.EuiAlertComponent, selector: "div[euiAlert], eui-alert", inputs: ["ariaDescribedBy", "e2eAttr", "isMuted", "isCloseable", "isFocusable"], outputs: ["closeAlert"] }, { kind: "component", type: i8.EuiAlertTitleComponent, selector: "eui-alert-title" }, { kind: "component", type: i11.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }, { kind: "directive", type: EuiCodeHighlighterDirective, selector: "[euiCode]" }, { kind: "component", type: DocPageCodeComponent, selector: "eui-showcase-doc-page-code", inputs: ["codeFolder", "showcase"] }], encapsulation: i0.ViewEncapsulation.None }); }
996
+ }
997
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageComponent, decorators: [{
998
+ type: Component,
999
+ args: [{ selector: 'eui-showcase-doc-page', encapsulation: ViewEncapsulation.None, template: "<div class=\"doc-page-navigation-wrapper\" [class.eui-u-hidden]=\"isLoading\">\n <div class=\"doc-page-main-column\">\n <eui-page>\n <eui-page-header label=\"{{ label }}\" subLabel=\"{{ subLabel }}\">\n <eui-page-header-action-items>\n <eui-showcase-doc-page-code\n *ngIf=\"codeFolder\"\n codeFolder=\"{{ codeFolder }}\"\n showcase=\"{{ showcase }}\"></eui-showcase-doc-page-code>\n <eui-chip\n *ngIf=\"stateLabel\"\n [euiSuccess]=\"stateLabel === 'ACTIVE'\"\n [euiInfo]=\"isNotReady\"\n [euiWarning]=\"isDeprecated\"\n [euiDanger]=\"isLegacy\">\n <span euiLabel>\n <strong>{{ stateLabel }}</strong>\n </span>\n </eui-chip>\n </eui-page-header-action-items>\n </eui-page-header>\n\n <eui-page-content>\n <eui-alert *ngIf=\"stateLabel === 'LEGACY' || isLegacy\" euiDanger class=\"eui-u-mb-xl\">\n <eui-alert-title>LEGACY component</eui-alert-title>\n <strong class=\"eui-u-color-danger\">This component will be removed in eUI 19 release (end of 2024)</strong>\n <div *ngIf=\"cmp\">\n <div *ngIf=\"cmp.cmpReplacement !== 'NONE'\">\n It has been replaced by :\n <strong class=\"eui-u-color-success-darkest\">{{ cmp.cmpReplacement }}</strong>\n <!-- <div *ngIf=\"cmp.cmpReplacementUrl\">\n <br><br>\n You can find more information on the new component here : <a [routerLink]=\"cmp.cmpReplacementUrl\">{{cmp.cmpReplacementUrl}}</a>\n </div> -->\n </div>\n <div *ngIf=\"cmp.cmpReplacement === 'NONE'\">\n <strong class=\"eui-u-color-danger\"> This component will be removed in eUI 18 release (end of 2023)</strong>\n </div>\n <div *ngIf=\"cmp.cmpReplacementNote\">\n <strong class=\"eui-u-color-warning\">{{ cmp.cmpReplacementNote }}</strong>\n </div>\n </div>\n </eui-alert>\n\n <eui-alert *ngIf=\"stateLabel === 'DEPRECATED' || isDeprecated\" euiWarning class=\"eui-u-mb-xl\">\n <eui-alert-title>DEPRECATED component</eui-alert-title>\n This component has been <strong class=\"eui-u-color-danger\">deprecated</strong>\n <div *ngIf=\"cmp\">\n This component has no replacement in current version AND won't have replacement in next version of eUI,\n <strong class=\"eui-u-color-danger\">it will be removed in eUI 18 release (end of 2023)</strong>\n </div>\n </eui-alert>\n\n <eui-alert *ngIf=\"stateLabel === 'NOT_READY' || isNotReady\" euiInfo class=\"eui-u-mb-xl\">\n <eui-alert-title>NOT READY for production usage</eui-alert-title>\n <div *ngIf=\"cmp\">\n This component is under development / some features might be missing, it'll be available in a future release once\n validated.\n </div>\n </eui-alert>\n\n <div *ngIf=\"(stateLabel || isNotReady || isDeprecated) && stateLabel !== 'ACTIVE'\" class=\"mb-5\"></div>\n\n <eui-tabs #tabsContent *ngIf=\"pageSectionsContent.length === 0\" (tabSelect)=\"onTabSelected($event)\">\n <eui-tab>\n <euiTabLabel> OPTIONS & SAMPLES </euiTabLabel>\n <euiTabContent>\n <ng-container *ngIf=\"cmp && cmp.metadata\">\n <div class=\"doc-page-section-title\">Module import</div>\n <pre><code class=\"language-javascript eui-u-bg-color-grey-5\" euiCode>{{ cmpModuleImport }}</code></pre>\n <br />\n </ng-container>\n\n <div id=\"overview\" class=\"doc-page-section-title\">Overview</div>\n\n <div *ngIf=\"pageOverviewContent.length > 0\">\n <ng-content select=\"docPageOverview\"></ng-content>\n </div>\n\n <div *ngIf=\"pageOverviewDefaultContent.length > 0\">\n <ng-content select=\"docPageOverviewDefault\"></ng-content>\n </div>\n <br />\n\n <div id=\"samples\" class=\"doc-page-section-title\">Options & samples</div>\n <ng-content select=\"docPageSamples\"></ng-content>\n </euiTabContent>\n </eui-tab>\n\n <eui-tab *ngIf=\"hasApi\">\n <euiTabLabel> API </euiTabLabel>\n <euiTabContent>\n <ng-container *ngIf=\"apiUrlSafe\">\n <div class=\"flex-container\">\n <a href=\"{{ apiUrl }}\" target=\"_blank\" class=\"ms-auto pb-2 eui-u-text-link-external\">Open API page</a>\n </div>\n <div class=\"doc-page-api-iframe-wrapper\">\n <iframe id=\"iframe_api\" [width]=\"'100%'\" height=\"700px\" frameBorder=\"0\" [src]=\"apiUrlSafe\"></iframe>\n </div>\n </ng-container>\n </euiTabContent>\n </eui-tab>\n\n <eui-tab *ngIf=\"hasA11y\">\n <euiTabLabel> A11Y </euiTabLabel>\n <euiTabContent>\n <div id=\"accessibility\" class=\"doc-page-section-title\">Accessibility</div>\n <ng-container *ngIf=\"pageAccessibilityContent.length !== 0\">\n <ng-content select=\"docPageAccessibility\"></ng-content>\n <p>\n For more information regarding Accessibility, please refer to the <a class=\"eui-u-text-link-external\" href=\"https://eui.ecdevops.eu/eui-showcase-ux-components-18.x/showcase-dev-guide/accessibility/intro\" target=\"_blank\">Accessibility Dev Guide</a>.\n </p>\n </ng-container>\n <ng-container *ngIf=\"pageAccessibilityContent.length === 0\">\n No accessibility rules applicable\n </ng-container>\n </euiTabContent>\n </eui-tab>\n\n <eui-tab *ngIf=\"pageThemingContent.length > 0\">\n <euiTabLabel> THEMING </euiTabLabel>\n <euiTabContent>\n <div id=\"theming\" class=\"doc-page-section-title\">Theming</div>\n <ng-content select=\"docPageTheming\"></ng-content>\n </euiTabContent>\n </eui-tab>\n\n <eui-tab *ngIf=\"pageInteractiveContent.length > 0\">\n <euiTabLabel>\n {{ pageInteractiveContent.first.title }}\n </euiTabLabel>\n <euiTabContent>\n <div id=\"interactive\" class=\"doc-page-section-title\">\n {{ pageInteractiveContent.first.subTitle }}\n </div>\n <ng-content select=\"docPageInteractive\"></ng-content>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n\n <ng-container *ngIf=\"pageSectionsContent.length > 0\">\n <div id=\"demo\" *ngIf=\"sections.length === 0\" class=\"doc-page-section-title\">Demo</div>\n <ng-content select=\"docPageSections\"></ng-content>\n </ng-container>\n </eui-page-content>\n </eui-page>\n </div>\n\n <div *ngIf=\"isNavigationVisible\" class=\"doc-page-navigation-column eui-u-hidden-desktop-down\">\n <div id=\"doc-page-nav\">\n <div class=\"doc-page-navigation-title\">In this page</div>\n <div class=\"doc-page-navigation-content\" tabindex=\"0\">\n <ul class=\"doc-page-navigation\">\n <ng-container *ngIf=\"pageSectionsContent.length === 0\">\n <li\n *ngIf=\"hasApi\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'api'\"\n (click)=\"onNavClick('api', 1)\">\n <span>API</span>\n </li>\n <li\n *ngIf=\"hasA11y\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'a11y'\"\n (click)=\"onNavClick('a11y', 2)\">\n <span>A11Y</span>\n </li>\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'samples'\"\n (click)=\"onNavClick('samples', 0)\">\n <span>OPTIONS & SAMPLES</span>\n </li>\n <li class=\"doc-page-navigation-item doc-page-navigation-sub\">\n <ng-container *ngIf=\"categories.length > 0\">\n <ng-container *ngIf=\"hasCategories; else noCategories\">\n <ng-container *ngFor=\"let category of categories\">\n <ng-container *ngIf=\"category.name === 'Base'; else notBase\">\n <ul *ngFor=\"let sample of category.samples\" class=\"doc-page-navigation-list\">\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === sample.id\"\n (click)=\"onNavClick(sample.id, 0)\">\n <span>{{ sample.label }}</span>\n </li>\n </ul>\n </ng-container>\n <ng-template #notBase>\n <div *ngIf=\"category.name !== 'Base'\" class=\"doc-page-navigation-category\">{{category.name}}</div>\n <ul *ngFor=\"let sample of category.samples\" class=\"doc-page-navigation-list\">\n <li\n class=\"doc-page-navigation-item doc-page-navigation-item-sub\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === sample.id\"\n (click)=\"onNavClick(sample.id, 0)\">\n <span>{{ sample.label }}</span>\n </li>\n </ul>\n </ng-template>\n </ng-container>\n </ng-container>\n\n <ng-template #noCategories>\n <ul *ngFor=\"let sample of samples\" class=\"doc-page-navigation-list\">\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === sample.id\"\n (click)=\"onNavClick(sample.id, 0)\">\n <span>{{ sample.label }}</span>\n </li>\n </ul>\n </ng-template>\n </ng-container>\n </li>\n\n\n\n <!-- OPTIONAL TABS-->\n <ng-container *ngIf=\"pageThemingContent.length > 0\">\n <li\n *ngIf=\"pageThemingContent.length > 0\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'theming'\"\n (click)=\"onNavClick('theming', 3)\">\n <span>THEMING</span>\n </li>\n <li\n *ngIf=\"pageInteractiveContent.length > 0\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'advanced'\"\n (click)=\"onNavClick('advanced', 4)\">\n <span>{{ pageInteractiveContent.first.title }}</span>\n </li>\n </ng-container>\n <ng-container *ngIf=\"pageThemingContent.length === 0\">\n <li\n *ngIf=\"pageInteractiveContent.length > 0\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'advanced'\"\n (click)=\"onNavClick('advanced', 3)\">\n <span>{{ pageInteractiveContent.first.title }}</span>\n </li>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"pageSectionsContent.length > 0\">\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'sections'\"\n (click)=\"onNavClick('sections', null)\">\n <span>Sections</span>\n </li>\n <li\n *ngIf=\"sections.length === 0\"\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === 'demo'\"\n (click)=\"onNavClick('demo', null)\">\n <span>Demo</span>\n </li>\n <li *ngIf=\"sections.length > 0\" class=\"doc-page-navigation-item doc-page-navigation-sub\">\n <ul *ngFor=\"let section of sections\">\n <li\n class=\"doc-page-navigation-item\"\n [class.doc-page-navigation-item--selected]=\"fragmentId === section.id\"\n (click)=\"onNavClick(section.id, null)\">\n <span>{{ section.label }}</span>\n </li>\n </ul>\n </li>\n </ng-container>\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".doc-page-navigation-wrapper{display:flex;flex-wrap:wrap;width:100%}.doc-page-navigation-wrapper .doc-page-main-column{padding-right:var(--eui-s-m);width:calc(100% - 400px)}.doc-page-navigation-wrapper .doc-page-navigation-column{background:var(--eui-c-white);box-shadow:0 8px 10px #b7c0ce33;position:fixed;right:0;transition:all ease-in-out .25s;width:400px;z-index:auto;box-shadow:var(--eui-sh-1)}.doc-page-navigation-wrapper .doc-page-navigation-column:hover{width:400px}.doc-page-navigation-wrapper .language-javascript:focus:not([readonly]){outline:2px solid var(--eui-c-focus)!important;outline-offset:0!important;transition:none}.doc-page-navigation-wrapper .language-javascript:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:0!important;transition:none}.doc-page-navigation-wrapper .language-javascript [tabindex=\"0\"]:focus:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:0!important;transition:none}.doc-page-navigation-title{padding:var(--eui-s-s);font:var(--eui-f-xl)}.doc-page-navigation-content{display:block;height:100vh;max-height:calc(100vh - 7.25rem);overflow-y:auto;width:100%}.doc-page-navigation-content::-webkit-scrollbar{display:inherit;height:6px;width:6px;background-color:var(--eui-c-neutral-bg-light)}.doc-page-navigation-content::-webkit-scrollbar-thumb{background-color:var(--eui-c-neutral-lightest);border-radius:5rem}.doc-page-navigation-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-c-neutral-lighter)}.doc-page-navigation-content::-webkit-scrollbar-track{background-color:var(--eui-c-neutral-bg-light);border-radius:0}.doc-page-navigation{background-color:transparent;border-left:2px solid transparent;padding-top:var(--eui-s-xs);margin:0;padding:0}.doc-page-navigation .doc-page-navigation-list{margin:0;padding:0}.doc-page-navigation .doc-page-navigation-item{color:var(--eui-c-info-darker);cursor:pointer;line-height:1.5;overflow:hidden;padding:var(--eui-s-3xs);text-overflow:ellipsis;transition:background-color ease-in .2s;white-space:nowrap;list-style:none}.doc-page-navigation .doc-page-navigation-item span{font-weight:700;color:var(--eui-c-info-darker);padding-left:var(--eui-s-xs)}.doc-page-navigation .doc-page-navigation-item:not(.doc-page-navigation-sub):hover{background-color:var(--eui-c-neutral-bg-light);border-left:2px solid var(--eui-c-info-darker)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-sub .doc-page-navigation-item span{font-weight:400;padding-left:var(--eui-s-s)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-sub .doc-page-navigation-item:hover{background-color:var(--eui-c-neutral-bg-light);border-left:2px solid var(--eui-c-neutral-lightest)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-item--selected{background-color:var(--eui-c-info-bg);border-left:2px solid var(--eui-c-info-darker)}.doc-page-navigation .doc-page-navigation-item-sub{padding-left:var(--eui-s-l)}.doc-page-navigation .doc-page-navigation-category{padding-left:var(--eui-s-m);color:var(--eui-c-text);margin-top:var(--eui-s-s);font-weight:700;text-transform:capitalize}.doc-page-api-iframe-wrapper{display:flex;justify-content:space-around;margin:0}.doc-page-section-title{margin-top:var(--eui-s-2xl);margin-bottom:var(--eui-s-xl);color:var(--eui-c-info-darker);letter-spacing:-1px;font:var(--eui-f-2xl-bold)}.doc-page-section-subtitle{font:var(--eui-f-l-bold);letter-spacing:-.25px;margin:var(--eui-s-2xl) 0 var(--eui-s-s);padding-bottom:var(--eui-s-2xs);width:auto;display:table;color:var(--eui-c-neutral)}@media screen and (max-width: 767px){.doc-page-navigation-wrapper .doc-page-main-column{padding-right:0;width:100%}.doc-page-navigation-wrapper .doc-page-navigation-column{display:none;width:0}}@media screen and (min-width: 768px) and (max-width: 995px){.doc-page-navigation-wrapper .doc-page-main-column{width:80%}.doc-page-navigation-wrapper .doc-page-navigation-column{width:20%}}@media screen and (max-width: 1550px){.doc-page-api-iframe-wrapper{display:none}}\n"] }]
1000
+ }], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i3.EuiAppShellService }, { type: i3$1.DomSanitizer }, { type: i4$1.Location }], propDecorators: { id: [{
1001
+ type: Input
1002
+ }], label: [{
1003
+ type: Input
1004
+ }], subLabel: [{
1005
+ type: Input
1006
+ }], isNotReady: [{
1007
+ type: Input
1008
+ }], isDeprecated: [{
1009
+ type: Input
1010
+ }], isLegacy: [{
1011
+ type: Input
1012
+ }], codeFolder: [{
1013
+ type: Input
1014
+ }], showcase: [{
1015
+ type: Input
1016
+ }], isNavigationVisible: [{
1017
+ type: Input
1018
+ }], hasApi: [{
1019
+ type: Input
1020
+ }], hasA11y: [{
1021
+ type: Input
1022
+ }], samples: [{
1023
+ type: ContentChildren,
1024
+ args: [DocSampleComponent, { descendants: true }]
1025
+ }], sections: [{
1026
+ type: ContentChildren,
1027
+ args: [DocSectionComponent, { descendants: true }]
1028
+ }], pageOverviewContent: [{
1029
+ type: ContentChildren,
1030
+ args: [forwardRef(() => DocPageOverviewContentDirective)]
1031
+ }], pageOverviewDefaultContent: [{
1032
+ type: ContentChildren,
1033
+ args: [forwardRef(() => DocPageOverviewDefaultContentDirective)]
1034
+ }], pageSamplesContent: [{
1035
+ type: ContentChildren,
1036
+ args: [forwardRef(() => DocPageSamplesContentDirective)]
1037
+ }], pageSectionsContent: [{
1038
+ type: ContentChildren,
1039
+ args: [forwardRef(() => DocPageSectionsContentDirective)]
1040
+ }], pageInteractiveContent: [{
1041
+ type: ContentChildren,
1042
+ args: [forwardRef(() => DocPageInteractiveContentDirective)]
1043
+ }], pageAccessibilityContent: [{
1044
+ type: ContentChildren,
1045
+ args: [forwardRef(() => DocPageAccessibilityContentDirective)]
1046
+ }], pageApiContent: [{
1047
+ type: ContentChildren,
1048
+ args: [forwardRef(() => DocPageApiContentDirective)]
1049
+ }], pageThemingContent: [{
1050
+ type: ContentChildren,
1051
+ args: [forwardRef(() => DocPageThemingContentDirective)]
1052
+ }], tabsContent: [{
1053
+ type: ViewChild,
1054
+ args: ['tabsContent']
1055
+ }] } });
1056
+ /* eslint-disable @angular-eslint/directive-selector */
1057
+ class DocPageOverviewContentDirective {
1058
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageOverviewContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1059
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageOverviewContentDirective, selector: "docPageOverview", ngImport: i0 }); }
1060
+ }
1061
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageOverviewContentDirective, decorators: [{
1062
+ type: Directive,
1063
+ args: [{ selector: 'docPageOverview' }]
1064
+ }] });
1065
+ class DocPageOverviewDefaultContentDirective {
1066
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageOverviewDefaultContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1067
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageOverviewDefaultContentDirective, selector: "docPageOverviewDefault", ngImport: i0 }); }
1068
+ }
1069
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageOverviewDefaultContentDirective, decorators: [{
1070
+ type: Directive,
1071
+ args: [{ selector: 'docPageOverviewDefault' }]
1072
+ }] });
1073
+ class DocPageInteractiveContentDirective {
1074
+ constructor() {
1075
+ this.title = 'ADVANCED EXAMPLES';
1076
+ this.subTitle = 'Advanced use cases';
943
1077
  }
944
- if (showcaseType.indexOf("-mobile") > -1) {
945
- docTypeRoot = `eui-docs-mobile-core-${appVersionNumber}.x`;
1078
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageInteractiveContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1079
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageInteractiveContentDirective, selector: "docPageInteractive", inputs: { title: "title", subTitle: "subTitle" }, ngImport: i0 }); }
1080
+ }
1081
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageInteractiveContentDirective, decorators: [{
1082
+ type: Directive,
1083
+ args: [{ selector: 'docPageInteractive' }]
1084
+ }], propDecorators: { title: [{
1085
+ type: Input
1086
+ }], subTitle: [{
1087
+ type: Input
1088
+ }] } });
1089
+ class DocPageSamplesContentDirective {
1090
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageSamplesContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1091
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageSamplesContentDirective, selector: "docPageSamples", ngImport: i0 }); }
1092
+ }
1093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageSamplesContentDirective, decorators: [{
1094
+ type: Directive,
1095
+ args: [{ selector: 'docPageSamples' }]
1096
+ }] });
1097
+ class DocPageSectionsContentDirective {
1098
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageSectionsContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1099
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageSectionsContentDirective, selector: "docPageSections", ngImport: i0 }); }
1100
+ }
1101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageSectionsContentDirective, decorators: [{
1102
+ type: Directive,
1103
+ args: [{ selector: 'docPageSections' }]
1104
+ }] });
1105
+ class DocPageAccessibilityContentDirective {
1106
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageAccessibilityContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1107
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageAccessibilityContentDirective, selector: "docPageAccessibility", ngImport: i0 }); }
1108
+ }
1109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageAccessibilityContentDirective, decorators: [{
1110
+ type: Directive,
1111
+ args: [{ selector: 'docPageAccessibility' }]
1112
+ }] });
1113
+ class DocPageApiContentDirective {
1114
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageApiContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1115
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageApiContentDirective, selector: "docPageApi", ngImport: i0 }); }
1116
+ }
1117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageApiContentDirective, decorators: [{
1118
+ type: Directive,
1119
+ args: [{ selector: 'docPageApi' }]
1120
+ }] });
1121
+ class DocPageThemingContentDirective {
1122
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageThemingContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1123
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageThemingContentDirective, selector: "docPageTheming", ngImport: i0 }); }
1124
+ }
1125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageThemingContentDirective, decorators: [{
1126
+ type: Directive,
1127
+ args: [{ selector: 'docPageTheming' }]
1128
+ }] });
1129
+
1130
+ class DocSampleApiComponent {
1131
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSampleApiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1132
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSampleApiComponent, selector: "eui-showcase-doc-sample-api", ngImport: i0, template: "" }); }
1133
+ }
1134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSampleApiComponent, decorators: [{
1135
+ type: Component,
1136
+ args: [{ selector: 'eui-showcase-doc-sample-api', template: "" }]
1137
+ }] });
1138
+
1139
+ class DocSectionCodeComponent {
1140
+ constructor() {
1141
+ this.isDeprecated = false;
1142
+ this.isCodeExpanded = false;
946
1143
  }
947
- if (category === "layout-components" || category === "externals" || category === "layout" || category === "atoms") {
948
- category = "components";
1144
+ toggleCode() {
1145
+ this.isCodeExpanded = !this.isCodeExpanded;
949
1146
  }
950
- const cmp = this._getComponentStatus(name);
951
- if (cmp && cmp.alternateApiCategory) {
952
- category = cmp.alternateApiCategory;
1147
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1148
+ isDefined(object) {
1149
+ return object;
953
1150
  }
954
- const formattedName = this._camelCaseString(name + "-" + category.slice(0, -1), "-", true);
955
- const docPath = `${protocolGen}//${hostGen}/${docTypeRoot}/${category}/${formattedName}.html`;
956
- console.log(`fetching API from: ${docPath}`);
957
- return docPath;
958
- }
959
- _camelCaseString(string, separator, first) {
960
- const stringArray = string.split(separator);
961
- let result = "";
962
- let s;
963
- for (let i = 0; i < stringArray.length; i++) {
964
- s = stringArray[i];
965
- if (i === 0) {
966
- if (first) {
967
- result += s.substring(0, 1).toUpperCase() + s.substr(1);
968
- } else {
969
- result += s;
970
- }
971
- } else {
972
- result += s.substring(0, 1).toUpperCase() + s.substr(1);
973
- }
1151
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1152
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSectionCodeComponent, selector: "eui-showcase-doc-section-code", inputs: { label: "label", content: "content", styleClass: "styleClass", versionLabel: "versionLabel", isDeprecated: "isDeprecated", isCodeExpanded: "isCodeExpanded" }, queries: [{ propertyName: "sectionDescription", first: true, predicate: i0.forwardRef(() => DocSectionCodeDescriptionTagDirective), descendants: true }, { propertyName: "sectionCodeHTML", first: true, predicate: i0.forwardRef(() => DocSectionCodeHtmlTagDirective), descendants: true }, { propertyName: "sectionCodeTS", first: true, predicate: i0.forwardRef(() => DocSectionCodeTsTagDirective), descendants: true }, { propertyName: "sectionCodeSERVICE", first: true, predicate: i0.forwardRef(() => DocSectionCodeServiceTagDirective), descendants: true }, { propertyName: "sectionCodeCSS", first: true, predicate: i0.forwardRef(() => DocSectionCodeCssTagDirective), descendants: true }, { propertyName: "sectionCodeDOC", first: true, predicate: i0.forwardRef(() => DocSectionCodeDocTagDirective), descendants: true }], ngImport: i0, template: "<h5 class=\"section-title {{ styleClass }}\">\n <div class=\"eui-u-flex eui-u-flex-justify-content-between\">\n <div [class.app-section-code--deprecated]=\"isDeprecated\">\n {{ label }}\n </div>\n <div class=\"ml-auto\">\n <span *ngIf=\"versionLabel\" class=\"eui-u-color-danger\">{{ versionLabel }}</span>\n <button type=\"button\" euiButton [euiOutline]=\"!isCodeExpanded\" euiPrimary euiSizeS (click)=\"toggleCode()\">\n <span *ngIf=\"!isCodeExpanded\" euiLabel>Code</span>\n <span *ngIf=\"isCodeExpanded\" euiLabel>Hide Code</span>\n <span euiIcon iconClass=\"eui-icon-code\"></span>\n </button>\n </div>\n </div>\n <div *ngIf=\"isDeprecated\">\n <small class=\"eui-u-color-danger\">Deprecated in 3.x</small>\n </div>\n</h5>\n\n<div class=\"eui-u-mv\" *ngIf=\"sectionDescription\">\n <ng-content select=\"sectionDescription\"></ng-content>\n</div>\n\n<ng-template [ngIf]=\"isCodeExpanded\">\n <eui-tabs>\n <eui-tab [isVisible]=\"isDefined(sectionCodeHTML)\">\n <euiTabLabel>\n HTML\n <euiTabSubLabel>HyperText Markup Language</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-markup\" euiCode><ng-content select=\"sectionCodeHTML\"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"isDefined(sectionCodeTS)\">\n <euiTabLabel>\n TS\n <euiTabSubLabel>Typescript</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-javascript\" euiCode><ng-content select=\"sectionCodeTS\"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"isDefined(sectionCodeSERVICE)\">\n <euiTabLabel>Service</euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-javascript\" euiCode><ng-content select=\"sectionCodeSERVICE\"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"isDefined(sectionCodeCSS)\">\n <euiTabLabel>CSS</euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-javascript\" euiCode><ng-content select=\"sectionCodeCSS\"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"isDefined(sectionCodeDOC)\">\n <euiTabLabel>\n DOC\n <euiTabSubLabel>Documentation</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <div class=\"language-doc\">\n <ng-content select=\"sectionCodeDOC\"></ng-content>\n </div>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n <ng-template [ngIf]=\"!sectionCodeHTML && !sectionCodeTS && !sectionCodeCSS\">\n <pre class=\"only-html\"><code class=\"language-markup\" euiCode><ng-content></ng-content></code></pre>\n </ng-template>\n</ng-template>\n", styles: [".eui-showcase-doc-section-code--deprecated{color:red;text-decoration:line-through}.language-doc{background-color:#f5f8fb;border-left:10px solid #358ccb;box-shadow:-1px 0 #358ccb,0 0 0 1px #dfdfdf;display:block;height:inherit;max-height:inherit;overflow:auto;padding:1rem;position:relative}.first-section{margin-top:0;padding-top:10px}\n"], dependencies: [{ kind: "directive", type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i9.EuiTabsComponent, selector: "eui-tabs", inputs: ["tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClose", "tabSelect"] }, { kind: "component", type: i9.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "component", type: i9.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "directive", type: i9.EuiTabSubLabelDirective, selector: "euiTabSubLabel" }, { kind: "component", type: i9.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i11.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }, { kind: "directive", type: EuiCodeHighlighterDirective, selector: "[euiCode]" }] }); }
1153
+ }
1154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeComponent, decorators: [{
1155
+ type: Component,
1156
+ args: [{ selector: 'eui-showcase-doc-section-code', template: "<h5 class=\"section-title {{ styleClass }}\">\n <div class=\"eui-u-flex eui-u-flex-justify-content-between\">\n <div [class.app-section-code--deprecated]=\"isDeprecated\">\n {{ label }}\n </div>\n <div class=\"ml-auto\">\n <span *ngIf=\"versionLabel\" class=\"eui-u-color-danger\">{{ versionLabel }}</span>\n <button type=\"button\" euiButton [euiOutline]=\"!isCodeExpanded\" euiPrimary euiSizeS (click)=\"toggleCode()\">\n <span *ngIf=\"!isCodeExpanded\" euiLabel>Code</span>\n <span *ngIf=\"isCodeExpanded\" euiLabel>Hide Code</span>\n <span euiIcon iconClass=\"eui-icon-code\"></span>\n </button>\n </div>\n </div>\n <div *ngIf=\"isDeprecated\">\n <small class=\"eui-u-color-danger\">Deprecated in 3.x</small>\n </div>\n</h5>\n\n<div class=\"eui-u-mv\" *ngIf=\"sectionDescription\">\n <ng-content select=\"sectionDescription\"></ng-content>\n</div>\n\n<ng-template [ngIf]=\"isCodeExpanded\">\n <eui-tabs>\n <eui-tab [isVisible]=\"isDefined(sectionCodeHTML)\">\n <euiTabLabel>\n HTML\n <euiTabSubLabel>HyperText Markup Language</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-markup\" euiCode><ng-content select=\"sectionCodeHTML\"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"isDefined(sectionCodeTS)\">\n <euiTabLabel>\n TS\n <euiTabSubLabel>Typescript</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-javascript\" euiCode><ng-content select=\"sectionCodeTS\"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"isDefined(sectionCodeSERVICE)\">\n <euiTabLabel>Service</euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-javascript\" euiCode><ng-content select=\"sectionCodeSERVICE\"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"isDefined(sectionCodeCSS)\">\n <euiTabLabel>CSS</euiTabLabel>\n <euiTabContent>\n <pre><code class=\"language-javascript\" euiCode><ng-content select=\"sectionCodeCSS\"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]=\"isDefined(sectionCodeDOC)\">\n <euiTabLabel>\n DOC\n <euiTabSubLabel>Documentation</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <div class=\"language-doc\">\n <ng-content select=\"sectionCodeDOC\"></ng-content>\n </div>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n <ng-template [ngIf]=\"!sectionCodeHTML && !sectionCodeTS && !sectionCodeCSS\">\n <pre class=\"only-html\"><code class=\"language-markup\" euiCode><ng-content></ng-content></code></pre>\n </ng-template>\n</ng-template>\n", styles: [".eui-showcase-doc-section-code--deprecated{color:red;text-decoration:line-through}.language-doc{background-color:#f5f8fb;border-left:10px solid #358ccb;box-shadow:-1px 0 #358ccb,0 0 0 1px #dfdfdf;display:block;height:inherit;max-height:inherit;overflow:auto;padding:1rem;position:relative}.first-section{margin-top:0;padding-top:10px}\n"] }]
1157
+ }], propDecorators: { label: [{
1158
+ type: Input
1159
+ }], content: [{
1160
+ type: Input
1161
+ }], styleClass: [{
1162
+ type: Input
1163
+ }], versionLabel: [{
1164
+ type: Input
1165
+ }], isDeprecated: [{
1166
+ type: Input
1167
+ }], isCodeExpanded: [{
1168
+ type: Input
1169
+ }], sectionDescription: [{
1170
+ type: ContentChild,
1171
+ args: [forwardRef(() => DocSectionCodeDescriptionTagDirective)]
1172
+ }], sectionCodeHTML: [{
1173
+ type: ContentChild,
1174
+ args: [forwardRef(() => DocSectionCodeHtmlTagDirective)]
1175
+ }], sectionCodeTS: [{
1176
+ type: ContentChild,
1177
+ args: [forwardRef(() => DocSectionCodeTsTagDirective)]
1178
+ }], sectionCodeSERVICE: [{
1179
+ type: ContentChild,
1180
+ args: [forwardRef(() => DocSectionCodeServiceTagDirective)]
1181
+ }], sectionCodeCSS: [{
1182
+ type: ContentChild,
1183
+ args: [forwardRef(() => DocSectionCodeCssTagDirective)]
1184
+ }], sectionCodeDOC: [{
1185
+ type: ContentChild,
1186
+ args: [forwardRef(() => DocSectionCodeDocTagDirective)]
1187
+ }] } });
1188
+ /* eslint-disable @angular-eslint/directive-selector */
1189
+ class DocSectionCodeDescriptionTagDirective {
1190
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeDescriptionTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1191
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSectionCodeDescriptionTagDirective, selector: "sectionDescription", ngImport: i0 }); }
1192
+ }
1193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeDescriptionTagDirective, decorators: [{
1194
+ type: Directive,
1195
+ args: [{ selector: 'sectionDescription' }]
1196
+ }] });
1197
+ class DocSectionCodeHtmlTagDirective {
1198
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeHtmlTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1199
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSectionCodeHtmlTagDirective, selector: "sectionCodeHTML", ngImport: i0 }); }
1200
+ }
1201
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeHtmlTagDirective, decorators: [{
1202
+ type: Directive,
1203
+ args: [{ selector: 'sectionCodeHTML' }]
1204
+ }] });
1205
+ class DocSectionCodeTsTagDirective {
1206
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeTsTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1207
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSectionCodeTsTagDirective, selector: "sectionCodeTS", ngImport: i0 }); }
1208
+ }
1209
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeTsTagDirective, decorators: [{
1210
+ type: Directive,
1211
+ args: [{ selector: 'sectionCodeTS' }]
1212
+ }] });
1213
+ class DocSectionCodeServiceTagDirective {
1214
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeServiceTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1215
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSectionCodeServiceTagDirective, selector: "sectionCodeSERVICE", ngImport: i0 }); }
1216
+ }
1217
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeServiceTagDirective, decorators: [{
1218
+ type: Directive,
1219
+ args: [{ selector: 'sectionCodeSERVICE' }]
1220
+ }] });
1221
+ class DocSectionCodeCssTagDirective {
1222
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeCssTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1223
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSectionCodeCssTagDirective, selector: "sectionCodeCSS", ngImport: i0 }); }
1224
+ }
1225
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeCssTagDirective, decorators: [{
1226
+ type: Directive,
1227
+ args: [{ selector: 'sectionCodeCSS' }]
1228
+ }] });
1229
+ class DocSectionCodeDocTagDirective {
1230
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeDocTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1231
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocSectionCodeDocTagDirective, selector: "sectionCodeDOC", ngImport: i0 }); }
1232
+ }
1233
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocSectionCodeDocTagDirective, decorators: [{
1234
+ type: Directive,
1235
+ args: [{ selector: 'sectionCodeDOC' }]
1236
+ }] });
1237
+
1238
+ class DocPageCodeModalComponent {
1239
+ constructor(asService) {
1240
+ this.asService = asService;
1241
+ this.width = '95vw';
974
1242
  }
975
- return result;
976
- }
977
- static {
978
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageComponent, deps: [{ token: i12.Router }, { token: i12.ActivatedRoute }, { token: i23.EuiAppShellService }, { token: i33.DomSanitizer }, { token: i42.Location }], target: i06.ɵɵFactoryTarget.Component });
979
- }
980
- static {
981
- this.ɵcmp = i06.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageComponent, selector: "eui-showcase-doc-page", inputs: { id: "id", label: "label", subLabel: "subLabel", isNotReady: "isNotReady", isDeprecated: "isDeprecated", isLegacy: "isLegacy", codeFolder: "codeFolder", showcase: "showcase", isNavigationVisible: "isNavigationVisible", hasApi: "hasApi", hasA11y: "hasA11y" }, queries: [{ propertyName: "samples", predicate: DocSampleComponent, descendants: true }, { propertyName: "sections", predicate: DocSectionComponent, descendants: true }, { propertyName: "pageOverviewContent", predicate: i06.forwardRef(() => DocPageOverviewContentDirective) }, { propertyName: "pageOverviewDefaultContent", predicate: i06.forwardRef(() => DocPageOverviewDefaultContentDirective) }, { propertyName: "pageSamplesContent", predicate: i06.forwardRef(() => DocPageSamplesContentDirective) }, { propertyName: "pageSectionsContent", predicate: i06.forwardRef(() => DocPageSectionsContentDirective) }, { propertyName: "pageInteractiveContent", predicate: i06.forwardRef(() => DocPageInteractiveContentDirective) }, { propertyName: "pageAccessibilityContent", predicate: i06.forwardRef(() => DocPageAccessibilityContentDirective) }, { propertyName: "pageApiContent", predicate: i06.forwardRef(() => DocPageApiContentDirective) }, { propertyName: "pageThemingContent", predicate: i06.forwardRef(() => DocPageThemingContentDirective) }], viewQueries: [{ propertyName: "tabsContent", first: true, predicate: ["tabsContent"], descendants: true }], ngImport: i06, template: `<div class="doc-page-navigation-wrapper" [class.eui-u-hidden]="isLoading">
982
- <div class="doc-page-main-column">
983
- <eui-page>
984
- <eui-page-header label="{{ label }}" subLabel="{{ subLabel }}">
985
- <eui-page-header-action-items>
986
- <eui-showcase-doc-page-code
987
- *ngIf="codeFolder"
988
- codeFolder="{{ codeFolder }}"
989
- showcase="{{ showcase }}"></eui-showcase-doc-page-code>
990
- <eui-chip
991
- *ngIf="stateLabel"
992
- [euiSuccess]="stateLabel === 'ACTIVE'"
993
- [euiInfo]="isNotReady"
994
- [euiWarning]="isDeprecated"
995
- [euiDanger]="isLegacy">
996
- <span euiLabel>
997
- <strong>{{ stateLabel }}</strong>
998
- </span>
999
- </eui-chip>
1000
- </eui-page-header-action-items>
1001
- </eui-page-header>
1002
-
1003
- <eui-page-content>
1004
- <eui-alert *ngIf="stateLabel === 'LEGACY' || isLegacy" euiDanger class="eui-u-mb-xl">
1005
- <eui-alert-title>LEGACY component</eui-alert-title>
1006
- <strong class="eui-u-color-danger">This component will be removed in eUI 19 release (end of 2024)</strong>
1007
- <div *ngIf="cmp">
1008
- <div *ngIf="cmp.cmpReplacement !== 'NONE'">
1009
- It has been replaced by :
1010
- <strong class="eui-u-color-success-darkest">{{ cmp.cmpReplacement }}</strong>
1011
- <!-- <div *ngIf="cmp.cmpReplacementUrl">
1012
- <br><br>
1013
- You can find more information on the new component here : <a [routerLink]="cmp.cmpReplacementUrl">{{cmp.cmpReplacementUrl}}</a>
1014
- </div> -->
1015
- </div>
1016
- <div *ngIf="cmp.cmpReplacement === 'NONE'">
1017
- <strong class="eui-u-color-danger"> This component will be removed in eUI 18 release (end of 2023)</strong>
1018
- </div>
1019
- <div *ngIf="cmp.cmpReplacementNote">
1020
- <strong class="eui-u-color-warning">{{ cmp.cmpReplacementNote }}</strong>
1021
- </div>
1022
- </div>
1023
- </eui-alert>
1024
-
1025
- <eui-alert *ngIf="stateLabel === 'DEPRECATED' || isDeprecated" euiWarning class="eui-u-mb-xl">
1026
- <eui-alert-title>DEPRECATED component</eui-alert-title>
1027
- This component has been <strong class="eui-u-color-danger">deprecated</strong>
1028
- <div *ngIf="cmp">
1029
- This component has no replacement in current version AND won't have replacement in next version of eUI,
1030
- <strong class="eui-u-color-danger">it will be removed in eUI 18 release (end of 2023)</strong>
1031
- </div>
1032
- </eui-alert>
1033
-
1034
- <eui-alert *ngIf="stateLabel === 'NOT_READY' || isNotReady" euiInfo class="eui-u-mb-xl">
1035
- <eui-alert-title>NOT READY for production usage</eui-alert-title>
1036
- <div *ngIf="cmp">
1037
- This component is under development / some features might be missing, it'll be available in a future release once
1038
- validated.
1039
- </div>
1040
- </eui-alert>
1041
-
1042
- <div *ngIf="(stateLabel || isNotReady || isDeprecated) && stateLabel !== 'ACTIVE'" class="mb-5"></div>
1043
-
1044
- <eui-tabs #tabsContent *ngIf="pageSectionsContent.length === 0" (tabSelect)="onTabSelected($event)">
1045
- <eui-tab>
1046
- <euiTabLabel> OPTIONS & SAMPLES </euiTabLabel>
1047
- <euiTabContent>
1048
- <ng-container *ngIf="cmp && cmp.metadata">
1049
- <div class="doc-page-section-title">Module import</div>
1050
- <pre><code class="language-javascript eui-u-bg-color-grey-5" euiCode>{{ cmpModuleImport }}</code></pre>
1051
- <br />
1052
- </ng-container>
1053
-
1054
- <div id="overview" class="doc-page-section-title">Overview</div>
1055
-
1056
- <div *ngIf="pageOverviewContent.length > 0">
1057
- <ng-content select="docPageOverview"></ng-content>
1058
- </div>
1059
-
1060
- <div *ngIf="pageOverviewDefaultContent.length > 0">
1061
- <ng-content select="docPageOverviewDefault"></ng-content>
1062
- </div>
1063
- <br />
1064
-
1065
- <div id="samples" class="doc-page-section-title">Options & samples</div>
1066
- <ng-content select="docPageSamples"></ng-content>
1067
- </euiTabContent>
1068
- </eui-tab>
1069
-
1070
- <eui-tab *ngIf="hasApi">
1071
- <euiTabLabel> API </euiTabLabel>
1072
- <euiTabContent>
1073
- <ng-container *ngIf="apiUrlSafe">
1074
- <div class="flex-container">
1075
- <a href="{{ apiUrl }}" target="_blank" class="ms-auto pb-2 eui-u-text-link-external">Open API page</a>
1076
- </div>
1077
- <div class="doc-page-api-iframe-wrapper">
1078
- <iframe id="iframe_api" [width]="'100%'" height="700px" frameBorder="0" [src]="apiUrlSafe"></iframe>
1079
- </div>
1080
- </ng-container>
1081
- </euiTabContent>
1082
- </eui-tab>
1083
-
1084
- <eui-tab *ngIf="hasA11y">
1085
- <euiTabLabel> A11Y </euiTabLabel>
1086
- <euiTabContent>
1087
- <div id="accessibility" class="doc-page-section-title">Accessibility</div>
1088
- <ng-container *ngIf="pageAccessibilityContent.length !== 0">
1089
- <ng-content select="docPageAccessibility"></ng-content>
1090
- <p>
1091
- For more information regarding Accessibility, please refer to the <a class="eui-u-text-link-external" href="https://eui.ecdevops.eu/eui-showcase-ux-components-18.x/showcase-dev-guide/accessibility/intro" target="_blank">Accessibility Dev Guide</a>.
1092
- </p>
1093
- </ng-container>
1094
- <ng-container *ngIf="pageAccessibilityContent.length === 0">
1095
- No accessibility rules applicable
1096
- </ng-container>
1097
- </euiTabContent>
1098
- </eui-tab>
1099
-
1100
- <eui-tab *ngIf="pageThemingContent.length > 0">
1101
- <euiTabLabel> THEMING </euiTabLabel>
1102
- <euiTabContent>
1103
- <div id="theming" class="doc-page-section-title">Theming</div>
1104
- <ng-content select="docPageTheming"></ng-content>
1105
- </euiTabContent>
1106
- </eui-tab>
1107
-
1108
- <eui-tab *ngIf="pageInteractiveContent.length > 0">
1109
- <euiTabLabel>
1110
- {{ pageInteractiveContent.first.title }}
1111
- </euiTabLabel>
1112
- <euiTabContent>
1113
- <div id="interactive" class="doc-page-section-title">
1114
- {{ pageInteractiveContent.first.subTitle }}
1115
- </div>
1116
- <ng-content select="docPageInteractive"></ng-content>
1117
- </euiTabContent>
1118
- </eui-tab>
1119
- </eui-tabs>
1120
-
1121
- <ng-container *ngIf="pageSectionsContent.length > 0">
1122
- <div id="demo" *ngIf="sections.length === 0" class="doc-page-section-title">Demo</div>
1123
- <ng-content select="docPageSections"></ng-content>
1124
- </ng-container>
1125
- </eui-page-content>
1126
- </eui-page>
1127
- </div>
1128
-
1129
- <div *ngIf="isNavigationVisible" class="doc-page-navigation-column eui-u-hidden-desktop-down">
1130
- <div id="doc-page-nav">
1131
- <div class="doc-page-navigation-title">In this page</div>
1132
- <div class="doc-page-navigation-content" tabindex="0">
1133
- <ul class="doc-page-navigation">
1134
- <ng-container *ngIf="pageSectionsContent.length === 0">
1135
- <li
1136
- *ngIf="hasApi"
1137
- class="doc-page-navigation-item"
1138
- [class.doc-page-navigation-item--selected]="fragmentId === 'api'"
1139
- (click)="onNavClick('api', 1)">
1140
- <span>API</span>
1141
- </li>
1142
- <li
1143
- *ngIf="hasA11y"
1144
- class="doc-page-navigation-item"
1145
- [class.doc-page-navigation-item--selected]="fragmentId === 'a11y'"
1146
- (click)="onNavClick('a11y', 2)">
1147
- <span>A11Y</span>
1148
- </li>
1149
- <li
1150
- class="doc-page-navigation-item"
1151
- [class.doc-page-navigation-item--selected]="fragmentId === 'samples'"
1152
- (click)="onNavClick('samples', 0)">
1153
- <span>OPTIONS & SAMPLES</span>
1154
- </li>
1155
- <li class="doc-page-navigation-item doc-page-navigation-sub">
1156
- <ng-container *ngIf="categories.length > 0">
1157
- <ng-container *ngIf="hasCategories; else noCategories">
1158
- <ng-container *ngFor="let category of categories">
1159
- <ng-container *ngIf="category.name === 'Base'; else notBase">
1160
- <ul *ngFor="let sample of category.samples" class="doc-page-navigation-list">
1161
- <li
1162
- class="doc-page-navigation-item"
1163
- [class.doc-page-navigation-item--selected]="fragmentId === sample.id"
1164
- (click)="onNavClick(sample.id, 0)">
1165
- <span>{{ sample.label }}</span>
1166
- </li>
1167
- </ul>
1168
- </ng-container>
1169
- <ng-template #notBase>
1170
- <div *ngIf="category.name !== 'Base'" class="doc-page-navigation-category">{{category.name}}</div>
1171
- <ul *ngFor="let sample of category.samples" class="doc-page-navigation-list">
1172
- <li
1173
- class="doc-page-navigation-item doc-page-navigation-item-sub"
1174
- [class.doc-page-navigation-item--selected]="fragmentId === sample.id"
1175
- (click)="onNavClick(sample.id, 0)">
1176
- <span>{{ sample.label }}</span>
1177
- </li>
1178
- </ul>
1179
- </ng-template>
1180
- </ng-container>
1181
- </ng-container>
1182
-
1183
- <ng-template #noCategories>
1184
- <ul *ngFor="let sample of samples" class="doc-page-navigation-list">
1185
- <li
1186
- class="doc-page-navigation-item"
1187
- [class.doc-page-navigation-item--selected]="fragmentId === sample.id"
1188
- (click)="onNavClick(sample.id, 0)">
1189
- <span>{{ sample.label }}</span>
1190
- </li>
1191
- </ul>
1192
- </ng-template>
1193
- </ng-container>
1194
- </li>
1195
-
1196
-
1197
-
1198
- <!-- OPTIONAL TABS-->
1199
- <ng-container *ngIf="pageThemingContent.length > 0">
1200
- <li
1201
- *ngIf="pageThemingContent.length > 0"
1202
- class="doc-page-navigation-item"
1203
- [class.doc-page-navigation-item--selected]="fragmentId === 'theming'"
1204
- (click)="onNavClick('theming', 3)">
1205
- <span>THEMING</span>
1206
- </li>
1207
- <li
1208
- *ngIf="pageInteractiveContent.length > 0"
1209
- class="doc-page-navigation-item"
1210
- [class.doc-page-navigation-item--selected]="fragmentId === 'advanced'"
1211
- (click)="onNavClick('advanced', 4)">
1212
- <span>{{ pageInteractiveContent.first.title }}</span>
1213
- </li>
1214
- </ng-container>
1215
- <ng-container *ngIf="pageThemingContent.length === 0">
1216
- <li
1217
- *ngIf="pageInteractiveContent.length > 0"
1218
- class="doc-page-navigation-item"
1219
- [class.doc-page-navigation-item--selected]="fragmentId === 'advanced'"
1220
- (click)="onNavClick('advanced', 3)">
1221
- <span>{{ pageInteractiveContent.first.title }}</span>
1222
- </li>
1223
- </ng-container>
1224
- </ng-container>
1225
-
1226
- <ng-container *ngIf="pageSectionsContent.length > 0">
1227
- <li
1228
- class="doc-page-navigation-item"
1229
- [class.doc-page-navigation-item--selected]="fragmentId === 'sections'"
1230
- (click)="onNavClick('sections', null)">
1231
- <span>Sections</span>
1232
- </li>
1233
- <li
1234
- *ngIf="sections.length === 0"
1235
- class="doc-page-navigation-item"
1236
- [class.doc-page-navigation-item--selected]="fragmentId === 'demo'"
1237
- (click)="onNavClick('demo', null)">
1238
- <span>Demo</span>
1239
- </li>
1240
- <li *ngIf="sections.length > 0" class="doc-page-navigation-item doc-page-navigation-sub">
1241
- <ul *ngFor="let section of sections">
1242
- <li
1243
- class="doc-page-navigation-item"
1244
- [class.doc-page-navigation-item--selected]="fragmentId === section.id"
1245
- (click)="onNavClick(section.id, null)">
1246
- <span>{{ section.label }}</span>
1247
- </li>
1248
- </ul>
1249
- </li>
1250
- </ng-container>
1251
- </ul>
1252
- </div>
1253
- </div>
1254
- </div>
1255
- </div>
1256
- `, styles: ['.doc-page-navigation-wrapper{display:flex;flex-wrap:wrap;width:100%}.doc-page-navigation-wrapper .doc-page-main-column{padding-right:var(--eui-s-m);width:calc(100% - 400px)}.doc-page-navigation-wrapper .doc-page-navigation-column{background:var(--eui-c-white);box-shadow:0 8px 10px #b7c0ce33;position:fixed;right:0;transition:all ease-in-out .25s;width:400px;z-index:auto;box-shadow:var(--eui-sh-1)}.doc-page-navigation-wrapper .doc-page-navigation-column:hover{width:400px}.doc-page-navigation-wrapper .language-javascript:focus:not([readonly]){outline:2px solid var(--eui-c-focus)!important;outline-offset:0!important;transition:none}.doc-page-navigation-wrapper .language-javascript:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:0!important;transition:none}.doc-page-navigation-wrapper .language-javascript [tabindex="0"]:focus:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:0!important;transition:none}.doc-page-navigation-title{padding:var(--eui-s-s);font:var(--eui-f-xl)}.doc-page-navigation-content{display:block;height:100vh;max-height:calc(100vh - 7.25rem);overflow-y:auto;width:100%}.doc-page-navigation-content::-webkit-scrollbar{display:inherit;height:6px;width:6px;background-color:var(--eui-c-neutral-bg-light)}.doc-page-navigation-content::-webkit-scrollbar-thumb{background-color:var(--eui-c-neutral-lightest);border-radius:5rem}.doc-page-navigation-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-c-neutral-lighter)}.doc-page-navigation-content::-webkit-scrollbar-track{background-color:var(--eui-c-neutral-bg-light);border-radius:0}.doc-page-navigation{background-color:transparent;border-left:2px solid transparent;padding-top:var(--eui-s-xs);margin:0;padding:0}.doc-page-navigation .doc-page-navigation-list{margin:0;padding:0}.doc-page-navigation .doc-page-navigation-item{color:var(--eui-c-info-darker);cursor:pointer;line-height:1.5;overflow:hidden;padding:var(--eui-s-3xs);text-overflow:ellipsis;transition:background-color ease-in .2s;white-space:nowrap;list-style:none}.doc-page-navigation .doc-page-navigation-item span{font-weight:700;color:var(--eui-c-info-darker);padding-left:var(--eui-s-xs)}.doc-page-navigation .doc-page-navigation-item:not(.doc-page-navigation-sub):hover{background-color:var(--eui-c-neutral-bg-light);border-left:2px solid var(--eui-c-info-darker)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-sub .doc-page-navigation-item span{font-weight:400;padding-left:var(--eui-s-s)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-sub .doc-page-navigation-item:hover{background-color:var(--eui-c-neutral-bg-light);border-left:2px solid var(--eui-c-neutral-lightest)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-item--selected{background-color:var(--eui-c-info-bg);border-left:2px solid var(--eui-c-info-darker)}.doc-page-navigation .doc-page-navigation-item-sub{padding-left:var(--eui-s-l)}.doc-page-navigation .doc-page-navigation-category{padding-left:var(--eui-s-m);color:var(--eui-c-text);margin-top:var(--eui-s-s);font-weight:700;text-transform:capitalize}.doc-page-api-iframe-wrapper{display:flex;justify-content:space-around;margin:0}.doc-page-section-title{margin-top:var(--eui-s-2xl);margin-bottom:var(--eui-s-xl);color:var(--eui-c-info-darker);letter-spacing:-1px;font:var(--eui-f-2xl-bold)}.doc-page-section-subtitle{font:var(--eui-f-l-bold);letter-spacing:-.25px;margin:var(--eui-s-2xl) 0 var(--eui-s-s);padding-bottom:var(--eui-s-2xs);width:auto;display:table;color:var(--eui-c-neutral)}@media screen and (max-width: 767px){.doc-page-navigation-wrapper .doc-page-main-column{padding-right:0;width:100%}.doc-page-navigation-wrapper .doc-page-navigation-column{display:none;width:0}}@media screen and (min-width: 768px) and (max-width: 995px){.doc-page-navigation-wrapper .doc-page-main-column{width:80%}.doc-page-navigation-wrapper .doc-page-navigation-column{width:20%}}@media screen and (max-width: 1550px){.doc-page-api-iframe-wrapper{display:none}}\n'], dependencies: [{ kind: "directive", type: i42.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i42.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i52.EuiTabsComponent, selector: "eui-tabs", inputs: ["tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClose", "tabSelect"] }, { kind: "component", type: i52.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "component", type: i52.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "component", type: i52.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i62.EuiPageComponent, selector: "eui-page" }, { kind: "component", type: i62.EuiPageContentComponent, selector: "eui-page-content" }, { kind: "component", type: i62.EuiPageHeaderComponent, selector: "eui-page-header", inputs: ["label", "subLabel", "labelTooltip", "subLabelTooltip", "isCollapsible", "isCollapsed", "isHeaderMultilines", "collapsedLabel", "expandedLabel"], outputs: ["collapse"] }, { kind: "component", type: i62.EuiPageHeaderActionItemsComponent, selector: "eui-page-header-action-items" }, { kind: "component", type: i72.EuiChipComponent, selector: "eui-chip, span[euiChip], li[euiChip]", inputs: ["ariaLabel", "e2eAttr", "euiInternalId", "tooltipMessage", "id", "data", "isChipRemovable", "isSquared"], outputs: ["remove"] }, { kind: "component", type: i82.EuiAlertComponent, selector: "div[euiAlert], eui-alert", inputs: ["ariaDescribedBy", "e2eAttr", "isMuted", "isCloseable", "isFocusable"], outputs: ["closeAlert"] }, { kind: "component", type: i82.EuiAlertTitleComponent, selector: "eui-alert-title" }, { kind: "component", type: i92.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }, { kind: "directive", type: EuiCodeHighlighterDirective, selector: "[euiCode]" }, { kind: "component", type: DocPageCodeComponent, selector: "eui-showcase-doc-page-code", inputs: ["codeFolder", "showcase"] }], encapsulation: i06.ViewEncapsulation.None });
1257
- }
1258
- };
1259
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageComponent, decorators: [{
1260
- type: Component4,
1261
- args: [{ selector: "eui-showcase-doc-page", encapsulation: ViewEncapsulation5.None, template: `<div class="doc-page-navigation-wrapper" [class.eui-u-hidden]="isLoading">
1262
- <div class="doc-page-main-column">
1263
- <eui-page>
1264
- <eui-page-header label="{{ label }}" subLabel="{{ subLabel }}">
1265
- <eui-page-header-action-items>
1266
- <eui-showcase-doc-page-code
1267
- *ngIf="codeFolder"
1268
- codeFolder="{{ codeFolder }}"
1269
- showcase="{{ showcase }}"></eui-showcase-doc-page-code>
1270
- <eui-chip
1271
- *ngIf="stateLabel"
1272
- [euiSuccess]="stateLabel === 'ACTIVE'"
1273
- [euiInfo]="isNotReady"
1274
- [euiWarning]="isDeprecated"
1275
- [euiDanger]="isLegacy">
1276
- <span euiLabel>
1277
- <strong>{{ stateLabel }}</strong>
1278
- </span>
1279
- </eui-chip>
1280
- </eui-page-header-action-items>
1281
- </eui-page-header>
1282
-
1283
- <eui-page-content>
1284
- <eui-alert *ngIf="stateLabel === 'LEGACY' || isLegacy" euiDanger class="eui-u-mb-xl">
1285
- <eui-alert-title>LEGACY component</eui-alert-title>
1286
- <strong class="eui-u-color-danger">This component will be removed in eUI 19 release (end of 2024)</strong>
1287
- <div *ngIf="cmp">
1288
- <div *ngIf="cmp.cmpReplacement !== 'NONE'">
1289
- It has been replaced by :
1290
- <strong class="eui-u-color-success-darkest">{{ cmp.cmpReplacement }}</strong>
1291
- <!-- <div *ngIf="cmp.cmpReplacementUrl">
1292
- <br><br>
1293
- You can find more information on the new component here : <a [routerLink]="cmp.cmpReplacementUrl">{{cmp.cmpReplacementUrl}}</a>
1294
- </div> -->
1295
- </div>
1296
- <div *ngIf="cmp.cmpReplacement === 'NONE'">
1297
- <strong class="eui-u-color-danger"> This component will be removed in eUI 18 release (end of 2023)</strong>
1298
- </div>
1299
- <div *ngIf="cmp.cmpReplacementNote">
1300
- <strong class="eui-u-color-warning">{{ cmp.cmpReplacementNote }}</strong>
1301
- </div>
1302
- </div>
1303
- </eui-alert>
1304
-
1305
- <eui-alert *ngIf="stateLabel === 'DEPRECATED' || isDeprecated" euiWarning class="eui-u-mb-xl">
1306
- <eui-alert-title>DEPRECATED component</eui-alert-title>
1307
- This component has been <strong class="eui-u-color-danger">deprecated</strong>
1308
- <div *ngIf="cmp">
1309
- This component has no replacement in current version AND won't have replacement in next version of eUI,
1310
- <strong class="eui-u-color-danger">it will be removed in eUI 18 release (end of 2023)</strong>
1311
- </div>
1312
- </eui-alert>
1313
-
1314
- <eui-alert *ngIf="stateLabel === 'NOT_READY' || isNotReady" euiInfo class="eui-u-mb-xl">
1315
- <eui-alert-title>NOT READY for production usage</eui-alert-title>
1316
- <div *ngIf="cmp">
1317
- This component is under development / some features might be missing, it'll be available in a future release once
1318
- validated.
1319
- </div>
1320
- </eui-alert>
1321
-
1322
- <div *ngIf="(stateLabel || isNotReady || isDeprecated) && stateLabel !== 'ACTIVE'" class="mb-5"></div>
1323
-
1324
- <eui-tabs #tabsContent *ngIf="pageSectionsContent.length === 0" (tabSelect)="onTabSelected($event)">
1325
- <eui-tab>
1326
- <euiTabLabel> OPTIONS & SAMPLES </euiTabLabel>
1327
- <euiTabContent>
1328
- <ng-container *ngIf="cmp && cmp.metadata">
1329
- <div class="doc-page-section-title">Module import</div>
1330
- <pre><code class="language-javascript eui-u-bg-color-grey-5" euiCode>{{ cmpModuleImport }}</code></pre>
1331
- <br />
1332
- </ng-container>
1333
-
1334
- <div id="overview" class="doc-page-section-title">Overview</div>
1335
-
1336
- <div *ngIf="pageOverviewContent.length > 0">
1337
- <ng-content select="docPageOverview"></ng-content>
1338
- </div>
1339
-
1340
- <div *ngIf="pageOverviewDefaultContent.length > 0">
1341
- <ng-content select="docPageOverviewDefault"></ng-content>
1342
- </div>
1343
- <br />
1344
-
1345
- <div id="samples" class="doc-page-section-title">Options & samples</div>
1346
- <ng-content select="docPageSamples"></ng-content>
1347
- </euiTabContent>
1348
- </eui-tab>
1349
-
1350
- <eui-tab *ngIf="hasApi">
1351
- <euiTabLabel> API </euiTabLabel>
1352
- <euiTabContent>
1353
- <ng-container *ngIf="apiUrlSafe">
1354
- <div class="flex-container">
1355
- <a href="{{ apiUrl }}" target="_blank" class="ms-auto pb-2 eui-u-text-link-external">Open API page</a>
1356
- </div>
1357
- <div class="doc-page-api-iframe-wrapper">
1358
- <iframe id="iframe_api" [width]="'100%'" height="700px" frameBorder="0" [src]="apiUrlSafe"></iframe>
1359
- </div>
1360
- </ng-container>
1361
- </euiTabContent>
1362
- </eui-tab>
1363
-
1364
- <eui-tab *ngIf="hasA11y">
1365
- <euiTabLabel> A11Y </euiTabLabel>
1366
- <euiTabContent>
1367
- <div id="accessibility" class="doc-page-section-title">Accessibility</div>
1368
- <ng-container *ngIf="pageAccessibilityContent.length !== 0">
1369
- <ng-content select="docPageAccessibility"></ng-content>
1370
- <p>
1371
- For more information regarding Accessibility, please refer to the <a class="eui-u-text-link-external" href="https://eui.ecdevops.eu/eui-showcase-ux-components-18.x/showcase-dev-guide/accessibility/intro" target="_blank">Accessibility Dev Guide</a>.
1372
- </p>
1373
- </ng-container>
1374
- <ng-container *ngIf="pageAccessibilityContent.length === 0">
1375
- No accessibility rules applicable
1376
- </ng-container>
1377
- </euiTabContent>
1378
- </eui-tab>
1379
-
1380
- <eui-tab *ngIf="pageThemingContent.length > 0">
1381
- <euiTabLabel> THEMING </euiTabLabel>
1382
- <euiTabContent>
1383
- <div id="theming" class="doc-page-section-title">Theming</div>
1384
- <ng-content select="docPageTheming"></ng-content>
1385
- </euiTabContent>
1386
- </eui-tab>
1387
-
1388
- <eui-tab *ngIf="pageInteractiveContent.length > 0">
1389
- <euiTabLabel>
1390
- {{ pageInteractiveContent.first.title }}
1391
- </euiTabLabel>
1392
- <euiTabContent>
1393
- <div id="interactive" class="doc-page-section-title">
1394
- {{ pageInteractiveContent.first.subTitle }}
1395
- </div>
1396
- <ng-content select="docPageInteractive"></ng-content>
1397
- </euiTabContent>
1398
- </eui-tab>
1399
- </eui-tabs>
1400
-
1401
- <ng-container *ngIf="pageSectionsContent.length > 0">
1402
- <div id="demo" *ngIf="sections.length === 0" class="doc-page-section-title">Demo</div>
1403
- <ng-content select="docPageSections"></ng-content>
1404
- </ng-container>
1405
- </eui-page-content>
1406
- </eui-page>
1407
- </div>
1408
-
1409
- <div *ngIf="isNavigationVisible" class="doc-page-navigation-column eui-u-hidden-desktop-down">
1410
- <div id="doc-page-nav">
1411
- <div class="doc-page-navigation-title">In this page</div>
1412
- <div class="doc-page-navigation-content" tabindex="0">
1413
- <ul class="doc-page-navigation">
1414
- <ng-container *ngIf="pageSectionsContent.length === 0">
1415
- <li
1416
- *ngIf="hasApi"
1417
- class="doc-page-navigation-item"
1418
- [class.doc-page-navigation-item--selected]="fragmentId === 'api'"
1419
- (click)="onNavClick('api', 1)">
1420
- <span>API</span>
1421
- </li>
1422
- <li
1423
- *ngIf="hasA11y"
1424
- class="doc-page-navigation-item"
1425
- [class.doc-page-navigation-item--selected]="fragmentId === 'a11y'"
1426
- (click)="onNavClick('a11y', 2)">
1427
- <span>A11Y</span>
1428
- </li>
1429
- <li
1430
- class="doc-page-navigation-item"
1431
- [class.doc-page-navigation-item--selected]="fragmentId === 'samples'"
1432
- (click)="onNavClick('samples', 0)">
1433
- <span>OPTIONS & SAMPLES</span>
1434
- </li>
1435
- <li class="doc-page-navigation-item doc-page-navigation-sub">
1436
- <ng-container *ngIf="categories.length > 0">
1437
- <ng-container *ngIf="hasCategories; else noCategories">
1438
- <ng-container *ngFor="let category of categories">
1439
- <ng-container *ngIf="category.name === 'Base'; else notBase">
1440
- <ul *ngFor="let sample of category.samples" class="doc-page-navigation-list">
1441
- <li
1442
- class="doc-page-navigation-item"
1443
- [class.doc-page-navigation-item--selected]="fragmentId === sample.id"
1444
- (click)="onNavClick(sample.id, 0)">
1445
- <span>{{ sample.label }}</span>
1446
- </li>
1447
- </ul>
1448
- </ng-container>
1449
- <ng-template #notBase>
1450
- <div *ngIf="category.name !== 'Base'" class="doc-page-navigation-category">{{category.name}}</div>
1451
- <ul *ngFor="let sample of category.samples" class="doc-page-navigation-list">
1452
- <li
1453
- class="doc-page-navigation-item doc-page-navigation-item-sub"
1454
- [class.doc-page-navigation-item--selected]="fragmentId === sample.id"
1455
- (click)="onNavClick(sample.id, 0)">
1456
- <span>{{ sample.label }}</span>
1457
- </li>
1458
- </ul>
1459
- </ng-template>
1460
- </ng-container>
1461
- </ng-container>
1462
-
1463
- <ng-template #noCategories>
1464
- <ul *ngFor="let sample of samples" class="doc-page-navigation-list">
1465
- <li
1466
- class="doc-page-navigation-item"
1467
- [class.doc-page-navigation-item--selected]="fragmentId === sample.id"
1468
- (click)="onNavClick(sample.id, 0)">
1469
- <span>{{ sample.label }}</span>
1470
- </li>
1471
- </ul>
1472
- </ng-template>
1473
- </ng-container>
1474
- </li>
1475
-
1476
-
1477
-
1478
- <!-- OPTIONAL TABS-->
1479
- <ng-container *ngIf="pageThemingContent.length > 0">
1480
- <li
1481
- *ngIf="pageThemingContent.length > 0"
1482
- class="doc-page-navigation-item"
1483
- [class.doc-page-navigation-item--selected]="fragmentId === 'theming'"
1484
- (click)="onNavClick('theming', 3)">
1485
- <span>THEMING</span>
1486
- </li>
1487
- <li
1488
- *ngIf="pageInteractiveContent.length > 0"
1489
- class="doc-page-navigation-item"
1490
- [class.doc-page-navigation-item--selected]="fragmentId === 'advanced'"
1491
- (click)="onNavClick('advanced', 4)">
1492
- <span>{{ pageInteractiveContent.first.title }}</span>
1493
- </li>
1494
- </ng-container>
1495
- <ng-container *ngIf="pageThemingContent.length === 0">
1496
- <li
1497
- *ngIf="pageInteractiveContent.length > 0"
1498
- class="doc-page-navigation-item"
1499
- [class.doc-page-navigation-item--selected]="fragmentId === 'advanced'"
1500
- (click)="onNavClick('advanced', 3)">
1501
- <span>{{ pageInteractiveContent.first.title }}</span>
1502
- </li>
1503
- </ng-container>
1504
- </ng-container>
1505
-
1506
- <ng-container *ngIf="pageSectionsContent.length > 0">
1507
- <li
1508
- class="doc-page-navigation-item"
1509
- [class.doc-page-navigation-item--selected]="fragmentId === 'sections'"
1510
- (click)="onNavClick('sections', null)">
1511
- <span>Sections</span>
1512
- </li>
1513
- <li
1514
- *ngIf="sections.length === 0"
1515
- class="doc-page-navigation-item"
1516
- [class.doc-page-navigation-item--selected]="fragmentId === 'demo'"
1517
- (click)="onNavClick('demo', null)">
1518
- <span>Demo</span>
1519
- </li>
1520
- <li *ngIf="sections.length > 0" class="doc-page-navigation-item doc-page-navigation-sub">
1521
- <ul *ngFor="let section of sections">
1522
- <li
1523
- class="doc-page-navigation-item"
1524
- [class.doc-page-navigation-item--selected]="fragmentId === section.id"
1525
- (click)="onNavClick(section.id, null)">
1526
- <span>{{ section.label }}</span>
1527
- </li>
1528
- </ul>
1529
- </li>
1530
- </ng-container>
1531
- </ul>
1532
- </div>
1533
- </div>
1534
- </div>
1535
- </div>
1536
- `, styles: ['.doc-page-navigation-wrapper{display:flex;flex-wrap:wrap;width:100%}.doc-page-navigation-wrapper .doc-page-main-column{padding-right:var(--eui-s-m);width:calc(100% - 400px)}.doc-page-navigation-wrapper .doc-page-navigation-column{background:var(--eui-c-white);box-shadow:0 8px 10px #b7c0ce33;position:fixed;right:0;transition:all ease-in-out .25s;width:400px;z-index:auto;box-shadow:var(--eui-sh-1)}.doc-page-navigation-wrapper .doc-page-navigation-column:hover{width:400px}.doc-page-navigation-wrapper .language-javascript:focus:not([readonly]){outline:2px solid var(--eui-c-focus)!important;outline-offset:0!important;transition:none}.doc-page-navigation-wrapper .language-javascript:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:0!important;transition:none}.doc-page-navigation-wrapper .language-javascript [tabindex="0"]:focus:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:0!important;transition:none}.doc-page-navigation-title{padding:var(--eui-s-s);font:var(--eui-f-xl)}.doc-page-navigation-content{display:block;height:100vh;max-height:calc(100vh - 7.25rem);overflow-y:auto;width:100%}.doc-page-navigation-content::-webkit-scrollbar{display:inherit;height:6px;width:6px;background-color:var(--eui-c-neutral-bg-light)}.doc-page-navigation-content::-webkit-scrollbar-thumb{background-color:var(--eui-c-neutral-lightest);border-radius:5rem}.doc-page-navigation-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-c-neutral-lighter)}.doc-page-navigation-content::-webkit-scrollbar-track{background-color:var(--eui-c-neutral-bg-light);border-radius:0}.doc-page-navigation{background-color:transparent;border-left:2px solid transparent;padding-top:var(--eui-s-xs);margin:0;padding:0}.doc-page-navigation .doc-page-navigation-list{margin:0;padding:0}.doc-page-navigation .doc-page-navigation-item{color:var(--eui-c-info-darker);cursor:pointer;line-height:1.5;overflow:hidden;padding:var(--eui-s-3xs);text-overflow:ellipsis;transition:background-color ease-in .2s;white-space:nowrap;list-style:none}.doc-page-navigation .doc-page-navigation-item span{font-weight:700;color:var(--eui-c-info-darker);padding-left:var(--eui-s-xs)}.doc-page-navigation .doc-page-navigation-item:not(.doc-page-navigation-sub):hover{background-color:var(--eui-c-neutral-bg-light);border-left:2px solid var(--eui-c-info-darker)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-sub .doc-page-navigation-item span{font-weight:400;padding-left:var(--eui-s-s)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-sub .doc-page-navigation-item:hover{background-color:var(--eui-c-neutral-bg-light);border-left:2px solid var(--eui-c-neutral-lightest)}.doc-page-navigation .doc-page-navigation-item.doc-page-navigation-item--selected{background-color:var(--eui-c-info-bg);border-left:2px solid var(--eui-c-info-darker)}.doc-page-navigation .doc-page-navigation-item-sub{padding-left:var(--eui-s-l)}.doc-page-navigation .doc-page-navigation-category{padding-left:var(--eui-s-m);color:var(--eui-c-text);margin-top:var(--eui-s-s);font-weight:700;text-transform:capitalize}.doc-page-api-iframe-wrapper{display:flex;justify-content:space-around;margin:0}.doc-page-section-title{margin-top:var(--eui-s-2xl);margin-bottom:var(--eui-s-xl);color:var(--eui-c-info-darker);letter-spacing:-1px;font:var(--eui-f-2xl-bold)}.doc-page-section-subtitle{font:var(--eui-f-l-bold);letter-spacing:-.25px;margin:var(--eui-s-2xl) 0 var(--eui-s-s);padding-bottom:var(--eui-s-2xs);width:auto;display:table;color:var(--eui-c-neutral)}@media screen and (max-width: 767px){.doc-page-navigation-wrapper .doc-page-main-column{padding-right:0;width:100%}.doc-page-navigation-wrapper .doc-page-navigation-column{display:none;width:0}}@media screen and (min-width: 768px) and (max-width: 995px){.doc-page-navigation-wrapper .doc-page-main-column{width:80%}.doc-page-navigation-wrapper .doc-page-navigation-column{width:20%}}@media screen and (max-width: 1550px){.doc-page-api-iframe-wrapper{display:none}}\n'] }]
1537
- }], ctorParameters: () => [{ type: i12.Router }, { type: i12.ActivatedRoute }, { type: i23.EuiAppShellService }, { type: i33.DomSanitizer }, { type: i42.Location }], propDecorators: { id: [{
1538
- type: Input4
1539
- }], label: [{
1540
- type: Input4
1541
- }], subLabel: [{
1542
- type: Input4
1543
- }], isNotReady: [{
1544
- type: Input4
1545
- }], isDeprecated: [{
1546
- type: Input4
1547
- }], isLegacy: [{
1548
- type: Input4
1549
- }], codeFolder: [{
1550
- type: Input4
1551
- }], showcase: [{
1552
- type: Input4
1553
- }], isNavigationVisible: [{
1554
- type: Input4
1555
- }], hasApi: [{
1556
- type: Input4
1557
- }], hasA11y: [{
1558
- type: Input4
1559
- }], samples: [{
1560
- type: ContentChildren,
1561
- args: [DocSampleComponent, { descendants: true }]
1562
- }], sections: [{
1563
- type: ContentChildren,
1564
- args: [DocSectionComponent, { descendants: true }]
1565
- }], pageOverviewContent: [{
1566
- type: ContentChildren,
1567
- args: [forwardRef(() => DocPageOverviewContentDirective)]
1568
- }], pageOverviewDefaultContent: [{
1569
- type: ContentChildren,
1570
- args: [forwardRef(() => DocPageOverviewDefaultContentDirective)]
1571
- }], pageSamplesContent: [{
1572
- type: ContentChildren,
1573
- args: [forwardRef(() => DocPageSamplesContentDirective)]
1574
- }], pageSectionsContent: [{
1575
- type: ContentChildren,
1576
- args: [forwardRef(() => DocPageSectionsContentDirective)]
1577
- }], pageInteractiveContent: [{
1578
- type: ContentChildren,
1579
- args: [forwardRef(() => DocPageInteractiveContentDirective)]
1580
- }], pageAccessibilityContent: [{
1581
- type: ContentChildren,
1582
- args: [forwardRef(() => DocPageAccessibilityContentDirective)]
1583
- }], pageApiContent: [{
1584
- type: ContentChildren,
1585
- args: [forwardRef(() => DocPageApiContentDirective)]
1586
- }], pageThemingContent: [{
1587
- type: ContentChildren,
1588
- args: [forwardRef(() => DocPageThemingContentDirective)]
1589
- }], tabsContent: [{
1590
- type: ViewChild,
1591
- args: ["tabsContent"]
1592
- }] } });
1593
- var DocPageOverviewContentDirective = class _DocPageOverviewContentDirective {
1594
- static {
1595
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageOverviewContentDirective, deps: [], target: i06.ɵɵFactoryTarget.Directive });
1596
- }
1597
- static {
1598
- this.ɵdir = i06.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageOverviewContentDirective, selector: "docPageOverview", ngImport: i06 });
1599
- }
1600
- };
1601
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageOverviewContentDirective, decorators: [{
1602
- type: Directive2,
1603
- args: [{ selector: "docPageOverview" }]
1604
- }] });
1605
- var DocPageOverviewDefaultContentDirective = class _DocPageOverviewDefaultContentDirective {
1606
- static {
1607
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageOverviewDefaultContentDirective, deps: [], target: i06.ɵɵFactoryTarget.Directive });
1608
- }
1609
- static {
1610
- this.ɵdir = i06.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageOverviewDefaultContentDirective, selector: "docPageOverviewDefault", ngImport: i06 });
1611
- }
1612
- };
1613
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageOverviewDefaultContentDirective, decorators: [{
1614
- type: Directive2,
1615
- args: [{ selector: "docPageOverviewDefault" }]
1616
- }] });
1617
- var DocPageInteractiveContentDirective = class _DocPageInteractiveContentDirective {
1618
- constructor() {
1619
- this.title = "ADVANCED EXAMPLES";
1620
- this.subTitle = "Advanced use cases";
1621
- }
1622
- static {
1623
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageInteractiveContentDirective, deps: [], target: i06.ɵɵFactoryTarget.Directive });
1624
- }
1625
- static {
1626
- this.ɵdir = i06.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageInteractiveContentDirective, selector: "docPageInteractive", inputs: { title: "title", subTitle: "subTitle" }, ngImport: i06 });
1627
- }
1628
- };
1629
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageInteractiveContentDirective, decorators: [{
1630
- type: Directive2,
1631
- args: [{ selector: "docPageInteractive" }]
1632
- }], propDecorators: { title: [{
1633
- type: Input4
1634
- }], subTitle: [{
1635
- type: Input4
1636
- }] } });
1637
- var DocPageSamplesContentDirective = class _DocPageSamplesContentDirective {
1638
- static {
1639
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageSamplesContentDirective, deps: [], target: i06.ɵɵFactoryTarget.Directive });
1640
- }
1641
- static {
1642
- this.ɵdir = i06.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageSamplesContentDirective, selector: "docPageSamples", ngImport: i06 });
1643
- }
1644
- };
1645
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageSamplesContentDirective, decorators: [{
1646
- type: Directive2,
1647
- args: [{ selector: "docPageSamples" }]
1648
- }] });
1649
- var DocPageSectionsContentDirective = class _DocPageSectionsContentDirective {
1650
- static {
1651
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageSectionsContentDirective, deps: [], target: i06.ɵɵFactoryTarget.Directive });
1652
- }
1653
- static {
1654
- this.ɵdir = i06.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageSectionsContentDirective, selector: "docPageSections", ngImport: i06 });
1655
- }
1656
- };
1657
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageSectionsContentDirective, decorators: [{
1658
- type: Directive2,
1659
- args: [{ selector: "docPageSections" }]
1660
- }] });
1661
- var DocPageAccessibilityContentDirective = class _DocPageAccessibilityContentDirective {
1662
- static {
1663
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageAccessibilityContentDirective, deps: [], target: i06.ɵɵFactoryTarget.Directive });
1664
- }
1665
- static {
1666
- this.ɵdir = i06.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageAccessibilityContentDirective, selector: "docPageAccessibility", ngImport: i06 });
1667
- }
1668
- };
1669
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageAccessibilityContentDirective, decorators: [{
1670
- type: Directive2,
1671
- args: [{ selector: "docPageAccessibility" }]
1672
- }] });
1673
- var DocPageApiContentDirective = class _DocPageApiContentDirective {
1674
- static {
1675
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageApiContentDirective, deps: [], target: i06.ɵɵFactoryTarget.Directive });
1676
- }
1677
- static {
1678
- this.ɵdir = i06.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageApiContentDirective, selector: "docPageApi", ngImport: i06 });
1679
- }
1680
- };
1681
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageApiContentDirective, decorators: [{
1682
- type: Directive2,
1683
- args: [{ selector: "docPageApi" }]
1684
- }] });
1685
- var DocPageThemingContentDirective = class _DocPageThemingContentDirective {
1686
- static {
1687
- this.ɵfac = i06.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: _DocPageThemingContentDirective, deps: [], target: i06.ɵɵFactoryTarget.Directive });
1688
- }
1689
- static {
1690
- this.ɵdir = i06.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageThemingContentDirective, selector: "docPageTheming", ngImport: i06 });
1691
- }
1692
- };
1693
- i06.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i06, type: DocPageThemingContentDirective, decorators: [{
1694
- type: Directive2,
1695
- args: [{ selector: "docPageTheming" }]
1696
- }] });
1697
-
1698
- // lib/components/doc-sample-api/doc-sample-api.component.mjs
1699
- import { Component as Component5 } from "@angular/core";
1700
- import * as i07 from "@angular/core";
1701
- var DocSampleApiComponent = class _DocSampleApiComponent {
1702
- static {
1703
- this.ɵfac = i07.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i07, type: _DocSampleApiComponent, deps: [], target: i07.ɵɵFactoryTarget.Component });
1704
- }
1705
- static {
1706
- this.ɵcmp = i07.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSampleApiComponent, selector: "eui-showcase-doc-sample-api", ngImport: i07, template: "" });
1707
- }
1708
- };
1709
- i07.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i07, type: DocSampleApiComponent, decorators: [{
1710
- type: Component5,
1711
- args: [{ selector: "eui-showcase-doc-sample-api", template: "" }]
1712
- }] });
1713
-
1714
- // lib/components/doc-section-code/doc-section-code.component.mjs
1715
- import { Component as Component6, Input as Input5, Directive as Directive3, ContentChild, forwardRef as forwardRef3 } from "@angular/core";
1716
- import * as i08 from "@angular/core";
1717
- import * as i13 from "@angular/common";
1718
- import * as i24 from "@eui/components/eui-button";
1719
- import * as i34 from "@eui/components/eui-tabs";
1720
- import * as i43 from "@eui/components/eui-label";
1721
- var DocSectionCodeComponent = class _DocSectionCodeComponent {
1722
- constructor() {
1723
- this.isDeprecated = false;
1724
- this.isCodeExpanded = false;
1725
- }
1726
- toggleCode() {
1727
- this.isCodeExpanded = !this.isCodeExpanded;
1728
- }
1729
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1730
- isDefined(object) {
1731
- return object;
1732
- }
1733
- static {
1734
- this.ɵfac = i08.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: _DocSectionCodeComponent, deps: [], target: i08.ɵɵFactoryTarget.Component });
1735
- }
1736
- static {
1737
- this.ɵcmp = i08.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSectionCodeComponent, selector: "eui-showcase-doc-section-code", inputs: { label: "label", content: "content", styleClass: "styleClass", versionLabel: "versionLabel", isDeprecated: "isDeprecated", isCodeExpanded: "isCodeExpanded" }, queries: [{ propertyName: "sectionDescription", first: true, predicate: i08.forwardRef(() => DocSectionCodeDescriptionTagDirective), descendants: true }, { propertyName: "sectionCodeHTML", first: true, predicate: i08.forwardRef(() => DocSectionCodeHtmlTagDirective), descendants: true }, { propertyName: "sectionCodeTS", first: true, predicate: i08.forwardRef(() => DocSectionCodeTsTagDirective), descendants: true }, { propertyName: "sectionCodeSERVICE", first: true, predicate: i08.forwardRef(() => DocSectionCodeServiceTagDirective), descendants: true }, { propertyName: "sectionCodeCSS", first: true, predicate: i08.forwardRef(() => DocSectionCodeCssTagDirective), descendants: true }, { propertyName: "sectionCodeDOC", first: true, predicate: i08.forwardRef(() => DocSectionCodeDocTagDirective), descendants: true }], ngImport: i08, template: '<h5 class="section-title {{ styleClass }}">\n <div class="eui-u-flex eui-u-flex-justify-content-between">\n <div [class.app-section-code--deprecated]="isDeprecated">\n {{ label }}\n </div>\n <div class="ml-auto">\n <span *ngIf="versionLabel" class="eui-u-color-danger">{{ versionLabel }}</span>\n <button type="button" euiButton [euiOutline]="!isCodeExpanded" euiPrimary euiSizeS (click)="toggleCode()">\n <span *ngIf="!isCodeExpanded" euiLabel>Code</span>\n <span *ngIf="isCodeExpanded" euiLabel>Hide Code</span>\n <span euiIcon iconClass="eui-icon-code"></span>\n </button>\n </div>\n </div>\n <div *ngIf="isDeprecated">\n <small class="eui-u-color-danger">Deprecated in 3.x</small>\n </div>\n</h5>\n\n<div class="eui-u-mv" *ngIf="sectionDescription">\n <ng-content select="sectionDescription"></ng-content>\n</div>\n\n<ng-template [ngIf]="isCodeExpanded">\n <eui-tabs>\n <eui-tab [isVisible]="isDefined(sectionCodeHTML)">\n <euiTabLabel>\n HTML\n <euiTabSubLabel>HyperText Markup Language</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class="language-markup" euiCode><ng-content select="sectionCodeHTML"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="isDefined(sectionCodeTS)">\n <euiTabLabel>\n TS\n <euiTabSubLabel>Typescript</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class="language-javascript" euiCode><ng-content select="sectionCodeTS"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="isDefined(sectionCodeSERVICE)">\n <euiTabLabel>Service</euiTabLabel>\n <euiTabContent>\n <pre><code class="language-javascript" euiCode><ng-content select="sectionCodeSERVICE"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="isDefined(sectionCodeCSS)">\n <euiTabLabel>CSS</euiTabLabel>\n <euiTabContent>\n <pre><code class="language-javascript" euiCode><ng-content select="sectionCodeCSS"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="isDefined(sectionCodeDOC)">\n <euiTabLabel>\n DOC\n <euiTabSubLabel>Documentation</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <div class="language-doc">\n <ng-content select="sectionCodeDOC"></ng-content>\n </div>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n <ng-template [ngIf]="!sectionCodeHTML && !sectionCodeTS && !sectionCodeCSS">\n <pre class="only-html"><code class="language-markup" euiCode><ng-content></ng-content></code></pre>\n </ng-template>\n</ng-template>\n', styles: [".eui-showcase-doc-section-code--deprecated{color:red;text-decoration:line-through}.language-doc{background-color:#f5f8fb;border-left:10px solid #358ccb;box-shadow:-1px 0 #358ccb,0 0 0 1px #dfdfdf;display:block;height:inherit;max-height:inherit;overflow:auto;padding:1rem;position:relative}.first-section{margin-top:0;padding-top:10px}\n"], dependencies: [{ kind: "directive", type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i24.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i34.EuiTabsComponent, selector: "eui-tabs", inputs: ["tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClose", "tabSelect"] }, { kind: "component", type: i34.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "component", type: i34.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "directive", type: i34.EuiTabSubLabelDirective, selector: "euiTabSubLabel" }, { kind: "component", type: i34.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i43.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }, { kind: "directive", type: EuiCodeHighlighterDirective, selector: "[euiCode]" }] });
1738
- }
1739
- };
1740
- i08.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: DocSectionCodeComponent, decorators: [{
1741
- type: Component6,
1742
- args: [{ selector: "eui-showcase-doc-section-code", template: '<h5 class="section-title {{ styleClass }}">\n <div class="eui-u-flex eui-u-flex-justify-content-between">\n <div [class.app-section-code--deprecated]="isDeprecated">\n {{ label }}\n </div>\n <div class="ml-auto">\n <span *ngIf="versionLabel" class="eui-u-color-danger">{{ versionLabel }}</span>\n <button type="button" euiButton [euiOutline]="!isCodeExpanded" euiPrimary euiSizeS (click)="toggleCode()">\n <span *ngIf="!isCodeExpanded" euiLabel>Code</span>\n <span *ngIf="isCodeExpanded" euiLabel>Hide Code</span>\n <span euiIcon iconClass="eui-icon-code"></span>\n </button>\n </div>\n </div>\n <div *ngIf="isDeprecated">\n <small class="eui-u-color-danger">Deprecated in 3.x</small>\n </div>\n</h5>\n\n<div class="eui-u-mv" *ngIf="sectionDescription">\n <ng-content select="sectionDescription"></ng-content>\n</div>\n\n<ng-template [ngIf]="isCodeExpanded">\n <eui-tabs>\n <eui-tab [isVisible]="isDefined(sectionCodeHTML)">\n <euiTabLabel>\n HTML\n <euiTabSubLabel>HyperText Markup Language</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class="language-markup" euiCode><ng-content select="sectionCodeHTML"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="isDefined(sectionCodeTS)">\n <euiTabLabel>\n TS\n <euiTabSubLabel>Typescript</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <pre><code class="language-javascript" euiCode><ng-content select="sectionCodeTS"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="isDefined(sectionCodeSERVICE)">\n <euiTabLabel>Service</euiTabLabel>\n <euiTabContent>\n <pre><code class="language-javascript" euiCode><ng-content select="sectionCodeSERVICE"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="isDefined(sectionCodeCSS)">\n <euiTabLabel>CSS</euiTabLabel>\n <euiTabContent>\n <pre><code class="language-javascript" euiCode><ng-content select="sectionCodeCSS"></ng-content></code></pre>\n </euiTabContent>\n </eui-tab>\n <eui-tab [isVisible]="isDefined(sectionCodeDOC)">\n <euiTabLabel>\n DOC\n <euiTabSubLabel>Documentation</euiTabSubLabel>\n </euiTabLabel>\n <euiTabContent>\n <div class="language-doc">\n <ng-content select="sectionCodeDOC"></ng-content>\n </div>\n </euiTabContent>\n </eui-tab>\n </eui-tabs>\n <ng-template [ngIf]="!sectionCodeHTML && !sectionCodeTS && !sectionCodeCSS">\n <pre class="only-html"><code class="language-markup" euiCode><ng-content></ng-content></code></pre>\n </ng-template>\n</ng-template>\n', styles: [".eui-showcase-doc-section-code--deprecated{color:red;text-decoration:line-through}.language-doc{background-color:#f5f8fb;border-left:10px solid #358ccb;box-shadow:-1px 0 #358ccb,0 0 0 1px #dfdfdf;display:block;height:inherit;max-height:inherit;overflow:auto;padding:1rem;position:relative}.first-section{margin-top:0;padding-top:10px}\n"] }]
1743
- }], propDecorators: { label: [{
1744
- type: Input5
1745
- }], content: [{
1746
- type: Input5
1747
- }], styleClass: [{
1748
- type: Input5
1749
- }], versionLabel: [{
1750
- type: Input5
1751
- }], isDeprecated: [{
1752
- type: Input5
1753
- }], isCodeExpanded: [{
1754
- type: Input5
1755
- }], sectionDescription: [{
1756
- type: ContentChild,
1757
- args: [forwardRef3(() => DocSectionCodeDescriptionTagDirective)]
1758
- }], sectionCodeHTML: [{
1759
- type: ContentChild,
1760
- args: [forwardRef3(() => DocSectionCodeHtmlTagDirective)]
1761
- }], sectionCodeTS: [{
1762
- type: ContentChild,
1763
- args: [forwardRef3(() => DocSectionCodeTsTagDirective)]
1764
- }], sectionCodeSERVICE: [{
1765
- type: ContentChild,
1766
- args: [forwardRef3(() => DocSectionCodeServiceTagDirective)]
1767
- }], sectionCodeCSS: [{
1768
- type: ContentChild,
1769
- args: [forwardRef3(() => DocSectionCodeCssTagDirective)]
1770
- }], sectionCodeDOC: [{
1771
- type: ContentChild,
1772
- args: [forwardRef3(() => DocSectionCodeDocTagDirective)]
1773
- }] } });
1774
- var DocSectionCodeDescriptionTagDirective = class _DocSectionCodeDescriptionTagDirective {
1775
- static {
1776
- this.ɵfac = i08.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: _DocSectionCodeDescriptionTagDirective, deps: [], target: i08.ɵɵFactoryTarget.Directive });
1777
- }
1778
- static {
1779
- this.ɵdir = i08.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSectionCodeDescriptionTagDirective, selector: "sectionDescription", ngImport: i08 });
1780
- }
1781
- };
1782
- i08.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: DocSectionCodeDescriptionTagDirective, decorators: [{
1783
- type: Directive3,
1784
- args: [{ selector: "sectionDescription" }]
1785
- }] });
1786
- var DocSectionCodeHtmlTagDirective = class _DocSectionCodeHtmlTagDirective {
1787
- static {
1788
- this.ɵfac = i08.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: _DocSectionCodeHtmlTagDirective, deps: [], target: i08.ɵɵFactoryTarget.Directive });
1789
- }
1790
- static {
1791
- this.ɵdir = i08.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSectionCodeHtmlTagDirective, selector: "sectionCodeHTML", ngImport: i08 });
1792
- }
1793
- };
1794
- i08.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: DocSectionCodeHtmlTagDirective, decorators: [{
1795
- type: Directive3,
1796
- args: [{ selector: "sectionCodeHTML" }]
1797
- }] });
1798
- var DocSectionCodeTsTagDirective = class _DocSectionCodeTsTagDirective {
1799
- static {
1800
- this.ɵfac = i08.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: _DocSectionCodeTsTagDirective, deps: [], target: i08.ɵɵFactoryTarget.Directive });
1801
- }
1802
- static {
1803
- this.ɵdir = i08.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSectionCodeTsTagDirective, selector: "sectionCodeTS", ngImport: i08 });
1804
- }
1805
- };
1806
- i08.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: DocSectionCodeTsTagDirective, decorators: [{
1807
- type: Directive3,
1808
- args: [{ selector: "sectionCodeTS" }]
1809
- }] });
1810
- var DocSectionCodeServiceTagDirective = class _DocSectionCodeServiceTagDirective {
1811
- static {
1812
- this.ɵfac = i08.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: _DocSectionCodeServiceTagDirective, deps: [], target: i08.ɵɵFactoryTarget.Directive });
1813
- }
1814
- static {
1815
- this.ɵdir = i08.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSectionCodeServiceTagDirective, selector: "sectionCodeSERVICE", ngImport: i08 });
1816
- }
1817
- };
1818
- i08.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: DocSectionCodeServiceTagDirective, decorators: [{
1819
- type: Directive3,
1820
- args: [{ selector: "sectionCodeSERVICE" }]
1821
- }] });
1822
- var DocSectionCodeCssTagDirective = class _DocSectionCodeCssTagDirective {
1823
- static {
1824
- this.ɵfac = i08.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: _DocSectionCodeCssTagDirective, deps: [], target: i08.ɵɵFactoryTarget.Directive });
1825
- }
1826
- static {
1827
- this.ɵdir = i08.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSectionCodeCssTagDirective, selector: "sectionCodeCSS", ngImport: i08 });
1828
- }
1829
- };
1830
- i08.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: DocSectionCodeCssTagDirective, decorators: [{
1831
- type: Directive3,
1832
- args: [{ selector: "sectionCodeCSS" }]
1833
- }] });
1834
- var DocSectionCodeDocTagDirective = class _DocSectionCodeDocTagDirective {
1835
- static {
1836
- this.ɵfac = i08.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: _DocSectionCodeDocTagDirective, deps: [], target: i08.ɵɵFactoryTarget.Directive });
1837
- }
1838
- static {
1839
- this.ɵdir = i08.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocSectionCodeDocTagDirective, selector: "sectionCodeDOC", ngImport: i08 });
1840
- }
1841
- };
1842
- i08.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i08, type: DocSectionCodeDocTagDirective, decorators: [{
1843
- type: Directive3,
1844
- args: [{ selector: "sectionCodeDOC" }]
1845
- }] });
1846
-
1847
- // lib/components/doc-page-code-modal/doc-page-code-modal.component.mjs
1848
- import { Component as Component7, Input as Input6, ViewChild as ViewChild2 } from "@angular/core";
1849
- import * as i09 from "@angular/core";
1850
- import * as i14 from "@eui/core";
1851
- import * as i25 from "@eui/components/eui-button";
1852
- import * as i35 from "@eui/components/eui-dialog";
1853
- import * as i44 from "@eui/components/eui-icon";
1854
- import * as i53 from "@eui/components/eui-label";
1855
- var DocPageCodeModalComponent = class _DocPageCodeModalComponent {
1856
- constructor(asService) {
1857
- this.asService = asService;
1858
- this.width = "95vw";
1859
- }
1860
- toggleCode() {
1861
- this.dialog.openDialog();
1862
- }
1863
- onClose() {
1864
- this.dialog.closeDialog();
1865
- }
1866
- static {
1867
- this.ɵfac = i09.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i09, type: _DocPageCodeModalComponent, deps: [{ token: i14.EuiAppShellService }], target: i09.ɵɵFactoryTarget.Component });
1868
- }
1869
- static {
1870
- this.ɵcmp = i09.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageCodeModalComponent, selector: "eui-showcase-doc-page-code-modal", inputs: { width: "width" }, viewQueries: [{ propertyName: "dialog", first: true, predicate: ["dialog"], descendants: true }], ngImport: i09, template: '<button type="button" euiButton euiAccent (click)="toggleCode()">\n <span euiLabel>Check the code</span>\n <eui-icon-svg icon="eui-code"></eui-icon-svg>\n</button>\n\n<eui-dialog #dialog title="Page source code" [hasFooter]="false" (close)="onClose()" [width]="width">\n <ng-content></ng-content>\n</eui-dialog>\n', dependencies: [{ kind: "component", type: i25.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i35.EuiDialogComponent, selector: "eui-dialog", inputs: ["e2eAttr", "title", "acceptLabel", "dismissLabel", "typeClass", "verticalPosition", "width", "height", "isFullScreen", "hasCloseButton", "hasAcceptButton", "hasDismissButton", "hasMobileCustomSize", "isClosedOnClickOutside", "hasClosedOnClickOutside", "isClosedOnEscape", "hasClosedOnEscape", "isHandleCloseOnDismiss", "isHandleCloseOnClose", "isHandleCloseOnAccept", "isHandleCloseOnClickOutside", "isHandleCloseOnEscape", "isMessageBox", "isDraggable", "hasNoBodyPadding", "hasFooter"], outputs: ["clickOutside", "escape", "dialogOpen", "dialogClose", "dismiss", "accept"] }, { kind: "component", type: i44.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i53.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }] });
1871
- }
1872
- };
1873
- i09.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i09, type: DocPageCodeModalComponent, decorators: [{
1874
- type: Component7,
1875
- args: [{ selector: "eui-showcase-doc-page-code-modal", template: '<button type="button" euiButton euiAccent (click)="toggleCode()">\n <span euiLabel>Check the code</span>\n <eui-icon-svg icon="eui-code"></eui-icon-svg>\n</button>\n\n<eui-dialog #dialog title="Page source code" [hasFooter]="false" (close)="onClose()" [width]="width">\n <ng-content></ng-content>\n</eui-dialog>\n' }]
1876
- }], ctorParameters: () => [{ type: i14.EuiAppShellService }], propDecorators: { width: [{
1877
- type: Input6
1878
- }], dialog: [{
1879
- type: ViewChild2,
1880
- args: ["dialog"]
1881
- }] } });
1882
-
1883
- // lib/components/doc-page-code-fab/doc-page-code-fab.component.mjs
1884
- import { Component as Component8, Input as Input7, ViewChild as ViewChild3 } from "@angular/core";
1885
- import * as i010 from "@angular/core";
1886
- import * as i15 from "@eui/core";
1887
- import * as i26 from "@angular/common";
1888
- import * as i36 from "@eui/components/eui-button";
1889
- import * as i45 from "@eui/components/eui-dialog";
1890
- import * as i54 from "@eui/components/eui-icon";
1891
- var DocPageCodeFabComponent = class _DocPageCodeFabComponent {
1892
- constructor(asService) {
1893
- this.asService = asService;
1894
- this.codeFolder = "";
1895
- this.showcase = "design-patterns";
1896
- }
1897
- toggleCode() {
1898
- this.dialog.openDialog();
1899
- }
1900
- onClose() {
1901
- this.dialog.closeDialog();
1902
- }
1903
- onOpenCode() {
1904
- const showcaseRoot = "https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/app-eui-showcase-ux-components/browse/src/app/features";
1905
- const sourceRootPath = `${showcaseRoot}/showcase-${this.showcase}/`;
1906
- window.open(sourceRootPath + this.codeFolder, "_blank");
1907
- }
1908
- static {
1909
- this.ɵfac = i010.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i010, type: _DocPageCodeFabComponent, deps: [{ token: i15.EuiAppShellService }], target: i010.ɵɵFactoryTarget.Component });
1910
- }
1911
- static {
1912
- this.ɵcmp = i010.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPageCodeFabComponent, selector: "eui-showcase-doc-page-code-fab", inputs: { codeFolder: "codeFolder", showcase: "showcase" }, viewQueries: [{ propertyName: "dialog", first: true, predicate: ["dialog"], descendants: true }], ngImport: i010, template: `<div class="eui-button-fixed">
1913
- <div class="eui-button-floating eui-button--size-2xl eui-button--icon-only eui-u-c-bg-accent eui--accent">
1914
- <eui-icon-svg icon="eui-code" size="l" (click)="toggleCode()"></eui-icon-svg>
1915
- </div>
1916
- </div>
1917
-
1918
- <eui-dialog #dialog title="Page source code" [hasFooter]="false" (close)="onClose()" [width]="'50vw'">
1919
- <button type="button" *ngIf="codeFolder" euiButton euiAccent euiSizeS (click)="onOpenCode()">
1920
- <eui-icon-svg icon="eui-code" set="eui" size="m" fillColor="grey-100" class="eui-u-mr-xs"></eui-icon-svg> VIEW SOURCES
1921
- </button>
1922
- <ng-content></ng-content>
1923
- <p class="eui-u-text-paragraph">Use the <kbd class="eui-u-text-kbd">View sources</kbd> button to access the code source of the page.</p>
1924
- </eui-dialog>
1925
- `, dependencies: [{ kind: "directive", type: i26.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i36.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i45.EuiDialogComponent, selector: "eui-dialog", inputs: ["e2eAttr", "title", "acceptLabel", "dismissLabel", "typeClass", "verticalPosition", "width", "height", "isFullScreen", "hasCloseButton", "hasAcceptButton", "hasDismissButton", "hasMobileCustomSize", "isClosedOnClickOutside", "hasClosedOnClickOutside", "isClosedOnEscape", "hasClosedOnEscape", "isHandleCloseOnDismiss", "isHandleCloseOnClose", "isHandleCloseOnAccept", "isHandleCloseOnClickOutside", "isHandleCloseOnEscape", "isMessageBox", "isDraggable", "hasNoBodyPadding", "hasFooter"], outputs: ["clickOutside", "escape", "dialogOpen", "dialogClose", "dismiss", "accept"] }, { kind: "component", type: i54.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }] });
1926
- }
1927
- };
1928
- i010.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i010, type: DocPageCodeFabComponent, decorators: [{
1929
- type: Component8,
1930
- args: [{ selector: "eui-showcase-doc-page-code-fab", template: `<div class="eui-button-fixed">
1931
- <div class="eui-button-floating eui-button--size-2xl eui-button--icon-only eui-u-c-bg-accent eui--accent">
1932
- <eui-icon-svg icon="eui-code" size="l" (click)="toggleCode()"></eui-icon-svg>
1933
- </div>
1934
- </div>
1935
-
1936
- <eui-dialog #dialog title="Page source code" [hasFooter]="false" (close)="onClose()" [width]="'50vw'">
1937
- <button type="button" *ngIf="codeFolder" euiButton euiAccent euiSizeS (click)="onOpenCode()">
1938
- <eui-icon-svg icon="eui-code" set="eui" size="m" fillColor="grey-100" class="eui-u-mr-xs"></eui-icon-svg> VIEW SOURCES
1939
- </button>
1940
- <ng-content></ng-content>
1941
- <p class="eui-u-text-paragraph">Use the <kbd class="eui-u-text-kbd">View sources</kbd> button to access the code source of the page.</p>
1942
- </eui-dialog>
1943
- ` }]
1944
- }], ctorParameters: () => [{ type: i15.EuiAppShellService }], propDecorators: { codeFolder: [{
1945
- type: Input7
1946
- }], showcase: [{
1947
- type: Input7
1948
- }], dialog: [{
1949
- type: ViewChild3,
1950
- args: ["dialog"]
1951
- }] } });
1952
-
1953
- // lib/components/lorem-ipsum/lorem-ipsum-sample.component.mjs
1954
- import { Component as Component9, Input as Input8 } from "@angular/core";
1955
- import * as i011 from "@angular/core";
1956
- import * as i16 from "@angular/common";
1957
- var LoremIpsumSampleComponent = class _LoremIpsumSampleComponent {
1958
- constructor() {
1959
- this.textSize = "large";
1960
- }
1961
- static {
1962
- this.ɵfac = i011.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i011, type: _LoremIpsumSampleComponent, deps: [], target: i011.ɵɵFactoryTarget.Component });
1963
- }
1964
- static {
1965
- this.ɵcmp = i011.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _LoremIpsumSampleComponent, selector: "eui-showcase-doc-lorem-ipsum", inputs: { textSize: "textSize" }, ngImport: i011, template: `<div *ngIf="textSize === 'small'">
1966
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut volutpat enim. Etiam a mattis tortor. Etiam egestas magna at iaculis
1967
- malesuada. Etiam vulputate quam at consectetur pharetra.
1968
-
1969
- <div class="eui-u-mb-m">
1970
- Nunc sit amet lectus mattis, aliquam mi quis, iaculis est. Donec nec diam tristique, egestas lorem nec, varius neque. Aenean
1971
- consequat nisi in sem porttitor, a eleifend lorem tincidunt. Phasellus scelerisque tellus eu imperdiet dictum.
1972
- </div>
1973
- <div class="eui-u-mb-m">
1974
- Sed vitae tellus ac nisl facilisis posuere. Mauris cursus dui nec arcu molestie sodales. Morbi vel enim semper, luctus odio vitae,
1975
- lacinia nisl. Sed sollicitudin ex et nibh bibendum, id blandit nunc pretium. Nunc venenatis eros a leo tincidunt gravida.
1976
- </div>
1977
- <div class="eui-u-mb-m">Etiam pulvinar leo sit amet sapien pharetra, porta laoreet tellus consequat.</div>
1978
- </div>
1979
-
1980
- <div *ngIf="textSize === 'medium'">
1981
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut volutpat enim. Etiam a mattis tortor. Etiam egestas magna at iaculis
1982
- malesuada. Etiam vulputate quam at consectetur pharetra.
1983
-
1984
- <div class="eui-u-mb-m">
1985
- Duis vitae nibh iaculis augue fermentum placerat vel vitae lectus. Curabitur venenatis eros at eros ultrices, eu feugiat eros
1986
- efficitur. Sed quis nulla non augue scelerisque gravida vitae sed neque. Quisque semper dolor non diam sodales suscipit.
1987
- </div>
1988
- <div class="eui-u-mb-m">
1989
- Donec ut tortor scelerisque, sodales neque id, tempor orci. Suspendisse eu augue at nibh egestas eleifend. Ut tristique enim in
1990
- lectus aliquam, non tincidunt tortor vulputate. Phasellus eu nunc faucibus, porta ante nec, malesuada erat.
1991
- </div>
1992
- <div class="eui-u-mb-m">
1993
- Vestibulum hendrerit risus a libero gravida venenatis. Mauris non enim sit amet odio pellentesque scelerisque in et velit. Quisque
1994
- efficitur eros ut magna rutrum aliquet. Curabitur et nisi ullamcorper, pellentesque ligula vel, congue dui. Nullam commodo mi quis
1995
- nibh euismod interdum. In rutrum sapien ac viverra pretium.
1996
- </div>
1997
- <div class="eui-u-mb-m">
1998
- Ut eget tellus a magna fermentum tempor at id erat. Nam fringilla eros sed leo facilisis, et mollis orci elementum. Donec
1999
- consectetur libero sed arcu rhoncus, vel elementum augue mollis. Cras facilisis nisl mollis imperdiet mollis.
2000
- </div>
2001
- <div class="eui-u-mb-m">
2002
- Sed pharetra lorem in justo rhoncus tempor. Phasellus vel elit eget massa consectetur porttitor eu ut ex. Donec sed ex sit amet
2003
- purus blandit pharetra. Nam rhoncus dolor ac felis condimentum malesuada.
2004
- </div>
2005
- <div class="eui-u-mb-m">
2006
- Pellentesque convallis nulla in lectus molestie mollis. Pellentesque auctor libero eget dolor vehicula, a suscipit nunc laoreet.
2007
- Nulla suscipit ante in sollicitudin semper.
2008
- </div>
2009
- <div class="eui-u-mb-m">Nullam rutrum ante vitae metus interdum, quis laoreet sem maximus.</div>
2010
- <div class="eui-u-mb-m">
2011
- Pellentesque gravida diam quis orci suscipit hendrerit. Vestibulum congue sapien sed pretium gravida. Nullam ornare lectus sed
2012
- pulvinar fringilla. Nam dictum eros sit amet lectus aliquet tincidunt. Quisque eu augue eget felis tincidunt hendrerit. Aenean vel
2013
- lorem vel sem consequat congue.
2014
- </div>
2015
- <div class="eui-u-mb-m">Phasellus finibus libero at blandit sollicitudin. Praesent pulvinar libero a lorem scelerisque sodales.</div>
2016
- <div class="eui-u-mb-m">Donec tempor quam eget turpis dignissim egestas. Pellentesque vulputate nisi eu ornare euismod.</div>
2017
- </div>
2018
-
2019
- <div *ngIf="textSize === 'large'">
2020
- <div class="eui-u-mb-m">
2021
- Lorem ipsum dolor sit amet consectetur. Nec maecenas turpis eget curabitur. Neque accumsan nulla vestibulum vulputate. Etiam lorem
2022
- sit leo aliquam. Penatibus suspendisse sit in metus sodales pretium erat tempor. Congue aliquam varius nec pellentesque. Diam
2023
- tincidunt neque aliquam a natoque egestas nibh in urna. Volutpat enim erat magna sociis blandit odio ut convallis. Montes blandit
2024
- maecenas pellentesque magna. Ipsum at porta justo massa aliquet vulputate sit. Nec non semper urna morbi nec ut in eu. Tristique
2025
- morbi nam tempus id.
2026
- </div>
2027
- <div class="eui-u-mb-m">
2028
- Amet eu phasellus dignissim lacus. Pellentesque tristique sed leo eu mattis quam ut sem sed. Id lacus erat urna arcu ac risus
2029
- sodales. Scelerisque risus auctor erat mattis habitant facilisis. Orci velit nunc fermentum condimentum volutpat. Nec tellus at
2030
- risus cras. Malesuada ultrices vestibulum arcu sagittis quis purus. Sit ultricies suspendisse ante augue malesuada mattis eget
2031
- fermentum et. Lobortis et ridiculus turpis elit a mi faucibus. Sit vitae nunc etiam euismod massa nisi nibh arcu nulla. Elit ipsum
2032
- lorem vestibulum nulla senectus curabitur. Turpis non eu eu rhoncus. Dictum porttitor pulvinar commodo nec sapien est at erat et.
2033
- Nisl pellentesque pellentesque tempus tristique commodo eget urna tempor. Porta mi accumsan senectus risus eget.
2034
- </div>
2035
- <div class="eui-u-mb-m">
2036
- Velit vulputate amet id tellus. Quam aliquet eros hendrerit cursus id et amet in nam. Eget elementum diam ut magna porttitor. Cursus
2037
- neque vulputate malesuada congue enim. Ac in sed et justo adipiscing habitasse elit tincidunt dictum. Dui ornare ac ligula duis. Sit
2038
- mi a eu dictum est magna morbi. Morbi hendrerit non senectus sit platea gravida id. Fermentum vulputate arcu pretium cras elit.
2039
- </div>
2040
- <div class="eui-u-mb-m">
2041
- Enim et nunc eget ac commodo sagittis. Turpis facilisi enim enim nisi eu sed. Amet viverra felis in ac orci ullamcorper. At
2042
- ridiculus enim nec velit nulla luctus lorem non ultricies. Urna gravida sem curabitur quis diam ut porttitor aliquam sapien. Id
2043
- adipiscing libero feugiat imperdiet senectus mattis non nulla condimentum.
2044
- </div>
2045
- <div class="eui-u-mb-m">
2046
- Etiam felis parturient et amet. Enim neque eu risus ante tristique nisl nisl vulputate. Arcu turpis semper vitae ultrices sit
2047
- ultrices. Sed arcu pharetra vel sapien in. Turpis vestibulum tellus quis arcu egestas viverra cursus quisque. Eu volutpat mauris
2048
- sagittis integer fermentum fringilla penatibus. Velit et quis et arcu velit tortor.
2049
- </div>
2050
- <div class="eui-u-mb-m">
2051
- Nisl fringilla nibh eu nunc pellentesque dignissim vestibulum mus porttitor. Consequat non eu nulla lectus ultrices. Viverra duis
2052
- enim aliquet ut massa laoreet consequat. Sociis dignissim sodales vitae maecenas nec aliquam. Volutpat feugiat urna id sed. In
2053
- fringilla dui neque montes ut et lorem velit consequat. Ut fermentum amet dictum proin et. Aenean odio ac quisque ultrices tellus
2054
- mattis posuere et curabitur. Proin est suspendisse iaculis nullam eros sit amet aliquam laoreet. Libero tincidunt quis et odio
2055
- imperdiet risus neque. Odio et dui duis odio accumsan. Lacus nibh urna at risus euismod lobortis cursus. Porta risus mi gravida
2056
- aliquet. Leo viverra diam vulputate sollicitudin cursus erat sed.
2057
- </div>
2058
- <div class="eui-u-mb-m">
2059
- Erat consectetur sem nulla sed viverra ipsum adipiscing nunc. Porttitor eget sodales integer maecenas tortor quam sit pharetra
2060
- lorem. Egestas ut mauris urna vitae a mollis. Nam cursus amet sit dolor. Mattis mattis laoreet sed massa proin tristique ullamcorper
2061
- commodo. Sit in tortor posuere nec lorem fringilla.
2062
- </div>
2063
- <div class="eui-u-mb-m">
2064
- Fringilla elementum quisque vitae pharetra risus pellentesque eu nulla. Enim egestas velit est tempor ut vulputate tellus tincidunt
2065
- ut. Non enim lorem nec in mattis. Vitae nulla vitae lectus varius aliquet massa lectus morbi. Placerat vel consectetur commodo nibh
2066
- ullamcorper vitae tellus sed. Nisi lacus quis at malesuada elementum. Turpis et ut egestas adipiscing et ac. Auctor aliquam dictum
2067
- dolor diam sit tellus tempus. Elementum venenatis arcu id a. Duis imperdiet id elementum tempor facilisis rhoncus rhoncus posuere
2068
- egestas. Imperdiet odio lorem posuere sit. Molestie amet quisque tellus phasellus nisi. Lobortis mi faucibus elit semper. Ipsum eu
2069
- adipiscing fringilla at felis maecenas. Egestas tortor odio laoreet neque.
2070
- </div>
2071
- <div class="eui-u-mb-m">
2072
- Sollicitudin rhoncus nunc ultricies lorem massa sagittis integer elit. Consequat mauris elementum sed imperdiet libero odio non
2073
- amet. Tortor condimentum non convallis posuere pulvinar. Neque malesuada volutpat sit quis. Ac justo gravida vitae mollis. Ut tellus
2074
- nunc ultrices egestas vitae tellus sed. Pellentesque nunc id quisque scelerisque et pellentesque eu ultricies.
2075
- </div>
2076
- <div class="eui-u-mb-m">
2077
- Dolor rhoncus tempor netus sit mauris. Turpis curabitur amet eu lectus sem habitant magna non. Eros lorem eu lectus proin venenatis
2078
- tellus. Velit praesent consectetur ligula venenatis magna sed dictum. Quisque vivamus ipsum mattis morbi pulvinar bibendum. Netus
2079
- risus sit adipiscing augue augue eget est.
2080
- </div>
2081
- <div class="eui-u-mb-m">
2082
- Justo feugiat duis fames in luctus elit. Sit id in turpis quam habitasse amet ut sed sem. Ut luctus amet sit lacinia sed eu sed a
2083
- senectus. Fusce gravida augue quis bibendum aliquet. Quam egestas quam iaculis urna condimentum amet. Odio aliquam massa vel
2084
- vestibulum tincidunt dolor tincidunt netus facilisi. Ut sociis metus pellentesque leo amet. Diam lectus pretium id tincidunt
2085
- habitasse. Eget tortor quisque tristique scelerisque quam vestibulum morbi ornare pellentesque. Nunc eget volutpat id mauris amet ut
2086
- aliquet nunc dictumst. Elit blandit a suspendisse commodo. Velit quis ut varius leo pharetra risus leo eget.
2087
- </div>
2088
- <div class="eui-u-mb-m">
2089
- Consequat phasellus ullamcorper mauris id tortor ultrices nunc. Lacinia eu sapien rhoncus lacinia sed augue justo molestie ornare.
2090
- Integer ridiculus gravida pulvinar iaculis nisl eleifend senectus. Imperdiet vitae orci massa ac eget etiam est nulla. Netus nibh
2091
- ipsum auctor eros nunc aliquam enim. Donec pretium vel amet blandit sed quisque sed. Tempor ipsum nunc leo ultricies ut. Odio tellus
2092
- ultricies diam cras. Diam maecenas amet gravida nunc. Feugiat egestas eget ullamcorper consequat. Varius faucibus nisl dolor dolor
2093
- diam ultrices odio iaculis lorem. Egestas tristique est egestas ornare. Tortor eu orci orci posuere blandit amet sit semper
2094
- pharetra. Sed dictumst dolor phasellus urna nisl auctor sit in vulputate.
2095
- </div>
2096
- </div>
2097
- <div class="eui-u-font-xs eui-u-color-primary-100">&lt;end of content&gt; &mdash; This last line must always be visible.</div>
2098
- `, dependencies: [{ kind: "directive", type: i16.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2099
- }
2100
- };
2101
- i011.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i011, type: LoremIpsumSampleComponent, decorators: [{
2102
- type: Component9,
2103
- args: [{ selector: "eui-showcase-doc-lorem-ipsum", template: `<div *ngIf="textSize === 'small'">
2104
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut volutpat enim. Etiam a mattis tortor. Etiam egestas magna at iaculis
2105
- malesuada. Etiam vulputate quam at consectetur pharetra.
2106
-
2107
- <div class="eui-u-mb-m">
2108
- Nunc sit amet lectus mattis, aliquam mi quis, iaculis est. Donec nec diam tristique, egestas lorem nec, varius neque. Aenean
2109
- consequat nisi in sem porttitor, a eleifend lorem tincidunt. Phasellus scelerisque tellus eu imperdiet dictum.
2110
- </div>
2111
- <div class="eui-u-mb-m">
2112
- Sed vitae tellus ac nisl facilisis posuere. Mauris cursus dui nec arcu molestie sodales. Morbi vel enim semper, luctus odio vitae,
2113
- lacinia nisl. Sed sollicitudin ex et nibh bibendum, id blandit nunc pretium. Nunc venenatis eros a leo tincidunt gravida.
2114
- </div>
2115
- <div class="eui-u-mb-m">Etiam pulvinar leo sit amet sapien pharetra, porta laoreet tellus consequat.</div>
2116
- </div>
2117
-
2118
- <div *ngIf="textSize === 'medium'">
2119
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut volutpat enim. Etiam a mattis tortor. Etiam egestas magna at iaculis
2120
- malesuada. Etiam vulputate quam at consectetur pharetra.
2121
-
2122
- <div class="eui-u-mb-m">
2123
- Duis vitae nibh iaculis augue fermentum placerat vel vitae lectus. Curabitur venenatis eros at eros ultrices, eu feugiat eros
2124
- efficitur. Sed quis nulla non augue scelerisque gravida vitae sed neque. Quisque semper dolor non diam sodales suscipit.
2125
- </div>
2126
- <div class="eui-u-mb-m">
2127
- Donec ut tortor scelerisque, sodales neque id, tempor orci. Suspendisse eu augue at nibh egestas eleifend. Ut tristique enim in
2128
- lectus aliquam, non tincidunt tortor vulputate. Phasellus eu nunc faucibus, porta ante nec, malesuada erat.
2129
- </div>
2130
- <div class="eui-u-mb-m">
2131
- Vestibulum hendrerit risus a libero gravida venenatis. Mauris non enim sit amet odio pellentesque scelerisque in et velit. Quisque
2132
- efficitur eros ut magna rutrum aliquet. Curabitur et nisi ullamcorper, pellentesque ligula vel, congue dui. Nullam commodo mi quis
2133
- nibh euismod interdum. In rutrum sapien ac viverra pretium.
2134
- </div>
2135
- <div class="eui-u-mb-m">
2136
- Ut eget tellus a magna fermentum tempor at id erat. Nam fringilla eros sed leo facilisis, et mollis orci elementum. Donec
2137
- consectetur libero sed arcu rhoncus, vel elementum augue mollis. Cras facilisis nisl mollis imperdiet mollis.
2138
- </div>
2139
- <div class="eui-u-mb-m">
2140
- Sed pharetra lorem in justo rhoncus tempor. Phasellus vel elit eget massa consectetur porttitor eu ut ex. Donec sed ex sit amet
2141
- purus blandit pharetra. Nam rhoncus dolor ac felis condimentum malesuada.
2142
- </div>
2143
- <div class="eui-u-mb-m">
2144
- Pellentesque convallis nulla in lectus molestie mollis. Pellentesque auctor libero eget dolor vehicula, a suscipit nunc laoreet.
2145
- Nulla suscipit ante in sollicitudin semper.
2146
- </div>
2147
- <div class="eui-u-mb-m">Nullam rutrum ante vitae metus interdum, quis laoreet sem maximus.</div>
2148
- <div class="eui-u-mb-m">
2149
- Pellentesque gravida diam quis orci suscipit hendrerit. Vestibulum congue sapien sed pretium gravida. Nullam ornare lectus sed
2150
- pulvinar fringilla. Nam dictum eros sit amet lectus aliquet tincidunt. Quisque eu augue eget felis tincidunt hendrerit. Aenean vel
2151
- lorem vel sem consequat congue.
2152
- </div>
2153
- <div class="eui-u-mb-m">Phasellus finibus libero at blandit sollicitudin. Praesent pulvinar libero a lorem scelerisque sodales.</div>
2154
- <div class="eui-u-mb-m">Donec tempor quam eget turpis dignissim egestas. Pellentesque vulputate nisi eu ornare euismod.</div>
2155
- </div>
2156
-
2157
- <div *ngIf="textSize === 'large'">
2158
- <div class="eui-u-mb-m">
2159
- Lorem ipsum dolor sit amet consectetur. Nec maecenas turpis eget curabitur. Neque accumsan nulla vestibulum vulputate. Etiam lorem
2160
- sit leo aliquam. Penatibus suspendisse sit in metus sodales pretium erat tempor. Congue aliquam varius nec pellentesque. Diam
2161
- tincidunt neque aliquam a natoque egestas nibh in urna. Volutpat enim erat magna sociis blandit odio ut convallis. Montes blandit
2162
- maecenas pellentesque magna. Ipsum at porta justo massa aliquet vulputate sit. Nec non semper urna morbi nec ut in eu. Tristique
2163
- morbi nam tempus id.
2164
- </div>
2165
- <div class="eui-u-mb-m">
2166
- Amet eu phasellus dignissim lacus. Pellentesque tristique sed leo eu mattis quam ut sem sed. Id lacus erat urna arcu ac risus
2167
- sodales. Scelerisque risus auctor erat mattis habitant facilisis. Orci velit nunc fermentum condimentum volutpat. Nec tellus at
2168
- risus cras. Malesuada ultrices vestibulum arcu sagittis quis purus. Sit ultricies suspendisse ante augue malesuada mattis eget
2169
- fermentum et. Lobortis et ridiculus turpis elit a mi faucibus. Sit vitae nunc etiam euismod massa nisi nibh arcu nulla. Elit ipsum
2170
- lorem vestibulum nulla senectus curabitur. Turpis non eu eu rhoncus. Dictum porttitor pulvinar commodo nec sapien est at erat et.
2171
- Nisl pellentesque pellentesque tempus tristique commodo eget urna tempor. Porta mi accumsan senectus risus eget.
2172
- </div>
2173
- <div class="eui-u-mb-m">
2174
- Velit vulputate amet id tellus. Quam aliquet eros hendrerit cursus id et amet in nam. Eget elementum diam ut magna porttitor. Cursus
2175
- neque vulputate malesuada congue enim. Ac in sed et justo adipiscing habitasse elit tincidunt dictum. Dui ornare ac ligula duis. Sit
2176
- mi a eu dictum est magna morbi. Morbi hendrerit non senectus sit platea gravida id. Fermentum vulputate arcu pretium cras elit.
2177
- </div>
2178
- <div class="eui-u-mb-m">
2179
- Enim et nunc eget ac commodo sagittis. Turpis facilisi enim enim nisi eu sed. Amet viverra felis in ac orci ullamcorper. At
2180
- ridiculus enim nec velit nulla luctus lorem non ultricies. Urna gravida sem curabitur quis diam ut porttitor aliquam sapien. Id
2181
- adipiscing libero feugiat imperdiet senectus mattis non nulla condimentum.
2182
- </div>
2183
- <div class="eui-u-mb-m">
2184
- Etiam felis parturient et amet. Enim neque eu risus ante tristique nisl nisl vulputate. Arcu turpis semper vitae ultrices sit
2185
- ultrices. Sed arcu pharetra vel sapien in. Turpis vestibulum tellus quis arcu egestas viverra cursus quisque. Eu volutpat mauris
2186
- sagittis integer fermentum fringilla penatibus. Velit et quis et arcu velit tortor.
2187
- </div>
2188
- <div class="eui-u-mb-m">
2189
- Nisl fringilla nibh eu nunc pellentesque dignissim vestibulum mus porttitor. Consequat non eu nulla lectus ultrices. Viverra duis
2190
- enim aliquet ut massa laoreet consequat. Sociis dignissim sodales vitae maecenas nec aliquam. Volutpat feugiat urna id sed. In
2191
- fringilla dui neque montes ut et lorem velit consequat. Ut fermentum amet dictum proin et. Aenean odio ac quisque ultrices tellus
2192
- mattis posuere et curabitur. Proin est suspendisse iaculis nullam eros sit amet aliquam laoreet. Libero tincidunt quis et odio
2193
- imperdiet risus neque. Odio et dui duis odio accumsan. Lacus nibh urna at risus euismod lobortis cursus. Porta risus mi gravida
2194
- aliquet. Leo viverra diam vulputate sollicitudin cursus erat sed.
2195
- </div>
2196
- <div class="eui-u-mb-m">
2197
- Erat consectetur sem nulla sed viverra ipsum adipiscing nunc. Porttitor eget sodales integer maecenas tortor quam sit pharetra
2198
- lorem. Egestas ut mauris urna vitae a mollis. Nam cursus amet sit dolor. Mattis mattis laoreet sed massa proin tristique ullamcorper
2199
- commodo. Sit in tortor posuere nec lorem fringilla.
2200
- </div>
2201
- <div class="eui-u-mb-m">
2202
- Fringilla elementum quisque vitae pharetra risus pellentesque eu nulla. Enim egestas velit est tempor ut vulputate tellus tincidunt
2203
- ut. Non enim lorem nec in mattis. Vitae nulla vitae lectus varius aliquet massa lectus morbi. Placerat vel consectetur commodo nibh
2204
- ullamcorper vitae tellus sed. Nisi lacus quis at malesuada elementum. Turpis et ut egestas adipiscing et ac. Auctor aliquam dictum
2205
- dolor diam sit tellus tempus. Elementum venenatis arcu id a. Duis imperdiet id elementum tempor facilisis rhoncus rhoncus posuere
2206
- egestas. Imperdiet odio lorem posuere sit. Molestie amet quisque tellus phasellus nisi. Lobortis mi faucibus elit semper. Ipsum eu
2207
- adipiscing fringilla at felis maecenas. Egestas tortor odio laoreet neque.
2208
- </div>
2209
- <div class="eui-u-mb-m">
2210
- Sollicitudin rhoncus nunc ultricies lorem massa sagittis integer elit. Consequat mauris elementum sed imperdiet libero odio non
2211
- amet. Tortor condimentum non convallis posuere pulvinar. Neque malesuada volutpat sit quis. Ac justo gravida vitae mollis. Ut tellus
2212
- nunc ultrices egestas vitae tellus sed. Pellentesque nunc id quisque scelerisque et pellentesque eu ultricies.
2213
- </div>
2214
- <div class="eui-u-mb-m">
2215
- Dolor rhoncus tempor netus sit mauris. Turpis curabitur amet eu lectus sem habitant magna non. Eros lorem eu lectus proin venenatis
2216
- tellus. Velit praesent consectetur ligula venenatis magna sed dictum. Quisque vivamus ipsum mattis morbi pulvinar bibendum. Netus
2217
- risus sit adipiscing augue augue eget est.
2218
- </div>
2219
- <div class="eui-u-mb-m">
2220
- Justo feugiat duis fames in luctus elit. Sit id in turpis quam habitasse amet ut sed sem. Ut luctus amet sit lacinia sed eu sed a
2221
- senectus. Fusce gravida augue quis bibendum aliquet. Quam egestas quam iaculis urna condimentum amet. Odio aliquam massa vel
2222
- vestibulum tincidunt dolor tincidunt netus facilisi. Ut sociis metus pellentesque leo amet. Diam lectus pretium id tincidunt
2223
- habitasse. Eget tortor quisque tristique scelerisque quam vestibulum morbi ornare pellentesque. Nunc eget volutpat id mauris amet ut
2224
- aliquet nunc dictumst. Elit blandit a suspendisse commodo. Velit quis ut varius leo pharetra risus leo eget.
2225
- </div>
2226
- <div class="eui-u-mb-m">
2227
- Consequat phasellus ullamcorper mauris id tortor ultrices nunc. Lacinia eu sapien rhoncus lacinia sed augue justo molestie ornare.
2228
- Integer ridiculus gravida pulvinar iaculis nisl eleifend senectus. Imperdiet vitae orci massa ac eget etiam est nulla. Netus nibh
2229
- ipsum auctor eros nunc aliquam enim. Donec pretium vel amet blandit sed quisque sed. Tempor ipsum nunc leo ultricies ut. Odio tellus
2230
- ultricies diam cras. Diam maecenas amet gravida nunc. Feugiat egestas eget ullamcorper consequat. Varius faucibus nisl dolor dolor
2231
- diam ultrices odio iaculis lorem. Egestas tristique est egestas ornare. Tortor eu orci orci posuere blandit amet sit semper
2232
- pharetra. Sed dictumst dolor phasellus urna nisl auctor sit in vulputate.
2233
- </div>
2234
- </div>
2235
- <div class="eui-u-font-xs eui-u-color-primary-100">&lt;end of content&gt; &mdash; This last line must always be visible.</div>
2236
- ` }]
2237
- }], propDecorators: { textSize: [{
2238
- type: Input8
2239
- }] } });
2240
-
2241
- // lib/components/playground/playground.component.mjs
2242
- import { Component as Component10, ElementRef as ElementRef2, inject as inject2, Input as Input9, ViewChild as ViewChild4 } from "@angular/core";
2243
- import sdk2 from "@stackblitz/sdk";
2244
- import * as i012 from "@angular/core";
2245
- import * as i17 from "@eui/components/eui-block-content";
2246
- var PlaygroundComponent = class _PlaygroundComponent {
2247
- constructor() {
2248
- this.title = "eUI Playground";
2249
- this.activated = false;
2250
- this.isLoaded = false;
2251
- this.sb = inject2(StackblitzService);
2252
- }
2253
- ngOnChanges(changes) {
2254
- if (changes.activated) {
2255
- if (changes.activated.currentValue) {
2256
- this.initStackblitz();
2257
- } else {
1243
+ toggleCode() {
1244
+ this.dialog.openDialog();
1245
+ }
1246
+ onClose() {
1247
+ this.dialog.closeDialog();
1248
+ }
1249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageCodeModalComponent, deps: [{ token: i3.EuiAppShellService }], target: i0.ɵɵFactoryTarget.Component }); }
1250
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageCodeModalComponent, selector: "eui-showcase-doc-page-code-modal", inputs: { width: "width" }, viewQueries: [{ propertyName: "dialog", first: true, predicate: ["dialog"], descendants: true }], ngImport: i0, template: "<button type=\"button\" euiButton euiAccent (click)=\"toggleCode()\">\n <span euiLabel>Check the code</span>\n <eui-icon-svg icon=\"eui-code\"></eui-icon-svg>\n</button>\n\n<eui-dialog #dialog title=\"Page source code\" [hasFooter]=\"false\" (close)=\"onClose()\" [width]=\"width\">\n <ng-content></ng-content>\n</eui-dialog>\n", dependencies: [{ kind: "component", type: i2$2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i3$2.EuiDialogComponent, selector: "eui-dialog", inputs: ["e2eAttr", "title", "acceptLabel", "dismissLabel", "typeClass", "verticalPosition", "width", "height", "isFullScreen", "hasCloseButton", "hasAcceptButton", "hasDismissButton", "hasMobileCustomSize", "isClosedOnClickOutside", "hasClosedOnClickOutside", "isClosedOnEscape", "hasClosedOnEscape", "isHandleCloseOnDismiss", "isHandleCloseOnClose", "isHandleCloseOnAccept", "isHandleCloseOnClickOutside", "isHandleCloseOnEscape", "isMessageBox", "isDraggable", "hasNoBodyPadding", "hasFooter"], outputs: ["clickOutside", "escape", "dialogOpen", "dialogClose", "dismiss", "accept"] }, { kind: "component", type: i10.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i11.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }] }); }
1251
+ }
1252
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageCodeModalComponent, decorators: [{
1253
+ type: Component,
1254
+ args: [{ selector: 'eui-showcase-doc-page-code-modal', template: "<button type=\"button\" euiButton euiAccent (click)=\"toggleCode()\">\n <span euiLabel>Check the code</span>\n <eui-icon-svg icon=\"eui-code\"></eui-icon-svg>\n</button>\n\n<eui-dialog #dialog title=\"Page source code\" [hasFooter]=\"false\" (close)=\"onClose()\" [width]=\"width\">\n <ng-content></ng-content>\n</eui-dialog>\n" }]
1255
+ }], ctorParameters: () => [{ type: i3.EuiAppShellService }], propDecorators: { width: [{
1256
+ type: Input
1257
+ }], dialog: [{
1258
+ type: ViewChild,
1259
+ args: ['dialog']
1260
+ }] } });
1261
+
1262
+ class DocPageCodeFabComponent {
1263
+ constructor(asService) {
1264
+ this.asService = asService;
1265
+ this.codeFolder = '';
1266
+ this.showcase = 'design-patterns';
1267
+ }
1268
+ toggleCode() {
1269
+ this.dialog.openDialog();
1270
+ }
1271
+ onClose() {
1272
+ this.dialog.closeDialog();
1273
+ }
1274
+ onOpenCode() {
1275
+ // eslint-disable-next-line max-len
1276
+ const showcaseRoot = 'https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/app-eui-showcase-ux-components/browse/src/app/features';
1277
+ const sourceRootPath = `${showcaseRoot}/showcase-${this.showcase}/`;
1278
+ window.open(sourceRootPath + this.codeFolder, '_blank');
1279
+ }
1280
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageCodeFabComponent, deps: [{ token: i3.EuiAppShellService }], target: i0.ɵɵFactoryTarget.Component }); }
1281
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPageCodeFabComponent, selector: "eui-showcase-doc-page-code-fab", inputs: { codeFolder: "codeFolder", showcase: "showcase" }, viewQueries: [{ propertyName: "dialog", first: true, predicate: ["dialog"], descendants: true }], ngImport: i0, template: "<div class=\"eui-button-fixed\">\n <div class=\"eui-button-floating eui-button--size-2xl eui-button--icon-only eui-u-c-bg-accent eui--accent\">\n <eui-icon-svg icon=\"eui-code\" size=\"l\" (click)=\"toggleCode()\"></eui-icon-svg>\n </div>\n</div>\n\n<eui-dialog #dialog title=\"Page source code\" [hasFooter]=\"false\" (close)=\"onClose()\" [width]=\"'50vw'\">\n <button type=\"button\" *ngIf=\"codeFolder\" euiButton euiAccent euiSizeS (click)=\"onOpenCode()\">\n <eui-icon-svg icon=\"eui-code\" set=\"eui\" size=\"m\" fillColor=\"grey-100\" class=\"eui-u-mr-xs\"></eui-icon-svg> VIEW SOURCES\n </button>\n <ng-content></ng-content>\n <p class=\"eui-u-text-paragraph\">Use the <kbd class=\"eui-u-text-kbd\">View sources</kbd> button to access the code source of the page.</p>\n</eui-dialog>\n", dependencies: [{ kind: "directive", type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i3$2.EuiDialogComponent, selector: "eui-dialog", inputs: ["e2eAttr", "title", "acceptLabel", "dismissLabel", "typeClass", "verticalPosition", "width", "height", "isFullScreen", "hasCloseButton", "hasAcceptButton", "hasDismissButton", "hasMobileCustomSize", "isClosedOnClickOutside", "hasClosedOnClickOutside", "isClosedOnEscape", "hasClosedOnEscape", "isHandleCloseOnDismiss", "isHandleCloseOnClose", "isHandleCloseOnAccept", "isHandleCloseOnClickOutside", "isHandleCloseOnEscape", "isMessageBox", "isDraggable", "hasNoBodyPadding", "hasFooter"], outputs: ["clickOutside", "escape", "dialogOpen", "dialogClose", "dismiss", "accept"] }, { kind: "component", type: i10.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }] }); }
1282
+ }
1283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPageCodeFabComponent, decorators: [{
1284
+ type: Component,
1285
+ args: [{ selector: 'eui-showcase-doc-page-code-fab', template: "<div class=\"eui-button-fixed\">\n <div class=\"eui-button-floating eui-button--size-2xl eui-button--icon-only eui-u-c-bg-accent eui--accent\">\n <eui-icon-svg icon=\"eui-code\" size=\"l\" (click)=\"toggleCode()\"></eui-icon-svg>\n </div>\n</div>\n\n<eui-dialog #dialog title=\"Page source code\" [hasFooter]=\"false\" (close)=\"onClose()\" [width]=\"'50vw'\">\n <button type=\"button\" *ngIf=\"codeFolder\" euiButton euiAccent euiSizeS (click)=\"onOpenCode()\">\n <eui-icon-svg icon=\"eui-code\" set=\"eui\" size=\"m\" fillColor=\"grey-100\" class=\"eui-u-mr-xs\"></eui-icon-svg> VIEW SOURCES\n </button>\n <ng-content></ng-content>\n <p class=\"eui-u-text-paragraph\">Use the <kbd class=\"eui-u-text-kbd\">View sources</kbd> button to access the code source of the page.</p>\n</eui-dialog>\n" }]
1286
+ }], ctorParameters: () => [{ type: i3.EuiAppShellService }], propDecorators: { codeFolder: [{
1287
+ type: Input
1288
+ }], showcase: [{
1289
+ type: Input
1290
+ }], dialog: [{
1291
+ type: ViewChild,
1292
+ args: ['dialog']
1293
+ }] } });
1294
+
1295
+ class LoremIpsumSampleComponent {
1296
+ constructor() {
1297
+ this.textSize = 'large';
1298
+ }
1299
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: LoremIpsumSampleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1300
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: LoremIpsumSampleComponent, selector: "eui-showcase-doc-lorem-ipsum", inputs: { textSize: "textSize" }, ngImport: i0, template: "<div *ngIf=\"textSize === 'small'\">\n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut volutpat enim. Etiam a mattis tortor. Etiam egestas magna at iaculis\n malesuada. Etiam vulputate quam at consectetur pharetra.\n\n <div class=\"eui-u-mb-m\">\n Nunc sit amet lectus mattis, aliquam mi quis, iaculis est. Donec nec diam tristique, egestas lorem nec, varius neque. Aenean\n consequat nisi in sem porttitor, a eleifend lorem tincidunt. Phasellus scelerisque tellus eu imperdiet dictum.\n </div>\n <div class=\"eui-u-mb-m\">\n Sed vitae tellus ac nisl facilisis posuere. Mauris cursus dui nec arcu molestie sodales. Morbi vel enim semper, luctus odio vitae,\n lacinia nisl. Sed sollicitudin ex et nibh bibendum, id blandit nunc pretium. Nunc venenatis eros a leo tincidunt gravida.\n </div>\n <div class=\"eui-u-mb-m\">Etiam pulvinar leo sit amet sapien pharetra, porta laoreet tellus consequat.</div>\n</div>\n\n<div *ngIf=\"textSize === 'medium'\">\n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut volutpat enim. Etiam a mattis tortor. Etiam egestas magna at iaculis\n malesuada. Etiam vulputate quam at consectetur pharetra.\n\n <div class=\"eui-u-mb-m\">\n Duis vitae nibh iaculis augue fermentum placerat vel vitae lectus. Curabitur venenatis eros at eros ultrices, eu feugiat eros\n efficitur. Sed quis nulla non augue scelerisque gravida vitae sed neque. Quisque semper dolor non diam sodales suscipit.\n </div>\n <div class=\"eui-u-mb-m\">\n Donec ut tortor scelerisque, sodales neque id, tempor orci. Suspendisse eu augue at nibh egestas eleifend. Ut tristique enim in\n lectus aliquam, non tincidunt tortor vulputate. Phasellus eu nunc faucibus, porta ante nec, malesuada erat.\n </div>\n <div class=\"eui-u-mb-m\">\n Vestibulum hendrerit risus a libero gravida venenatis. Mauris non enim sit amet odio pellentesque scelerisque in et velit. Quisque\n efficitur eros ut magna rutrum aliquet. Curabitur et nisi ullamcorper, pellentesque ligula vel, congue dui. Nullam commodo mi quis\n nibh euismod interdum. In rutrum sapien ac viverra pretium.\n </div>\n <div class=\"eui-u-mb-m\">\n Ut eget tellus a magna fermentum tempor at id erat. Nam fringilla eros sed leo facilisis, et mollis orci elementum. Donec\n consectetur libero sed arcu rhoncus, vel elementum augue mollis. Cras facilisis nisl mollis imperdiet mollis.\n </div>\n <div class=\"eui-u-mb-m\">\n Sed pharetra lorem in justo rhoncus tempor. Phasellus vel elit eget massa consectetur porttitor eu ut ex. Donec sed ex sit amet\n purus blandit pharetra. Nam rhoncus dolor ac felis condimentum malesuada.\n </div>\n <div class=\"eui-u-mb-m\">\n Pellentesque convallis nulla in lectus molestie mollis. Pellentesque auctor libero eget dolor vehicula, a suscipit nunc laoreet.\n Nulla suscipit ante in sollicitudin semper.\n </div>\n <div class=\"eui-u-mb-m\">Nullam rutrum ante vitae metus interdum, quis laoreet sem maximus.</div>\n <div class=\"eui-u-mb-m\">\n Pellentesque gravida diam quis orci suscipit hendrerit. Vestibulum congue sapien sed pretium gravida. Nullam ornare lectus sed\n pulvinar fringilla. Nam dictum eros sit amet lectus aliquet tincidunt. Quisque eu augue eget felis tincidunt hendrerit. Aenean vel\n lorem vel sem consequat congue.\n </div>\n <div class=\"eui-u-mb-m\">Phasellus finibus libero at blandit sollicitudin. Praesent pulvinar libero a lorem scelerisque sodales.</div>\n <div class=\"eui-u-mb-m\">Donec tempor quam eget turpis dignissim egestas. Pellentesque vulputate nisi eu ornare euismod.</div>\n</div>\n\n<div *ngIf=\"textSize === 'large'\">\n <div class=\"eui-u-mb-m\">\n Lorem ipsum dolor sit amet consectetur. Nec maecenas turpis eget curabitur. Neque accumsan nulla vestibulum vulputate. Etiam lorem\n sit leo aliquam. Penatibus suspendisse sit in metus sodales pretium erat tempor. Congue aliquam varius nec pellentesque. Diam\n tincidunt neque aliquam a natoque egestas nibh in urna. Volutpat enim erat magna sociis blandit odio ut convallis. Montes blandit\n maecenas pellentesque magna. Ipsum at porta justo massa aliquet vulputate sit. Nec non semper urna morbi nec ut in eu. Tristique\n morbi nam tempus id.\n </div>\n <div class=\"eui-u-mb-m\">\n Amet eu phasellus dignissim lacus. Pellentesque tristique sed leo eu mattis quam ut sem sed. Id lacus erat urna arcu ac risus\n sodales. Scelerisque risus auctor erat mattis habitant facilisis. Orci velit nunc fermentum condimentum volutpat. Nec tellus at\n risus cras. Malesuada ultrices vestibulum arcu sagittis quis purus. Sit ultricies suspendisse ante augue malesuada mattis eget\n fermentum et. Lobortis et ridiculus turpis elit a mi faucibus. Sit vitae nunc etiam euismod massa nisi nibh arcu nulla. Elit ipsum\n lorem vestibulum nulla senectus curabitur. Turpis non eu eu rhoncus. Dictum porttitor pulvinar commodo nec sapien est at erat et.\n Nisl pellentesque pellentesque tempus tristique commodo eget urna tempor. Porta mi accumsan senectus risus eget.\n </div>\n <div class=\"eui-u-mb-m\">\n Velit vulputate amet id tellus. Quam aliquet eros hendrerit cursus id et amet in nam. Eget elementum diam ut magna porttitor. Cursus\n neque vulputate malesuada congue enim. Ac in sed et justo adipiscing habitasse elit tincidunt dictum. Dui ornare ac ligula duis. Sit\n mi a eu dictum est magna morbi. Morbi hendrerit non senectus sit platea gravida id. Fermentum vulputate arcu pretium cras elit.\n </div>\n <div class=\"eui-u-mb-m\">\n Enim et nunc eget ac commodo sagittis. Turpis facilisi enim enim nisi eu sed. Amet viverra felis in ac orci ullamcorper. At\n ridiculus enim nec velit nulla luctus lorem non ultricies. Urna gravida sem curabitur quis diam ut porttitor aliquam sapien. Id\n adipiscing libero feugiat imperdiet senectus mattis non nulla condimentum.\n </div>\n <div class=\"eui-u-mb-m\">\n Etiam felis parturient et amet. Enim neque eu risus ante tristique nisl nisl vulputate. Arcu turpis semper vitae ultrices sit\n ultrices. Sed arcu pharetra vel sapien in. Turpis vestibulum tellus quis arcu egestas viverra cursus quisque. Eu volutpat mauris\n sagittis integer fermentum fringilla penatibus. Velit et quis et arcu velit tortor.\n </div>\n <div class=\"eui-u-mb-m\">\n Nisl fringilla nibh eu nunc pellentesque dignissim vestibulum mus porttitor. Consequat non eu nulla lectus ultrices. Viverra duis\n enim aliquet ut massa laoreet consequat. Sociis dignissim sodales vitae maecenas nec aliquam. Volutpat feugiat urna id sed. In\n fringilla dui neque montes ut et lorem velit consequat. Ut fermentum amet dictum proin et. Aenean odio ac quisque ultrices tellus\n mattis posuere et curabitur. Proin est suspendisse iaculis nullam eros sit amet aliquam laoreet. Libero tincidunt quis et odio\n imperdiet risus neque. Odio et dui duis odio accumsan. Lacus nibh urna at risus euismod lobortis cursus. Porta risus mi gravida\n aliquet. Leo viverra diam vulputate sollicitudin cursus erat sed.\n </div>\n <div class=\"eui-u-mb-m\">\n Erat consectetur sem nulla sed viverra ipsum adipiscing nunc. Porttitor eget sodales integer maecenas tortor quam sit pharetra\n lorem. Egestas ut mauris urna vitae a mollis. Nam cursus amet sit dolor. Mattis mattis laoreet sed massa proin tristique ullamcorper\n commodo. Sit in tortor posuere nec lorem fringilla.\n </div>\n <div class=\"eui-u-mb-m\">\n Fringilla elementum quisque vitae pharetra risus pellentesque eu nulla. Enim egestas velit est tempor ut vulputate tellus tincidunt\n ut. Non enim lorem nec in mattis. Vitae nulla vitae lectus varius aliquet massa lectus morbi. Placerat vel consectetur commodo nibh\n ullamcorper vitae tellus sed. Nisi lacus quis at malesuada elementum. Turpis et ut egestas adipiscing et ac. Auctor aliquam dictum\n dolor diam sit tellus tempus. Elementum venenatis arcu id a. Duis imperdiet id elementum tempor facilisis rhoncus rhoncus posuere\n egestas. Imperdiet odio lorem posuere sit. Molestie amet quisque tellus phasellus nisi. Lobortis mi faucibus elit semper. Ipsum eu\n adipiscing fringilla at felis maecenas. Egestas tortor odio laoreet neque.\n </div>\n <div class=\"eui-u-mb-m\">\n Sollicitudin rhoncus nunc ultricies lorem massa sagittis integer elit. Consequat mauris elementum sed imperdiet libero odio non\n amet. Tortor condimentum non convallis posuere pulvinar. Neque malesuada volutpat sit quis. Ac justo gravida vitae mollis. Ut tellus\n nunc ultrices egestas vitae tellus sed. Pellentesque nunc id quisque scelerisque et pellentesque eu ultricies.\n </div>\n <div class=\"eui-u-mb-m\">\n Dolor rhoncus tempor netus sit mauris. Turpis curabitur amet eu lectus sem habitant magna non. Eros lorem eu lectus proin venenatis\n tellus. Velit praesent consectetur ligula venenatis magna sed dictum. Quisque vivamus ipsum mattis morbi pulvinar bibendum. Netus\n risus sit adipiscing augue augue eget est.\n </div>\n <div class=\"eui-u-mb-m\">\n Justo feugiat duis fames in luctus elit. Sit id in turpis quam habitasse amet ut sed sem. Ut luctus amet sit lacinia sed eu sed a\n senectus. Fusce gravida augue quis bibendum aliquet. Quam egestas quam iaculis urna condimentum amet. Odio aliquam massa vel\n vestibulum tincidunt dolor tincidunt netus facilisi. Ut sociis metus pellentesque leo amet. Diam lectus pretium id tincidunt\n habitasse. Eget tortor quisque tristique scelerisque quam vestibulum morbi ornare pellentesque. Nunc eget volutpat id mauris amet ut\n aliquet nunc dictumst. Elit blandit a suspendisse commodo. Velit quis ut varius leo pharetra risus leo eget.\n </div>\n <div class=\"eui-u-mb-m\">\n Consequat phasellus ullamcorper mauris id tortor ultrices nunc. Lacinia eu sapien rhoncus lacinia sed augue justo molestie ornare.\n Integer ridiculus gravida pulvinar iaculis nisl eleifend senectus. Imperdiet vitae orci massa ac eget etiam est nulla. Netus nibh\n ipsum auctor eros nunc aliquam enim. Donec pretium vel amet blandit sed quisque sed. Tempor ipsum nunc leo ultricies ut. Odio tellus\n ultricies diam cras. Diam maecenas amet gravida nunc. Feugiat egestas eget ullamcorper consequat. Varius faucibus nisl dolor dolor\n diam ultrices odio iaculis lorem. Egestas tristique est egestas ornare. Tortor eu orci orci posuere blandit amet sit semper\n pharetra. Sed dictumst dolor phasellus urna nisl auctor sit in vulputate.\n </div>\n</div>\n<div class=\"eui-u-font-xs eui-u-color-primary-100\">&lt;end of content&gt; &mdash; This last line must always be visible.</div>\n", dependencies: [{ kind: "directive", type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1301
+ }
1302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: LoremIpsumSampleComponent, decorators: [{
1303
+ type: Component,
1304
+ args: [{ selector: 'eui-showcase-doc-lorem-ipsum', template: "<div *ngIf=\"textSize === 'small'\">\n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut volutpat enim. Etiam a mattis tortor. Etiam egestas magna at iaculis\n malesuada. Etiam vulputate quam at consectetur pharetra.\n\n <div class=\"eui-u-mb-m\">\n Nunc sit amet lectus mattis, aliquam mi quis, iaculis est. Donec nec diam tristique, egestas lorem nec, varius neque. Aenean\n consequat nisi in sem porttitor, a eleifend lorem tincidunt. Phasellus scelerisque tellus eu imperdiet dictum.\n </div>\n <div class=\"eui-u-mb-m\">\n Sed vitae tellus ac nisl facilisis posuere. Mauris cursus dui nec arcu molestie sodales. Morbi vel enim semper, luctus odio vitae,\n lacinia nisl. Sed sollicitudin ex et nibh bibendum, id blandit nunc pretium. Nunc venenatis eros a leo tincidunt gravida.\n </div>\n <div class=\"eui-u-mb-m\">Etiam pulvinar leo sit amet sapien pharetra, porta laoreet tellus consequat.</div>\n</div>\n\n<div *ngIf=\"textSize === 'medium'\">\n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut volutpat enim. Etiam a mattis tortor. Etiam egestas magna at iaculis\n malesuada. Etiam vulputate quam at consectetur pharetra.\n\n <div class=\"eui-u-mb-m\">\n Duis vitae nibh iaculis augue fermentum placerat vel vitae lectus. Curabitur venenatis eros at eros ultrices, eu feugiat eros\n efficitur. Sed quis nulla non augue scelerisque gravida vitae sed neque. Quisque semper dolor non diam sodales suscipit.\n </div>\n <div class=\"eui-u-mb-m\">\n Donec ut tortor scelerisque, sodales neque id, tempor orci. Suspendisse eu augue at nibh egestas eleifend. Ut tristique enim in\n lectus aliquam, non tincidunt tortor vulputate. Phasellus eu nunc faucibus, porta ante nec, malesuada erat.\n </div>\n <div class=\"eui-u-mb-m\">\n Vestibulum hendrerit risus a libero gravida venenatis. Mauris non enim sit amet odio pellentesque scelerisque in et velit. Quisque\n efficitur eros ut magna rutrum aliquet. Curabitur et nisi ullamcorper, pellentesque ligula vel, congue dui. Nullam commodo mi quis\n nibh euismod interdum. In rutrum sapien ac viverra pretium.\n </div>\n <div class=\"eui-u-mb-m\">\n Ut eget tellus a magna fermentum tempor at id erat. Nam fringilla eros sed leo facilisis, et mollis orci elementum. Donec\n consectetur libero sed arcu rhoncus, vel elementum augue mollis. Cras facilisis nisl mollis imperdiet mollis.\n </div>\n <div class=\"eui-u-mb-m\">\n Sed pharetra lorem in justo rhoncus tempor. Phasellus vel elit eget massa consectetur porttitor eu ut ex. Donec sed ex sit amet\n purus blandit pharetra. Nam rhoncus dolor ac felis condimentum malesuada.\n </div>\n <div class=\"eui-u-mb-m\">\n Pellentesque convallis nulla in lectus molestie mollis. Pellentesque auctor libero eget dolor vehicula, a suscipit nunc laoreet.\n Nulla suscipit ante in sollicitudin semper.\n </div>\n <div class=\"eui-u-mb-m\">Nullam rutrum ante vitae metus interdum, quis laoreet sem maximus.</div>\n <div class=\"eui-u-mb-m\">\n Pellentesque gravida diam quis orci suscipit hendrerit. Vestibulum congue sapien sed pretium gravida. Nullam ornare lectus sed\n pulvinar fringilla. Nam dictum eros sit amet lectus aliquet tincidunt. Quisque eu augue eget felis tincidunt hendrerit. Aenean vel\n lorem vel sem consequat congue.\n </div>\n <div class=\"eui-u-mb-m\">Phasellus finibus libero at blandit sollicitudin. Praesent pulvinar libero a lorem scelerisque sodales.</div>\n <div class=\"eui-u-mb-m\">Donec tempor quam eget turpis dignissim egestas. Pellentesque vulputate nisi eu ornare euismod.</div>\n</div>\n\n<div *ngIf=\"textSize === 'large'\">\n <div class=\"eui-u-mb-m\">\n Lorem ipsum dolor sit amet consectetur. Nec maecenas turpis eget curabitur. Neque accumsan nulla vestibulum vulputate. Etiam lorem\n sit leo aliquam. Penatibus suspendisse sit in metus sodales pretium erat tempor. Congue aliquam varius nec pellentesque. Diam\n tincidunt neque aliquam a natoque egestas nibh in urna. Volutpat enim erat magna sociis blandit odio ut convallis. Montes blandit\n maecenas pellentesque magna. Ipsum at porta justo massa aliquet vulputate sit. Nec non semper urna morbi nec ut in eu. Tristique\n morbi nam tempus id.\n </div>\n <div class=\"eui-u-mb-m\">\n Amet eu phasellus dignissim lacus. Pellentesque tristique sed leo eu mattis quam ut sem sed. Id lacus erat urna arcu ac risus\n sodales. Scelerisque risus auctor erat mattis habitant facilisis. Orci velit nunc fermentum condimentum volutpat. Nec tellus at\n risus cras. Malesuada ultrices vestibulum arcu sagittis quis purus. Sit ultricies suspendisse ante augue malesuada mattis eget\n fermentum et. Lobortis et ridiculus turpis elit a mi faucibus. Sit vitae nunc etiam euismod massa nisi nibh arcu nulla. Elit ipsum\n lorem vestibulum nulla senectus curabitur. Turpis non eu eu rhoncus. Dictum porttitor pulvinar commodo nec sapien est at erat et.\n Nisl pellentesque pellentesque tempus tristique commodo eget urna tempor. Porta mi accumsan senectus risus eget.\n </div>\n <div class=\"eui-u-mb-m\">\n Velit vulputate amet id tellus. Quam aliquet eros hendrerit cursus id et amet in nam. Eget elementum diam ut magna porttitor. Cursus\n neque vulputate malesuada congue enim. Ac in sed et justo adipiscing habitasse elit tincidunt dictum. Dui ornare ac ligula duis. Sit\n mi a eu dictum est magna morbi. Morbi hendrerit non senectus sit platea gravida id. Fermentum vulputate arcu pretium cras elit.\n </div>\n <div class=\"eui-u-mb-m\">\n Enim et nunc eget ac commodo sagittis. Turpis facilisi enim enim nisi eu sed. Amet viverra felis in ac orci ullamcorper. At\n ridiculus enim nec velit nulla luctus lorem non ultricies. Urna gravida sem curabitur quis diam ut porttitor aliquam sapien. Id\n adipiscing libero feugiat imperdiet senectus mattis non nulla condimentum.\n </div>\n <div class=\"eui-u-mb-m\">\n Etiam felis parturient et amet. Enim neque eu risus ante tristique nisl nisl vulputate. Arcu turpis semper vitae ultrices sit\n ultrices. Sed arcu pharetra vel sapien in. Turpis vestibulum tellus quis arcu egestas viverra cursus quisque. Eu volutpat mauris\n sagittis integer fermentum fringilla penatibus. Velit et quis et arcu velit tortor.\n </div>\n <div class=\"eui-u-mb-m\">\n Nisl fringilla nibh eu nunc pellentesque dignissim vestibulum mus porttitor. Consequat non eu nulla lectus ultrices. Viverra duis\n enim aliquet ut massa laoreet consequat. Sociis dignissim sodales vitae maecenas nec aliquam. Volutpat feugiat urna id sed. In\n fringilla dui neque montes ut et lorem velit consequat. Ut fermentum amet dictum proin et. Aenean odio ac quisque ultrices tellus\n mattis posuere et curabitur. Proin est suspendisse iaculis nullam eros sit amet aliquam laoreet. Libero tincidunt quis et odio\n imperdiet risus neque. Odio et dui duis odio accumsan. Lacus nibh urna at risus euismod lobortis cursus. Porta risus mi gravida\n aliquet. Leo viverra diam vulputate sollicitudin cursus erat sed.\n </div>\n <div class=\"eui-u-mb-m\">\n Erat consectetur sem nulla sed viverra ipsum adipiscing nunc. Porttitor eget sodales integer maecenas tortor quam sit pharetra\n lorem. Egestas ut mauris urna vitae a mollis. Nam cursus amet sit dolor. Mattis mattis laoreet sed massa proin tristique ullamcorper\n commodo. Sit in tortor posuere nec lorem fringilla.\n </div>\n <div class=\"eui-u-mb-m\">\n Fringilla elementum quisque vitae pharetra risus pellentesque eu nulla. Enim egestas velit est tempor ut vulputate tellus tincidunt\n ut. Non enim lorem nec in mattis. Vitae nulla vitae lectus varius aliquet massa lectus morbi. Placerat vel consectetur commodo nibh\n ullamcorper vitae tellus sed. Nisi lacus quis at malesuada elementum. Turpis et ut egestas adipiscing et ac. Auctor aliquam dictum\n dolor diam sit tellus tempus. Elementum venenatis arcu id a. Duis imperdiet id elementum tempor facilisis rhoncus rhoncus posuere\n egestas. Imperdiet odio lorem posuere sit. Molestie amet quisque tellus phasellus nisi. Lobortis mi faucibus elit semper. Ipsum eu\n adipiscing fringilla at felis maecenas. Egestas tortor odio laoreet neque.\n </div>\n <div class=\"eui-u-mb-m\">\n Sollicitudin rhoncus nunc ultricies lorem massa sagittis integer elit. Consequat mauris elementum sed imperdiet libero odio non\n amet. Tortor condimentum non convallis posuere pulvinar. Neque malesuada volutpat sit quis. Ac justo gravida vitae mollis. Ut tellus\n nunc ultrices egestas vitae tellus sed. Pellentesque nunc id quisque scelerisque et pellentesque eu ultricies.\n </div>\n <div class=\"eui-u-mb-m\">\n Dolor rhoncus tempor netus sit mauris. Turpis curabitur amet eu lectus sem habitant magna non. Eros lorem eu lectus proin venenatis\n tellus. Velit praesent consectetur ligula venenatis magna sed dictum. Quisque vivamus ipsum mattis morbi pulvinar bibendum. Netus\n risus sit adipiscing augue augue eget est.\n </div>\n <div class=\"eui-u-mb-m\">\n Justo feugiat duis fames in luctus elit. Sit id in turpis quam habitasse amet ut sed sem. Ut luctus amet sit lacinia sed eu sed a\n senectus. Fusce gravida augue quis bibendum aliquet. Quam egestas quam iaculis urna condimentum amet. Odio aliquam massa vel\n vestibulum tincidunt dolor tincidunt netus facilisi. Ut sociis metus pellentesque leo amet. Diam lectus pretium id tincidunt\n habitasse. Eget tortor quisque tristique scelerisque quam vestibulum morbi ornare pellentesque. Nunc eget volutpat id mauris amet ut\n aliquet nunc dictumst. Elit blandit a suspendisse commodo. Velit quis ut varius leo pharetra risus leo eget.\n </div>\n <div class=\"eui-u-mb-m\">\n Consequat phasellus ullamcorper mauris id tortor ultrices nunc. Lacinia eu sapien rhoncus lacinia sed augue justo molestie ornare.\n Integer ridiculus gravida pulvinar iaculis nisl eleifend senectus. Imperdiet vitae orci massa ac eget etiam est nulla. Netus nibh\n ipsum auctor eros nunc aliquam enim. Donec pretium vel amet blandit sed quisque sed. Tempor ipsum nunc leo ultricies ut. Odio tellus\n ultricies diam cras. Diam maecenas amet gravida nunc. Feugiat egestas eget ullamcorper consequat. Varius faucibus nisl dolor dolor\n diam ultrices odio iaculis lorem. Egestas tristique est egestas ornare. Tortor eu orci orci posuere blandit amet sit semper\n pharetra. Sed dictumst dolor phasellus urna nisl auctor sit in vulputate.\n </div>\n</div>\n<div class=\"eui-u-font-xs eui-u-color-primary-100\">&lt;end of content&gt; &mdash; This last line must always be visible.</div>\n" }]
1305
+ }], propDecorators: { textSize: [{
1306
+ type: Input
1307
+ }] } });
1308
+
1309
+ class PlaygroundComponent {
1310
+ constructor() {
1311
+ this.title = 'eUI Playground';
1312
+ this.activated = false;
2258
1313
  this.isLoaded = false;
2259
- }
1314
+ this.sb = inject(StackblitzService);
2260
1315
  }
2261
- }
2262
- initStackblitz() {
2263
- this.sb.getStackblitzDependencies().then((deps) => {
2264
- const { dependencies, devDependencies } = deps;
2265
- const { selector } = this.sb.extractComponentMetadata(this.typescriptContent);
2266
- const moduleName = this.sb.extractModuleName(this.typescriptContent);
2267
- const componentName = this.sb.extractComponentName(this.typescriptContent);
2268
- const project = {
2269
- title: this.title,
2270
- description: `An eUI example for the ${this.title}.`,
2271
- template: "angular-cli",
2272
- files: {
2273
- "src/component.html": this.htmlContent,
2274
- "src/component.ts": this.sb.appendVitalNgModules(this.typescriptContent),
2275
- "src/main.ts": mainFile(moduleName, componentName),
2276
- "src/polyfills.ts": polyfillsFile,
2277
- "src/index.html": indexHtmlFile(selector),
2278
- "angular.json": angularJsonFile,
2279
- "package.json": JSON.stringify({
2280
- ...PACKAGE_JSON,
2281
- dependencies,
2282
- devDependencies
2283
- }, null, 2),
2284
- "tsconfig.json": tsConfig
2285
- },
2286
- settings: {
2287
- compile: {
2288
- trigger: "auto",
2289
- clearConsole: true
2290
- }
2291
- },
2292
- dependencies
2293
- };
2294
- return sdk2.embedProject(`stackblitz-${this.sampleId}`, project, {
2295
- height: 500,
2296
- openFile: ["src/component.ts", "src/component.html"]
2297
- });
2298
- }).then((instance) => {
2299
- this.stackblitzInstance = instance;
2300
- this.isLoaded = true;
2301
- });
2302
- }
2303
- static {
2304
- this.ɵfac = i012.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i012, type: _PlaygroundComponent, deps: [], target: i012.ɵɵFactoryTarget.Component });
2305
- }
2306
- static {
2307
- this.ɵcmp = i012.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _PlaygroundComponent, selector: "eui-playground", inputs: { title: "title", htmlContent: "htmlContent", sampleId: "sampleId", typescriptContent: "typescriptContent", activated: "activated", modules: "modules" }, viewQueries: [{ propertyName: "stackblitzElWrapper", first: true, predicate: ["container"], descendants: true, read: ElementRef2, static: true }], usesOnChanges: true, ngImport: i012, template: '<eui-block-content [isBlocked]="!isLoaded">\n <iframe #container id="stackblitz-{{sampleId}}"></iframe>\n</eui-block-content>\n', dependencies: [{ kind: "component", type: i17.EuiBlockContentComponent, selector: "eui-block-content", inputs: ["role", "ariaLabel", "isBlocked"] }] });
2308
- }
2309
- };
2310
- i012.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i012, type: PlaygroundComponent, decorators: [{
2311
- type: Component10,
2312
- args: [{ selector: "eui-playground", template: '<eui-block-content [isBlocked]="!isLoaded">\n <iframe #container id="stackblitz-{{sampleId}}"></iframe>\n</eui-block-content>\n' }]
2313
- }], propDecorators: { title: [{
2314
- type: Input9
2315
- }], htmlContent: [{
2316
- type: Input9
2317
- }], sampleId: [{
2318
- type: Input9
2319
- }], typescriptContent: [{
2320
- type: Input9
2321
- }], activated: [{
2322
- type: Input9
2323
- }], modules: [{
2324
- type: Input9
2325
- }], stackblitzElWrapper: [{
2326
- type: ViewChild4,
2327
- args: ["container", { read: ElementRef2, static: true }]
2328
- }] } });
2329
-
2330
- // lib/components/doc-page-pattern/doc-page-pattern.component.mjs
2331
- import { Component as Component11, HostBinding as HostBinding3, ViewEncapsulation as ViewEncapsulation7, Input as Input10, Directive as Directive4, ContentChild as ContentChild2, forwardRef as forwardRef5, HostListener, inject as inject3 } from "@angular/core";
2332
- import { DomSanitizer as DomSanitizer2 } from "@angular/platform-browser";
2333
- import * as i013 from "@angular/core";
2334
- import * as i18 from "@angular/common";
2335
- import * as i27 from "@eui/components/eui-card";
2336
- import * as i37 from "@eui/components/eui-button";
2337
- import * as i46 from "@eui/components/eui-tabs";
2338
- import * as i55 from "@eui/components/eui-chip";
2339
- import * as i63 from "@eui/components/eui-badge";
2340
- import * as i73 from "@eui/components/eui-icon";
2341
- import * as i83 from "@eui/components/eui-label";
2342
- var DocPagePatternSampleDirective = class _DocPagePatternSampleDirective {
2343
- static {
2344
- this.ɵfac = i013.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i013, type: _DocPagePatternSampleDirective, deps: [], target: i013.ɵɵFactoryTarget.Directive });
2345
- }
2346
- static {
2347
- this.ɵdir = i013.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPagePatternSampleDirective, selector: "docPagePatternSample", ngImport: i013 });
2348
- }
2349
- };
2350
- i013.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i013, type: DocPagePatternSampleDirective, decorators: [{
2351
- type: Directive4,
2352
- args: [{ selector: "docPagePatternSample" }]
2353
- }] });
2354
- var DocPagePatternDocDirective = class _DocPagePatternDocDirective {
2355
- static {
2356
- this.ɵfac = i013.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i013, type: _DocPagePatternDocDirective, deps: [], target: i013.ɵɵFactoryTarget.Directive });
2357
- }
2358
- static {
2359
- this.ɵdir = i013.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPagePatternDocDirective, selector: "docPagePatternDoc", ngImport: i013 });
2360
- }
2361
- };
2362
- i013.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i013, type: DocPagePatternDocDirective, decorators: [{
2363
- type: Directive4,
2364
- args: [{ selector: "docPagePatternDoc" }]
2365
- }] });
2366
- var DocPagePatternComponent = class _DocPagePatternComponent {
2367
- constructor() {
2368
- this.docEntries = [];
2369
- this.dos = [];
2370
- this.donts = [];
2371
- this.topPosToStartShowing = 100;
2372
- this.tabSelectedIndex = 0;
2373
- this.sanitizer = inject3(DomSanitizer2);
2374
- }
2375
- get cssClasses() {
2376
- return ["doc-page-pattern"].join(" ").trim();
2377
- }
2378
- checkScroll() {
2379
- const scrollPosition = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
2380
- if (scrollPosition >= this.topPosToStartShowing) {
2381
- this.isShowGoTop = true;
2382
- } else {
2383
- this.isShowGoTop = false;
1316
+ ngOnChanges(changes) {
1317
+ if (changes.activated) {
1318
+ if (changes.activated.currentValue) {
1319
+ this.initStackblitz();
1320
+ }
1321
+ else {
1322
+ this.isLoaded = false;
1323
+ }
1324
+ }
2384
1325
  }
2385
- }
2386
- ngOnInit() {
2387
- if (this.figmaEmbedSrc) {
2388
- this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(this.figmaEmbedSrc);
2389
- const iFrame = document.getElementById("iframe-figma");
1326
+ initStackblitz() {
1327
+ this.sb.getStackblitzDependencies()
1328
+ .then((deps) => {
1329
+ const { dependencies, devDependencies } = deps;
1330
+ const { selector } = this.sb.extractComponentMetadata(this.typescriptContent);
1331
+ const moduleName = this.sb.extractModuleName(this.typescriptContent);
1332
+ const componentName = this.sb.extractComponentName(this.typescriptContent);
1333
+ const project = {
1334
+ title: this.title,
1335
+ description: `An eUI example for the ${this.title}.`,
1336
+ template: 'angular-cli',
1337
+ files: {
1338
+ 'src/component.html': this.htmlContent,
1339
+ 'src/component.ts': this.sb.appendVitalNgModules(this.typescriptContent),
1340
+ 'src/main.ts': mainFile(moduleName, componentName),
1341
+ 'src/polyfills.ts': polyfillsFile,
1342
+ 'src/index.html': indexHtmlFile(selector),
1343
+ 'angular.json': angularJsonFile,
1344
+ 'package.json': JSON.stringify({
1345
+ ...PACKAGE_JSON,
1346
+ dependencies,
1347
+ devDependencies,
1348
+ }, null, 2),
1349
+ 'tsconfig.json': tsConfig,
1350
+ },
1351
+ settings: {
1352
+ compile: {
1353
+ trigger: 'auto',
1354
+ clearConsole: true,
1355
+ },
1356
+ },
1357
+ dependencies,
1358
+ };
1359
+ return sdk.embedProject(`stackblitz-${this.sampleId}`, project, {
1360
+ height: 500,
1361
+ openFile: ['src/component.ts', 'src/component.html'],
1362
+ });
1363
+ })
1364
+ .then((instance) => {
1365
+ this.stackblitzInstance = instance;
1366
+ this.isLoaded = true;
1367
+ });
2390
1368
  }
2391
- }
2392
- onNavigateToCode(event) {
2393
- const showcase = "ux-patterns";
2394
- const sourceRootPath = `https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/app-eui-showcase-${showcase}/browse/src/app/features/`;
2395
- window.open(sourceRootPath + this.sourceUrl, "_blank");
2396
- }
2397
- onTabSelect(event) {
2398
- this.tabSelectedIndex = event.index;
2399
- }
2400
- gotoTop() {
2401
- window.scroll({
2402
- top: 0,
2403
- left: 0,
2404
- behavior: "smooth"
2405
- });
2406
- }
2407
- static {
2408
- this.ɵfac = i013.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i013, type: _DocPagePatternComponent, deps: [], target: i013.ɵɵFactoryTarget.Component });
2409
- }
2410
- static {
2411
- this.ɵcmp = i013.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: _DocPagePatternComponent, selector: "eui-showcase-doc-page-pattern", inputs: { id: "id", label: "label", anatomyImage: "anatomyImage", docEntries: "docEntries", dos: "dos", donts: "donts", sourceUrl: "sourceUrl", figmaUrl: "figmaUrl", figmaEmbedSrc: "figmaEmbedSrc" }, host: { listeners: { "window:scroll": "checkScroll()" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "sampleContent", first: true, predicate: i013.forwardRef(() => DocPagePatternSampleDirective), descendants: true }, { propertyName: "docContent", first: true, predicate: i013.forwardRef(() => DocPagePatternDocDirective), descendants: true }], ngImport: i013, template: `<eui-tabs (tabSelect)="onTabSelect($event)">
2412
- <eui-tab>
2413
- <euiTabLabel>Usage and documentation</euiTabLabel>
2414
- <euiTabContent>
2415
- <h2 class="eui-u-color-primary-100 eui-u-mb-none eui-u-text-h2">{{ label }}</h2>
2416
-
2417
- <h3 class="eui-u-text-h3">Information</h3>
2418
- <ng-content select="docPagePatternDoc"></ng-content>
2419
-
2420
- <ng-container *ngIf="figmaEmbedSrc; else screenshot">
2421
- <h3 class="eui-u-mt-2xl eui-u-text-h3">Figma design anatomy</h3>
2422
- <iframe id="iframe-figma" style="border: 1px solid rgba(0, 0, 0, 0.1)" width="100%" height="650" [src]="urlSafe"></iframe>
2423
- </ng-container>
2424
- <ng-template #screenshot>
2425
- <ng-container *ngIf="figmaUrl !== 'PENDING_DS'">
2426
- <h3 class="eui-u-mt-2xl eui-u-text-h3">Anatomy</h3>
2427
- <img
2428
- src="assets/images/design-system/{{ anatomyImage }}"
2429
- alt="Design anatomy image"
2430
- width="90%"
2431
- class="eui-u-sh-6 eui-u-mb-m" />
2432
- </ng-container>
2433
- </ng-template>
2434
-
2435
- <ng-container *ngIf="docEntries.length !== 0">
2436
- <h3 class="eui-u-mt-2xl eui-u-text-h3">Design system references</h3>
2437
-
2438
- <eui-card *ngFor="let ref of docEntries" class="eui-u-mb-m" [euiWarning]="ref.mandatory" [euiInfo]="!ref.mandatory">
2439
- <eui-card-header>
2440
- <eui-card-header-title>
2441
- <div class="eui-u-flex">
2442
- <eui-badge *ngIf="ref?.id" euiSizeXL class="eui-u-mr-s">{{ ref.id }}</eui-badge>
2443
- <span class="eui-u-font-l">{{ ref.name }}</span>
2444
- </div>
2445
- </eui-card-header-title>
2446
- <eui-card-header-right-content>
2447
- <eui-chip [euiWarning]="ref.mandatory" [euiInfo]="!ref.mandatory" class="eui-u-ml-m">
2448
- <span *ngIf="ref.mandatory" euiLabel><strong> Mandatory </strong></span>
2449
- <span *ngIf="!ref.mandatory" euiLabel><strong> Optional </strong></span>
2450
- </eui-chip>
2451
- </eui-card-header-right-content>
2452
- </eui-card-header>
2453
- <eui-card-content>
2454
- <h6 class="section-title eui-u-mt-none"><strong>Description</strong></h6>
2455
- <div class="html" [innerHTML]="ref.description"></div>
2456
-
2457
- <ng-container *ngIf="ref.whenToUse">
2458
- <h6 class="section-title eui-u-mt-xl"><strong>When to use ?</strong></h6>
2459
- <div class="html" [innerHTML]="ref.whenToUse"></div>
2460
- </ng-container>
2461
- <ng-container *ngIf="ref.whenNotToUse">
2462
- <h6 class="section-title eui-u-mt-xl"><strong>When to not use ?</strong></h6>
2463
- <div class="html" [innerHTML]="ref.whenNotToUse"></div>
2464
- </ng-container>
2465
- <div class="row">
2466
- <div class="col-md-6">
2467
- <ng-container *ngIf="ref.dos && ref.dos.length !== 0">
2468
- <h6 class="section-title eui-u-mt-xl">
2469
- <eui-icon-svg
2470
- icon="thumbs-up"
2471
- set="sharp"
2472
- size="m"
2473
- fillColor="success-100"
2474
- class="eui-u-mr-m"></eui-icon-svg>
2475
- <strong>Do's</strong>
2476
- </h6>
2477
- <li *ngFor="let do of ref.dos">{{ do }}</li>
2478
- </ng-container>
2479
- </div>
2480
- <div class="col-md-6">
2481
- <ng-container *ngIf="ref.donts && ref.donts.length !== 0">
2482
- <h6 class="section-title eui-u-mt-xl">
2483
- <eui-icon-svg
2484
- icon="hand-right"
2485
- set="sharp"
2486
- size="m"
2487
- fillColor="danger-100"
2488
- class="eui-u-mr-m"></eui-icon-svg>
2489
- <strong>Dont's</strong>
2490
- </h6>
2491
- <li *ngFor="let dont of ref.donts">{{ dont }}</li>
2492
- </ng-container>
2493
- </div>
2494
- </div>
2495
- </eui-card-content>
2496
- </eui-card>
2497
- </ng-container>
2498
-
2499
- <!-- <ng-container *ngIf="dos.length !== 0">
2500
- <h3 class="eui-u-mt-2xl eui-u-color-success-100 eui-u-text-h3">Do's</h3>
2501
- <table class="eui-table-default">
2502
- <tr *ngFor="let ref of dos">
2503
- <td>{{ref.description}}</td>
2504
- </tr>
2505
- </table>
2506
- </ng-container>
2507
-
2508
- <ng-container *ngIf="donts.length !== 0">
2509
- <h3 class="eui-u-mt-2xl eui-u-color-danger-100 eui-u-text-h3">Dont's</h3>
2510
- <table class="eui-table-default">
2511
- <tr *ngFor="let ref of donts">
2512
- <td>{{ref.description}}</td>
2513
- </tr>
2514
- </table>
2515
- </ng-container> -->
2516
-
2517
- <h3 class="eui-u-mt-2xl eui-u-text-h3">Figma resource</h3>
2518
- <ng-container *ngIf="figmaUrl === 'PENDING_DS'; else figmaOK">
2519
- Pending Design system publication. Will be available in a future release.
2520
- </ng-container>
2521
- <ng-template #figmaOK>
2522
- <eui-card>
2523
- <eui-card-header>
2524
- <eui-card-header-left-content>
2525
- <img
2526
- width="32"
2527
- height="32"
2528
- alt="Figma Logo"
2529
- src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAAADhCAMAAAAJbSJIAAABL1BMVEX/////cmLyTh6iWf8Kz4MavP7yTBr5YUWeUP8AzX3UuP//bVwAt/6jV///rKTyRgr2TwCxX+kA032m6Mf3m4uabPb/aVf/8O8AzHmbSf/xPAD/a1rxQgDyShaaR/8Avv74pJP/urP/6Ob/ZVLQ7//839n5tqj/xL7/b1f/9O/59f/r3v+65/9jzP6yef/p+P+u4//Mqv/iz//cxf/I7P/fvf+U2v71/fqO5LzW9ed74LIp043/y8b4rJz0dln/i3/zXTX2jnf/19P/emv0bEv/p5//l4zzWCz2h270dVf4g2D2Whzt5v+6hfuzbfCuWOjE2+6nz+6BxO5lu+5o1v9Nx/7BlP930v63rf+UoP90lP7n1v/Prv/iwf/Onf+hefiWZPZi36O07dLf9+2A4bX7S8Q6AAAGG0lEQVR4nO2aeVcaZxSHZ6JYhsHYFjsig3UhaHG3RkHBxMRE2zR2M5SuaUW//2cow4CgwMz7uzl65x3v8/+cM8+5y7tdwxAEQRAEQRAEQRAEQRAEQRAEQRCEiFJcOVqYDuDt0wAWV2pFboFAikcv8rl8fiqA/LE9Gtd1Hcd5ubjELTKC5eNcfu5JCBOfmWHYrnOyWOK2GWQhn58I01Mz9HDdp9xCd6g9UfJTNmw5mjVuqX5e5dT8AEPTLJxya92wdJZX9IMMTduMSMsphvcXmqFpOq+55TxeK2cobmgWIqBYhARRQ7PAvgOYmYIEYUPTmWE2PAZqkGRon/AKTqt3UaKh6b7lFCzmQEGCIW8pvgFzlGRov+QTrMEhpBhyrop4CEmGfEHEq5BmaBa4dm+vph7I0OZqp3PYYk83NE0eQUqSEg0dngXjCF3t6YbuIovhO7yTUg1tnsPwGaEMqXXIszmllCHVsMAhOPOghhxnKFIrpRo6HGu+GOpvuBT7OizFvpcalC0N1ZBnY0o4HZL3NDwnxGnC4YlqyHN8Wnm4nbfD8w5FajVEQ6YHU0oh0s74XBc1y4Q0JRkyJWkLxXffT48hlyClm1IMGd/0S3iakm6E2QQpVzUEQ4fnkqbDGdpOCYa8z2vwEQo3ZLvw7nAEKuJvwKw56vEdVoqoocP6PurzPaQIGrqRmBqCFMF5mkgIthIVqEXIsBCBFPVZzikvGoCh7axwi/VYOlbdoqobOicRmWrrsKw2Xqps6NoRCqBPaSGvMsGnZGg7NvsqOJTai1xuam4iMJahhrbr2KcRmNcbQam28O6HzwM584bVB/nGxzRPF9ln9YJ5v7tz/uMXo/lprzRzl1Jp5udffr24uKjXP3zYfsatEMDq3mZyNpmcHAsgmRr4bGu/nkgnuqTTifr2FsPfh7N2PhssN9xwvd6z61luRC+Sa5uz4XqDhuvzg36+ZD1icfxNze+O4daQ+PUcG2w2g6yNJdX8bhuuB/h5ionIpGpKNYC3DRvBgp7jNqNVHztfK/v1G26ECrYU9znFuuzMAoI9QxXBaCimkAj2DMNTNCqJ+i0UwRvDfUXBliJzu1lVbqK3DJ8pC7bgNdxU76L9hoBfIrHBKbgL5mjHUD1H23n6nNFwEg1h23ALEkwk5vkEU2gV+oYNTJCzn47BIfQM0RAyBhFdKTqG+6ggXyWe4yH0DOdhwwTTMQNeC31DaC3swmNISdKx5B6epGxp+pEUw706wTDBswGH9zNtwxShDLn2NQS/luHvJEOe9QI7NnUN/yAZpjkE31MazdjknzRDjpu3+BuuPaghxzk4/jGMv6FBMtSplz6C9TD+e5qd2O9L/3rAswXTpWnsz4fxP+M/gnua+N+1Ue9LN9AQMr4/4UGk3Hlzvs3gldh+t1B9POyEkPPdwjinva5BEWR9e3oE74fwxka7N2DyO77aoEIU3vEfwSyGYfx9j/M0EYigx+69zUStM1rd4p7m2uajNJ4Y99lE4xHMlxrejHDIAPQwQ41mhD1WU/6cdxDD57zT6XTPLrJz3j5r/3w8//er0fy3O+yrref7jbrHRiPSs/qGUW5WLr8MJsP9j59C89JqMR6Ipa9huRJqp7dhRkVPY8OrqpqftoYZVT9dDS+zyoJ6Gl6qR1BPQ0hQR8NDSFBDwwpQg1oaHoCC+hlWQUHtDCtYEepnWIYFdTO8jrshIYSaGQLbUU0N4UaqmyElSfUybMbeENyRamhIKUO9DCkh1MqwjG66tTO8ir0hfHASw8gR/ywlGja5/xuAZnjA/dsAtBX/ivu3AbCL0q4h918j4Jc0LcFL7r9GoCwXVoX7ryFwwfGsTo2GdHyqcv8zBp6mOq33bfAb7zL3L4M00WeZQ+4/hgGDqF0I0UrUbKnwge71NWukHZTHTDTbkva4UjbM6nRu6ke1FLM6FqGP2pKhsaBaFLUWbNXieFgxaluDXcrBc19WVc8ueovm6DBammfoDZXhA6ZW9lC/rdoIyplq9o6kZVmHMUjQPg4qVStrdclWD3VvMEM5aGYq19fXleZBbLJTEARBEARBEARBEARBEARBEARBEHz+B91xJIzYVK0AAAAAAElFTkSuQmCC" />
2530
- </eui-card-header-left-content>
2531
- <eui-card-header-title>
2532
- <a
2533
- class="h5 eui-u-text-link-external"
2534
- href="https://www.figma.com/file/jQ9htWvSM8SWTPuk3hoigc/{{ figmaUrl }}"
2535
- target="blank">
2536
- <span class="eui-u-color-grey-75">Layout component /</span>
2537
- {{ label }}
2538
- </a>
2539
- </eui-card-header-title>
2540
- </eui-card-header>
2541
- </eui-card>
2542
- </ng-template>
2543
- </euiTabContent>
2544
- </eui-tab>
2545
- <eui-tab>
2546
- <euiTabLabel>Pattern sample</euiTabLabel>
2547
- <euiTabContent>
2548
- <ng-content select="docPagePatternSample"></ng-content>
2549
- </euiTabContent>
2550
- </eui-tab>
2551
-
2552
- <euiTabsRightContent>
2553
- <button type="button" euiButton euiAccent euiSizeS (click)="onNavigateToCode($event)">
2554
- <span class="eui-icon eui-icon-code"></span>
2555
- View sources
2556
- </button>
2557
- </euiTabsRightContent>
2558
- </eui-tabs>
2559
-
2560
- <button
2561
- type="button"
2562
- *ngIf="isShowGoTop && tabSelectedIndex === 0"
2563
- euiButton
2564
- euiIconButton
2565
- euiOutline
2566
- euiRounded
2567
- euiSizeL
2568
- class="eui-button-fixed eui-u-sh-8"
2569
- (click)="gotoTop()"
2570
- title="Goto Top"
2571
- aria-label="Goto Top">
2572
- <!-- 👆 -->
2573
- <eui-icon-svg icon="eui-arrow-up" set="eui" size="l" fillColor="grey-50"></eui-icon-svg>
2574
- </button>
2575
- `, styles: [".doc-page-pattern{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;padding:var(--eui-s-xl)}.doc-page-pattern sample,.doc-page-pattern eui-tabs,.doc-page-pattern .eui-tabs,.doc-page-pattern .eui-tab-content-wrapper,.doc-page-pattern .eui-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%}.doc-page-pattern .eui-tabs .eui-tab-item--active,.doc-page-pattern .eui-tabs .eui-tab-item:focus{background-color:var(--eui-c-white)}.doc-page-pattern .eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-s-m)}.doc-page-pattern docPagePatternSample{display:flex;flex-direction:column;flex-grow:1;min-height:0;position:relative;width:100%}.doc-page-pattern .html{display:block;position:relative;text-align:left}\n"], dependencies: [{ kind: "directive", type: i18.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i18.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i27.EuiCardComponent, selector: "eui-card", inputs: ["e2eAttr", "euiSelected", "euiCollapsible", "euiCollapsed", "euiUrgent", "euiNoShadow", "euiNoContentPadding", "euiHoverable"], outputs: ["collapse"] }, { kind: "component", type: i27.EuiCardHeaderComponent, selector: "eui-card-header", inputs: ["expandLabel", "collapseLabel", "hasHeaderClickToggle", "hasBottomExpander", "hasFullTitle", "isHeaderMultilines"], outputs: ["collapse"] }, { kind: "component", type: i27.EuiCardHeaderTitleComponent, selector: "eui-card-header-title" }, { kind: "component", type: i27.EuiCardContentComponent, selector: "eui-card-content" }, { kind: "component", type: i27.EuiCardHeaderLeftContentComponent, selector: "eui-card-header-left-content" }, { kind: "component", type: i27.EuiCardHeaderRightContentComponent, selector: "eui-card-header-right-content" }, { kind: "component", type: i37.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i46.EuiTabsComponent, selector: "eui-tabs", inputs: ["tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClose", "tabSelect"] }, { kind: "component", type: i46.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "directive", type: i46.EuiTabsRightContentTagDirective, selector: "euiTabsRightContent" }, { kind: "component", type: i46.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "component", type: i46.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i55.EuiChipComponent, selector: "eui-chip, span[euiChip], li[euiChip]", inputs: ["ariaLabel", "e2eAttr", "euiInternalId", "tooltipMessage", "id", "data", "isChipRemovable", "isSquared"], outputs: ["remove"] }, { kind: "component", type: i63.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label", "maxCharCount", "charReplacement"] }, { kind: "component", type: i73.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i83.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }], encapsulation: i013.ViewEncapsulation.None });
2576
- }
2577
- };
2578
- i013.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i013, type: DocPagePatternComponent, decorators: [{
2579
- type: Component11,
2580
- args: [{ selector: "eui-showcase-doc-page-pattern", encapsulation: ViewEncapsulation7.None, template: `<eui-tabs (tabSelect)="onTabSelect($event)">
2581
- <eui-tab>
2582
- <euiTabLabel>Usage and documentation</euiTabLabel>
2583
- <euiTabContent>
2584
- <h2 class="eui-u-color-primary-100 eui-u-mb-none eui-u-text-h2">{{ label }}</h2>
2585
-
2586
- <h3 class="eui-u-text-h3">Information</h3>
2587
- <ng-content select="docPagePatternDoc"></ng-content>
2588
-
2589
- <ng-container *ngIf="figmaEmbedSrc; else screenshot">
2590
- <h3 class="eui-u-mt-2xl eui-u-text-h3">Figma design anatomy</h3>
2591
- <iframe id="iframe-figma" style="border: 1px solid rgba(0, 0, 0, 0.1)" width="100%" height="650" [src]="urlSafe"></iframe>
2592
- </ng-container>
2593
- <ng-template #screenshot>
2594
- <ng-container *ngIf="figmaUrl !== 'PENDING_DS'">
2595
- <h3 class="eui-u-mt-2xl eui-u-text-h3">Anatomy</h3>
2596
- <img
2597
- src="assets/images/design-system/{{ anatomyImage }}"
2598
- alt="Design anatomy image"
2599
- width="90%"
2600
- class="eui-u-sh-6 eui-u-mb-m" />
2601
- </ng-container>
2602
- </ng-template>
2603
-
2604
- <ng-container *ngIf="docEntries.length !== 0">
2605
- <h3 class="eui-u-mt-2xl eui-u-text-h3">Design system references</h3>
2606
-
2607
- <eui-card *ngFor="let ref of docEntries" class="eui-u-mb-m" [euiWarning]="ref.mandatory" [euiInfo]="!ref.mandatory">
2608
- <eui-card-header>
2609
- <eui-card-header-title>
2610
- <div class="eui-u-flex">
2611
- <eui-badge *ngIf="ref?.id" euiSizeXL class="eui-u-mr-s">{{ ref.id }}</eui-badge>
2612
- <span class="eui-u-font-l">{{ ref.name }}</span>
2613
- </div>
2614
- </eui-card-header-title>
2615
- <eui-card-header-right-content>
2616
- <eui-chip [euiWarning]="ref.mandatory" [euiInfo]="!ref.mandatory" class="eui-u-ml-m">
2617
- <span *ngIf="ref.mandatory" euiLabel><strong> Mandatory </strong></span>
2618
- <span *ngIf="!ref.mandatory" euiLabel><strong> Optional </strong></span>
2619
- </eui-chip>
2620
- </eui-card-header-right-content>
2621
- </eui-card-header>
2622
- <eui-card-content>
2623
- <h6 class="section-title eui-u-mt-none"><strong>Description</strong></h6>
2624
- <div class="html" [innerHTML]="ref.description"></div>
2625
-
2626
- <ng-container *ngIf="ref.whenToUse">
2627
- <h6 class="section-title eui-u-mt-xl"><strong>When to use ?</strong></h6>
2628
- <div class="html" [innerHTML]="ref.whenToUse"></div>
2629
- </ng-container>
2630
- <ng-container *ngIf="ref.whenNotToUse">
2631
- <h6 class="section-title eui-u-mt-xl"><strong>When to not use ?</strong></h6>
2632
- <div class="html" [innerHTML]="ref.whenNotToUse"></div>
2633
- </ng-container>
2634
- <div class="row">
2635
- <div class="col-md-6">
2636
- <ng-container *ngIf="ref.dos && ref.dos.length !== 0">
2637
- <h6 class="section-title eui-u-mt-xl">
2638
- <eui-icon-svg
2639
- icon="thumbs-up"
2640
- set="sharp"
2641
- size="m"
2642
- fillColor="success-100"
2643
- class="eui-u-mr-m"></eui-icon-svg>
2644
- <strong>Do's</strong>
2645
- </h6>
2646
- <li *ngFor="let do of ref.dos">{{ do }}</li>
2647
- </ng-container>
2648
- </div>
2649
- <div class="col-md-6">
2650
- <ng-container *ngIf="ref.donts && ref.donts.length !== 0">
2651
- <h6 class="section-title eui-u-mt-xl">
2652
- <eui-icon-svg
2653
- icon="hand-right"
2654
- set="sharp"
2655
- size="m"
2656
- fillColor="danger-100"
2657
- class="eui-u-mr-m"></eui-icon-svg>
2658
- <strong>Dont's</strong>
2659
- </h6>
2660
- <li *ngFor="let dont of ref.donts">{{ dont }}</li>
2661
- </ng-container>
2662
- </div>
2663
- </div>
2664
- </eui-card-content>
2665
- </eui-card>
2666
- </ng-container>
2667
-
2668
- <!-- <ng-container *ngIf="dos.length !== 0">
2669
- <h3 class="eui-u-mt-2xl eui-u-color-success-100 eui-u-text-h3">Do's</h3>
2670
- <table class="eui-table-default">
2671
- <tr *ngFor="let ref of dos">
2672
- <td>{{ref.description}}</td>
2673
- </tr>
2674
- </table>
2675
- </ng-container>
2676
-
2677
- <ng-container *ngIf="donts.length !== 0">
2678
- <h3 class="eui-u-mt-2xl eui-u-color-danger-100 eui-u-text-h3">Dont's</h3>
2679
- <table class="eui-table-default">
2680
- <tr *ngFor="let ref of donts">
2681
- <td>{{ref.description}}</td>
2682
- </tr>
2683
- </table>
2684
- </ng-container> -->
2685
-
2686
- <h3 class="eui-u-mt-2xl eui-u-text-h3">Figma resource</h3>
2687
- <ng-container *ngIf="figmaUrl === 'PENDING_DS'; else figmaOK">
2688
- Pending Design system publication. Will be available in a future release.
2689
- </ng-container>
2690
- <ng-template #figmaOK>
2691
- <eui-card>
2692
- <eui-card-header>
2693
- <eui-card-header-left-content>
2694
- <img
2695
- width="32"
2696
- height="32"
2697
- alt="Figma Logo"
2698
- src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAAADhCAMAAAAJbSJIAAABL1BMVEX/////cmLyTh6iWf8Kz4MavP7yTBr5YUWeUP8AzX3UuP//bVwAt/6jV///rKTyRgr2TwCxX+kA032m6Mf3m4uabPb/aVf/8O8AzHmbSf/xPAD/a1rxQgDyShaaR/8Avv74pJP/urP/6Ob/ZVLQ7//839n5tqj/xL7/b1f/9O/59f/r3v+65/9jzP6yef/p+P+u4//Mqv/iz//cxf/I7P/fvf+U2v71/fqO5LzW9ed74LIp043/y8b4rJz0dln/i3/zXTX2jnf/19P/emv0bEv/p5//l4zzWCz2h270dVf4g2D2Whzt5v+6hfuzbfCuWOjE2+6nz+6BxO5lu+5o1v9Nx/7BlP930v63rf+UoP90lP7n1v/Prv/iwf/Onf+hefiWZPZi36O07dLf9+2A4bX7S8Q6AAAGG0lEQVR4nO2aeVcaZxSHZ6JYhsHYFjsig3UhaHG3RkHBxMRE2zR2M5SuaUW//2cow4CgwMz7uzl65x3v8/+cM8+5y7tdwxAEQRAEQRAEQRAEQRAEQRAEQRCEiFJcOVqYDuDt0wAWV2pFboFAikcv8rl8fiqA/LE9Gtd1Hcd5ubjELTKC5eNcfu5JCBOfmWHYrnOyWOK2GWQhn58I01Mz9HDdp9xCd6g9UfJTNmw5mjVuqX5e5dT8AEPTLJxya92wdJZX9IMMTduMSMsphvcXmqFpOq+55TxeK2cobmgWIqBYhARRQ7PAvgOYmYIEYUPTmWE2PAZqkGRon/AKTqt3UaKh6b7lFCzmQEGCIW8pvgFzlGRov+QTrMEhpBhyrop4CEmGfEHEq5BmaBa4dm+vph7I0OZqp3PYYk83NE0eQUqSEg0dngXjCF3t6YbuIovhO7yTUg1tnsPwGaEMqXXIszmllCHVsMAhOPOghhxnKFIrpRo6HGu+GOpvuBT7OizFvpcalC0N1ZBnY0o4HZL3NDwnxGnC4YlqyHN8Wnm4nbfD8w5FajVEQ6YHU0oh0s74XBc1y4Q0JRkyJWkLxXffT48hlyClm1IMGd/0S3iakm6E2QQpVzUEQ4fnkqbDGdpOCYa8z2vwEQo3ZLvw7nAEKuJvwKw56vEdVoqoocP6PurzPaQIGrqRmBqCFMF5mkgIthIVqEXIsBCBFPVZzikvGoCh7axwi/VYOlbdoqobOicRmWrrsKw2Xqps6NoRCqBPaSGvMsGnZGg7NvsqOJTai1xuam4iMJahhrbr2KcRmNcbQam28O6HzwM584bVB/nGxzRPF9ln9YJ5v7tz/uMXo/lprzRzl1Jp5udffr24uKjXP3zYfsatEMDq3mZyNpmcHAsgmRr4bGu/nkgnuqTTifr2FsPfh7N2PhssN9xwvd6z61luRC+Sa5uz4XqDhuvzg36+ZD1icfxNze+O4daQ+PUcG2w2g6yNJdX8bhuuB/h5ionIpGpKNYC3DRvBgp7jNqNVHztfK/v1G26ECrYU9znFuuzMAoI9QxXBaCimkAj2DMNTNCqJ+i0UwRvDfUXBliJzu1lVbqK3DJ8pC7bgNdxU76L9hoBfIrHBKbgL5mjHUD1H23n6nNFwEg1h23ALEkwk5vkEU2gV+oYNTJCzn47BIfQM0RAyBhFdKTqG+6ggXyWe4yH0DOdhwwTTMQNeC31DaC3swmNISdKx5B6epGxp+pEUw706wTDBswGH9zNtwxShDLn2NQS/luHvJEOe9QI7NnUN/yAZpjkE31MazdjknzRDjpu3+BuuPaghxzk4/jGMv6FBMtSplz6C9TD+e5qd2O9L/3rAswXTpWnsz4fxP+M/gnua+N+1Ue9LN9AQMr4/4UGk3Hlzvs3gldh+t1B9POyEkPPdwjinva5BEWR9e3oE74fwxka7N2DyO77aoEIU3vEfwSyGYfx9j/M0EYigx+69zUStM1rd4p7m2uajNJ4Y99lE4xHMlxrejHDIAPQwQ41mhD1WU/6cdxDD57zT6XTPLrJz3j5r/3w8//er0fy3O+yrref7jbrHRiPSs/qGUW5WLr8MJsP9j59C89JqMR6Ipa9huRJqp7dhRkVPY8OrqpqftoYZVT9dDS+zyoJ6Gl6qR1BPQ0hQR8NDSFBDwwpQg1oaHoCC+hlWQUHtDCtYEepnWIYFdTO8jrshIYSaGQLbUU0N4UaqmyElSfUybMbeENyRamhIKUO9DCkh1MqwjG66tTO8ir0hfHASw8gR/ywlGja5/xuAZnjA/dsAtBX/ivu3AbCL0q4h918j4Jc0LcFL7r9GoCwXVoX7ryFwwfGsTo2GdHyqcv8zBp6mOq33bfAb7zL3L4M00WeZQ+4/hgGDqF0I0UrUbKnwge71NWukHZTHTDTbkva4UjbM6nRu6ke1FLM6FqGP2pKhsaBaFLUWbNXieFgxaluDXcrBc19WVc8ueovm6DBammfoDZXhA6ZW9lC/rdoIyplq9o6kZVmHMUjQPg4qVStrdclWD3VvMEM5aGYq19fXleZBbLJTEARBEARBEARBEARBEARBEARBEHz+B91xJIzYVK0AAAAAAElFTkSuQmCC" />
2699
- </eui-card-header-left-content>
2700
- <eui-card-header-title>
2701
- <a
2702
- class="h5 eui-u-text-link-external"
2703
- href="https://www.figma.com/file/jQ9htWvSM8SWTPuk3hoigc/{{ figmaUrl }}"
2704
- target="blank">
2705
- <span class="eui-u-color-grey-75">Layout component /</span>
2706
- {{ label }}
2707
- </a>
2708
- </eui-card-header-title>
2709
- </eui-card-header>
2710
- </eui-card>
2711
- </ng-template>
2712
- </euiTabContent>
2713
- </eui-tab>
2714
- <eui-tab>
2715
- <euiTabLabel>Pattern sample</euiTabLabel>
2716
- <euiTabContent>
2717
- <ng-content select="docPagePatternSample"></ng-content>
2718
- </euiTabContent>
2719
- </eui-tab>
2720
-
2721
- <euiTabsRightContent>
2722
- <button type="button" euiButton euiAccent euiSizeS (click)="onNavigateToCode($event)">
2723
- <span class="eui-icon eui-icon-code"></span>
2724
- View sources
2725
- </button>
2726
- </euiTabsRightContent>
2727
- </eui-tabs>
2728
-
2729
- <button
2730
- type="button"
2731
- *ngIf="isShowGoTop && tabSelectedIndex === 0"
2732
- euiButton
2733
- euiIconButton
2734
- euiOutline
2735
- euiRounded
2736
- euiSizeL
2737
- class="eui-button-fixed eui-u-sh-8"
2738
- (click)="gotoTop()"
2739
- title="Goto Top"
2740
- aria-label="Goto Top">
2741
- <!-- 👆 -->
2742
- <eui-icon-svg icon="eui-arrow-up" set="eui" size="l" fillColor="grey-50"></eui-icon-svg>
2743
- </button>
2744
- `, styles: [".doc-page-pattern{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;padding:var(--eui-s-xl)}.doc-page-pattern sample,.doc-page-pattern eui-tabs,.doc-page-pattern .eui-tabs,.doc-page-pattern .eui-tab-content-wrapper,.doc-page-pattern .eui-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%}.doc-page-pattern .eui-tabs .eui-tab-item--active,.doc-page-pattern .eui-tabs .eui-tab-item:focus{background-color:var(--eui-c-white)}.doc-page-pattern .eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-s-m)}.doc-page-pattern docPagePatternSample{display:flex;flex-direction:column;flex-grow:1;min-height:0;position:relative;width:100%}.doc-page-pattern .html{display:block;position:relative;text-align:left}\n"] }]
2745
- }], propDecorators: { cssClasses: [{
2746
- type: HostBinding3,
2747
- args: ["class"]
2748
- }], sampleContent: [{
2749
- type: ContentChild2,
2750
- args: [forwardRef5(() => DocPagePatternSampleDirective)]
2751
- }], docContent: [{
2752
- type: ContentChild2,
2753
- args: [forwardRef5(() => DocPagePatternDocDirective)]
2754
- }], id: [{
2755
- type: Input10
2756
- }], label: [{
2757
- type: Input10
2758
- }], anatomyImage: [{
2759
- type: Input10
2760
- }], docEntries: [{
2761
- type: Input10
2762
- }], dos: [{
2763
- type: Input10
2764
- }], donts: [{
2765
- type: Input10
2766
- }], sourceUrl: [{
2767
- type: Input10
2768
- }], figmaUrl: [{
2769
- type: Input10
2770
- }], figmaEmbedSrc: [{
2771
- type: Input10
2772
- }], checkScroll: [{
2773
- type: HostListener,
2774
- args: ["window:scroll"]
2775
- }] } });
2776
-
2777
- // lib/eui-showcase.module.mjs
2778
- import { NgModule } from "@angular/core";
2779
- import { CommonModule } from "@angular/common";
2780
- import { EuiCardModule } from "@eui/components/eui-card";
2781
- import { EuiButtonModule } from "@eui/components/eui-button";
2782
- import { EuiTabsModule } from "@eui/components/eui-tabs";
2783
- import { EuiPageModule } from "@eui/components/eui-page";
2784
- import { EuiChipModule } from "@eui/components/eui-chip";
2785
- import { EuiDialogModule } from "@eui/components/eui-dialog";
2786
- import { EuiAlertModule } from "@eui/components/eui-alert";
2787
- import { EuiBlockContentModule } from "@eui/components/eui-block-content";
2788
- import { EuiBadgeModule } from "@eui/components/eui-badge";
2789
- import { EuiIconModule } from "@eui/components/eui-icon";
2790
- import { EuiLabelModule } from "@eui/components/eui-label";
2791
- import * as i014 from "@angular/core";
2792
- var COMPONENTS = [
2793
- EuiCodeHighlighterDirective,
2794
- DocPageComponent,
2795
- DocPageCodeComponent,
2796
- DocPageCodeFabComponent,
2797
- DocPageCodeModalComponent,
2798
- DocPageOverviewContentDirective,
2799
- DocPageOverviewDefaultContentDirective,
2800
- DocPageApiContentDirective,
2801
- DocPageInteractiveContentDirective,
2802
- DocPageSamplesContentDirective,
2803
- DocPageSectionsContentDirective,
2804
- DocPageAccessibilityContentDirective,
2805
- DocPageThemingContentDirective,
2806
- DocSampleComponent,
2807
- DocSampleApiComponent,
2808
- DocSectionComponent,
2809
- DocSectionCodeComponent,
2810
- DocSectionCodeHtmlTagDirective,
2811
- DocSectionCodeTsTagDirective,
2812
- DocSectionCodeServiceTagDirective,
2813
- DocSectionCodeCssTagDirective,
2814
- DocSectionCodeDocTagDirective,
2815
- DocSectionCodeDescriptionTagDirective,
2816
- LoremIpsumSampleComponent,
2817
- PlaygroundComponent,
2818
- DocPagePatternComponent,
2819
- DocPagePatternDocDirective,
2820
- DocPagePatternSampleDirective
1369
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: PlaygroundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1370
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: PlaygroundComponent, selector: "eui-playground", inputs: { title: "title", htmlContent: "htmlContent", sampleId: "sampleId", 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-{{sampleId}}\"></iframe>\n</eui-block-content>\n", dependencies: [{ kind: "component", type: i1$1.EuiBlockContentComponent, selector: "eui-block-content", inputs: ["role", "ariaLabel", "isBlocked"] }] }); }
1371
+ }
1372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: PlaygroundComponent, decorators: [{
1373
+ type: Component,
1374
+ args: [{ selector: 'eui-playground', template: "<eui-block-content [isBlocked]=\"!isLoaded\">\n <iframe #container id=\"stackblitz-{{sampleId}}\"></iframe>\n</eui-block-content>\n" }]
1375
+ }], propDecorators: { title: [{
1376
+ type: Input
1377
+ }], htmlContent: [{
1378
+ type: Input
1379
+ }], sampleId: [{
1380
+ type: Input
1381
+ }], typescriptContent: [{
1382
+ type: Input
1383
+ }], activated: [{
1384
+ type: Input
1385
+ }], modules: [{
1386
+ type: Input
1387
+ }], stackblitzElWrapper: [{
1388
+ type: ViewChild,
1389
+ args: ['container', { read: ElementRef, static: true }]
1390
+ }] } });
1391
+
1392
+ /* eslint-disable max-len */
1393
+ /* eslint-disable */
1394
+ class DocPagePatternSampleDirective {
1395
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPagePatternSampleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1396
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPagePatternSampleDirective, selector: "docPagePatternSample", ngImport: i0 }); }
1397
+ }
1398
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPagePatternSampleDirective, decorators: [{
1399
+ type: Directive,
1400
+ args: [{ selector: 'docPagePatternSample' }]
1401
+ }] });
1402
+ class DocPagePatternDocDirective {
1403
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPagePatternDocDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1404
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPagePatternDocDirective, selector: "docPagePatternDoc", ngImport: i0 }); }
1405
+ }
1406
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPagePatternDocDirective, decorators: [{
1407
+ type: Directive,
1408
+ args: [{ selector: 'docPagePatternDoc' }]
1409
+ }] });
1410
+ class DocPagePatternComponent {
1411
+ constructor() {
1412
+ this.docEntries = [];
1413
+ this.dos = [];
1414
+ this.donts = [];
1415
+ this.topPosToStartShowing = 100;
1416
+ this.tabSelectedIndex = 0;
1417
+ this.sanitizer = inject(DomSanitizer);
1418
+ }
1419
+ get cssClasses() {
1420
+ return ['doc-page-pattern'].join(' ').trim();
1421
+ }
1422
+ checkScroll() {
1423
+ const scrollPosition = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
1424
+ if (scrollPosition >= this.topPosToStartShowing) {
1425
+ this.isShowGoTop = true;
1426
+ }
1427
+ else {
1428
+ this.isShowGoTop = false;
1429
+ }
1430
+ }
1431
+ ngOnInit() {
1432
+ if (this.figmaEmbedSrc) {
1433
+ this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(this.figmaEmbedSrc);
1434
+ const iFrame = document.getElementById('iframe-figma');
1435
+ }
1436
+ }
1437
+ onNavigateToCode(event) {
1438
+ // eslint-disable-next-line max-len
1439
+ const showcase = 'ux-patterns';
1440
+ const sourceRootPath = `https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/app-eui-showcase-${showcase}/browse/src/app/features/`;
1441
+ window.open(sourceRootPath + this.sourceUrl, '_blank');
1442
+ }
1443
+ onTabSelect(event) {
1444
+ this.tabSelectedIndex = event.index;
1445
+ }
1446
+ gotoTop() {
1447
+ window.scroll({
1448
+ top: 0,
1449
+ left: 0,
1450
+ behavior: 'smooth',
1451
+ });
1452
+ }
1453
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPagePatternComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1454
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-rc.3", type: DocPagePatternComponent, selector: "eui-showcase-doc-page-pattern", inputs: { id: "id", label: "label", anatomyImage: "anatomyImage", docEntries: "docEntries", dos: "dos", donts: "donts", sourceUrl: "sourceUrl", figmaUrl: "figmaUrl", figmaEmbedSrc: "figmaEmbedSrc" }, host: { listeners: { "window:scroll": "checkScroll()" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "sampleContent", first: true, predicate: i0.forwardRef(() => DocPagePatternSampleDirective), descendants: true }, { propertyName: "docContent", first: true, predicate: i0.forwardRef(() => DocPagePatternDocDirective), descendants: true }], ngImport: i0, template: "<eui-tabs (tabSelect)=\"onTabSelect($event)\">\n <eui-tab>\n <euiTabLabel>Usage and documentation</euiTabLabel>\n <euiTabContent>\n <h2 class=\"eui-u-color-primary-100 eui-u-mb-none eui-u-text-h2\">{{ label }}</h2>\n\n <h3 class=\"eui-u-text-h3\">Information</h3>\n <ng-content select=\"docPagePatternDoc\"></ng-content>\n\n <ng-container *ngIf=\"figmaEmbedSrc; else screenshot\">\n <h3 class=\"eui-u-mt-2xl eui-u-text-h3\">Figma design anatomy</h3>\n <iframe id=\"iframe-figma\" style=\"border: 1px solid rgba(0, 0, 0, 0.1)\" width=\"100%\" height=\"650\" [src]=\"urlSafe\"></iframe>\n </ng-container>\n <ng-template #screenshot>\n <ng-container *ngIf=\"figmaUrl !== 'PENDING_DS'\">\n <h3 class=\"eui-u-mt-2xl eui-u-text-h3\">Anatomy</h3>\n <img\n src=\"assets/images/design-system/{{ anatomyImage }}\"\n alt=\"Design anatomy image\"\n width=\"90%\"\n class=\"eui-u-sh-6 eui-u-mb-m\" />\n </ng-container>\n </ng-template>\n\n <ng-container *ngIf=\"docEntries.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-text-h3\">Design system references</h3>\n\n <eui-card *ngFor=\"let ref of docEntries\" class=\"eui-u-mb-m\" [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\">\n <eui-card-header>\n <eui-card-header-title>\n <div class=\"eui-u-flex\">\n <eui-badge *ngIf=\"ref?.id\" euiSizeXL class=\"eui-u-mr-s\">{{ ref.id }}</eui-badge>\n <span class=\"eui-u-font-l\">{{ ref.name }}</span>\n </div>\n </eui-card-header-title>\n <eui-card-header-right-content>\n <eui-chip [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\" class=\"eui-u-ml-m\">\n <span *ngIf=\"ref.mandatory\" euiLabel><strong> Mandatory </strong></span>\n <span *ngIf=\"!ref.mandatory\" euiLabel><strong> Optional </strong></span>\n </eui-chip>\n </eui-card-header-right-content>\n </eui-card-header>\n <eui-card-content>\n <h6 class=\"section-title eui-u-mt-none\"><strong>Description</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.description\"></div>\n\n <ng-container *ngIf=\"ref.whenToUse\">\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to use ?</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.whenToUse\"></div>\n </ng-container>\n <ng-container *ngIf=\"ref.whenNotToUse\">\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to not use ?</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.whenNotToUse\"></div>\n </ng-container>\n <div class=\"row\">\n <div class=\"col-md-6\">\n <ng-container *ngIf=\"ref.dos && ref.dos.length !== 0\">\n <h6 class=\"section-title eui-u-mt-xl\">\n <eui-icon-svg\n icon=\"thumbs-up\"\n set=\"sharp\"\n size=\"m\"\n fillColor=\"success-100\"\n class=\"eui-u-mr-m\"></eui-icon-svg>\n <strong>Do's</strong>\n </h6>\n <li *ngFor=\"let do of ref.dos\">{{ do }}</li>\n </ng-container>\n </div>\n <div class=\"col-md-6\">\n <ng-container *ngIf=\"ref.donts && ref.donts.length !== 0\">\n <h6 class=\"section-title eui-u-mt-xl\">\n <eui-icon-svg\n icon=\"hand-right\"\n set=\"sharp\"\n size=\"m\"\n fillColor=\"danger-100\"\n class=\"eui-u-mr-m\"></eui-icon-svg>\n <strong>Dont's</strong>\n </h6>\n <li *ngFor=\"let dont of ref.donts\">{{ dont }}</li>\n </ng-container>\n </div>\n </div>\n </eui-card-content>\n </eui-card>\n </ng-container>\n\n <!-- <ng-container *ngIf=\"dos.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-color-success-100 eui-u-text-h3\">Do's</h3>\n <table class=\"eui-table-default\">\n <tr *ngFor=\"let ref of dos\">\n <td>{{ref.description}}</td>\n </tr>\n </table>\n </ng-container>\n\n <ng-container *ngIf=\"donts.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-color-danger-100 eui-u-text-h3\">Dont's</h3>\n <table class=\"eui-table-default\">\n <tr *ngFor=\"let ref of donts\">\n <td>{{ref.description}}</td>\n </tr>\n </table>\n </ng-container> -->\n\n <h3 class=\"eui-u-mt-2xl eui-u-text-h3\">Figma resource</h3>\n <ng-container *ngIf=\"figmaUrl === 'PENDING_DS'; else figmaOK\">\n Pending Design system publication. Will be available in a future release.\n </ng-container>\n <ng-template #figmaOK>\n <eui-card>\n <eui-card-header>\n <eui-card-header-left-content>\n <img\n width=\"32\"\n height=\"32\"\n alt=\"Figma Logo\"\n src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAAADhCAMAAAAJbSJIAAABL1BMVEX/////cmLyTh6iWf8Kz4MavP7yTBr5YUWeUP8AzX3UuP//bVwAt/6jV///rKTyRgr2TwCxX+kA032m6Mf3m4uabPb/aVf/8O8AzHmbSf/xPAD/a1rxQgDyShaaR/8Avv74pJP/urP/6Ob/ZVLQ7//839n5tqj/xL7/b1f/9O/59f/r3v+65/9jzP6yef/p+P+u4//Mqv/iz//cxf/I7P/fvf+U2v71/fqO5LzW9ed74LIp043/y8b4rJz0dln/i3/zXTX2jnf/19P/emv0bEv/p5//l4zzWCz2h270dVf4g2D2Whzt5v+6hfuzbfCuWOjE2+6nz+6BxO5lu+5o1v9Nx/7BlP930v63rf+UoP90lP7n1v/Prv/iwf/Onf+hefiWZPZi36O07dLf9+2A4bX7S8Q6AAAGG0lEQVR4nO2aeVcaZxSHZ6JYhsHYFjsig3UhaHG3RkHBxMRE2zR2M5SuaUW//2cow4CgwMz7uzl65x3v8/+cM8+5y7tdwxAEQRAEQRAEQRAEQRAEQRAEQRCEiFJcOVqYDuDt0wAWV2pFboFAikcv8rl8fiqA/LE9Gtd1Hcd5ubjELTKC5eNcfu5JCBOfmWHYrnOyWOK2GWQhn58I01Mz9HDdp9xCd6g9UfJTNmw5mjVuqX5e5dT8AEPTLJxya92wdJZX9IMMTduMSMsphvcXmqFpOq+55TxeK2cobmgWIqBYhARRQ7PAvgOYmYIEYUPTmWE2PAZqkGRon/AKTqt3UaKh6b7lFCzmQEGCIW8pvgFzlGRov+QTrMEhpBhyrop4CEmGfEHEq5BmaBa4dm+vph7I0OZqp3PYYk83NE0eQUqSEg0dngXjCF3t6YbuIovhO7yTUg1tnsPwGaEMqXXIszmllCHVsMAhOPOghhxnKFIrpRo6HGu+GOpvuBT7OizFvpcalC0N1ZBnY0o4HZL3NDwnxGnC4YlqyHN8Wnm4nbfD8w5FajVEQ6YHU0oh0s74XBc1y4Q0JRkyJWkLxXffT48hlyClm1IMGd/0S3iakm6E2QQpVzUEQ4fnkqbDGdpOCYa8z2vwEQo3ZLvw7nAEKuJvwKw56vEdVoqoocP6PurzPaQIGrqRmBqCFMF5mkgIthIVqEXIsBCBFPVZzikvGoCh7axwi/VYOlbdoqobOicRmWrrsKw2Xqps6NoRCqBPaSGvMsGnZGg7NvsqOJTai1xuam4iMJahhrbr2KcRmNcbQam28O6HzwM584bVB/nGxzRPF9ln9YJ5v7tz/uMXo/lprzRzl1Jp5udffr24uKjXP3zYfsatEMDq3mZyNpmcHAsgmRr4bGu/nkgnuqTTifr2FsPfh7N2PhssN9xwvd6z61luRC+Sa5uz4XqDhuvzg36+ZD1icfxNze+O4daQ+PUcG2w2g6yNJdX8bhuuB/h5ionIpGpKNYC3DRvBgp7jNqNVHztfK/v1G26ECrYU9znFuuzMAoI9QxXBaCimkAj2DMNTNCqJ+i0UwRvDfUXBliJzu1lVbqK3DJ8pC7bgNdxU76L9hoBfIrHBKbgL5mjHUD1H23n6nNFwEg1h23ALEkwk5vkEU2gV+oYNTJCzn47BIfQM0RAyBhFdKTqG+6ggXyWe4yH0DOdhwwTTMQNeC31DaC3swmNISdKx5B6epGxp+pEUw706wTDBswGH9zNtwxShDLn2NQS/luHvJEOe9QI7NnUN/yAZpjkE31MazdjknzRDjpu3+BuuPaghxzk4/jGMv6FBMtSplz6C9TD+e5qd2O9L/3rAswXTpWnsz4fxP+M/gnua+N+1Ue9LN9AQMr4/4UGk3Hlzvs3gldh+t1B9POyEkPPdwjinva5BEWR9e3oE74fwxka7N2DyO77aoEIU3vEfwSyGYfx9j/M0EYigx+69zUStM1rd4p7m2uajNJ4Y99lE4xHMlxrejHDIAPQwQ41mhD1WU/6cdxDD57zT6XTPLrJz3j5r/3w8//er0fy3O+yrref7jbrHRiPSs/qGUW5WLr8MJsP9j59C89JqMR6Ipa9huRJqp7dhRkVPY8OrqpqftoYZVT9dDS+zyoJ6Gl6qR1BPQ0hQR8NDSFBDwwpQg1oaHoCC+hlWQUHtDCtYEepnWIYFdTO8jrshIYSaGQLbUU0N4UaqmyElSfUybMbeENyRamhIKUO9DCkh1MqwjG66tTO8ir0hfHASw8gR/ywlGja5/xuAZnjA/dsAtBX/ivu3AbCL0q4h918j4Jc0LcFL7r9GoCwXVoX7ryFwwfGsTo2GdHyqcv8zBp6mOq33bfAb7zL3L4M00WeZQ+4/hgGDqF0I0UrUbKnwge71NWukHZTHTDTbkva4UjbM6nRu6ke1FLM6FqGP2pKhsaBaFLUWbNXieFgxaluDXcrBc19WVc8ueovm6DBammfoDZXhA6ZW9lC/rdoIyplq9o6kZVmHMUjQPg4qVStrdclWD3VvMEM5aGYq19fXleZBbLJTEARBEARBEARBEARBEARBEARBEHz+B91xJIzYVK0AAAAAAElFTkSuQmCC\" />\n </eui-card-header-left-content>\n <eui-card-header-title>\n <a\n class=\"h5 eui-u-text-link-external\"\n href=\"https://www.figma.com/file/jQ9htWvSM8SWTPuk3hoigc/{{ figmaUrl }}\"\n target=\"blank\">\n <span class=\"eui-u-color-grey-75\">Layout component /</span>\n {{ label }}\n </a>\n </eui-card-header-title>\n </eui-card-header>\n </eui-card>\n </ng-template>\n </euiTabContent>\n </eui-tab>\n <eui-tab>\n <euiTabLabel>Pattern sample</euiTabLabel>\n <euiTabContent>\n <ng-content select=\"docPagePatternSample\"></ng-content>\n </euiTabContent>\n </eui-tab>\n\n <euiTabsRightContent>\n <button type=\"button\" euiButton euiAccent euiSizeS (click)=\"onNavigateToCode($event)\">\n <span class=\"eui-icon eui-icon-code\"></span>\n View sources\n </button>\n </euiTabsRightContent>\n</eui-tabs>\n\n<button\n type=\"button\"\n *ngIf=\"isShowGoTop && tabSelectedIndex === 0\"\n euiButton\n euiIconButton\n euiOutline\n euiRounded\n euiSizeL\n class=\"eui-button-fixed eui-u-sh-8\"\n (click)=\"gotoTop()\"\n title=\"Goto Top\"\n aria-label=\"Goto Top\">\n <!-- \uD83D\uDC46 -->\n <eui-icon-svg icon=\"eui-arrow-up\" set=\"eui\" size=\"l\" fillColor=\"grey-50\"></eui-icon-svg>\n</button>\n", styles: [".doc-page-pattern{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;padding:var(--eui-s-xl)}.doc-page-pattern sample,.doc-page-pattern eui-tabs,.doc-page-pattern .eui-tabs,.doc-page-pattern .eui-tab-content-wrapper,.doc-page-pattern .eui-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%}.doc-page-pattern .eui-tabs .eui-tab-item--active,.doc-page-pattern .eui-tabs .eui-tab-item:focus{background-color:var(--eui-c-white)}.doc-page-pattern .eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-s-m)}.doc-page-pattern docPagePatternSample{display:flex;flex-direction:column;flex-grow:1;min-height:0;position:relative;width:100%}.doc-page-pattern .html{display:block;position:relative;text-align:left}\n"], dependencies: [{ kind: "directive", type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.EuiCardComponent, selector: "eui-card", inputs: ["e2eAttr", "euiSelected", "euiCollapsible", "euiCollapsed", "euiUrgent", "euiNoShadow", "euiNoContentPadding", "euiHoverable"], outputs: ["collapse"] }, { kind: "component", type: i2$1.EuiCardHeaderComponent, selector: "eui-card-header", inputs: ["expandLabel", "collapseLabel", "hasHeaderClickToggle", "hasBottomExpander", "hasFullTitle", "isHeaderMultilines"], outputs: ["collapse"] }, { kind: "component", type: i2$1.EuiCardHeaderTitleComponent, selector: "eui-card-header-title" }, { kind: "component", type: i2$1.EuiCardContentComponent, selector: "eui-card-content" }, { kind: "component", type: i2$1.EuiCardHeaderLeftContentComponent, selector: "eui-card-header-left-content" }, { kind: "component", type: i2$1.EuiCardHeaderRightContentComponent, selector: "eui-card-header-right-content" }, { kind: "component", type: i2$2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i9.EuiTabsComponent, selector: "eui-tabs", inputs: ["tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClose", "tabSelect"] }, { kind: "component", type: i9.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "directive", type: i9.EuiTabsRightContentTagDirective, selector: "euiTabsRightContent" }, { kind: "component", type: i9.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "component", type: i9.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i7.EuiChipComponent, selector: "eui-chip, span[euiChip], li[euiChip]", inputs: ["ariaLabel", "e2eAttr", "euiInternalId", "tooltipMessage", "id", "data", "isChipRemovable", "isSquared"], outputs: ["remove"] }, { kind: "component", type: i6$1.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label", "maxCharCount", "charReplacement"] }, { kind: "component", type: i10.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i11.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }], encapsulation: i0.ViewEncapsulation.None }); }
1455
+ }
1456
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: DocPagePatternComponent, decorators: [{
1457
+ type: Component,
1458
+ args: [{ selector: 'eui-showcase-doc-page-pattern', encapsulation: ViewEncapsulation.None, template: "<eui-tabs (tabSelect)=\"onTabSelect($event)\">\n <eui-tab>\n <euiTabLabel>Usage and documentation</euiTabLabel>\n <euiTabContent>\n <h2 class=\"eui-u-color-primary-100 eui-u-mb-none eui-u-text-h2\">{{ label }}</h2>\n\n <h3 class=\"eui-u-text-h3\">Information</h3>\n <ng-content select=\"docPagePatternDoc\"></ng-content>\n\n <ng-container *ngIf=\"figmaEmbedSrc; else screenshot\">\n <h3 class=\"eui-u-mt-2xl eui-u-text-h3\">Figma design anatomy</h3>\n <iframe id=\"iframe-figma\" style=\"border: 1px solid rgba(0, 0, 0, 0.1)\" width=\"100%\" height=\"650\" [src]=\"urlSafe\"></iframe>\n </ng-container>\n <ng-template #screenshot>\n <ng-container *ngIf=\"figmaUrl !== 'PENDING_DS'\">\n <h3 class=\"eui-u-mt-2xl eui-u-text-h3\">Anatomy</h3>\n <img\n src=\"assets/images/design-system/{{ anatomyImage }}\"\n alt=\"Design anatomy image\"\n width=\"90%\"\n class=\"eui-u-sh-6 eui-u-mb-m\" />\n </ng-container>\n </ng-template>\n\n <ng-container *ngIf=\"docEntries.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-text-h3\">Design system references</h3>\n\n <eui-card *ngFor=\"let ref of docEntries\" class=\"eui-u-mb-m\" [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\">\n <eui-card-header>\n <eui-card-header-title>\n <div class=\"eui-u-flex\">\n <eui-badge *ngIf=\"ref?.id\" euiSizeXL class=\"eui-u-mr-s\">{{ ref.id }}</eui-badge>\n <span class=\"eui-u-font-l\">{{ ref.name }}</span>\n </div>\n </eui-card-header-title>\n <eui-card-header-right-content>\n <eui-chip [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\" class=\"eui-u-ml-m\">\n <span *ngIf=\"ref.mandatory\" euiLabel><strong> Mandatory </strong></span>\n <span *ngIf=\"!ref.mandatory\" euiLabel><strong> Optional </strong></span>\n </eui-chip>\n </eui-card-header-right-content>\n </eui-card-header>\n <eui-card-content>\n <h6 class=\"section-title eui-u-mt-none\"><strong>Description</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.description\"></div>\n\n <ng-container *ngIf=\"ref.whenToUse\">\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to use ?</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.whenToUse\"></div>\n </ng-container>\n <ng-container *ngIf=\"ref.whenNotToUse\">\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to not use ?</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.whenNotToUse\"></div>\n </ng-container>\n <div class=\"row\">\n <div class=\"col-md-6\">\n <ng-container *ngIf=\"ref.dos && ref.dos.length !== 0\">\n <h6 class=\"section-title eui-u-mt-xl\">\n <eui-icon-svg\n icon=\"thumbs-up\"\n set=\"sharp\"\n size=\"m\"\n fillColor=\"success-100\"\n class=\"eui-u-mr-m\"></eui-icon-svg>\n <strong>Do's</strong>\n </h6>\n <li *ngFor=\"let do of ref.dos\">{{ do }}</li>\n </ng-container>\n </div>\n <div class=\"col-md-6\">\n <ng-container *ngIf=\"ref.donts && ref.donts.length !== 0\">\n <h6 class=\"section-title eui-u-mt-xl\">\n <eui-icon-svg\n icon=\"hand-right\"\n set=\"sharp\"\n size=\"m\"\n fillColor=\"danger-100\"\n class=\"eui-u-mr-m\"></eui-icon-svg>\n <strong>Dont's</strong>\n </h6>\n <li *ngFor=\"let dont of ref.donts\">{{ dont }}</li>\n </ng-container>\n </div>\n </div>\n </eui-card-content>\n </eui-card>\n </ng-container>\n\n <!-- <ng-container *ngIf=\"dos.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-color-success-100 eui-u-text-h3\">Do's</h3>\n <table class=\"eui-table-default\">\n <tr *ngFor=\"let ref of dos\">\n <td>{{ref.description}}</td>\n </tr>\n </table>\n </ng-container>\n\n <ng-container *ngIf=\"donts.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-color-danger-100 eui-u-text-h3\">Dont's</h3>\n <table class=\"eui-table-default\">\n <tr *ngFor=\"let ref of donts\">\n <td>{{ref.description}}</td>\n </tr>\n </table>\n </ng-container> -->\n\n <h3 class=\"eui-u-mt-2xl eui-u-text-h3\">Figma resource</h3>\n <ng-container *ngIf=\"figmaUrl === 'PENDING_DS'; else figmaOK\">\n Pending Design system publication. Will be available in a future release.\n </ng-container>\n <ng-template #figmaOK>\n <eui-card>\n <eui-card-header>\n <eui-card-header-left-content>\n <img\n width=\"32\"\n height=\"32\"\n alt=\"Figma Logo\"\n src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAAADhCAMAAAAJbSJIAAABL1BMVEX/////cmLyTh6iWf8Kz4MavP7yTBr5YUWeUP8AzX3UuP//bVwAt/6jV///rKTyRgr2TwCxX+kA032m6Mf3m4uabPb/aVf/8O8AzHmbSf/xPAD/a1rxQgDyShaaR/8Avv74pJP/urP/6Ob/ZVLQ7//839n5tqj/xL7/b1f/9O/59f/r3v+65/9jzP6yef/p+P+u4//Mqv/iz//cxf/I7P/fvf+U2v71/fqO5LzW9ed74LIp043/y8b4rJz0dln/i3/zXTX2jnf/19P/emv0bEv/p5//l4zzWCz2h270dVf4g2D2Whzt5v+6hfuzbfCuWOjE2+6nz+6BxO5lu+5o1v9Nx/7BlP930v63rf+UoP90lP7n1v/Prv/iwf/Onf+hefiWZPZi36O07dLf9+2A4bX7S8Q6AAAGG0lEQVR4nO2aeVcaZxSHZ6JYhsHYFjsig3UhaHG3RkHBxMRE2zR2M5SuaUW//2cow4CgwMz7uzl65x3v8/+cM8+5y7tdwxAEQRAEQRAEQRAEQRAEQRAEQRCEiFJcOVqYDuDt0wAWV2pFboFAikcv8rl8fiqA/LE9Gtd1Hcd5ubjELTKC5eNcfu5JCBOfmWHYrnOyWOK2GWQhn58I01Mz9HDdp9xCd6g9UfJTNmw5mjVuqX5e5dT8AEPTLJxya92wdJZX9IMMTduMSMsphvcXmqFpOq+55TxeK2cobmgWIqBYhARRQ7PAvgOYmYIEYUPTmWE2PAZqkGRon/AKTqt3UaKh6b7lFCzmQEGCIW8pvgFzlGRov+QTrMEhpBhyrop4CEmGfEHEq5BmaBa4dm+vph7I0OZqp3PYYk83NE0eQUqSEg0dngXjCF3t6YbuIovhO7yTUg1tnsPwGaEMqXXIszmllCHVsMAhOPOghhxnKFIrpRo6HGu+GOpvuBT7OizFvpcalC0N1ZBnY0o4HZL3NDwnxGnC4YlqyHN8Wnm4nbfD8w5FajVEQ6YHU0oh0s74XBc1y4Q0JRkyJWkLxXffT48hlyClm1IMGd/0S3iakm6E2QQpVzUEQ4fnkqbDGdpOCYa8z2vwEQo3ZLvw7nAEKuJvwKw56vEdVoqoocP6PurzPaQIGrqRmBqCFMF5mkgIthIVqEXIsBCBFPVZzikvGoCh7axwi/VYOlbdoqobOicRmWrrsKw2Xqps6NoRCqBPaSGvMsGnZGg7NvsqOJTai1xuam4iMJahhrbr2KcRmNcbQam28O6HzwM584bVB/nGxzRPF9ln9YJ5v7tz/uMXo/lprzRzl1Jp5udffr24uKjXP3zYfsatEMDq3mZyNpmcHAsgmRr4bGu/nkgnuqTTifr2FsPfh7N2PhssN9xwvd6z61luRC+Sa5uz4XqDhuvzg36+ZD1icfxNze+O4daQ+PUcG2w2g6yNJdX8bhuuB/h5ionIpGpKNYC3DRvBgp7jNqNVHztfK/v1G26ECrYU9znFuuzMAoI9QxXBaCimkAj2DMNTNCqJ+i0UwRvDfUXBliJzu1lVbqK3DJ8pC7bgNdxU76L9hoBfIrHBKbgL5mjHUD1H23n6nNFwEg1h23ALEkwk5vkEU2gV+oYNTJCzn47BIfQM0RAyBhFdKTqG+6ggXyWe4yH0DOdhwwTTMQNeC31DaC3swmNISdKx5B6epGxp+pEUw706wTDBswGH9zNtwxShDLn2NQS/luHvJEOe9QI7NnUN/yAZpjkE31MazdjknzRDjpu3+BuuPaghxzk4/jGMv6FBMtSplz6C9TD+e5qd2O9L/3rAswXTpWnsz4fxP+M/gnua+N+1Ue9LN9AQMr4/4UGk3Hlzvs3gldh+t1B9POyEkPPdwjinva5BEWR9e3oE74fwxka7N2DyO77aoEIU3vEfwSyGYfx9j/M0EYigx+69zUStM1rd4p7m2uajNJ4Y99lE4xHMlxrejHDIAPQwQ41mhD1WU/6cdxDD57zT6XTPLrJz3j5r/3w8//er0fy3O+yrref7jbrHRiPSs/qGUW5WLr8MJsP9j59C89JqMR6Ipa9huRJqp7dhRkVPY8OrqpqftoYZVT9dDS+zyoJ6Gl6qR1BPQ0hQR8NDSFBDwwpQg1oaHoCC+hlWQUHtDCtYEepnWIYFdTO8jrshIYSaGQLbUU0N4UaqmyElSfUybMbeENyRamhIKUO9DCkh1MqwjG66tTO8ir0hfHASw8gR/ywlGja5/xuAZnjA/dsAtBX/ivu3AbCL0q4h918j4Jc0LcFL7r9GoCwXVoX7ryFwwfGsTo2GdHyqcv8zBp6mOq33bfAb7zL3L4M00WeZQ+4/hgGDqF0I0UrUbKnwge71NWukHZTHTDTbkva4UjbM6nRu6ke1FLM6FqGP2pKhsaBaFLUWbNXieFgxaluDXcrBc19WVc8ueovm6DBammfoDZXhA6ZW9lC/rdoIyplq9o6kZVmHMUjQPg4qVStrdclWD3VvMEM5aGYq19fXleZBbLJTEARBEARBEARBEARBEARBEARBEHz+B91xJIzYVK0AAAAAAElFTkSuQmCC\" />\n </eui-card-header-left-content>\n <eui-card-header-title>\n <a\n class=\"h5 eui-u-text-link-external\"\n href=\"https://www.figma.com/file/jQ9htWvSM8SWTPuk3hoigc/{{ figmaUrl }}\"\n target=\"blank\">\n <span class=\"eui-u-color-grey-75\">Layout component /</span>\n {{ label }}\n </a>\n </eui-card-header-title>\n </eui-card-header>\n </eui-card>\n </ng-template>\n </euiTabContent>\n </eui-tab>\n <eui-tab>\n <euiTabLabel>Pattern sample</euiTabLabel>\n <euiTabContent>\n <ng-content select=\"docPagePatternSample\"></ng-content>\n </euiTabContent>\n </eui-tab>\n\n <euiTabsRightContent>\n <button type=\"button\" euiButton euiAccent euiSizeS (click)=\"onNavigateToCode($event)\">\n <span class=\"eui-icon eui-icon-code\"></span>\n View sources\n </button>\n </euiTabsRightContent>\n</eui-tabs>\n\n<button\n type=\"button\"\n *ngIf=\"isShowGoTop && tabSelectedIndex === 0\"\n euiButton\n euiIconButton\n euiOutline\n euiRounded\n euiSizeL\n class=\"eui-button-fixed eui-u-sh-8\"\n (click)=\"gotoTop()\"\n title=\"Goto Top\"\n aria-label=\"Goto Top\">\n <!-- \uD83D\uDC46 -->\n <eui-icon-svg icon=\"eui-arrow-up\" set=\"eui\" size=\"l\" fillColor=\"grey-50\"></eui-icon-svg>\n</button>\n", styles: [".doc-page-pattern{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;padding:var(--eui-s-xl)}.doc-page-pattern sample,.doc-page-pattern eui-tabs,.doc-page-pattern .eui-tabs,.doc-page-pattern .eui-tab-content-wrapper,.doc-page-pattern .eui-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%}.doc-page-pattern .eui-tabs .eui-tab-item--active,.doc-page-pattern .eui-tabs .eui-tab-item:focus{background-color:var(--eui-c-white)}.doc-page-pattern .eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-s-m)}.doc-page-pattern docPagePatternSample{display:flex;flex-direction:column;flex-grow:1;min-height:0;position:relative;width:100%}.doc-page-pattern .html{display:block;position:relative;text-align:left}\n"] }]
1459
+ }], propDecorators: { cssClasses: [{
1460
+ type: HostBinding,
1461
+ args: ['class']
1462
+ }], sampleContent: [{
1463
+ type: ContentChild,
1464
+ args: [forwardRef(() => DocPagePatternSampleDirective)]
1465
+ }], docContent: [{
1466
+ type: ContentChild,
1467
+ args: [forwardRef(() => DocPagePatternDocDirective)]
1468
+ }], id: [{
1469
+ type: Input
1470
+ }], label: [{
1471
+ type: Input
1472
+ }], anatomyImage: [{
1473
+ type: Input
1474
+ }], docEntries: [{
1475
+ type: Input
1476
+ }], dos: [{
1477
+ type: Input
1478
+ }], donts: [{
1479
+ type: Input
1480
+ }], sourceUrl: [{
1481
+ type: Input
1482
+ }], figmaUrl: [{
1483
+ type: Input
1484
+ }], figmaEmbedSrc: [{
1485
+ type: Input
1486
+ }], checkScroll: [{
1487
+ type: HostListener,
1488
+ args: ['window:scroll']
1489
+ }] } });
1490
+
1491
+ const COMPONENTS = [
1492
+ EuiCodeHighlighterDirective,
1493
+ DocPageComponent,
1494
+ DocPageCodeComponent,
1495
+ DocPageCodeFabComponent,
1496
+ DocPageCodeModalComponent,
1497
+ DocPageOverviewContentDirective,
1498
+ DocPageOverviewDefaultContentDirective,
1499
+ DocPageApiContentDirective,
1500
+ DocPageInteractiveContentDirective,
1501
+ DocPageSamplesContentDirective,
1502
+ DocPageSectionsContentDirective,
1503
+ DocPageAccessibilityContentDirective,
1504
+ DocPageThemingContentDirective,
1505
+ DocSampleComponent,
1506
+ DocSampleApiComponent,
1507
+ DocSectionComponent,
1508
+ DocSectionCodeComponent,
1509
+ DocSectionCodeHtmlTagDirective,
1510
+ DocSectionCodeTsTagDirective,
1511
+ DocSectionCodeServiceTagDirective,
1512
+ DocSectionCodeCssTagDirective,
1513
+ DocSectionCodeDocTagDirective,
1514
+ DocSectionCodeDescriptionTagDirective,
1515
+ LoremIpsumSampleComponent,
1516
+ PlaygroundComponent,
1517
+ DocPagePatternComponent,
1518
+ DocPagePatternDocDirective,
1519
+ DocPagePatternSampleDirective,
2821
1520
  ];
2822
- var EuiShowcaseModule = class _EuiShowcaseModule {
2823
- static {
2824
- this.ɵfac = i014.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i014, type: _EuiShowcaseModule, deps: [], target: i014.ɵɵFactoryTarget.NgModule });
2825
- }
2826
- static {
2827
- this.ɵmod = i014.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0-rc.3", ngImport: i014, type: _EuiShowcaseModule, declarations: [
2828
- EuiCodeHighlighterDirective,
2829
- DocPageComponent,
2830
- DocPageCodeComponent,
2831
- DocPageCodeFabComponent,
2832
- DocPageCodeModalComponent,
2833
- DocPageOverviewContentDirective,
2834
- DocPageOverviewDefaultContentDirective,
2835
- DocPageApiContentDirective,
2836
- DocPageInteractiveContentDirective,
2837
- DocPageSamplesContentDirective,
2838
- DocPageSectionsContentDirective,
2839
- DocPageAccessibilityContentDirective,
2840
- DocPageThemingContentDirective,
2841
- DocSampleComponent,
2842
- DocSampleApiComponent,
2843
- DocSectionComponent,
2844
- DocSectionCodeComponent,
2845
- DocSectionCodeHtmlTagDirective,
2846
- DocSectionCodeTsTagDirective,
2847
- DocSectionCodeServiceTagDirective,
2848
- DocSectionCodeCssTagDirective,
2849
- DocSectionCodeDocTagDirective,
2850
- DocSectionCodeDescriptionTagDirective,
2851
- LoremIpsumSampleComponent,
2852
- PlaygroundComponent,
2853
- DocPagePatternComponent,
2854
- DocPagePatternDocDirective,
2855
- DocPagePatternSampleDirective
2856
- ], imports: [
2857
- CommonModule,
2858
- EuiCardModule,
2859
- EuiButtonModule,
2860
- EuiTabsModule,
2861
- EuiPageModule,
2862
- EuiChipModule,
2863
- EuiDialogModule,
2864
- EuiAlertModule,
2865
- EuiBlockContentModule,
2866
- EuiBadgeModule,
2867
- EuiIconModule,
2868
- EuiLabelModule
2869
- ], exports: [
2870
- EuiCodeHighlighterDirective,
2871
- DocPageComponent,
2872
- DocPageCodeComponent,
2873
- DocPageCodeFabComponent,
2874
- DocPageCodeModalComponent,
2875
- DocPageOverviewContentDirective,
2876
- DocPageOverviewDefaultContentDirective,
2877
- DocPageApiContentDirective,
2878
- DocPageInteractiveContentDirective,
2879
- DocPageSamplesContentDirective,
2880
- DocPageSectionsContentDirective,
2881
- DocPageAccessibilityContentDirective,
2882
- DocPageThemingContentDirective,
2883
- DocSampleComponent,
2884
- DocSampleApiComponent,
2885
- DocSectionComponent,
2886
- DocSectionCodeComponent,
2887
- DocSectionCodeHtmlTagDirective,
2888
- DocSectionCodeTsTagDirective,
2889
- DocSectionCodeServiceTagDirective,
2890
- DocSectionCodeCssTagDirective,
2891
- DocSectionCodeDocTagDirective,
2892
- DocSectionCodeDescriptionTagDirective,
2893
- LoremIpsumSampleComponent,
2894
- PlaygroundComponent,
2895
- DocPagePatternComponent,
2896
- DocPagePatternDocDirective,
2897
- DocPagePatternSampleDirective
2898
- ] });
2899
- }
2900
- static {
2901
- this.ɵinj = i014.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i014, type: _EuiShowcaseModule, providers: [StackblitzService], imports: [
2902
- CommonModule,
2903
- EuiCardModule,
2904
- EuiButtonModule,
2905
- EuiTabsModule,
2906
- EuiPageModule,
2907
- EuiChipModule,
2908
- EuiDialogModule,
2909
- EuiAlertModule,
2910
- EuiBlockContentModule,
2911
- EuiBadgeModule,
2912
- EuiIconModule,
2913
- EuiLabelModule
2914
- ] });
2915
- }
2916
- };
2917
- i014.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i014, type: EuiShowcaseModule, decorators: [{
2918
- type: NgModule,
2919
- args: [{
2920
- declarations: [...COMPONENTS],
2921
- imports: [
2922
- CommonModule,
2923
- EuiCardModule,
2924
- EuiButtonModule,
2925
- EuiTabsModule,
2926
- EuiPageModule,
2927
- EuiChipModule,
2928
- EuiDialogModule,
2929
- EuiAlertModule,
2930
- EuiBlockContentModule,
2931
- EuiBadgeModule,
2932
- EuiIconModule,
2933
- EuiLabelModule
2934
- ],
2935
- exports: [...COMPONENTS],
2936
- providers: [StackblitzService]
2937
- }]
2938
- }] });
2939
- export {
2940
- DocPageAccessibilityContentDirective,
2941
- DocPageApiContentDirective,
2942
- DocPageCodeComponent,
2943
- DocPageCodeFabComponent,
2944
- DocPageCodeModalComponent,
2945
- DocPageComponent,
2946
- DocPageInteractiveContentDirective,
2947
- DocPageOverviewContentDirective,
2948
- DocPageOverviewDefaultContentDirective,
2949
- DocPagePatternComponent,
2950
- DocPagePatternDocDirective,
2951
- DocPagePatternSampleDirective,
2952
- DocPageSamplesContentDirective,
2953
- DocPageSectionsContentDirective,
2954
- DocPageThemingContentDirective,
2955
- DocSampleApiComponent,
2956
- DocSampleComponent,
2957
- DocSectionCodeComponent,
2958
- DocSectionCodeCssTagDirective,
2959
- DocSectionCodeDescriptionTagDirective,
2960
- DocSectionCodeDocTagDirective,
2961
- DocSectionCodeHtmlTagDirective,
2962
- DocSectionCodeServiceTagDirective,
2963
- DocSectionCodeTsTagDirective,
2964
- DocSectionComponent,
2965
- EuiCodeHighlighterDirective,
2966
- EuiShowcaseModule,
2967
- LoremIpsumSampleComponent,
2968
- PACKAGE_JSON,
2969
- PlaygroundComponent,
2970
- angularJsonFile,
2971
- indexHtmlFile,
2972
- mainFile,
2973
- moduleFile,
2974
- polyfillsFile,
2975
- tsConfig
2976
- };
1521
+ class EuiShowcaseModule {
1522
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: EuiShowcaseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1523
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0-rc.3", ngImport: i0, type: EuiShowcaseModule, declarations: [EuiCodeHighlighterDirective,
1524
+ DocPageComponent,
1525
+ DocPageCodeComponent,
1526
+ DocPageCodeFabComponent,
1527
+ DocPageCodeModalComponent,
1528
+ DocPageOverviewContentDirective,
1529
+ DocPageOverviewDefaultContentDirective,
1530
+ DocPageApiContentDirective,
1531
+ DocPageInteractiveContentDirective,
1532
+ DocPageSamplesContentDirective,
1533
+ DocPageSectionsContentDirective,
1534
+ DocPageAccessibilityContentDirective,
1535
+ DocPageThemingContentDirective,
1536
+ DocSampleComponent,
1537
+ DocSampleApiComponent,
1538
+ DocSectionComponent,
1539
+ DocSectionCodeComponent,
1540
+ DocSectionCodeHtmlTagDirective,
1541
+ DocSectionCodeTsTagDirective,
1542
+ DocSectionCodeServiceTagDirective,
1543
+ DocSectionCodeCssTagDirective,
1544
+ DocSectionCodeDocTagDirective,
1545
+ DocSectionCodeDescriptionTagDirective,
1546
+ LoremIpsumSampleComponent,
1547
+ PlaygroundComponent,
1548
+ DocPagePatternComponent,
1549
+ DocPagePatternDocDirective,
1550
+ DocPagePatternSampleDirective], imports: [CommonModule,
1551
+ EuiCardModule,
1552
+ EuiButtonModule,
1553
+ EuiTabsModule,
1554
+ EuiPageModule,
1555
+ EuiChipModule,
1556
+ EuiDialogModule,
1557
+ EuiAlertModule,
1558
+ EuiBlockContentModule,
1559
+ EuiBadgeModule,
1560
+ EuiIconModule,
1561
+ EuiLabelModule], exports: [EuiCodeHighlighterDirective,
1562
+ DocPageComponent,
1563
+ DocPageCodeComponent,
1564
+ DocPageCodeFabComponent,
1565
+ DocPageCodeModalComponent,
1566
+ DocPageOverviewContentDirective,
1567
+ DocPageOverviewDefaultContentDirective,
1568
+ DocPageApiContentDirective,
1569
+ DocPageInteractiveContentDirective,
1570
+ DocPageSamplesContentDirective,
1571
+ DocPageSectionsContentDirective,
1572
+ DocPageAccessibilityContentDirective,
1573
+ DocPageThemingContentDirective,
1574
+ DocSampleComponent,
1575
+ DocSampleApiComponent,
1576
+ DocSectionComponent,
1577
+ DocSectionCodeComponent,
1578
+ DocSectionCodeHtmlTagDirective,
1579
+ DocSectionCodeTsTagDirective,
1580
+ DocSectionCodeServiceTagDirective,
1581
+ DocSectionCodeCssTagDirective,
1582
+ DocSectionCodeDocTagDirective,
1583
+ DocSectionCodeDescriptionTagDirective,
1584
+ LoremIpsumSampleComponent,
1585
+ PlaygroundComponent,
1586
+ DocPagePatternComponent,
1587
+ DocPagePatternDocDirective,
1588
+ DocPagePatternSampleDirective] }); }
1589
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: EuiShowcaseModule, providers: [StackblitzService], imports: [CommonModule,
1590
+ EuiCardModule,
1591
+ EuiButtonModule,
1592
+ EuiTabsModule,
1593
+ EuiPageModule,
1594
+ EuiChipModule,
1595
+ EuiDialogModule,
1596
+ EuiAlertModule,
1597
+ EuiBlockContentModule,
1598
+ EuiBadgeModule,
1599
+ EuiIconModule,
1600
+ EuiLabelModule] }); }
1601
+ }
1602
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-rc.3", ngImport: i0, type: EuiShowcaseModule, decorators: [{
1603
+ type: NgModule,
1604
+ args: [{
1605
+ declarations: [...COMPONENTS],
1606
+ imports: [
1607
+ CommonModule,
1608
+ EuiCardModule,
1609
+ EuiButtonModule,
1610
+ EuiTabsModule,
1611
+ EuiPageModule,
1612
+ EuiChipModule,
1613
+ EuiDialogModule,
1614
+ EuiAlertModule,
1615
+ EuiBlockContentModule,
1616
+ EuiBadgeModule,
1617
+ EuiIconModule,
1618
+ EuiLabelModule,
1619
+ ],
1620
+ exports: [...COMPONENTS],
1621
+ providers: [StackblitzService],
1622
+ }]
1623
+ }] });
1624
+
1625
+ /**
1626
+ * Generated bundle index. Do not edit.
1627
+ */
1628
+
1629
+ export { DocPageAccessibilityContentDirective, DocPageApiContentDirective, DocPageCodeComponent, DocPageCodeFabComponent, DocPageCodeModalComponent, DocPageComponent, DocPageInteractiveContentDirective, DocPageOverviewContentDirective, DocPageOverviewDefaultContentDirective, DocPagePatternComponent, DocPagePatternDocDirective, DocPagePatternSampleDirective, DocPageSamplesContentDirective, DocPageSectionsContentDirective, DocPageThemingContentDirective, DocSampleApiComponent, DocSampleComponent, DocSectionCodeComponent, DocSectionCodeCssTagDirective, DocSectionCodeDescriptionTagDirective, DocSectionCodeDocTagDirective, DocSectionCodeHtmlTagDirective, DocSectionCodeServiceTagDirective, DocSectionCodeTsTagDirective, DocSectionComponent, EuiCodeHighlighterDirective, EuiShowcaseModule, LoremIpsumSampleComponent, PACKAGE_JSON, PlaygroundComponent, angularJsonFile, indexHtmlFile, mainFile, moduleFile, polyfillsFile, tsConfig };
2977
1630
  //# sourceMappingURL=eui-showcase.mjs.map