@ng-atomic/components 19.5.1 → 19.7.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 (131) hide show
  1. package/fesm2022/ng-atomic-components-atoms-icon.mjs +2 -2
  2. package/fesm2022/ng-atomic-components-atoms-icon.mjs.map +1 -1
  3. package/fesm2022/ng-atomic-components-atoms-value-cell.mjs +2 -2
  4. package/fesm2022/ng-atomic-components-atoms-value-cell.mjs.map +1 -1
  5. package/fesm2022/ng-atomic-components-frames-app.mjs +2 -2
  6. package/fesm2022/ng-atomic-components-frames-app.mjs.map +1 -1
  7. package/fesm2022/ng-atomic-components-frames-auto-layout.mjs +2 -2
  8. package/fesm2022/ng-atomic-components-frames-auto-layout.mjs.map +1 -1
  9. package/fesm2022/ng-atomic-components-frames-breadcrumb-navbar.mjs +2 -2
  10. package/fesm2022/ng-atomic-components-frames-breadcrumb-navbar.mjs.map +1 -1
  11. package/fesm2022/ng-atomic-components-frames-card.mjs +2 -2
  12. package/fesm2022/ng-atomic-components-frames-card.mjs.map +1 -1
  13. package/fesm2022/ng-atomic-components-frames-columns.mjs +2 -2
  14. package/fesm2022/ng-atomic-components-frames-columns.mjs.map +1 -1
  15. package/fesm2022/ng-atomic-components-frames-divider.mjs +2 -2
  16. package/fesm2022/ng-atomic-components-frames-divider.mjs.map +1 -1
  17. package/fesm2022/ng-atomic-components-frames-drawer.mjs +2 -2
  18. package/fesm2022/ng-atomic-components-frames-drawer.mjs.map +1 -1
  19. package/fesm2022/ng-atomic-components-frames-entrance.mjs +2 -2
  20. package/fesm2022/ng-atomic-components-frames-entrance.mjs.map +1 -1
  21. package/fesm2022/ng-atomic-components-frames-fab.mjs +2 -2
  22. package/fesm2022/ng-atomic-components-frames-fab.mjs.map +1 -1
  23. package/fesm2022/ng-atomic-components-frames-horizontal-divider.mjs +2 -2
  24. package/fesm2022/ng-atomic-components-frames-horizontal-divider.mjs.map +1 -1
  25. package/fesm2022/ng-atomic-components-frames-line-up.mjs +2 -2
  26. package/fesm2022/ng-atomic-components-frames-line-up.mjs.map +1 -1
  27. package/fesm2022/ng-atomic-components-frames-loading.mjs +2 -2
  28. package/fesm2022/ng-atomic-components-frames-loading.mjs.map +1 -1
  29. package/fesm2022/ng-atomic-components-frames-router-outlet.mjs +2 -2
  30. package/fesm2022/ng-atomic-components-frames-router-outlet.mjs.map +1 -1
  31. package/fesm2022/ng-atomic-components-frames-scroll.mjs +2 -2
  32. package/fesm2022/ng-atomic-components-frames-scroll.mjs.map +1 -1
  33. package/fesm2022/ng-atomic-components-frames-side-nav.mjs +2 -2
  34. package/fesm2022/ng-atomic-components-frames-side-nav.mjs.map +1 -1
  35. package/fesm2022/ng-atomic-components-frames-smart-menu.mjs +2 -2
  36. package/fesm2022/ng-atomic-components-frames-smart-menu.mjs.map +1 -1
  37. package/fesm2022/ng-atomic-components-frames-vertical-hide.mjs +2 -2
  38. package/fesm2022/ng-atomic-components-frames-vertical-hide.mjs.map +1 -1
  39. package/fesm2022/ng-atomic-components-molecules-date-input-field.mjs +2 -2
  40. package/fesm2022/ng-atomic-components-molecules-date-input-field.mjs.map +1 -1
  41. package/fesm2022/ng-atomic-components-molecules-date-range-input-field.mjs +2 -2
  42. package/fesm2022/ng-atomic-components-molecules-date-range-input-field.mjs.map +1 -1
  43. package/fesm2022/ng-atomic-components-molecules-grid-item.mjs +2 -2
  44. package/fesm2022/ng-atomic-components-molecules-grid-item.mjs.map +1 -1
  45. package/fesm2022/ng-atomic-components-molecules-loading-box.mjs +2 -2
  46. package/fesm2022/ng-atomic-components-molecules-loading-box.mjs.map +1 -1
  47. package/fesm2022/ng-atomic-components-molecules-navigation-list-item.mjs +2 -2
  48. package/fesm2022/ng-atomic-components-molecules-navigation-list-item.mjs.map +1 -1
  49. package/fesm2022/ng-atomic-components-molecules-select-input-field.mjs +2 -2
  50. package/fesm2022/ng-atomic-components-molecules-select-input-field.mjs.map +1 -1
  51. package/fesm2022/ng-atomic-components-molecules-thread-message.mjs +2 -2
  52. package/fesm2022/ng-atomic-components-molecules-thread-message.mjs.map +1 -1
  53. package/fesm2022/ng-atomic-components-organisms-action-buttons-section.mjs +2 -2
  54. package/fesm2022/ng-atomic-components-organisms-action-buttons-section.mjs.map +1 -1
  55. package/fesm2022/ng-atomic-components-organisms-action-input-section.mjs +2 -2
  56. package/fesm2022/ng-atomic-components-organisms-action-input-section.mjs.map +1 -1
  57. package/fesm2022/ng-atomic-components-organisms-breadcrumb-navbar.mjs +2 -2
  58. package/fesm2022/ng-atomic-components-organisms-breadcrumb-navbar.mjs.map +1 -1
  59. package/fesm2022/ng-atomic-components-organisms-card-input-section.mjs +2 -2
  60. package/fesm2022/ng-atomic-components-organisms-card-input-section.mjs.map +1 -1
  61. package/fesm2022/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs +2 -2
  62. package/fesm2022/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs.map +1 -1
  63. package/fesm2022/ng-atomic-components-organisms-date-input-section.mjs +2 -2
  64. package/fesm2022/ng-atomic-components-organisms-date-input-section.mjs.map +1 -1
  65. package/fesm2022/ng-atomic-components-organisms-date-range-input-section.mjs +2 -2
  66. package/fesm2022/ng-atomic-components-organisms-date-range-input-section.mjs.map +1 -1
  67. package/fesm2022/ng-atomic-components-organisms-definition-list.mjs +2 -2
  68. package/fesm2022/ng-atomic-components-organisms-definition-list.mjs.map +1 -1
  69. package/fesm2022/ng-atomic-components-organisms-file-input-section.mjs +2 -2
  70. package/fesm2022/ng-atomic-components-organisms-file-input-section.mjs.map +1 -1
  71. package/fesm2022/ng-atomic-components-organisms-grid-cards-section.mjs +2 -2
  72. package/fesm2022/ng-atomic-components-organisms-grid-cards-section.mjs.map +1 -1
  73. package/fesm2022/ng-atomic-components-organisms-heading.mjs +2 -2
  74. package/fesm2022/ng-atomic-components-organisms-heading.mjs.map +1 -1
  75. package/fesm2022/ng-atomic-components-organisms-menu-footer.mjs +2 -2
  76. package/fesm2022/ng-atomic-components-organisms-menu-footer.mjs.map +1 -1
  77. package/fesm2022/ng-atomic-components-organisms-menu-header.mjs +2 -2
  78. package/fesm2022/ng-atomic-components-organisms-menu-header.mjs.map +1 -1
  79. package/fesm2022/ng-atomic-components-organisms-messages-section.mjs +2 -2
  80. package/fesm2022/ng-atomic-components-organisms-messages-section.mjs.map +1 -1
  81. package/fesm2022/ng-atomic-components-organisms-navigation-list.mjs +2 -2
  82. package/fesm2022/ng-atomic-components-organisms-navigation-list.mjs.map +1 -1
  83. package/fesm2022/ng-atomic-components-organisms-navigator.mjs +2 -2
  84. package/fesm2022/ng-atomic-components-organisms-navigator.mjs.map +1 -1
  85. package/fesm2022/ng-atomic-components-organisms-number-input-section.mjs +2 -2
  86. package/fesm2022/ng-atomic-components-organisms-number-input-section.mjs.map +1 -1
  87. package/fesm2022/ng-atomic-components-organisms-paginator.mjs +2 -2
  88. package/fesm2022/ng-atomic-components-organisms-paginator.mjs.map +1 -1
  89. package/fesm2022/ng-atomic-components-organisms-password-input-section.mjs +2 -2
  90. package/fesm2022/ng-atomic-components-organisms-password-input-section.mjs.map +1 -1
  91. package/fesm2022/ng-atomic-components-organisms-select-input-section.mjs +2 -2
  92. package/fesm2022/ng-atomic-components-organisms-select-input-section.mjs.map +1 -1
  93. package/fesm2022/ng-atomic-components-organisms-slider-input-section.mjs +2 -2
  94. package/fesm2022/ng-atomic-components-organisms-slider-input-section.mjs.map +1 -1
  95. package/fesm2022/ng-atomic-components-organisms-social-login-section.mjs +2 -2
  96. package/fesm2022/ng-atomic-components-organisms-social-login-section.mjs.map +1 -1
  97. package/fesm2022/ng-atomic-components-organisms-table.mjs +2 -2
  98. package/fesm2022/ng-atomic-components-organisms-table.mjs.map +1 -1
  99. package/fesm2022/ng-atomic-components-organisms-text-input-section.mjs +2 -2
  100. package/fesm2022/ng-atomic-components-organisms-text-input-section.mjs.map +1 -1
  101. package/fesm2022/ng-atomic-components-organisms-textarea-section.mjs +2 -2
  102. package/fesm2022/ng-atomic-components-organisms-textarea-section.mjs.map +1 -1
  103. package/fesm2022/ng-atomic-components-organisms-thread-messages-section.mjs +2 -2
  104. package/fesm2022/ng-atomic-components-organisms-thread-messages-section.mjs.map +1 -1
  105. package/fesm2022/ng-atomic-components-pages-_index.mjs +2 -2
  106. package/fesm2022/ng-atomic-components-pages-_index.mjs.map +1 -1
  107. package/fesm2022/ng-atomic-components-pages-columns.mjs +2 -2
  108. package/fesm2022/ng-atomic-components-pages-columns.mjs.map +1 -1
  109. package/fesm2022/ng-atomic-components-pages-form.mjs +2 -2
  110. package/fesm2022/ng-atomic-components-pages-form.mjs.map +1 -1
  111. package/fesm2022/ng-atomic-components-templates-_index.mjs +2 -2
  112. package/fesm2022/ng-atomic-components-templates-_index.mjs.map +1 -1
  113. package/fesm2022/ng-atomic-components-templates-background.mjs +2 -2
  114. package/fesm2022/ng-atomic-components-templates-background.mjs.map +1 -1
  115. package/fesm2022/ng-atomic-components-templates-code-editor.mjs +2 -2
  116. package/fesm2022/ng-atomic-components-templates-code-editor.mjs.map +1 -1
  117. package/fesm2022/ng-atomic-components-templates-columns.mjs +2 -2
  118. package/fesm2022/ng-atomic-components-templates-columns.mjs.map +1 -1
  119. package/fesm2022/ng-atomic-components-templates-entrance.mjs +2 -2
  120. package/fesm2022/ng-atomic-components-templates-entrance.mjs.map +1 -1
  121. package/fesm2022/ng-atomic-components-templates-form.mjs +4 -4
  122. package/fesm2022/ng-atomic-components-templates-form.mjs.map +1 -1
  123. package/fesm2022/ng-atomic-components-templates-icon-button-menu.mjs +2 -2
  124. package/fesm2022/ng-atomic-components-templates-icon-button-menu.mjs.map +1 -1
  125. package/fesm2022/ng-atomic-components-templates-menu.mjs +2 -2
  126. package/fesm2022/ng-atomic-components-templates-menu.mjs.map +1 -1
  127. package/fesm2022/ng-atomic-components-templates-selection.mjs +2 -2
  128. package/fesm2022/ng-atomic-components-templates-selection.mjs.map +1 -1
  129. package/fesm2022/ng-atomic-components-templates-settings.mjs +2 -2
  130. package/fesm2022/ng-atomic-components-templates-settings.mjs.map +1 -1
  131. package/package.json +11 -11
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-frames-app.mjs","sources":["../tmp-esm2022/frames/app/app.frame.js","../tmp-esm2022/frames/app/ng-atomic-components-frames-app.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, PLATFORM_ID, computed, effect, input } from '@angular/core';\nimport { Directive, inject } from '@angular/core';\nimport { ActivatedRoute, RouterOutlet } from '@angular/router';\nimport { LoadingFrame } from '@ng-atomic/components/frames/loading';\nimport { SideNavFrame, SideNavFrameStore } from '@ng-atomic/components/frames/side-nav';\nimport { EntranceFrame } from '@ng-atomic/components/frames/entrance';\nimport { InjectableComponent, NgAtomicComponent, _computed, applyToInput, createAction, provideEffect } from '@ng-atomic/core';\nimport { FormBuilder } from '@angular/forms';\nimport { makeDI, NavActionId } from '@ng-atomic/common/services/ui';\nimport { isPlatformBrowser, isPlatformServer } from '@angular/common';\nimport { DrawerFrame } from '@ng-atomic/components/frames/drawer';\nimport { FabFrame } from '@ng-atomic/components/frames/fab';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { SideAppService } from '@ng-atomic/common/services/side-app';\nimport { AuthService } from '@ng-atomic/common/services/auth';\nimport { RootPropertyService } from '@ng-atomic/common/services/root-property';\nimport { makeInitializerConfig } from '@ng-atomic/common/services/initializer';\nimport { injectHasNext, injectPrimaryPaths } from '@ng-atomic/common/utils';\nimport { ProgressBarFrame } from \"@ng-atomic/components/frames/progress-bar\";\nimport { merge } from 'lodash-es';\nimport { BreadcrumbNavbarFrame } from '@ng-atomic/components/frames/breadcrumb-navbar';\nimport * as i0 from \"@angular/core\";\nvar ActionId;\n(function (ActionId) {\n ActionId[\"SIGN_IN_WITH_GOOGLE\"] = \"[@ng-atomic/components:frames/app] Sign In With Google\";\n ActionId[\"SIGN_IN_WITH_TWITTER\"] = \"[@ng-atomic/components:frames/app] Sign In With Twitter\";\n ActionId[\"SIGN_IN_WITH_MICROSOFT\"] = \"[@ng-atomic/components:frames/app] Sign In With Microsoft\";\n ActionId[\"SIGN_IN_WITH_EMAIL\"] = \"[@ng-atomic/components:frames/app] Sign In With Email\";\n ActionId[\"SIGN_UP_WITH_EMAIL\"] = \"[@ng-atomic/components:frames/app] Sign Up With Email\";\n ActionId[\"BACK\"] = \"[@ng-atomic/components:frames/app] Back\";\n ActionId[\"NAVIGATE\"] = \"[@ng-atomic/components:frames/app] Navigate\";\n ActionId[\"SIGN_OUT\"] = \"[@ng-atomic/components:frames/app] Sign Out\";\n ActionId[\"NAVIGATE_SIDE_APP\"] = \"[@ng-atomic/components:frames/app] Navigate Side App\";\n ActionId[\"OPEN_SIDE_APP\"] = \"[@ng-atomic/components:frames/app] Open Side App\";\n})(ActionId || (ActionId = {}));\nexport function createNavigateAction(commands, extras = {}, meta = {}) {\n return merge({\n id: AppFrameStore.ActionId.NAVIGATE,\n name: 'Navigate',\n icon: 'open_in_new',\n payload: { commands, extras },\n }, meta);\n}\nexport const buildNavigationAction = createNavigateAction;\nexport class AppFrameStore extends InjectableComponent {\n static { this.ActionId = ActionId; }\n static { this.DI = makeDI(AppFrameStore, () => {\n return (context) => ({\n fabActions: [],\n fabHide: true,\n isEntrance: true,\n isLoading: false,\n isProgress: false,\n sideAppOpened: false,\n title: 'title',\n form: inject(FormBuilder).group({}),\n entranceActions: [\n { id: ActionId.SIGN_IN_WITH_GOOGLE, name: 'Googleでサインイン', icon: '' },\n ],\n sideNavActions: [\n { id: ActionId.SIGN_OUT, name: 'ログアウト', icon: 'exit_to_app' },\n ],\n sideNavBottomActions: [],\n sideNavMode: 'collapsed',\n sideNavMenuType: SideNavFrameStore.getMenuType(context),\n sideNavMenuTitle: undefined,\n sideNavIconButtonMenuTopPadding: '0px',\n sideAppOutletName: 'side',\n sideAppWidth: 'var(--page-width-lv1)',\n sideAppResizable: true,\n breadcrumbItems: [],\n appBar: false,\n });\n }, ['components', 'frames', 'app']); }\n static { this.provideAppServiceConfig = () => AppFrameStore.DI.Config.provide(() => {\n const app = inject(AppService);\n const fabHide = computed(() => app.sideApp.opened());\n return (config) => ({\n ...config,\n isLoading: app.loading.isLoading(),\n isProgress: app.loading.isProgress(),\n sideNavMode: app.sideNavMode.sideNavMode(),\n sideAppOpened: app.sideApp.opened(),\n fabActions: app.fab.actions(),\n fabHide: fabHide(),\n });\n }); }\n static provideIconButtonMenuAsDefaultConfig() {\n return [\n RootPropertyService.Config.provide(() => {\n const getProps = (context) => {\n switch (context.breakpoint) {\n case 'xSmall': return { '--menu-width': '220px' };\n case 'small':\n case 'medium':\n case 'large':\n case 'xLarge': return { '--menu-width': '64px' };\n }\n };\n return (config, context) => ({ ...config, ...getProps(context) });\n }),\n AppFrameStore.DI.Config.provide(() => {\n const getMenuType = (context) => {\n switch (context.breakpoint) {\n case 'xSmall': return 'menu';\n default: return 'icon-button-menu';\n }\n };\n return (config, context) => ({\n ...config,\n sideNavMenuType: getMenuType(context),\n });\n })\n ];\n }\n static { this.Initializer = makeInitializerConfig(AppFrameStore); }\n static { this.provideInitializer = AppFrameStore.Initializer.provide; }\n static provideExpandSideAppOnInit() {\n return AppFrameStore.Initializer.provide(() => {\n inject(SideAppService).expand();\n });\n }\n static provideSideNavActionsInitializer(actionsFactory) {\n return AppFrameStore.Initializer.provide((store) => {\n const paths = injectPrimaryPaths();\n function compare(paths, payload) {\n if (payload === undefined)\n return false;\n return payload.every((path, i) => paths?.[i] === path);\n }\n const actions = actionsFactory();\n effect(() => {\n applyToInput(store, 'sideNavActions', actions.map(action => ({\n ...action, disabled: compare(paths(), action?.payload),\n })));\n });\n });\n }\n static provideNavigateEffect() {\n return provideEffect(AppFrameStore.ActionId.NAVIGATE, () => {\n const app = inject(AppService);\n return (payload) => {\n console.debug('[AppFrameStore] payload:', payload);\n if (Array.isArray(payload)) {\n app.sideApp.collapse();\n app.router.navigate(payload).then(() => app.sideNav.collapse());\n }\n else {\n app.sideApp.collapse();\n const { commands, extras } = payload;\n console.debug('[AppFrameStore] payload:', payload);\n app.router.navigate(commands, extras ?? {}).then(() => app.sideNav.collapse());\n }\n };\n });\n }\n static provideNavigateSideAppEffect() {\n return provideEffect(AppFrameStore.ActionId.NAVIGATE_SIDE_APP, () => {\n const app = inject(AppService);\n return (payload) => {\n if (Array.isArray(payload)) {\n app.sideApp.router.navigate(payload);\n }\n else {\n const { commands, extras } = payload;\n app.sideApp.router.navigate(commands, extras ?? {});\n }\n };\n });\n }\n static provideSignOutEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_OUT, () => {\n const app = inject(AppService);\n const auth = inject(AuthService);\n return () => {\n auth.signOut().then(() => {\n app.sideNav.collapse();\n app.snackBar.open('サインアウトしました');\n });\n };\n });\n }\n static provideOpenSideAppEffect() {\n return provideEffect(AppFrameStore.ActionId.OPEN_SIDE_APP, () => {\n const app = inject(AppService);\n return () => {\n app.sideApp.expand();\n };\n });\n }\n static provideCloseSideAppEffect() {\n return provideEffect(NavActionId.CLOSE, () => {\n const app = inject(AppService);\n return () => {\n app.sideApp.collapse();\n };\n });\n }\n static provideSignUpWithEmailEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_UP_WITH_EMAIL, () => {\n const app = inject(AppService);\n const store = inject(AppFrameStore);\n const auth = inject(AuthService);\n return () => {\n const data = store.form().getRawValue();\n app.loading.await(() => {\n return auth.createUserWithEmailAndPassword(data.email, data.password).then(() => {\n app.snackBar.open('新規登録しました。');\n }).catch((error) => {\n console.error(error);\n app.snackBar.open(error.message);\n });\n });\n };\n });\n }\n static provideSignInWithEmailEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_IN_WITH_EMAIL, () => {\n const app = inject(AppService);\n const store = inject(AppFrameStore);\n const auth = inject(AuthService);\n return () => {\n const data = store.form().getRawValue();\n app.loading.await(() => {\n return auth.signInWithEmailAndPassword(data.email, data.password).then(() => {\n app.snackBar.open('ログインしました');\n }).catch((error) => {\n console.error(error);\n app.snackBar.open(error.message);\n });\n });\n };\n });\n }\n static provideSignInWithGoogleEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_IN_WITH_GOOGLE, () => {\n const app = inject(AppService);\n const auth = inject(AuthService);\n return () => {\n auth.signInWithGoogle().then(() => {\n app.snackBar.open('ログインしました');\n }).catch((error) => {\n console.error(error);\n const _message = error.message.match(/HTTP Cloud Function returned an error: (.*) \\(.*/);\n const message = _message ? JSON.parse(_message[1]).error.message : error.message;\n app.snackBar.open(message);\n });\n };\n });\n }\n static provideSignInWithTwitterEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_IN_WITH_TWITTER, () => {\n const app = inject(AppService);\n const auth = inject(AuthService);\n return () => {\n auth.signInWithTwitter().then(() => {\n app.snackBar.open('ログインしました');\n }).catch((error) => {\n console.error(error);\n app.snackBar.open(error.message);\n });\n };\n });\n }\n static provideDefaultEffects() {\n return [\n AppFrameStore.provideNavigateEffect(),\n AppFrameStore.provideSignOutEffect(),\n AppFrameStore.provideOpenSideAppEffect(),\n AppFrameStore.provideCloseSideAppEffect(),\n AppFrameStore.provideSignUpWithEmailEffect(),\n AppFrameStore.provideSignInWithEmailEffect(),\n AppFrameStore.provideSignInWithGoogleEffect(),\n AppFrameStore.provideSignInWithTwitterEffect(),\n AppFrameStore.provideNavigateSideAppEffect(),\n ];\n }\n static provideDefault() {\n return [\n AppFrameStore.provideAppServiceConfig(),\n AppFrameStore.provideIconButtonMenuAsDefaultConfig(),\n AppFrameStore.provideDefaultEffects(),\n ];\n }\n static injectNavActionFactory() {\n const hasNext = injectHasNext();\n const route = inject(ActivatedRoute);\n const navigateActionBuilder = createAction(AppFrameStore.ActionId.NAVIGATE, undefined, {\n icon: 'open_in_new',\n });\n return (commands, name) => {\n return navigateActionBuilder.create({\n commands,\n extras: { relativeTo: route, replaceUrl: hasNext() }\n }, {\n name,\n });\n };\n }\n constructor() {\n super();\n this.config = AppFrameStore.DI.Config.inject();\n this.isLoading = input(_computed(() => this.config().isLoading));\n this.isProgress = input(_computed(() => this.config().isProgress));\n this.isEntrance = input(_computed(() => this.config().isEntrance));\n this.breadcrumbItems = input(_computed(() => this.config().breadcrumbItems));\n this.sideAppOpened = input(_computed(() => this.config().sideAppOpened));\n this.title = input(_computed(() => this.config().title));\n this.form = input(_computed(() => this.config().form));\n this.entranceActions = input(_computed(() => this.config().entranceActions));\n this.sideNavActions = input(_computed(() => this.config().sideNavActions));\n this.sideNavBottomActions = input(_computed(() => this.config().sideNavBottomActions));\n this.sideNavMode = input(_computed(() => this.config().sideNavMode));\n this.sideNavMenuType = input(_computed(() => this.config().sideNavMenuType));\n this.sideNavMenuTitle = input(_computed(() => this.config().sideNavMenuTitle));\n this.sideNavIconButtonMenuTopPadding = input(_computed(() => this.config().sideNavIconButtonMenuTopPadding));\n this.sideAppOutletName = input(_computed(() => this.config().sideAppOutletName));\n this.sideAppWidth = input(_computed(() => this.config().sideAppWidth));\n this.sideAppResizable = input(_computed(() => this.config().sideAppResizable));\n this.fabActions = input(_computed(() => this.config().fabActions));\n this.fabHide = input(_computed(() => this.config().fabHide));\n this.appBar = input(_computed(() => this.config().appBar));\n AppFrameStore.Initializer.initializeStore(this);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AppFrameStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.5\", type: AppFrameStore, isStandalone: true, selector: \"frames-app\", inputs: { isLoading: { classPropertyName: \"isLoading\", publicName: \"isLoading\", isSignal: true, isRequired: false, transformFunction: null }, isProgress: { classPropertyName: \"isProgress\", publicName: \"isProgress\", isSignal: true, isRequired: false, transformFunction: null }, isEntrance: { classPropertyName: \"isEntrance\", publicName: \"isEntrance\", isSignal: true, isRequired: false, transformFunction: null }, breadcrumbItems: { classPropertyName: \"breadcrumbItems\", publicName: \"breadcrumbItems\", isSignal: true, isRequired: false, transformFunction: null }, sideAppOpened: { classPropertyName: \"sideAppOpened\", publicName: \"sideAppOpened\", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: \"title\", publicName: \"title\", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: \"form\", publicName: \"form\", isSignal: true, isRequired: false, transformFunction: null }, entranceActions: { classPropertyName: \"entranceActions\", publicName: \"entranceActions\", isSignal: true, isRequired: false, transformFunction: null }, sideNavActions: { classPropertyName: \"sideNavActions\", publicName: \"sideNavActions\", isSignal: true, isRequired: false, transformFunction: null }, sideNavBottomActions: { classPropertyName: \"sideNavBottomActions\", publicName: \"sideNavBottomActions\", isSignal: true, isRequired: false, transformFunction: null }, sideNavMode: { classPropertyName: \"sideNavMode\", publicName: \"sideNavMode\", isSignal: true, isRequired: false, transformFunction: null }, sideNavMenuType: { classPropertyName: \"sideNavMenuType\", publicName: \"sideNavMenuType\", isSignal: true, isRequired: false, transformFunction: null }, sideNavMenuTitle: { classPropertyName: \"sideNavMenuTitle\", publicName: \"sideNavMenuTitle\", isSignal: true, isRequired: false, transformFunction: null }, sideNavIconButtonMenuTopPadding: { classPropertyName: \"sideNavIconButtonMenuTopPadding\", publicName: \"sideNavIconButtonMenuTopPadding\", isSignal: true, isRequired: false, transformFunction: null }, sideAppOutletName: { classPropertyName: \"sideAppOutletName\", publicName: \"sideAppOutletName\", isSignal: true, isRequired: false, transformFunction: null }, sideAppWidth: { classPropertyName: \"sideAppWidth\", publicName: \"sideAppWidth\", isSignal: true, isRequired: false, transformFunction: null }, sideAppResizable: { classPropertyName: \"sideAppResizable\", publicName: \"sideAppResizable\", isSignal: true, isRequired: false, transformFunction: null }, fabActions: { classPropertyName: \"fabActions\", publicName: \"fabActions\", isSignal: true, isRequired: false, transformFunction: null }, fabHide: { classPropertyName: \"fabHide\", publicName: \"fabHide\", isSignal: true, isRequired: false, transformFunction: null }, appBar: { classPropertyName: \"appBar\", publicName: \"appBar\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AppFrameStore, decorators: [{\n type: Directive,\n args: [{ standalone: true, selector: 'frames-app' }]\n }], ctorParameters: () => [] });\nexport class AppFrame extends NgAtomicComponent {\n constructor() {\n super(...arguments);\n this.store = inject(AppFrameStore);\n this.platformId = inject(PLATFORM_ID);\n }\n isPlatformServer() {\n return isPlatformServer(this.platformId);\n }\n isPlatformBrowser() {\n return isPlatformBrowser(this.platformId);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AppFrame, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.5\", type: AppFrame, isStandalone: true, selector: \"frames-app\", host: { properties: { \"class.is-entrance\": \"store.isEntrance()\" } }, usesInheritance: true, hostDirectives: [{ directive: AppFrameStore }], ngImport: i0, template: `\n @if (isPlatformBrowser()) {\n @defer {\n <templates-background injectable/>\n }\n }\n <frames-loading [isLoading]=\"store.isLoading()\">\n <frames-progress-bar\n [isProgress]=\"store.isProgress()\"\n [mode]=\"'query'\"\n >\n <frames-fab\n [actions]=\"store.fabActions()\"\n [hide]=\"store.fabHide()\"\n (action)=\"dispatch($event)\"\n >\n <frames-entrance\n [isEntrance]=\"store.isEntrance()\"\n [form]=\"store.form()\"\n [title]=\"store.title()\"\n [actions]=\"store.entranceActions()\"\n (action)=\"dispatch($event)\"\n >\n <frames-drawer\n [opened]=\"store.sideAppOpened()\"\n [position]=\"'end'\"\n [hasBackdrop]=\"false\"\n [mode]=\"'side'\"\n [width]=\"store.sideAppWidth()\"\n [resizable]=\"store.sideAppResizable()\"\n >\n <frames-breadcrumb-navbar\n [items]=\"store.breadcrumbItems()\"\n [separator]=\"'/'\"\n [isHidden]=\"!store.appBar()\"\n (action)=\"dispatch($event)\"\n contents\n >\n <frames-side-nav\n [actions]=\"store.sideNavActions()\"\n [bottomActions]=\"store.sideNavBottomActions()\"\n [mode]=\"store.sideNavMode()\"\n [menuType]=\"store.sideNavMenuType()\"\n [menuTitle]=\"store.sideNavMenuTitle()\"\n [iconButtonMenuTopPadding]=\"store.sideNavIconButtonMenuTopPadding()\"\n (action)=\"dispatch($event)\" \n >\n <router-outlet contents/>\n </frames-side-nav>\n </frames-breadcrumb-navbar>\n <div drawer style=\"height: 100%;\">\n <router-outlet [name]=\"store.sideAppOutletName()\" />\n </div>\n </frames-drawer>\n </frames-entrance>\n </frames-fab>\n </frames-progress-bar>\n </frames-loading>\n `, isInline: true, styles: [\":host{--primary-color-SCOPED-IN-frames-app-DE9V: var(--primary-color);--on-primary-color-SCOPED-IN-frames-app-DE9V: var(--on-primary-color);--surface-color-SCOPED-IN-frames-app-DE9V: var(--surface-color);--on-surface-color-SCOPED-IN-frames-app-DE9V: var(--on-surface-color);--background-color-SCOPED-IN-frames-app-DE9V: var(--background-color);--on-background-color-SCOPED-IN-frames-app-DE9V: var(--on-background-color);--menu-width-SCOPED-IN-frames-app-DE9V: var(--menu-width);--page-width-lv1-SCOPED-IN-frames-app-DE9V: var(--page-width-lv1);--menu-background-color: var(--primary-color-SCOPED-IN-frames-app-DE9V);--menu-background-color-SCOPED-IN-frames-app-DE9V: var(--menu-background-color);--menu-on-background-color: var(--on-primary-color-SCOPED-IN-frames-app-DE9V);--menu-on-background-color-SCOPED-IN-frames-app-DE9V: var(--menu-on-background-color);--menu-padding-top: 56px;--menu-padding-top-SCOPED-IN-frames-app-DE9V: var(--menu-padding-top);--background-primary-color: var(--primary-color-SCOPED-IN-frames-app-DE9V);--background-primary-color-SCOPED-IN-frames-app-DE9V: var(--background-primary-color);--background-on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-DE9V);--background-on-primary-color-SCOPED-IN-frames-app-DE9V: var(--background-on-primary-color);--background-background-color: var(--background-color-SCOPED-IN-frames-app-DE9V);--background-background-color-SCOPED-IN-frames-app-DE9V: var(--background-background-color);--side-app-background-color-SCOPED-IN-frames-app-DE9V: var(--side-app-background-color);--loading-primary-color: var(--primary-color-SCOPED-IN-frames-app-DE9V);--loading-primary-color-SCOPED-IN-frames-app-DE9V: var(--loading-primary-color);--loading-z-index: 1000;--loading-z-index-SCOPED-IN-frames-app-DE9V: var(--loading-z-index)}:host{display:block;width:100%;height:100%;position:fixed;color:var(--primary-color-SCOPED-IN-frames-app-DE9V);touch-action:none}:host *{--primary-color: var(--primary-color-SCOPED-IN-frames-app-DE9V);--on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-DE9V);--surface-color: var(--surface-color-SCOPED-IN-frames-app-DE9V);--on-surface-color: var(--on-surface-color-SCOPED-IN-frames-app-DE9V);--background-color: var(--background-color-SCOPED-IN-frames-app-DE9V);--on-background-color: var(--on-background-color-SCOPED-IN-frames-app-DE9V);--menu-background-color: var(--menu-background-color-SCOPED-IN-frames-app-DE9V);--menu-on-background-color: var(--menu-on-background-color-SCOPED-IN-frames-app-DE9V)}:host frames-drawer{opacity:1;--background-color: var(--side-app-background-color-SCOPED-IN-frames-app-DE9V)}:host frames-side-nav{color:#000;--menu-width: var(--menu-width-SCOPED-IN-frames-app-DE9V)}:host frames-loading{--primary-color: var(--loading-primary-color-SCOPED-IN-frames-app-DE9V);opacity:.9}:host templates-background{--primary-color: var(--background-primary-color-SCOPED-IN-frames-app-DE9V);--on-primary-color: var(--background-on-primary-color-SCOPED-IN-frames-app-DE9V);--background-color: var(--background-background-color-SCOPED-IN-frames-app-DE9V);position:absolute;top:0;left:0}:host frames-side-nav .side-app{position:relative;width:var(--page-width-lv1-SCOPED-IN-frames-app-DE9V);height:100%}:host.is-entrance frames-drawer{opacity:1}:host.is-entrance frames-drawer mat-drawer[style*=\\\"100%\\\"]+mat-drawer-content{margin-right:0!important}:host.is-entrance frames-side-nav{display:none}frames-drawer mat-drawer[style*=\\\"calc(100%\\\"]+mat-drawer-content{margin-right:0!important}\\n\"], dependencies: [{ kind: \"component\", type: FabFrame, selector: \"frames-fab\" }, { kind: \"component\", type: LoadingFrame, selector: \"frames-loading\" }, { kind: \"component\", type: SideNavFrame, selector: \"frames-side-nav\" }, { kind: \"directive\", type: RouterOutlet, selector: \"router-outlet\", inputs: [\"name\", \"routerOutletData\"], outputs: [\"activate\", \"deactivate\", \"attach\", \"detach\"], exportAs: [\"outlet\"] }, { kind: \"component\", type: EntranceFrame, selector: \"frames-entrance\" }, { kind: \"component\", type: DrawerFrame, selector: \"frames-drawer\" }, { kind: \"component\", type: ProgressBarFrame, selector: \"frames-progress-bar\" }, { kind: \"component\", type: BreadcrumbNavbarFrame, selector: \"frames-breadcrumb-navbar\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [import(\"@ng-atomic/components/templates/background\").then(m => m.BackgroundTemplateStore)]] }); }\n}\ni0.ɵɵngDeclareClassMetadataAsync({ minVersion: \"18.0.0\", version: \"20.0.5\", ngImport: i0, type: AppFrame, resolveDeferredDeps: () => [import(\"@ng-atomic/components/templates/background\").then(m => m.BackgroundTemplateStore)], resolveMetadata: BackgroundTemplateStore => ({ decorators: [{\n type: Component,\n args: [{ selector: 'frames-app', imports: [\n FabFrame,\n LoadingFrame,\n SideNavFrame,\n RouterOutlet,\n EntranceFrame,\n DrawerFrame,\n BackgroundTemplateStore,\n ProgressBarFrame,\n BreadcrumbNavbarFrame,\n ], template: `\n @if (isPlatformBrowser()) {\n @defer {\n <templates-background injectable/>\n }\n }\n <frames-loading [isLoading]=\"store.isLoading()\">\n <frames-progress-bar\n [isProgress]=\"store.isProgress()\"\n [mode]=\"'query'\"\n >\n <frames-fab\n [actions]=\"store.fabActions()\"\n [hide]=\"store.fabHide()\"\n (action)=\"dispatch($event)\"\n >\n <frames-entrance\n [isEntrance]=\"store.isEntrance()\"\n [form]=\"store.form()\"\n [title]=\"store.title()\"\n [actions]=\"store.entranceActions()\"\n (action)=\"dispatch($event)\"\n >\n <frames-drawer\n [opened]=\"store.sideAppOpened()\"\n [position]=\"'end'\"\n [hasBackdrop]=\"false\"\n [mode]=\"'side'\"\n [width]=\"store.sideAppWidth()\"\n [resizable]=\"store.sideAppResizable()\"\n >\n <frames-breadcrumb-navbar\n [items]=\"store.breadcrumbItems()\"\n [separator]=\"'/'\"\n [isHidden]=\"!store.appBar()\"\n (action)=\"dispatch($event)\"\n contents\n >\n <frames-side-nav\n [actions]=\"store.sideNavActions()\"\n [bottomActions]=\"store.sideNavBottomActions()\"\n [mode]=\"store.sideNavMode()\"\n [menuType]=\"store.sideNavMenuType()\"\n [menuTitle]=\"store.sideNavMenuTitle()\"\n [iconButtonMenuTopPadding]=\"store.sideNavIconButtonMenuTopPadding()\"\n (action)=\"dispatch($event)\" \n >\n <router-outlet contents/>\n </frames-side-nav>\n </frames-breadcrumb-navbar>\n <div drawer style=\"height: 100%;\">\n <router-outlet [name]=\"store.sideAppOutletName()\" />\n </div>\n </frames-drawer>\n </frames-entrance>\n </frames-fab>\n </frames-progress-bar>\n </frames-loading>\n `, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [\n AppFrameStore,\n ], host: {\n '[class.is-entrance]': 'store.isEntrance()',\n }, styles: [\":host{--primary-color-SCOPED-IN-frames-app-DE9V: var(--primary-color);--on-primary-color-SCOPED-IN-frames-app-DE9V: var(--on-primary-color);--surface-color-SCOPED-IN-frames-app-DE9V: var(--surface-color);--on-surface-color-SCOPED-IN-frames-app-DE9V: var(--on-surface-color);--background-color-SCOPED-IN-frames-app-DE9V: var(--background-color);--on-background-color-SCOPED-IN-frames-app-DE9V: var(--on-background-color);--menu-width-SCOPED-IN-frames-app-DE9V: var(--menu-width);--page-width-lv1-SCOPED-IN-frames-app-DE9V: var(--page-width-lv1);--menu-background-color: var(--primary-color-SCOPED-IN-frames-app-DE9V);--menu-background-color-SCOPED-IN-frames-app-DE9V: var(--menu-background-color);--menu-on-background-color: var(--on-primary-color-SCOPED-IN-frames-app-DE9V);--menu-on-background-color-SCOPED-IN-frames-app-DE9V: var(--menu-on-background-color);--menu-padding-top: 56px;--menu-padding-top-SCOPED-IN-frames-app-DE9V: var(--menu-padding-top);--background-primary-color: var(--primary-color-SCOPED-IN-frames-app-DE9V);--background-primary-color-SCOPED-IN-frames-app-DE9V: var(--background-primary-color);--background-on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-DE9V);--background-on-primary-color-SCOPED-IN-frames-app-DE9V: var(--background-on-primary-color);--background-background-color: var(--background-color-SCOPED-IN-frames-app-DE9V);--background-background-color-SCOPED-IN-frames-app-DE9V: var(--background-background-color);--side-app-background-color-SCOPED-IN-frames-app-DE9V: var(--side-app-background-color);--loading-primary-color: var(--primary-color-SCOPED-IN-frames-app-DE9V);--loading-primary-color-SCOPED-IN-frames-app-DE9V: var(--loading-primary-color);--loading-z-index: 1000;--loading-z-index-SCOPED-IN-frames-app-DE9V: var(--loading-z-index)}:host{display:block;width:100%;height:100%;position:fixed;color:var(--primary-color-SCOPED-IN-frames-app-DE9V);touch-action:none}:host *{--primary-color: var(--primary-color-SCOPED-IN-frames-app-DE9V);--on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-DE9V);--surface-color: var(--surface-color-SCOPED-IN-frames-app-DE9V);--on-surface-color: var(--on-surface-color-SCOPED-IN-frames-app-DE9V);--background-color: var(--background-color-SCOPED-IN-frames-app-DE9V);--on-background-color: var(--on-background-color-SCOPED-IN-frames-app-DE9V);--menu-background-color: var(--menu-background-color-SCOPED-IN-frames-app-DE9V);--menu-on-background-color: var(--menu-on-background-color-SCOPED-IN-frames-app-DE9V)}:host frames-drawer{opacity:1;--background-color: var(--side-app-background-color-SCOPED-IN-frames-app-DE9V)}:host frames-side-nav{color:#000;--menu-width: var(--menu-width-SCOPED-IN-frames-app-DE9V)}:host frames-loading{--primary-color: var(--loading-primary-color-SCOPED-IN-frames-app-DE9V);opacity:.9}:host templates-background{--primary-color: var(--background-primary-color-SCOPED-IN-frames-app-DE9V);--on-primary-color: var(--background-on-primary-color-SCOPED-IN-frames-app-DE9V);--background-color: var(--background-background-color-SCOPED-IN-frames-app-DE9V);position:absolute;top:0;left:0}:host frames-side-nav .side-app{position:relative;width:var(--page-width-lv1-SCOPED-IN-frames-app-DE9V);height:100%}:host.is-entrance frames-drawer{opacity:1}:host.is-entrance frames-drawer mat-drawer[style*=\\\"100%\\\"]+mat-drawer-content{margin-right:0!important}:host.is-entrance frames-side-nav{display:none}frames-drawer mat-drawer[style*=\\\"calc(100%\\\"]+mat-drawer-content{margin-right:0!important}\\n\"] }]\n }], ctorParameters: null, propDecorators: null }) });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmZyYW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21wb25lbnRzL3NyYy9saWIvZnJhbWVzL2FwcC9hcHAuZnJhbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBb0IsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdEUsT0FBTyxFQUFtQixtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoSixPQUFPLEVBQW1CLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFhLE1BQU0sK0JBQStCLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMvRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDN0UsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7QUFFdkYsSUFBSyxRQVdKO0FBWEQsV0FBSyxRQUFRO0lBQ1gsMEZBQThFLENBQUE7SUFDOUUsNEZBQWdGLENBQUE7SUFDaEYsZ0dBQW9GLENBQUE7SUFDcEYsd0ZBQTRFLENBQUE7SUFDNUUsd0ZBQTRFLENBQUE7SUFDNUUsNERBQWdELENBQUE7SUFDaEQsb0VBQXdELENBQUE7SUFDeEQsb0VBQXdELENBQUE7SUFDeEQsc0ZBQTBFLENBQUE7SUFDMUUsOEVBQWtFLENBQUE7QUFDcEUsQ0FBQyxFQVhJLFFBQVEsS0FBUixRQUFRLFFBV1o7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLFFBQWUsRUFDZixTQUEyQixFQUFFLEVBQzdCLE9BQXdCLEVBQUU7SUFFMUIsT0FBTyxLQUFLLENBQUM7UUFDWCxFQUFFLEVBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRO1FBQ25DLElBQUksRUFBRSxVQUFVO1FBQ2hCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUU7S0FDOUIsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNYLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxvQkFBb0IsQ0FBQztBQUcxRCxNQUFNLE9BQU8sYUFBYyxTQUFRLG1CQUFtQjthQUNwQyxhQUFRLEdBQUcsUUFBUSxBQUFYLENBQVk7YUFDcEIsT0FBRSxHQUFHLE1BQU0sQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO1FBQzlDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkIsVUFBVSxFQUFFLEVBQUU7WUFDZCxPQUFPLEVBQUUsSUFBSTtZQUNiLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLEtBQUssRUFBRSxPQUFPO1lBQ2QsSUFBSSxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFvQjtZQUN0RCxlQUFlLEVBQUU7Z0JBQ2YsRUFBRSxFQUFFLEVBQUUsUUFBUSxDQUFDLG1CQUFtQixFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRTthQUMxRDtZQUNaLGNBQWMsRUFBRTtnQkFDZCxFQUFFLEVBQUUsRUFBRSxRQUFRLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRTthQUNuRDtZQUNaLG9CQUFvQixFQUFFLEVBQUU7WUFDeEIsV0FBVyxFQUFFLFdBQXVDO1lBQ3BELGVBQWUsRUFBRSxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO1lBQ3ZELGdCQUFnQixFQUFFLFNBQW1CO1lBQ3JDLCtCQUErQixFQUFFLEtBQUs7WUFDdEMsaUJBQWlCLEVBQUUsTUFBTTtZQUN6QixZQUFZLEVBQUUsdUJBQWlDO1lBQy9DLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsZUFBZSxFQUFFLEVBQUU7WUFDbkIsTUFBTSxFQUFFLEtBQUs7U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLEFBM0JqQixDQTJCa0I7YUFDN0IsNEJBQXVCLEdBQUcsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUMxRSxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDL0IsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNyRCxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2xCLEdBQUcsTUFBTTtZQUNULFNBQVMsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUNsQyxVQUFVLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUU7WUFDcEMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFO1lBQzFDLGFBQWEsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNuQyxVQUFVLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUU7WUFDN0IsT0FBTyxFQUFFLE9BQU8sRUFBRTtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQUFaNEIsQ0FZM0I7SUFDSCxNQUFNLENBQUMsb0NBQW9DO1FBQ3pDLE9BQU87WUFDTCxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtnQkFDdEMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxPQUFrQixFQUFFLEVBQUU7b0JBQ3RDLFFBQVEsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO3dCQUMzQixLQUFLLFFBQVEsQ0FBQyxDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsT0FBTyxFQUFFLENBQUM7d0JBQ2xELEtBQUssT0FBTyxDQUFDO3dCQUNiLEtBQUssUUFBUSxDQUFDO3dCQUNkLEtBQUssT0FBTyxDQUFDO3dCQUNiLEtBQUssUUFBUSxDQUFDLENBQUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsQ0FBQztvQkFDbkQsQ0FBQztnQkFDSCxDQUFDLENBQUE7Z0JBQ0QsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDcEUsQ0FBQyxDQUFDO1lBQ0YsYUFBYSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtnQkFDbkMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxPQUFrQixFQUFFLEVBQUU7b0JBQ3pDLFFBQVEsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO3dCQUMzQixLQUFLLFFBQVEsQ0FBQyxDQUFDLE9BQU8sTUFBTSxDQUFDO3dCQUM3QixPQUFPLENBQUMsQ0FBQyxPQUFPLGtCQUFrQixDQUFDO29CQUNyQyxDQUFDO2dCQUNILENBQUMsQ0FBQztnQkFDRixPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDM0IsR0FBRyxNQUFNO29CQUNULGVBQWUsRUFBRSxXQUFXLENBQUMsT0FBTyxDQUFDO2lCQUN0QyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUM7U0FDSCxDQUFDO0lBQ0osQ0FBQzthQUNNLGdCQUFXLEdBQUcscUJBQXFCLENBQUMsYUFBYSxDQUFDLEFBQXZDLENBQXdDO2FBQ25ELHVCQUFrQixHQUFHLGFBQWEsQ0FBQyxXQUFXLENBQUMsT0FBTyxBQUFwQyxDQUFxQztJQUM5RCxNQUFNLENBQUMsMEJBQTBCO1FBQy9CLE9BQU8sYUFBYSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQzVDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxNQUFNLENBQUMsZ0NBQWdDLENBQUMsY0FBOEI7UUFDcEUsT0FBTyxhQUFhLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2pELE1BQU0sS0FBSyxHQUFHLGtCQUFrQixFQUFFLENBQUM7WUFDbkMsU0FBUyxPQUFPLENBQUMsS0FBZSxFQUFFLE9BQWtCO2dCQUNsRCxJQUFJLE9BQU8sS0FBSyxTQUFTO29CQUFFLE9BQU8sS0FBSyxDQUFDO2dCQUN4QyxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQztZQUN6RCxDQUFDO1lBQ0QsTUFBTSxPQUFPLEdBQUcsY0FBYyxFQUFFLENBQUM7WUFFakMsTUFBTSxDQUFDLEdBQUcsRUFBRTtnQkFDVixZQUFZLENBQUMsS0FBSyxFQUFFLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUMzRCxHQUFHLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUM7aUJBQ3ZELENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELE1BQU0sQ0FBQyxxQkFBcUI7UUFDMUIsT0FBTyxhQUFhLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO1lBQ3pELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMvQixPQUFPLENBQUMsT0FBcUUsRUFBRSxFQUFFO2dCQUMvRSxPQUFPLENBQUMsS0FBSyxDQUFDLDBCQUEwQixFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUNuRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFDM0IsR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDdkIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFDbEUsQ0FBQztxQkFBTSxDQUFDO29CQUNOLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQ3ZCLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO29CQUNyQyxPQUFPLENBQUMsS0FBSyxDQUFDLDBCQUEwQixFQUFFLE9BQU8sQ0FBQyxDQUFDO29CQUNuRCxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7Z0JBQ2pGLENBQUM7WUFDSCxDQUFDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsNEJBQTRCO1FBQ2pDLE9BQU8sYUFBYSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO1lBQ2xFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMvQixPQUFPLENBQUMsT0FBOEYsRUFBRSxFQUFFO2dCQUN4RyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFDM0IsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN2QyxDQUFDO3FCQUFNLENBQUM7b0JBQ04sTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUM7b0JBQ3JDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO1lBQ0gsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLG9CQUFvQjtRQUN6QixPQUFPLGFBQWEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDekQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9CLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNqQyxPQUFPLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtvQkFDdkIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDdkIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2xDLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTSxDQUFDLHdCQUF3QjtRQUM3QixPQUFPLGFBQWEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7WUFDOUQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sR0FBRyxFQUFFO2dCQUNWLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdkIsQ0FBQyxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTSxDQUFDLHlCQUF5QjtRQUM5QixPQUFPLGFBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRTtZQUMzQyxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDL0IsT0FBTyxHQUFHLEVBQUU7Z0JBQ1YsR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6QixDQUFDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxNQUFNLENBQUMsNEJBQTRCO1FBQ2pDLE9BQU8sYUFBYSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxFQUFFO1lBQ25FLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMvQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDcEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2pDLE9BQU8sR0FBRyxFQUFFO2dCQUNWLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQXlDLENBQUM7Z0JBQy9FLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtvQkFDckIsT0FBTyxJQUFJLENBQUMsOEJBQThCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTt3QkFDOUUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQ2pDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO3dCQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUNyQixHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ25DLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTSxDQUFDLDRCQUE0QjtRQUNqQyxPQUFPLGFBQWEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLEdBQUcsRUFBRTtZQUNuRSxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDL0IsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNqQyxPQUFPLEdBQUcsRUFBRTtnQkFDVixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUF5QyxDQUFDO2dCQUMvRSxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUU7b0JBQ3JCLE9BQU8sSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7d0JBQzFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUNoQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTt3QkFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDckIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUNuQyxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELE1BQU0sQ0FBQyw2QkFBNkI7UUFDbEMsT0FBTyxhQUFhLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7WUFDcEUsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9CLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNqQyxPQUFPLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO29CQUNoQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDaEMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3JCLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7b0JBQ3pGLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO29CQUNqRixHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDN0IsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxNQUFNLENBQUMsOEJBQThCO1FBQ25DLE9BQU8sYUFBYSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO1lBQ3JFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMvQixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDakMsT0FBTyxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtvQkFDakMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ2hDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNyQixHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ25DLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTSxDQUFDLHFCQUFxQjtRQUMxQixPQUFPO1lBQ0wsYUFBYSxDQUFDLHFCQUFxQixFQUFFO1lBQ3JDLGFBQWEsQ0FBQyxvQkFBb0IsRUFBRTtZQUNwQyxhQUFhLENBQUMsd0JBQXdCLEVBQUU7WUFDeEMsYUFBYSxDQUFDLHlCQUF5QixFQUFFO1lBQ3pDLGFBQWEsQ0FBQyw0QkFBNEIsRUFBRTtZQUM1QyxhQUFhLENBQUMsNEJBQTRCLEVBQUU7WUFDNUMsYUFBYSxDQUFDLDZCQUE2QixFQUFFO1lBQzdDLGFBQWEsQ0FBQyw4QkFBOEIsRUFBRTtZQUM5QyxhQUFhLENBQUMsNEJBQTRCLEVBQUU7U0FDN0MsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYztRQUNuQixPQUFPO1lBQ0wsYUFBYSxDQUFDLHVCQUF1QixFQUFFO1lBQ3ZDLGFBQWEsQ0FBQyxvQ0FBb0MsRUFBRTtZQUNwRCxhQUFhLENBQUMscUJBQXFCLEVBQUU7U0FDdEMsQ0FBQTtJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCO1FBQzNCLE1BQU0sT0FBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNyQyxNQUFNLHFCQUFxQixHQUFHLFlBQVksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUU7WUFDckYsSUFBSSxFQUFFLGFBQWE7U0FDcEIsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLFFBQWUsRUFBRSxJQUFZLEVBQUUsRUFBRTtZQUN2QyxPQUFPLHFCQUFxQixDQUFDLE1BQU0sQ0FBQztnQkFDbEMsUUFBUTtnQkFDUixNQUFNLEVBQUUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsRUFBRTthQUNyRCxFQUFFO2dCQUNELElBQUk7YUFDTCxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUE7SUFDSCxDQUFDO0lBd0JEO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUF2QkQsV0FBTSxHQUFHLGFBQWEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzFDLGNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzVELGVBQVUsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQzlELGVBQVUsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQzlELG9CQUFlLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUN4RSxrQkFBYSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFDcEUsVUFBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDcEQsU0FBSSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDbEQsb0JBQWUsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLG1CQUFjLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUN0RSx5QkFBb0IsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7UUFDbEYsZ0JBQVcsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLG9CQUFlLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUN4RSxxQkFBZ0IsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7UUFDMUUsb0NBQStCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsK0JBQStCLENBQUMsQ0FBQyxDQUFDO1FBQ3hHLHNCQUFpQixHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztRQUM1RSxpQkFBWSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDbEUscUJBQWdCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1FBQzFFLGVBQVUsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQzlELFlBQU8sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ3hELFdBQU0sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBSTdELGFBQWEsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xELENBQUM7OEdBM1JVLGFBQWE7a0dBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsU0FBUzttQkFBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRTs7QUFnWHZELE1BQU0sT0FBTyxRQUFTLFNBQVEsaUJBQWlCO0lBakYvQzs7UUFrRlksVUFBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMvQixlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBUzNDO0lBUFcsZ0JBQWdCO1FBQ3hCLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFUyxpQkFBaUI7UUFDekIsT0FBTyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDNUMsQ0FBQzs4R0FWVSxRQUFRO2tHQUFSLFFBQVEsd0tBL1dSLGFBQWEsNkJBMlNkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMERULGtnSEFwRUMsUUFBUSx1REFDUixZQUFZLDJEQUNaLFlBQVksNERBQ1osWUFBWSwrS0FDWixhQUFhLDREQUNiLFdBQVcsMERBRVgsZ0JBQWdCLGdFQUNoQixxQkFBcUI7O2dHQXNFWixRQUFRO3NCQWpGcEIsU0FBUzttQ0FDRSxZQUFZLFdBQ2I7NEJBQ1AsUUFBUTs0QkFDUixZQUFZOzRCQUNaLFlBQVk7NEJBQ1osWUFBWTs0QkFDWixhQUFhOzRCQUNiLFdBQVc7NEJBQ1gsdUJBQXVCOzRCQUN2QixnQkFBZ0I7NEJBQ2hCLHFCQUFxQjt5QkFDdEIsWUFDUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBEVCxtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTSxrQkFDL0I7NEJBQ2QsYUFBYTt5QkFDZCxRQUNLOzRCQUNKLHFCQUFxQixFQUFFLG9CQUFvQjt5QkFDNUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBQTEFURk9STV9JRCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkV4dHJhcywgUm91dGVyT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IExvYWRpbmdGcmFtZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tcG9uZW50cy9mcmFtZXMvbG9hZGluZyc7XG5pbXBvcnQgeyBTaWRlTmF2RnJhbWUsIFNpZGVOYXZGcmFtZVN0b3JlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21wb25lbnRzL2ZyYW1lcy9zaWRlLW5hdic7XG5pbXBvcnQgeyBFbnRyYW5jZUZyYW1lIH0gZnJvbSAnQG5nLWF0b21pYy9jb21wb25lbnRzL2ZyYW1lcy9lbnRyYW5jZSc7XG5pbXBvcnQgeyBBY3Rpb24sIEFjdGlvbnMsIEluamVjdGFibGVDb21wb25lbnQsIE5nQXRvbWljQ29tcG9uZW50LCBfY29tcHV0ZWQsIGFwcGx5VG9JbnB1dCwgY3JlYXRlQWN0aW9uLCBwcm92aWRlRWZmZWN0IH0gZnJvbSAnQG5nLWF0b21pYy9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBtYWtlREksIE5hdkFjdGlvbklkLCBVSUNvbnRleHQgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy91aSc7XG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciwgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kVGVtcGxhdGVTdG9yZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tcG9uZW50cy90ZW1wbGF0ZXMvYmFja2dyb3VuZCc7XG5pbXBvcnQgeyBEcmF3ZXJGcmFtZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tcG9uZW50cy9mcmFtZXMvZHJhd2VyJztcbmltcG9ydCB7IEZhYkZyYW1lIH0gZnJvbSAnQG5nLWF0b21pYy9jb21wb25lbnRzL2ZyYW1lcy9mYWInO1xuaW1wb3J0IHsgQXBwU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL2FwcCc7XG5pbXBvcnQgeyBTaWRlQXBwU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL3NpZGUtYXBwJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vc2VydmljZXMvYXV0aCc7XG5pbXBvcnQgeyBSb290UHJvcGVydHlTZXJ2aWNlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vc2VydmljZXMvcm9vdC1wcm9wZXJ0eSc7XG5pbXBvcnQgeyBtYWtlSW5pdGlhbGl6ZXJDb25maWcgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy9pbml0aWFsaXplcic7XG5pbXBvcnQgeyBpbmplY3RIYXNOZXh0LCBpbmplY3RQcmltYXJ5UGF0aHMgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi91dGlscyc7XG5pbXBvcnQgeyBQcm9ncmVzc0JhckZyYW1lIH0gZnJvbSBcIkBuZy1hdG9taWMvY29tcG9uZW50cy9mcmFtZXMvcHJvZ3Jlc3MtYmFyXCI7XG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCcmVhZGNydW1iTmF2YmFyRnJhbWUgfSBmcm9tICdAbmctYXRvbWljL2NvbXBvbmVudHMvZnJhbWVzL2JyZWFkY3J1bWItbmF2YmFyJztcblxuZW51bSBBY3Rpb25JZCB7XG4gIFNJR05fSU5fV0lUSF9HT09HTEUgPSAnW0BuZy1hdG9taWMvY29tcG9uZW50czpmcmFtZXMvYXBwXSBTaWduIEluIFdpdGggR29vZ2xlJyxcbiAgU0lHTl9JTl9XSVRIX1RXSVRURVIgPSAnW0BuZy1hdG9taWMvY29tcG9uZW50czpmcmFtZXMvYXBwXSBTaWduIEluIFdpdGggVHdpdHRlcicsXG4gIFNJR05fSU5fV0lUSF9NSUNST1NPRlQgPSAnW0BuZy1hdG9taWMvY29tcG9uZW50czpmcmFtZXMvYXBwXSBTaWduIEluIFdpdGggTWljcm9zb2Z0JyxcbiAgU0lHTl9JTl9XSVRIX0VNQUlMID0gJ1tAbmctYXRvbWljL2NvbXBvbmVudHM6ZnJhbWVzL2FwcF0gU2lnbiBJbiBXaXRoIEVtYWlsJyxcbiAgU0lHTl9VUF9XSVRIX0VNQUlMID0gJ1tAbmctYXRvbWljL2NvbXBvbmVudHM6ZnJhbWVzL2FwcF0gU2lnbiBVcCBXaXRoIEVtYWlsJyxcbiAgQkFDSyA9ICdbQG5nLWF0b21pYy9jb21wb25lbnRzOmZyYW1lcy9hcHBdIEJhY2snLFxuICBOQVZJR0FURSA9ICdbQG5nLWF0b21pYy9jb21wb25lbnRzOmZyYW1lcy9hcHBdIE5hdmlnYXRlJyxcbiAgU0lHTl9PVVQgPSAnW0BuZy1hdG9taWMvY29tcG9uZW50czpmcmFtZXMvYXBwXSBTaWduIE91dCcsXG4gIE5BVklHQVRFX1NJREVfQVBQID0gJ1tAbmctYXRvbWljL2NvbXBvbmVudHM6ZnJhbWVzL2FwcF0gTmF2aWdhdGUgU2lkZSBBcHAnLFxuICBPUEVOX1NJREVfQVBQID0gJ1tAbmctYXRvbWljL2NvbXBvbmVudHM6ZnJhbWVzL2FwcF0gT3BlbiBTaWRlIEFwcCcsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOYXZpZ2F0ZUFjdGlvbihcbiAgY29tbWFuZHM6IGFueVtdLFxuICBleHRyYXM6IE5hdmlnYXRpb25FeHRyYXMgPSB7fSxcbiAgbWV0YTogUGFydGlhbDxBY3Rpb24+ID0ge30sXG4pOiBBY3Rpb24ge1xuICByZXR1cm4gbWVyZ2Uoe1xuICAgIGlkOiBBcHBGcmFtZVN0b3JlLkFjdGlvbklkLk5BVklHQVRFLFxuICAgIG5hbWU6ICdOYXZpZ2F0ZScsXG4gICAgaWNvbjogJ29wZW5faW5fbmV3JyxcbiAgICBwYXlsb2FkOiB7IGNvbW1hbmRzLCBleHRyYXMgfSxcbiAgfSwgbWV0YSk7XG59XG5cbmV4cG9ydCBjb25zdCBidWlsZE5hdmlnYXRpb25BY3Rpb24gPSBjcmVhdGVOYXZpZ2F0ZUFjdGlvbjtcblxuQERpcmVjdGl2ZSh7IHN0YW5kYWxvbmU6IHRydWUsIHNlbGVjdG9yOiAnZnJhbWVzLWFwcCcgfSlcbmV4cG9ydCBjbGFzcyBBcHBGcmFtZVN0b3JlIGV4dGVuZHMgSW5qZWN0YWJsZUNvbXBvbmVudCB7XG4gIHN0YXRpYyByZWFkb25seSBBY3Rpb25JZCA9IEFjdGlvbklkO1xuICBzdGF0aWMgcmVhZG9ubHkgREkgPSBtYWtlREkoQXBwRnJhbWVTdG9yZSwgKCkgPT4ge1xuICAgIHJldHVybiAoY29udGV4dCkgPT4gKHtcbiAgICAgIGZhYkFjdGlvbnM6IFtdLFxuICAgICAgZmFiSGlkZTogdHJ1ZSxcbiAgICAgIGlzRW50cmFuY2U6IHRydWUsXG4gICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgaXNQcm9ncmVzczogZmFsc2UsXG4gICAgICBzaWRlQXBwT3BlbmVkOiBmYWxzZSxcbiAgICAgIHRpdGxlOiAndGl0bGUnLFxuICAgICAgZm9ybTogaW5qZWN0KEZvcm1CdWlsZGVyKS5ncm91cCh7fSkgYXMgQWJzdHJhY3RDb250cm9sLFxuICAgICAgZW50cmFuY2VBY3Rpb25zOiBbXG4gICAgICAgIHsgaWQ6IEFjdGlvbklkLlNJR05fSU5fV0lUSF9HT09HTEUsIG5hbWU6ICdHb29nbGXjgafjgrXjgqTjg7PjgqTjg7MnLCBpY29uOiAnJyB9LFxuICAgICAgXSBhcyBBY3Rpb25zLFxuICAgICAgc2lkZU5hdkFjdGlvbnM6IFtcbiAgICAgICAgeyBpZDogQWN0aW9uSWQuU0lHTl9PVVQsIG5hbWU6ICfjg63jgrDjgqLjgqbjg4gnLCBpY29uOiAnZXhpdF90b19hcHAnIH0sXG4gICAgICBdIGFzIEFjdGlvbnMsXG4gICAgICBzaWRlTmF2Qm90dG9tQWN0aW9uczogW10sXG4gICAgICBzaWRlTmF2TW9kZTogJ2NvbGxhcHNlZCcgYXMgJ2V4cGFuZGVkJyB8ICdjb2xsYXBzZWQnLFxuICAgICAgc2lkZU5hdk1lbnVUeXBlOiBTaWRlTmF2RnJhbWVTdG9yZS5nZXRNZW51VHlwZShjb250ZXh0KSxcbiAgICAgIHNpZGVOYXZNZW51VGl0bGU6IHVuZGVmaW5lZCBhcyBzdHJpbmcsXG4gICAgICBzaWRlTmF2SWNvbkJ1dHRvbk1lbnVUb3BQYWRkaW5nOiAnMHB4JyxcbiAgICAgIHNpZGVBcHBPdXRsZXROYW1lOiAnc2lkZScsXG4gICAgICBzaWRlQXBwV2lkdGg6ICd2YXIoLS1wYWdlLXdpZHRoLWx2MSknIGFzIHN0cmluZyxcbiAgICAgIHNpZGVBcHBSZXNpemFibGU6IHRydWUsXG4gICAgICBicmVhZGNydW1iSXRlbXM6IFtdLFxuICAgICAgYXBwQmFyOiBmYWxzZSxcbiAgICB9KTtcbiAgfSwgWydjb21wb25lbnRzJywgJ2ZyYW1lcycsICdhcHAnXSk7XG4gIHN0YXRpYyBwcm92aWRlQXBwU2VydmljZUNvbmZpZyA9ICgpID0+IEFwcEZyYW1lU3RvcmUuREkuQ29uZmlnLnByb3ZpZGUoKCkgPT4ge1xuICAgIGNvbnN0IGFwcCA9IGluamVjdChBcHBTZXJ2aWNlKTtcbiAgICBjb25zdCBmYWJIaWRlID0gY29tcHV0ZWQoKCkgPT4gYXBwLnNpZGVBcHAub3BlbmVkKCkpO1xuICAgIHJldHVybiAoY29uZmlnKSA9PiAoe1xuICAgICAgLi4uY29uZmlnLFxuICAgICAgaXNMb2FkaW5nOiBhcHAubG9hZGluZy5pc0xvYWRpbmcoKSxcbiAgICAgIGlzUHJvZ3Jlc3M6IGFwcC5sb2FkaW5nLmlzUHJvZ3Jlc3MoKSxcbiAgICAgIHNpZGVOYXZNb2RlOiBhcHAuc2lkZU5hdk1vZGUuc2lkZU5hdk1vZGUoKSxcbiAgICAgIHNpZGVBcHBPcGVuZWQ6IGFwcC5zaWRlQXBwLm9wZW5lZCgpLFxuICAgICAgZmFiQWN0aW9uczogYXBwLmZhYi5hY3Rpb25zKCksXG4gICAgICBmYWJIaWRlOiBmYWJIaWRlKCksXG4gICAgfSk7XG4gIH0pO1xuICBzdGF0aWMgcHJvdmlkZUljb25CdXR0b25NZW51QXNEZWZhdWx0Q29uZmlnKCkge1xuICAgIHJldHVybiBbXG4gICAgICBSb290UHJvcGVydHlTZXJ2aWNlLkNvbmZpZy5wcm92aWRlKCgpID0+IHtcbiAgICAgICAgY29uc3QgZ2V0UHJvcHMgPSAoY29udGV4dDogVUlDb250ZXh0KSA9PiB7XG4gICAgICAgICAgc3dpdGNoIChjb250ZXh0LmJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIGNhc2UgJ3hTbWFsbCc6IHJldHVybiB7ICctLW1lbnUtd2lkdGgnOiAnMjIwcHgnIH07XG4gICAgICAgICAgICBjYXNlICdzbWFsbCc6XG4gICAgICAgICAgICBjYXNlICdtZWRpdW0nOlxuICAgICAgICAgICAgY2FzZSAnbGFyZ2UnOlxuICAgICAgICAgICAgY2FzZSAneExhcmdlJzogcmV0dXJuIHsgJy0tbWVudS13aWR0aCc6ICc2NHB4JyB9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKGNvbmZpZywgY29udGV4dCkgPT4gKHsgLi4uY29uZmlnLCAuLi5nZXRQcm9wcyhjb250ZXh0KSB9KTtcbiAgICAgIH0pLFxuICAgICAgQXBwRnJhbWVTdG9yZS5ESS5Db25maWcucHJvdmlkZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGdldE1lbnVUeXBlID0gKGNvbnRleHQ6IFVJQ29udGV4dCkgPT4ge1xuICAgICAgICAgIHN3aXRjaCAoY29udGV4dC5icmVha3BvaW50KSB7XG4gICAgICAgICAgICBjYXNlICd4U21hbGwnOiByZXR1cm4gJ21lbnUnO1xuICAgICAgICAgICAgZGVmYXVsdDogcmV0dXJuICdpY29uLWJ1dHRvbi1tZW51JztcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiAoY29uZmlnLCBjb250ZXh0KSA9PiAoe1xuICAgICAgICAgIC4uLmNvbmZpZyxcbiAgICAgICAgICBzaWRlTmF2TWVudVR5cGU6IGdldE1lbnVUeXBlKGNvbnRleHQpLFxuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgXTtcbiAgfVxuICBzdGF0aWMgSW5pdGlhbGl6ZXIgPSBtYWtlSW5pdGlhbGl6ZXJDb25maWcoQXBwRnJhbWVTdG9yZSk7XG4gIHN0YXRpYyBwcm92aWRlSW5pdGlhbGl6ZXIgPSBBcHBGcmFtZVN0b3JlLkluaXRpYWxpemVyLnByb3ZpZGU7XG4gIHN0YXRpYyBwcm92aWRlRXhwYW5kU2lkZUFwcE9uSW5pdCgpIHtcbiAgICByZXR1cm4gQXBwRnJhbWVTdG9yZS5Jbml0aWFsaXplci5wcm92aWRlKCgpID0+IHtcbiAgICAgIGluamVjdChTaWRlQXBwU2VydmljZSkuZXhwYW5kKCk7XG4gICAgfSk7XG4gIH1cbiAgc3RhdGljIHByb3ZpZGVTaWRlTmF2QWN0aW9uc0luaXRpYWxpemVyKGFjdGlvbnNGYWN0b3J5OiAoKSA9PiBBY3Rpb25bXSkge1xuICAgIHJldHVybiBBcHBGcmFtZVN0b3JlLkluaXRpYWxpemVyLnByb3ZpZGUoKHN0b3JlKSA9PiB7XG4gICAgICBjb25zdCBwYXRocyA9IGluamVjdFByaW1hcnlQYXRocygpO1xuICAgICAgZnVuY3Rpb24gY29tcGFyZShwYXRoczogc3RyaW5nW10sIHBheWxvYWQ/OiBzdHJpbmdbXSkge1xuICAgICAgICBpZiAocGF5bG9hZCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIHJldHVybiBwYXlsb2FkLmV2ZXJ5KChwYXRoLCBpKSA9PiBwYXRocz8uW2ldID09PSBwYXRoKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFjdGlvbnMgPSBhY3Rpb25zRmFjdG9yeSgpO1xuXG4gICAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgICBhcHBseVRvSW5wdXQoc3RvcmUsICdzaWRlTmF2QWN0aW9ucycsIGFjdGlvbnMubWFwKGFjdGlvbiA9PiAoe1xuICAgICAgICAgIC4uLmFjdGlvbiwgZGlzYWJsZWQ6IGNvbXBhcmUocGF0aHMoKSwgYWN0aW9uPy5wYXlsb2FkKSxcbiAgICAgICAgfSkpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG4gIHN0YXRpYyBwcm92aWRlTmF2aWdhdGVFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5OQVZJR0FURSwgKCkgPT4ge1xuICAgICAgY29uc3QgYXBwID0gaW5qZWN0KEFwcFNlcnZpY2UpO1xuICAgICAgcmV0dXJuIChwYXlsb2FkOiBzdHJpbmdbXSB8IHsgY29tbWFuZHM6IHN0cmluZ1tdLCBleHRyYXM/OiBOYXZpZ2F0aW9uRXh0cmFzIH0pID0+IHtcbiAgICAgICAgY29uc29sZS5kZWJ1ZygnW0FwcEZyYW1lU3RvcmVdIHBheWxvYWQ6JywgcGF5bG9hZCk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBheWxvYWQpKSB7XG4gICAgICAgICAgYXBwLnNpZGVBcHAuY29sbGFwc2UoKTtcbiAgICAgICAgICBhcHAucm91dGVyLm5hdmlnYXRlKHBheWxvYWQpLnRoZW4oKCkgPT4gYXBwLnNpZGVOYXYuY29sbGFwc2UoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYXBwLnNpZGVBcHAuY29sbGFwc2UoKTtcbiAgICAgICAgICBjb25zdCB7IGNvbW1hbmRzLCBleHRyYXMgfSA9IHBheWxvYWQ7XG4gICAgICAgICAgY29uc29sZS5kZWJ1ZygnW0FwcEZyYW1lU3RvcmVdIHBheWxvYWQ6JywgcGF5bG9hZCk7XG4gICAgICAgICAgYXBwLnJvdXRlci5uYXZpZ2F0ZShjb21tYW5kcywgZXh0cmFzID8/IHt9KS50aGVuKCgpID0+IGFwcC5zaWRlTmF2LmNvbGxhcHNlKCkpO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIHByb3ZpZGVOYXZpZ2F0ZVNpZGVBcHBFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5OQVZJR0FURV9TSURFX0FQUCwgKCkgPT4ge1xuICAgICAgY29uc3QgYXBwID0gaW5qZWN0KEFwcFNlcnZpY2UpO1xuICAgICAgcmV0dXJuIChwYXlsb2FkOiBzdHJpbmdbXSB8IHsgY29tbWFuZHM6IHN0cmluZ1tdLCBleHRyYXM/OiBOYXZpZ2F0aW9uRXh0cmFzICYgeyBleHBhbmRlZD86IGJvb2xlYW4gfSB9KSA9PiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBheWxvYWQpKSB7XG4gICAgICAgICAgYXBwLnNpZGVBcHAucm91dGVyLm5hdmlnYXRlKHBheWxvYWQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHsgY29tbWFuZHMsIGV4dHJhcyB9ID0gcGF5bG9hZDtcbiAgICAgICAgICBhcHAuc2lkZUFwcC5yb3V0ZXIubmF2aWdhdGUoY29tbWFuZHMsIGV4dHJhcyA/PyB7fSk7XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgcHJvdmlkZVNpZ25PdXRFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5TSUdOX09VVCwgKCkgPT4ge1xuICAgICAgY29uc3QgYXBwID0gaW5qZWN0KEFwcFNlcnZpY2UpO1xuICAgICAgY29uc3QgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBhdXRoLnNpZ25PdXQoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICBhcHAuc2lkZU5hdi5jb2xsYXBzZSgpO1xuICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKCfjgrXjgqTjg7PjgqLjgqbjg4jjgZfjgb7jgZfjgZ8nKTtcbiAgICAgICAgfSk7XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG4gIHN0YXRpYyBwcm92aWRlT3BlblNpZGVBcHBFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5PUEVOX1NJREVfQVBQLCAoKSA9PiB7XG4gICAgICBjb25zdCBhcHAgPSBpbmplY3QoQXBwU2VydmljZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBhcHAuc2lkZUFwcC5leHBhbmQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBzdGF0aWMgcHJvdmlkZUNsb3NlU2lkZUFwcEVmZmVjdCgpIHtcbiAgICByZXR1cm4gcHJvdmlkZUVmZmVjdChOYXZBY3Rpb25JZC5DTE9TRSwgKCkgPT4ge1xuICAgICAgY29uc3QgYXBwID0gaW5qZWN0KEFwcFNlcnZpY2UpO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgYXBwLnNpZGVBcHAuY29sbGFwc2UoKTtcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbiAgc3RhdGljIHByb3ZpZGVTaWduVXBXaXRoRW1haWxFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5TSUdOX1VQX1dJVEhfRU1BSUwsICgpID0+IHtcbiAgICAgIGNvbnN0IGFwcCA9IGluamVjdChBcHBTZXJ2aWNlKTtcbiAgICAgIGNvbnN0IHN0b3JlID0gaW5qZWN0KEFwcEZyYW1lU3RvcmUpO1xuICAgICAgY29uc3QgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjb25zdCBkYXRhID0gc3RvcmUuZm9ybSgpLmdldFJhd1ZhbHVlKCkgYXMgeyBlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nIH07XG4gICAgICAgIGFwcC5sb2FkaW5nLmF3YWl0KCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXV0aC5jcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQoZGF0YS5lbWFpbCwgZGF0YS5wYXNzd29yZCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICBhcHAuc25hY2tCYXIub3Blbign5paw6KaP55m76Yyy44GX44G+44GX44Gf44CCJyk7XG4gICAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKGVycm9yLm1lc3NhZ2UpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbiAgc3RhdGljIHByb3ZpZGVTaWduSW5XaXRoRW1haWxFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5TSUdOX0lOX1dJVEhfRU1BSUwsICgpID0+IHtcbiAgICAgIGNvbnN0IGFwcCA9IGluamVjdChBcHBTZXJ2aWNlKTtcbiAgICAgIGNvbnN0IHN0b3JlID0gaW5qZWN0KEFwcEZyYW1lU3RvcmUpO1xuICAgICAgY29uc3QgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjb25zdCBkYXRhID0gc3RvcmUuZm9ybSgpLmdldFJhd1ZhbHVlKCkgYXMgeyBlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nIH07XG4gICAgICAgIGFwcC5sb2FkaW5nLmF3YWl0KCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXV0aC5zaWduSW5XaXRoRW1haWxBbmRQYXNzd29yZChkYXRhLmVtYWlsLCBkYXRhLnBhc3N3b3JkKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKCfjg63jgrDjgqTjg7PjgZfjgb7jgZfjgZ8nKTtcbiAgICAgICAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgYXBwLnNuYWNrQmFyLm9wZW4oZXJyb3IubWVzc2FnZSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICBzdGF0aWMgcHJvdmlkZVNpZ25JbldpdGhHb29nbGVFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5TSUdOX0lOX1dJVEhfR09PR0xFLCAoKSA9PiB7XG4gICAgICBjb25zdCBhcHAgPSBpbmplY3QoQXBwU2VydmljZSk7XG4gICAgICBjb25zdCBhdXRoID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGF1dGguc2lnbkluV2l0aEdvb2dsZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKCfjg63jgrDjgqTjg7PjgZfjgb7jgZfjgZ8nKTtcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgICAgY29uc3QgX21lc3NhZ2UgPSBlcnJvci5tZXNzYWdlLm1hdGNoKC9IVFRQIENsb3VkIEZ1bmN0aW9uIHJldHVybmVkIGFuIGVycm9yOiAoLiopIFxcKC4qLyk7XG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9IF9tZXNzYWdlID8gSlNPTi5wYXJzZShfbWVzc2FnZVsxXSkuZXJyb3IubWVzc2FnZSA6IGVycm9yLm1lc3NhZ2U7XG4gICAgICAgICAgYXBwLnNuYWNrQmFyLm9wZW4obWVzc2FnZSk7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICBzdGF0aWMgcHJvdmlkZVNpZ25JbldpdGhUd2l0dGVyRWZmZWN0KCkge1xuICAgIHJldHVybiBwcm92aWRlRWZmZWN0KEFwcEZyYW1lU3RvcmUuQWN0aW9uSWQuU0lHTl9JTl9XSVRIX1RXSVRURVIsICgpID0+IHtcbiAgICAgIGNvbnN0IGFwcCA9IGluamVjdChBcHBTZXJ2aWNlKTtcbiAgICAgIGNvbnN0IGF1dGggPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgYXV0aC5zaWduSW5XaXRoVHdpdHRlcigpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKCfjg63jgrDjgqTjg7PjgZfjgb7jgZfjgZ8nKTtcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgICAgYXBwLnNuYWNrQmFyLm9wZW4oZXJyb3IubWVzc2FnZSk7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICBzdGF0aWMgcHJvdmlkZURlZmF1bHRFZmZlY3RzKCkge1xuICAgIHJldHVybiBbXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVOYXZpZ2F0ZUVmZmVjdCgpLFxuICAgICAgQXBwRnJhbWVTdG9yZS5wcm92aWRlU2lnbk91dEVmZmVjdCgpLFxuICAgICAgQXBwRnJhbWVTdG9yZS5wcm92aWRlT3BlblNpZGVBcHBFZmZlY3QoKSxcbiAgICAgIEFwcEZyYW1lU3RvcmUucHJvdmlkZUNsb3NlU2lkZUFwcEVmZmVjdCgpLFxuICAgICAgQXBwRnJhbWVTdG9yZS5wcm92aWRlU2lnblVwV2l0aEVtYWlsRWZmZWN0KCksXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVTaWduSW5XaXRoRW1haWxFZmZlY3QoKSxcbiAgICAgIEFwcEZyYW1lU3RvcmUucHJvdmlkZVNpZ25JbldpdGhHb29nbGVFZmZlY3QoKSxcbiAgICAgIEFwcEZyYW1lU3RvcmUucHJvdmlkZVNpZ25JbldpdGhUd2l0dGVyRWZmZWN0KCksXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVOYXZpZ2F0ZVNpZGVBcHBFZmZlY3QoKSxcbiAgICBdO1xuICB9XG5cbiAgc3RhdGljIHByb3ZpZGVEZWZhdWx0KCkge1xuICAgIHJldHVybiBbXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVBcHBTZXJ2aWNlQ29uZmlnKCksXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVJY29uQnV0dG9uTWVudUFzRGVmYXVsdENvbmZpZygpLFxuICAgICAgQXBwRnJhbWVTdG9yZS5wcm92aWRlRGVmYXVsdEVmZmVjdHMoKSxcbiAgICBdXG4gIH1cblxuICBzdGF0aWMgaW5qZWN0TmF2QWN0aW9uRmFjdG9yeSgpIHtcbiAgICBjb25zdCBoYXNOZXh0ID0gaW5qZWN0SGFzTmV4dCgpO1xuICAgIGNvbnN0IHJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgICBjb25zdCBuYXZpZ2F0ZUFjdGlvbkJ1aWxkZXIgPSBjcmVhdGVBY3Rpb24oQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5OQVZJR0FURSwgdW5kZWZpbmVkLCB7XG4gICAgICBpY29uOiAnb3Blbl9pbl9uZXcnLFxuICAgIH0pO1xuICAgIHJldHVybiAoY29tbWFuZHM6IGFueVtdLCBuYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBuYXZpZ2F0ZUFjdGlvbkJ1aWxkZXIuY3JlYXRlKHtcbiAgICAgICAgY29tbWFuZHMsXG4gICAgICAgIGV4dHJhczogeyByZWxhdGl2ZVRvOiByb3V0ZSwgcmVwbGFjZVVybDogaGFzTmV4dCgpIH1cbiAgICAgIH0sIHtcbiAgICAgICAgbmFtZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJlYWRvbmx5IGNvbmZpZyA9IEFwcEZyYW1lU3RvcmUuREkuQ29uZmlnLmluamVjdCgpO1xuICByZWFkb25seSBpc0xvYWRpbmcgPSBpbnB1dChfY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5pc0xvYWRpbmcpKTtcbiAgcmVhZG9ubHkgaXNQcm9ncmVzcyA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLmlzUHJvZ3Jlc3MpKTtcbiAgcmVhZG9ubHkgaXNFbnRyYW5jZSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLmlzRW50cmFuY2UpKTtcbiAgcmVhZG9ubHkgYnJlYWRjcnVtYkl0ZW1zID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuYnJlYWRjcnVtYkl0ZW1zKSk7XG4gIHJlYWRvbmx5IHNpZGVBcHBPcGVuZWQgPSBpbnB1dChfY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5zaWRlQXBwT3BlbmVkKSk7XG4gIHJlYWRvbmx5IHRpdGxlID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkudGl0bGUpKTtcbiAgcmVhZG9ubHkgZm9ybSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLmZvcm0pKTtcbiAgcmVhZG9ubHkgZW50cmFuY2VBY3Rpb25zID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuZW50cmFuY2VBY3Rpb25zKSk7XG4gIHJlYWRvbmx5IHNpZGVOYXZBY3Rpb25zID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuc2lkZU5hdkFjdGlvbnMpKTtcbiAgcmVhZG9ubHkgc2lkZU5hdkJvdHRvbUFjdGlvbnMgPSBpbnB1dChfY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5zaWRlTmF2Qm90dG9tQWN0aW9ucykpO1xuICByZWFkb25seSBzaWRlTmF2TW9kZSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLnNpZGVOYXZNb2RlKSk7XG4gIHJlYWRvbmx5IHNpZGVOYXZNZW51VHlwZSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLnNpZGVOYXZNZW51VHlwZSkpO1xuICByZWFkb25seSBzaWRlTmF2TWVudVRpdGxlID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuc2lkZU5hdk1lbnVUaXRsZSkpO1xuICByZWFkb25seSBzaWRlTmF2SWNvbkJ1dHRvbk1lbnVUb3BQYWRkaW5nID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuc2lkZU5hdkljb25CdXR0b25NZW51VG9wUGFkZGluZykpO1xuICByZWFkb25seSBzaWRlQXBwT3V0bGV0TmFtZSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLnNpZGVBcHBPdXRsZXROYW1lKSk7XG4gIHJlYWRvbmx5IHNpZGVBcHBXaWR0aCA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLnNpZGVBcHBXaWR0aCkpO1xuICByZWFkb25seSBzaWRlQXBwUmVzaXphYmxlID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuc2lkZUFwcFJlc2l6YWJsZSkpO1xuICByZWFkb25seSBmYWJBY3Rpb25zID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuZmFiQWN0aW9ucykpO1xuICByZWFkb25seSBmYWJIaWRlID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuZmFiSGlkZSkpO1xuICByZWFkb25seSBhcHBCYXIgPSBpbnB1dChfY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5hcHBCYXIpKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIEFwcEZyYW1lU3RvcmUuSW5pdGlhbGl6ZXIuaW5pdGlhbGl6ZVN0b3JlKHRoaXMpO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZyYW1lcy1hcHAnLFxuICBpbXBvcnRzOiBbXG4gICAgRmFiRnJhbWUsXG4gICAgTG9hZGluZ0ZyYW1lLFxuICAgIFNpZGVOYXZGcmFtZSxcbiAgICBSb3V0ZXJPdXRsZXQsXG4gICAgRW50cmFuY2VGcmFtZSxcbiAgICBEcmF3ZXJGcmFtZSxcbiAgICBCYWNrZ3JvdW5kVGVtcGxhdGVTdG9yZSxcbiAgICBQcm9ncmVzc0JhckZyYW1lLFxuICAgIEJyZWFkY3J1bWJOYXZiYXJGcmFtZSxcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgQGlmIChpc1BsYXRmb3JtQnJvd3NlcigpKSB7XG4gICAgQGRlZmVyIHtcbiAgICAgIDx0ZW1wbGF0ZXMtYmFja2dyb3VuZCBpbmplY3RhYmxlLz5cbiAgICB9XG4gIH1cbiAgPGZyYW1lcy1sb2FkaW5nIFtpc0xvYWRpbmddPVwic3RvcmUuaXNMb2FkaW5nKClcIj5cbiAgICA8ZnJhbWVzLXByb2dyZXNzLWJhclxuICAgICAgW2lzUHJvZ3Jlc3NdPVwic3RvcmUuaXNQcm9ncmVzcygpXCJcbiAgICAgIFttb2RlXT1cIidxdWVyeSdcIlxuICAgID5cbiAgICAgIDxmcmFtZXMtZmFiXG4gICAgICAgIFthY3Rpb25zXT1cInN0b3JlLmZhYkFjdGlvbnMoKVwiXG4gICAgICAgIFtoaWRlXT1cInN0b3JlLmZhYkhpZGUoKVwiXG4gICAgICAgIChhY3Rpb24pPVwiZGlzcGF0Y2goJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxmcmFtZXMtZW50cmFuY2VcbiAgICAgICAgICBbaXNFbnRyYW5jZV09XCJzdG9yZS5pc0VudHJhbmNlKClcIlxuICAgICAgICAgIFtmb3JtXT1cInN0b3JlLmZvcm0oKVwiXG4gICAgICAgICAgW3RpdGxlXT1cInN0b3JlLnRpdGxlKClcIlxuICAgICAgICAgIFthY3Rpb25zXT1cInN0b3JlLmVudHJhbmNlQWN0aW9ucygpXCJcbiAgICAgICAgICAoYWN0aW9uKT1cImRpc3BhdGNoKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAgPGZyYW1lcy1kcmF3ZXJcbiAgICAgICAgICAgIFtvcGVuZWRdPVwic3RvcmUuc2lkZUFwcE9wZW5lZCgpXCJcbiAgICAgICAgICAgIFtwb3NpdGlvbl09XCInZW5kJ1wiXG4gICAgICAgICAgICBbaGFzQmFja2Ryb3BdPVwiZmFsc2VcIlxuICAgICAgICAgICAgW21vZGVdPVwiJ3NpZGUnXCJcbiAgICAgICAgICAgIFt3aWR0aF09XCJzdG9yZS5zaWRlQXBwV2lkdGgoKVwiXG4gICAgICAgICAgICBbcmVzaXphYmxlXT1cInN0b3JlLnNpZGVBcHBSZXNpemFibGUoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGZyYW1lcy1icmVhZGNydW1iLW5hdmJhclxuICAgICAgICAgICAgICBbaXRlbXNdPVwic3RvcmUuYnJlYWRjcnVtYkl0ZW1zKClcIlxuICAgICAgICAgICAgICBbc2VwYXJhdG9yXT1cIicvJ1wiXG4gICAgICAgICAgICAgIFtpc0hpZGRlbl09XCIhc3RvcmUuYXBwQmFyKClcIlxuICAgICAgICAgICAgICAoYWN0aW9uKT1cImRpc3BhdGNoKCRldmVudClcIlxuICAgICAgICAgICAgICBjb250ZW50c1xuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZnJhbWVzLXNpZGUtbmF2XG4gICAgICAgICAgICAgICAgW2FjdGlvbnNdPVwic3RvcmUuc2lkZU5hdkFjdGlvbnMoKVwiXG4gICAgICAgICAgICAgICAgW2JvdHRvbUFjdGlvbnNdPVwic3RvcmUuc2lkZU5hdkJvdHRvbUFjdGlvbnMoKVwiXG4gICAgICAgICAgICAgICAgW21vZGVdPVwic3RvcmUuc2lkZU5hdk1vZGUoKVwiXG4gICAgICAgICAgICAgICAgW21lbnVUeXBlXT1cInN0b3JlLnNpZGVOYXZNZW51VHlwZSgpXCJcbiAgICAgICAgICAgICAgICBbbWVudVRpdGxlXT1cInN0b3JlLnNpZGVOYXZNZW51VGl0bGUoKVwiXG4gICAgICAgICAgICAgICAgW2ljb25CdXR0b25NZW51VG9wUGFkZGluZ109XCJzdG9yZS5zaWRlTmF2SWNvbkJ1dHRvbk1lbnVUb3BQYWRkaW5nKClcIlxuICAgICAgICAgICAgICAgIChhY3Rpb24pPVwiZGlzcGF0Y2goJGV2ZW50KVwiIFxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHJvdXRlci1vdXRsZXQgY29udGVudHMvPlxuICAgICAgICAgICAgICA8L2ZyYW1lcy1zaWRlLW5hdj5cbiAgICAgICAgICAgIDwvZnJhbWVzLWJyZWFkY3J1bWItbmF2YmFyPlxuICAgICAgICAgICAgPGRpdiBkcmF3ZXIgc3R5bGU9XCJoZWlnaHQ6IDEwMCU7XCI+XG4gICAgICAgICAgICAgIDxyb3V0ZXItb3V0bGV0IFtuYW1lXT1cInN0b3JlLnNpZGVBcHBPdXRsZXROYW1lKClcIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9mcmFtZXMtZHJhd2VyPlxuICAgICAgICA8L2ZyYW1lcy1lbnRyYW5jZT5cbiAgICAgIDwvZnJhbWVzLWZhYj5cbiAgICA8L2ZyYW1lcy1wcm9ncmVzcy1iYXI+XG4gIDwvZnJhbWVzLWxvYWRpbmc+XG4gIGAsXG4gIHN0eWxlVXJsOiAnLi9hcHAuZnJhbWUuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0RGlyZWN0aXZlczogW1xuICAgIEFwcEZyYW1lU3RvcmUsXG4gIF0sXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmlzLWVudHJhbmNlXSc6ICdzdG9yZS5pc0VudHJhbmNlKCknLFxuICB9XG59KVxuZXhwb3J0IGNsYXNzIEFwcEZyYW1lIGV4dGVuZHMgTmdBdG9taWNDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgc3RvcmUgPSBpbmplY3QoQXBwRnJhbWVTdG9yZSk7XG4gIHJlYWRvbmx5IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuXG4gIHByb3RlY3RlZCBpc1BsYXRmb3JtU2VydmVyKCkge1xuICAgIHJldHVybiBpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNQbGF0Zm9ybUJyb3dzZXIoKSB7XG4gICAgcmV0dXJuIGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbXBvbmVudHMtZnJhbWVzLWFwcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tcG9uZW50cy9zcmMvbGliL2ZyYW1lcy9hcHAvbmctYXRvbWljLWNvbXBvbmVudHMtZnJhbWVzLWFwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-components-frames-app.mjs","sources":["../tmp-esm2022/frames/app/app.frame.js","../tmp-esm2022/frames/app/ng-atomic-components-frames-app.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, PLATFORM_ID, computed, effect, input } from '@angular/core';\nimport { Directive, inject } from '@angular/core';\nimport { ActivatedRoute, RouterOutlet } from '@angular/router';\nimport { LoadingFrame } from '@ng-atomic/components/frames/loading';\nimport { SideNavFrame, SideNavFrameStore } from '@ng-atomic/components/frames/side-nav';\nimport { EntranceFrame } from '@ng-atomic/components/frames/entrance';\nimport { InjectableComponent, NgAtomicComponent, _computed, applyToInput, createAction, provideEffect } from '@ng-atomic/core';\nimport { FormBuilder } from '@angular/forms';\nimport { makeDI, NavActionId } from '@ng-atomic/common/services/ui';\nimport { isPlatformBrowser, isPlatformServer } from '@angular/common';\nimport { DrawerFrame } from '@ng-atomic/components/frames/drawer';\nimport { FabFrame } from '@ng-atomic/components/frames/fab';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { SideAppService } from '@ng-atomic/common/services/side-app';\nimport { AuthService } from '@ng-atomic/common/services/auth';\nimport { RootPropertyService } from '@ng-atomic/common/services/root-property';\nimport { makeInitializerConfig } from '@ng-atomic/common/services/initializer';\nimport { injectHasNext, injectPrimaryPaths } from '@ng-atomic/common/utils';\nimport { ProgressBarFrame } from \"@ng-atomic/components/frames/progress-bar\";\nimport { merge } from 'lodash-es';\nimport { BreadcrumbNavbarFrame } from '@ng-atomic/components/frames/breadcrumb-navbar';\nimport * as i0 from \"@angular/core\";\nvar ActionId;\n(function (ActionId) {\n ActionId[\"SIGN_IN_WITH_GOOGLE\"] = \"[@ng-atomic/components:frames/app] Sign In With Google\";\n ActionId[\"SIGN_IN_WITH_TWITTER\"] = \"[@ng-atomic/components:frames/app] Sign In With Twitter\";\n ActionId[\"SIGN_IN_WITH_MICROSOFT\"] = \"[@ng-atomic/components:frames/app] Sign In With Microsoft\";\n ActionId[\"SIGN_IN_WITH_EMAIL\"] = \"[@ng-atomic/components:frames/app] Sign In With Email\";\n ActionId[\"SIGN_UP_WITH_EMAIL\"] = \"[@ng-atomic/components:frames/app] Sign Up With Email\";\n ActionId[\"BACK\"] = \"[@ng-atomic/components:frames/app] Back\";\n ActionId[\"NAVIGATE\"] = \"[@ng-atomic/components:frames/app] Navigate\";\n ActionId[\"SIGN_OUT\"] = \"[@ng-atomic/components:frames/app] Sign Out\";\n ActionId[\"NAVIGATE_SIDE_APP\"] = \"[@ng-atomic/components:frames/app] Navigate Side App\";\n ActionId[\"OPEN_SIDE_APP\"] = \"[@ng-atomic/components:frames/app] Open Side App\";\n})(ActionId || (ActionId = {}));\nexport function createNavigateAction(commands, extras = {}, meta = {}) {\n return merge({\n id: AppFrameStore.ActionId.NAVIGATE,\n name: 'Navigate',\n icon: 'open_in_new',\n payload: { commands, extras },\n }, meta);\n}\nexport const buildNavigationAction = createNavigateAction;\nexport class AppFrameStore extends InjectableComponent {\n static { this.ActionId = ActionId; }\n static { this.DI = makeDI(AppFrameStore, () => {\n return (context) => ({\n fabActions: [],\n fabHide: true,\n isEntrance: true,\n isLoading: false,\n isProgress: false,\n sideAppOpened: false,\n title: 'title',\n form: inject(FormBuilder).group({}),\n entranceActions: [\n { id: ActionId.SIGN_IN_WITH_GOOGLE, name: 'Googleでサインイン', icon: '' },\n ],\n sideNavActions: [\n { id: ActionId.SIGN_OUT, name: 'ログアウト', icon: 'exit_to_app' },\n ],\n sideNavBottomActions: [],\n sideNavMode: 'collapsed',\n sideNavMenuType: SideNavFrameStore.getMenuType(context),\n sideNavMenuTitle: undefined,\n sideNavIconButtonMenuTopPadding: '0px',\n sideAppOutletName: 'side',\n sideAppWidth: 'var(--page-width-lv1)',\n sideAppResizable: true,\n breadcrumbItems: [],\n appBar: false,\n });\n }, ['components', 'frames', 'app']); }\n static { this.provideAppServiceConfig = () => AppFrameStore.DI.Config.provide(() => {\n const app = inject(AppService);\n const fabHide = computed(() => app.sideApp.opened());\n return (config) => ({\n ...config,\n isLoading: app.loading.isLoading(),\n isProgress: app.loading.isProgress(),\n sideNavMode: app.sideNavMode.sideNavMode(),\n sideAppOpened: app.sideApp.opened(),\n fabActions: app.fab.actions(),\n fabHide: fabHide(),\n });\n }); }\n static provideIconButtonMenuAsDefaultConfig() {\n return [\n RootPropertyService.Config.provide(() => {\n const getProps = (context) => {\n switch (context.breakpoint) {\n case 'xSmall': return { '--menu-width': '220px' };\n case 'small':\n case 'medium':\n case 'large':\n case 'xLarge': return { '--menu-width': '64px' };\n }\n };\n return (config, context) => ({ ...config, ...getProps(context) });\n }),\n AppFrameStore.DI.Config.provide(() => {\n const getMenuType = (context) => {\n switch (context.breakpoint) {\n case 'xSmall': return 'menu';\n default: return 'icon-button-menu';\n }\n };\n return (config, context) => ({\n ...config,\n sideNavMenuType: getMenuType(context),\n });\n })\n ];\n }\n static { this.Initializer = makeInitializerConfig(AppFrameStore); }\n static { this.provideInitializer = AppFrameStore.Initializer.provide; }\n static provideExpandSideAppOnInit() {\n return AppFrameStore.Initializer.provide(() => {\n inject(SideAppService).expand();\n });\n }\n static provideSideNavActionsInitializer(actionsFactory) {\n return AppFrameStore.Initializer.provide((store) => {\n const paths = injectPrimaryPaths();\n function compare(paths, payload) {\n if (payload === undefined)\n return false;\n return payload.every((path, i) => paths?.[i] === path);\n }\n const actions = actionsFactory();\n effect(() => {\n applyToInput(store, 'sideNavActions', actions.map(action => ({\n ...action, disabled: compare(paths(), action?.payload),\n })));\n });\n });\n }\n static provideNavigateEffect() {\n return provideEffect(AppFrameStore.ActionId.NAVIGATE, () => {\n const app = inject(AppService);\n return (payload) => {\n console.debug('[AppFrameStore] payload:', payload);\n if (Array.isArray(payload)) {\n app.sideApp.collapse();\n app.router.navigate(payload).then(() => app.sideNav.collapse());\n }\n else {\n app.sideApp.collapse();\n const { commands, extras } = payload;\n console.debug('[AppFrameStore] payload:', payload);\n app.router.navigate(commands, extras ?? {}).then(() => app.sideNav.collapse());\n }\n };\n });\n }\n static provideNavigateSideAppEffect() {\n return provideEffect(AppFrameStore.ActionId.NAVIGATE_SIDE_APP, () => {\n const app = inject(AppService);\n return (payload) => {\n if (Array.isArray(payload)) {\n app.sideApp.router.navigate(payload);\n }\n else {\n const { commands, extras } = payload;\n app.sideApp.router.navigate(commands, extras ?? {});\n }\n };\n });\n }\n static provideSignOutEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_OUT, () => {\n const app = inject(AppService);\n const auth = inject(AuthService);\n return () => {\n auth.signOut().then(() => {\n app.sideNav.collapse();\n app.snackBar.open('サインアウトしました');\n });\n };\n });\n }\n static provideOpenSideAppEffect() {\n return provideEffect(AppFrameStore.ActionId.OPEN_SIDE_APP, () => {\n const app = inject(AppService);\n return () => {\n app.sideApp.expand();\n };\n });\n }\n static provideCloseSideAppEffect() {\n return provideEffect(NavActionId.CLOSE, () => {\n const app = inject(AppService);\n return () => {\n app.sideApp.collapse();\n };\n });\n }\n static provideSignUpWithEmailEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_UP_WITH_EMAIL, () => {\n const app = inject(AppService);\n const store = inject(AppFrameStore);\n const auth = inject(AuthService);\n return () => {\n const data = store.form().getRawValue();\n app.loading.await(() => {\n return auth.createUserWithEmailAndPassword(data.email, data.password).then(() => {\n app.snackBar.open('新規登録しました。');\n }).catch((error) => {\n console.error(error);\n app.snackBar.open(error.message);\n });\n });\n };\n });\n }\n static provideSignInWithEmailEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_IN_WITH_EMAIL, () => {\n const app = inject(AppService);\n const store = inject(AppFrameStore);\n const auth = inject(AuthService);\n return () => {\n const data = store.form().getRawValue();\n app.loading.await(() => {\n return auth.signInWithEmailAndPassword(data.email, data.password).then(() => {\n app.snackBar.open('ログインしました');\n }).catch((error) => {\n console.error(error);\n app.snackBar.open(error.message);\n });\n });\n };\n });\n }\n static provideSignInWithGoogleEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_IN_WITH_GOOGLE, () => {\n const app = inject(AppService);\n const auth = inject(AuthService);\n return () => {\n auth.signInWithGoogle().then(() => {\n app.snackBar.open('ログインしました');\n }).catch((error) => {\n console.error(error);\n const _message = error.message.match(/HTTP Cloud Function returned an error: (.*) \\(.*/);\n const message = _message ? JSON.parse(_message[1]).error.message : error.message;\n app.snackBar.open(message);\n });\n };\n });\n }\n static provideSignInWithTwitterEffect() {\n return provideEffect(AppFrameStore.ActionId.SIGN_IN_WITH_TWITTER, () => {\n const app = inject(AppService);\n const auth = inject(AuthService);\n return () => {\n auth.signInWithTwitter().then(() => {\n app.snackBar.open('ログインしました');\n }).catch((error) => {\n console.error(error);\n app.snackBar.open(error.message);\n });\n };\n });\n }\n static provideDefaultEffects() {\n return [\n AppFrameStore.provideNavigateEffect(),\n AppFrameStore.provideSignOutEffect(),\n AppFrameStore.provideOpenSideAppEffect(),\n AppFrameStore.provideCloseSideAppEffect(),\n AppFrameStore.provideSignUpWithEmailEffect(),\n AppFrameStore.provideSignInWithEmailEffect(),\n AppFrameStore.provideSignInWithGoogleEffect(),\n AppFrameStore.provideSignInWithTwitterEffect(),\n AppFrameStore.provideNavigateSideAppEffect(),\n ];\n }\n static provideDefault() {\n return [\n AppFrameStore.provideAppServiceConfig(),\n AppFrameStore.provideIconButtonMenuAsDefaultConfig(),\n AppFrameStore.provideDefaultEffects(),\n ];\n }\n static injectNavActionFactory() {\n const hasNext = injectHasNext();\n const route = inject(ActivatedRoute);\n const navigateActionBuilder = createAction(AppFrameStore.ActionId.NAVIGATE, undefined, {\n icon: 'open_in_new',\n });\n return (commands, name) => {\n return navigateActionBuilder.create({\n commands,\n extras: { relativeTo: route, replaceUrl: hasNext() }\n }, {\n name,\n });\n };\n }\n constructor() {\n super();\n this.config = AppFrameStore.DI.Config.inject();\n this.isLoading = input(_computed(() => this.config().isLoading));\n this.isProgress = input(_computed(() => this.config().isProgress));\n this.isEntrance = input(_computed(() => this.config().isEntrance));\n this.breadcrumbItems = input(_computed(() => this.config().breadcrumbItems));\n this.sideAppOpened = input(_computed(() => this.config().sideAppOpened));\n this.title = input(_computed(() => this.config().title));\n this.form = input(_computed(() => this.config().form));\n this.entranceActions = input(_computed(() => this.config().entranceActions));\n this.sideNavActions = input(_computed(() => this.config().sideNavActions));\n this.sideNavBottomActions = input(_computed(() => this.config().sideNavBottomActions));\n this.sideNavMode = input(_computed(() => this.config().sideNavMode));\n this.sideNavMenuType = input(_computed(() => this.config().sideNavMenuType));\n this.sideNavMenuTitle = input(_computed(() => this.config().sideNavMenuTitle));\n this.sideNavIconButtonMenuTopPadding = input(_computed(() => this.config().sideNavIconButtonMenuTopPadding));\n this.sideAppOutletName = input(_computed(() => this.config().sideAppOutletName));\n this.sideAppWidth = input(_computed(() => this.config().sideAppWidth));\n this.sideAppResizable = input(_computed(() => this.config().sideAppResizable));\n this.fabActions = input(_computed(() => this.config().fabActions));\n this.fabHide = input(_computed(() => this.config().fabHide));\n this.appBar = input(_computed(() => this.config().appBar));\n AppFrameStore.Initializer.initializeStore(this);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AppFrameStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.5\", type: AppFrameStore, isStandalone: true, selector: \"frames-app\", inputs: { isLoading: { classPropertyName: \"isLoading\", publicName: \"isLoading\", isSignal: true, isRequired: false, transformFunction: null }, isProgress: { classPropertyName: \"isProgress\", publicName: \"isProgress\", isSignal: true, isRequired: false, transformFunction: null }, isEntrance: { classPropertyName: \"isEntrance\", publicName: \"isEntrance\", isSignal: true, isRequired: false, transformFunction: null }, breadcrumbItems: { classPropertyName: \"breadcrumbItems\", publicName: \"breadcrumbItems\", isSignal: true, isRequired: false, transformFunction: null }, sideAppOpened: { classPropertyName: \"sideAppOpened\", publicName: \"sideAppOpened\", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: \"title\", publicName: \"title\", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: \"form\", publicName: \"form\", isSignal: true, isRequired: false, transformFunction: null }, entranceActions: { classPropertyName: \"entranceActions\", publicName: \"entranceActions\", isSignal: true, isRequired: false, transformFunction: null }, sideNavActions: { classPropertyName: \"sideNavActions\", publicName: \"sideNavActions\", isSignal: true, isRequired: false, transformFunction: null }, sideNavBottomActions: { classPropertyName: \"sideNavBottomActions\", publicName: \"sideNavBottomActions\", isSignal: true, isRequired: false, transformFunction: null }, sideNavMode: { classPropertyName: \"sideNavMode\", publicName: \"sideNavMode\", isSignal: true, isRequired: false, transformFunction: null }, sideNavMenuType: { classPropertyName: \"sideNavMenuType\", publicName: \"sideNavMenuType\", isSignal: true, isRequired: false, transformFunction: null }, sideNavMenuTitle: { classPropertyName: \"sideNavMenuTitle\", publicName: \"sideNavMenuTitle\", isSignal: true, isRequired: false, transformFunction: null }, sideNavIconButtonMenuTopPadding: { classPropertyName: \"sideNavIconButtonMenuTopPadding\", publicName: \"sideNavIconButtonMenuTopPadding\", isSignal: true, isRequired: false, transformFunction: null }, sideAppOutletName: { classPropertyName: \"sideAppOutletName\", publicName: \"sideAppOutletName\", isSignal: true, isRequired: false, transformFunction: null }, sideAppWidth: { classPropertyName: \"sideAppWidth\", publicName: \"sideAppWidth\", isSignal: true, isRequired: false, transformFunction: null }, sideAppResizable: { classPropertyName: \"sideAppResizable\", publicName: \"sideAppResizable\", isSignal: true, isRequired: false, transformFunction: null }, fabActions: { classPropertyName: \"fabActions\", publicName: \"fabActions\", isSignal: true, isRequired: false, transformFunction: null }, fabHide: { classPropertyName: \"fabHide\", publicName: \"fabHide\", isSignal: true, isRequired: false, transformFunction: null }, appBar: { classPropertyName: \"appBar\", publicName: \"appBar\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AppFrameStore, decorators: [{\n type: Directive,\n args: [{ standalone: true, selector: 'frames-app' }]\n }], ctorParameters: () => [] });\nexport class AppFrame extends NgAtomicComponent {\n constructor() {\n super(...arguments);\n this.store = inject(AppFrameStore);\n this.platformId = inject(PLATFORM_ID);\n }\n isPlatformServer() {\n return isPlatformServer(this.platformId);\n }\n isPlatformBrowser() {\n return isPlatformBrowser(this.platformId);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AppFrame, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.5\", type: AppFrame, isStandalone: true, selector: \"frames-app\", host: { properties: { \"class.is-entrance\": \"store.isEntrance()\" } }, usesInheritance: true, hostDirectives: [{ directive: AppFrameStore }], ngImport: i0, template: `\n @if (isPlatformBrowser()) {\n @defer {\n <templates-background injectable/>\n }\n }\n <frames-loading [isLoading]=\"store.isLoading()\">\n <frames-progress-bar\n [isProgress]=\"store.isProgress()\"\n [mode]=\"'query'\"\n >\n <frames-fab\n [actions]=\"store.fabActions()\"\n [hide]=\"store.fabHide()\"\n (action)=\"dispatch($event)\"\n >\n <frames-entrance\n [isEntrance]=\"store.isEntrance()\"\n [form]=\"store.form()\"\n [title]=\"store.title()\"\n [actions]=\"store.entranceActions()\"\n (action)=\"dispatch($event)\"\n >\n <frames-drawer\n [opened]=\"store.sideAppOpened()\"\n [position]=\"'end'\"\n [hasBackdrop]=\"false\"\n [mode]=\"'side'\"\n [width]=\"store.sideAppWidth()\"\n [resizable]=\"store.sideAppResizable()\"\n >\n <frames-breadcrumb-navbar\n [items]=\"store.breadcrumbItems()\"\n [separator]=\"'/'\"\n [isHidden]=\"!store.appBar()\"\n (action)=\"dispatch($event)\"\n contents\n >\n <frames-side-nav\n [actions]=\"store.sideNavActions()\"\n [bottomActions]=\"store.sideNavBottomActions()\"\n [mode]=\"store.sideNavMode()\"\n [menuType]=\"store.sideNavMenuType()\"\n [menuTitle]=\"store.sideNavMenuTitle()\"\n [iconButtonMenuTopPadding]=\"store.sideNavIconButtonMenuTopPadding()\"\n (action)=\"dispatch($event)\" \n >\n <router-outlet contents/>\n </frames-side-nav>\n </frames-breadcrumb-navbar>\n <div drawer style=\"height: 100%;\">\n <router-outlet [name]=\"store.sideAppOutletName()\" />\n </div>\n </frames-drawer>\n </frames-entrance>\n </frames-fab>\n </frames-progress-bar>\n </frames-loading>\n `, isInline: true, styles: [\":host{--primary-color-SCOPED-IN-frames-app-Y0HL: var(--primary-color);--on-primary-color-SCOPED-IN-frames-app-Y0HL: var(--on-primary-color);--surface-color-SCOPED-IN-frames-app-Y0HL: var(--surface-color);--on-surface-color-SCOPED-IN-frames-app-Y0HL: var(--on-surface-color);--background-color-SCOPED-IN-frames-app-Y0HL: var(--background-color);--on-background-color-SCOPED-IN-frames-app-Y0HL: var(--on-background-color);--menu-width-SCOPED-IN-frames-app-Y0HL: var(--menu-width);--page-width-lv1-SCOPED-IN-frames-app-Y0HL: var(--page-width-lv1);--menu-background-color: var(--primary-color-SCOPED-IN-frames-app-Y0HL);--menu-background-color-SCOPED-IN-frames-app-Y0HL: var(--menu-background-color);--menu-on-background-color: var(--on-primary-color-SCOPED-IN-frames-app-Y0HL);--menu-on-background-color-SCOPED-IN-frames-app-Y0HL: var(--menu-on-background-color);--menu-padding-top: 56px;--menu-padding-top-SCOPED-IN-frames-app-Y0HL: var(--menu-padding-top);--background-primary-color: var(--primary-color-SCOPED-IN-frames-app-Y0HL);--background-primary-color-SCOPED-IN-frames-app-Y0HL: var(--background-primary-color);--background-on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-Y0HL);--background-on-primary-color-SCOPED-IN-frames-app-Y0HL: var(--background-on-primary-color);--background-background-color: var(--background-color-SCOPED-IN-frames-app-Y0HL);--background-background-color-SCOPED-IN-frames-app-Y0HL: var(--background-background-color);--side-app-background-color-SCOPED-IN-frames-app-Y0HL: var(--side-app-background-color);--loading-primary-color: var(--primary-color-SCOPED-IN-frames-app-Y0HL);--loading-primary-color-SCOPED-IN-frames-app-Y0HL: var(--loading-primary-color);--loading-z-index: 1000;--loading-z-index-SCOPED-IN-frames-app-Y0HL: var(--loading-z-index)}:host{display:block;width:100%;height:100%;position:fixed;color:var(--primary-color-SCOPED-IN-frames-app-Y0HL);touch-action:none}:host *{--primary-color: var(--primary-color-SCOPED-IN-frames-app-Y0HL);--on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-Y0HL);--surface-color: var(--surface-color-SCOPED-IN-frames-app-Y0HL);--on-surface-color: var(--on-surface-color-SCOPED-IN-frames-app-Y0HL);--background-color: var(--background-color-SCOPED-IN-frames-app-Y0HL);--on-background-color: var(--on-background-color-SCOPED-IN-frames-app-Y0HL);--menu-background-color: var(--menu-background-color-SCOPED-IN-frames-app-Y0HL);--menu-on-background-color: var(--menu-on-background-color-SCOPED-IN-frames-app-Y0HL)}:host frames-drawer{opacity:1;--background-color: var(--side-app-background-color-SCOPED-IN-frames-app-Y0HL)}:host frames-side-nav{color:#000;--menu-width: var(--menu-width-SCOPED-IN-frames-app-Y0HL)}:host frames-loading{--primary-color: var(--loading-primary-color-SCOPED-IN-frames-app-Y0HL);opacity:.9}:host templates-background{--primary-color: var(--background-primary-color-SCOPED-IN-frames-app-Y0HL);--on-primary-color: var(--background-on-primary-color-SCOPED-IN-frames-app-Y0HL);--background-color: var(--background-background-color-SCOPED-IN-frames-app-Y0HL);position:absolute;top:0;left:0}:host frames-side-nav .side-app{position:relative;width:var(--page-width-lv1-SCOPED-IN-frames-app-Y0HL);height:100%}:host.is-entrance frames-drawer{opacity:1}:host.is-entrance frames-drawer mat-drawer[style*=\\\"100%\\\"]+mat-drawer-content{margin-right:0!important}:host.is-entrance frames-side-nav{display:none}frames-drawer mat-drawer[style*=\\\"calc(100%\\\"]+mat-drawer-content{margin-right:0!important}\\n\"], dependencies: [{ kind: \"component\", type: FabFrame, selector: \"frames-fab\" }, { kind: \"component\", type: LoadingFrame, selector: \"frames-loading\" }, { kind: \"component\", type: SideNavFrame, selector: \"frames-side-nav\" }, { kind: \"directive\", type: RouterOutlet, selector: \"router-outlet\", inputs: [\"name\", \"routerOutletData\"], outputs: [\"activate\", \"deactivate\", \"attach\", \"detach\"], exportAs: [\"outlet\"] }, { kind: \"component\", type: EntranceFrame, selector: \"frames-entrance\" }, { kind: \"component\", type: DrawerFrame, selector: \"frames-drawer\" }, { kind: \"component\", type: ProgressBarFrame, selector: \"frames-progress-bar\" }, { kind: \"component\", type: BreadcrumbNavbarFrame, selector: \"frames-breadcrumb-navbar\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [import(\"@ng-atomic/components/templates/background\").then(m => m.BackgroundTemplateStore)]] }); }\n}\ni0.ɵɵngDeclareClassMetadataAsync({ minVersion: \"18.0.0\", version: \"20.0.5\", ngImport: i0, type: AppFrame, resolveDeferredDeps: () => [import(\"@ng-atomic/components/templates/background\").then(m => m.BackgroundTemplateStore)], resolveMetadata: BackgroundTemplateStore => ({ decorators: [{\n type: Component,\n args: [{ selector: 'frames-app', imports: [\n FabFrame,\n LoadingFrame,\n SideNavFrame,\n RouterOutlet,\n EntranceFrame,\n DrawerFrame,\n BackgroundTemplateStore,\n ProgressBarFrame,\n BreadcrumbNavbarFrame,\n ], template: `\n @if (isPlatformBrowser()) {\n @defer {\n <templates-background injectable/>\n }\n }\n <frames-loading [isLoading]=\"store.isLoading()\">\n <frames-progress-bar\n [isProgress]=\"store.isProgress()\"\n [mode]=\"'query'\"\n >\n <frames-fab\n [actions]=\"store.fabActions()\"\n [hide]=\"store.fabHide()\"\n (action)=\"dispatch($event)\"\n >\n <frames-entrance\n [isEntrance]=\"store.isEntrance()\"\n [form]=\"store.form()\"\n [title]=\"store.title()\"\n [actions]=\"store.entranceActions()\"\n (action)=\"dispatch($event)\"\n >\n <frames-drawer\n [opened]=\"store.sideAppOpened()\"\n [position]=\"'end'\"\n [hasBackdrop]=\"false\"\n [mode]=\"'side'\"\n [width]=\"store.sideAppWidth()\"\n [resizable]=\"store.sideAppResizable()\"\n >\n <frames-breadcrumb-navbar\n [items]=\"store.breadcrumbItems()\"\n [separator]=\"'/'\"\n [isHidden]=\"!store.appBar()\"\n (action)=\"dispatch($event)\"\n contents\n >\n <frames-side-nav\n [actions]=\"store.sideNavActions()\"\n [bottomActions]=\"store.sideNavBottomActions()\"\n [mode]=\"store.sideNavMode()\"\n [menuType]=\"store.sideNavMenuType()\"\n [menuTitle]=\"store.sideNavMenuTitle()\"\n [iconButtonMenuTopPadding]=\"store.sideNavIconButtonMenuTopPadding()\"\n (action)=\"dispatch($event)\" \n >\n <router-outlet contents/>\n </frames-side-nav>\n </frames-breadcrumb-navbar>\n <div drawer style=\"height: 100%;\">\n <router-outlet [name]=\"store.sideAppOutletName()\" />\n </div>\n </frames-drawer>\n </frames-entrance>\n </frames-fab>\n </frames-progress-bar>\n </frames-loading>\n `, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [\n AppFrameStore,\n ], host: {\n '[class.is-entrance]': 'store.isEntrance()',\n }, styles: [\":host{--primary-color-SCOPED-IN-frames-app-Y0HL: var(--primary-color);--on-primary-color-SCOPED-IN-frames-app-Y0HL: var(--on-primary-color);--surface-color-SCOPED-IN-frames-app-Y0HL: var(--surface-color);--on-surface-color-SCOPED-IN-frames-app-Y0HL: var(--on-surface-color);--background-color-SCOPED-IN-frames-app-Y0HL: var(--background-color);--on-background-color-SCOPED-IN-frames-app-Y0HL: var(--on-background-color);--menu-width-SCOPED-IN-frames-app-Y0HL: var(--menu-width);--page-width-lv1-SCOPED-IN-frames-app-Y0HL: var(--page-width-lv1);--menu-background-color: var(--primary-color-SCOPED-IN-frames-app-Y0HL);--menu-background-color-SCOPED-IN-frames-app-Y0HL: var(--menu-background-color);--menu-on-background-color: var(--on-primary-color-SCOPED-IN-frames-app-Y0HL);--menu-on-background-color-SCOPED-IN-frames-app-Y0HL: var(--menu-on-background-color);--menu-padding-top: 56px;--menu-padding-top-SCOPED-IN-frames-app-Y0HL: var(--menu-padding-top);--background-primary-color: var(--primary-color-SCOPED-IN-frames-app-Y0HL);--background-primary-color-SCOPED-IN-frames-app-Y0HL: var(--background-primary-color);--background-on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-Y0HL);--background-on-primary-color-SCOPED-IN-frames-app-Y0HL: var(--background-on-primary-color);--background-background-color: var(--background-color-SCOPED-IN-frames-app-Y0HL);--background-background-color-SCOPED-IN-frames-app-Y0HL: var(--background-background-color);--side-app-background-color-SCOPED-IN-frames-app-Y0HL: var(--side-app-background-color);--loading-primary-color: var(--primary-color-SCOPED-IN-frames-app-Y0HL);--loading-primary-color-SCOPED-IN-frames-app-Y0HL: var(--loading-primary-color);--loading-z-index: 1000;--loading-z-index-SCOPED-IN-frames-app-Y0HL: var(--loading-z-index)}:host{display:block;width:100%;height:100%;position:fixed;color:var(--primary-color-SCOPED-IN-frames-app-Y0HL);touch-action:none}:host *{--primary-color: var(--primary-color-SCOPED-IN-frames-app-Y0HL);--on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-Y0HL);--surface-color: var(--surface-color-SCOPED-IN-frames-app-Y0HL);--on-surface-color: var(--on-surface-color-SCOPED-IN-frames-app-Y0HL);--background-color: var(--background-color-SCOPED-IN-frames-app-Y0HL);--on-background-color: var(--on-background-color-SCOPED-IN-frames-app-Y0HL);--menu-background-color: var(--menu-background-color-SCOPED-IN-frames-app-Y0HL);--menu-on-background-color: var(--menu-on-background-color-SCOPED-IN-frames-app-Y0HL)}:host frames-drawer{opacity:1;--background-color: var(--side-app-background-color-SCOPED-IN-frames-app-Y0HL)}:host frames-side-nav{color:#000;--menu-width: var(--menu-width-SCOPED-IN-frames-app-Y0HL)}:host frames-loading{--primary-color: var(--loading-primary-color-SCOPED-IN-frames-app-Y0HL);opacity:.9}:host templates-background{--primary-color: var(--background-primary-color-SCOPED-IN-frames-app-Y0HL);--on-primary-color: var(--background-on-primary-color-SCOPED-IN-frames-app-Y0HL);--background-color: var(--background-background-color-SCOPED-IN-frames-app-Y0HL);position:absolute;top:0;left:0}:host frames-side-nav .side-app{position:relative;width:var(--page-width-lv1-SCOPED-IN-frames-app-Y0HL);height:100%}:host.is-entrance frames-drawer{opacity:1}:host.is-entrance frames-drawer mat-drawer[style*=\\\"100%\\\"]+mat-drawer-content{margin-right:0!important}:host.is-entrance frames-side-nav{display:none}frames-drawer mat-drawer[style*=\\\"calc(100%\\\"]+mat-drawer-content{margin-right:0!important}\\n\"] }]\n }], ctorParameters: null, propDecorators: null }) });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmZyYW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21wb25lbnRzL3NyYy9saWIvZnJhbWVzL2FwcC9hcHAuZnJhbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBb0IsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdEUsT0FBTyxFQUFtQixtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoSixPQUFPLEVBQW1CLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFhLE1BQU0sK0JBQStCLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FB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O3NCQWpGcEIsU0FBUzttQ0FDRSxZQUFZLFdBQ2I7NEJBQ1AsUUFBUTs0QkFDUixZQUFZOzRCQUNaLFlBQVk7NEJBQ1osWUFBWTs0QkFDWixhQUFhOzRCQUNiLFdBQVc7NEJBQ1gsdUJBQXVCOzRCQUN2QixnQkFBZ0I7NEJBQ2hCLHFCQUFxQjt5QkFDdEIsWUFDUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBEVCxtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTSxrQkFDL0I7NEJBQ2QsYUFBYTt5QkFDZCxRQUNLOzRCQUNKLHFCQUFxQixFQUFFLG9CQUFvQjt5QkFDNUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBQTEFURk9STV9JRCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkV4dHJhcywgUm91dGVyT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IExvYWRpbmdGcmFtZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tcG9uZW50cy9mcmFtZXMvbG9hZGluZyc7XG5pbXBvcnQgeyBTaWRlTmF2RnJhbWUsIFNpZGVOYXZGcmFtZVN0b3JlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21wb25lbnRzL2ZyYW1lcy9zaWRlLW5hdic7XG5pbXBvcnQgeyBFbnRyYW5jZUZyYW1lIH0gZnJvbSAnQG5nLWF0b21pYy9jb21wb25lbnRzL2ZyYW1lcy9lbnRyYW5jZSc7XG5pbXBvcnQgeyBBY3Rpb24sIEFjdGlvbnMsIEluamVjdGFibGVDb21wb25lbnQsIE5nQXRvbWljQ29tcG9uZW50LCBfY29tcHV0ZWQsIGFwcGx5VG9JbnB1dCwgY3JlYXRlQWN0aW9uLCBwcm92aWRlRWZmZWN0IH0gZnJvbSAnQG5nLWF0b21pYy9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBtYWtlREksIE5hdkFjdGlvbklkLCBVSUNvbnRleHQgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy91aSc7XG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciwgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kVGVtcGxhdGVTdG9yZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tcG9uZW50cy90ZW1wbGF0ZXMvYmFja2dyb3VuZCc7XG5pbXBvcnQgeyBEcmF3ZXJGcmFtZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tcG9uZW50cy9mcmFtZXMvZHJhd2VyJztcbmltcG9ydCB7IEZhYkZyYW1lIH0gZnJvbSAnQG5nLWF0b21pYy9jb21wb25lbnRzL2ZyYW1lcy9mYWInO1xuaW1wb3J0IHsgQXBwU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL2FwcCc7XG5pbXBvcnQgeyBTaWRlQXBwU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL3NpZGUtYXBwJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vc2VydmljZXMvYXV0aCc7XG5pbXBvcnQgeyBSb290UHJvcGVydHlTZXJ2aWNlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vc2VydmljZXMvcm9vdC1wcm9wZXJ0eSc7XG5pbXBvcnQgeyBtYWtlSW5pdGlhbGl6ZXJDb25maWcgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy9pbml0aWFsaXplcic7XG5pbXBvcnQgeyBpbmplY3RIYXNOZXh0LCBpbmplY3RQcmltYXJ5UGF0aHMgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi91dGlscyc7XG5pbXBvcnQgeyBQcm9ncmVzc0JhckZyYW1lIH0gZnJvbSBcIkBuZy1hdG9taWMvY29tcG9uZW50cy9mcmFtZXMvcHJvZ3Jlc3MtYmFyXCI7XG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCcmVhZGNydW1iTmF2YmFyRnJhbWUgfSBmcm9tICdAbmctYXRvbWljL2NvbXBvbmVudHMvZnJhbWVzL2JyZWFkY3J1bWItbmF2YmFyJztcblxuZW51bSBBY3Rpb25JZCB7XG4gIFNJR05fSU5fV0lUSF9HT09HTEUgPSAnW0BuZy1hdG9taWMvY29tcG9uZW50czpmcmFtZXMvYXBwXSBTaWduIEluIFdpdGggR29vZ2xlJyxcbiAgU0lHTl9JTl9XSVRIX1RXSVRURVIgPSAnW0BuZy1hdG9taWMvY29tcG9uZW50czpmcmFtZXMvYXBwXSBTaWduIEluIFdpdGggVHdpdHRlcicsXG4gIFNJR05fSU5fV0lUSF9NSUNST1NPRlQgPSAnW0BuZy1hdG9taWMvY29tcG9uZW50czpmcmFtZXMvYXBwXSBTaWduIEluIFdpdGggTWljcm9zb2Z0JyxcbiAgU0lHTl9JTl9XSVRIX0VNQUlMID0gJ1tAbmctYXRvbWljL2NvbXBvbmVudHM6ZnJhbWVzL2FwcF0gU2lnbiBJbiBXaXRoIEVtYWlsJyxcbiAgU0lHTl9VUF9XSVRIX0VNQUlMID0gJ1tAbmctYXRvbWljL2NvbXBvbmVudHM6ZnJhbWVzL2FwcF0gU2lnbiBVcCBXaXRoIEVtYWlsJyxcbiAgQkFDSyA9ICdbQG5nLWF0b21pYy9jb21wb25lbnRzOmZyYW1lcy9hcHBdIEJhY2snLFxuICBOQVZJR0FURSA9ICdbQG5nLWF0b21pYy9jb21wb25lbnRzOmZyYW1lcy9hcHBdIE5hdmlnYXRlJyxcbiAgU0lHTl9PVVQgPSAnW0BuZy1hdG9taWMvY29tcG9uZW50czpmcmFtZXMvYXBwXSBTaWduIE91dCcsXG4gIE5BVklHQVRFX1NJREVfQVBQID0gJ1tAbmctYXRvbWljL2NvbXBvbmVudHM6ZnJhbWVzL2FwcF0gTmF2aWdhdGUgU2lkZSBBcHAnLFxuICBPUEVOX1NJREVfQVBQID0gJ1tAbmctYXRvbWljL2NvbXBvbmVudHM6ZnJhbWVzL2FwcF0gT3BlbiBTaWRlIEFwcCcsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOYXZpZ2F0ZUFjdGlvbihcbiAgY29tbWFuZHM6IGFueVtdLFxuICBleHRyYXM6IE5hdmlnYXRpb25FeHRyYXMgPSB7fSxcbiAgbWV0YTogUGFydGlhbDxBY3Rpb24+ID0ge30sXG4pOiBBY3Rpb24ge1xuICByZXR1cm4gbWVyZ2Uoe1xuICAgIGlkOiBBcHBGcmFtZVN0b3JlLkFjdGlvbklkLk5BVklHQVRFLFxuICAgIG5hbWU6ICdOYXZpZ2F0ZScsXG4gICAgaWNvbjogJ29wZW5faW5fbmV3JyxcbiAgICBwYXlsb2FkOiB7IGNvbW1hbmRzLCBleHRyYXMgfSxcbiAgfSwgbWV0YSk7XG59XG5cbmV4cG9ydCBjb25zdCBidWlsZE5hdmlnYXRpb25BY3Rpb24gPSBjcmVhdGVOYXZpZ2F0ZUFjdGlvbjtcblxuQERpcmVjdGl2ZSh7IHN0YW5kYWxvbmU6IHRydWUsIHNlbGVjdG9yOiAnZnJhbWVzLWFwcCcgfSlcbmV4cG9ydCBjbGFzcyBBcHBGcmFtZVN0b3JlIGV4dGVuZHMgSW5qZWN0YWJsZUNvbXBvbmVudCB7XG4gIHN0YXRpYyByZWFkb25seSBBY3Rpb25JZCA9IEFjdGlvbklkO1xuICBzdGF0aWMgcmVhZG9ubHkgREkgPSBtYWtlREkoQXBwRnJhbWVTdG9yZSwgKCkgPT4ge1xuICAgIHJldHVybiAoY29udGV4dCkgPT4gKHtcbiAgICAgIGZhYkFjdGlvbnM6IFtdLFxuICAgICAgZmFiSGlkZTogdHJ1ZSxcbiAgICAgIGlzRW50cmFuY2U6IHRydWUsXG4gICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgaXNQcm9ncmVzczogZmFsc2UsXG4gICAgICBzaWRlQXBwT3BlbmVkOiBmYWxzZSxcbiAgICAgIHRpdGxlOiAndGl0bGUnLFxuICAgICAgZm9ybTogaW5qZWN0KEZvcm1CdWlsZGVyKS5ncm91cCh7fSkgYXMgQWJzdHJhY3RDb250cm9sLFxuICAgICAgZW50cmFuY2VBY3Rpb25zOiBbXG4gICAgICAgIHsgaWQ6IEFjdGlvbklkLlNJR05fSU5fV0lUSF9HT09HTEUsIG5hbWU6ICdHb29nbGXjgafjgrXjgqTjg7PjgqTjg7MnLCBpY29uOiAnJyB9LFxuICAgICAgXSBhcyBBY3Rpb25zLFxuICAgICAgc2lkZU5hdkFjdGlvbnM6IFtcbiAgICAgICAgeyBpZDogQWN0aW9uSWQuU0lHTl9PVVQsIG5hbWU6ICfjg63jgrDjgqLjgqbjg4gnLCBpY29uOiAnZXhpdF90b19hcHAnIH0sXG4gICAgICBdIGFzIEFjdGlvbnMsXG4gICAgICBzaWRlTmF2Qm90dG9tQWN0aW9uczogW10sXG4gICAgICBzaWRlTmF2TW9kZTogJ2NvbGxhcHNlZCcgYXMgJ2V4cGFuZGVkJyB8ICdjb2xsYXBzZWQnLFxuICAgICAgc2lkZU5hdk1lbnVUeXBlOiBTaWRlTmF2RnJhbWVTdG9yZS5nZXRNZW51VHlwZShjb250ZXh0KSxcbiAgICAgIHNpZGVOYXZNZW51VGl0bGU6IHVuZGVmaW5lZCBhcyBzdHJpbmcsXG4gICAgICBzaWRlTmF2SWNvbkJ1dHRvbk1lbnVUb3BQYWRkaW5nOiAnMHB4JyxcbiAgICAgIHNpZGVBcHBPdXRsZXROYW1lOiAnc2lkZScsXG4gICAgICBzaWRlQXBwV2lkdGg6ICd2YXIoLS1wYWdlLXdpZHRoLWx2MSknIGFzIHN0cmluZyxcbiAgICAgIHNpZGVBcHBSZXNpemFibGU6IHRydWUsXG4gICAgICBicmVhZGNydW1iSXRlbXM6IFtdLFxuICAgICAgYXBwQmFyOiBmYWxzZSxcbiAgICB9KTtcbiAgfSwgWydjb21wb25lbnRzJywgJ2ZyYW1lcycsICdhcHAnXSk7XG4gIHN0YXRpYyBwcm92aWRlQXBwU2VydmljZUNvbmZpZyA9ICgpID0+IEFwcEZyYW1lU3RvcmUuREkuQ29uZmlnLnByb3ZpZGUoKCkgPT4ge1xuICAgIGNvbnN0IGFwcCA9IGluamVjdChBcHBTZXJ2aWNlKTtcbiAgICBjb25zdCBmYWJIaWRlID0gY29tcHV0ZWQoKCkgPT4gYXBwLnNpZGVBcHAub3BlbmVkKCkpO1xuICAgIHJldHVybiAoY29uZmlnKSA9PiAoe1xuICAgICAgLi4uY29uZmlnLFxuICAgICAgaXNMb2FkaW5nOiBhcHAubG9hZGluZy5pc0xvYWRpbmcoKSxcbiAgICAgIGlzUHJvZ3Jlc3M6IGFwcC5sb2FkaW5nLmlzUHJvZ3Jlc3MoKSxcbiAgICAgIHNpZGVOYXZNb2RlOiBhcHAuc2lkZU5hdk1vZGUuc2lkZU5hdk1vZGUoKSxcbiAgICAgIHNpZGVBcHBPcGVuZWQ6IGFwcC5zaWRlQXBwLm9wZW5lZCgpLFxuICAgICAgZmFiQWN0aW9uczogYXBwLmZhYi5hY3Rpb25zKCksXG4gICAgICBmYWJIaWRlOiBmYWJIaWRlKCksXG4gICAgfSk7XG4gIH0pO1xuICBzdGF0aWMgcHJvdmlkZUljb25CdXR0b25NZW51QXNEZWZhdWx0Q29uZmlnKCkge1xuICAgIHJldHVybiBbXG4gICAgICBSb290UHJvcGVydHlTZXJ2aWNlLkNvbmZpZy5wcm92aWRlKCgpID0+IHtcbiAgICAgICAgY29uc3QgZ2V0UHJvcHMgPSAoY29udGV4dDogVUlDb250ZXh0KSA9PiB7XG4gICAgICAgICAgc3dpdGNoIChjb250ZXh0LmJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIGNhc2UgJ3hTbWFsbCc6IHJldHVybiB7ICctLW1lbnUtd2lkdGgnOiAnMjIwcHgnIH07XG4gICAgICAgICAgICBjYXNlICdzbWFsbCc6XG4gICAgICAgICAgICBjYXNlICdtZWRpdW0nOlxuICAgICAgICAgICAgY2FzZSAnbGFyZ2UnOlxuICAgICAgICAgICAgY2FzZSAneExhcmdlJzogcmV0dXJuIHsgJy0tbWVudS13aWR0aCc6ICc2NHB4JyB9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKGNvbmZpZywgY29udGV4dCkgPT4gKHsgLi4uY29uZmlnLCAuLi5nZXRQcm9wcyhjb250ZXh0KSB9KTtcbiAgICAgIH0pLFxuICAgICAgQXBwRnJhbWVTdG9yZS5ESS5Db25maWcucHJvdmlkZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGdldE1lbnVUeXBlID0gKGNvbnRleHQ6IFVJQ29udGV4dCkgPT4ge1xuICAgICAgICAgIHN3aXRjaCAoY29udGV4dC5icmVha3BvaW50KSB7XG4gICAgICAgICAgICBjYXNlICd4U21hbGwnOiByZXR1cm4gJ21lbnUnO1xuICAgICAgICAgICAgZGVmYXVsdDogcmV0dXJuICdpY29uLWJ1dHRvbi1tZW51JztcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiAoY29uZmlnLCBjb250ZXh0KSA9PiAoe1xuICAgICAgICAgIC4uLmNvbmZpZyxcbiAgICAgICAgICBzaWRlTmF2TWVudVR5cGU6IGdldE1lbnVUeXBlKGNvbnRleHQpLFxuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgXTtcbiAgfVxuICBzdGF0aWMgSW5pdGlhbGl6ZXIgPSBtYWtlSW5pdGlhbGl6ZXJDb25maWcoQXBwRnJhbWVTdG9yZSk7XG4gIHN0YXRpYyBwcm92aWRlSW5pdGlhbGl6ZXIgPSBBcHBGcmFtZVN0b3JlLkluaXRpYWxpemVyLnByb3ZpZGU7XG4gIHN0YXRpYyBwcm92aWRlRXhwYW5kU2lkZUFwcE9uSW5pdCgpIHtcbiAgICByZXR1cm4gQXBwRnJhbWVTdG9yZS5Jbml0aWFsaXplci5wcm92aWRlKCgpID0+IHtcbiAgICAgIGluamVjdChTaWRlQXBwU2VydmljZSkuZXhwYW5kKCk7XG4gICAgfSk7XG4gIH1cbiAgc3RhdGljIHByb3ZpZGVTaWRlTmF2QWN0aW9uc0luaXRpYWxpemVyKGFjdGlvbnNGYWN0b3J5OiAoKSA9PiBBY3Rpb25bXSkge1xuICAgIHJldHVybiBBcHBGcmFtZVN0b3JlLkluaXRpYWxpemVyLnByb3ZpZGUoKHN0b3JlKSA9PiB7XG4gICAgICBjb25zdCBwYXRocyA9IGluamVjdFByaW1hcnlQYXRocygpO1xuICAgICAgZnVuY3Rpb24gY29tcGFyZShwYXRoczogc3RyaW5nW10sIHBheWxvYWQ/OiBzdHJpbmdbXSkge1xuICAgICAgICBpZiAocGF5bG9hZCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIHJldHVybiBwYXlsb2FkLmV2ZXJ5KChwYXRoLCBpKSA9PiBwYXRocz8uW2ldID09PSBwYXRoKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFjdGlvbnMgPSBhY3Rpb25zRmFjdG9yeSgpO1xuXG4gICAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgICBhcHBseVRvSW5wdXQoc3RvcmUsICdzaWRlTmF2QWN0aW9ucycsIGFjdGlvbnMubWFwKGFjdGlvbiA9PiAoe1xuICAgICAgICAgIC4uLmFjdGlvbiwgZGlzYWJsZWQ6IGNvbXBhcmUocGF0aHMoKSwgYWN0aW9uPy5wYXlsb2FkKSxcbiAgICAgICAgfSkpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG4gIHN0YXRpYyBwcm92aWRlTmF2aWdhdGVFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5OQVZJR0FURSwgKCkgPT4ge1xuICAgICAgY29uc3QgYXBwID0gaW5qZWN0KEFwcFNlcnZpY2UpO1xuICAgICAgcmV0dXJuIChwYXlsb2FkOiBzdHJpbmdbXSB8IHsgY29tbWFuZHM6IHN0cmluZ1tdLCBleHRyYXM/OiBOYXZpZ2F0aW9uRXh0cmFzIH0pID0+IHtcbiAgICAgICAgY29uc29sZS5kZWJ1ZygnW0FwcEZyYW1lU3RvcmVdIHBheWxvYWQ6JywgcGF5bG9hZCk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBheWxvYWQpKSB7XG4gICAgICAgICAgYXBwLnNpZGVBcHAuY29sbGFwc2UoKTtcbiAgICAgICAgICBhcHAucm91dGVyLm5hdmlnYXRlKHBheWxvYWQpLnRoZW4oKCkgPT4gYXBwLnNpZGVOYXYuY29sbGFwc2UoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYXBwLnNpZGVBcHAuY29sbGFwc2UoKTtcbiAgICAgICAgICBjb25zdCB7IGNvbW1hbmRzLCBleHRyYXMgfSA9IHBheWxvYWQ7XG4gICAgICAgICAgY29uc29sZS5kZWJ1ZygnW0FwcEZyYW1lU3RvcmVdIHBheWxvYWQ6JywgcGF5bG9hZCk7XG4gICAgICAgICAgYXBwLnJvdXRlci5uYXZpZ2F0ZShjb21tYW5kcywgZXh0cmFzID8/IHt9KS50aGVuKCgpID0+IGFwcC5zaWRlTmF2LmNvbGxhcHNlKCkpO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIHByb3ZpZGVOYXZpZ2F0ZVNpZGVBcHBFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5OQVZJR0FURV9TSURFX0FQUCwgKCkgPT4ge1xuICAgICAgY29uc3QgYXBwID0gaW5qZWN0KEFwcFNlcnZpY2UpO1xuICAgICAgcmV0dXJuIChwYXlsb2FkOiBzdHJpbmdbXSB8IHsgY29tbWFuZHM6IHN0cmluZ1tdLCBleHRyYXM/OiBOYXZpZ2F0aW9uRXh0cmFzICYgeyBleHBhbmRlZD86IGJvb2xlYW4gfSB9KSA9PiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBheWxvYWQpKSB7XG4gICAgICAgICAgYXBwLnNpZGVBcHAucm91dGVyLm5hdmlnYXRlKHBheWxvYWQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHsgY29tbWFuZHMsIGV4dHJhcyB9ID0gcGF5bG9hZDtcbiAgICAgICAgICBhcHAuc2lkZUFwcC5yb3V0ZXIubmF2aWdhdGUoY29tbWFuZHMsIGV4dHJhcyA/PyB7fSk7XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgcHJvdmlkZVNpZ25PdXRFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5TSUdOX09VVCwgKCkgPT4ge1xuICAgICAgY29uc3QgYXBwID0gaW5qZWN0KEFwcFNlcnZpY2UpO1xuICAgICAgY29uc3QgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBhdXRoLnNpZ25PdXQoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICBhcHAuc2lkZU5hdi5jb2xsYXBzZSgpO1xuICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKCfjgrXjgqTjg7PjgqLjgqbjg4jjgZfjgb7jgZfjgZ8nKTtcbiAgICAgICAgfSk7XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG4gIHN0YXRpYyBwcm92aWRlT3BlblNpZGVBcHBFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5PUEVOX1NJREVfQVBQLCAoKSA9PiB7XG4gICAgICBjb25zdCBhcHAgPSBpbmplY3QoQXBwU2VydmljZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBhcHAuc2lkZUFwcC5leHBhbmQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBzdGF0aWMgcHJvdmlkZUNsb3NlU2lkZUFwcEVmZmVjdCgpIHtcbiAgICByZXR1cm4gcHJvdmlkZUVmZmVjdChOYXZBY3Rpb25JZC5DTE9TRSwgKCkgPT4ge1xuICAgICAgY29uc3QgYXBwID0gaW5qZWN0KEFwcFNlcnZpY2UpO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgYXBwLnNpZGVBcHAuY29sbGFwc2UoKTtcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbiAgc3RhdGljIHByb3ZpZGVTaWduVXBXaXRoRW1haWxFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5TSUdOX1VQX1dJVEhfRU1BSUwsICgpID0+IHtcbiAgICAgIGNvbnN0IGFwcCA9IGluamVjdChBcHBTZXJ2aWNlKTtcbiAgICAgIGNvbnN0IHN0b3JlID0gaW5qZWN0KEFwcEZyYW1lU3RvcmUpO1xuICAgICAgY29uc3QgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjb25zdCBkYXRhID0gc3RvcmUuZm9ybSgpLmdldFJhd1ZhbHVlKCkgYXMgeyBlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nIH07XG4gICAgICAgIGFwcC5sb2FkaW5nLmF3YWl0KCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXV0aC5jcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQoZGF0YS5lbWFpbCwgZGF0YS5wYXNzd29yZCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICBhcHAuc25hY2tCYXIub3Blbign5paw6KaP55m76Yyy44GX44G+44GX44Gf44CCJyk7XG4gICAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKGVycm9yLm1lc3NhZ2UpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbiAgc3RhdGljIHByb3ZpZGVTaWduSW5XaXRoRW1haWxFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5TSUdOX0lOX1dJVEhfRU1BSUwsICgpID0+IHtcbiAgICAgIGNvbnN0IGFwcCA9IGluamVjdChBcHBTZXJ2aWNlKTtcbiAgICAgIGNvbnN0IHN0b3JlID0gaW5qZWN0KEFwcEZyYW1lU3RvcmUpO1xuICAgICAgY29uc3QgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjb25zdCBkYXRhID0gc3RvcmUuZm9ybSgpLmdldFJhd1ZhbHVlKCkgYXMgeyBlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nIH07XG4gICAgICAgIGFwcC5sb2FkaW5nLmF3YWl0KCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXV0aC5zaWduSW5XaXRoRW1haWxBbmRQYXNzd29yZChkYXRhLmVtYWlsLCBkYXRhLnBhc3N3b3JkKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKCfjg63jgrDjgqTjg7PjgZfjgb7jgZfjgZ8nKTtcbiAgICAgICAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgYXBwLnNuYWNrQmFyLm9wZW4oZXJyb3IubWVzc2FnZSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICBzdGF0aWMgcHJvdmlkZVNpZ25JbldpdGhHb29nbGVFZmZlY3QoKSB7XG4gICAgcmV0dXJuIHByb3ZpZGVFZmZlY3QoQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5TSUdOX0lOX1dJVEhfR09PR0xFLCAoKSA9PiB7XG4gICAgICBjb25zdCBhcHAgPSBpbmplY3QoQXBwU2VydmljZSk7XG4gICAgICBjb25zdCBhdXRoID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGF1dGguc2lnbkluV2l0aEdvb2dsZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKCfjg63jgrDjgqTjg7PjgZfjgb7jgZfjgZ8nKTtcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgICAgY29uc3QgX21lc3NhZ2UgPSBlcnJvci5tZXNzYWdlLm1hdGNoKC9IVFRQIENsb3VkIEZ1bmN0aW9uIHJldHVybmVkIGFuIGVycm9yOiAoLiopIFxcKC4qLyk7XG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9IF9tZXNzYWdlID8gSlNPTi5wYXJzZShfbWVzc2FnZVsxXSkuZXJyb3IubWVzc2FnZSA6IGVycm9yLm1lc3NhZ2U7XG4gICAgICAgICAgYXBwLnNuYWNrQmFyLm9wZW4obWVzc2FnZSk7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICBzdGF0aWMgcHJvdmlkZVNpZ25JbldpdGhUd2l0dGVyRWZmZWN0KCkge1xuICAgIHJldHVybiBwcm92aWRlRWZmZWN0KEFwcEZyYW1lU3RvcmUuQWN0aW9uSWQuU0lHTl9JTl9XSVRIX1RXSVRURVIsICgpID0+IHtcbiAgICAgIGNvbnN0IGFwcCA9IGluamVjdChBcHBTZXJ2aWNlKTtcbiAgICAgIGNvbnN0IGF1dGggPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgYXV0aC5zaWduSW5XaXRoVHdpdHRlcigpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIGFwcC5zbmFja0Jhci5vcGVuKCfjg63jgrDjgqTjg7PjgZfjgb7jgZfjgZ8nKTtcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgICAgYXBwLnNuYWNrQmFyLm9wZW4oZXJyb3IubWVzc2FnZSk7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICBzdGF0aWMgcHJvdmlkZURlZmF1bHRFZmZlY3RzKCkge1xuICAgIHJldHVybiBbXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVOYXZpZ2F0ZUVmZmVjdCgpLFxuICAgICAgQXBwRnJhbWVTdG9yZS5wcm92aWRlU2lnbk91dEVmZmVjdCgpLFxuICAgICAgQXBwRnJhbWVTdG9yZS5wcm92aWRlT3BlblNpZGVBcHBFZmZlY3QoKSxcbiAgICAgIEFwcEZyYW1lU3RvcmUucHJvdmlkZUNsb3NlU2lkZUFwcEVmZmVjdCgpLFxuICAgICAgQXBwRnJhbWVTdG9yZS5wcm92aWRlU2lnblVwV2l0aEVtYWlsRWZmZWN0KCksXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVTaWduSW5XaXRoRW1haWxFZmZlY3QoKSxcbiAgICAgIEFwcEZyYW1lU3RvcmUucHJvdmlkZVNpZ25JbldpdGhHb29nbGVFZmZlY3QoKSxcbiAgICAgIEFwcEZyYW1lU3RvcmUucHJvdmlkZVNpZ25JbldpdGhUd2l0dGVyRWZmZWN0KCksXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVOYXZpZ2F0ZVNpZGVBcHBFZmZlY3QoKSxcbiAgICBdO1xuICB9XG5cbiAgc3RhdGljIHByb3ZpZGVEZWZhdWx0KCkge1xuICAgIHJldHVybiBbXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVBcHBTZXJ2aWNlQ29uZmlnKCksXG4gICAgICBBcHBGcmFtZVN0b3JlLnByb3ZpZGVJY29uQnV0dG9uTWVudUFzRGVmYXVsdENvbmZpZygpLFxuICAgICAgQXBwRnJhbWVTdG9yZS5wcm92aWRlRGVmYXVsdEVmZmVjdHMoKSxcbiAgICBdXG4gIH1cblxuICBzdGF0aWMgaW5qZWN0TmF2QWN0aW9uRmFjdG9yeSgpIHtcbiAgICBjb25zdCBoYXNOZXh0ID0gaW5qZWN0SGFzTmV4dCgpO1xuICAgIGNvbnN0IHJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgICBjb25zdCBuYXZpZ2F0ZUFjdGlvbkJ1aWxkZXIgPSBjcmVhdGVBY3Rpb24oQXBwRnJhbWVTdG9yZS5BY3Rpb25JZC5OQVZJR0FURSwgdW5kZWZpbmVkLCB7XG4gICAgICBpY29uOiAnb3Blbl9pbl9uZXcnLFxuICAgIH0pO1xuICAgIHJldHVybiAoY29tbWFuZHM6IGFueVtdLCBuYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBuYXZpZ2F0ZUFjdGlvbkJ1aWxkZXIuY3JlYXRlKHtcbiAgICAgICAgY29tbWFuZHMsXG4gICAgICAgIGV4dHJhczogeyByZWxhdGl2ZVRvOiByb3V0ZSwgcmVwbGFjZVVybDogaGFzTmV4dCgpIH1cbiAgICAgIH0sIHtcbiAgICAgICAgbmFtZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJlYWRvbmx5IGNvbmZpZyA9IEFwcEZyYW1lU3RvcmUuREkuQ29uZmlnLmluamVjdCgpO1xuICByZWFkb25seSBpc0xvYWRpbmcgPSBpbnB1dChfY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5pc0xvYWRpbmcpKTtcbiAgcmVhZG9ubHkgaXNQcm9ncmVzcyA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLmlzUHJvZ3Jlc3MpKTtcbiAgcmVhZG9ubHkgaXNFbnRyYW5jZSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLmlzRW50cmFuY2UpKTtcbiAgcmVhZG9ubHkgYnJlYWRjcnVtYkl0ZW1zID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuYnJlYWRjcnVtYkl0ZW1zKSk7XG4gIHJlYWRvbmx5IHNpZGVBcHBPcGVuZWQgPSBpbnB1dChfY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5zaWRlQXBwT3BlbmVkKSk7XG4gIHJlYWRvbmx5IHRpdGxlID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkudGl0bGUpKTtcbiAgcmVhZG9ubHkgZm9ybSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLmZvcm0pKTtcbiAgcmVhZG9ubHkgZW50cmFuY2VBY3Rpb25zID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuZW50cmFuY2VBY3Rpb25zKSk7XG4gIHJlYWRvbmx5IHNpZGVOYXZBY3Rpb25zID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuc2lkZU5hdkFjdGlvbnMpKTtcbiAgcmVhZG9ubHkgc2lkZU5hdkJvdHRvbUFjdGlvbnMgPSBpbnB1dChfY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5zaWRlTmF2Qm90dG9tQWN0aW9ucykpO1xuICByZWFkb25seSBzaWRlTmF2TW9kZSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLnNpZGVOYXZNb2RlKSk7XG4gIHJlYWRvbmx5IHNpZGVOYXZNZW51VHlwZSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLnNpZGVOYXZNZW51VHlwZSkpO1xuICByZWFkb25seSBzaWRlTmF2TWVudVRpdGxlID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuc2lkZU5hdk1lbnVUaXRsZSkpO1xuICByZWFkb25seSBzaWRlTmF2SWNvbkJ1dHRvbk1lbnVUb3BQYWRkaW5nID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuc2lkZU5hdkljb25CdXR0b25NZW51VG9wUGFkZGluZykpO1xuICByZWFkb25seSBzaWRlQXBwT3V0bGV0TmFtZSA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLnNpZGVBcHBPdXRsZXROYW1lKSk7XG4gIHJlYWRvbmx5IHNpZGVBcHBXaWR0aCA9IGlucHV0KF9jb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLnNpZGVBcHBXaWR0aCkpO1xuICByZWFkb25seSBzaWRlQXBwUmVzaXphYmxlID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuc2lkZUFwcFJlc2l6YWJsZSkpO1xuICByZWFkb25seSBmYWJBY3Rpb25zID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuZmFiQWN0aW9ucykpO1xuICByZWFkb25seSBmYWJIaWRlID0gaW5wdXQoX2NvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCkuZmFiSGlkZSkpO1xuICByZWFkb25seSBhcHBCYXIgPSBpbnB1dChfY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5hcHBCYXIpKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIEFwcEZyYW1lU3RvcmUuSW5pdGlhbGl6ZXIuaW5pdGlhbGl6ZVN0b3JlKHRoaXMpO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZyYW1lcy1hcHAnLFxuICBpbXBvcnRzOiBbXG4gICAgRmFiRnJhbWUsXG4gICAgTG9hZGluZ0ZyYW1lLFxuICAgIFNpZGVOYXZGcmFtZSxcbiAgICBSb3V0ZXJPdXRsZXQsXG4gICAgRW50cmFuY2VGcmFtZSxcbiAgICBEcmF3ZXJGcmFtZSxcbiAgICBCYWNrZ3JvdW5kVGVtcGxhdGVTdG9yZSxcbiAgICBQcm9ncmVzc0JhckZyYW1lLFxuICAgIEJyZWFkY3J1bWJOYXZiYXJGcmFtZSxcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgQGlmIChpc1BsYXRmb3JtQnJvd3NlcigpKSB7XG4gICAgQGRlZmVyIHtcbiAgICAgIDx0ZW1wbGF0ZXMtYmFja2dyb3VuZCBpbmplY3RhYmxlLz5cbiAgICB9XG4gIH1cbiAgPGZyYW1lcy1sb2FkaW5nIFtpc0xvYWRpbmddPVwic3RvcmUuaXNMb2FkaW5nKClcIj5cbiAgICA8ZnJhbWVzLXByb2dyZXNzLWJhclxuICAgICAgW2lzUHJvZ3Jlc3NdPVwic3RvcmUuaXNQcm9ncmVzcygpXCJcbiAgICAgIFttb2RlXT1cIidxdWVyeSdcIlxuICAgID5cbiAgICAgIDxmcmFtZXMtZmFiXG4gICAgICAgIFthY3Rpb25zXT1cInN0b3JlLmZhYkFjdGlvbnMoKVwiXG4gICAgICAgIFtoaWRlXT1cInN0b3JlLmZhYkhpZGUoKVwiXG4gICAgICAgIChhY3Rpb24pPVwiZGlzcGF0Y2goJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxmcmFtZXMtZW50cmFuY2VcbiAgICAgICAgICBbaXNFbnRyYW5jZV09XCJzdG9yZS5pc0VudHJhbmNlKClcIlxuICAgICAgICAgIFtmb3JtXT1cInN0b3JlLmZvcm0oKVwiXG4gICAgICAgICAgW3RpdGxlXT1cInN0b3JlLnRpdGxlKClcIlxuICAgICAgICAgIFthY3Rpb25zXT1cInN0b3JlLmVudHJhbmNlQWN0aW9ucygpXCJcbiAgICAgICAgICAoYWN0aW9uKT1cImRpc3BhdGNoKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAgPGZyYW1lcy1kcmF3ZXJcbiAgICAgICAgICAgIFtvcGVuZWRdPVwic3RvcmUuc2lkZUFwcE9wZW5lZCgpXCJcbiAgICAgICAgICAgIFtwb3NpdGlvbl09XCInZW5kJ1wiXG4gICAgICAgICAgICBbaGFzQmFja2Ryb3BdPVwiZmFsc2VcIlxuICAgICAgICAgICAgW21vZGVdPVwiJ3NpZGUnXCJcbiAgICAgICAgICAgIFt3aWR0aF09XCJzdG9yZS5zaWRlQXBwV2lkdGgoKVwiXG4gICAgICAgICAgICBbcmVzaXphYmxlXT1cInN0b3JlLnNpZGVBcHBSZXNpemFibGUoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGZyYW1lcy1icmVhZGNydW1iLW5hdmJhclxuICAgICAgICAgICAgICBbaXRlbXNdPVwic3RvcmUuYnJlYWRjcnVtYkl0ZW1zKClcIlxuICAgICAgICAgICAgICBbc2VwYXJhdG9yXT1cIicvJ1wiXG4gICAgICAgICAgICAgIFtpc0hpZGRlbl09XCIhc3RvcmUuYXBwQmFyKClcIlxuICAgICAgICAgICAgICAoYWN0aW9uKT1cImRpc3BhdGNoKCRldmVudClcIlxuICAgICAgICAgICAgICBjb250ZW50c1xuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZnJhbWVzLXNpZGUtbmF2XG4gICAgICAgICAgICAgICAgW2FjdGlvbnNdPVwic3RvcmUuc2lkZU5hdkFjdGlvbnMoKVwiXG4gICAgICAgICAgICAgICAgW2JvdHRvbUFjdGlvbnNdPVwic3RvcmUuc2lkZU5hdkJvdHRvbUFjdGlvbnMoKVwiXG4gICAgICAgICAgICAgICAgW21vZGVdPVwic3RvcmUuc2lkZU5hdk1vZGUoKVwiXG4gICAgICAgICAgICAgICAgW21lbnVUeXBlXT1cInN0b3JlLnNpZGVOYXZNZW51VHlwZSgpXCJcbiAgICAgICAgICAgICAgICBbbWVudVRpdGxlXT1cInN0b3JlLnNpZGVOYXZNZW51VGl0bGUoKVwiXG4gICAgICAgICAgICAgICAgW2ljb25CdXR0b25NZW51VG9wUGFkZGluZ109XCJzdG9yZS5zaWRlTmF2SWNvbkJ1dHRvbk1lbnVUb3BQYWRkaW5nKClcIlxuICAgICAgICAgICAgICAgIChhY3Rpb24pPVwiZGlzcGF0Y2goJGV2ZW50KVwiIFxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHJvdXRlci1vdXRsZXQgY29udGVudHMvPlxuICAgICAgICAgICAgICA8L2ZyYW1lcy1zaWRlLW5hdj5cbiAgICAgICAgICAgIDwvZnJhbWVzLWJyZWFkY3J1bWItbmF2YmFyPlxuICAgICAgICAgICAgPGRpdiBkcmF3ZXIgc3R5bGU9XCJoZWlnaHQ6IDEwMCU7XCI+XG4gICAgICAgICAgICAgIDxyb3V0ZXItb3V0bGV0IFtuYW1lXT1cInN0b3JlLnNpZGVBcHBPdXRsZXROYW1lKClcIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9mcmFtZXMtZHJhd2VyPlxuICAgICAgICA8L2ZyYW1lcy1lbnRyYW5jZT5cbiAgICAgIDwvZnJhbWVzLWZhYj5cbiAgICA8L2ZyYW1lcy1wcm9ncmVzcy1iYXI+XG4gIDwvZnJhbWVzLWxvYWRpbmc+XG4gIGAsXG4gIHN0eWxlVXJsOiAnLi9hcHAuZnJhbWUuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0RGlyZWN0aXZlczogW1xuICAgIEFwcEZyYW1lU3RvcmUsXG4gIF0sXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmlzLWVudHJhbmNlXSc6ICdzdG9yZS5pc0VudHJhbmNlKCknLFxuICB9XG59KVxuZXhwb3J0IGNsYXNzIEFwcEZyYW1lIGV4dGVuZHMgTmdBdG9taWNDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgc3RvcmUgPSBpbmplY3QoQXBwRnJhbWVTdG9yZSk7XG4gIHJlYWRvbmx5IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuXG4gIHByb3RlY3RlZCBpc1BsYXRmb3JtU2VydmVyKCkge1xuICAgIHJldHVybiBpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNQbGF0Zm9ybUJyb3dzZXIoKSB7XG4gICAgcmV0dXJuIGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbXBvbmVudHMtZnJhbWVzLWFwcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tcG9uZW50cy9zcmMvbGliL2ZyYW1lcy9hcHAvbmctYXRvbWljLWNvbXBvbmVudHMtZnJhbWVzLWFwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ class AutoLayoutFrame {
19
19
  this.store = inject(AutoLayoutFrameStore);
20
20
  }
21
21
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: AutoLayoutFrame, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: AutoLayoutFrame, isStandalone: true, selector: "frames-auto-layout", host: { properties: { "attr.type": "store.type()" } }, hostDirectives: [{ directive: AutoLayoutFrameStore, inputs: ["type", "type"] }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{--gap: 24px;--gap-SCOPED-IN-auto-layout-QOdY: var(--gap);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-auto-layout-QOdY: var(--vertical-padding);--horizontal-padding: 0;--horizontal-padding-SCOPED-IN-auto-layout-QOdY: var(--horizontal-padding)}:host{display:flex;width:100%;height:100%;justify-content:center;align-items:center;gap:var(--gap-SCOPED-IN-auto-layout-QOdY);box-sizing:border-box;padding:var(--vertical-padding-SCOPED-IN-auto-layout-QOdY) var(--horizontal-padding-SCOPED-IN-auto-layout-QOdY)}:host[type=horizontal]{flex-direction:row}:host[type=vertical]{flex-direction:column}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: AutoLayoutFrame, isStandalone: true, selector: "frames-auto-layout", host: { properties: { "attr.type": "store.type()" } }, hostDirectives: [{ directive: AutoLayoutFrameStore, inputs: ["type", "type"] }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{--gap: 24px;--gap-SCOPED-IN-auto-layout-EN3M: var(--gap);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-auto-layout-EN3M: var(--vertical-padding);--horizontal-padding: 0;--horizontal-padding-SCOPED-IN-auto-layout-EN3M: var(--horizontal-padding)}:host{display:flex;width:100%;height:100%;justify-content:center;align-items:center;gap:var(--gap-SCOPED-IN-auto-layout-EN3M);box-sizing:border-box;padding:var(--vertical-padding-SCOPED-IN-auto-layout-EN3M) var(--horizontal-padding-SCOPED-IN-auto-layout-EN3M)}:host[type=horizontal]{flex-direction:row}:host[type=vertical]{flex-direction:column}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
23
23
  }
24
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: AutoLayoutFrame, decorators: [{
25
25
  type: Component,
@@ -32,7 +32,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
32
32
  },
33
33
  ], host: {
34
34
  '[attr.type]': 'store.type()'
35
- }, styles: [":host{--gap: 24px;--gap-SCOPED-IN-auto-layout-QOdY: var(--gap);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-auto-layout-QOdY: var(--vertical-padding);--horizontal-padding: 0;--horizontal-padding-SCOPED-IN-auto-layout-QOdY: var(--horizontal-padding)}:host{display:flex;width:100%;height:100%;justify-content:center;align-items:center;gap:var(--gap-SCOPED-IN-auto-layout-QOdY);box-sizing:border-box;padding:var(--vertical-padding-SCOPED-IN-auto-layout-QOdY) var(--horizontal-padding-SCOPED-IN-auto-layout-QOdY)}:host[type=horizontal]{flex-direction:row}:host[type=vertical]{flex-direction:column}\n"] }]
35
+ }, styles: [":host{--gap: 24px;--gap-SCOPED-IN-auto-layout-EN3M: var(--gap);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-auto-layout-EN3M: var(--vertical-padding);--horizontal-padding: 0;--horizontal-padding-SCOPED-IN-auto-layout-EN3M: var(--horizontal-padding)}:host{display:flex;width:100%;height:100%;justify-content:center;align-items:center;gap:var(--gap-SCOPED-IN-auto-layout-EN3M);box-sizing:border-box;padding:var(--vertical-padding-SCOPED-IN-auto-layout-EN3M) var(--horizontal-padding-SCOPED-IN-auto-layout-EN3M)}:host[type=horizontal]{flex-direction:row}:host[type=vertical]{flex-direction:column}\n"] }]
36
36
  }] });
37
37
 
38
38
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-frames-auto-layout.mjs","sources":["../tmp-esm2022/frames/auto-layout/auto-layout.frame.js","../tmp-esm2022/frames/auto-layout/ng-atomic-components-frames-auto-layout.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, inject, input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AutoLayoutFrameStore {\n constructor() {\n this.type = input('horizontal');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AutoLayoutFrameStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.5\", type: AutoLayoutFrameStore, isStandalone: true, inputs: { type: { classPropertyName: \"type\", publicName: \"type\", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AutoLayoutFrameStore, decorators: [{\n type: Directive,\n args: [{\n standalone: true,\n }]\n }] });\nexport class AutoLayoutFrame {\n constructor() {\n this.store = inject(AutoLayoutFrameStore);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AutoLayoutFrame, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.5\", type: AutoLayoutFrame, isStandalone: true, selector: \"frames-auto-layout\", host: { properties: { \"attr.type\": \"store.type()\" } }, hostDirectives: [{ directive: AutoLayoutFrameStore, inputs: [\"type\", \"type\"] }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [\":host{--gap: 24px;--gap-SCOPED-IN-auto-layout-QOdY: var(--gap);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-auto-layout-QOdY: var(--vertical-padding);--horizontal-padding: 0;--horizontal-padding-SCOPED-IN-auto-layout-QOdY: var(--horizontal-padding)}:host{display:flex;width:100%;height:100%;justify-content:center;align-items:center;gap:var(--gap-SCOPED-IN-auto-layout-QOdY);box-sizing:border-box;padding:var(--vertical-padding-SCOPED-IN-auto-layout-QOdY) var(--horizontal-padding-SCOPED-IN-auto-layout-QOdY)}:host[type=horizontal]{flex-direction:row}:host[type=vertical]{flex-direction:column}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AutoLayoutFrame, decorators: [{\n type: Component,\n args: [{ selector: 'frames-auto-layout', standalone: true, template: `<ng-content></ng-content>`, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [\n {\n directive: AutoLayoutFrameStore,\n inputs: [\n 'type',\n ],\n },\n ], host: {\n '[attr.type]': 'store.type()'\n }, styles: [\":host{--gap: 24px;--gap-SCOPED-IN-auto-layout-QOdY: var(--gap);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-auto-layout-QOdY: var(--vertical-padding);--horizontal-padding: 0;--horizontal-padding-SCOPED-IN-auto-layout-QOdY: var(--horizontal-padding)}:host{display:flex;width:100%;height:100%;justify-content:center;align-items:center;gap:var(--gap-SCOPED-IN-auto-layout-QOdY);box-sizing:border-box;padding:var(--vertical-padding-SCOPED-IN-auto-layout-QOdY) var(--horizontal-padding-SCOPED-IN-auto-layout-QOdY)}:host[type=horizontal]{flex-direction:row}:host[type=vertical]{flex-direction:column}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1sYXlvdXQuZnJhbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbXBvbmVudHMvc3JjL2xpYi9mcmFtZXMvYXV0by1sYXlvdXQvYXV0by1sYXlvdXQuZnJhbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLN0YsTUFBTSxPQUFPLG9CQUFvQjtJQUhqQztRQUlXLFNBQUksR0FBRyxLQUFLLENBQTRCLFlBQVksQ0FBQyxDQUFDO0tBQ2hFOzhHQUZZLG9CQUFvQjtrR0FBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQUhoQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7QUF1QkQsTUFBTSxPQUFPLGVBQWU7SUFsQjVCO1FBbUJZLFVBQUssR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztLQUNoRDs4R0FGWSxlQUFlO2tHQUFmLGVBQWUsMklBdEJmLG9CQUFvQix1REFPckIsMkJBQTJCOzsyRkFlMUIsZUFBZTtrQkFsQjNCLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksWUFDTiwyQkFBMkIsbUJBRXBCLHVCQUF1QixDQUFDLE1BQU0sa0JBQy9CO3dCQUNkOzRCQUNFLFNBQVMsRUFBRSxvQkFBb0I7NEJBQy9CLE1BQU0sRUFBRTtnQ0FDTixNQUFNOzZCQUNQO3lCQUNGO3FCQUNGLFFBQ0s7d0JBQ0osYUFBYSxFQUFFLGNBQWM7cUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERpcmVjdGl2ZSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b0xheW91dEZyYW1lU3RvcmUge1xuICByZWFkb25seSB0eXBlID0gaW5wdXQ8J2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJz4oJ2hvcml6b250YWwnKTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnJhbWVzLWF1dG8tbGF5b3V0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+YCxcbiAgc3R5bGVVcmxzOiBbJy4vYXV0by1sYXlvdXQuZnJhbWUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICB7XG4gICAgICBkaXJlY3RpdmU6IEF1dG9MYXlvdXRGcmFtZVN0b3JlLFxuICAgICAgaW5wdXRzOiBbXG4gICAgICAgICd0eXBlJyxcbiAgICAgIF0sXG4gICAgfSxcbiAgXSxcbiAgaG9zdDoge1xuICAgICdbYXR0ci50eXBlXSc6ICdzdG9yZS50eXBlKCknXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQXV0b0xheW91dEZyYW1lIHtcbiAgcHJvdGVjdGVkIHN0b3JlID0gaW5qZWN0KEF1dG9MYXlvdXRGcmFtZVN0b3JlKTtcbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbXBvbmVudHMtZnJhbWVzLWF1dG8tbGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21wb25lbnRzL3NyYy9saWIvZnJhbWVzL2F1dG8tbGF5b3V0L25nLWF0b21pYy1jb21wb25lbnRzLWZyYW1lcy1hdXRvLWxheW91dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-components-frames-auto-layout.mjs","sources":["../tmp-esm2022/frames/auto-layout/auto-layout.frame.js","../tmp-esm2022/frames/auto-layout/ng-atomic-components-frames-auto-layout.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, inject, input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AutoLayoutFrameStore {\n constructor() {\n this.type = input('horizontal');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AutoLayoutFrameStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.5\", type: AutoLayoutFrameStore, isStandalone: true, inputs: { type: { classPropertyName: \"type\", publicName: \"type\", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AutoLayoutFrameStore, decorators: [{\n type: Directive,\n args: [{\n standalone: true,\n }]\n }] });\nexport class AutoLayoutFrame {\n constructor() {\n this.store = inject(AutoLayoutFrameStore);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AutoLayoutFrame, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.5\", type: AutoLayoutFrame, isStandalone: true, selector: \"frames-auto-layout\", host: { properties: { \"attr.type\": \"store.type()\" } }, hostDirectives: [{ directive: AutoLayoutFrameStore, inputs: [\"type\", \"type\"] }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [\":host{--gap: 24px;--gap-SCOPED-IN-auto-layout-EN3M: var(--gap);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-auto-layout-EN3M: var(--vertical-padding);--horizontal-padding: 0;--horizontal-padding-SCOPED-IN-auto-layout-EN3M: var(--horizontal-padding)}:host{display:flex;width:100%;height:100%;justify-content:center;align-items:center;gap:var(--gap-SCOPED-IN-auto-layout-EN3M);box-sizing:border-box;padding:var(--vertical-padding-SCOPED-IN-auto-layout-EN3M) var(--horizontal-padding-SCOPED-IN-auto-layout-EN3M)}:host[type=horizontal]{flex-direction:row}:host[type=vertical]{flex-direction:column}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: AutoLayoutFrame, decorators: [{\n type: Component,\n args: [{ selector: 'frames-auto-layout', standalone: true, template: `<ng-content></ng-content>`, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [\n {\n directive: AutoLayoutFrameStore,\n inputs: [\n 'type',\n ],\n },\n ], host: {\n '[attr.type]': 'store.type()'\n }, styles: [\":host{--gap: 24px;--gap-SCOPED-IN-auto-layout-EN3M: var(--gap);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-auto-layout-EN3M: var(--vertical-padding);--horizontal-padding: 0;--horizontal-padding-SCOPED-IN-auto-layout-EN3M: var(--horizontal-padding)}:host{display:flex;width:100%;height:100%;justify-content:center;align-items:center;gap:var(--gap-SCOPED-IN-auto-layout-EN3M);box-sizing:border-box;padding:var(--vertical-padding-SCOPED-IN-auto-layout-EN3M) var(--horizontal-padding-SCOPED-IN-auto-layout-EN3M)}:host[type=horizontal]{flex-direction:row}:host[type=vertical]{flex-direction:column}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1sYXlvdXQuZnJhbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbXBvbmVudHMvc3JjL2xpYi9mcmFtZXMvYXV0by1sYXlvdXQvYXV0by1sYXlvdXQuZnJhbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLN0YsTUFBTSxPQUFPLG9CQUFvQjtJQUhqQztRQUlXLFNBQUksR0FBRyxLQUFLLENBQTRCLFlBQVksQ0FBQyxDQUFDO0tBQ2hFOzhHQUZZLG9CQUFvQjtrR0FBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQUhoQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7QUF1QkQsTUFBTSxPQUFPLGVBQWU7SUFsQjVCO1FBbUJZLFVBQUssR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztLQUNoRDs4R0FGWSxlQUFlO2tHQUFmLGVBQWUsMklBdEJmLG9CQUFvQix1REFPckIsMkJBQTJCOzsyRkFlMUIsZUFBZTtrQkFsQjNCLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksWUFDTiwyQkFBMkIsbUJBRXBCLHVCQUF1QixDQUFDLE1BQU0sa0JBQy9CO3dCQUNkOzRCQUNFLFNBQVMsRUFBRSxvQkFBb0I7NEJBQy9CLE1BQU0sRUFBRTtnQ0FDTixNQUFNOzZCQUNQO3lCQUNGO3FCQUNGLFFBQ0s7d0JBQ0osYUFBYSxFQUFFLGNBQWM7cUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERpcmVjdGl2ZSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b0xheW91dEZyYW1lU3RvcmUge1xuICByZWFkb25seSB0eXBlID0gaW5wdXQ8J2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJz4oJ2hvcml6b250YWwnKTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnJhbWVzLWF1dG8tbGF5b3V0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+YCxcbiAgc3R5bGVVcmxzOiBbJy4vYXV0by1sYXlvdXQuZnJhbWUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICB7XG4gICAgICBkaXJlY3RpdmU6IEF1dG9MYXlvdXRGcmFtZVN0b3JlLFxuICAgICAgaW5wdXRzOiBbXG4gICAgICAgICd0eXBlJyxcbiAgICAgIF0sXG4gICAgfSxcbiAgXSxcbiAgaG9zdDoge1xuICAgICdbYXR0ci50eXBlXSc6ICdzdG9yZS50eXBlKCknXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQXV0b0xheW91dEZyYW1lIHtcbiAgcHJvdGVjdGVkIHN0b3JlID0gaW5qZWN0KEF1dG9MYXlvdXRGcmFtZVN0b3JlKTtcbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbXBvbmVudHMtZnJhbWVzLWF1dG8tbGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21wb25lbnRzL3NyYy9saWIvZnJhbWVzL2F1dG8tbGF5b3V0L25nLWF0b21pYy1jb21wb25lbnRzLWZyYW1lcy1hdXRvLWxheW91dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
@@ -62,7 +62,7 @@ class BreadcrumbNavbarFrame extends NgAtomicComponent {
62
62
  <div class="breadcrumb-navbar-content">
63
63
  <ng-content />
64
64
  </div>
65
- `, isInline: true, styles: [":host{display:block;--primary-color: #404040;--primary-color-SCOPED-IN-navigator-xyuY: var(--primary-color);--on-primary-color: #f0f0f0;--on-primary-color-SCOPED-IN-navigator-xyuY: var(--on-primary-color);--secondary-color: #B0B0B0;--secondary-color-SCOPED-IN-navigator-xyuY: var(--secondary-color);--on-secondary-color: #f0f0f0;--on-secondary-color-SCOPED-IN-navigator-xyuY: var(--on-secondary-color);--background-color: #fff;--background-color-SCOPED-IN-navigator-xyuY: var(--background-color);--on-background-color: #404040;--on-background-color-SCOPED-IN-navigator-xyuY: var(--on-background-color)}:host{display:block;width:100%;height:100%}:host *{--primary-color: var(--primary-color-SCOPED-IN-navigator-xyuY);--on-primary-color: var(--on-primary-color-SCOPED-IN-navigator-xyuY);--secondary-color: var(--secondary-color-SCOPED-IN-navigator-xyuY);--on-secondary-color: var(--on-secondary-color-SCOPED-IN-navigator-xyuY);--background-color: var(--background-color-SCOPED-IN-navigator-xyuY);--on-background-color: var(--on-background-color-SCOPED-IN-navigator-xyuY)}:host .breadcrumb-navbar-frame{width:100%;z-index:100;background:var(--primary-color-SCOPED-IN-navigator-xyuY)}:host .breadcrumb-navbar-frame.fixed{position:fixed;top:0;left:0;right:0}:host .breadcrumb-navbar-frame ::ng-deep organisms-breadcrumb-navbar mat-toolbar{border-bottom:none}:host .breadcrumb-navbar-content{width:100%;height:100%;display:block}\n"], dependencies: [{ kind: "directive", type: BreadcrumbNavbarOrganismStore, selector: "organisms-breadcrumb-navbar", inputs: ["items", "separator", "showHome", "homeIcon", "homeLink", "showLogo", "logoHeight", "logoWidth", "endActions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
65
+ `, isInline: true, styles: [":host{display:block;--primary-color: #404040;--primary-color-SCOPED-IN-navigator-12py: var(--primary-color);--on-primary-color: #f0f0f0;--on-primary-color-SCOPED-IN-navigator-12py: var(--on-primary-color);--secondary-color: #B0B0B0;--secondary-color-SCOPED-IN-navigator-12py: var(--secondary-color);--on-secondary-color: #f0f0f0;--on-secondary-color-SCOPED-IN-navigator-12py: var(--on-secondary-color);--background-color: #fff;--background-color-SCOPED-IN-navigator-12py: var(--background-color);--on-background-color: #404040;--on-background-color-SCOPED-IN-navigator-12py: var(--on-background-color)}:host{display:block;width:100%;height:100%}:host *{--primary-color: var(--primary-color-SCOPED-IN-navigator-12py);--on-primary-color: var(--on-primary-color-SCOPED-IN-navigator-12py);--secondary-color: var(--secondary-color-SCOPED-IN-navigator-12py);--on-secondary-color: var(--on-secondary-color-SCOPED-IN-navigator-12py);--background-color: var(--background-color-SCOPED-IN-navigator-12py);--on-background-color: var(--on-background-color-SCOPED-IN-navigator-12py)}:host .breadcrumb-navbar-frame{width:100%;z-index:100;background:var(--primary-color-SCOPED-IN-navigator-12py)}:host .breadcrumb-navbar-frame.fixed{position:fixed;top:0;left:0;right:0}:host .breadcrumb-navbar-frame ::ng-deep organisms-breadcrumb-navbar mat-toolbar{border-bottom:none}:host .breadcrumb-navbar-content{width:100%;height:100%;display:block}\n"], dependencies: [{ kind: "directive", type: BreadcrumbNavbarOrganismStore, selector: "organisms-breadcrumb-navbar", inputs: ["items", "separator", "showHome", "homeIcon", "homeLink", "showLogo", "logoHeight", "logoWidth", "endActions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
66
66
  }
67
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BreadcrumbNavbarFrame, decorators: [{
68
68
  type: Component,
@@ -98,7 +98,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
98
98
  'isHidden',
99
99
  ],
100
100
  }
101
- ], styles: [":host{display:block;--primary-color: #404040;--primary-color-SCOPED-IN-navigator-xyuY: var(--primary-color);--on-primary-color: #f0f0f0;--on-primary-color-SCOPED-IN-navigator-xyuY: var(--on-primary-color);--secondary-color: #B0B0B0;--secondary-color-SCOPED-IN-navigator-xyuY: var(--secondary-color);--on-secondary-color: #f0f0f0;--on-secondary-color-SCOPED-IN-navigator-xyuY: var(--on-secondary-color);--background-color: #fff;--background-color-SCOPED-IN-navigator-xyuY: var(--background-color);--on-background-color: #404040;--on-background-color-SCOPED-IN-navigator-xyuY: var(--on-background-color)}:host{display:block;width:100%;height:100%}:host *{--primary-color: var(--primary-color-SCOPED-IN-navigator-xyuY);--on-primary-color: var(--on-primary-color-SCOPED-IN-navigator-xyuY);--secondary-color: var(--secondary-color-SCOPED-IN-navigator-xyuY);--on-secondary-color: var(--on-secondary-color-SCOPED-IN-navigator-xyuY);--background-color: var(--background-color-SCOPED-IN-navigator-xyuY);--on-background-color: var(--on-background-color-SCOPED-IN-navigator-xyuY)}:host .breadcrumb-navbar-frame{width:100%;z-index:100;background:var(--primary-color-SCOPED-IN-navigator-xyuY)}:host .breadcrumb-navbar-frame.fixed{position:fixed;top:0;left:0;right:0}:host .breadcrumb-navbar-frame ::ng-deep organisms-breadcrumb-navbar mat-toolbar{border-bottom:none}:host .breadcrumb-navbar-content{width:100%;height:100%;display:block}\n"] }]
101
+ ], styles: [":host{display:block;--primary-color: #404040;--primary-color-SCOPED-IN-navigator-12py: var(--primary-color);--on-primary-color: #f0f0f0;--on-primary-color-SCOPED-IN-navigator-12py: var(--on-primary-color);--secondary-color: #B0B0B0;--secondary-color-SCOPED-IN-navigator-12py: var(--secondary-color);--on-secondary-color: #f0f0f0;--on-secondary-color-SCOPED-IN-navigator-12py: var(--on-secondary-color);--background-color: #fff;--background-color-SCOPED-IN-navigator-12py: var(--background-color);--on-background-color: #404040;--on-background-color-SCOPED-IN-navigator-12py: var(--on-background-color)}:host{display:block;width:100%;height:100%}:host *{--primary-color: var(--primary-color-SCOPED-IN-navigator-12py);--on-primary-color: var(--on-primary-color-SCOPED-IN-navigator-12py);--secondary-color: var(--secondary-color-SCOPED-IN-navigator-12py);--on-secondary-color: var(--on-secondary-color-SCOPED-IN-navigator-12py);--background-color: var(--background-color-SCOPED-IN-navigator-12py);--on-background-color: var(--on-background-color-SCOPED-IN-navigator-12py)}:host .breadcrumb-navbar-frame{width:100%;z-index:100;background:var(--primary-color-SCOPED-IN-navigator-12py)}:host .breadcrumb-navbar-frame.fixed{position:fixed;top:0;left:0;right:0}:host .breadcrumb-navbar-frame ::ng-deep organisms-breadcrumb-navbar mat-toolbar{border-bottom:none}:host .breadcrumb-navbar-content{width:100%;height:100%;display:block}\n"] }]
102
102
  }] });
103
103
 
104
104
  /**