@ng-doc/app 16.15.0 → 16.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/components/fullscreen-button/fullscreen-button.component.d.ts +6 -0
  2. package/components/fullscreen-button/index.d.ts +1 -0
  3. package/components/index.d.ts +1 -0
  4. package/components/page/page.component.d.ts +2 -1
  5. package/components/playground/playground-demo/playground-demo.component.d.ts +1 -0
  6. package/esm2022/components/demo/demo.component.mjs +5 -3
  7. package/esm2022/components/demo-pane/demo-pane.component.mjs +5 -3
  8. package/esm2022/components/fullscreen-button/fullscreen-button.component.mjs +23 -0
  9. package/esm2022/components/fullscreen-button/index.mjs +2 -0
  10. package/esm2022/components/fullscreen-button/ng-doc-app-components-fullscreen-button.mjs +5 -0
  11. package/esm2022/components/index.mjs +2 -1
  12. package/esm2022/components/page/page.component.mjs +19 -10
  13. package/esm2022/components/playground/base-playground.mjs +7 -2
  14. package/esm2022/components/playground/playground-demo/playground-demo.component.mjs +20 -2
  15. package/esm2022/components/search/search.component.mjs +3 -3
  16. package/esm2022/components/toc/toc.component.mjs +5 -2
  17. package/esm2022/services/theme/theme.service.mjs +2 -2
  18. package/fesm2022/ng-doc-app-components-demo-pane.mjs +4 -2
  19. package/fesm2022/ng-doc-app-components-demo-pane.mjs.map +1 -1
  20. package/fesm2022/ng-doc-app-components-demo.mjs +4 -2
  21. package/fesm2022/ng-doc-app-components-demo.mjs.map +1 -1
  22. package/fesm2022/ng-doc-app-components-fullscreen-button.mjs +29 -0
  23. package/fesm2022/ng-doc-app-components-fullscreen-button.mjs.map +1 -0
  24. package/fesm2022/ng-doc-app-components-page.mjs +17 -8
  25. package/fesm2022/ng-doc-app-components-page.mjs.map +1 -1
  26. package/fesm2022/ng-doc-app-components-playground.mjs +25 -2
  27. package/fesm2022/ng-doc-app-components-playground.mjs.map +1 -1
  28. package/fesm2022/ng-doc-app-components-search.mjs +2 -2
  29. package/fesm2022/ng-doc-app-components-search.mjs.map +1 -1
  30. package/fesm2022/ng-doc-app-components-toc.mjs +4 -1
  31. package/fesm2022/ng-doc-app-components-toc.mjs.map +1 -1
  32. package/fesm2022/ng-doc-app-components.mjs +1 -0
  33. package/fesm2022/ng-doc-app-components.mjs.map +1 -1
  34. package/fesm2022/ng-doc-app-services-theme.mjs +1 -1
  35. package/fesm2022/ng-doc-app-services-theme.mjs.map +1 -1
  36. package/package.json +9 -3
  37. package/styles/global.css +4 -0
  38. package/styles/main.css +4 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-services-theme.mjs","sources":["../../../../libs/app/services/theme/theme.service.ts","../../../../libs/app/services/theme/ng-doc-app-services-theme.ts"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport { Inject, Injectable } from '@angular/core';\nimport { NG_DOC_STORE_THEME_KEY } from '@ng-doc/app/constants';\nimport { NgDocTheme } from '@ng-doc/app/interfaces';\nimport { NgDocStoreService } from '@ng-doc/app/services/store';\nimport { NG_DOC_THEME } from '@ng-doc/app/tokens';\nimport { WINDOW } from '@ng-web-apis/common';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { fromEvent, Observable, Subject } from 'rxjs';\n\n/**\n * Service for managing themes.\n */\n@Injectable({\n\tprovidedIn: 'root',\n})\n@UntilDestroy()\nexport class NgDocThemeService {\n\tstatic readonly autoThemeId: string = 'ng-doc-auto';\n\n\tprivate linkElement?: HTMLLinkElement;\n\tprivate theme: NgDocTheme | undefined = undefined;\n\tprivate readonly theme$: Subject<NgDocTheme | undefined> = new Subject<NgDocTheme | undefined>();\n\tprivate autoTheme: [NgDocTheme | undefined, NgDocTheme | undefined] | undefined = undefined;\n\n\tconstructor(\n\t\t@Inject(WINDOW)\n\t\tprivate readonly window: Window,\n\t\t@Inject(DOCUMENT)\n\t\tprivate readonly document: Document,\n\t\t@Inject(NG_DOC_THEME)\n\t\tprivate readonly themes: NgDocTheme[],\n\t\tprivate readonly store: NgDocStoreService,\n\t) {\n\t\tfromEvent<MediaQueryList>(this.window.matchMedia('(prefers-color-scheme: dark)'), 'change')\n\t\t\t.pipe(untilDestroyed(this))\n\t\t\t.subscribe(() => this.setAutoTheme());\n\t}\n\n\t/**\n\t * Returns the current theme.\n\t */\n\tget currentTheme(): NgDocTheme | undefined {\n\t\treturn this.theme;\n\t}\n\n\t/**\n\t * Returns whether automatic theme switching based on the user's operating system settings is enabled.\n\t */\n\tget isAutoThemeEnabled(): boolean {\n\t\treturn this.autoTheme !== undefined;\n\t}\n\n\t/**\n\t * Enables automatic theme switching based on the user's operating system settings.\n\t *\n\t * @param light - Theme for light mode.\n\t * @param dark - Theme for dark mode.\n\t */\n\tasync enableAutoTheme(\n\t\tlight: NgDocTheme | undefined,\n\t\tdark: NgDocTheme | undefined,\n\t): Promise<void> {\n\t\tthis.autoTheme = [light, dark];\n\n\t\treturn this.setAutoTheme();\n\t}\n\n\t/**\n\t * Disables automatic theme switching based on the user's operating system settings.\n\t */\n\tasync disableAutoTheme(): Promise<void> {\n\t\tthis.autoTheme = undefined;\n\n\t\treturn this.set(this.store.get(NG_DOC_STORE_THEME_KEY) ?? undefined);\n\t}\n\n\t/**\n\t * Sets the theme by id.\n\t *\n\t * @param id - Theme id.\n\t * @param save - Whether to save the theme in the store to restore it when the page is reloaded. (`true` by default)\n\t */\n\tasync set(id?: string, save: boolean = true): Promise<void> {\n\t\tthis.removeLink();\n\n\t\tif (save) {\n\t\t\tthis.autoTheme = undefined;\n\t\t}\n\n\t\tif (id) {\n\t\t\tconst theme: NgDocTheme | undefined = this.themes.find(\n\t\t\t\t(theme: NgDocTheme) => theme.id === id,\n\t\t\t);\n\n\t\t\tif (!theme) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`Theme with id \"${id}\" is not registered. Make sure that you registered it in the root of your application.`,\n\t\t\t\t);\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.createLinkIfNoExists();\n\n\t\t\tif (this.linkElement) {\n\t\t\t\tthis.linkElement.href = theme.path;\n\t\t\t\tsave && this.store.set(NG_DOC_STORE_THEME_KEY, theme.id);\n\t\t\t\tthis.theme = theme;\n\n\t\t\t\treturn new Promise<void>((resolve: () => void, reject: (err: Event | string) => void) => {\n\t\t\t\t\tif (this.linkElement) {\n\t\t\t\t\t\tthis.linkElement.onload = () => {\n\t\t\t\t\t\t\tthis.theme$.next(theme);\n\t\t\t\t\t\t\tresolve();\n\t\t\t\t\t\t};\n\t\t\t\t\t\tthis.linkElement.onerror = reject;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\tsave && this.store.set(NG_DOC_STORE_THEME_KEY, 'ng-doc-day');\n\n\t\tthis.theme$.next(undefined);\n\n\t\treturn Promise.resolve();\n\t}\n\n\t/**\n\t * Returns an observable that emits when the theme changes.\n\t */\n\tthemeChanges(): Observable<NgDocTheme | undefined> {\n\t\treturn this.theme$.asObservable();\n\t}\n\n\tprivate removeLink(): void {\n\t\tthis.theme = undefined;\n\t\tthis.linkElement?.remove();\n\t\tthis.linkElement = undefined;\n\t}\n\n\tprivate createLinkIfNoExists(): void {\n\t\tif (!this.linkElement) {\n\t\t\tthis.linkElement = this.document.createElement('link');\n\t\t\tthis.linkElement.setAttribute('rel', 'stylesheet');\n\t\t\tthis.linkElement.setAttribute('type', 'text/css');\n\t\t\tthis.document.getElementsByTagName('head')[0].appendChild(this.linkElement);\n\t\t}\n\t}\n\n\tprivate async setAutoTheme(): Promise<void> {\n\t\tif (this.autoTheme !== undefined) {\n\t\t\tconst isDark: boolean = this.window.matchMedia('(prefers-color-scheme: dark)').matches;\n\t\t\tconst [light, dark] = this.autoTheme;\n\t\t\tthis.store.set(NG_DOC_STORE_THEME_KEY, NgDocThemeService.autoThemeId);\n\n\t\t\treturn this.set(isDark ? dark?.id : light?.id, false);\n\t\t}\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-doc-app-services-theme.mjs","sources":["../../../../libs/app/services/theme/theme.service.ts","../../../../libs/app/services/theme/ng-doc-app-services-theme.ts"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport { Inject, Injectable } from '@angular/core';\nimport { NG_DOC_STORE_THEME_KEY } from '@ng-doc/app/constants';\nimport { NgDocTheme } from '@ng-doc/app/interfaces';\nimport { NgDocStoreService } from '@ng-doc/app/services/store';\nimport { NG_DOC_THEME } from '@ng-doc/app/tokens';\nimport { WINDOW } from '@ng-web-apis/common';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { fromEvent, Observable, Subject } from 'rxjs';\n\n/**\n * Service for managing themes.\n */\n@Injectable({\n\tprovidedIn: 'root',\n})\n@UntilDestroy()\nexport class NgDocThemeService {\n\tstatic readonly autoThemeId: string = 'ng-doc-auto';\n\n\tprivate linkElement?: HTMLLinkElement;\n\tprivate theme: NgDocTheme | undefined = undefined;\n\tprivate readonly theme$: Subject<NgDocTheme | undefined> = new Subject<NgDocTheme | undefined>();\n\tprivate autoTheme: [NgDocTheme | undefined, NgDocTheme | undefined] | undefined = undefined;\n\n\tconstructor(\n\t\t@Inject(WINDOW)\n\t\tprivate readonly window: Window,\n\t\t@Inject(DOCUMENT)\n\t\tprivate readonly document: Document,\n\t\t@Inject(NG_DOC_THEME)\n\t\tprivate readonly themes: NgDocTheme[],\n\t\tprivate readonly store: NgDocStoreService,\n\t) {\n\t\tfromEvent<MediaQueryList>(this.window.matchMedia('(prefers-color-scheme: dark)'), 'change')\n\t\t\t.pipe(untilDestroyed(this))\n\t\t\t.subscribe(() => this.setAutoTheme());\n\t}\n\n\t/**\n\t * Returns the current theme.\n\t */\n\tget currentTheme(): NgDocTheme | undefined {\n\t\treturn this.theme;\n\t}\n\n\t/**\n\t * Returns whether automatic theme switching based on the user's operating system settings is enabled.\n\t */\n\tget isAutoThemeEnabled(): boolean {\n\t\treturn this.autoTheme !== undefined;\n\t}\n\n\t/**\n\t * Enables automatic theme switching based on the user's operating system settings.\n\t *\n\t * @param light - Theme for light mode.\n\t * @param dark - Theme for dark mode.\n\t */\n\tasync enableAutoTheme(\n\t\tlight: NgDocTheme | undefined,\n\t\tdark: NgDocTheme | undefined,\n\t): Promise<void> {\n\t\tthis.autoTheme = [light, dark];\n\n\t\treturn this.setAutoTheme();\n\t}\n\n\t/**\n\t * Disables automatic theme switching based on the user's operating system settings.\n\t */\n\tasync disableAutoTheme(): Promise<void> {\n\t\tthis.autoTheme = undefined;\n\n\t\treturn this.set(this.store.get(NG_DOC_STORE_THEME_KEY) ?? undefined);\n\t}\n\n\t/**\n\t * Sets the theme by id.\n\t *\n\t * @param id - Theme id.\n\t * @param save - Whether to save the theme in the store to restore it when the page is reloaded. (`true` by default)\n\t */\n\tasync set(id?: string, save: boolean = true): Promise<void> {\n\t\tthis.removeLink();\n\n\t\tif (save) {\n\t\t\tthis.autoTheme = undefined;\n\t\t}\n\n\t\tif (id && id !== 'ng-doc-day') {\n\t\t\tconst theme: NgDocTheme | undefined = this.themes.find(\n\t\t\t\t(theme: NgDocTheme) => theme.id === id,\n\t\t\t);\n\n\t\t\tif (!theme) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`Theme with id \"${id}\" is not registered. Make sure that you registered it in the root of your application.`,\n\t\t\t\t);\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.createLinkIfNoExists();\n\n\t\t\tif (this.linkElement) {\n\t\t\t\tthis.linkElement.href = theme.path;\n\t\t\t\tsave && this.store.set(NG_DOC_STORE_THEME_KEY, theme.id);\n\t\t\t\tthis.theme = theme;\n\n\t\t\t\treturn new Promise<void>((resolve: () => void, reject: (err: Event | string) => void) => {\n\t\t\t\t\tif (this.linkElement) {\n\t\t\t\t\t\tthis.linkElement.onload = () => {\n\t\t\t\t\t\t\tthis.theme$.next(theme);\n\t\t\t\t\t\t\tresolve();\n\t\t\t\t\t\t};\n\t\t\t\t\t\tthis.linkElement.onerror = reject;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\tsave && this.store.set(NG_DOC_STORE_THEME_KEY, 'ng-doc-day');\n\n\t\tthis.theme$.next(undefined);\n\n\t\treturn Promise.resolve();\n\t}\n\n\t/**\n\t * Returns an observable that emits when the theme changes.\n\t */\n\tthemeChanges(): Observable<NgDocTheme | undefined> {\n\t\treturn this.theme$.asObservable();\n\t}\n\n\tprivate removeLink(): void {\n\t\tthis.theme = undefined;\n\t\tthis.linkElement?.remove();\n\t\tthis.linkElement = undefined;\n\t}\n\n\tprivate createLinkIfNoExists(): void {\n\t\tif (!this.linkElement) {\n\t\t\tthis.linkElement = this.document.createElement('link');\n\t\t\tthis.linkElement.setAttribute('rel', 'stylesheet');\n\t\t\tthis.linkElement.setAttribute('type', 'text/css');\n\t\t\tthis.document.getElementsByTagName('head')[0].appendChild(this.linkElement);\n\t\t}\n\t}\n\n\tprivate async setAutoTheme(): Promise<void> {\n\t\tif (this.autoTheme !== undefined) {\n\t\t\tconst isDark: boolean = this.window.matchMedia('(prefers-color-scheme: dark)').matches;\n\t\t\tconst [light, dark] = this.autoTheme;\n\t\t\tthis.store.set(NG_DOC_STORE_THEME_KEY, NgDocThemeService.autoThemeId);\n\n\t\t\treturn this.set(isDark ? dark?.id : light?.id, false);\n\t\t}\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ng-doc/app",
3
- "version": "16.15.0",
3
+ "version": "16.16.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=16.0.0",
6
6
  "@angular/core": ">=16.0.0",
@@ -12,8 +12,8 @@
12
12
  },
13
13
  "dependencies": {
14
14
  "tslib": "^2.3.0",
15
- "@ng-doc/core": "16.15.0",
16
- "@ng-doc/ui-kit": "16.15.0",
15
+ "@ng-doc/core": "16.16.0",
16
+ "@ng-doc/ui-kit": "16.16.0",
17
17
  "@orama/plugin-match-highlight": "1.0.2",
18
18
  "@orama/stemmers": "1.0.2",
19
19
  "highlight.js": "11.5.1"
@@ -171,6 +171,12 @@
171
171
  "esm": "./esm2022/components/demo-pane/ng-doc-app-components-demo-pane.mjs",
172
172
  "default": "./fesm2022/ng-doc-app-components-demo-pane.mjs"
173
173
  },
174
+ "./components/fullscreen-button": {
175
+ "types": "./components/fullscreen-button/index.d.ts",
176
+ "esm2022": "./esm2022/components/fullscreen-button/ng-doc-app-components-fullscreen-button.mjs",
177
+ "esm": "./esm2022/components/fullscreen-button/ng-doc-app-components-fullscreen-button.mjs",
178
+ "default": "./fesm2022/ng-doc-app-components-fullscreen-button.mjs"
179
+ },
174
180
  "./components/kind-icon": {
175
181
  "types": "./components/kind-icon/index.d.ts",
176
182
  "esm2022": "./esm2022/components/kind-icon/ng-doc-app-components-kind-icon.mjs",
package/styles/global.css CHANGED
@@ -372,6 +372,10 @@ mark.ng-doc-mark {
372
372
  --ng-doc-text: var(--ng-doc-base-0);
373
373
  }
374
374
 
375
+ .ng-doc-dialog {
376
+ background: var(--ng-doc-background);
377
+ }
378
+
375
379
  :root {
376
380
  --ng-doc-app-max-width: 1450px;
377
381
  --ng-doc-app-horizontal-padding: calc(var(--ng-doc-base-gutter) * 3);
package/styles/main.css CHANGED
@@ -372,6 +372,10 @@ mark.ng-doc-mark {
372
372
  --ng-doc-text: var(--ng-doc-base-0);
373
373
  }
374
374
 
375
+ .ng-doc-dialog {
376
+ background: var(--ng-doc-background);
377
+ }
378
+
375
379
  :root {
376
380
  --ng-doc-app-max-width: 1450px;
377
381
  --ng-doc-app-horizontal-padding: calc(var(--ng-doc-base-gutter) * 3);