@ng-doc/app 15.11.3 → 15.13.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 (106) hide show
  1. package/README.md +1 -1
  2. package/components/navbar/navbar.component.d.ts +9 -1
  3. package/components/playground/index.d.ts +1 -0
  4. package/components/playground/playground-properties/playground-properties.component.d.ts +12 -3
  5. package/components/playground/playground-property/playground-property.component.d.ts +6 -7
  6. package/components/playground/playground-property-control.d.ts +7 -0
  7. package/components/playground/playground.module.d.ts +1 -1
  8. package/components/root/root.component.d.ts +26 -2
  9. package/components/root/root.module.d.ts +3 -2
  10. package/esm2020/components/breadcrumb/breadcrumb.component.mjs +2 -2
  11. package/esm2020/components/navbar/navbar.component.mjs +20 -4
  12. package/esm2020/components/page/page.component.mjs +2 -2
  13. package/esm2020/components/playground/index.mjs +2 -1
  14. package/esm2020/components/playground/playground-properties/playground-properties.component.mjs +76 -7
  15. package/esm2020/components/playground/playground-property/playground-property.component.mjs +21 -48
  16. package/esm2020/components/playground/playground-property-control.mjs +2 -0
  17. package/esm2020/components/playground/playground.module.mjs +10 -4
  18. package/esm2020/components/root/root.component.mjs +49 -6
  19. package/esm2020/components/root/root.module.mjs +6 -5
  20. package/esm2020/components/search/search.component.mjs +3 -3
  21. package/esm2020/components/theme-toggle/theme-toggle.component.mjs +3 -3
  22. package/esm2020/constants/store-keys.mjs +2 -2
  23. package/esm2020/helpers/index.mjs +2 -1
  24. package/esm2020/helpers/is-dark-os-theme.mjs +7 -0
  25. package/esm2020/interfaces/application-config.mjs +1 -1
  26. package/esm2020/interfaces/type-control-provider-options.mjs +1 -1
  27. package/esm2020/modules/root/ng-doc.module.mjs +6 -2
  28. package/esm2020/services/sidebar/sidebar.service.mjs +28 -24
  29. package/esm2020/services/theme/theme.service.mjs +61 -13
  30. package/esm2020/type-controls/boolean-control/boolean-control.module.mjs +2 -2
  31. package/esm2020/type-controls/number-control/number-control.module.mjs +2 -2
  32. package/esm2020/type-controls/string-control/string-control.module.mjs +2 -2
  33. package/esm2020/type-controls/type-alias-control/type-alias-control.module.mjs +2 -2
  34. package/fesm2015/ng-doc-app-components-breadcrumb.mjs +2 -2
  35. package/fesm2015/ng-doc-app-components-breadcrumb.mjs.map +1 -1
  36. package/fesm2015/ng-doc-app-components-navbar.mjs +19 -3
  37. package/fesm2015/ng-doc-app-components-navbar.mjs.map +1 -1
  38. package/fesm2015/ng-doc-app-components-page.mjs +2 -2
  39. package/fesm2015/ng-doc-app-components-page.mjs.map +1 -1
  40. package/fesm2015/ng-doc-app-components-playground.mjs +111 -60
  41. package/fesm2015/ng-doc-app-components-playground.mjs.map +1 -1
  42. package/fesm2015/ng-doc-app-components-root.mjs +52 -9
  43. package/fesm2015/ng-doc-app-components-root.mjs.map +1 -1
  44. package/fesm2015/ng-doc-app-components-search.mjs +2 -2
  45. package/fesm2015/ng-doc-app-components-search.mjs.map +1 -1
  46. package/fesm2015/ng-doc-app-components-theme-toggle.mjs +2 -2
  47. package/fesm2015/ng-doc-app-components-theme-toggle.mjs.map +1 -1
  48. package/fesm2015/ng-doc-app-constants.mjs +1 -1
  49. package/fesm2015/ng-doc-app-constants.mjs.map +1 -1
  50. package/fesm2015/ng-doc-app-helpers.mjs +8 -1
  51. package/fesm2015/ng-doc-app-helpers.mjs.map +1 -1
  52. package/fesm2015/ng-doc-app-modules-root.mjs +5 -1
  53. package/fesm2015/ng-doc-app-modules-root.mjs.map +1 -1
  54. package/fesm2015/ng-doc-app-services-sidebar.mjs +27 -23
  55. package/fesm2015/ng-doc-app-services-sidebar.mjs.map +1 -1
  56. package/fesm2015/ng-doc-app-services-theme.mjs +60 -12
  57. package/fesm2015/ng-doc-app-services-theme.mjs.map +1 -1
  58. package/fesm2015/ng-doc-app-type-controls-boolean-control.mjs +1 -1
  59. package/fesm2015/ng-doc-app-type-controls-boolean-control.mjs.map +1 -1
  60. package/fesm2015/ng-doc-app-type-controls-number-control.mjs +1 -1
  61. package/fesm2015/ng-doc-app-type-controls-number-control.mjs.map +1 -1
  62. package/fesm2015/ng-doc-app-type-controls-string-control.mjs +1 -1
  63. package/fesm2015/ng-doc-app-type-controls-string-control.mjs.map +1 -1
  64. package/fesm2015/ng-doc-app-type-controls-type-alias-control.mjs +1 -1
  65. package/fesm2015/ng-doc-app-type-controls-type-alias-control.mjs.map +1 -1
  66. package/fesm2020/ng-doc-app-components-breadcrumb.mjs +2 -2
  67. package/fesm2020/ng-doc-app-components-breadcrumb.mjs.map +1 -1
  68. package/fesm2020/ng-doc-app-components-navbar.mjs +19 -3
  69. package/fesm2020/ng-doc-app-components-navbar.mjs.map +1 -1
  70. package/fesm2020/ng-doc-app-components-page.mjs +2 -2
  71. package/fesm2020/ng-doc-app-components-page.mjs.map +1 -1
  72. package/fesm2020/ng-doc-app-components-playground.mjs +109 -60
  73. package/fesm2020/ng-doc-app-components-playground.mjs.map +1 -1
  74. package/fesm2020/ng-doc-app-components-root.mjs +52 -9
  75. package/fesm2020/ng-doc-app-components-root.mjs.map +1 -1
  76. package/fesm2020/ng-doc-app-components-search.mjs +2 -2
  77. package/fesm2020/ng-doc-app-components-search.mjs.map +1 -1
  78. package/fesm2020/ng-doc-app-components-theme-toggle.mjs +2 -2
  79. package/fesm2020/ng-doc-app-components-theme-toggle.mjs.map +1 -1
  80. package/fesm2020/ng-doc-app-constants.mjs +1 -1
  81. package/fesm2020/ng-doc-app-constants.mjs.map +1 -1
  82. package/fesm2020/ng-doc-app-helpers.mjs +8 -1
  83. package/fesm2020/ng-doc-app-helpers.mjs.map +1 -1
  84. package/fesm2020/ng-doc-app-modules-root.mjs +5 -1
  85. package/fesm2020/ng-doc-app-modules-root.mjs.map +1 -1
  86. package/fesm2020/ng-doc-app-services-sidebar.mjs +27 -23
  87. package/fesm2020/ng-doc-app-services-sidebar.mjs.map +1 -1
  88. package/fesm2020/ng-doc-app-services-theme.mjs +60 -12
  89. package/fesm2020/ng-doc-app-services-theme.mjs.map +1 -1
  90. package/fesm2020/ng-doc-app-type-controls-boolean-control.mjs +1 -1
  91. package/fesm2020/ng-doc-app-type-controls-boolean-control.mjs.map +1 -1
  92. package/fesm2020/ng-doc-app-type-controls-number-control.mjs +1 -1
  93. package/fesm2020/ng-doc-app-type-controls-number-control.mjs.map +1 -1
  94. package/fesm2020/ng-doc-app-type-controls-string-control.mjs +1 -1
  95. package/fesm2020/ng-doc-app-type-controls-string-control.mjs.map +1 -1
  96. package/fesm2020/ng-doc-app-type-controls-type-alias-control.mjs +1 -1
  97. package/fesm2020/ng-doc-app-type-controls-type-alias-control.mjs.map +1 -1
  98. package/helpers/index.d.ts +1 -0
  99. package/helpers/is-dark-os-theme.d.ts +4 -0
  100. package/interfaces/application-config.d.ts +11 -1
  101. package/interfaces/type-control-provider-options.d.ts +5 -0
  102. package/package.json +3 -3
  103. package/services/sidebar/sidebar.service.d.ts +3 -10
  104. package/services/theme/theme.service.d.ts +23 -3
  105. package/styles/global.css +11 -2
  106. package/styles/main.css +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-modules-root.mjs","sources":["../../../../libs/app/modules/root/ng-doc.module.ts","../../../../libs/app/modules/root/ng-doc-app-modules-root.ts"],"sourcesContent":["import {OverlayModule} from '@angular/cdk/overlay';\nimport {HttpClientModule} from '@angular/common/http';\nimport {APP_INITIALIZER, ModuleWithProviders, NgModule, Optional} from '@angular/core';\nimport {NgDocRootModule} from '@ng-doc/app/components/root';\nimport {NG_DOC_DARK_PURPLE_THEME, NG_DOC_NIGHT_THEME, NG_DOC_STORE_THEME_KEY} from '@ng-doc/app/constants';\nimport {NgDocApplicationConfig, NgDocTheme} from '@ng-doc/app/interfaces';\nimport {NgDocStoreService} from '@ng-doc/app/services/store';\nimport {NgDocThemeService} from '@ng-doc/app/services/theme';\nimport {NG_DOC_DEFAULT_THEME_ID, NG_DOC_THEME} from '@ng-doc/app/tokens';\nimport {asArray} from '@ng-doc/core/helpers/as-array';\nimport {NgDocUiKitRootModule} from '@ng-doc/ui-kit/modules/root';\n\n@NgModule({\n\timports: [HttpClientModule, OverlayModule, NgDocUiKitRootModule.forRoot()],\n\texports: [NgDocRootModule, NgDocUiKitRootModule],\n})\nexport class NgDocModule {\n\tstatic forRoot(config?: NgDocApplicationConfig): ModuleWithProviders<NgDocModule> {\n\t\treturn {\n\t\t\tngModule: NgDocModule,\n\t\t\tproviders: [\n\t\t\t\t{provide: NG_DOC_THEME, useValue: NG_DOC_NIGHT_THEME, multi: true},\n\t\t\t\t{provide: NG_DOC_THEME, useValue: NG_DOC_DARK_PURPLE_THEME, multi: true},\n\t\t\t\t...asArray(config?.themes).map((theme: NgDocTheme) => ({\n\t\t\t\t\tprovide: NG_DOC_THEME,\n\t\t\t\t\tuseValue: theme,\n\t\t\t\t\tmulti: true,\n\t\t\t\t})),\n\t\t\t\t...asArray(config?.defaultThemeId).map((themeId: string) => ({\n\t\t\t\t\tprovide: NG_DOC_DEFAULT_THEME_ID,\n\t\t\t\t\tuseValue: themeId,\n\t\t\t\t})),\n\t\t\t\t{\n\t\t\t\t\tprovide: APP_INITIALIZER,\n\t\t\t\t\tuseFactory: (themeService: NgDocThemeService, store: NgDocStoreService, defaultThemeId: string) => {\n\t\t\t\t\t\treturn () => {\n\t\t\t\t\t\t\tconst themeId: string | null = store.get(NG_DOC_STORE_THEME_KEY);\n\n\t\t\t\t\t\t\treturn themeService.set(themeId ?? defaultThemeId);\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\t\t\t\tmulti: true,\n\t\t\t\t\tdeps: [NgDocThemeService, NgDocStoreService, [new Optional(), NG_DOC_DEFAULT_THEME_ID]],\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;MAgBa,WAAW,CAAA;IACvB,OAAO,OAAO,CAAC,MAA+B,EAAA;QAC7C,OAAO;AACN,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,SAAS,EAAE;gBACV,EAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAC;gBAClE,EAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,wBAAwB,EAAE,KAAK,EAAE,IAAI,EAAC;AACxE,gBAAA,GAAG,OAAO,CAAC,MAAM,aAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAiB,MAAM;AACtD,oBAAA,OAAO,EAAE,YAAY;AACrB,oBAAA,QAAQ,EAAE,KAAK;AACf,oBAAA,KAAK,EAAE,IAAI;AACX,iBAAA,CAAC,CAAC;AACH,gBAAA,GAAG,OAAO,CAAC,MAAM,aAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,OAAe,MAAM;AAC5D,oBAAA,OAAO,EAAE,uBAAuB;AAChC,oBAAA,QAAQ,EAAE,OAAO;AACjB,iBAAA,CAAC,CAAC;AACH,gBAAA;AACC,oBAAA,OAAO,EAAE,eAAe;oBACxB,UAAU,EAAE,CAAC,YAA+B,EAAE,KAAwB,EAAE,cAAsB,KAAI;AACjG,wBAAA,OAAO,MAAK;4BACX,MAAM,OAAO,GAAkB,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAEjE,4BAAA,OAAO,YAAY,CAAC,GAAG,CAAC,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,KAAA,CAAA,GAAP,OAAO,GAAI,cAAc,CAAC,CAAC;AACpD,yBAAC,CAAC;qBACF;AACD,oBAAA,KAAK,EAAE,IAAI;AACX,oBAAA,IAAI,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,CAAC,IAAI,QAAQ,EAAE,EAAE,uBAAuB,CAAC,CAAC;AACvF,iBAAA;AACD,aAAA;SACD,CAAC;KACF;;wGA9BW,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAX,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,YAHb,gBAAgB,EAAE,aAAa,EAC/B,EAAA,CAAA,oBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAe,EAAE,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAEnC,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EAHb,OAAA,EAAA,CAAA,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,CAAC,OAAO,EAAE,EAC/D,eAAe,EAAE,oBAAoB,CAAA,EAAA,CAAA,CAAA;2FAEnC,WAAW,EAAA,UAAA,EAAA,CAAA;kBAJvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,OAAO,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,CAAC,OAAO,EAAE,CAAC;AAC1E,oBAAA,OAAO,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC;iBAChD,CAAA;;;ACfD;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-doc-app-modules-root.mjs","sources":["../../../../libs/app/modules/root/ng-doc.module.ts","../../../../libs/app/modules/root/ng-doc-app-modules-root.ts"],"sourcesContent":["import {OverlayModule} from '@angular/cdk/overlay';\nimport {HttpClientModule} from '@angular/common/http';\nimport {APP_INITIALIZER, ModuleWithProviders, NgModule, Optional} from '@angular/core';\nimport {NgDocRootModule} from '@ng-doc/app/components/root';\nimport {NG_DOC_DARK_PURPLE_THEME, NG_DOC_NIGHT_THEME, NG_DOC_STORE_THEME_KEY} from '@ng-doc/app/constants';\nimport {isDarkOsTheme} from '@ng-doc/app/helpers';\nimport {NgDocApplicationConfig, NgDocTheme} from '@ng-doc/app/interfaces';\nimport {NgDocStoreService} from '@ng-doc/app/services/store';\nimport {NgDocThemeService} from '@ng-doc/app/services/theme';\nimport {NG_DOC_DEFAULT_THEME_ID, NG_DOC_THEME} from '@ng-doc/app/tokens';\nimport {asArray} from '@ng-doc/core/helpers/as-array';\nimport {NgDocUiKitRootModule} from '@ng-doc/ui-kit/modules/root';\n\n@NgModule({\n\timports: [HttpClientModule, OverlayModule, NgDocUiKitRootModule.forRoot()],\n\texports: [NgDocRootModule, NgDocUiKitRootModule],\n})\nexport class NgDocModule {\n\tstatic forRoot(config?: NgDocApplicationConfig): ModuleWithProviders<NgDocModule> {\n\t\treturn {\n\t\t\tngModule: NgDocModule,\n\t\t\tproviders: [\n\t\t\t\t{provide: NG_DOC_THEME, useValue: NG_DOC_NIGHT_THEME, multi: true},\n\t\t\t\t{provide: NG_DOC_THEME, useValue: NG_DOC_DARK_PURPLE_THEME, multi: true},\n\t\t\t\t...asArray(config?.themes).map((theme: NgDocTheme) => ({\n\t\t\t\t\tprovide: NG_DOC_THEME,\n\t\t\t\t\tuseValue: theme,\n\t\t\t\t\tmulti: true,\n\t\t\t\t})),\n\t\t\t\t...asArray(config?.defaultThemeId).map((themeId: string) => ({\n\t\t\t\t\tprovide: NG_DOC_DEFAULT_THEME_ID,\n\t\t\t\t\tuseValue: themeId,\n\t\t\t\t})),\n\t\t\t\t{\n\t\t\t\t\tprovide: APP_INITIALIZER,\n\t\t\t\t\tuseFactory: (themeService: NgDocThemeService, store: NgDocStoreService, defaultThemeId: string | 'auto') => {\n\t\t\t\t\t\treturn () => {\n\t\t\t\t\t\t\tconst themeId: string | null = store.get(NG_DOC_STORE_THEME_KEY);\n\n\t\t\t\t\t\t\tif (defaultThemeId === 'auto' && !themeId) {\n\t\t\t\t\t\t\t\treturn themeService.set(isDarkOsTheme() ? NG_DOC_NIGHT_THEME.id : undefined, false);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn themeService.set(themeId ?? defaultThemeId, false);\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\t\t\t\tmulti: true,\n\t\t\t\t\tdeps: [NgDocThemeService, NgDocStoreService, [new Optional(), NG_DOC_DEFAULT_THEME_ID]],\n\t\t\t\t},\n\t\t\t],\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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"}
@@ -9,8 +9,8 @@ import { NavigationEnd, Router } from '@angular/router';
9
9
  import * as i3 from '@ng-doc/ui-kit/services/scroll';
10
10
  import { NgDocScrollService } from '@ng-doc/ui-kit/services/scroll';
11
11
  import { untilDestroyed, UntilDestroy } from '@ngneat/until-destroy';
12
- import { BehaviorSubject, of } from 'rxjs';
13
- import { pluck, filter, startWith, switchMap } from 'rxjs/operators';
12
+ import { BehaviorSubject, combineLatest } from 'rxjs';
13
+ import { pluck, distinctUntilChanged, filter, debounceTime } from 'rxjs/operators';
14
14
 
15
15
  /**
16
16
  * Service for sidebar, it can be used to hide/show sidebar or to check if sidebar is collapsable.
@@ -22,39 +22,43 @@ let NgDocSidebarService = class NgDocSidebarService {
22
22
  this.router = router;
23
23
  this.scroll = scroll;
24
24
  this.breakpoints = [Breakpoints.XSmall, Breakpoints.Small];
25
- this.visible = new BehaviorSubject(false);
26
- this.observer = this.breakpointObserver.observe(this.breakpoints).pipe(pluck('matches'), untilDestroyed(this));
27
- this.router.events
28
- .pipe(filter((event) => event instanceof NavigationEnd && this.visible.value), startWith(null))
25
+ this.expanded = new BehaviorSubject(true);
26
+ this.observer = this.breakpointObserver
27
+ .observe(this.breakpoints)
28
+ .pipe(pluck('matches'), distinctUntilChanged(), untilDestroyed(this));
29
+ combineLatest([this.router.events, this.isMobileMode()])
30
+ .pipe(filter(([event, isMobileMode]) => event instanceof NavigationEnd && this.expanded.value && isMobileMode), debounceTime(10))
29
31
  .subscribe(() => this.hide());
32
+ this.isMobileMode()
33
+ .pipe(untilDestroyed(this))
34
+ .subscribe((isMobileMode) => {
35
+ if (isMobileMode) {
36
+ this.hide();
37
+ }
38
+ else {
39
+ this.show();
40
+ this.scroll.unblock();
41
+ }
42
+ });
30
43
  }
31
44
  /**
32
- * Indicates if sidebar can be collapsable.
33
- * You can use it to start showing a button in the navbar to show/hide sidebar.
34
- * This method uses media queries to check if sidebar is collapsable based on the current screen size.
45
+ * Indicates if sidebar is collapsable, based on the screen size.
35
46
  */
36
- isCollapsable() {
47
+ isMobileMode() {
37
48
  return this.observer;
38
49
  }
39
50
  /**
40
51
  * Indicates if sidebar is visible, based on the show/hide methods.
41
52
  */
42
- visibilityChanges() {
43
- return this.visible.asObservable();
44
- }
45
- /**
46
- * Indicates if sidebar is expanded, based on the show/hide methods and if sidebar is collapsable.
47
- * This method can be used to display backdrop when sidebar is expanded.
48
- */
49
53
  isExpanded() {
50
- return this.isCollapsable().pipe(switchMap((isCollapsable) => (isCollapsable ? this.visibilityChanges() : of(false))));
54
+ return this.expanded.asObservable();
51
55
  }
52
56
  /**
53
57
  * Show sidebar, and block scrolling.
54
58
  */
55
59
  show() {
56
- if (!this.visible.value) {
57
- this.visible.next(true);
60
+ if (!this.expanded.value) {
61
+ this.expanded.next(true);
58
62
  this.scroll.block();
59
63
  }
60
64
  }
@@ -62,8 +66,8 @@ let NgDocSidebarService = class NgDocSidebarService {
62
66
  * Hide sidebar, and unblock scrolling.
63
67
  */
64
68
  hide() {
65
- if (this.visible.value) {
66
- this.visible.next(false);
69
+ if (this.expanded.value) {
70
+ this.expanded.next(false);
67
71
  this.scroll.unblock();
68
72
  }
69
73
  }
@@ -71,7 +75,7 @@ let NgDocSidebarService = class NgDocSidebarService {
71
75
  * Toggle sidebar visibility.
72
76
  */
73
77
  toggle() {
74
- this.visible.value ? this.hide() : this.show();
78
+ this.expanded.value ? this.hide() : this.show();
75
79
  }
76
80
  };
77
81
  NgDocSidebarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocSidebarService, deps: [{ token: DOCUMENT }, { token: i1.BreakpointObserver }, { token: i2.Router }, { token: i3.NgDocScrollService }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-services-sidebar.mjs","sources":["../../../../libs/app/services/sidebar/sidebar.service.ts","../../../../libs/app/services/sidebar/ng-doc-app-services-sidebar.ts"],"sourcesContent":["import {BreakpointObserver, Breakpoints} from '@angular/cdk/layout';\nimport {DOCUMENT} from '@angular/common';\nimport {Inject, Injectable} from '@angular/core';\nimport {Event, NavigationEnd, Router} from '@angular/router';\nimport {NgDocScrollService} from '@ng-doc/ui-kit/services/scroll';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {BehaviorSubject, Observable, of} from 'rxjs';\nimport {filter, pluck, startWith, switchMap} from 'rxjs/operators';\n\n/**\n * Service for sidebar, it can be used to hide/show sidebar or to check if sidebar is collapsable.\n */\n@Injectable({\n\tprovidedIn: 'root',\n})\n@UntilDestroy()\nexport class NgDocSidebarService {\n\treadonly breakpoints: string[] = [Breakpoints.XSmall, Breakpoints.Small];\n\tprotected readonly observer: Observable<boolean>;\n\tprotected readonly visible: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n\n\tconstructor(\n\t\t@Inject(DOCUMENT)\n\t\tprotected readonly document: Document,\n\t\tprotected readonly breakpointObserver: BreakpointObserver,\n\t\tprotected readonly router: Router,\n\t\tprotected readonly scroll: NgDocScrollService,\n\t) {\n\t\tthis.observer = this.breakpointObserver.observe(this.breakpoints).pipe(pluck('matches'), untilDestroyed(this));\n\n\t\tthis.router.events\n\t\t\t.pipe(\n\t\t\t\tfilter((event: Event) => event instanceof NavigationEnd && this.visible.value),\n\t\t\t\tstartWith(null),\n\t\t\t)\n\t\t\t.subscribe(() => this.hide());\n\t}\n\n\t/**\n\t * Indicates if sidebar can be collapsable.\n\t * You can use it to start showing a button in the navbar to show/hide sidebar.\n\t * This method uses media queries to check if sidebar is collapsable based on the current screen size.\n\t */\n\tisCollapsable(): Observable<boolean> {\n\t\treturn this.observer;\n\t}\n\n\t/**\n\t * Indicates if sidebar is visible, based on the show/hide methods.\n\t */\n\tvisibilityChanges(): Observable<boolean> {\n\t\treturn this.visible.asObservable();\n\t}\n\n\t/**\n\t * Indicates if sidebar is expanded, based on the show/hide methods and if sidebar is collapsable.\n\t * This method can be used to display backdrop when sidebar is expanded.\n\t */\n\tisExpanded(): Observable<boolean> {\n\t\treturn this.isCollapsable().pipe(\n\t\t\tswitchMap((isCollapsable: boolean) => (isCollapsable ? this.visibilityChanges() : of(false))),\n\t\t);\n\t}\n\n\t/**\n\t * Show sidebar, and block scrolling.\n\t */\n\tshow(): void {\n\t\tif (!this.visible.value) {\n\t\t\tthis.visible.next(true);\n\t\t\tthis.scroll.block();\n\t\t}\n\t}\n\n\t/**\n\t * Hide sidebar, and unblock scrolling.\n\t */\n\thide(): void {\n\t\tif (this.visible.value) {\n\t\t\tthis.visible.next(false);\n\t\t\tthis.scroll.unblock();\n\t\t}\n\t}\n\n\t/**\n\t * Toggle sidebar visibility.\n\t */\n\ttoggle(): void {\n\t\tthis.visible.value ? this.hide() : this.show();\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AASA;;AAEG;AAKU,IAAA,mBAAmB,GAAzB,MAAM,mBAAmB,CAAA;AAK/B,IAAA,WAAA,CAEoB,QAAkB,EAClB,kBAAsC,EACtC,MAAc,EACd,MAA0B,EAAA;AAH1B,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAU;AAClB,QAAA,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;AACtC,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;AACd,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAoB;AATrC,QAAA,IAAW,CAAA,WAAA,GAAa,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;QAEtD,IAAA,CAAA,OAAO,GAA6B,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;QAS1F,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/G,IAAI,CAAC,MAAM,CAAC,MAAM;aAChB,IAAI,CACJ,MAAM,CAAC,CAAC,KAAY,KAAK,KAAK,YAAY,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAC9E,SAAS,CAAC,IAAI,CAAC,CACf;aACA,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;KAC/B;AAED;;;;AAIG;IACH,aAAa,GAAA;QACZ,OAAO,IAAI,CAAC,QAAQ,CAAC;KACrB;AAED;;AAEG;IACH,iBAAiB,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;KACnC;AAED;;;AAGG;IACH,UAAU,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAC/B,SAAS,CAAC,CAAC,aAAsB,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAC7F,CAAC;KACF;AAED;;AAEG;IACH,IAAI,GAAA;AACH,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;AACxB,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;AACpB,SAAA;KACD;AAED;;AAEG;IACH,IAAI,GAAA;AACH,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;AACvB,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACzB,YAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;AACtB,SAAA;KACD;AAED;;AAEG;IACH,MAAM,GAAA;AACL,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;KAC/C;;AAzEW,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,kBAMtB,QAAQ,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AANL,mBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,cAHnB,MAAM,EAAA,CAAA,CAAA;AAGN,mBAAmB,GAAA,UAAA,CAAA;AAD/B,IAAA,YAAY,EAAE;qCAQgB,QAAQ;QACE,kBAAkB;QAC9B,MAAM;AACN,QAAA,kBAAkB,CAAA,CAAA;CAVlC,EAAA,mBAAmB,CA0E/B,CAAA;2FA1EY,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACX,oBAAA,UAAU,EAAE,MAAM;iBAClB,CAAA;;;8BAQE,MAAM;+BAAC,QAAQ,CAAA;;;;ACtBlB;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-doc-app-services-sidebar.mjs","sources":["../../../../libs/app/services/sidebar/sidebar.service.ts","../../../../libs/app/services/sidebar/ng-doc-app-services-sidebar.ts"],"sourcesContent":["import {BreakpointObserver, Breakpoints} from '@angular/cdk/layout';\nimport {DOCUMENT} from '@angular/common';\nimport {Inject, Injectable} from '@angular/core';\nimport {Event, NavigationEnd, Router} from '@angular/router';\nimport {NgDocScrollService} from '@ng-doc/ui-kit/services/scroll';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {BehaviorSubject, combineLatest, Observable, of} from 'rxjs';\nimport {debounceTime, distinctUntilChanged, filter, pluck, share, startWith, switchMap, tap} from 'rxjs/operators';\n\n/**\n * Service for sidebar, it can be used to hide/show sidebar or to check if sidebar is collapsable.\n */\n@Injectable({\n\tprovidedIn: 'root',\n})\n@UntilDestroy()\nexport class NgDocSidebarService {\n\treadonly breakpoints: string[] = [Breakpoints.XSmall, Breakpoints.Small];\n\tprotected readonly observer: Observable<boolean>;\n\tprotected readonly expanded: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(true);\n\n\tconstructor(\n\t\t@Inject(DOCUMENT)\n\t\tprotected readonly document: Document,\n\t\tprotected readonly breakpointObserver: BreakpointObserver,\n\t\tprotected readonly router: Router,\n\t\tprotected readonly scroll: NgDocScrollService,\n\t) {\n\t\tthis.observer = this.breakpointObserver\n\t\t\t.observe(this.breakpoints)\n\t\t\t.pipe(pluck('matches'), distinctUntilChanged(), untilDestroyed(this));\n\n\t\tcombineLatest([this.router.events, this.isMobileMode()])\n\t\t\t.pipe(\n\t\t\t\tfilter(\n\t\t\t\t\t([event, isMobileMode]: [Event, boolean]) =>\n\t\t\t\t\t\tevent instanceof NavigationEnd && this.expanded.value && isMobileMode,\n\t\t\t\t),\n\t\t\t\tdebounceTime(10),\n\t\t\t)\n\t\t\t.subscribe(() => this.hide());\n\n\t\tthis.isMobileMode()\n\t\t\t.pipe(untilDestroyed(this))\n\t\t\t.subscribe((isMobileMode: boolean) => {\n\t\t\t\tif (isMobileMode) {\n\t\t\t\t\tthis.hide();\n\t\t\t\t} else {\n\t\t\t\t\tthis.show();\n\t\t\t\t\tthis.scroll.unblock();\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\t/**\n\t * Indicates if sidebar is collapsable, based on the screen size.\n\t */\n\tisMobileMode(): Observable<boolean> {\n\t\treturn this.observer;\n\t}\n\n\t/**\n\t * Indicates if sidebar is visible, based on the show/hide methods.\n\t */\n\tisExpanded(): Observable<boolean> {\n\t\treturn this.expanded.asObservable();\n\t}\n\n\t/**\n\t * Show sidebar, and block scrolling.\n\t */\n\tshow(): void {\n\t\tif (!this.expanded.value) {\n\t\t\tthis.expanded.next(true);\n\t\t\tthis.scroll.block();\n\t\t}\n\t}\n\n\t/**\n\t * Hide sidebar, and unblock scrolling.\n\t */\n\thide(): void {\n\t\tif (this.expanded.value) {\n\t\t\tthis.expanded.next(false);\n\t\t\tthis.scroll.unblock();\n\t\t}\n\t}\n\n\t/**\n\t * Toggle sidebar visibility.\n\t */\n\ttoggle(): void {\n\t\tthis.expanded.value ? this.hide() : this.show();\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,22 +1,51 @@
1
+ import { __decorate, __metadata } from 'tslib';
1
2
  import { DOCUMENT } from '@angular/common';
2
3
  import * as i0 from '@angular/core';
3
- import { Injectable, Inject } from '@angular/core';
4
- import { NG_DOC_STORE_THEME_KEY } from '@ng-doc/app/constants';
5
- import { NG_DOC_THEME } from '@ng-doc/app/tokens';
4
+ import { Injectable, Inject, Optional } from '@angular/core';
5
+ import { NG_DOC_NIGHT_THEME, NG_DOC_STORE_THEME_KEY } from '@ng-doc/app/constants';
6
6
  import * as i1 from '@ng-doc/app/services/store';
7
+ import { NgDocStoreService } from '@ng-doc/app/services/store';
8
+ import { NG_DOC_THEME, NG_DOC_DEFAULT_THEME_ID } from '@ng-doc/app/tokens';
9
+ import { untilDestroyed, UntilDestroy } from '@ngneat/until-destroy';
10
+ import { Subject, fromEvent } from 'rxjs';
11
+ import { takeUntil } from 'rxjs/operators';
7
12
 
8
- class NgDocThemeService {
9
- constructor(document, themes, store) {
13
+ /**
14
+ * Service for managing themes.
15
+ */
16
+ let NgDocThemeService = class NgDocThemeService {
17
+ constructor(document, themes, store, defaultThemeId) {
10
18
  this.document = document;
11
19
  this.themes = themes;
12
20
  this.store = store;
21
+ this.defaultThemeId = defaultThemeId;
13
22
  this.theme = undefined;
23
+ this.theme$ = new Subject();
24
+ this.disableAutoTheme$ = new Subject();
25
+ if (defaultThemeId === 'auto') {
26
+ fromEvent(window.matchMedia('(prefers-color-scheme: dark)'), 'change')
27
+ .pipe(takeUntil(this.disableAutoTheme$), untilDestroyed(this))
28
+ .subscribe((event) => this.set(event.matches ? NG_DOC_NIGHT_THEME.id : undefined, false));
29
+ }
14
30
  }
31
+ /**
32
+ * Returns the current theme.
33
+ */
15
34
  get currentTheme() {
16
35
  return this.theme;
17
36
  }
18
- set(id) {
37
+ /**
38
+ * Sets the theme by id.
39
+ *
40
+ * @param id Theme id.
41
+ * @param save Whether to save the theme in the store to restore it when the page is reloaded. (`true` by default)
42
+ */
43
+ set(id, save = true) {
19
44
  this.removeLink();
45
+ if (id === 'auto') {
46
+ return Promise.resolve();
47
+ }
48
+ save && this.disableAutoTheme$.next();
20
49
  if (id !== 'day' && id) {
21
50
  const theme = this.themes.find((theme) => theme.id === id);
22
51
  if (!theme) {
@@ -26,19 +55,29 @@ class NgDocThemeService {
26
55
  this.createLinkIfNoExists();
27
56
  if (this.linkElement) {
28
57
  this.linkElement.href = theme.path;
29
- this.store.set(NG_DOC_STORE_THEME_KEY, theme.id);
58
+ save && this.store.set(NG_DOC_STORE_THEME_KEY, theme.id);
30
59
  this.theme = theme;
31
60
  return new Promise((resolve, reject) => {
32
61
  if (this.linkElement) {
33
- this.linkElement.onload = resolve;
62
+ this.linkElement.onload = () => {
63
+ this.theme$.next(theme);
64
+ resolve();
65
+ };
34
66
  this.linkElement.onerror = reject;
35
67
  }
36
68
  });
37
69
  }
38
70
  }
39
- this.store.set(NG_DOC_STORE_THEME_KEY, 'day');
71
+ save && this.store.set(NG_DOC_STORE_THEME_KEY, 'day');
72
+ this.theme$.next(undefined);
40
73
  return Promise.resolve();
41
74
  }
75
+ /**
76
+ * Returns an observable that emits when the theme changes.
77
+ */
78
+ themeChanges() {
79
+ return this.theme$.asObservable();
80
+ }
42
81
  removeLink() {
43
82
  var _a;
44
83
  this.theme = undefined;
@@ -53,9 +92,13 @@ class NgDocThemeService {
53
92
  this.document.getElementsByTagName('head')[0].appendChild(this.linkElement);
54
93
  }
55
94
  }
56
- }
57
- NgDocThemeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocThemeService, deps: [{ token: DOCUMENT }, { token: NG_DOC_THEME }, { token: i1.NgDocStoreService }], target: i0.ɵɵFactoryTarget.Injectable });
95
+ };
96
+ NgDocThemeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocThemeService, deps: [{ token: DOCUMENT }, { token: NG_DOC_THEME }, { token: i1.NgDocStoreService }, { token: NG_DOC_DEFAULT_THEME_ID, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
58
97
  NgDocThemeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocThemeService, providedIn: 'root' });
98
+ NgDocThemeService = __decorate([
99
+ UntilDestroy(),
100
+ __metadata("design:paramtypes", [Document, Array, NgDocStoreService, String])
101
+ ], NgDocThemeService);
59
102
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocThemeService, decorators: [{
60
103
  type: Injectable,
61
104
  args: [{
@@ -68,7 +111,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
68
111
  }] }, { type: undefined, decorators: [{
69
112
  type: Inject,
70
113
  args: [NG_DOC_THEME]
71
- }] }, { type: i1.NgDocStoreService }];
114
+ }] }, { type: i1.NgDocStoreService }, { type: undefined, decorators: [{
115
+ type: Inject,
116
+ args: [NG_DOC_DEFAULT_THEME_ID]
117
+ }, {
118
+ type: Optional
119
+ }] }];
72
120
  } });
73
121
 
74
122
  /**
@@ -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';\n\n@Injectable({\n\tprovidedIn: 'root',\n})\nexport class NgDocThemeService {\n\tprivate linkElement?: HTMLLinkElement;\n\tprivate theme: NgDocTheme | undefined = undefined;\n\n\tconstructor(\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\n\tget currentTheme(): NgDocTheme | undefined {\n\t\treturn this.theme;\n\t}\n\n\tset(id?: string): Promise<void> {\n\t\tthis.removeLink();\n\n\t\tif (id !== 'day' && id) {\n\t\t\tconst theme: NgDocTheme | undefined = this.themes.find((theme: NgDocTheme) => theme.id === id);\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 Promise.resolve();\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\tthis.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 = resolve;\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\tthis.store.set(NG_DOC_STORE_THEME_KEY, 'day');\n\n\t\treturn Promise.resolve();\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\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","/**\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, Optional} from '@angular/core';\nimport {NG_DOC_NIGHT_THEME, 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_DEFAULT_THEME_ID, NG_DOC_THEME} from '@ng-doc/app/tokens';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {from, fromEvent, Observable, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n/**\n * Service for managing themes.\n */\n@Injectable({\n\tprovidedIn: 'root',\n})\n@UntilDestroy()\nexport class NgDocThemeService {\n\tprivate linkElement?: HTMLLinkElement;\n\tprivate theme: NgDocTheme | undefined = undefined;\n\tprivate readonly theme$: Subject<NgDocTheme | undefined> = new Subject<NgDocTheme | undefined>();\n\tprivate readonly disableAutoTheme$: Subject<void> = new Subject<void>();\n\n\tconstructor(\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\t@Inject(NG_DOC_DEFAULT_THEME_ID)\n\t\t@Optional()\n\t\tprivate readonly defaultThemeId?: string | 'auto',\n\t) {\n\t\tif (defaultThemeId === 'auto') {\n\t\t\tfromEvent<MediaQueryList>(window.matchMedia('(prefers-color-scheme: dark)'), 'change')\n\t\t\t\t.pipe(takeUntil(this.disableAutoTheme$), untilDestroyed(this))\n\t\t\t\t.subscribe((event: MediaQueryList) => this.set(event.matches ? NG_DOC_NIGHT_THEME.id : undefined, false))\n\t\t}\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 * 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\tset(id?: string | 'auto', save: boolean = true): Promise<void> {\n\t\tthis.removeLink();\n\n\t\tif (id === 'auto') {\n\t\t\treturn Promise.resolve();\n\t\t}\n\n\t\tsave && this.disableAutoTheme$.next();\n\n\t\tif (id !== 'day' && id) {\n\t\t\tconst theme: NgDocTheme | undefined = this.themes.find((theme: NgDocTheme) => theme.id === id);\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 Promise.resolve();\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\n\t\tsave && this.store.set(NG_DOC_STORE_THEME_KEY, '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\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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
21
21
  args: [{ selector: 'ng-doc-boolean-control', providers: [provideControlHost(NgDocBooleanControlComponent)], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-doc-checkbox [ngDocTooltip]=\"description\" [canOpen]=\"!!description\">{{ name }}</ng-doc-checkbox>\n", styles: [":host{display:inline-flex;width:100%}\n"] }]
22
22
  }], ctorParameters: function () { return []; } });
23
23
 
24
- const provider = provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true });
24
+ const provider = provideTypeControl('boolean', NgDocBooleanControlComponent, { hideLabel: true, order: 40 });
25
25
  class NgDocBooleanControlModule {
26
26
  }
27
27
  NgDocBooleanControlModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocBooleanControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-type-controls-boolean-control.mjs","sources":["../../../../libs/app/type-controls/boolean-control/boolean-control.component.ts","../../../../libs/app/type-controls/boolean-control/boolean-control.component.html","../../../../libs/app/type-controls/boolean-control/boolean-control.module.ts","../../../../libs/app/type-controls/boolean-control/ng-doc-app-type-controls-boolean-control.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {NgDocTypeControl} from '@ng-doc/app/interfaces';\nimport {FlControlHost, provideControlHost} from 'flex-controls';\n\n@Component({\n\tselector: 'ng-doc-boolean-control',\n\ttemplateUrl: './boolean-control.component.html',\n\tstyleUrls: ['./boolean-control.component.scss'],\n\tproviders: [provideControlHost(NgDocBooleanControlComponent)],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocBooleanControlComponent extends FlControlHost<string | undefined> implements NgDocTypeControl {\n\tname: string = '';\n\tdescription: string = '';\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.controlChange.subscribe(() => this.onTouched());\n\t}\n}\n","<ng-doc-checkbox [ngDocTooltip]=\"description\" [canOpen]=\"!!description\">{{ name }}</ng-doc-checkbox>\n","import {CommonModule} from '@angular/common';\nimport {NgModule, Provider} from '@angular/core';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {NgDocCheckboxModule, NgDocTooltipModule} from '@ng-doc/ui-kit';\n\nimport {NgDocBooleanControlComponent} from './boolean-control.component';\n\nconst provider: Provider = provideTypeControl('boolean', NgDocBooleanControlComponent, {hideLabel: true});\n\n@NgModule({\n\tdeclarations: [NgDocBooleanControlComponent],\n\timports: [CommonModule, NgDocCheckboxModule, NgDocTooltipModule],\n\tproviders: [provider],\n\texports: [NgDocBooleanControlComponent],\n})\nexport class NgDocBooleanControlModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAWM,MAAO,4BAA6B,SAAQ,aAAiC,CAAA;AAIlF,IAAA,WAAA,GAAA;AACC,QAAA,KAAK,EAAE,CAAC;AAJT,QAAA,IAAI,CAAA,IAAA,GAAW,EAAE,CAAC;AAClB,QAAA,IAAW,CAAA,WAAA,GAAW,EAAE,CAAC;AAKxB,QAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;KACrD;;yHARW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6GAA5B,4BAA4B,EAAA,QAAA,EAAA,wBAAA,EAAA,SAAA,EAH7B,CAAC,kBAAkB,CAAC,4BAA4B,CAAC,CAAC,iDCR9D,4GACA,EAAA,MAAA,EAAA,CAAA,yCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,OAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,WAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDUa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAPxC,SAAS;+BACC,wBAAwB,EAAA,SAAA,EAGvB,CAAC,kBAAkB,CAAA,4BAAA,CAA8B,CAAC,EAC5C,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4GAAA,EAAA,MAAA,EAAA,CAAA,yCAAA,CAAA,EAAA,CAAA;;;AEFhD,MAAM,QAAQ,GAAa,kBAAkB,CAAC,SAAS,EAAE,4BAA4B,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;MAQ7F,yBAAyB,CAAA;;sHAAzB,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;uHAAzB,yBAAyB,EAAA,YAAA,EAAA,CALtB,4BAA4B,CACjC,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,CAAA,EAAA,OAAA,EAAA,CAErD,4BAA4B,CAAA,EAAA,CAAA,CAAA;uHAE1B,yBAAyB,EAAA,SAAA,EAH1B,CAAC,QAAQ,CAAC,YADX,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,CAAA,EAAA,CAAA,CAAA;2FAInD,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,YAAY,EAAE,CAAC,4BAA4B,CAAC;AAC5C,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;oBAChE,SAAS,EAAE,CAAC,QAAQ,CAAC;oBACrB,OAAO,EAAE,CAAC,4BAA4B,CAAC;iBACvC,CAAA;;;ACdD;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-doc-app-type-controls-boolean-control.mjs","sources":["../../../../libs/app/type-controls/boolean-control/boolean-control.component.ts","../../../../libs/app/type-controls/boolean-control/boolean-control.component.html","../../../../libs/app/type-controls/boolean-control/boolean-control.module.ts","../../../../libs/app/type-controls/boolean-control/ng-doc-app-type-controls-boolean-control.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {NgDocTypeControl} from '@ng-doc/app/interfaces';\nimport {FlControlHost, provideControlHost} from 'flex-controls';\n\n@Component({\n\tselector: 'ng-doc-boolean-control',\n\ttemplateUrl: './boolean-control.component.html',\n\tstyleUrls: ['./boolean-control.component.scss'],\n\tproviders: [provideControlHost(NgDocBooleanControlComponent)],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocBooleanControlComponent extends FlControlHost<string | undefined> implements NgDocTypeControl {\n\tname: string = '';\n\tdescription: string = '';\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.controlChange.subscribe(() => this.onTouched());\n\t}\n}\n","<ng-doc-checkbox [ngDocTooltip]=\"description\" [canOpen]=\"!!description\">{{ name }}</ng-doc-checkbox>\n","import {CommonModule} from '@angular/common';\nimport {NgModule, Provider} from '@angular/core';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {NgDocCheckboxModule, NgDocTooltipModule} from '@ng-doc/ui-kit';\n\nimport {NgDocBooleanControlComponent} from './boolean-control.component';\n\nconst provider: Provider = provideTypeControl('boolean', NgDocBooleanControlComponent, {hideLabel: true, order: 40});\n\n@NgModule({\n\tdeclarations: [NgDocBooleanControlComponent],\n\timports: [CommonModule, NgDocCheckboxModule, NgDocTooltipModule],\n\tproviders: [provider],\n\texports: [NgDocBooleanControlComponent],\n})\nexport class NgDocBooleanControlModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAWM,MAAO,4BAA6B,SAAQ,aAAiC,CAAA;AAIlF,IAAA,WAAA,GAAA;AACC,QAAA,KAAK,EAAE,CAAC;AAJT,QAAA,IAAI,CAAA,IAAA,GAAW,EAAE,CAAC;AAClB,QAAA,IAAW,CAAA,WAAA,GAAW,EAAE,CAAC;AAKxB,QAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;KACrD;;yHARW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6GAA5B,4BAA4B,EAAA,QAAA,EAAA,wBAAA,EAAA,SAAA,EAH7B,CAAC,kBAAkB,CAAC,4BAA4B,CAAC,CAAC,iDCR9D,4GACA,EAAA,MAAA,EAAA,CAAA,yCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,OAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,WAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDUa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAPxC,SAAS;+BACC,wBAAwB,EAAA,SAAA,EAGvB,CAAC,kBAAkB,CAAA,4BAAA,CAA8B,CAAC,EAC5C,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4GAAA,EAAA,MAAA,EAAA,CAAA,yCAAA,CAAA,EAAA,CAAA;;;AEFhD,MAAM,QAAQ,GAAa,kBAAkB,CAAC,SAAS,EAAE,4BAA4B,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;MAQxG,yBAAyB,CAAA;;sHAAzB,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;uHAAzB,yBAAyB,EAAA,YAAA,EAAA,CALtB,4BAA4B,CACjC,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,CAAA,EAAA,OAAA,EAAA,CAErD,4BAA4B,CAAA,EAAA,CAAA,CAAA;uHAE1B,yBAAyB,EAAA,SAAA,EAH1B,CAAC,QAAQ,CAAC,YADX,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,CAAA,EAAA,CAAA,CAAA;2FAInD,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,YAAY,EAAE,CAAC,4BAA4B,CAAC;AAC5C,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;oBAChE,SAAS,EAAE,CAAC,QAAQ,CAAC;oBACrB,OAAO,EAAE,CAAC,4BAA4B,CAAC;iBACvC,CAAA;;;ACdD;;AAEG;;;;"}
@@ -29,7 +29,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
29
29
  args: [{ selector: 'ng-doc-number-control', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-doc-input-wrapper flControlSilencer [rightContent]=\"rightContent\">\n\t<input ngDocInputNumber type=\"number\" [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"] }]
30
30
  }], ctorParameters: function () { return []; } });
31
31
 
32
- const provider = provideTypeControl('number', NgDocNumberControlComponent);
32
+ const provider = provideTypeControl('number', NgDocNumberControlComponent, { order: 30 });
33
33
  class NgDocNumberControlModule {
34
34
  }
35
35
  NgDocNumberControlModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocNumberControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-type-controls-number-control.mjs","sources":["../../../../libs/app/type-controls/number-control/number-control.component.ts","../../../../libs/app/type-controls/number-control/number-control.component.html","../../../../libs/app/type-controls/number-control/number-control.module.ts","../../../../libs/app/type-controls/number-control/ng-doc-app-type-controls-number-control.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {NgDocTypeControl} from '@ng-doc/app/interfaces';\nimport {extractValue} from '@ng-doc/core/helpers/extract-value';\nimport {FlControl} from 'flex-controls';\n\n@Component({\n\tselector: 'ng-doc-number-control',\n\ttemplateUrl: './number-control.component.html',\n\tstyleUrls: ['./number-control.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocNumberControlComponent extends FlControl<number> implements NgDocTypeControl {\n\tdefault: string | undefined;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget defaultValue(): number | null {\n\t\treturn this.default ? (extractValue(this.default) as number) : null;\n\t}\n\n\tchangeModel(value: number | null): void {\n\t\tthis.updateModel(value === null && this.default ? this.defaultValue : value);\n\t}\n}\n","<ng-doc-input-wrapper flControlSilencer [rightContent]=\"rightContent\">\n\t<input ngDocInputNumber type=\"number\" [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n","import {CommonModule} from '@angular/common';\nimport {NgModule, Provider} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {\n\tNgDocButtonIconModule,\n\tNgDocClearControlModule,\n\tNgDocFocusableModule,\n\tNgDocIconModule,\n\tNgDocInputNumberModule,\n\tNgDocInputWrapperModule,\n} from '@ng-doc/ui-kit';\nimport {FlControlSilencerModule} from 'flex-controls';\n\nimport {NgDocNumberControlComponent} from './number-control.component';\n\nconst provider: Provider = provideTypeControl('number', NgDocNumberControlComponent);\n\n@NgModule({\n\tdeclarations: [NgDocNumberControlComponent],\n\timports: [\n\t\tCommonModule,\n\t\tNgDocInputWrapperModule,\n\t\tNgDocInputNumberModule,\n\t\tNgDocClearControlModule,\n\t\tFormsModule,\n\t\tFlControlSilencerModule,\n\t\tNgDocButtonIconModule,\n\t\tNgDocFocusableModule,\n\t\tNgDocIconModule,\n\t],\n\tproviders: [provider],\n\texports: [NgDocNumberControlComponent],\n})\nexport class NgDocNumberControlModule {}\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-type-controls-number-control.mjs","sources":["../../../../libs/app/type-controls/number-control/number-control.component.ts","../../../../libs/app/type-controls/number-control/number-control.component.html","../../../../libs/app/type-controls/number-control/number-control.module.ts","../../../../libs/app/type-controls/number-control/ng-doc-app-type-controls-number-control.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {NgDocTypeControl} from '@ng-doc/app/interfaces';\nimport {extractValue} from '@ng-doc/core/helpers/extract-value';\nimport {FlControl} from 'flex-controls';\n\n@Component({\n\tselector: 'ng-doc-number-control',\n\ttemplateUrl: './number-control.component.html',\n\tstyleUrls: ['./number-control.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocNumberControlComponent extends FlControl<number> implements NgDocTypeControl {\n\tdefault: string | undefined;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget defaultValue(): number | null {\n\t\treturn this.default ? (extractValue(this.default) as number) : null;\n\t}\n\n\tchangeModel(value: number | null): void {\n\t\tthis.updateModel(value === null && this.default ? this.defaultValue : value);\n\t}\n}\n","<ng-doc-input-wrapper flControlSilencer [rightContent]=\"rightContent\">\n\t<input ngDocInputNumber type=\"number\" [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n","import {CommonModule} from '@angular/common';\nimport {NgModule, Provider} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {\n\tNgDocButtonIconModule,\n\tNgDocClearControlModule,\n\tNgDocFocusableModule,\n\tNgDocIconModule,\n\tNgDocInputNumberModule,\n\tNgDocInputWrapperModule,\n} from '@ng-doc/ui-kit';\nimport {FlControlSilencerModule} from 'flex-controls';\n\nimport {NgDocNumberControlComponent} from './number-control.component';\n\nconst provider: Provider = provideTypeControl('number', NgDocNumberControlComponent, {order: 30});\n\n@NgModule({\n\tdeclarations: [NgDocNumberControlComponent],\n\timports: [\n\t\tCommonModule,\n\t\tNgDocInputWrapperModule,\n\t\tNgDocInputNumberModule,\n\t\tNgDocClearControlModule,\n\t\tFormsModule,\n\t\tFlControlSilencerModule,\n\t\tNgDocButtonIconModule,\n\t\tNgDocFocusableModule,\n\t\tNgDocIconModule,\n\t],\n\tproviders: [provider],\n\texports: [NgDocNumberControlComponent],\n})\nexport class NgDocNumberControlModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAWM,MAAO,2BAA4B,SAAQ,SAAiB,CAAA;AAGjE,IAAA,WAAA,GAAA;AACC,QAAA,KAAK,EAAE,CAAC;KACR;AAED,IAAA,IAAI,YAAY,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,OAAO,GAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAY,GAAG,IAAI,CAAC;KACpE;AAED,IAAA,WAAW,CAAC,KAAoB,EAAA;QAC/B,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC;KAC7E;;wHAbW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,2BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,oFCXxC,2lBAiBA,EAAA,MAAA,EAAA,CAAA,mCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,aAAA,EAAA,cAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,iGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,mDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDNa,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBANvC,SAAS;+BACC,uBAAuB,EAAA,eAAA,EAGhB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2lBAAA,EAAA,MAAA,EAAA,CAAA,mCAAA,CAAA,EAAA,CAAA;;;AEOhD,MAAM,QAAQ,GAAa,kBAAkB,CAAC,QAAQ,EAAE,2BAA2B,EAAE,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;MAkBrF,wBAAwB,CAAA;;qHAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;sHAAxB,wBAAwB,EAAA,YAAA,EAAA,CAfrB,2BAA2B,CAAA,EAAA,OAAA,EAAA,CAEzC,YAAY;QACZ,uBAAuB;QACvB,sBAAsB;QACtB,uBAAuB;QACvB,WAAW;QACX,uBAAuB;QACvB,qBAAqB;QACrB,oBAAoB;QACpB,eAAe,aAGN,2BAA2B,CAAA,EAAA,CAAA,CAAA;AAEzB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,EAHzB,SAAA,EAAA,CAAC,QAAQ,CAAC,YAVpB,YAAY;QACZ,uBAAuB;QACvB,sBAAsB;QACtB,uBAAuB;QACvB,WAAW;QACX,uBAAuB;QACvB,qBAAqB;QACrB,oBAAoB;QACpB,eAAe,CAAA,EAAA,CAAA,CAAA;2FAKJ,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAhBpC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,YAAY,EAAE,CAAC,2BAA2B,CAAC;AAC3C,oBAAA,OAAO,EAAE;wBACR,YAAY;wBACZ,uBAAuB;wBACvB,sBAAsB;wBACtB,uBAAuB;wBACvB,WAAW;wBACX,uBAAuB;wBACvB,qBAAqB;wBACrB,oBAAoB;wBACpB,eAAe;AACf,qBAAA;oBACD,SAAS,EAAE,CAAC,QAAQ,CAAC;oBACrB,OAAO,EAAE,CAAC,2BAA2B,CAAC;iBACtC,CAAA;;;ACjCD;;AAEG;;;;"}
@@ -30,7 +30,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
30
30
  args: [{ selector: 'ng-doc-string-control', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-doc-input-wrapper [rightContent]=\"rightContent\" flControlSilencer>\n\t<input ngDocInputString [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"] }]
31
31
  }], ctorParameters: function () { return []; } });
32
32
 
33
- const provider = provideTypeControl('string', NgDocStringControlComponent);
33
+ const provider = provideTypeControl('string', NgDocStringControlComponent, { order: 20 });
34
34
  class NgDocStringControlModule {
35
35
  }
36
36
  NgDocStringControlModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocStringControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-type-controls-string-control.mjs","sources":["../../../../libs/app/type-controls/string-control/string-control.component.ts","../../../../libs/app/type-controls/string-control/string-control.component.html","../../../../libs/app/type-controls/string-control/string-control.module.ts","../../../../libs/app/type-controls/string-control/ng-doc-app-type-controls-string-control.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {NgDocTypeControl} from '@ng-doc/app/interfaces';\nimport {extractValue} from '@ng-doc/core/helpers/extract-value';\nimport {FlControl} from 'flex-controls';\n\n@Component({\n\tselector: 'ng-doc-string-control',\n\ttemplateUrl: './string-control.component.html',\n\tstyleUrls: ['./string-control.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocStringControlComponent extends FlControl<string> implements NgDocTypeControl {\n\tdefault?: string;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget defaultValue(): string | null {\n\t\treturn this.default ? (extractValue(this.default) as string) : null;\n\t}\n\n\tchangeModel(value: string | null): void {\n\t\tthis.updateModel(value === null && this.default ? this.defaultValue : value);\n\t}\n}\n","<ng-doc-input-wrapper [rightContent]=\"rightContent\" flControlSilencer>\n\t<input ngDocInputString [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n","import {CommonModule} from '@angular/common';\nimport {NgModule, Provider} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {NgDocExtractValueModule} from '@ng-doc/app/pipes/extract-value';\nimport {\n\tNgDocButtonIconModule,\n\tNgDocClearControlModule,\n\tNgDocFocusableModule,\n\tNgDocIconModule,\n\tNgDocInputStringModule,\n\tNgDocInputWrapperModule,\n} from '@ng-doc/ui-kit';\nimport {FlControlSilencerModule} from 'flex-controls';\n\nimport {NgDocStringControlComponent} from './string-control.component';\n\nconst provider: Provider = provideTypeControl('string', NgDocStringControlComponent);\n\n@NgModule({\n\tdeclarations: [NgDocStringControlComponent],\n\timports: [\n\t\tCommonModule,\n\t\tNgDocInputWrapperModule,\n\t\tNgDocInputStringModule,\n\t\tNgDocClearControlModule,\n\t\tFormsModule,\n\t\tFlControlSilencerModule,\n\t\tNgDocExtractValueModule,\n\t\tNgDocIconModule,\n\t\tNgDocButtonIconModule,\n\t\tNgDocFocusableModule,\n\t],\n\tproviders: [provider],\n\texports: [NgDocStringControlComponent],\n})\nexport class NgDocStringControlModule {}\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-type-controls-string-control.mjs","sources":["../../../../libs/app/type-controls/string-control/string-control.component.ts","../../../../libs/app/type-controls/string-control/string-control.component.html","../../../../libs/app/type-controls/string-control/string-control.module.ts","../../../../libs/app/type-controls/string-control/ng-doc-app-type-controls-string-control.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {NgDocTypeControl} from '@ng-doc/app/interfaces';\nimport {extractValue} from '@ng-doc/core/helpers/extract-value';\nimport {FlControl} from 'flex-controls';\n\n@Component({\n\tselector: 'ng-doc-string-control',\n\ttemplateUrl: './string-control.component.html',\n\tstyleUrls: ['./string-control.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocStringControlComponent extends FlControl<string> implements NgDocTypeControl {\n\tdefault?: string;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget defaultValue(): string | null {\n\t\treturn this.default ? (extractValue(this.default) as string) : null;\n\t}\n\n\tchangeModel(value: string | null): void {\n\t\tthis.updateModel(value === null && this.default ? this.defaultValue : value);\n\t}\n}\n","<ng-doc-input-wrapper [rightContent]=\"rightContent\" flControlSilencer>\n\t<input ngDocInputString [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n","import {CommonModule} from '@angular/common';\nimport {NgModule, Provider} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {NgDocExtractValueModule} from '@ng-doc/app/pipes/extract-value';\nimport {\n\tNgDocButtonIconModule,\n\tNgDocClearControlModule,\n\tNgDocFocusableModule,\n\tNgDocIconModule,\n\tNgDocInputStringModule,\n\tNgDocInputWrapperModule,\n} from '@ng-doc/ui-kit';\nimport {FlControlSilencerModule} from 'flex-controls';\n\nimport {NgDocStringControlComponent} from './string-control.component';\n\nconst provider: Provider = provideTypeControl('string', NgDocStringControlComponent, {order: 20});\n\n@NgModule({\n\tdeclarations: [NgDocStringControlComponent],\n\timports: [\n\t\tCommonModule,\n\t\tNgDocInputWrapperModule,\n\t\tNgDocInputStringModule,\n\t\tNgDocClearControlModule,\n\t\tFormsModule,\n\t\tFlControlSilencerModule,\n\t\tNgDocExtractValueModule,\n\t\tNgDocIconModule,\n\t\tNgDocButtonIconModule,\n\t\tNgDocFocusableModule,\n\t],\n\tproviders: [provider],\n\texports: [NgDocStringControlComponent],\n})\nexport class NgDocStringControlModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -35,7 +35,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
35
35
  args: [{ selector: 'ng-doc-type-alias-control', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-doc-combobox [ngModel]=\"model\"\n\t\t\t\t [readonly]=\"true\"\n\t\t\t\t [valueContent]=\"valueTemplate\"\n\t\t\t\t [clearButton]=\"false\"\n\t\t\t\t [rightContent]=\"rightContent\"\n\t\t\t\t (ngModelChange)=\"changeModel($event)\">\n\t<ng-doc-list *ngDocData>\n\t\t<ng-container *ngFor=\"let option of options\">\n\t\t\t<ng-container *ngIf=\"option | ngDocExtractValue as value\">\n\t\t\t\t<ng-doc-option [value]=\"value\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"valueTemplate; context: {$implicit: value}\"></ng-container>\n\t\t\t\t</ng-doc-option>\n\t\t\t</ng-container>\n\t\t</ng-container>\n\t</ng-doc-list>\n\t<ng-template let-value #valueTemplate>\n\t\t<div ng-doc-text>\n\t\t\t<ng-doc-kind-icon [kind]=\"typeOf(value)\"\n\t\t\t\t\t\t\t [type]=\"'type'\"\n\t\t\t\t\t\t\t [ngDocTooltip]=\"typeOf(value)\"\n\t\t\t\t\t\t\t positions=\"left-center\"\n\t\t\t\t\t\t\t ngDocTextLeft>\n\t\t\t</ng-doc-kind-icon>\n\t\t\t<div>{{value}}</div>\n\t\t\t<span ng-doc-text\n\t\t\t\t color=\"muted\"\n\t\t\t\t size=\"small\"\n\t\t\t\t *ngIf=\"value === defaultValue\" ngDocTextRight>[default]</span>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-combobox>\n", styles: [":host{display:block;width:100%}\n"] }]
36
36
  }], ctorParameters: function () { return []; } });
37
37
 
38
- const provider = provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent);
38
+ const provider = provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, { order: 10 });
39
39
  class NgDocTypeAliasControlModule {
40
40
  }
41
41
  NgDocTypeAliasControlModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocTypeAliasControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-type-controls-type-alias-control.mjs","sources":["../../../../libs/app/type-controls/type-alias-control/type-alias-control.component.ts","../../../../libs/app/type-controls/type-alias-control/type-alias-control.component.html","../../../../libs/app/type-controls/type-alias-control/type-alias-control.module.ts","../../../../libs/app/type-controls/type-alias-control/ng-doc-app-type-controls-type-alias-control.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {NgDocTypeControl} from '@ng-doc/app/interfaces';\nimport {extractValue} from '@ng-doc/core/helpers/extract-value';\nimport {FlControl} from 'flex-controls';\n\n@Component({\n\tselector: 'ng-doc-type-alias-control',\n\ttemplateUrl: './type-alias-control.component.html',\n\tstyleUrls: ['./type-alias-control.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocTypeAliasControlComponent<T> extends FlControl<T> implements NgDocTypeControl {\n\tdefault?: string;\n\toptions?: string[];\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget defaultValue(): T | null {\n\t\treturn this.default ? (extractValue(this.default) as unknown as T) : null;\n\t}\n\n\ttypeOf(value: unknown): string {\n\t\treturn typeof value;\n\t}\n\n\tchangeModel(value: T | null): void {\n\t\tthis.updateModel(value === null && this.default ? this.defaultValue : value);\n\t}\n}\n","<ng-doc-combobox [ngModel]=\"model\"\n\t\t\t\t [readonly]=\"true\"\n\t\t\t\t [valueContent]=\"valueTemplate\"\n\t\t\t\t [clearButton]=\"false\"\n\t\t\t\t [rightContent]=\"rightContent\"\n\t\t\t\t (ngModelChange)=\"changeModel($event)\">\n\t<ng-doc-list *ngDocData>\n\t\t<ng-container *ngFor=\"let option of options\">\n\t\t\t<ng-container *ngIf=\"option | ngDocExtractValue as value\">\n\t\t\t\t<ng-doc-option [value]=\"value\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"valueTemplate; context: {$implicit: value}\"></ng-container>\n\t\t\t\t</ng-doc-option>\n\t\t\t</ng-container>\n\t\t</ng-container>\n\t</ng-doc-list>\n\t<ng-template let-value #valueTemplate>\n\t\t<div ng-doc-text>\n\t\t\t<ng-doc-kind-icon [kind]=\"typeOf(value)\"\n\t\t\t\t\t\t\t [type]=\"'type'\"\n\t\t\t\t\t\t\t [ngDocTooltip]=\"typeOf(value)\"\n\t\t\t\t\t\t\t positions=\"left-center\"\n\t\t\t\t\t\t\t ngDocTextLeft>\n\t\t\t</ng-doc-kind-icon>\n\t\t\t<div>{{value}}</div>\n\t\t\t<span ng-doc-text\n\t\t\t\t color=\"muted\"\n\t\t\t\t size=\"small\"\n\t\t\t\t *ngIf=\"value === defaultValue\" ngDocTextRight>[default]</span>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-combobox>\n","import {CommonModule} from '@angular/common';\nimport {NgModule, Provider} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {NgDocKindIconModule} from '@ng-doc/app/components/kind-icon';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {NgDocExtractValueModule} from '@ng-doc/app/pipes/extract-value';\nimport {\n\tNgDocButtonIconModule,\n\tNgDocComboboxModule,\n\tNgDocDataModule,\n\tNgDocFocusableModule,\n\tNgDocIconModule,\n\tNgDocListModule,\n\tNgDocOptionModule,\n\tNgDocTextModule,\n\tNgDocTooltipModule,\n} from '@ng-doc/ui-kit';\n\nimport {NgDocTypeAliasControlComponent} from './type-alias-control.component';\n\nconst provider: Provider = provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent);\n\n@NgModule({\n\tdeclarations: [NgDocTypeAliasControlComponent],\n\timports: [\n\t\tCommonModule,\n\t\tNgDocComboboxModule,\n\t\tNgDocDataModule,\n\t\tFormsModule,\n\t\tNgDocOptionModule,\n\t\tNgDocListModule,\n\t\tNgDocExtractValueModule,\n\t\tNgDocTextModule,\n\t\tNgDocKindIconModule,\n\t\tNgDocTooltipModule,\n\t\tNgDocButtonIconModule,\n\t\tNgDocFocusableModule,\n\t\tNgDocIconModule,\n\t],\n\tproviders: [provider],\n\texports: [NgDocTypeAliasControlComponent],\n})\nexport class NgDocTypeAliasControlModule {}\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-type-controls-type-alias-control.mjs","sources":["../../../../libs/app/type-controls/type-alias-control/type-alias-control.component.ts","../../../../libs/app/type-controls/type-alias-control/type-alias-control.component.html","../../../../libs/app/type-controls/type-alias-control/type-alias-control.module.ts","../../../../libs/app/type-controls/type-alias-control/ng-doc-app-type-controls-type-alias-control.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {NgDocTypeControl} from '@ng-doc/app/interfaces';\nimport {extractValue} from '@ng-doc/core/helpers/extract-value';\nimport {FlControl} from 'flex-controls';\n\n@Component({\n\tselector: 'ng-doc-type-alias-control',\n\ttemplateUrl: './type-alias-control.component.html',\n\tstyleUrls: ['./type-alias-control.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocTypeAliasControlComponent<T> extends FlControl<T> implements NgDocTypeControl {\n\tdefault?: string;\n\toptions?: string[];\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget defaultValue(): T | null {\n\t\treturn this.default ? (extractValue(this.default) as unknown as T) : null;\n\t}\n\n\ttypeOf(value: unknown): string {\n\t\treturn typeof value;\n\t}\n\n\tchangeModel(value: T | null): void {\n\t\tthis.updateModel(value === null && this.default ? this.defaultValue : value);\n\t}\n}\n","<ng-doc-combobox [ngModel]=\"model\"\n\t\t\t\t [readonly]=\"true\"\n\t\t\t\t [valueContent]=\"valueTemplate\"\n\t\t\t\t [clearButton]=\"false\"\n\t\t\t\t [rightContent]=\"rightContent\"\n\t\t\t\t (ngModelChange)=\"changeModel($event)\">\n\t<ng-doc-list *ngDocData>\n\t\t<ng-container *ngFor=\"let option of options\">\n\t\t\t<ng-container *ngIf=\"option | ngDocExtractValue as value\">\n\t\t\t\t<ng-doc-option [value]=\"value\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"valueTemplate; context: {$implicit: value}\"></ng-container>\n\t\t\t\t</ng-doc-option>\n\t\t\t</ng-container>\n\t\t</ng-container>\n\t</ng-doc-list>\n\t<ng-template let-value #valueTemplate>\n\t\t<div ng-doc-text>\n\t\t\t<ng-doc-kind-icon [kind]=\"typeOf(value)\"\n\t\t\t\t\t\t\t [type]=\"'type'\"\n\t\t\t\t\t\t\t [ngDocTooltip]=\"typeOf(value)\"\n\t\t\t\t\t\t\t positions=\"left-center\"\n\t\t\t\t\t\t\t ngDocTextLeft>\n\t\t\t</ng-doc-kind-icon>\n\t\t\t<div>{{value}}</div>\n\t\t\t<span ng-doc-text\n\t\t\t\t color=\"muted\"\n\t\t\t\t size=\"small\"\n\t\t\t\t *ngIf=\"value === defaultValue\" ngDocTextRight>[default]</span>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-combobox>\n","import {CommonModule} from '@angular/common';\nimport {NgModule, Provider} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {NgDocKindIconModule} from '@ng-doc/app/components/kind-icon';\nimport {provideTypeControl} from '@ng-doc/app/helpers';\nimport {NgDocExtractValueModule} from '@ng-doc/app/pipes/extract-value';\nimport {\n\tNgDocButtonIconModule,\n\tNgDocComboboxModule,\n\tNgDocDataModule,\n\tNgDocFocusableModule,\n\tNgDocIconModule,\n\tNgDocListModule,\n\tNgDocOptionModule,\n\tNgDocTextModule,\n\tNgDocTooltipModule,\n} from '@ng-doc/ui-kit';\n\nimport {NgDocTypeAliasControlComponent} from './type-alias-control.component';\n\nconst provider: Provider = provideTypeControl('NgDocTypeAlias', NgDocTypeAliasControlComponent, {order: 10});\n\n@NgModule({\n\tdeclarations: [NgDocTypeAliasControlComponent],\n\timports: [\n\t\tCommonModule,\n\t\tNgDocComboboxModule,\n\t\tNgDocDataModule,\n\t\tFormsModule,\n\t\tNgDocOptionModule,\n\t\tNgDocListModule,\n\t\tNgDocExtractValueModule,\n\t\tNgDocTextModule,\n\t\tNgDocKindIconModule,\n\t\tNgDocTooltipModule,\n\t\tNgDocButtonIconModule,\n\t\tNgDocFocusableModule,\n\t\tNgDocIconModule,\n\t],\n\tproviders: [provider],\n\texports: [NgDocTypeAliasControlComponent],\n})\nexport class NgDocTypeAliasControlModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -22,10 +22,10 @@ class NgDocBreadcrumbComponent {
22
22
  }
23
23
  }
24
24
  NgDocBreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocBreadcrumbComponent, deps: [{ token: i1.NgDocRootPage }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
25
- NgDocBreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: NgDocBreadcrumbComponent, selector: "ng-doc-breadcrumb", ngImport: i0, template: "<a class=\"ng-doc-breadcrumb\" [routerLink]=\"[home]\" ng-doc-button-icon>\n\t<ng-doc-icon icon=\"home\"></ng-doc-icon>\n</a>\n<span class=\"ng-doc-breadcrumb\" *ngFor=\"let item of breadcrumbs\">\n\t<span ng-doc-text>\n\t\t<ng-doc-icon icon=\"chevron-right\"></ng-doc-icon>\n\t\t{{item}}\n\t</span>\n</span>\n", styles: [":host{display:flex;align-items:center;margin-bottom:calc(var(--ng-doc-base-gutter) * 2);opacity:.9}:host .ng-doc-breadcrumb:not(:first-child){margin-right:var(--ng-doc-base-gutter)}:host .ng-doc-breadcrumb:not(:first-child):not(:last-child){opacity:.6}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i4.NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "component", type: i4.NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
25
+ NgDocBreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: NgDocBreadcrumbComponent, selector: "ng-doc-breadcrumb", ngImport: i0, template: "<a class=\"ng-doc-breadcrumb\" [routerLink]=\"[home]\" ng-doc-button-icon>\n\t<ng-doc-icon icon=\"home\"></ng-doc-icon>\n</a>\n<span class=\"ng-doc-breadcrumb\" *ngFor=\"let item of breadcrumbs\">\n\t<span ng-doc-text>\n\t\t<ng-doc-icon icon=\"chevron-right\"></ng-doc-icon>\n\t\t{{item}}\n\t</span>\n</span>\n", styles: [":host{display:flex;align-items:center;flex-wrap:wrap;margin-bottom:calc(var(--ng-doc-base-gutter) * 2);opacity:.9}:host .ng-doc-breadcrumb:not(:first-child){margin-right:var(--ng-doc-base-gutter)}:host .ng-doc-breadcrumb:not(:first-child):not(:last-child){opacity:.6}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i4.NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "component", type: i4.NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgDocBreadcrumbComponent, decorators: [{
27
27
  type: Component,
28
- args: [{ selector: 'ng-doc-breadcrumb', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a class=\"ng-doc-breadcrumb\" [routerLink]=\"[home]\" ng-doc-button-icon>\n\t<ng-doc-icon icon=\"home\"></ng-doc-icon>\n</a>\n<span class=\"ng-doc-breadcrumb\" *ngFor=\"let item of breadcrumbs\">\n\t<span ng-doc-text>\n\t\t<ng-doc-icon icon=\"chevron-right\"></ng-doc-icon>\n\t\t{{item}}\n\t</span>\n</span>\n", styles: [":host{display:flex;align-items:center;margin-bottom:calc(var(--ng-doc-base-gutter) * 2);opacity:.9}:host .ng-doc-breadcrumb:not(:first-child){margin-right:var(--ng-doc-base-gutter)}:host .ng-doc-breadcrumb:not(:first-child):not(:last-child){opacity:.6}\n"] }]
28
+ args: [{ selector: 'ng-doc-breadcrumb', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a class=\"ng-doc-breadcrumb\" [routerLink]=\"[home]\" ng-doc-button-icon>\n\t<ng-doc-icon icon=\"home\"></ng-doc-icon>\n</a>\n<span class=\"ng-doc-breadcrumb\" *ngFor=\"let item of breadcrumbs\">\n\t<span ng-doc-text>\n\t\t<ng-doc-icon icon=\"chevron-right\"></ng-doc-icon>\n\t\t{{item}}\n\t</span>\n</span>\n", styles: [":host{display:flex;align-items:center;flex-wrap:wrap;margin-bottom:calc(var(--ng-doc-base-gutter) * 2);opacity:.9}:host .ng-doc-breadcrumb:not(:first-child){margin-right:var(--ng-doc-base-gutter)}:host .ng-doc-breadcrumb:not(:first-child):not(:last-child){opacity:.6}\n"] }]
29
29
  }], ctorParameters: function () { return [{ type: i1.NgDocRootPage }, { type: i2.ActivatedRoute }]; } });
30
30
 
31
31
  class NgDocBreadcrumbModule {
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-components-breadcrumb.mjs","sources":["../../../../libs/app/components/breadcrumb/breadcrumb.component.ts","../../../../libs/app/components/breadcrumb/breadcrumb.component.html","../../../../libs/app/components/breadcrumb/breadcrumb.module.ts","../../../../libs/app/components/breadcrumb/ng-doc-app-components-breadcrumb.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {ActivatedRoute} from '@angular/router';\nimport {NgDocRootPage} from '@ng-doc/app/classes';\nimport {isPresent} from '@ng-doc/core/helpers/is-present';\n\n@Component({\n\tselector: 'ng-doc-breadcrumb',\n\ttemplateUrl: './breadcrumb.component.html',\n\tstyleUrls: ['./breadcrumb.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocBreadcrumbComponent {\n\tbreadcrumbs: string[] = [];\n\thome: string;\n\tconstructor(private readonly rootPage: NgDocRootPage, private readonly route: ActivatedRoute) {\n\t\tthis.home = this.rootPage.routePrefix || '/';\n\t\tthis.breadcrumbs = this.route.pathFromRoot\n\t\t\t.filter((route: ActivatedRoute) => !route.snapshot.url.length)\n\t\t\t.map((route: ActivatedRoute) => route.snapshot.title)\n\t\t\t.filter(isPresent);\n\t}\n}\n","<a class=\"ng-doc-breadcrumb\" [routerLink]=\"[home]\" ng-doc-button-icon>\n\t<ng-doc-icon icon=\"home\"></ng-doc-icon>\n</a>\n<span class=\"ng-doc-breadcrumb\" *ngFor=\"let item of breadcrumbs\">\n\t<span ng-doc-text>\n\t\t<ng-doc-icon icon=\"chevron-right\"></ng-doc-icon>\n\t\t{{item}}\n\t</span>\n</span>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {RouterLink} from '@angular/router';\nimport {NgDocButtonIconModule, NgDocIconModule, NgDocTextModule} from '@ng-doc/ui-kit';\n\nimport {NgDocBreadcrumbComponent} from './breadcrumb.component';\n\n@NgModule({\n\tdeclarations: [NgDocBreadcrumbComponent],\n\timports: [CommonModule, NgDocIconModule, RouterLink, NgDocButtonIconModule, NgDocTextModule],\n\texports: [NgDocBreadcrumbComponent],\n})\nexport class NgDocBreadcrumbModule {}\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-components-breadcrumb.mjs","sources":["../../../../libs/app/components/breadcrumb/breadcrumb.component.ts","../../../../libs/app/components/breadcrumb/breadcrumb.component.html","../../../../libs/app/components/breadcrumb/breadcrumb.module.ts","../../../../libs/app/components/breadcrumb/ng-doc-app-components-breadcrumb.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {ActivatedRoute} from '@angular/router';\nimport {NgDocRootPage} from '@ng-doc/app/classes';\nimport {isPresent} from '@ng-doc/core/helpers/is-present';\n\n@Component({\n\tselector: 'ng-doc-breadcrumb',\n\ttemplateUrl: './breadcrumb.component.html',\n\tstyleUrls: ['./breadcrumb.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgDocBreadcrumbComponent {\n\tbreadcrumbs: string[] = [];\n\thome: string;\n\tconstructor(private readonly rootPage: NgDocRootPage, private readonly route: ActivatedRoute) {\n\t\tthis.home = this.rootPage.routePrefix || '/';\n\t\tthis.breadcrumbs = this.route.pathFromRoot\n\t\t\t.filter((route: ActivatedRoute) => !route.snapshot.url.length)\n\t\t\t.map((route: ActivatedRoute) => route.snapshot.title)\n\t\t\t.filter(isPresent);\n\t}\n}\n","<a class=\"ng-doc-breadcrumb\" [routerLink]=\"[home]\" ng-doc-button-icon>\n\t<ng-doc-icon icon=\"home\"></ng-doc-icon>\n</a>\n<span class=\"ng-doc-breadcrumb\" *ngFor=\"let item of breadcrumbs\">\n\t<span ng-doc-text>\n\t\t<ng-doc-icon icon=\"chevron-right\"></ng-doc-icon>\n\t\t{{item}}\n\t</span>\n</span>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {RouterLink} from '@angular/router';\nimport {NgDocButtonIconModule, NgDocIconModule, NgDocTextModule} from '@ng-doc/ui-kit';\n\nimport {NgDocBreadcrumbComponent} from './breadcrumb.component';\n\n@NgModule({\n\tdeclarations: [NgDocBreadcrumbComponent],\n\timports: [CommonModule, NgDocIconModule, RouterLink, NgDocButtonIconModule, NgDocTextModule],\n\texports: [NgDocBreadcrumbComponent],\n})\nexport class NgDocBreadcrumbModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}