@mathstack/app-kit 0.0.1-beta.0 → 0.0.1-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # AppDevKit
2
2
 
3
+ ## Overview
4
+
5
+ The app-kit is a library of miscellaneous utilities, styles, and components that are specific to
6
+ neither the `@mathstack/ui` nor the `@mathstack/viz` libraries.
7
+
3
8
  This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version
4
9
  19.2.0.
5
10
 
@@ -1,9 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, EventEmitter, Output, Input, ChangeDetectionStrategy, Component, ContentChild, ViewChild, Inject, ViewEncapsulation } from '@angular/core';
2
+ import { inject, Injectable, NgZone, EventEmitter, Output, Input, ChangeDetectionStrategy, Component, DestroyRef, ContentChild, ViewChild, ViewEncapsulation } from '@angular/core';
3
3
  import { csvParse } from 'd3';
4
4
  import { forkJoin, of, mergeMap, from, map, switchMap, BehaviorSubject, fromEvent, debounceTime, distinctUntilChanged, withLatestFrom } from 'rxjs';
5
5
  import { parse } from 'yaml';
6
- import * as i1 from '@angular/common/http';
6
+ import { HttpClient } from '@angular/common/http';
7
+ import { DomSanitizer } from '@angular/platform-browser';
7
8
  import rehypeAutolinkHeadings from 'rehype-autolink-headings';
8
9
  import rehypeRaw from 'rehype-raw';
9
10
  import rehypeSlug from 'rehype-slug';
@@ -16,15 +17,14 @@ import { fromParse5 } from 'hast-util-from-parse5';
16
17
  import { parse as parse$1 } from 'parse5';
17
18
  import { createHighlighter } from 'shiki/index.mjs';
18
19
  import { visit } from 'unist-util-visit';
19
- import * as i1$1 from '@angular/platform-browser';
20
20
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
21
- import * as i3 from '@angular/common';
21
+ import * as i1 from '@angular/common';
22
22
  import { CommonModule, TitleCasePipe, DOCUMENT } from '@angular/common';
23
23
  import { isEqual, get } from 'lodash-es';
24
24
 
25
25
  class AdkAssetsResource {
26
- constructor(http) {
27
- this.http = http;
26
+ constructor() {
27
+ this.http = inject(HttpClient);
28
28
  }
29
29
  getAsset(path, responseType) {
30
30
  return this.http.get(path, {
@@ -32,15 +32,15 @@ class AdkAssetsResource {
32
32
  responseType: responseType,
33
33
  });
34
34
  }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkAssetsResource, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
36
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkAssetsResource, providedIn: 'root' }); }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkAssetsResource, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
36
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkAssetsResource, providedIn: 'root' }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkAssetsResource, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkAssetsResource, decorators: [{
39
39
  type: Injectable,
40
40
  args: [{
41
41
  providedIn: 'root',
42
42
  }]
43
- }], ctorParameters: () => [{ type: i1.HttpClient }] });
43
+ }] });
44
44
 
45
45
  var AdkAssetResponse;
46
46
  (function (AdkAssetResponse) {
@@ -50,10 +50,10 @@ var AdkAssetResponse;
50
50
  AdkAssetResponse["Text"] = "text";
51
51
  })(AdkAssetResponse || (AdkAssetResponse = {}));
52
52
  class AdkAssetsService {
53
- constructor(resource) {
54
- this.resource = resource;
53
+ constructor() {
55
54
  this.assets = {};
56
55
  this.assetsPath = 'assets/';
56
+ this.resource = inject(AdkAssetsResource);
57
57
  }
58
58
  setAssetsPath(path) {
59
59
  this.assetsPath = path;
@@ -88,13 +88,13 @@ class AdkAssetsService {
88
88
  parseYaml(str) {
89
89
  return parse(str);
90
90
  }
91
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkAssetsService, deps: [{ token: AdkAssetsResource }], target: i0.ɵɵFactoryTarget.Injectable }); }
92
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkAssetsService, providedIn: 'root' }); }
91
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkAssetsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
92
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkAssetsService, providedIn: 'root' }); }
93
93
  }
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkAssetsService, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkAssetsService, decorators: [{
95
95
  type: Injectable,
96
96
  args: [{ providedIn: 'root' }]
97
- }], ctorParameters: () => [{ type: AdkAssetsResource }] });
97
+ }] });
98
98
 
99
99
  function deepMerge(target, source) {
100
100
  const output = Object.assign({}, target);
@@ -292,10 +292,10 @@ class AdkShikiHighlighter {
292
292
  }
293
293
  return null;
294
294
  }
295
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkShikiHighlighter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
296
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkShikiHighlighter, providedIn: 'root' }); }
295
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkShikiHighlighter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
296
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkShikiHighlighter, providedIn: 'root' }); }
297
297
  }
298
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkShikiHighlighter, decorators: [{
298
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkShikiHighlighter, decorators: [{
299
299
  type: Injectable,
300
300
  args: [{
301
301
  providedIn: 'root',
@@ -315,9 +315,9 @@ const DEFAULT_PARSING_OPTIONS = {
315
315
  highlighter: DEFAULT_HIGHLIGHTER_OPTIONS,
316
316
  };
317
317
  class AdkMarkdownParser {
318
- constructor(sanitizer, shikiHighlighter) {
319
- this.sanitizer = sanitizer;
320
- this.shikiHighlighter = shikiHighlighter;
318
+ constructor() {
319
+ this.sanitizer = inject(DomSanitizer);
320
+ this.shikiHighlighter = inject(AdkShikiHighlighter);
321
321
  this.parser = unified;
322
322
  }
323
323
  parse(markdown, options) {
@@ -415,12 +415,12 @@ class AdkMarkdownParser {
415
415
  const pathTo = pathToKV.split(':')[1]?.trim();
416
416
  return { name, pathTo };
417
417
  }
418
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkMarkdownParser, deps: [{ token: i1$1.DomSanitizer }, { token: AdkShikiHighlighter }], target: i0.ɵɵFactoryTarget.Injectable }); }
419
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkMarkdownParser }); }
418
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkMarkdownParser, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
419
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkMarkdownParser }); }
420
420
  }
421
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkMarkdownParser, decorators: [{
421
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkMarkdownParser, decorators: [{
422
422
  type: Injectable
423
- }], ctorParameters: () => [{ type: i1$1.DomSanitizer }, { type: AdkShikiHighlighter }] });
423
+ }], ctorParameters: () => [] });
424
424
 
425
425
  /* eslint-disable @typescript-eslint/no-explicit-any */
426
426
  /**
@@ -457,10 +457,10 @@ function safeAssign(target, source, logConflicts = false) {
457
457
  }
458
458
 
459
459
  class AdkActiveHeadingTracker {
460
- constructor(ngZone) {
461
- this.ngZone = ngZone;
460
+ constructor() {
462
461
  this.activeHeadingId = new BehaviorSubject(null);
463
462
  this.activeHeadingId$ = this.activeHeadingId.asObservable();
463
+ this.ngZone = inject(NgZone);
464
464
  }
465
465
  initScrollListener(contentEl, destroyRef) {
466
466
  this.ngZone.runOutsideAngular(() => {
@@ -493,21 +493,21 @@ class AdkActiveHeadingTracker {
493
493
  scrollToTop() {
494
494
  window.scrollTo({ top: 0, behavior: 'smooth' });
495
495
  }
496
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkActiveHeadingTracker, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
497
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkActiveHeadingTracker, providedIn: 'root' }); }
496
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkActiveHeadingTracker, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
497
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkActiveHeadingTracker, providedIn: 'root' }); }
498
498
  }
499
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkActiveHeadingTracker, decorators: [{
499
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkActiveHeadingTracker, decorators: [{
500
500
  type: Injectable,
501
501
  args: [{
502
502
  providedIn: 'root',
503
503
  }]
504
- }], ctorParameters: () => [{ type: i0.NgZone }] });
504
+ }] });
505
505
 
506
506
  class AdkDocumentIndexComponent {
507
- constructor(activeHeadingTracker) {
508
- this.activeHeadingTracker = activeHeadingTracker;
507
+ constructor() {
509
508
  this.headings = [];
510
509
  this.activeHeading = new EventEmitter();
510
+ this.activeHeadingTracker = inject(AdkActiveHeadingTracker);
511
511
  }
512
512
  setActiveHeading(event, heading) {
513
513
  this.activeHeading.emit({ heading, event });
@@ -515,13 +515,13 @@ class AdkDocumentIndexComponent {
515
515
  scrollToTop() {
516
516
  this.activeHeadingTracker.scrollToTop();
517
517
  }
518
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentIndexComponent, deps: [{ token: AdkActiveHeadingTracker }], target: i0.ɵɵFactoryTarget.Component }); }
519
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.2", type: AdkDocumentIndexComponent, isStandalone: true, selector: "hsi-adk-document-index", inputs: { headings: "headings" }, outputs: { activeHeading: "activeHeading" }, ngImport: i0, template: "<nav class=\"toc\">\n @if (headings.length > 0) {\n <p class=\"index-title\">On this page</p>\n <ul class=\"links-container\">\n @for (heading of headings; track $index) {\n <li class=\"toc-item\">\n <button\n type=\"button\"\n class=\"toc-link\"\n [style.--level]=\"heading.level\"\n (click)=\"setActiveHeading($event, heading)\"\n (keydown.enter)=\"setActiveHeading($event, heading)\"\n [class.active]=\"\n heading.id === (activeHeadingTracker.activeHeadingId$ | async)\n \"\n >{{ heading.text }}</button\n >\n </li>\n }\n </ul>\n <button\n type=\"button\"\n class=\"back-to-top\"\n (click)=\"scrollToTop()\"\n (keydown.enter)=\"scrollToTop()\"\n >\n Back to top<span\n aria-hidden=\"true\"\n class=\"material-symbols-outlined arrow\"\n >arrow_upward</span\n >\n </button>\n }\n</nav>\n", styles: [".links-container{list-style:none;flex-basis:28%;padding:0;margin:0;width:250px}.index-title{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:9pt;letter-spacing:.25pt;line-height:12pt;letter-spacing:.8pt;text-transform:uppercase;padding-bottom:.25rem}.toc-link{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:11pt;letter-spacing:0;line-height:16pt;cursor:pointer;padding-top:.25rem;padding-bottom:.25rem;padding-left:calc((var(--level) - 1) * 1rem);display:block;border-left:2px solid var(--hsi-adk-color-muted-primary-90);color:var(--hsi-adk-color-muted-primary-50);text-align:left}.toc-link:hover{color:var(--hsi-adk-color-muted-primary-25);border-left:2px solid var(--hsi-adk-color-muted-primary-70)}.toc-link.active{color:var(--hsi-adk-color-primary-40);border-left:2px solid var(--hsi-adk-color-primary-40)}.back-to-top{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:11pt;letter-spacing:0;line-height:16pt;cursor:pointer;padding:.5rem 0;display:flex;align-items:center;text-align:left;color:var(--hsi-adk-color-muted-primary-40)}.back-to-top:hover{color:var(--hsi-adk-color-muted-primary-10)}.arrow{transform:scale(.7)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
518
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentIndexComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
519
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: AdkDocumentIndexComponent, isStandalone: true, selector: "hsi-adk-document-index", inputs: { headings: "headings" }, outputs: { activeHeading: "activeHeading" }, ngImport: i0, template: "<nav class=\"toc\">\n @if (headings.length > 0) {\n <p class=\"index-title\">On this page</p>\n <ul class=\"links-container\">\n @for (heading of headings; track $index) {\n <li class=\"toc-item\">\n <button\n type=\"button\"\n class=\"toc-link\"\n [style.--level]=\"heading.level\"\n (click)=\"setActiveHeading($event, heading)\"\n (keydown.enter)=\"setActiveHeading($event, heading)\"\n [class.active]=\"\n heading.id === (activeHeadingTracker.activeHeadingId$ | async)\n \"\n >{{ heading.text }}</button\n >\n </li>\n }\n </ul>\n <button\n type=\"button\"\n class=\"back-to-top\"\n (click)=\"scrollToTop()\"\n (keydown.enter)=\"scrollToTop()\"\n >\n Back to top<span\n aria-hidden=\"true\"\n class=\"material-symbols-outlined arrow\"\n >arrow_upward</span\n >\n </button>\n }\n</nav>\n", styles: [".links-container{list-style:none;flex-basis:28%;padding:0;margin:0;width:250px}.index-title{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:9pt;letter-spacing:.25pt;line-height:12pt;letter-spacing:.8pt;text-transform:uppercase;padding-bottom:.25rem}.toc-link{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:11pt;letter-spacing:0;line-height:16pt;cursor:pointer;padding-top:.25rem;padding-bottom:.25rem;padding-left:calc((var(--level) - 1) * 1rem);display:block;border-left:2px solid var(--hsi-adk-color-muted-primary-90);color:var(--hsi-adk-color-muted-primary-50);text-align:left}.toc-link:hover{color:var(--hsi-adk-color-muted-primary-25);border-left:2px solid var(--hsi-adk-color-muted-primary-70)}.toc-link.active{color:var(--hsi-adk-color-primary-40);border-left:2px solid var(--hsi-adk-color-primary-40)}.back-to-top{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:11pt;letter-spacing:0;line-height:16pt;cursor:pointer;padding:.5rem 0;display:flex;align-items:center;text-align:left;color:var(--hsi-adk-color-muted-primary-40)}.back-to-top:hover{color:var(--hsi-adk-color-muted-primary-10)}.arrow{transform:scale(.7)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
520
520
  }
521
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentIndexComponent, decorators: [{
521
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentIndexComponent, decorators: [{
522
522
  type: Component,
523
523
  args: [{ selector: 'hsi-adk-document-index', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav class=\"toc\">\n @if (headings.length > 0) {\n <p class=\"index-title\">On this page</p>\n <ul class=\"links-container\">\n @for (heading of headings; track $index) {\n <li class=\"toc-item\">\n <button\n type=\"button\"\n class=\"toc-link\"\n [style.--level]=\"heading.level\"\n (click)=\"setActiveHeading($event, heading)\"\n (keydown.enter)=\"setActiveHeading($event, heading)\"\n [class.active]=\"\n heading.id === (activeHeadingTracker.activeHeadingId$ | async)\n \"\n >{{ heading.text }}</button\n >\n </li>\n }\n </ul>\n <button\n type=\"button\"\n class=\"back-to-top\"\n (click)=\"scrollToTop()\"\n (keydown.enter)=\"scrollToTop()\"\n >\n Back to top<span\n aria-hidden=\"true\"\n class=\"material-symbols-outlined arrow\"\n >arrow_upward</span\n >\n </button>\n }\n</nav>\n", styles: [".links-container{list-style:none;flex-basis:28%;padding:0;margin:0;width:250px}.index-title{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:9pt;letter-spacing:.25pt;line-height:12pt;letter-spacing:.8pt;text-transform:uppercase;padding-bottom:.25rem}.toc-link{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:11pt;letter-spacing:0;line-height:16pt;cursor:pointer;padding-top:.25rem;padding-bottom:.25rem;padding-left:calc((var(--level) - 1) * 1rem);display:block;border-left:2px solid var(--hsi-adk-color-muted-primary-90);color:var(--hsi-adk-color-muted-primary-50);text-align:left}.toc-link:hover{color:var(--hsi-adk-color-muted-primary-25);border-left:2px solid var(--hsi-adk-color-muted-primary-70)}.toc-link.active{color:var(--hsi-adk-color-primary-40);border-left:2px solid var(--hsi-adk-color-primary-40)}.back-to-top{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:11pt;letter-spacing:0;line-height:16pt;cursor:pointer;padding:.5rem 0;display:flex;align-items:center;text-align:left;color:var(--hsi-adk-color-muted-primary-40)}.back-to-top:hover{color:var(--hsi-adk-color-muted-primary-10)}.arrow{transform:scale(.7)}\n"] }]
524
- }], ctorParameters: () => [{ type: AdkActiveHeadingTracker }], propDecorators: { headings: [{
524
+ }], propDecorators: { headings: [{
525
525
  type: Input
526
526
  }], activeHeading: [{
527
527
  type: Output
@@ -590,19 +590,19 @@ class AdkDocumentationConfigParser {
590
590
  }
591
591
  return result;
592
592
  }
593
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentationConfigParser, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
594
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentationConfigParser }); }
593
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentationConfigParser, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
594
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentationConfigParser }); }
595
595
  }
596
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentationConfigParser, decorators: [{
596
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentationConfigParser, decorators: [{
597
597
  type: Injectable
598
598
  }] });
599
599
 
600
600
  class AdkDocumentationContentService {
601
- constructor(assetsService, docsConfigParser, markdownParser) {
602
- this.assetsService = assetsService;
603
- this.docsConfigParser = docsConfigParser;
604
- this.markdownParser = markdownParser;
601
+ constructor() {
605
602
  this.files = {};
603
+ this.assetsService = inject(AdkAssetsService);
604
+ this.docsConfigParser = inject(AdkDocumentationConfigParser);
605
+ this.markdownParser = inject(AdkMarkdownParser);
606
606
  }
607
607
  /**
608
608
  * This service requires the consuming app to provide the AdkDocumentationDisplayService, the AdkAssetsService, and the AdkDocumentationConfigParser at the level at which this service is configured.
@@ -640,17 +640,17 @@ class AdkDocumentationContentService {
640
640
  }
641
641
  return this.files[filePathFromAssets];
642
642
  }
643
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentationContentService, deps: [{ token: AdkAssetsService }, { token: AdkDocumentationConfigParser }, { token: AdkMarkdownParser }], target: i0.ɵɵFactoryTarget.Injectable }); }
644
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentationContentService }); }
643
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentationContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
644
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentationContentService }); }
645
645
  }
646
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentationContentService, decorators: [{
646
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentationContentService, decorators: [{
647
647
  type: Injectable
648
- }], ctorParameters: () => [{ type: AdkAssetsService }, { type: AdkDocumentationConfigParser }, { type: AdkMarkdownParser }] });
648
+ }] });
649
649
 
650
650
  class NavigationSiblingsComponent {
651
- constructor(titleCase) {
652
- this.titleCase = titleCase;
651
+ constructor() {
653
652
  this.nextDoc = new EventEmitter();
653
+ this.titleCase = inject(TitleCasePipe);
654
654
  }
655
655
  ngOnChanges() {
656
656
  this.setDisplayNames();
@@ -672,27 +672,27 @@ class NavigationSiblingsComponent {
672
672
  navigateToDoc(sibling) {
673
673
  this.nextDoc.emit(sibling);
674
674
  }
675
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NavigationSiblingsComponent, deps: [{ token: i3.TitleCasePipe }], target: i0.ɵɵFactoryTarget.Component }); }
676
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.2", type: NavigationSiblingsComponent, isStandalone: true, selector: "hsi-adk-navigation-siblings", inputs: { siblings: "siblings" }, outputs: { nextDoc: "nextDoc" }, providers: [TitleCasePipe], usesOnChanges: true, ngImport: i0, template: "@if (siblings.previous) {\n <div\n class=\"nav-panel previous\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"navigateToDoc(siblings.previous)\"\n (keydown.enter)=\"navigateToDoc(siblings.previous)\"\n ><p class=\"label\">Previous</p\n ><p class=\"name\"\n ><span aria-hidden=\"true\" class=\"material-symbols-outlined arrow\"\n >arrow_back</span\n >{{ previous }}</p\n ></div\n >\n}\n@if (siblings.next) {\n <div\n class=\"nav-panel next\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"navigateToDoc(siblings.next)\"\n (keydown.enter)=\"navigateToDoc(siblings.next)\"\n ><p class=\"label\">Next</p\n ><p class=\"name\"\n >{{ next }}\n <span aria-hidden=\"true\" class=\"material-symbols-outlined arrow\"\n >arrow_forward</span\n ></p\n ></div\n >\n}\n", styles: [":host{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:\"previous next\";gap:1rem}.nav-panel{border:1px solid var(--hsi-adk-color-muted-primary-80);padding:1rem;border-radius:.5rem;cursor:pointer}.nav-panel:hover{background:var(--hsi-adk-color-primary-98);border:1px solid var(--hsi-adk-color-primary-70)}.nav-panel.previous{grid-area:previous}.nav-panel.next{grid-area:next;text-align:right}.nav-panel.next .name,.nav-panel.next .label{justify-content:flex-end}.label{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:9pt;letter-spacing:.25pt;line-height:12pt;letter-spacing:.8pt;text-transform:uppercase;line-height:1;display:flex;align-items:center}.name{display:flex;align-items:center;position:relative;padding-top:.5rem;color:var(--hsi-adk-color-primary-40)}.arrow{transform:scale(.8);position:relative;top:-1px}.previous .name{left:-6px}.next .name{right:-6px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
675
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: NavigationSiblingsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
676
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: NavigationSiblingsComponent, isStandalone: true, selector: "hsi-adk-navigation-siblings", inputs: { siblings: "siblings" }, outputs: { nextDoc: "nextDoc" }, providers: [TitleCasePipe], usesOnChanges: true, ngImport: i0, template: "@if (siblings.previous) {\n <div\n class=\"nav-panel previous\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"navigateToDoc(siblings.previous)\"\n (keydown.enter)=\"navigateToDoc(siblings.previous)\"\n ><p class=\"label\">Previous</p\n ><p class=\"name\"\n ><span aria-hidden=\"true\" class=\"material-symbols-outlined arrow\"\n >arrow_back</span\n >{{ previous }}</p\n ></div\n >\n}\n@if (siblings.next) {\n <div\n class=\"nav-panel next\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"navigateToDoc(siblings.next)\"\n (keydown.enter)=\"navigateToDoc(siblings.next)\"\n ><p class=\"label\">Next</p\n ><p class=\"name\"\n >{{ next }}\n <span aria-hidden=\"true\" class=\"material-symbols-outlined arrow\"\n >arrow_forward</span\n ></p\n ></div\n >\n}\n", styles: [":host{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:\"previous next\";gap:1rem}.nav-panel{border:1px solid var(--hsi-adk-color-muted-primary-80);padding:1rem;border-radius:.5rem;cursor:pointer}.nav-panel:hover{background:var(--hsi-adk-color-primary-98);border:1px solid var(--hsi-adk-color-primary-70)}.nav-panel.previous{grid-area:previous}.nav-panel.next{grid-area:next;text-align:right}.nav-panel.next .name,.nav-panel.next .label{justify-content:flex-end}.label{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:9pt;letter-spacing:.25pt;line-height:12pt;letter-spacing:.8pt;text-transform:uppercase;line-height:1;display:flex;align-items:center}.name{display:flex;align-items:center;position:relative;padding-top:.5rem;color:var(--hsi-adk-color-primary-40)}.arrow{transform:scale(.8);position:relative;top:-1px}.previous .name{left:-6px}.next .name{right:-6px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
677
677
  }
678
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NavigationSiblingsComponent, decorators: [{
678
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: NavigationSiblingsComponent, decorators: [{
679
679
  type: Component,
680
680
  args: [{ selector: 'hsi-adk-navigation-siblings', imports: [CommonModule], providers: [TitleCasePipe], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (siblings.previous) {\n <div\n class=\"nav-panel previous\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"navigateToDoc(siblings.previous)\"\n (keydown.enter)=\"navigateToDoc(siblings.previous)\"\n ><p class=\"label\">Previous</p\n ><p class=\"name\"\n ><span aria-hidden=\"true\" class=\"material-symbols-outlined arrow\"\n >arrow_back</span\n >{{ previous }}</p\n ></div\n >\n}\n@if (siblings.next) {\n <div\n class=\"nav-panel next\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"navigateToDoc(siblings.next)\"\n (keydown.enter)=\"navigateToDoc(siblings.next)\"\n ><p class=\"label\">Next</p\n ><p class=\"name\"\n >{{ next }}\n <span aria-hidden=\"true\" class=\"material-symbols-outlined arrow\"\n >arrow_forward</span\n ></p\n ></div\n >\n}\n", styles: [":host{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:\"previous next\";gap:1rem}.nav-panel{border:1px solid var(--hsi-adk-color-muted-primary-80);padding:1rem;border-radius:.5rem;cursor:pointer}.nav-panel:hover{background:var(--hsi-adk-color-primary-98);border:1px solid var(--hsi-adk-color-primary-70)}.nav-panel.previous{grid-area:previous}.nav-panel.next{grid-area:next;text-align:right}.nav-panel.next .name,.nav-panel.next .label{justify-content:flex-end}.label{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:9pt;letter-spacing:.25pt;line-height:12pt;letter-spacing:.8pt;text-transform:uppercase;line-height:1;display:flex;align-items:center}.name{display:flex;align-items:center;position:relative;padding-top:.5rem;color:var(--hsi-adk-color-primary-40)}.arrow{transform:scale(.8);position:relative;top:-1px}.previous .name{left:-6px}.next .name{right:-6px}\n"] }]
681
- }], ctorParameters: () => [{ type: i3.TitleCasePipe }], propDecorators: { siblings: [{
681
+ }], propDecorators: { siblings: [{
682
682
  type: Input
683
683
  }], nextDoc: [{
684
684
  type: Output
685
685
  }] } });
686
686
 
687
687
  class AdkDocumentationDisplayComponent {
688
- constructor(content, activeHeading, destroyRef, zone, document) {
689
- this.content = content;
690
- this.activeHeading = activeHeading;
691
- this.destroyRef = destroyRef;
692
- this.zone = zone;
693
- this.document = document;
688
+ constructor() {
694
689
  this.showPrevNextNavigation = true;
695
690
  this.nextDoc = new EventEmitter();
691
+ this.content = inject(AdkDocumentationContentService);
692
+ this.activeHeading = inject(AdkActiveHeadingTracker);
693
+ this.destroyRef = inject(DestroyRef);
694
+ this.zone = inject(NgZone);
695
+ this.document = inject(DOCUMENT);
696
696
  }
697
697
  ngOnInit() {
698
698
  this.setContent();
@@ -737,20 +737,17 @@ class AdkDocumentationDisplayComponent {
737
737
  navigateToDoc(sibling) {
738
738
  this.nextDoc.emit(sibling);
739
739
  }
740
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentationDisplayComponent, deps: [{ token: AdkDocumentationContentService }, { token: AdkActiveHeadingTracker }, { token: i0.DestroyRef }, { token: i0.NgZone }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
741
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.2", type: AdkDocumentationDisplayComponent, isStandalone: true, selector: "hsi-adk-documentation-display", inputs: { contentPath$: "contentPath$", fileConfig: "fileConfig", highlightTheme: "highlightTheme", pathFromAssetsToFile: "pathFromAssetsToFile", showPrevNextNavigation: "showPrevNextNavigation" }, outputs: { nextDoc: "nextDoc" }, queries: [{ propertyName: "escapedContentTemplateRef", first: true, predicate: ["escapedContent"], descendants: true }], viewQueries: [{ propertyName: "file", first: true, predicate: ["file"], descendants: true }], ngImport: i0, template: "<div class=\"documentation-container\" #file>\n @if (content$ | async; as content) {\n <div class=\"documentation-content\">\n <div class=\"main-content\">\n @for (section of content.sections; track $index) {\n @if (section.type === 'markdown') {\n <div class=\"injected-html\" [innerHTML]=\"section.html\"></div>\n } @else if (section.type === 'escaped') {\n <ng-container\n *ngIf=\"escapedContentTemplateRef\"\n [ngTemplateOutlet]=\"escapedContentTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: section }\"\n >\n </ng-container>\n }\n }\n @if (showPrevNextNavigation) {\n <hsi-adk-navigation-siblings\n class=\"nav-siblings\"\n [siblings]=\"content.siblings\"\n (nextDoc)=\"navigateToDoc($event)\"\n ></hsi-adk-navigation-siblings>\n }\n </div>\n <hsi-adk-document-index\n class=\"document-index\"\n [headings]=\"content.headings.slice(1)\"\n (activeHeading)=\"scrollToHeading($event)\"\n ></hsi-adk-document-index>\n </div>\n }\n</div>\n", styles: [".documentation-container{margin:0 auto;max-width:1200px}.documentation-container .documentation-content{display:flex;gap:7.5rem;margin-top:1.5rem}.documentation-container .document-index{display:block;position:sticky;top:8rem;max-height:calc(100vh - 10rem)}.documentation-container .main-content{width:75%}.documentation-container .nav-siblings{padding-top:2.5rem;padding-bottom:5rem}.documentation-container .injected-html h1{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:32pt;letter-spacing:0;line-height:40pt;margin:0 0 1.75rem;width:100%}.documentation-container .injected-html h2{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:24pt;letter-spacing:0;line-height:32pt}.documentation-container .injected-html h3{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:14pt;letter-spacing:.25pt;line-height:20pt}.documentation-container .injected-html h2,.documentation-container .injected-html h3,.documentation-container .injected-html h4{margin:0;padding-top:1rem;padding-bottom:1.5rem}.documentation-container .injected-html p{padding-bottom:1.5rem;line-height:1.8}.documentation-container .injected-html ol{margin:0;padding-bottom:1.5rem}.documentation-container .injected-html li>p:not(.code-caption){padding-bottom:1rem}.documentation-container .injected-html pre{margin:0;padding-bottom:1.5rem}.documentation-container .injected-html a{cursor:pointer;color:var(--hsi-adk-color-primary-40)}.documentation-container .injected-html a:hover{text-decoration:underline}.documentation-container .injected-html .shiki{margin:0;padding:1rem;border:1px solid var(--hsi-adk-color-muted-primary-90);border-radius:.5rem;margin-bottom:2rem;white-space:pre-wrap}.documentation-container .injected-html p.code-caption{margin-bottom:0;padding-bottom:0;font-style:italic}.documentation-container .injected-html p.code-caption code{font-style:normal}.documentation-container .injected-html p.code-caption+pre.shiki{display:block;margin-top:2px}.documentation-container .injected-html p:has(>code)+hr{margin:0;border-top:1px solid var(--hsi-adk-color-muted-primary-80);margin-bottom:1.5rem}.documentation-container .injected-html P:has(>code):has(+hr){padding-bottom:.5rem}.documentation-container .injected-html h1>code,.documentation-container .injected-html h2>code,.documentation-container .injected-html h3>code,.documentation-container .injected-html h4>code,.documentation-container .injected-html h5>code,.documentation-container .injected-html h6>code,.documentation-container .injected-html li>code,.documentation-container .injected-html li>em>code,.documentation-container .injected-html p>code p>em>code{font-family:var(--hsi-adk-font-mono);font-weight:500;padding-left:.25rem;padding-right:.25rem;background:var(--hsi-adk-color-muted-primary-95);border-radius:.25rem;color:var(--hsi-adk-color-primary-40);padding:.125rem .25rem}.documentation-container .injected-html p>code,.documentation-container .injected-html p>em>code{font-size:15px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "component", type: AdkDocumentIndexComponent, selector: "hsi-adk-document-index", inputs: ["headings"], outputs: ["activeHeading"] }, { kind: "component", type: NavigationSiblingsComponent, selector: "hsi-adk-navigation-siblings", inputs: ["siblings"], outputs: ["nextDoc"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
740
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentationDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
741
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: AdkDocumentationDisplayComponent, isStandalone: true, selector: "hsi-adk-documentation-display", inputs: { contentPath$: "contentPath$", fileConfig: "fileConfig", highlightTheme: "highlightTheme", pathFromAssetsToFile: "pathFromAssetsToFile", showPrevNextNavigation: "showPrevNextNavigation" }, outputs: { nextDoc: "nextDoc" }, queries: [{ propertyName: "escapedContentTemplateRef", first: true, predicate: ["escapedContent"], descendants: true }], viewQueries: [{ propertyName: "file", first: true, predicate: ["file"], descendants: true }], ngImport: i0, template: "<div class=\"documentation-container\" #file>\n @if (content$ | async; as content) {\n <div class=\"documentation-content\">\n <div class=\"main-content\">\n @for (section of content.sections; track $index) {\n @if (section.type === 'markdown') {\n <div class=\"injected-html\" [innerHTML]=\"section.html\"></div>\n } @else if (section.type === 'escaped') {\n @if (escapedContentTemplateRef) {\n <ng-container\n [ngTemplateOutlet]=\"escapedContentTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: section }\"\n >\n </ng-container>\n }\n }\n }\n @if (showPrevNextNavigation) {\n <hsi-adk-navigation-siblings\n class=\"nav-siblings\"\n [siblings]=\"content.siblings\"\n (nextDoc)=\"navigateToDoc($event)\"\n ></hsi-adk-navigation-siblings>\n }\n </div>\n <hsi-adk-document-index\n class=\"document-index\"\n [headings]=\"content.headings.slice(1)\"\n (activeHeading)=\"scrollToHeading($event)\"\n ></hsi-adk-document-index>\n </div>\n }\n</div>\n", styles: [".documentation-container{margin:0 auto;max-width:1200px}.documentation-container .documentation-content{display:flex;gap:7.5rem;margin-top:1.5rem}.documentation-container .document-index{display:block;position:sticky;top:8rem;max-height:calc(100vh - 10rem)}.documentation-container .main-content{width:75%}.documentation-container .nav-siblings{padding-top:2.5rem;padding-bottom:5rem}.documentation-container .injected-html h1{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:32pt;letter-spacing:0;line-height:40pt;margin:0 0 1.75rem;width:100%}.documentation-container .injected-html h2{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:24pt;letter-spacing:0;line-height:32pt}.documentation-container .injected-html h3{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:14pt;letter-spacing:.25pt;line-height:20pt}.documentation-container .injected-html h2,.documentation-container .injected-html h3,.documentation-container .injected-html h4{margin:0;padding-top:1rem;padding-bottom:1.5rem}.documentation-container .injected-html p{padding-bottom:1.5rem;line-height:1.8}.documentation-container .injected-html ol{margin:0;padding-bottom:1.5rem}.documentation-container .injected-html li>p:not(.code-caption){padding-bottom:1rem}.documentation-container .injected-html pre{margin:0;padding-bottom:1.5rem}.documentation-container .injected-html a{cursor:pointer;color:var(--hsi-adk-color-primary-40)}.documentation-container .injected-html a:hover{text-decoration:underline}.documentation-container .injected-html .shiki{margin:0;padding:1rem;border:1px solid var(--hsi-adk-color-muted-primary-90);border-radius:.5rem;margin-bottom:2rem;white-space:pre-wrap}.documentation-container .injected-html p.code-caption{margin-bottom:0;padding-bottom:0;font-style:italic}.documentation-container .injected-html p.code-caption code{font-style:normal}.documentation-container .injected-html p.code-caption+pre.shiki{display:block;margin-top:2px}.documentation-container .injected-html p:has(>code)+hr{margin:0;border-top:1px solid var(--hsi-adk-color-muted-primary-80);margin-bottom:1.5rem}.documentation-container .injected-html P:has(>code):has(+hr){padding-bottom:.5rem}.documentation-container .injected-html h1>code,.documentation-container .injected-html h2>code,.documentation-container .injected-html h3>code,.documentation-container .injected-html h4>code,.documentation-container .injected-html h5>code,.documentation-container .injected-html h6>code,.documentation-container .injected-html li>code,.documentation-container .injected-html li>em>code,.documentation-container .injected-html p>code p>em>code{font-family:var(--hsi-adk-font-mono);font-weight:500;padding-left:.25rem;padding-right:.25rem;background:var(--hsi-adk-color-muted-primary-95);border-radius:.25rem;color:var(--hsi-adk-color-primary-40);padding:.125rem .25rem}.documentation-container .injected-html p>code,.documentation-container .injected-html p>em>code{font-size:15px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AdkDocumentIndexComponent, selector: "hsi-adk-document-index", inputs: ["headings"], outputs: ["activeHeading"] }, { kind: "component", type: NavigationSiblingsComponent, selector: "hsi-adk-navigation-siblings", inputs: ["siblings"], outputs: ["nextDoc"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
742
742
  }
743
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AdkDocumentationDisplayComponent, decorators: [{
743
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdkDocumentationDisplayComponent, decorators: [{
744
744
  type: Component,
745
745
  args: [{ selector: 'hsi-adk-documentation-display', imports: [
746
746
  CommonModule,
747
747
  AdkDocumentIndexComponent,
748
748
  NavigationSiblingsComponent,
749
- ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"documentation-container\" #file>\n @if (content$ | async; as content) {\n <div class=\"documentation-content\">\n <div class=\"main-content\">\n @for (section of content.sections; track $index) {\n @if (section.type === 'markdown') {\n <div class=\"injected-html\" [innerHTML]=\"section.html\"></div>\n } @else if (section.type === 'escaped') {\n <ng-container\n *ngIf=\"escapedContentTemplateRef\"\n [ngTemplateOutlet]=\"escapedContentTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: section }\"\n >\n </ng-container>\n }\n }\n @if (showPrevNextNavigation) {\n <hsi-adk-navigation-siblings\n class=\"nav-siblings\"\n [siblings]=\"content.siblings\"\n (nextDoc)=\"navigateToDoc($event)\"\n ></hsi-adk-navigation-siblings>\n }\n </div>\n <hsi-adk-document-index\n class=\"document-index\"\n [headings]=\"content.headings.slice(1)\"\n (activeHeading)=\"scrollToHeading($event)\"\n ></hsi-adk-document-index>\n </div>\n }\n</div>\n", styles: [".documentation-container{margin:0 auto;max-width:1200px}.documentation-container .documentation-content{display:flex;gap:7.5rem;margin-top:1.5rem}.documentation-container .document-index{display:block;position:sticky;top:8rem;max-height:calc(100vh - 10rem)}.documentation-container .main-content{width:75%}.documentation-container .nav-siblings{padding-top:2.5rem;padding-bottom:5rem}.documentation-container .injected-html h1{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:32pt;letter-spacing:0;line-height:40pt;margin:0 0 1.75rem;width:100%}.documentation-container .injected-html h2{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:24pt;letter-spacing:0;line-height:32pt}.documentation-container .injected-html h3{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:14pt;letter-spacing:.25pt;line-height:20pt}.documentation-container .injected-html h2,.documentation-container .injected-html h3,.documentation-container .injected-html h4{margin:0;padding-top:1rem;padding-bottom:1.5rem}.documentation-container .injected-html p{padding-bottom:1.5rem;line-height:1.8}.documentation-container .injected-html ol{margin:0;padding-bottom:1.5rem}.documentation-container .injected-html li>p:not(.code-caption){padding-bottom:1rem}.documentation-container .injected-html pre{margin:0;padding-bottom:1.5rem}.documentation-container .injected-html a{cursor:pointer;color:var(--hsi-adk-color-primary-40)}.documentation-container .injected-html a:hover{text-decoration:underline}.documentation-container .injected-html .shiki{margin:0;padding:1rem;border:1px solid var(--hsi-adk-color-muted-primary-90);border-radius:.5rem;margin-bottom:2rem;white-space:pre-wrap}.documentation-container .injected-html p.code-caption{margin-bottom:0;padding-bottom:0;font-style:italic}.documentation-container .injected-html p.code-caption code{font-style:normal}.documentation-container .injected-html p.code-caption+pre.shiki{display:block;margin-top:2px}.documentation-container .injected-html p:has(>code)+hr{margin:0;border-top:1px solid var(--hsi-adk-color-muted-primary-80);margin-bottom:1.5rem}.documentation-container .injected-html P:has(>code):has(+hr){padding-bottom:.5rem}.documentation-container .injected-html h1>code,.documentation-container .injected-html h2>code,.documentation-container .injected-html h3>code,.documentation-container .injected-html h4>code,.documentation-container .injected-html h5>code,.documentation-container .injected-html h6>code,.documentation-container .injected-html li>code,.documentation-container .injected-html li>em>code,.documentation-container .injected-html p>code p>em>code{font-family:var(--hsi-adk-font-mono);font-weight:500;padding-left:.25rem;padding-right:.25rem;background:var(--hsi-adk-color-muted-primary-95);border-radius:.25rem;color:var(--hsi-adk-color-primary-40);padding:.125rem .25rem}.documentation-container .injected-html p>code,.documentation-container .injected-html p>em>code{font-size:15px}\n"] }]
750
- }], ctorParameters: () => [{ type: AdkDocumentationContentService }, { type: AdkActiveHeadingTracker }, { type: i0.DestroyRef }, { type: i0.NgZone }, { type: Document, decorators: [{
751
- type: Inject,
752
- args: [DOCUMENT]
753
- }] }], propDecorators: { contentPath$: [{
749
+ ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"documentation-container\" #file>\n @if (content$ | async; as content) {\n <div class=\"documentation-content\">\n <div class=\"main-content\">\n @for (section of content.sections; track $index) {\n @if (section.type === 'markdown') {\n <div class=\"injected-html\" [innerHTML]=\"section.html\"></div>\n } @else if (section.type === 'escaped') {\n @if (escapedContentTemplateRef) {\n <ng-container\n [ngTemplateOutlet]=\"escapedContentTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: section }\"\n >\n </ng-container>\n }\n }\n }\n @if (showPrevNextNavigation) {\n <hsi-adk-navigation-siblings\n class=\"nav-siblings\"\n [siblings]=\"content.siblings\"\n (nextDoc)=\"navigateToDoc($event)\"\n ></hsi-adk-navigation-siblings>\n }\n </div>\n <hsi-adk-document-index\n class=\"document-index\"\n [headings]=\"content.headings.slice(1)\"\n (activeHeading)=\"scrollToHeading($event)\"\n ></hsi-adk-document-index>\n </div>\n }\n</div>\n", styles: [".documentation-container{margin:0 auto;max-width:1200px}.documentation-container .documentation-content{display:flex;gap:7.5rem;margin-top:1.5rem}.documentation-container .document-index{display:block;position:sticky;top:8rem;max-height:calc(100vh - 10rem)}.documentation-container .main-content{width:75%}.documentation-container .nav-siblings{padding-top:2.5rem;padding-bottom:5rem}.documentation-container .injected-html h1{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:32pt;letter-spacing:0;line-height:40pt;margin:0 0 1.75rem;width:100%}.documentation-container .injected-html h2{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-regular);font-size:24pt;letter-spacing:0;line-height:32pt}.documentation-container .injected-html h3{font-family:var(--hsi-adk-font-sans);font-weight:var(--hsi-adk-font-weight-medium);font-size:14pt;letter-spacing:.25pt;line-height:20pt}.documentation-container .injected-html h2,.documentation-container .injected-html h3,.documentation-container .injected-html h4{margin:0;padding-top:1rem;padding-bottom:1.5rem}.documentation-container .injected-html p{padding-bottom:1.5rem;line-height:1.8}.documentation-container .injected-html ol{margin:0;padding-bottom:1.5rem}.documentation-container .injected-html li>p:not(.code-caption){padding-bottom:1rem}.documentation-container .injected-html pre{margin:0;padding-bottom:1.5rem}.documentation-container .injected-html a{cursor:pointer;color:var(--hsi-adk-color-primary-40)}.documentation-container .injected-html a:hover{text-decoration:underline}.documentation-container .injected-html .shiki{margin:0;padding:1rem;border:1px solid var(--hsi-adk-color-muted-primary-90);border-radius:.5rem;margin-bottom:2rem;white-space:pre-wrap}.documentation-container .injected-html p.code-caption{margin-bottom:0;padding-bottom:0;font-style:italic}.documentation-container .injected-html p.code-caption code{font-style:normal}.documentation-container .injected-html p.code-caption+pre.shiki{display:block;margin-top:2px}.documentation-container .injected-html p:has(>code)+hr{margin:0;border-top:1px solid var(--hsi-adk-color-muted-primary-80);margin-bottom:1.5rem}.documentation-container .injected-html P:has(>code):has(+hr){padding-bottom:.5rem}.documentation-container .injected-html h1>code,.documentation-container .injected-html h2>code,.documentation-container .injected-html h3>code,.documentation-container .injected-html h4>code,.documentation-container .injected-html h5>code,.documentation-container .injected-html h6>code,.documentation-container .injected-html li>code,.documentation-container .injected-html li>em>code,.documentation-container .injected-html p>code p>em>code{font-family:var(--hsi-adk-font-mono);font-weight:500;padding-left:.25rem;padding-right:.25rem;background:var(--hsi-adk-color-muted-primary-95);border-radius:.25rem;color:var(--hsi-adk-color-primary-40);padding:.125rem .25rem}.documentation-container .injected-html p>code,.documentation-container .injected-html p>em>code{font-size:15px}\n"] }]
750
+ }], propDecorators: { contentPath$: [{
754
751
  type: Input
755
752
  }], fileConfig: [{
756
753
  type: Input