@finos/legend-application 13.0.6 → 13.0.8

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 (33) hide show
  1. package/lib/application/LegendApplicationConfig.d.ts +2 -1
  2. package/lib/application/LegendApplicationConfig.d.ts.map +1 -1
  3. package/lib/application/LegendApplicationConfig.js +7 -1
  4. package/lib/application/LegendApplicationConfig.js.map +1 -1
  5. package/lib/index.css +2 -2
  6. package/lib/index.css.map +1 -1
  7. package/lib/index.d.ts +1 -1
  8. package/lib/index.d.ts.map +1 -1
  9. package/lib/index.js +1 -1
  10. package/lib/index.js.map +1 -1
  11. package/lib/package.json +6 -6
  12. package/lib/stores/LayoutService.d.ts.map +1 -1
  13. package/lib/stores/LayoutService.js +9 -6
  14. package/lib/stores/LayoutService.js.map +1 -1
  15. package/lib/stores/navigation/NavigationService.d.ts +34 -14
  16. package/lib/stores/navigation/NavigationService.d.ts.map +1 -1
  17. package/lib/stores/navigation/NavigationService.js +2 -0
  18. package/lib/stores/navigation/NavigationService.js.map +1 -1
  19. package/lib/stores/navigation/WebApplicationNavigator.d.ts +16 -10
  20. package/lib/stores/navigation/WebApplicationNavigator.d.ts.map +1 -1
  21. package/lib/stores/navigation/WebApplicationNavigator.js +22 -6
  22. package/lib/stores/navigation/WebApplicationNavigator.js.map +1 -1
  23. package/lib/stores/navigation/WebApplicationRouter.d.ts +4 -1
  24. package/lib/stores/navigation/WebApplicationRouter.d.ts.map +1 -1
  25. package/lib/stores/navigation/WebApplicationRouter.js +7 -1
  26. package/lib/stores/navigation/WebApplicationRouter.js.map +1 -1
  27. package/package.json +10 -10
  28. package/src/application/LegendApplicationConfig.ts +9 -1
  29. package/src/index.ts +6 -1
  30. package/src/stores/LayoutService.ts +14 -6
  31. package/src/stores/navigation/NavigationService.ts +41 -15
  32. package/src/stores/navigation/WebApplicationNavigator.ts +47 -23
  33. package/src/stores/navigation/WebApplicationRouter.ts +22 -1
@@ -36,7 +36,7 @@ export declare abstract class LegendApplicationConfig {
36
36
  readonly appName: string;
37
37
  readonly baseUrl: string;
38
38
  readonly env: string;
39
- readonly documentationUrl: string | undefined;
39
+ readonly documentationUrl?: string | undefined;
40
40
  readonly documentationRegistryEntries: DocumentationRegistryEntry[];
41
41
  readonly keyedDocumentationEntries: KeyedDocumentationEntry[];
42
42
  readonly contextualDocEntries: ContextualDocumentationEntry[];
@@ -44,5 +44,6 @@ export declare abstract class LegendApplicationConfig {
44
44
  readonly appVersionBuildTime: string;
45
45
  readonly appVersionCommitId: string;
46
46
  constructor(input: LegendApplicationConfigurationInput<LegendApplicationConfigurationData>);
47
+ protected static resolveAbsoluteUrl(url: string): string;
47
48
  }
48
49
  //# sourceMappingURL=LegendApplicationConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LegendApplicationConfig.d.ts","sourceRoot":"","sources":["../../src/application/LegendApplicationConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,KAAK,2BAA2B,EACjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAChC,MAAM,mCAAmC,CAAC;AAE3C,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,CAAC,EAAE;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,0BAA0B,EAAE,CAAC;QACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;QACjD,iBAAiB,CAAC,EAAE,6BAA6B,CAAC;KACnD,CAAC;IAIF,UAAU,CAAC,EAAE,2BAA2B,CAAC;CAC1C;AAED,8BAAsB,uBAAuB;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAGrB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,4BAA4B,EAAE,0BAA0B,EAAE,CAAM;IACzE,QAAQ,CAAC,yBAAyB,EAAE,uBAAuB,EAAE,CAAM;IACnE,QAAQ,CAAC,oBAAoB,EAAE,4BAA4B,EAAE,CAAM;IAGnE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;gBAGlC,KAAK,EAAE,mCAAmC,CAAC,kCAAkC,CAAC;CAqCjF"}
1
+ {"version":3,"file":"LegendApplicationConfig.d.ts","sourceRoot":"","sources":["../../src/application/LegendApplicationConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,KAAK,2BAA2B,EAEjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAChC,MAAM,mCAAmC,CAAC;AAE3C,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,CAAC,EAAE;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,0BAA0B,EAAE,CAAC;QACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;QACjD,iBAAiB,CAAC,EAAE,6BAA6B,CAAC;KACnD,CAAC;IAIF,UAAU,CAAC,EAAE,2BAA2B,CAAC;CAC1C;AAED,8BAAsB,uBAAuB;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAGrB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,4BAA4B,EAAE,0BAA0B,EAAE,CAAM;IACzE,QAAQ,CAAC,yBAAyB,EAAE,uBAAuB,EAAE,CAAM;IACnE,QAAQ,CAAC,oBAAoB,EAAE,4BAA4B,EAAE,CAAM;IAGnE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;gBAGlC,KAAK,EAAE,mCAAmC,CAAC,kCAAkC,CAAC;IAsChF,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAMzD"}
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { guaranteeNonEmptyString, guaranteeNonNullable, } from '@finos/legend-shared';
16
+ import { guaranteeNonEmptyString, guaranteeNonNullable, URL_SEPARATOR, } from '@finos/legend-shared';
17
17
  import { collectKeyedDocumentationEntriesFromConfig, collectContextualDocumentationEntries, } from '../stores/DocumentationService.js';
18
18
  export class LegendApplicationConfig {
19
19
  appName;
@@ -43,5 +43,11 @@ export class LegendApplicationConfig {
43
43
  this.appVersionBuildTime = guaranteeNonNullable(input.versionData.buildTime, `Can't collect application version: 'buildTime' field is missing`);
44
44
  this.appVersionCommitId = guaranteeNonNullable(input.versionData.commitSHA, `Can't collect application version: 'commitSHA' field is missing`);
45
45
  }
46
+ static resolveAbsoluteUrl(url) {
47
+ if (url.trim().startsWith(URL_SEPARATOR)) {
48
+ return window.location.origin + url;
49
+ }
50
+ return url;
51
+ }
46
52
  }
47
53
  //# sourceMappingURL=LegendApplicationConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LegendApplicationConfig.js","sourceRoot":"","sources":["../../src/application/LegendApplicationConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GAErB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,0CAA0C,EAC1C,qCAAqC,GAMtC,MAAM,mCAAmC,CAAC;AAuB3C,MAAM,OAAgB,uBAAuB;IAClC,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,GAAG,CAAS;IAErB,gBAAgB;IACP,gBAAgB,CAAqB;IACrC,4BAA4B,GAAiC,EAAE,CAAC;IAChE,yBAAyB,GAA8B,EAAE,CAAC;IAC1D,oBAAoB,GAAmC,EAAE,CAAC;IAEnE,UAAU;IACD,UAAU,CAAS;IACnB,mBAAmB,CAAS;IAC5B,kBAAkB,CAAS;IAEpC,YACE,KAA8E;QAE9E,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,uBAAuB,CACpC,KAAK,CAAC,UAAU,CAAC,OAAO,EACxB,kEAAkE,CACnE,CAAC;QACF,IAAI,CAAC,GAAG,GAAG,uBAAuB,CAChC,KAAK,CAAC,UAAU,CAAC,GAAG,EACpB,8DAA8D,CAC/D,CAAC;QAEF,gBAAgB;QAChB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC;QAC5D,IAAI,CAAC,4BAA4B;YAC/B,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,QAAQ,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,yBAAyB,GAAG,0CAA0C,CACzE,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO,IAAI,EAAE,CAC9C,CAAC;QACF,IAAI,CAAC,oBAAoB,GAAG,qCAAqC,CAC/D,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,iBAAiB,IAAI,EAAE,CACxD,CAAC;QAEF,UAAU;QACV,IAAI,CAAC,UAAU,GAAG,oBAAoB,CACpC,KAAK,CAAC,WAAW,CAAC,OAAO,EACzB,+DAA+D,CAChE,CAAC;QACF,IAAI,CAAC,mBAAmB,GAAG,oBAAoB,CAC7C,KAAK,CAAC,WAAW,CAAC,SAAS,EAC3B,iEAAiE,CAClE,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,oBAAoB,CAC5C,KAAK,CAAC,WAAW,CAAC,SAAS,EAC3B,iEAAiE,CAClE,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"LegendApplicationConfig.js","sourceRoot":"","sources":["../../src/application/LegendApplicationConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EAEpB,aAAa,GACd,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,0CAA0C,EAC1C,qCAAqC,GAMtC,MAAM,mCAAmC,CAAC;AAuB3C,MAAM,OAAgB,uBAAuB;IAClC,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,GAAG,CAAS;IAErB,gBAAgB;IACP,gBAAgB,CAAsB;IACtC,4BAA4B,GAAiC,EAAE,CAAC;IAChE,yBAAyB,GAA8B,EAAE,CAAC;IAC1D,oBAAoB,GAAmC,EAAE,CAAC;IAEnE,UAAU;IACD,UAAU,CAAS;IACnB,mBAAmB,CAAS;IAC5B,kBAAkB,CAAS;IAEpC,YACE,KAA8E;QAE9E,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,uBAAuB,CACpC,KAAK,CAAC,UAAU,CAAC,OAAO,EACxB,kEAAkE,CACnE,CAAC;QACF,IAAI,CAAC,GAAG,GAAG,uBAAuB,CAChC,KAAK,CAAC,UAAU,CAAC,GAAG,EACpB,8DAA8D,CAC/D,CAAC;QAEF,gBAAgB;QAChB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC;QAC5D,IAAI,CAAC,4BAA4B;YAC/B,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,QAAQ,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,yBAAyB,GAAG,0CAA0C,CACzE,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO,IAAI,EAAE,CAC9C,CAAC;QACF,IAAI,CAAC,oBAAoB,GAAG,qCAAqC,CAC/D,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,iBAAiB,IAAI,EAAE,CACxD,CAAC;QAEF,UAAU;QACV,IAAI,CAAC,UAAU,GAAG,oBAAoB,CACpC,KAAK,CAAC,WAAW,CAAC,OAAO,EACzB,+DAA+D,CAChE,CAAC;QACF,IAAI,CAAC,mBAAmB,GAAG,oBAAoB,CAC7C,KAAK,CAAC,WAAW,CAAC,SAAS,EAC3B,iEAAiE,CAClE,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,oBAAoB,CAC5C,KAAK,CAAC,WAAW,CAAC,SAAS,EAC3B,iEAAiE,CAClE,CAAC;IACJ,CAAC;IAES,MAAM,CAAC,kBAAkB,CAAC,GAAW;QAC7C,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;YACxC,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC;SACrC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
package/lib/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /** @license @finos/legend-application v13.0.6
1
+ /** @license @finos/legend-application v13.0.8
2
2
  * Copyright (c) 2020-present, Goldman Sachs
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -14,4 +14,4 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- @import"xterm/css/xterm.css";:root{--color-primitive: var(--color-light-blue-200);--color-enum-value: var(--color-green-100);--color-enumeration: var(--color-medium-green-100);--color-measure: var(--color-medium-green-100);--color-unit: var(--color-medium-green-100);--color-class: var(--color-purple-100);--color-mapping: var(--color-teal-50);--color-function: var(--color-light-blue-20);--color-profile: var(--color-lime-75);--color-generated: var(--color-pink-200);--color-system: var(--color-light-blue-50);--color-dependency: var(--color-lime-50);--color-config: var(--color-orange-100);--color-flat-data: var(--color-orange-100);--color-relational: var(--color-blue-500);--color-file-generation: var(--color-blue-50);--color-database: var(--color-orange-100);--color-schema: var(--color-medium-green-500);--color-table: var(--color-light-blue-200);--color-association: var(--color-light-grey-400);--color-service: var(--color-blue-40);--color-runtime: var(--color-red-180);--color-connection: var(--color-yellow-100);--color-data: var(--color-light-blue-50)}.color--class{color:var(--color-class)}.color--enumeration{color:var(--color-enumeration)}.color--unit{color:var(--color-unit)}.color--measure{color:var(--color-measure)}.color--association{color:var(--color-association)}.color--primitive{color:var(--color-primitive)}.color--enum-value{color:var(--color-enum-value)}.color--mapping{color:var(--color-mapping)}.color--function{color:var(--color-function)}.color--file-generation{color:var(--color-file-generation)}.color--profile{color:var(--color-profile)}.color--generated{color:var(--color-generated)}.color--system{color:var(--color-system)}.color--dependency{color:var(--color-dependency)}.color--config{color:var(--color-config)}.color--flat-data{color:var(--color-flat-data)}.color--database{color:var(--color-database)}.color--table{color:var(--color-table)}.color--schema{color:var(--color-schema)}.color--service{color:var(--color-service)}.color--connection{color:var(--color-connection)}.color--runtime{color:var(--color-runtime)}.color--data{color:var(--color-data)}.background--pureinstance,.background--class{background:var(--color-class)}.background--enumeration{background:var(--color-enumeration)}.background--unit{background:var(--color-unit)}.background--measure{background:var(--color-measure)}.background--association{background:var(--color-association)}.background--primitive{background:var(--color-primitive)}.background--enum-value{background:var(--color-enum-value)}.background--mapping{background:var(--color-mapping)}.background--profile{background:var(--color-profile)}.background--flat-data{background:var(--color-flat-data)}.background--database{background:var(--color-database)}.background--service{background:var(--color-service)}.background--connection{background:var(--color-connection)}.background--runtime{background:var(--color-runtime)}.background--relational{background:var(--color-relational)}.background--data{background:var(--color-data)}.app__container{height:100%;width:100%}.app{height:100%}.app__page{height:100%;background:var(--color-dark-grey-50)}.app__info__group{margin-top:1rem;background:var(--color-dark-grey-85);padding:1.5rem;border-radius:.2rem}.app__info__entry{display:flex;cursor:default;padding:.2rem 0;font-family:"Roboto Mono",monospace}.app__info__entry__title{margin-right:.5rem;color:var(--color-dark-grey-500)}.app__info__entry__value{color:var(--color-light-grey-200)}.app__info__entry__value a{text-decoration:none;font-weight:700;color:var(--color-blue-50)}.app__info__extensions{height:15rem;margin-top:1rem;width:70rem}.app__info__extensions__header{display:flex;align-items:center;height:2.2rem;background:var(--color-dark-grey-100);border-radius:.2rem .2rem 0 0;padding:0 1rem}.app__info__extensions__header__title{cursor:default;font-size:1.2rem;font-weight:700;color:var(--color-dark-grey-500);font-family:"Roboto Mono",monospace}.app__info__extensions__content{height:calc(100% - 2.2rem);overflow:auto;padding:1rem;background:var(--color-dark-grey-85);border-radius:0 0 .2rem .2rem}.app__info__extensions__tree__node__icon{flex-grow:0;flex-shrink:0;display:flex;width:4rem}.app__info__extensions__tree__node__icon__expand{flex-grow:0;flex-shrink:0;width:2rem}.app__info__extensions__tree__node__icon__expand svg{font-size:1.4rem}.app__info__extensions__tree__node__icon__type{flex-grow:0;flex-shrink:0;width:2rem}.app__info__extensions__tree__node__icon__type svg{font-size:1.4rem;color:var(--color-blue-100)}.app__info__extensions__tree__node__label{display:flex;flex:0 0 auto;height:2rem;line-height:2rem;min-width:0;white-space:normal;user-select:none;font-family:"Roboto Mono",monospace}.app__info__extensions__tree__node__label__title{font-size:1.2rem}.app__info__extensions__tree__node__label__version{display:flex;align-items:center;justify-content:center;height:2rem;margin-left:1rem}.app__info__extensions__tree__node__label__version__label{display:flex;align-items:center;justify-content:center;height:1.6rem;padding:.5rem;background:var(--color-dark-grey-280);font-size:1rem;border-radius:.2rem}.blocking-alert{padding:0}.blocking-alert__root-container{margin-top:0 !important}.blocking-alert__container{align-items:center !important}.blocking-alert .btn{display:flex;align-items:center;justify-content:center;height:2.8rem;border-radius:.1rem;border:none;color:var(--color-light-grey-50)}.blocking-alert .modal__body{line-height:2.2rem;cursor:default;text-align:justify}.blocking-alert__message{text-align:center}.blocking-alert__message__prompt{text-align:center;font-size:1.2rem;color:var(--color-blue-150);font-weight:500}.blocking-alert__summary-text{color:var(--color-light-grey-400);font-weight:500}.blocking-alert__prompt-text{color:var(--color-blue-50);font-size:1.3rem;margin-top:1rem;font-weight:500}.blocking-alert--standard{border:.1rem solid var(--color-blue-200)}.blocking-alert--caution{border:.1rem solid var(--color-pink-400)}.blocking-alert--caution .mode__header{background:var(--color-pink-400)}.blocking-alert--caution .blocking-alert__prompt-text{color:var(--color-pink-300)}.backdrop{background:var(--color-dark-shade-230) !important;z-index:100 !important}.backdrop__container{height:0;width:0;position:absolute}.backdrop__element{z-index:100;position:relative;box-shadow:var(--color-dark-shade-280) 0 .1rem .3rem .1rem}.notification__position{bottom:3rem;right:1rem}.notification__content{background:var(--color-dark-grey-200);color:var(--color-light-grey-150);border-radius:.3rem;align-items:flex-start}.notification__message__content{display:flex;align-items:flex-start;cursor:pointer}.notification__message__content:active{background:var(--color-dark-grey-100)}.notification__message__content__icon{padding-top:.2rem;padding-right:1rem}.notification__message__content__icon svg{font-size:1.6rem}.notification__message__content__icon--info{color:var(--color-light-grey-200)}.notification__message__content__icon--error{color:var(--color-red-100)}.notification__message__content__icon--warning{color:var(--color-yellow-200)}.notification__message__content__icon--success{color:var(--color-green-100)}.notification__message__content__text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;word-break:break-word;text-align:left;max-height:20rem;max-width:60rem}.notification__message__content__text--expanded{overflow:auto;white-space:pre-line;width:60rem}.notification__actions{padding:.8rem 0 .8rem 1rem}.notification__action{display:flex;align-items:center;justify-content:center;width:2rem;color:var(--color-dark-grey-400)}.notification__action:hover{color:var(--color-light-grey-400)}.virtual-assistant{position:absolute;z-index:10100;bottom:9rem;right:1rem}.virtual-assistant__context-menu{z-index:10100}.virtual-assistant__station{display:flex;align-items:center;justify-content:flex-end;height:3.4rem;width:5.1rem;border-radius:1.7rem 1.1rem .2em 1.7rem;background:var(--color-dark-grey-50);opacity:.9;border:.1rem solid var(--color-blue-50);transition:width .1s ease-in-out}.virtual-assistant__station__trigger{display:flex;align-items:center;justify-content:center;height:2.8rem;width:2.8rem;border-radius:50%;background:var(--color-blue-50);margin:.3rem 0 .3rem .2rem}.virtual-assistant__station__trigger__close{font-size:2.6rem;color:var(--color-dark-shade-800);position:relative}.virtual-assistant__station__trigger__circle{font-size:2.2rem;color:var(--color-dark-grey-80);animation:opacity-pulse 1.2s infinite ease-in-out alternate-reverse}@keyframes opacity-pulse{from{opacity:.1}to{opacity:.3}}.virtual-assistant__station--hidden{display:none}.virtual-assistant__station__drag-handle{height:3.4rem;width:2rem;cursor:grab}.virtual-assistant__station__drag-handle__content{display:flex;align-items:center;justify-content:center;height:100%;width:100%}.virtual-assistant__station__drag-handle--dragging{cursor:grabbing}.virtual-assistant__station__drag-handle svg{font-size:2rem;color:var(--color-light-shade-100)}.virtual-assistant__station--active{border-color:var(--color-yellow-100);animation:border-flash .5s;animation-iteration-count:3}.virtual-assistant__station--active .virtual-assistant__station__trigger{background:var(--color-yellow-100);animation:background-flash .5s;animation-iteration-count:3}@keyframes border-flash{from{border-color:var(--color-dark-grey-50)}to{border-color:var(--color-yellow-100)}}@keyframes background-flash{from{background:var(--color-dark-grey-50)}to{background:var(--color-yellow-100)}}.virtual-assistant__panel{height:40rem;width:30rem;border-radius:.2rem;background:var(--color-dark-grey-100);border:.1rem solid var(--color-dark-grey-200);box-shadow:0 1.1rem 1.5rem -0.7rem,var(--color-light-shade-280),0 2.4rem 3.8rem .3rem var(--color-light-shade-280),0 .9rem 4.6rem .8rem var(--color-light-shade-280);pointer-events:all}.virtual-assistant__panel__container{z-index:10000;pointer-events:none}.virtual-assistant__panel__container__root{margin:-1rem}.virtual-assistant__panel__header{display:flex;align-items:center;justify-content:space-between;background:var(--color-dark-grey-250);height:2.8rem}.virtual-assistant__panel__header__actions{display:flex;align-items:center}.virtual-assistant__panel__header__action{display:flex;align-items:center;justify-content:center;width:2.8rem;height:2.8rem}.virtual-assistant__panel__header__action svg{color:var(--color-dark-grey-400)}.virtual-assistant__panel__header__action:hover svg{color:var(--color-dark-grey-500)}.virtual-assistant__panel__header__tabs{display:flex;height:2.8rem;color:var(--color-dark-grey-400)}.virtual-assistant__panel__header__tab{padding:0 1rem;border-right:.1rem solid var(--color-dark-grey-100)}.virtual-assistant__panel__header__tab:hover{background:var(--color-dark-grey-280)}.virtual-assistant__panel__header__tab__content{display:flex;align-items:center;justify-content:center;cursor:pointer;height:2.8rem;width:6rem;border-bottom:.3rem solid var(--color-dark-grey-300);padding-top:.1rem;position:relative}.virtual-assistant__panel__header__tab__content svg{font-size:1.5rem;color:var(--color-dark-grey-400)}.virtual-assistant__panel__header__tab__indicator{position:absolute;top:.5rem;right:1rem;height:1rem;width:1rem;border-radius:50%;background:var(--color-yellow-200)}.virtual-assistant__panel__header__tab:hover .virtual-assistant__panel__header__tab__content svg{color:var(--color-dark-grey-500)}.virtual-assistant__panel__header__tab--active:hover .virtual-assistant__panel__header__tab__content,.virtual-assistant__panel__header__tab--active .virtual-assistant__panel__header__tab__content{border-bottom:.3rem solid var(--color-yellow-300)}.virtual-assistant__panel__header__tab--active:hover .virtual-assistant__panel__header__tab__content svg,.virtual-assistant__panel__header__tab--active .virtual-assistant__panel__header__tab__content svg{color:var(--color-light-grey-200)}.virtual-assistant__panel__content{height:calc(100% - 2.8rem)}.virtual-assistant__panel__icon__close{font-size:2.4rem}.virtual-assistant__panel__placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column}.virtual-assistant__panel__placeholder__icon{font-size:5rem;color:var(--color-yellow-200)}.virtual-assistant__panel__placeholder__message{font-family:"Roboto Mono",monospace;font-size:1.3rem;color:var(--color-light-grey-400);margin-top:1rem}.virtual-assistant__panel__placeholder__instruction{font-family:"Roboto Mono",monospace;font-size:1.3rem;font-weight:700;color:var(--color-dark-grey-300);margin-top:.5rem}.virtual-assistant__search{height:100%}.virtual-assistant__search__header{display:flex;align-items:center;justify-content:center;padding:.3rem;border-bottom:.1rem solid var(--color-dark-grey-250);height:3.4rem;position:relative}.virtual-assistant__search__input{font-size:1.3rem;height:2.8rem;padding-right:2.8rem;padding-left:1rem;width:100%;background:var(--color-dark-grey-85);border-radius:.2rem;border:.1rem solid var(--color-dark-grey-200)}.virtual-assistant__search__input--searching{padding-right:9rem}.virtual-assistant__search__input__search__count{display:flex;align-items:center;justify-content:center;position:absolute;right:5.4rem;border-radius:.8rem;height:1.6rem;padding:0 .5rem;font-size:1.1rem;font-weight:700;background:var(--color-yellow-100);color:var(--color-dark-grey-280);user-select:none;cursor:default}.virtual-assistant__search__input__search__icon{display:flex;align-items:center;justify-content:center;position:absolute;right:.3rem;height:2.8rem;width:2.8rem}.virtual-assistant__search__input__search__icon svg{color:var(--color-light-shade-100)}.virtual-assistant__search__input__clear-btn{display:flex;align-items:center;justify-content:center;position:absolute;right:.3rem;height:2.8rem;width:2.8rem}.virtual-assistant__search__input__clear-btn svg{color:var(--color-dark-grey-400)}.virtual-assistant__search__input__clear-btn:hover svg{color:var(--color-dark-grey-500)}.virtual-assistant__search__input__config__trigger{display:flex;align-items:center;justify-content:center;position:absolute;right:3.1rem;height:2.8rem;width:1.8rem;cursor:pointer}.virtual-assistant__search__input__config__trigger svg{color:var(--color-dark-grey-400)}.virtual-assistant__search__input__config__trigger--toggled svg,.virtual-assistant__search__input__config__trigger:hover svg{color:var(--color-dark-grey-500)}.virtual-assistant__search__input__config__trigger--active svg,.virtual-assistant__search__input__config__trigger--active:hover svg{color:var(--color-blue-150)}.virtual-assistant__search__input__config__panel{width:100%;height:12rem;position:absolute;z-index:1;box-shadow:var(--color-dark-shade-280) .2rem .1rem .3rem .1rem;overflow:hidden;max-height:0;transition:max-height ease-in-out 100ms}.virtual-assistant__search__input__config__panel--toggled{max-height:12rem}.virtual-assistant__search__content{height:calc(100% - 3.4rem);position:relative}.virtual-assistant__search__results{height:100%;overflow-y:auto;padding:1rem}.virtual-assistant__search__results__placeholder{font-family:"Roboto Mono",monospace;font-size:1.3rem;color:var(--color-light-grey-400)}.virtual-assistant__doc-entry+.virtual-assistant__doc-entry{margin-top:.5rem}.virtual-assistant__doc-entry__header{display:flex}.virtual-assistant__doc-entry__expand-icon{display:flex;align-items:flex-start;width:2rem;min-width:2rem;padding-top:.3rem}.virtual-assistant__doc-entry__expand-icon svg{color:var(--color-light-grey-50)}.virtual-assistant__doc-entry__expand-icon--disabled svg{color:var(--color-dark-grey-300)}.virtual-assistant__doc-entry__title{line-height:1.5;font-weight:500;color:var(--color-light-grey-50);cursor:pointer;user-select:none}.virtual-assistant__doc-entry__title--link{color:var(--color-blue-40);text-decoration:none}.virtual-assistant__doc-entry__content{margin-top:.5rem;padding-left:2rem}.virtual-assistant__doc-entry__content__text{color:var(--color-light-grey-50);line-height:1.5;background:var(--color-dark-grey-80);border-radius:.2rem;padding:1rem}.virtual-assistant__doc-entry__content__markdown-text{padding:1rem;border-radius:.2rem}.virtual-assistant__character{display:flex;align-items:center;justify-content:center;flex-direction:column}.virtual-assistant__character__container{display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}.virtual-assistant__character__greeting{font-family:"Roboto Mono",monospace;font-size:1.3rem;color:var(--color-light-grey-400);margin-top:.6rem;cursor:default;user-select:none}.virtual-assistant__character__question{font-family:"Roboto Mono",monospace;font-size:1.3rem;font-weight:700;color:var(--color-light-grey-0);margin-top:.6rem;cursor:default;user-select:none}.virtual-assistant__character__figure{display:flex;align-items:center;justify-content:center;position:relative;width:10rem;height:20rem}.virtual-assistant__character__hat{position:absolute;font-size:8rem;color:var(--color-orange-150);top:0}.virtual-assistant__character__glasses{position:absolute;font-size:8rem;color:var(--color-dark-grey-300);top:6rem}.virtual-assistant__character__beard{position:absolute;color:var(--color-yellow-200);font-size:8rem;top:11rem}.virtual-assistant__contextual-support{height:100%}.virtual-assistant__contextual-support__content{height:100%;overflow-y:auto;padding:1.5rem}.virtual-assistant__contextual-support__title{line-height:1.5;font-weight:700;color:var(--color-light-grey-50);cursor:pointer;user-select:none;font-size:1.5rem;margin-bottom:1rem}.virtual-assistant__contextual-support__text{color:var(--color-light-grey-50);line-height:1.5;background:var(--color-dark-grey-80);border-radius:.2rem;padding:1rem;margin-bottom:1rem}.virtual-assistant__contextual-support__markdown-text{padding:1rem;border-radius:.2rem;margin-bottom:1rem}.virtual-assistant__contextual-support__relevant-entries__title{color:var(--color-dark-grey-500);font-family:"Roboto Mono",monospace;font-size:1.3rem;margin-bottom:1rem}.text-search-advanced-config__panel{width:100%;background:var(--color-dark-grey-250)}.text-search-advanced-config__panel__header__label{display:flex;align-items:center;font-weight:500;color:var(--color-light-grey-50);background:var(--color-dark-grey-300);padding:0 1rem;line-height:2rem;font-size:1.2rem;cursor:default}.text-search-advanced-config__panel__header__hint{display:flex;align-items:center;justify-content:center;border-radius:.2rem;padding:0 .5rem;color:var(--color-light-grey-300)}.text-search-advanced-config__panel__header__hint svg{font-size:1.2rem}.tab-manager{display:flex;flex:1;overflow:hidden;height:100%}.tab-manager__content{width:calc(100% - 2.8rem);display:flex;overflow-x:overlay}.tab-manager__tab{display:flex;align-items:center;cursor:pointer;color:var(--color-light-grey-400);background:var(--color-dark-grey-80);border-right:.1rem solid var(--color-dark-grey-50)}.tab-manager__tab--active{color:var(--color-light-grey-100);background:var(--color-dark-grey-50)}.tab-manager__tab--dragged{filter:opacity(0.7)}.tab-manager__tab__content{display:flex;align-items:center;height:100%;width:100%}.tab-manager__tab__label{height:100%;color:inherit;padding:0 .5rem 0 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab-manager__tab__close-btn{visibility:hidden;display:flex;align-items:center}.tab-manager__tab__close-btn svg{color:var(--color-light-grey-200);font-size:1.2rem;margin-right:1rem}.tab-manager__tab--active .tab-manager__tab__close-btn,.tab-manager__tab:hover .tab-manager__tab__close-btn{visibility:visible}.tab-manager__tab--active .tab-manager__tab__close-btn svg,.tab-manager__tab:hover .tab-manager__tab__close-btn svg{color:var(--color-light-grey-100)}.tab-manager__tab__dnd__placeholder{text-align:left;margin:0;padding:0 .5rem;background-color:var(--color-dark-grey-100)}.tab-manager__menu{min-width:15rem;max-width:30rem;height:100%;padding:0}.tab-manager__menu__toggler{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;color:var(--color-light-grey-400);border-left:.1rem solid var(--color-dark-grey-50);height:100%;width:2.8rem}.tab-manager__menu__item{justify-content:space-between}.tab-manager__menu__item--active,.tab-manager__menu__item:not([disabled]):hover{background:var(--color-dark-grey-250)}.tab-manager__menu__item__label{text-align:left;white-space:nowrap;font-size:1.3rem;overflow:hidden;text-overflow:ellipsis}.tab-manager__menu__item__close-btn{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;padding:.4rem;margin-left:.6rem;flex-direction:end}.tab-manager__menu__item__close-btn svg{width:1.2rem;height:1.2rem}.documentation-link{display:inline-flex;align-self:center;height:100%;color:var(--color-dark-grey-500);cursor:pointer}.documentation-preview{display:flex;background:var(--color-dark-grey-85);border:.1rem solid var(--color-dark-grey-280);border-radius:.2rem}.documentation-preview__text{padding:1rem;width:calc(100% - 3rem);color:var(--color-light-grey-400);line-height:2rem}.documentation-preview__hint{display:flex;justify-content:center;padding:1rem 0;width:3rem}.text-editor__container{height:100%;width:100%;position:relative;background:var(--color-dark-grey-50)}.text-editor__body{height:100%;width:100%;position:absolute;top:0;left:0;overflow:hidden}.packageable-element-option-label{display:flex;align-items:center}.packageable-element-option-label__tag{display:flex;align-items:center;color:var(--color-dark-grey-500);background:var(--color-light-grey-50);border:.1rem solid var(--color-light-grey-180);margin-left:1rem;border-radius:.2rem;font-size:1rem;padding:0 .5rem;height:1.6rem;font-weight:500}.packageable-element-option-label__name{display:flex;align-items:center;height:1.8rem}.packageable-element-option-label__type{margin:-1rem .8rem -1rem -1.2rem;height:3.2rem;padding-left:.5rem;background:rgba(0,0,0,0)}.packageable-element-option-label__type--system{background:var(--color-system)}.packageable-element-option-label__type--generated{background:var(--color-generated)}.packageable-element-option-label__type--dependency{background:var(--color-dependency)}.packageable-element-option-label--dark{display:flex;align-items:center;display:flex}.packageable-element-option-label--dark__tag{display:flex;align-items:center;color:var(--color-dark-grey-250);background:var(--color-dark-grey-400);margin-left:1rem;border-radius:.2rem;font-size:1rem;padding:0 .5rem;height:1.6rem;font-weight:500}.packageable-element-option-label--dark__name{display:flex;align-items:center;height:1.8rem}.execution-plan-viewer{height:100%;width:100%}.execution-plan-viewer__content{height:100%;width:100%}.execution-plan-viewer__debug-panel{background:var(--color-dark-grey-50)}.execution-plan-viewer__debug-panel .panel__header{background:var(--color-dark-grey-250)}.execution-plan-viewer__debug-panel .panel__content{position:relative;background:var(--color-dark-grey-50)}.execution-plan-viewer__close-btn{border-color:var(--color-blue-200);background:var(--color-blue-300)}.execution-plan-viewer .panel{height:100%}.execution-plan-viewer .panel__header{color:var(--color-light-grey-400);font-weight:bold;background:var(--color-dark-grey-50)}.execution-plan-viewer .panel__header__title{max-width:calc(100% - 11rem)}.execution-plan-viewer .panel__main-header{color:var(--color-light-grey-400);font-weight:bold;background:var(--color-dark-grey-250)}.execution-plan-viewer .panel__content{position:relative;height:calc(100% - 3rem);width:100%;background:var(--color-dark-grey-50);overflow-y:hidden}.execution-plan-viewer .panel__content ::-webkit-scrollbar-thumb{background:var(--color-dark-grey-400)}.execution-plan-viewer .panel__content>div:first-child{margin-top:0}.execution-plan-viewer .panel__content__lists{height:100%;width:100%;padding:1rem;overflow:overlay}.execution-plan-viewer__tabs__header{padding-left:0}.execution-plan-viewer__tabs{height:2.8rem;z-index:1;display:flex;overflow-x:overlay;overflow-y:hidden}.execution-plan-viewer__tab{height:100%;display:inline-flex;align-items:center;justify-content:center;padding:0 1rem;border-right:.1rem solid var(--color-dark-grey-200);white-space:nowrap;cursor:pointer}.execution-plan-viewer__tab--active{color:var(--color-dark-grey-50);position:relative}.execution-plan-viewer__tab--active::after{content:"";height:.4rem;width:100%;position:absolute;bottom:0;background:var(--color-yellow-200)}.execution-plan-viewer__panel{height:100%;width:100%}.execution-plan-viewer__panel__content{overflow-y:hidden;position:relative;background:var(--color-dark-grey-50);height:calc(100% - 3.4rem)}.execution-plan-viewer__panel__header{background:var(--color-dark-grey-100);z-index:1;height:3.4rem;min-height:3.4rem;padding:0}.execution-plan-viewer__panel__header__tabs{display:flex;height:100%;overflow-x:overlay}.execution-plan-viewer__panel__header__tab{display:flex;align-items:center;padding:0 1rem;cursor:pointer;color:var(--color-light-grey-400);background:var(--color-dark-grey-80);border-right:.1rem solid var(--color-dark-grey-80)}.execution-plan-viewer__panel__header__tab--active{color:var(--color-light-grey-100);background:var(--color-dark-grey-50)}.execution-plan-viewer__panel__header__tab__content{display:flex;align-items:center;height:100%;width:100%}.execution-plan-viewer__panel__header__tab__icon{margin-right:.5rem}.execution-plan-viewer__panel__header__tab__label{color:inherit;padding:0 .5rem;white-space:nowrap}.execution-plan-viewer__panel__view-mode__type{display:flex;align-items:center;justify-content:center;width:15rem;background:var(--color-dark-grey-100);border-right:.1rem solid var(--color-dark-grey-50);border-left:.1rem solid var(--color-dark-grey-50);color:var(--color-light-grey-300);cursor:pointer}.execution-plan-viewer__panel__view-mode__type:hover{background:var(--color-dark-grey-200)}.execution-plan-viewer__panel__view-mode__type__label{display:flex;align-items:center;height:3.4rem;padding:0 .5rem;border-top:.3rem solid var(--color-yellow-200)}.execution-plan-viewer__panel__view-mode__options{width:15rem}.execution-plan-viewer__panel__view-mode__options--with-group{border:none;padding:0}.execution-plan-viewer__panel__view-mode__option__group__name{display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:default;writing-mode:vertical-lr;transform:rotate(180deg);font-size:1.1rem;width:2.2rem;padding:.5rem 0}.execution-plan-viewer__panel__view-mode__option__group{display:flex;flex-direction:row}.execution-plan-viewer__panel__view-mode__option__group--native{background:var(--color-blue-100);border:.1rem solid var(--color-blue-100)}.execution-plan-viewer__panel__view-mode__option__group--native .execution-plan-viewer__panel__view-mode__option__group__name{background:var(--color-blue-100);color:var(--color-light-grey-50)}.execution-plan-viewer__panel__view-mode__option__group--generation{background:var(--color-pink-300);border:.1rem solid var(--color-pink-300)}.execution-plan-viewer__panel__view-mode__option__group--generation .execution-plan-viewer__panel__view-mode__option__group__name{background:var(--color-pink-300);color:var(--color-light-grey-50)}.execution-plan-viewer__panel__view-mode__option__group__separator{height:.2rem;width:100%}.execution-plan-viewer__panel__view-mode__option__group__options{width:100%;background:var(--color-dark-grey-100)}.execution-plan-viewer__panel__view-mode__option{display:flex;align-items:center;justify-content:center;height:2rem}.execution-plan-viewer__explorer{width:100%}.execution-plan-viewer__explorer__content__container{height:100%;background:var(--color-dark-grey-100)}.execution-plan-viewer__explorer-tree__node__container:hover{background:var(--color-dark-blue-shade-100)}.execution-plan-viewer__explorer-tree__node__container--selected,.execution-plan-viewer__explorer-tree__node__container--selected:hover{background:var(--color-light-blue-450)}.execution-plan-viewer__explorer-tree__node__icon{width:4rem;min-width:4rem}.execution-plan-viewer__explorer-tree__node__icon__expand,.execution-plan-viewer__explorer-tree__node__icon__type{width:2rem;display:flex;justify-content:center}.execution-plan-viewer__explorer-tree__node__icon__expand svg{font-size:1rem}.execution-plan-viewer__explorer-tree__node__label{color:inherit}.execution-plan-viewer__unsupported-view,.execution-node-viewer__unsupported-view{display:flex;align-items:center;justify-content:center;flex-direction:column}.execution-plan-viewer__unsupported-view__summary,.execution-node-viewer__unsupported-view__summary{font-weight:500;margin-bottom:1rem}.execution-plan-viewer__unsupported-view__to-text-mode__btn,.execution-node-viewer__unsupported-view__to-text-mode__btn{height:2.8rem;width:15rem}/*# sourceMappingURL=index.css.map */
17
+ @import"xterm/css/xterm.css";:root{--color-primitive: var(--color-light-blue-200);--color-enum-value: var(--color-green-100);--color-enumeration: var(--color-medium-green-100);--color-measure: var(--color-medium-green-100);--color-unit: var(--color-medium-green-100);--color-class: var(--color-purple-100);--color-mapping: var(--color-teal-50);--color-function: var(--color-light-blue-20);--color-profile: var(--color-lime-75);--color-generated: var(--color-pink-200);--color-system: var(--color-light-blue-50);--color-dependency: var(--color-lime-50);--color-config: var(--color-orange-100);--color-flat-data: var(--color-orange-100);--color-relational: var(--color-blue-500);--color-file-generation: var(--color-blue-50);--color-database: var(--color-orange-100);--color-schema: var(--color-medium-green-500);--color-table: var(--color-light-blue-200);--color-association: var(--color-light-grey-400);--color-service: var(--color-blue-40);--color-runtime: var(--color-red-180);--color-connection: var(--color-yellow-100);--color-data: var(--color-light-blue-50)}.color--class{color:var(--color-class)}.color--enumeration{color:var(--color-enumeration)}.color--unit{color:var(--color-unit)}.color--measure{color:var(--color-measure)}.color--association{color:var(--color-association)}.color--primitive{color:var(--color-primitive)}.color--enum-value{color:var(--color-enum-value)}.color--mapping{color:var(--color-mapping)}.color--function{color:var(--color-function)}.color--file-generation{color:var(--color-file-generation)}.color--profile{color:var(--color-profile)}.color--generated{color:var(--color-generated)}.color--system{color:var(--color-system)}.color--dependency{color:var(--color-dependency)}.color--config{color:var(--color-config)}.color--flat-data{color:var(--color-flat-data)}.color--database{color:var(--color-database)}.color--table{color:var(--color-table)}.color--schema{color:var(--color-schema)}.color--service{color:var(--color-service)}.color--connection{color:var(--color-connection)}.color--runtime{color:var(--color-runtime)}.color--data{color:var(--color-data)}.background--pureinstance,.background--class{background:var(--color-class)}.background--enumeration{background:var(--color-enumeration)}.background--unit{background:var(--color-unit)}.background--measure{background:var(--color-measure)}.background--association{background:var(--color-association)}.background--primitive{background:var(--color-primitive)}.background--enum-value{background:var(--color-enum-value)}.background--mapping{background:var(--color-mapping)}.background--profile{background:var(--color-profile)}.background--flat-data{background:var(--color-flat-data)}.background--database{background:var(--color-database)}.background--service{background:var(--color-service)}.background--connection{background:var(--color-connection)}.background--runtime{background:var(--color-runtime)}.background--relational{background:var(--color-relational)}.background--data{background:var(--color-data)}.app__container{height:100%;width:100%}.app{height:100%;background:var(--color-dark-grey-50)}.app__page{height:100%;background:var(--color-dark-grey-50)}.app__info__group{margin-top:1rem;background:var(--color-dark-grey-85);padding:1.5rem;border-radius:.2rem}.app__info__entry{display:flex;cursor:default;padding:.2rem 0;font-family:"Roboto Mono",monospace}.app__info__entry__title{margin-right:.5rem;color:var(--color-dark-grey-500)}.app__info__entry__value{color:var(--color-light-grey-200)}.app__info__entry__value a{text-decoration:none;font-weight:700;color:var(--color-blue-50)}.app__info__extensions{height:15rem;margin-top:1rem;width:70rem}.app__info__extensions__header{display:flex;align-items:center;height:2.2rem;background:var(--color-dark-grey-100);border-radius:.2rem .2rem 0 0;padding:0 1rem}.app__info__extensions__header__title{cursor:default;font-size:1.2rem;font-weight:700;color:var(--color-dark-grey-500);font-family:"Roboto Mono",monospace}.app__info__extensions__content{height:calc(100% - 2.2rem);overflow:auto;padding:1rem;background:var(--color-dark-grey-85);border-radius:0 0 .2rem .2rem}.app__info__extensions__tree__node__icon{flex-grow:0;flex-shrink:0;display:flex;width:4rem}.app__info__extensions__tree__node__icon__expand{flex-grow:0;flex-shrink:0;width:2rem}.app__info__extensions__tree__node__icon__expand svg{font-size:1.4rem}.app__info__extensions__tree__node__icon__type{flex-grow:0;flex-shrink:0;width:2rem}.app__info__extensions__tree__node__icon__type svg{font-size:1.4rem;color:var(--color-blue-100)}.app__info__extensions__tree__node__label{display:flex;flex:0 0 auto;height:2rem;line-height:2rem;min-width:0;white-space:normal;user-select:none;font-family:"Roboto Mono",monospace}.app__info__extensions__tree__node__label__title{font-size:1.2rem}.app__info__extensions__tree__node__label__version{display:flex;align-items:center;justify-content:center;height:2rem;margin-left:1rem}.app__info__extensions__tree__node__label__version__label{display:flex;align-items:center;justify-content:center;height:1.6rem;padding:.5rem;background:var(--color-dark-grey-280);font-size:1rem;border-radius:.2rem}.blocking-alert{padding:0}.blocking-alert__root-container{margin-top:0 !important}.blocking-alert__container{align-items:center !important}.blocking-alert .btn{display:flex;align-items:center;justify-content:center;height:2.8rem;border-radius:.1rem;border:none;color:var(--color-light-grey-50)}.blocking-alert .modal__body{line-height:2.2rem;cursor:default;text-align:justify}.blocking-alert__message{text-align:center}.blocking-alert__message__prompt{text-align:center;font-size:1.2rem;color:var(--color-blue-150);font-weight:500}.blocking-alert__summary-text{color:var(--color-light-grey-400);font-weight:500}.blocking-alert__prompt-text{color:var(--color-blue-50);font-size:1.3rem;margin-top:1rem;font-weight:500}.blocking-alert--standard{border:.1rem solid var(--color-blue-200)}.blocking-alert--caution{border:.1rem solid var(--color-pink-400)}.blocking-alert--caution .mode__header{background:var(--color-pink-400)}.blocking-alert--caution .blocking-alert__prompt-text{color:var(--color-pink-300)}.backdrop{background:var(--color-dark-shade-230) !important;z-index:100 !important}.backdrop__container{height:0;width:0;position:absolute}.backdrop__element{z-index:100;position:relative;box-shadow:var(--color-dark-shade-280) 0 .1rem .3rem .1rem}.notification__position{bottom:3rem;right:1rem}.notification__content{background:var(--color-dark-grey-200);color:var(--color-light-grey-150);border-radius:.3rem;align-items:flex-start}.notification__message__content{display:flex;align-items:flex-start;cursor:pointer}.notification__message__content:active{background:var(--color-dark-grey-100)}.notification__message__content__icon{padding-top:.2rem;padding-right:1rem}.notification__message__content__icon svg{font-size:1.6rem}.notification__message__content__icon--info{color:var(--color-light-grey-200)}.notification__message__content__icon--error{color:var(--color-red-100)}.notification__message__content__icon--warning{color:var(--color-yellow-200)}.notification__message__content__icon--success{color:var(--color-green-100)}.notification__message__content__text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;word-break:break-word;text-align:left;max-height:20rem;max-width:60rem}.notification__message__content__text--expanded{overflow:auto;white-space:pre-line;width:60rem}.notification__actions{padding:.8rem 0 .8rem 1rem}.notification__action{display:flex;align-items:center;justify-content:center;width:2rem;color:var(--color-dark-grey-400)}.notification__action:hover{color:var(--color-light-grey-400)}.virtual-assistant{position:absolute;z-index:10100;bottom:9rem;right:1rem}.virtual-assistant__context-menu{z-index:10100}.virtual-assistant__station{display:flex;align-items:center;justify-content:flex-end;height:3.4rem;width:5.1rem;border-radius:1.7rem 1.1rem .2em 1.7rem;background:var(--color-dark-grey-50);opacity:.9;border:.1rem solid var(--color-blue-50);transition:width .1s ease-in-out}.virtual-assistant__station__trigger{display:flex;align-items:center;justify-content:center;height:2.8rem;width:2.8rem;border-radius:50%;background:var(--color-blue-50);margin:.3rem 0 .3rem .2rem}.virtual-assistant__station__trigger__close{font-size:2.6rem;color:var(--color-dark-shade-800);position:relative}.virtual-assistant__station__trigger__circle{font-size:2.2rem;color:var(--color-dark-grey-80);animation:opacity-pulse 1.2s infinite ease-in-out alternate-reverse}@keyframes opacity-pulse{from{opacity:.1}to{opacity:.3}}.virtual-assistant__station--hidden{display:none}.virtual-assistant__station__drag-handle{height:3.4rem;width:2rem;cursor:grab}.virtual-assistant__station__drag-handle__content{display:flex;align-items:center;justify-content:center;height:100%;width:100%}.virtual-assistant__station__drag-handle--dragging{cursor:grabbing}.virtual-assistant__station__drag-handle svg{font-size:2rem;color:var(--color-light-shade-100)}.virtual-assistant__station--active{border-color:var(--color-yellow-100);animation:border-flash .5s;animation-iteration-count:3}.virtual-assistant__station--active .virtual-assistant__station__trigger{background:var(--color-yellow-100);animation:background-flash .5s;animation-iteration-count:3}@keyframes border-flash{from{border-color:var(--color-dark-grey-50)}to{border-color:var(--color-yellow-100)}}@keyframes background-flash{from{background:var(--color-dark-grey-50)}to{background:var(--color-yellow-100)}}.virtual-assistant__panel{height:40rem;width:30rem;border-radius:.2rem;background:var(--color-dark-grey-100);border:.1rem solid var(--color-dark-grey-200);box-shadow:0 1.1rem 1.5rem -0.7rem,var(--color-light-shade-280),0 2.4rem 3.8rem .3rem var(--color-light-shade-280),0 .9rem 4.6rem .8rem var(--color-light-shade-280);pointer-events:all}.virtual-assistant__panel__container{z-index:10000;pointer-events:none}.virtual-assistant__panel__container__root{margin:-1rem}.virtual-assistant__panel__header{display:flex;align-items:center;justify-content:space-between;background:var(--color-dark-grey-250);height:2.8rem}.virtual-assistant__panel__header__actions{display:flex;align-items:center}.virtual-assistant__panel__header__action{display:flex;align-items:center;justify-content:center;width:2.8rem;height:2.8rem}.virtual-assistant__panel__header__action svg{color:var(--color-dark-grey-400)}.virtual-assistant__panel__header__action:hover svg{color:var(--color-dark-grey-500)}.virtual-assistant__panel__header__tabs{display:flex;height:2.8rem;color:var(--color-dark-grey-400)}.virtual-assistant__panel__header__tab{padding:0 1rem;border-right:.1rem solid var(--color-dark-grey-100)}.virtual-assistant__panel__header__tab:hover{background:var(--color-dark-grey-280)}.virtual-assistant__panel__header__tab__content{display:flex;align-items:center;justify-content:center;cursor:pointer;height:2.8rem;width:6rem;border-bottom:.3rem solid var(--color-dark-grey-300);padding-top:.1rem;position:relative}.virtual-assistant__panel__header__tab__content svg{font-size:1.5rem;color:var(--color-dark-grey-400)}.virtual-assistant__panel__header__tab__indicator{position:absolute;top:.5rem;right:1rem;height:1rem;width:1rem;border-radius:50%;background:var(--color-yellow-200)}.virtual-assistant__panel__header__tab:hover .virtual-assistant__panel__header__tab__content svg{color:var(--color-dark-grey-500)}.virtual-assistant__panel__header__tab--active:hover .virtual-assistant__panel__header__tab__content,.virtual-assistant__panel__header__tab--active .virtual-assistant__panel__header__tab__content{border-bottom:.3rem solid var(--color-yellow-300)}.virtual-assistant__panel__header__tab--active:hover .virtual-assistant__panel__header__tab__content svg,.virtual-assistant__panel__header__tab--active .virtual-assistant__panel__header__tab__content svg{color:var(--color-light-grey-200)}.virtual-assistant__panel__content{height:calc(100% - 2.8rem)}.virtual-assistant__panel__icon__close{font-size:2.4rem}.virtual-assistant__panel__placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column}.virtual-assistant__panel__placeholder__icon{font-size:5rem;color:var(--color-yellow-200)}.virtual-assistant__panel__placeholder__message{font-family:"Roboto Mono",monospace;font-size:1.3rem;color:var(--color-light-grey-400);margin-top:1rem}.virtual-assistant__panel__placeholder__instruction{font-family:"Roboto Mono",monospace;font-size:1.3rem;font-weight:700;color:var(--color-dark-grey-300);margin-top:.5rem}.virtual-assistant__search{height:100%}.virtual-assistant__search__header{display:flex;align-items:center;justify-content:center;padding:.3rem;border-bottom:.1rem solid var(--color-dark-grey-250);height:3.4rem;position:relative}.virtual-assistant__search__input{font-size:1.3rem;height:2.8rem;padding-right:2.8rem;padding-left:1rem;width:100%;background:var(--color-dark-grey-85);border-radius:.2rem;border:.1rem solid var(--color-dark-grey-200)}.virtual-assistant__search__input--searching{padding-right:9rem}.virtual-assistant__search__input__search__count{display:flex;align-items:center;justify-content:center;position:absolute;right:5.4rem;border-radius:.8rem;height:1.6rem;padding:0 .5rem;font-size:1.1rem;font-weight:700;background:var(--color-yellow-100);color:var(--color-dark-grey-280);user-select:none;cursor:default}.virtual-assistant__search__input__search__icon{display:flex;align-items:center;justify-content:center;position:absolute;right:.3rem;height:2.8rem;width:2.8rem}.virtual-assistant__search__input__search__icon svg{color:var(--color-light-shade-100)}.virtual-assistant__search__input__clear-btn{display:flex;align-items:center;justify-content:center;position:absolute;right:.3rem;height:2.8rem;width:2.8rem}.virtual-assistant__search__input__clear-btn svg{color:var(--color-dark-grey-400)}.virtual-assistant__search__input__clear-btn:hover svg{color:var(--color-dark-grey-500)}.virtual-assistant__search__input__config__trigger{display:flex;align-items:center;justify-content:center;position:absolute;right:3.1rem;height:2.8rem;width:1.8rem;cursor:pointer}.virtual-assistant__search__input__config__trigger svg{color:var(--color-dark-grey-400)}.virtual-assistant__search__input__config__trigger--toggled svg,.virtual-assistant__search__input__config__trigger:hover svg{color:var(--color-dark-grey-500)}.virtual-assistant__search__input__config__trigger--active svg,.virtual-assistant__search__input__config__trigger--active:hover svg{color:var(--color-blue-150)}.virtual-assistant__search__input__config__panel{width:100%;height:12rem;position:absolute;z-index:1;box-shadow:var(--color-dark-shade-280) .2rem .1rem .3rem .1rem;overflow:hidden;max-height:0;transition:max-height ease-in-out 100ms}.virtual-assistant__search__input__config__panel--toggled{max-height:12rem}.virtual-assistant__search__content{height:calc(100% - 3.4rem);position:relative}.virtual-assistant__search__results{height:100%;overflow-y:auto;padding:1rem}.virtual-assistant__search__results__placeholder{font-family:"Roboto Mono",monospace;font-size:1.3rem;color:var(--color-light-grey-400)}.virtual-assistant__doc-entry+.virtual-assistant__doc-entry{margin-top:.5rem}.virtual-assistant__doc-entry__header{display:flex}.virtual-assistant__doc-entry__expand-icon{display:flex;align-items:flex-start;width:2rem;min-width:2rem;padding-top:.3rem}.virtual-assistant__doc-entry__expand-icon svg{color:var(--color-light-grey-50)}.virtual-assistant__doc-entry__expand-icon--disabled svg{color:var(--color-dark-grey-300)}.virtual-assistant__doc-entry__title{line-height:1.5;font-weight:500;color:var(--color-light-grey-50);cursor:pointer;user-select:none}.virtual-assistant__doc-entry__title--link{color:var(--color-blue-40);text-decoration:none}.virtual-assistant__doc-entry__content{margin-top:.5rem;padding-left:2rem}.virtual-assistant__doc-entry__content__text{color:var(--color-light-grey-50);line-height:1.5;background:var(--color-dark-grey-80);border-radius:.2rem;padding:1rem}.virtual-assistant__doc-entry__content__markdown-text{padding:1rem;border-radius:.2rem}.virtual-assistant__character{display:flex;align-items:center;justify-content:center;flex-direction:column}.virtual-assistant__character__container{display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}.virtual-assistant__character__greeting{font-family:"Roboto Mono",monospace;font-size:1.3rem;color:var(--color-light-grey-400);margin-top:.6rem;cursor:default;user-select:none}.virtual-assistant__character__question{font-family:"Roboto Mono",monospace;font-size:1.3rem;font-weight:700;color:var(--color-light-grey-0);margin-top:.6rem;cursor:default;user-select:none}.virtual-assistant__character__figure{display:flex;align-items:center;justify-content:center;position:relative;width:10rem;height:20rem}.virtual-assistant__character__hat{position:absolute;font-size:8rem;color:var(--color-orange-150);top:0}.virtual-assistant__character__glasses{position:absolute;font-size:8rem;color:var(--color-dark-grey-300);top:6rem}.virtual-assistant__character__beard{position:absolute;color:var(--color-yellow-200);font-size:8rem;top:11rem}.virtual-assistant__contextual-support{height:100%}.virtual-assistant__contextual-support__content{height:100%;overflow-y:auto;padding:1.5rem}.virtual-assistant__contextual-support__title{line-height:1.5;font-weight:700;color:var(--color-light-grey-50);cursor:pointer;user-select:none;font-size:1.5rem;margin-bottom:1rem}.virtual-assistant__contextual-support__text{color:var(--color-light-grey-50);line-height:1.5;background:var(--color-dark-grey-80);border-radius:.2rem;padding:1rem;margin-bottom:1rem}.virtual-assistant__contextual-support__markdown-text{padding:1rem;border-radius:.2rem;margin-bottom:1rem}.virtual-assistant__contextual-support__relevant-entries__title{color:var(--color-dark-grey-500);font-family:"Roboto Mono",monospace;font-size:1.3rem;margin-bottom:1rem}.text-search-advanced-config__panel{width:100%;background:var(--color-dark-grey-250)}.text-search-advanced-config__panel__header__label{display:flex;align-items:center;font-weight:500;color:var(--color-light-grey-50);background:var(--color-dark-grey-300);padding:0 1rem;line-height:2rem;font-size:1.2rem;cursor:default}.text-search-advanced-config__panel__header__hint{display:flex;align-items:center;justify-content:center;border-radius:.2rem;padding:0 .5rem;color:var(--color-light-grey-300)}.text-search-advanced-config__panel__header__hint svg{font-size:1.2rem}.tab-manager{display:flex;flex:1;overflow:hidden;height:100%}.tab-manager__content{width:calc(100% - 2.8rem);display:flex;overflow-x:overlay}.tab-manager__tab{display:flex;align-items:center;cursor:pointer;color:var(--color-light-grey-400);background:var(--color-dark-grey-80);border-right:.1rem solid var(--color-dark-grey-50)}.tab-manager__tab--active{color:var(--color-light-grey-100);background:var(--color-dark-grey-50)}.tab-manager__tab--dragged{filter:opacity(0.7)}.tab-manager__tab__content{display:flex;align-items:center;height:100%;width:100%}.tab-manager__tab__label{height:100%;color:inherit;padding:0 .5rem 0 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab-manager__tab__close-btn{visibility:hidden;display:flex;align-items:center}.tab-manager__tab__close-btn svg{color:var(--color-light-grey-200);font-size:1.2rem;margin-right:1rem}.tab-manager__tab--active .tab-manager__tab__close-btn,.tab-manager__tab:hover .tab-manager__tab__close-btn{visibility:visible}.tab-manager__tab--active .tab-manager__tab__close-btn svg,.tab-manager__tab:hover .tab-manager__tab__close-btn svg{color:var(--color-light-grey-100)}.tab-manager__tab__dnd__placeholder{text-align:left;margin:0;padding:0 .5rem;background-color:var(--color-dark-grey-100)}.tab-manager__menu{min-width:15rem;max-width:30rem;height:100%;padding:0}.tab-manager__menu__toggler{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;color:var(--color-light-grey-400);border-left:.1rem solid var(--color-dark-grey-50);height:100%;width:2.8rem}.tab-manager__menu__item{justify-content:space-between}.tab-manager__menu__item--active,.tab-manager__menu__item:not([disabled]):hover{background:var(--color-dark-grey-250)}.tab-manager__menu__item__label{text-align:left;white-space:nowrap;font-size:1.3rem;overflow:hidden;text-overflow:ellipsis}.tab-manager__menu__item__close-btn{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;padding:.4rem;margin-left:.6rem;flex-direction:end}.tab-manager__menu__item__close-btn svg{width:1.2rem;height:1.2rem}.documentation-link{display:inline-flex;align-self:center;color:var(--color-dark-grey-500);cursor:pointer}.documentation-preview{display:flex;background:var(--color-dark-grey-85);border:.1rem solid var(--color-dark-grey-280);border-radius:.2rem}.documentation-preview__text{padding:1rem;width:calc(100% - 3rem);color:var(--color-light-grey-400);line-height:2rem}.documentation-preview__hint{display:flex;justify-content:center;padding:1rem 0;width:3rem}.text-editor__container{height:100%;width:100%;position:relative;background:var(--color-dark-grey-50)}.text-editor__body{height:100%;width:100%;position:absolute;top:0;left:0;overflow:hidden}.packageable-element-option-label{display:flex;align-items:center}.packageable-element-option-label__tag{display:flex;align-items:center;color:var(--color-dark-grey-500);background:var(--color-light-grey-50);border:.1rem solid var(--color-light-grey-180);margin-left:1rem;border-radius:.2rem;font-size:1rem;padding:0 .5rem;height:1.6rem;font-weight:500}.packageable-element-option-label__name{display:flex;align-items:center;height:1.8rem}.packageable-element-option-label__type{margin:-1rem .8rem -1rem -1.2rem;height:3.2rem;padding-left:.5rem;background:rgba(0,0,0,0)}.packageable-element-option-label__type--system{background:var(--color-system)}.packageable-element-option-label__type--generated{background:var(--color-generated)}.packageable-element-option-label__type--dependency{background:var(--color-dependency)}.packageable-element-option-label--dark{display:flex;align-items:center;display:flex}.packageable-element-option-label--dark__tag{display:flex;align-items:center;color:var(--color-dark-grey-250);background:var(--color-dark-grey-400);margin-left:1rem;border-radius:.2rem;font-size:1rem;padding:0 .5rem;height:1.6rem;font-weight:500}.packageable-element-option-label--dark__name{display:flex;align-items:center;height:1.8rem}.execution-plan-viewer{height:100%;width:100%}.execution-plan-viewer__content{height:100%;width:100%}.execution-plan-viewer__debug-panel{background:var(--color-dark-grey-50)}.execution-plan-viewer__debug-panel .panel__header{background:var(--color-dark-grey-250)}.execution-plan-viewer__debug-panel .panel__content{position:relative;background:var(--color-dark-grey-50)}.execution-plan-viewer__close-btn{border-color:var(--color-blue-200);background:var(--color-blue-300)}.execution-plan-viewer .panel{height:100%}.execution-plan-viewer .panel__header{color:var(--color-light-grey-400);font-weight:bold;background:var(--color-dark-grey-50)}.execution-plan-viewer .panel__header__title{max-width:calc(100% - 11rem)}.execution-plan-viewer .panel__main-header{color:var(--color-light-grey-400);font-weight:bold;background:var(--color-dark-grey-250)}.execution-plan-viewer .panel__content{position:relative;height:calc(100% - 3rem);width:100%;background:var(--color-dark-grey-50);overflow-y:hidden}.execution-plan-viewer .panel__content ::-webkit-scrollbar-thumb{background:var(--color-dark-grey-400)}.execution-plan-viewer .panel__content>div:first-child{margin-top:0}.execution-plan-viewer .panel__content__lists{height:100%;width:100%;padding:1rem;overflow:overlay}.execution-plan-viewer__tabs__header{padding-left:0}.execution-plan-viewer__tabs{height:2.8rem;z-index:1;display:flex;overflow-x:overlay;overflow-y:hidden}.execution-plan-viewer__tab{height:100%;display:inline-flex;align-items:center;justify-content:center;padding:0 1rem;border-right:.1rem solid var(--color-dark-grey-200);white-space:nowrap;cursor:pointer}.execution-plan-viewer__tab--active{color:var(--color-dark-grey-50);position:relative}.execution-plan-viewer__tab--active::after{content:"";height:.4rem;width:100%;position:absolute;bottom:0;background:var(--color-yellow-200)}.execution-plan-viewer__panel{height:100%;width:100%}.execution-plan-viewer__panel__content{overflow-y:hidden;position:relative;background:var(--color-dark-grey-50);height:calc(100% - 3.4rem)}.execution-plan-viewer__panel__header{background:var(--color-dark-grey-100);z-index:1;height:3.4rem;min-height:3.4rem;padding:0}.execution-plan-viewer__panel__header__tabs{display:flex;height:100%;overflow-x:overlay}.execution-plan-viewer__panel__header__tab{display:flex;align-items:center;padding:0 1rem;cursor:pointer;color:var(--color-light-grey-400);background:var(--color-dark-grey-80);border-right:.1rem solid var(--color-dark-grey-80)}.execution-plan-viewer__panel__header__tab--active{color:var(--color-light-grey-100);background:var(--color-dark-grey-50)}.execution-plan-viewer__panel__header__tab__content{display:flex;align-items:center;height:100%;width:100%}.execution-plan-viewer__panel__header__tab__icon{margin-right:.5rem}.execution-plan-viewer__panel__header__tab__label{color:inherit;padding:0 .5rem;white-space:nowrap}.execution-plan-viewer__panel__view-mode__type{display:flex;align-items:center;justify-content:center;width:15rem;background:var(--color-dark-grey-100);border-right:.1rem solid var(--color-dark-grey-50);border-left:.1rem solid var(--color-dark-grey-50);color:var(--color-light-grey-300);cursor:pointer}.execution-plan-viewer__panel__view-mode__type:hover{background:var(--color-dark-grey-200)}.execution-plan-viewer__panel__view-mode__type__label{display:flex;align-items:center;height:3.4rem;padding:0 .5rem;border-top:.3rem solid var(--color-yellow-200)}.execution-plan-viewer__panel__view-mode__options{width:15rem}.execution-plan-viewer__panel__view-mode__options--with-group{border:none;padding:0}.execution-plan-viewer__panel__view-mode__option__group__name{display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:default;writing-mode:vertical-lr;transform:rotate(180deg);font-size:1.1rem;width:2.2rem;padding:.5rem 0}.execution-plan-viewer__panel__view-mode__option__group{display:flex;flex-direction:row}.execution-plan-viewer__panel__view-mode__option__group--native{background:var(--color-blue-100);border:.1rem solid var(--color-blue-100)}.execution-plan-viewer__panel__view-mode__option__group--native .execution-plan-viewer__panel__view-mode__option__group__name{background:var(--color-blue-100);color:var(--color-light-grey-50)}.execution-plan-viewer__panel__view-mode__option__group--generation{background:var(--color-pink-300);border:.1rem solid var(--color-pink-300)}.execution-plan-viewer__panel__view-mode__option__group--generation .execution-plan-viewer__panel__view-mode__option__group__name{background:var(--color-pink-300);color:var(--color-light-grey-50)}.execution-plan-viewer__panel__view-mode__option__group__separator{height:.2rem;width:100%}.execution-plan-viewer__panel__view-mode__option__group__options{width:100%;background:var(--color-dark-grey-100)}.execution-plan-viewer__panel__view-mode__option{display:flex;align-items:center;justify-content:center;height:2rem}.execution-plan-viewer__explorer{width:100%}.execution-plan-viewer__explorer__content__container{height:100%;background:var(--color-dark-grey-100)}.execution-plan-viewer__explorer-tree__node__container:hover{background:var(--color-dark-blue-shade-100)}.execution-plan-viewer__explorer-tree__node__container--selected,.execution-plan-viewer__explorer-tree__node__container--selected:hover{background:var(--color-light-blue-450)}.execution-plan-viewer__explorer-tree__node__icon{width:4rem;min-width:4rem}.execution-plan-viewer__explorer-tree__node__icon__expand,.execution-plan-viewer__explorer-tree__node__icon__type{width:2rem;display:flex;justify-content:center}.execution-plan-viewer__explorer-tree__node__icon__expand svg{font-size:1rem}.execution-plan-viewer__explorer-tree__node__label{color:inherit}.execution-plan-viewer__unsupported-view,.execution-node-viewer__unsupported-view{display:flex;align-items:center;justify-content:center;flex-direction:column}.execution-plan-viewer__unsupported-view__summary,.execution-node-viewer__unsupported-view__summary{font-weight:500;margin-bottom:1rem}.execution-plan-viewer__unsupported-view__to-text-mode__btn,.execution-node-viewer__unsupported-view__to-text-mode__btn{height:2.8rem;width:15rem}/*# sourceMappingURL=index.css.map */
package/lib/index.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../style/_deps.scss","../style/_extensions.scss","../style/components/_app.scss","../../../node_modules/@finos/legend-art/scss/_mixins.scss","../style/components/_blocking-alert.scss","../style/components/_backdrop.scss","../style/components/_notification.scss","../style/components/_virtual-assistant.scss","../style/components/_text-search.scss","../style/components/shared/_tab-manager.scss","../style/components/shared/_documentation-link.scss","../style/components/shared/_text-editor.scss","../style/components/shared/_packageable-element-option-label.scss","../style/components/shared/_execution-plan-viewer.scss"],"names":[],"mappings":"AAgBQ,mCCCN,+CACA,2CAEA,mDACA,+CACA,4CACA,uCACA,sCACA,6CACA,sCACA,yCACA,2CACA,yCACA,wCACA,2CACA,0CACA,8CACA,0CACA,8CACA,2CACA,iDACA,sCACA,sCACA,4CACA,yCAIA,cACE,yBAGF,oBACE,+BAGF,aACE,wBAGF,gBACE,2BAGF,oBACE,+BAGF,kBACE,6BAGF,mBACE,8BAGF,gBACE,2BAGF,iBACE,4BAGF,wBACE,mCAGF,gBACE,2BAGF,kBACE,6BAGF,eACE,0BAGF,mBACE,8BAGF,eACE,0BAGF,kBACE,6BAGF,iBACE,4BAGF,cACE,yBAGF,eACE,0BAGF,gBACE,2BAGF,mBACE,8BAGF,gBACE,2BAGF,aACE,wBAKF,6CAEE,8BAGF,yBACE,oCAGF,kBACE,6BAGF,qBACE,gCAGF,yBACE,oCAGF,uBACE,kCAGF,wBACE,mCAGF,qBACE,gCAGF,qBACE,gCAGF,uBACE,kCAGF,sBACE,iCAGF,qBACE,gCAGF,wBACE,mCAGF,qBACE,gCAGF,wBACE,mCAGF,kBACE,6BCvLJ,gBACE,YACA,WAGF,KACE,YAEA,WACE,YACA,qCAIA,kBACE,gBACA,qCACA,eACA,oBAGF,kBACE,aACA,eACA,gBACA,oCAGF,yBACE,mBACA,iCAGF,yBACE,kCAGF,2BACE,qBACA,gBACA,2BAGF,uBACE,aACA,gBACA,YAEA,+BCpCJ,aACA,mBDsCM,cACA,sCACA,8BACA,eAEA,sCACE,eACA,iBACA,gBACA,iCACA,oCAIJ,gCACE,2BACA,cACA,aACA,qCACA,8BAIA,yCCvCN,YACA,cDyCQ,aACA,WAGF,iDC9CN,YACA,cDgDQ,WAEA,qDACE,iBAIJ,+CCxDN,YACA,cD0DQ,WAEA,mDACE,iBACA,4BAIJ,0CACE,aACA,cACA,YACA,iBACA,YACA,mBACA,iBACA,oCAEA,iDACE,iBAGF,mDC9GR,aACA,mBACA,uBD+GU,YACA,iBAGF,0DCrHR,aACA,mBACA,uBDsHU,cACA,cACA,sCACA,eACA,oBElIZ,gBACE,UAEA,gCACE,wBAGF,2BACE,8BAGF,qBDLA,aACA,mBACA,uBCME,cACA,oBACA,YACA,iCAGF,6BACE,mBACA,eACA,mBAGF,yBACE,kBAGF,iCACE,kBACA,iBACA,4BACA,gBAGF,8BACE,kCACA,gBAGF,6BACE,2BACA,iBACA,gBACA,gBAGF,0BACE,yCAGF,yBACE,yCAEA,uCACE,iCAGF,sDACE,4BC/DN,UACE,kDACA,uBAEA,qBACE,SACA,QACA,kBAGF,mBACE,YACA,kBACA,2DCVF,wBACE,YACA,WAGF,uBACE,sCACA,kCACA,oBACA,uBAGF,gCACE,aACA,uBACA,eAEA,uCACE,sCAIJ,sCACE,kBACA,mBAGF,0CACE,iBAGF,4CACE,kCAGF,6CACE,2BAGF,+CACE,8BAGF,+CACE,6BAGF,sCH1BA,mBACA,uBACA,gBACA,sBACA,gBGyBE,iBACA,gBAEA,gDACE,cAIA,qBACA,YAIJ,uBACE,2BAGF,sBH9DA,aACA,mBACA,uBG+DE,WACA,iCAGF,4BACE,kCC5EJ,mBACE,kBAMA,cAIA,YACA,WAEA,iCAGE,cAGF,4BJRA,aACA,mBIUE,yBACA,cACA,aAEA,wCACA,qCACA,WACA,wCACA,iCAGF,qCJ5BA,aACA,mBACA,uBI6BE,cACA,aACA,kBACA,gCACA,2BAEA,4CACE,iBACA,kCACA,kBAGF,6CACE,iBACA,gCACA,oEAGF,yBACE,KACE,WAGF,GACE,YAKN,oCACE,aAGF,yCACE,cACA,WACA,YAEA,kDJrEF,aACA,mBACA,uBIsEI,YACA,WAGF,mDACE,gBAGF,6CACE,eACA,mCAIJ,oCACE,qCACA,2BACA,4BAGF,yEACE,mCACA,+BACA,4BAGF,wBACE,KACE,uCAGF,GACE,sCAIJ,4BACE,KACE,qCAGF,GACE,oCAKN,0BACE,aACA,YACA,oBACA,sCACA,8CACA,qKAMA,mBAEA,qCAGE,cAMA,oBAEA,2CACE,aAIJ,kCJ/IA,aACA,mBIiJE,8BACA,sCACA,cAEA,2CJtJF,aACA,mBIyJE,0CJhKF,aACA,mBACA,uBIiKI,aACA,cAEA,8CACE,iCAGF,oDACE,iCAKN,wCACE,aACA,cACA,iCAGF,uCACE,eACA,oDAEA,6CACE,sCAIJ,gDJ/LA,aACA,mBACA,uBIgME,eACA,cACA,WACA,qDACA,kBACA,kBAEA,oDACE,iBACA,iCAIJ,kDACE,kBACA,UACA,WACA,YACA,WACA,kBACA,mCAGF,iGACE,iCAGF,oMAEE,kDAEA,4MACE,kCAIJ,mCACE,2BAGF,uCACE,iBAGF,uCJ9OA,aACA,mBACA,uBI+OE,sBAEA,6CACE,eACA,8BAGF,gDACE,oCACA,iBACA,kCACA,gBAGF,oDACE,oCACA,iBACA,gBACA,iCACA,iBAKN,2BACE,YAEA,mCJ5QA,aACA,mBACA,uBI6QE,cACA,qDACA,cACA,kBAGF,kCACE,iBACA,cACA,qBACA,kBACA,WACA,qCACA,oBACA,8CAEA,6CACE,mBAGF,iDJnSF,aACA,mBACA,uBIoSI,kBACA,aACA,oBACA,cACA,gBACA,iBACA,gBACA,mCACA,iCACA,iBACA,eAGF,gDJnTF,aACA,mBACA,uBIoTI,kBACA,YACA,cACA,aAEA,oDACE,mCAIJ,6CJhUF,aACA,mBACA,uBIiUI,kBACA,YACA,cACA,aAEA,iDACE,iCAGF,uDACE,iCAIJ,mDJjVF,aACA,mBACA,uBIkVI,kBACA,aACA,cACA,aACA,eAEA,uDACE,iCAGF,6HAEE,iCAGF,oIAEE,4BAIJ,iDACE,WACA,aACA,kBACA,UACA,+DAGA,gBACA,aACA,wCAEA,0DACE,iBAKN,oCACE,2BACA,kBAGF,oCACE,YACA,gBACA,aAGF,iDACE,oCACA,iBACA,kCAKF,4DACE,iBAGF,sCACE,aAGF,2CACE,aACA,uBACA,WACA,eACA,kBAEA,+CACE,iCAKF,yDACE,iCAIJ,qCACE,gBACA,gBACA,iCACA,eACA,iBAGF,2CACE,2BACA,qBAGF,uCACE,iBACA,kBAGF,6CACE,iCACA,gBACA,qCACA,oBACA,aAGF,sDACE,aACA,oBAIJ,8BJxcE,aACA,mBACA,uBIycA,sBAEA,yCJ7cA,aACA,mBACA,uBI8cE,WACA,YACA,gBAGF,wCACE,oCACA,iBACA,kCACA,iBACA,eACA,iBAGF,wCACE,oCACA,iBACA,gBACA,gCACA,iBACA,eACA,iBAGF,sCJxeA,aACA,mBACA,uBIyeE,kBACA,YACA,aAGF,mCACE,kBACA,eACA,8BACA,MAGF,uCACE,kBACA,eACA,iCACA,SAGF,qCACE,kBACA,8BACA,eACA,UAIJ,uCACE,YAEA,gDACE,YACA,gBACA,eAGF,8CACE,gBACA,gBACA,iCACA,eACA,iBACA,iBACA,mBAGF,6CACE,iCACA,gBACA,qCACA,oBACA,aACA,mBAGF,sDACE,aACA,oBACA,mBAIA,gEACE,iCACA,oCACA,iBACA,mBCnjBN,oCACE,WACA,sCAEA,mDLQA,aACA,mBKNE,gBACA,iCACA,sCACA,eACA,iBACA,iBACA,eAGF,kDLVA,aACA,mBACA,uBKWE,oBACA,gBACA,kCAEA,sDACE,iBCxBN,aACE,aACA,OACA,gBACA,YAEA,sBACE,0BACA,aACA,mBAGF,+BNCA,mBMEE,eACA,kCACA,qCACA,mDAEA,0BACE,kCACA,qCAGF,2BACE,oBAGF,2BNjBF,aACA,mBMmBI,YACA,WAGF,yBACE,YACA,cACA,uBACA,mBACA,gBACA,uBAGF,6BACE,kBNlCJ,aACA,mBMqCI,iCACE,kCACA,iBACA,kBAIJ,4GAEE,mBAEA,oHACE,kCAIJ,oCACE,gBACA,SACA,gBACA,4CAIJ,mBACE,gBACA,gBACA,YACA,UAEA,4BN1EF,aACA,mBACA,uBA2BA,YACA,cMgDI,kCACA,kDACA,YACA,aAGF,yBACE,8BAEA,gFAEE,sCAIJ,gCACE,gBACA,mBACA,iBACA,gBACA,uBAGF,oCNrGF,aACA,mBACA,uBA2BA,YACA,cM2EI,cACA,kBACA,mBAEA,wCACE,aACA,cCrHR,oBACE,oBACA,kBACA,YACA,iCACA,eAGF,uBACE,aACA,qCACA,8CACA,oBAEA,6BACE,aACA,wBACA,kCACA,iBAGF,6BPJA,aACA,uBOME,eACA,WC1BF,wBACE,YACA,WACA,kBACA,qCAGF,mBACE,YACA,WACA,kBACA,MACA,OACA,gBCZJ,kCTYE,aACA,mBSVA,uCTSA,aACA,mBSPE,iCACA,sCACA,+CACA,iBACA,oBACA,eACA,gBACA,cACA,gBAGF,wCTLA,aACA,mBSOE,cAIJ,wCACE,iCACA,cACA,mBACA,yBAEA,gDACE,+BAGF,mDACE,kCAGF,oDACE,mCAIJ,wCT/BE,aACA,mBSiCA,aAEA,6CTpCA,aACA,mBSsCE,iCACA,sCACA,iBACA,oBACA,eACA,gBACA,cACA,gBAGF,8CTjDA,aACA,mBSmDE,cChEJ,uBACE,YACA,WAEA,gCACE,YACA,WAGF,oCACE,qCAEA,mDACE,sCAGF,oDACE,kBACA,qCAIJ,kCACE,mCACA,iCAGF,8BACE,YAEA,sCACE,kCACA,iBACA,qCAEA,6CACE,6BAIJ,2CACE,kCACA,iBACA,sCAGF,uCACE,kBACA,yBACA,WACA,qCACA,kBAEA,iEACE,sCAIJ,uDACE,aAGF,8CACE,YACA,WACA,aACA,iBAIJ,qCACE,eAGF,6BACE,cACA,UACA,aACA,mBACA,kBAGF,4BACE,YACA,oBACA,mBACA,uBACA,eACA,oDACA,mBACA,eAGF,oCACE,gCACA,kBAGF,2CACE,WACA,aACA,WACA,kBACA,SACA,mCAGF,8BACE,YACA,WAEA,uCACE,kBACA,kBACA,qCACA,2BAGF,sCACE,sCACA,UACA,cACA,kBACA,UAGF,4CACE,aACA,YACA,mBAGF,2CVxHF,aACA,mBU0HI,eACA,eACA,kCACA,qCACA,mDAGF,mDACE,kCACA,qCAGF,oDVvIF,aACA,mBUyII,YACA,WAGF,iDACE,mBAGF,kDACE,cACA,gBACA,mBAIA,+CV/JJ,aACA,mBACA,uBUgKM,YACA,sCACA,mDACA,kDACA,kCACA,eAGF,qDACE,sCAGF,sDVxKJ,aACA,mBU0KM,cACA,gBACA,+CAGF,kDACE,YAGF,8DACE,YACA,UAGF,8DV/LJ,aACA,mBACA,uBUgMM,sBACA,eACA,yBACA,yBACA,iBACA,aACA,gBAGF,wDACE,aACA,mBAEA,gEACE,iCACA,yCAGF,8HACE,iCACA,iCAGF,oEACE,iCACA,yCAGF,kIACE,iCACA,iCAIJ,mEACE,aACA,WAGF,iEACE,WACA,sCAGF,iDV9OJ,aACA,mBACA,uBU+OM,YAKN,iCACE,WAEA,qDACE,YACA,sCAIJ,6DACE,4CAGF,wIAEE,uCAGF,kDACE,WACA,eAGF,kHAEE,WVpQF,aACA,uBUwQA,8DACE,eAGF,mDACE,cAMF,kFV/RA,aACA,mBACA,uBUgSE,sBAEA,oGACE,gBACA,mBAGF,wHACE,cACA","file":"index.css"}
1
+ {"version":3,"sourceRoot":"","sources":["../style/_deps.scss","../style/_extensions.scss","../style/components/_app.scss","../../../node_modules/@finos/legend-art/scss/_mixins.scss","../style/components/_blocking-alert.scss","../style/components/_backdrop.scss","../style/components/_notification.scss","../style/components/_virtual-assistant.scss","../style/components/_text-search.scss","../style/components/shared/_tab-manager.scss","../style/components/shared/_documentation-link.scss","../style/components/shared/_text-editor.scss","../style/components/shared/_packageable-element-option-label.scss","../style/components/shared/_execution-plan-viewer.scss"],"names":[],"mappings":"AAgBQ,mCCCN,+CACA,2CAEA,mDACA,+CACA,4CACA,uCACA,sCACA,6CACA,sCACA,yCACA,2CACA,yCACA,wCACA,2CACA,0CACA,8CACA,0CACA,8CACA,2CACA,iDACA,sCACA,sCACA,4CACA,yCAIA,cACE,yBAGF,oBACE,+BAGF,aACE,wBAGF,gBACE,2BAGF,oBACE,+BAGF,kBACE,6BAGF,mBACE,8BAGF,gBACE,2BAGF,iBACE,4BAGF,wBACE,mCAGF,gBACE,2BAGF,kBACE,6BAGF,eACE,0BAGF,mBACE,8BAGF,eACE,0BAGF,kBACE,6BAGF,iBACE,4BAGF,cACE,yBAGF,eACE,0BAGF,gBACE,2BAGF,mBACE,8BAGF,gBACE,2BAGF,aACE,wBAKF,6CAEE,8BAGF,yBACE,oCAGF,kBACE,6BAGF,qBACE,gCAGF,yBACE,oCAGF,uBACE,kCAGF,wBACE,mCAGF,qBACE,gCAGF,qBACE,gCAGF,uBACE,kCAGF,sBACE,iCAGF,qBACE,gCAGF,wBACE,mCAGF,qBACE,gCAGF,wBACE,mCAGF,kBACE,6BCvLJ,gBACE,YACA,WAGF,KACE,YACA,qCAEA,WACE,YACA,qCAIA,kBACE,gBACA,qCACA,eACA,oBAGF,kBACE,aACA,eACA,gBACA,oCAGF,yBACE,mBACA,iCAGF,yBACE,kCAGF,2BACE,qBACA,gBACA,2BAGF,uBACE,aACA,gBACA,YAEA,+BCrCJ,aACA,mBDuCM,cACA,sCACA,8BACA,eAEA,sCACE,eACA,iBACA,gBACA,iCACA,oCAIJ,gCACE,2BACA,cACA,aACA,qCACA,8BAIA,yCCxCN,YACA,cD0CQ,aACA,WAGF,iDC/CN,YACA,cDiDQ,WAEA,qDACE,iBAIJ,+CCzDN,YACA,cD2DQ,WAEA,mDACE,iBACA,4BAIJ,0CACE,aACA,cACA,YACA,iBACA,YACA,mBACA,iBACA,oCAEA,iDACE,iBAGF,mDC/GR,aACA,mBACA,uBDgHU,YACA,iBAGF,0DCtHR,aACA,mBACA,uBDuHU,cACA,cACA,sCACA,eACA,oBEnIZ,gBACE,UAEA,gCACE,wBAGF,2BACE,8BAGF,qBDLA,aACA,mBACA,uBCME,cACA,oBACA,YACA,iCAGF,6BACE,mBACA,eACA,mBAGF,yBACE,kBAGF,iCACE,kBACA,iBACA,4BACA,gBAGF,8BACE,kCACA,gBAGF,6BACE,2BACA,iBACA,gBACA,gBAGF,0BACE,yCAGF,yBACE,yCAEA,uCACE,iCAGF,sDACE,4BC/DN,UACE,kDACA,uBAEA,qBACE,SACA,QACA,kBAGF,mBACE,YACA,kBACA,2DCVF,wBACE,YACA,WAGF,uBACE,sCACA,kCACA,oBACA,uBAGF,gCACE,aACA,uBACA,eAEA,uCACE,sCAIJ,sCACE,kBACA,mBAGF,0CACE,iBAGF,4CACE,kCAGF,6CACE,2BAGF,+CACE,8BAGF,+CACE,6BAGF,sCH1BA,mBACA,uBACA,gBACA,sBACA,gBGyBE,iBACA,gBAEA,gDACE,cAIA,qBACA,YAIJ,uBACE,2BAGF,sBH9DA,aACA,mBACA,uBG+DE,WACA,iCAGF,4BACE,kCC5EJ,mBACE,kBAMA,cAIA,YACA,WAEA,iCAGE,cAGF,4BJRA,aACA,mBIUE,yBACA,cACA,aAEA,wCACA,qCACA,WACA,wCACA,iCAGF,qCJ5BA,aACA,mBACA,uBI6BE,cACA,aACA,kBACA,gCACA,2BAEA,4CACE,iBACA,kCACA,kBAGF,6CACE,iBACA,gCACA,oEAGF,yBACE,KACE,WAGF,GACE,YAKN,oCACE,aAGF,yCACE,cACA,WACA,YAEA,kDJrEF,aACA,mBACA,uBIsEI,YACA,WAGF,mDACE,gBAGF,6CACE,eACA,mCAIJ,oCACE,qCACA,2BACA,4BAGF,yEACE,mCACA,+BACA,4BAGF,wBACE,KACE,uCAGF,GACE,sCAIJ,4BACE,KACE,qCAGF,GACE,oCAKN,0BACE,aACA,YACA,oBACA,sCACA,8CACA,qKAMA,mBAEA,qCAGE,cAMA,oBAEA,2CACE,aAIJ,kCJ/IA,aACA,mBIiJE,8BACA,sCACA,cAEA,2CJtJF,aACA,mBIyJE,0CJhKF,aACA,mBACA,uBIiKI,aACA,cAEA,8CACE,iCAGF,oDACE,iCAKN,wCACE,aACA,cACA,iCAGF,uCACE,eACA,oDAEA,6CACE,sCAIJ,gDJ/LA,aACA,mBACA,uBIgME,eACA,cACA,WACA,qDACA,kBACA,kBAEA,oDACE,iBACA,iCAIJ,kDACE,kBACA,UACA,WACA,YACA,WACA,kBACA,mCAGF,iGACE,iCAGF,oMAEE,kDAEA,4MACE,kCAIJ,mCACE,2BAGF,uCACE,iBAGF,uCJ9OA,aACA,mBACA,uBI+OE,sBAEA,6CACE,eACA,8BAGF,gDACE,oCACA,iBACA,kCACA,gBAGF,oDACE,oCACA,iBACA,gBACA,iCACA,iBAKN,2BACE,YAEA,mCJ5QA,aACA,mBACA,uBI6QE,cACA,qDACA,cACA,kBAGF,kCACE,iBACA,cACA,qBACA,kBACA,WACA,qCACA,oBACA,8CAEA,6CACE,mBAGF,iDJnSF,aACA,mBACA,uBIoSI,kBACA,aACA,oBACA,cACA,gBACA,iBACA,gBACA,mCACA,iCACA,iBACA,eAGF,gDJnTF,aACA,mBACA,uBIoTI,kBACA,YACA,cACA,aAEA,oDACE,mCAIJ,6CJhUF,aACA,mBACA,uBIiUI,kBACA,YACA,cACA,aAEA,iDACE,iCAGF,uDACE,iCAIJ,mDJjVF,aACA,mBACA,uBIkVI,kBACA,aACA,cACA,aACA,eAEA,uDACE,iCAGF,6HAEE,iCAGF,oIAEE,4BAIJ,iDACE,WACA,aACA,kBACA,UACA,+DAGA,gBACA,aACA,wCAEA,0DACE,iBAKN,oCACE,2BACA,kBAGF,oCACE,YACA,gBACA,aAGF,iDACE,oCACA,iBACA,kCAKF,4DACE,iBAGF,sCACE,aAGF,2CACE,aACA,uBACA,WACA,eACA,kBAEA,+CACE,iCAKF,yDACE,iCAIJ,qCACE,gBACA,gBACA,iCACA,eACA,iBAGF,2CACE,2BACA,qBAGF,uCACE,iBACA,kBAGF,6CACE,iCACA,gBACA,qCACA,oBACA,aAGF,sDACE,aACA,oBAIJ,8BJxcE,aACA,mBACA,uBIycA,sBAEA,yCJ7cA,aACA,mBACA,uBI8cE,WACA,YACA,gBAGF,wCACE,oCACA,iBACA,kCACA,iBACA,eACA,iBAGF,wCACE,oCACA,iBACA,gBACA,gCACA,iBACA,eACA,iBAGF,sCJxeA,aACA,mBACA,uBIyeE,kBACA,YACA,aAGF,mCACE,kBACA,eACA,8BACA,MAGF,uCACE,kBACA,eACA,iCACA,SAGF,qCACE,kBACA,8BACA,eACA,UAIJ,uCACE,YAEA,gDACE,YACA,gBACA,eAGF,8CACE,gBACA,gBACA,iCACA,eACA,iBACA,iBACA,mBAGF,6CACE,iCACA,gBACA,qCACA,oBACA,aACA,mBAGF,sDACE,aACA,oBACA,mBAIA,gEACE,iCACA,oCACA,iBACA,mBCnjBN,oCACE,WACA,sCAEA,mDLQA,aACA,mBKNE,gBACA,iCACA,sCACA,eACA,iBACA,iBACA,eAGF,kDLVA,aACA,mBACA,uBKWE,oBACA,gBACA,kCAEA,sDACE,iBCxBN,aACE,aACA,OACA,gBACA,YAEA,sBACE,0BACA,aACA,mBAGF,+BNCA,mBMEE,eACA,kCACA,qCACA,mDAEA,0BACE,kCACA,qCAGF,2BACE,oBAGF,2BNjBF,aACA,mBMmBI,YACA,WAGF,yBACE,YACA,cACA,uBACA,mBACA,gBACA,uBAGF,6BACE,kBNlCJ,aACA,mBMqCI,iCACE,kCACA,iBACA,kBAIJ,4GAEE,mBAEA,oHACE,kCAIJ,oCACE,gBACA,SACA,gBACA,4CAIJ,mBACE,gBACA,gBACA,YACA,UAEA,4BN1EF,aACA,mBACA,uBA2BA,YACA,cMgDI,kCACA,kDACA,YACA,aAGF,yBACE,8BAEA,gFAEE,sCAIJ,gCACE,gBACA,mBACA,iBACA,gBACA,uBAGF,oCNrGF,aACA,mBACA,uBA2BA,YACA,cM2EI,cACA,kBACA,mBAEA,wCACE,aACA,cCrHR,oBACE,oBACA,kBACA,iCACA,eAGF,uBACE,aACA,qCACA,8CACA,oBAEA,6BACE,aACA,wBACA,kCACA,iBAGF,6BPHA,aACA,uBOKE,eACA,WCzBF,wBACE,YACA,WACA,kBACA,qCAGF,mBACE,YACA,WACA,kBACA,MACA,OACA,gBCZJ,kCTYE,aACA,mBSVA,uCTSA,aACA,mBSPE,iCACA,sCACA,+CACA,iBACA,oBACA,eACA,gBACA,cACA,gBAGF,wCTLA,aACA,mBSOE,cAIJ,wCACE,iCACA,cACA,mBACA,yBAEA,gDACE,+BAGF,mDACE,kCAGF,oDACE,mCAIJ,wCT/BE,aACA,mBSiCA,aAEA,6CTpCA,aACA,mBSsCE,iCACA,sCACA,iBACA,oBACA,eACA,gBACA,cACA,gBAGF,8CTjDA,aACA,mBSmDE,cChEJ,uBACE,YACA,WAEA,gCACE,YACA,WAGF,oCACE,qCAEA,mDACE,sCAGF,oDACE,kBACA,qCAIJ,kCACE,mCACA,iCAGF,8BACE,YAEA,sCACE,kCACA,iBACA,qCAEA,6CACE,6BAIJ,2CACE,kCACA,iBACA,sCAGF,uCACE,kBACA,yBACA,WACA,qCACA,kBAEA,iEACE,sCAIJ,uDACE,aAGF,8CACE,YACA,WACA,aACA,iBAIJ,qCACE,eAGF,6BACE,cACA,UACA,aACA,mBACA,kBAGF,4BACE,YACA,oBACA,mBACA,uBACA,eACA,oDACA,mBACA,eAGF,oCACE,gCACA,kBAGF,2CACE,WACA,aACA,WACA,kBACA,SACA,mCAGF,8BACE,YACA,WAEA,uCACE,kBACA,kBACA,qCACA,2BAGF,sCACE,sCACA,UACA,cACA,kBACA,UAGF,4CACE,aACA,YACA,mBAGF,2CVxHF,aACA,mBU0HI,eACA,eACA,kCACA,qCACA,mDAGF,mDACE,kCACA,qCAGF,oDVvIF,aACA,mBUyII,YACA,WAGF,iDACE,mBAGF,kDACE,cACA,gBACA,mBAIA,+CV/JJ,aACA,mBACA,uBUgKM,YACA,sCACA,mDACA,kDACA,kCACA,eAGF,qDACE,sCAGF,sDVxKJ,aACA,mBU0KM,cACA,gBACA,+CAGF,kDACE,YAGF,8DACE,YACA,UAGF,8DV/LJ,aACA,mBACA,uBUgMM,sBACA,eACA,yBACA,yBACA,iBACA,aACA,gBAGF,wDACE,aACA,mBAEA,gEACE,iCACA,yCAGF,8HACE,iCACA,iCAGF,oEACE,iCACA,yCAGF,kIACE,iCACA,iCAIJ,mEACE,aACA,WAGF,iEACE,WACA,sCAGF,iDV9OJ,aACA,mBACA,uBU+OM,YAKN,iCACE,WAEA,qDACE,YACA,sCAIJ,6DACE,4CAGF,wIAEE,uCAGF,kDACE,WACA,eAGF,kHAEE,WVpQF,aACA,uBUwQA,8DACE,eAGF,mDACE,cAMF,kFV/RA,aACA,mBACA,uBUgSE,sBAEA,oGACE,gBACA,mBAGF,wHACE,cACA","file":"index.css"}
package/lib/index.d.ts CHANGED
@@ -31,7 +31,7 @@ export * from './components/ApplicationStoreProviderTestUtils.js';
31
31
  export * from './components/WebApplicationNavigatorProviderTestUtils.js';
32
32
  export * from './stores/ApplicationStore.js';
33
33
  export { WebApplicationNavigator } from './stores/navigation/WebApplicationNavigator.js';
34
- export { NavigationService } from './stores/navigation/NavigationService.js';
34
+ export { NavigationService, type NavigationAddress, type NavigationLocation, type NavigationZone, } from './stores/navigation/NavigationService.js';
35
35
  export * from './stores/storage/ApplicationStorage.js';
36
36
  export * from './stores/storage/StorageService.js';
37
37
  export * from './stores/SettingService.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAE3B,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,iDAAiD,CAAC;AAChE,cAAc,yCAAyC,CAAC;AACxD,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAEzF,cAAc,0CAA0C,CAAC;AACzD,cAAc,iDAAiD,CAAC;AAChE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,iDAAiD,CAAC;AAChE,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mDAAmD,CAAC;AAClE,cAAc,0DAA0D,CAAC;AAEzE,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iDAAiD,CAAC;AAChE,cAAc,qCAAqC,CAAC;AACpD,cAAc,0CAA0C,CAAC;AAEzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAIpE,cAAc,0CAA0C,CAAC;AAEzD;;;GAGG;AACH,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gCAAgC,CAAC;AAE/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,sDAAsD,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,cAAc,yDAAyD,CAAC;AACxE,cAAc,6CAA6C,CAAC;AAE5D,cAAc,mCAAmC,CAAC;AAClD,cAAc,qDAAqD,CAAC;AACpE,cAAc,oCAAoC,CAAC;AACnD,cAAc,kDAAkD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAE3B,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,iDAAiD,CAAC;AAChE,cAAc,yCAAyC,CAAC;AACxD,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAEzF,cAAc,0CAA0C,CAAC;AACzD,cAAc,iDAAiD,CAAC;AAChE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,iDAAiD,CAAC;AAChE,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mDAAmD,CAAC;AAClE,cAAc,0DAA0D,CAAC;AAEzE,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EACL,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,GACpB,MAAM,0CAA0C,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iDAAiD,CAAC;AAChE,cAAc,qCAAqC,CAAC;AACpD,cAAc,0CAA0C,CAAC;AAEzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAIpE,cAAc,0CAA0C,CAAC;AAEzD;;;GAGG;AACH,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gCAAgC,CAAC;AAE/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,sDAAsD,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,cAAc,yDAAyD,CAAC;AACxE,cAAc,6CAA6C,CAAC;AAE5D,cAAc,mCAAmC,CAAC;AAClD,cAAc,qDAAqD,CAAC;AACpE,cAAc,oCAAoC,CAAC;AACnD,cAAc,kDAAkD,CAAC"}
package/lib/index.js CHANGED
@@ -31,7 +31,7 @@ export * from './components/ApplicationStoreProviderTestUtils.js';
31
31
  export * from './components/WebApplicationNavigatorProviderTestUtils.js';
32
32
  export * from './stores/ApplicationStore.js';
33
33
  export { WebApplicationNavigator } from './stores/navigation/WebApplicationNavigator.js';
34
- export { NavigationService } from './stores/navigation/NavigationService.js';
34
+ export { NavigationService, } from './stores/navigation/NavigationService.js';
35
35
  export * from './stores/storage/ApplicationStorage.js';
36
36
  export * from './stores/storage/StorageService.js';
37
37
  export * from './stores/SettingService.js';
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAE3B,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,iDAAiD,CAAC;AAChE,cAAc,yCAAyC,CAAC;AACxD,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAEzF,cAAc,0CAA0C,CAAC;AACzD,cAAc,iDAAiD,CAAC;AAChE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,iDAAiD,CAAC;AAChE,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mDAAmD,CAAC;AAClE,cAAc,0DAA0D,CAAC;AAEzE,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iDAAiD,CAAC;AAChE,cAAc,qCAAqC,CAAC;AACpD,cAAc,0CAA0C,CAAC;AAEzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,4GAA4G;AAE5G,cAAc,0CAA0C,CAAC;AAEzD;;;GAGG;AACH,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gCAAgC,CAAC;AAE/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,sDAAsD,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,cAAc,yDAAyD,CAAC;AACxE,cAAc,6CAA6C,CAAC;AAE5D,cAAc,mCAAmC,CAAC;AAClD,cAAc,qDAAqD,CAAC;AACpE,cAAc,oCAAoC,CAAC;AACnD,cAAc,kDAAkD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAE3B,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,iDAAiD,CAAC;AAChE,cAAc,yCAAyC,CAAC;AACxD,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAEzF,cAAc,0CAA0C,CAAC;AACzD,cAAc,iDAAiD,CAAC;AAChE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,iDAAiD,CAAC;AAChE,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mDAAmD,CAAC;AAClE,cAAc,0DAA0D,CAAC;AAEzE,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EACL,iBAAiB,GAIlB,MAAM,0CAA0C,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iDAAiD,CAAC;AAChE,cAAc,qCAAqC,CAAC;AACpD,cAAc,0CAA0C,CAAC;AAEzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,4GAA4G;AAE5G,cAAc,0CAA0C,CAAC;AAEzD;;;GAGG;AACH,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gCAAgC,CAAC;AAE/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,sDAAsD,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,cAAc,yDAAyD,CAAC;AACxE,cAAc,6CAA6C,CAAC;AAE5D,cAAc,mCAAmC,CAAC;AAClD,cAAc,qDAAqD,CAAC;AACpE,cAAc,oCAAoC,CAAC;AACnD,cAAc,kDAAkD,CAAC"}
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application",
3
- "version": "13.0.6",
3
+ "version": "13.0.8",
4
4
  "description": "Legend application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -47,13 +47,13 @@
47
47
  "@finos/legend-graph": "workspace:*",
48
48
  "@finos/legend-shared": "workspace:*",
49
49
  "@types/css-font-loading-module": "0.0.8",
50
- "@types/react": "18.0.30",
50
+ "@types/react": "18.0.33",
51
51
  "@types/react-dom": "18.0.11",
52
52
  "@types/react-router-dom": "5.3.3",
53
53
  "history": "5.3.0",
54
54
  "mobx": "6.9.0",
55
- "mobx-react-lite": "4.0.2",
56
- "monaco-editor": "0.36.1",
55
+ "mobx-react-lite": "3.4.3",
56
+ "monaco-editor": "0.37.0",
57
57
  "react": "18.2.0",
58
58
  "react-dnd": "16.0.1",
59
59
  "react-dnd-html5-backend": "16.0.1",
@@ -74,12 +74,12 @@
74
74
  "@finos/legend-dev-utils": "workspace:*",
75
75
  "@jest/globals": "29.5.0",
76
76
  "cross-env": "7.0.3",
77
- "eslint": "8.36.0",
77
+ "eslint": "8.37.0",
78
78
  "jest": "29.5.0",
79
79
  "npm-run-all": "4.1.5",
80
80
  "rimraf": "4.4.1",
81
81
  "sass": "1.60.0",
82
- "typescript": "5.0.2"
82
+ "typescript": "5.0.3"
83
83
  },
84
84
  "peerDependencies": {
85
85
  "react": "^18.0.0"
@@ -1 +1 @@
1
- {"version":3,"file":"LayoutService.d.ts","sourceRoot":"","sources":["../../src/stores/LayoutService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAS3E,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,6BAA6B,EAAE,MAAM,CAAC;CACvC,CAAC;AAEF,qBAAa,aAAa;IACxB,QAAQ,CAAC,gBAAgB,EAAE,6BAA6B,CAAC;IAGzD,0BAA0B,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChD,YAAY,UAAS;IAGrB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAiC;IACpE,iBAAiB,EAAG,UAAU,CAAC;gBAEnB,gBAAgB,EAAE,6BAA6B;IA4C3D,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAIhD;;;;;;;OAOG;IACH,6BAA6B,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAI5D,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAInC;;;;;OAKG;IACH,IAAI,mCAAmC,IAAI,OAAO,CAEjD;IAED,OAAO,CAAC,iCAAiC;IAYzC,aAAa,CACX,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GAC1C,IAAI;CAiBR"}
1
+ {"version":3,"file":"LayoutService.d.ts","sourceRoot":"","sources":["../../src/stores/LayoutService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAS3E,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,6BAA6B,EAAE,MAAM,CAAC;CACvC,CAAC;AAEF,qBAAa,aAAa;IACxB,QAAQ,CAAC,gBAAgB,EAAE,6BAA6B,CAAC;IAGzD,0BAA0B,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChD,YAAY,UAAS;IAGrB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAiC;IACpE,iBAAiB,EAAG,UAAU,CAAC;gBAEnB,gBAAgB,EAAE,6BAA6B;IAkD3D,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAIhD;;;;;;;OAOG;IACH,6BAA6B,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAI5D,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAInC;;;;;OAKG;IACH,IAAI,mCAAmC,IAAI,OAAO,CAIjD;IAED,OAAO,CAAC,iCAAiC;IAYzC,aAAa,CACX,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GAC1C,IAAI;CAiBR"}
@@ -15,9 +15,9 @@
15
15
  */
16
16
  import { action, computed, makeObservable, observable } from 'mobx';
17
17
  import { LEGEND_APPLICATION_SETTING_KEY } from '../application/LegendApplicationSetting.js';
18
- import { DEFAULT_DARK_COLOR_THEME, LEGEND_APPLICATION_COLOR_THEME, } from '../application/LegendApplicationTheme.js';
19
- import { LogEvent } from '@finos/legend-shared';
18
+ import { LogEvent, guaranteeNonNullable } from '@finos/legend-shared';
20
19
  import { APPLICATION_EVENT } from '../application/LegendApplicationEvent.js';
20
+ import { DEFAULT_DARK_COLOR_THEME, LEGEND_APPLICATION_COLOR_THEME, } from '../application/LegendApplicationTheme.js';
21
21
  export class LayoutService {
22
22
  applicationStore;
23
23
  // backdrop
@@ -37,7 +37,11 @@ export class LayoutService {
37
37
  setColorTheme: action,
38
38
  });
39
39
  this.applicationStore = applicationStore;
40
+ // register core color themes
41
+ // TODO: we might want to cover at least: a dark theme, a light theme, and a high contrast theme (etc.)
42
+ // as part of core
40
43
  this.colorThemeRegistry.set(LEGEND_APPLICATION_COLOR_THEME.DEFAULT_DARK, DEFAULT_DARK_COLOR_THEME);
44
+ // register color themes from extensions
41
45
  this.applicationStore.pluginManager
42
46
  .getApplicationPlugins()
43
47
  .flatMap((plugin) => plugin.getExtraColorThemes?.() ?? [])
@@ -51,9 +55,8 @@ export class LayoutService {
51
55
  }
52
56
  this.colorThemeRegistry.set(colorTheme.key, colorTheme);
53
57
  });
54
- const themeKey = this.applicationStore.settingService.getStringValue(LEGEND_APPLICATION_SETTING_KEY.COLOR_THEME) ?? DEFAULT_DARK_COLOR_THEME.key;
55
- this.currentColorTheme =
56
- this.colorThemeRegistry.get(themeKey) ?? DEFAULT_DARK_COLOR_THEME;
58
+ const themeKey = this.applicationStore.settingService.getStringValue(LEGEND_APPLICATION_SETTING_KEY.COLOR_THEME) ?? LEGEND_APPLICATION_COLOR_THEME.DEFAULT_DARK;
59
+ this.currentColorTheme = guaranteeNonNullable(this.colorThemeRegistry.get(themeKey));
57
60
  this.TEMPORARY__syncGlobalCSSClassName(this.currentColorTheme, undefined);
58
61
  }
59
62
  getElementByID(val) {
@@ -80,7 +83,7 @@ export class LayoutService {
80
83
  * See https://github.com/finos/legend-studio/issues/264
81
84
  */
82
85
  get TEMPORARY__isLightColorThemeEnabled() {
83
- return this.currentColorTheme !== DEFAULT_DARK_COLOR_THEME;
86
+ return (this.currentColorTheme.key !== LEGEND_APPLICATION_COLOR_THEME.DEFAULT_DARK);
84
87
  }
85
88
  TEMPORARY__syncGlobalCSSClassName(theme, previousTheme) {
86
89
  if (previousTheme) {
@@ -1 +1 @@
1
- {"version":3,"file":"LayoutService.js","sourceRoot":"","sources":["../../src/stores/LayoutService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LayoutService.js","sourceRoot":"","sources":["../../src/stores/LayoutService.ts"],"names":[],"mappings":"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"}
@@ -13,10 +13,12 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- export type Location = string;
17
- export type Address = string;
18
- export type AddressParameterKey = string;
19
- export type AddressParameterValue = string | undefined;
16
+ export type NavigationAddress = string;
17
+ export type NavigationLocationParameterValue = string | undefined;
18
+ export type NavigationLocation = string;
19
+ export type NavigationZone = string;
20
+ export declare const NAVIGATION_ZONE_SEPARATOR = "__";
21
+ export declare const NAVIGATION_ZONE_PREFIX = "#";
20
22
  /**
21
23
  * This is an initial attempt to generalize the application navigation to other platforms
22
24
  *
@@ -46,32 +48,50 @@ export interface ApplicationNavigator {
46
48
  * so application states will not be preserved
47
49
  * after navigation
48
50
  */
49
- goToLocation(location: Location, options?: {
51
+ goToLocation(location: NavigationLocation, options?: {
50
52
  ignoreBlocking?: boolean | undefined;
51
53
  }): void;
52
54
  /**
53
55
  * Visit the specified address
54
56
  */
55
- goToAddress(address: Address, options?: {
57
+ goToAddress(address: NavigationAddress, options?: {
56
58
  ignoreBlocking?: boolean | undefined;
57
59
  }): void;
58
60
  /**
59
61
  * Visit the specified address in a new window
60
62
  */
61
- visitAddress(address: Address): void;
63
+ visitAddress(address: NavigationAddress): void;
64
+ /**
65
+ * Generate the address from the current base address and the specified location
66
+ */
67
+ generateAddress(location: NavigationLocation): NavigationAddress;
62
68
  /**
63
69
  * Update the current location
64
70
  *
65
71
  * NOTE: any navigation actions: reload, go to address, go to location, etc.
66
72
  * explicitly updates the current location, this action will just update the
67
- * location without doing any navigation
73
+ * location without doing any navigation.
74
+ *
75
+ * NOTE: we need to reset zone when changing location
76
+ */
77
+ updateCurrentLocation(location: NavigationLocation): void;
78
+ /**
79
+ * Update the current zone
80
+ *
81
+ * Changing the address and location might potentially already included changing
82
+ * the zone, this action will just update the zone.
83
+ */
84
+ updateCurrentZone(zone: NavigationZone): void;
85
+ resetZone(): void;
86
+ /**
87
+ * Get the current address base
68
88
  */
69
- updateCurrentLocation(location: Location): void;
70
- getCurrentAddress(): Address;
71
- getCurrentLocation(): Location;
72
- getAddressParameters<T extends Record<AddressParameterKey, AddressParameterValue>>(): T;
73
- getAddressParameterValue(key: AddressParameterKey): AddressParameterValue;
74
- generateAddress(location: Location): Address;
89
+ getCurrentBaseAddress(): NavigationAddress;
90
+ getCurrentAddress(): NavigationAddress;
91
+ getCurrentLocation(): NavigationLocation;
92
+ getCurrentLocationParameters<T extends Record<string, NavigationLocationParameterValue>>(): T;
93
+ getCurrentLocationParameterValue(key: string): NavigationLocationParameterValue;
94
+ getCurrentZone(): NavigationZone;
75
95
  /**
76
96
  * Block all kinds of navigation, including going to another location,
77
97
  * changing address, and native platform navigation (e.g. in web browser, we will
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationService.d.ts","sourceRoot":"","sources":["../../../src/stores/navigation/NavigationService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC9B,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAC7B,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACzC,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GAAG,IAAI,CAAC;IAEjE;;;;;;OAMG;IACH,YAAY,CACV,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GACjD,IAAI,CAAC;IAER;;OAEG;IACH,WAAW,CACT,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GACjD,IAAI,CAAC;IAER;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAErC;;;;;;OAMG;IACH,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAEhD,iBAAiB,IAAI,OAAO,CAAC;IAC7B,kBAAkB,IAAI,QAAQ,CAAC;IAC/B,oBAAoB,CAClB,CAAC,SAAS,MAAM,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,KACzD,CAAC,CAAC;IACP,wBAAwB,CAAC,GAAG,EAAE,mBAAmB,GAAG,qBAAqB,CAAC;IAE1E,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAE7C;;;;OAIG;IACH,eAAe,CACb,aAAa,EAAE,CAAC,MAAM,OAAO,CAAC,EAAE,EAChC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,EACvD,+BAA+B,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,GACzD,IAAI,CAAC;IACR,iBAAiB,IAAI,IAAI,CAAC;IAC1B,IAAI,mBAAmB,IAAI,OAAO,CAAC;CACpC;AAED,qBAAa,iBAAiB;IAC5B,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;gBAE7B,SAAS,EAAE,oBAAoB;CAG5C"}
1
+ {"version":3,"file":"NavigationService.d.ts","sourceRoot":"","sources":["../../../src/stores/navigation/NavigationService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACvC,MAAM,MAAM,gCAAgC,GAAG,MAAM,GAAG,SAAS,CAAC;AAClE,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC;AACxC,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GAAG,IAAI,CAAC;IAEjE;;;;;;OAMG;IACH,YAAY,CACV,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GACjD,IAAI,CAAC;IAER;;OAEG;IACH,WAAW,CACT,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GACjD,IAAI,CAAC;IAER;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAE/C;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,kBAAkB,GAAG,iBAAiB,CAAC;IAEjE;;;;;;;;OAQG;IACH,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAE1D;;;;;OAKG;IACH,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9C,SAAS,IAAI,IAAI,CAAC;IAElB;;OAEG;IACH,qBAAqB,IAAI,iBAAiB,CAAC;IAC3C,iBAAiB,IAAI,iBAAiB,CAAC;IAEvC,kBAAkB,IAAI,kBAAkB,CAAC;IACzC,4BAA4B,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gCAAgC,CAAC,KACvD,CAAC,CAAC;IACP,gCAAgC,CAC9B,GAAG,EAAE,MAAM,GACV,gCAAgC,CAAC;IAEpC,cAAc,IAAI,cAAc,CAAC;IAEjC;;;;OAIG;IACH,eAAe,CACb,aAAa,EAAE,CAAC,MAAM,OAAO,CAAC,EAAE,EAChC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,EACvD,+BAA+B,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,GACzD,IAAI,CAAC;IACR,iBAAiB,IAAI,IAAI,CAAC;IAC1B,IAAI,mBAAmB,IAAI,OAAO,CAAC;CACpC;AAED,qBAAa,iBAAiB;IAC5B,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;gBAE7B,SAAS,EAAE,oBAAoB;CAG5C"}
@@ -13,6 +13,8 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ export const NAVIGATION_ZONE_SEPARATOR = '__';
17
+ export const NAVIGATION_ZONE_PREFIX = '#';
16
18
  export class NavigationService {
17
19
  navigator;
18
20
  constructor(navigator) {
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationService.js","sourceRoot":"","sources":["../../../src/stores/navigation/NavigationService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAqFH,MAAM,OAAO,iBAAiB;IACnB,SAAS,CAAuB;IAEzC,YAAY,SAA+B;QACzC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"NavigationService.js","sourceRoot":"","sources":["../../../src/stores/navigation/NavigationService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAC9C,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAuG1C,MAAM,OAAO,iBAAiB;IACnB,SAAS,CAAuB;IAEzC,YAAY,SAA+B;QACzC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF"}
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import type { History } from 'history';
17
- import type { Address, Location, ApplicationNavigator, AddressParameterKey, AddressParameterValue } from './NavigationService.js';
17
+ import { type NavigationAddress, type NavigationLocation, type ApplicationNavigator, type NavigationLocationParameterValue, type NavigationZone } from './NavigationService.js';
18
18
  export declare class WebApplicationNavigator implements ApplicationNavigator {
19
19
  private readonly historyAPI;
20
20
  private _isNavigationBlocked;
@@ -25,22 +25,28 @@ export declare class WebApplicationNavigator implements ApplicationNavigator {
25
25
  onNativePlatformNavigationBlock?: (() => void) | undefined;
26
26
  constructor(historyApiClient: History);
27
27
  private get window();
28
- goToLocation(location: Location, options?: {
28
+ goToLocation(location: NavigationLocation, options?: {
29
29
  ignoreBlocking?: boolean | undefined;
30
30
  }): void;
31
31
  reload(options?: {
32
32
  ignoreBlocking?: boolean | undefined;
33
33
  }): void;
34
- goToAddress(address: Address, options?: {
34
+ goToAddress(address: NavigationAddress, options?: {
35
35
  ignoreBlocking?: boolean | undefined;
36
36
  }): void;
37
- visitAddress(address: Address): void;
38
- updateCurrentLocation(location: Location): void;
39
- getCurrentAddress(): Address;
40
- getCurrentLocation(): Location;
41
- getAddressParameters<T extends Record<AddressParameterKey, AddressParameterValue>>(): T;
42
- getAddressParameterValue(key: AddressParameterKey): AddressParameterValue;
43
- generateAddress(location: Location): string;
37
+ visitAddress(address: NavigationAddress): void;
38
+ generateAddress(location: NavigationLocation): string;
39
+ updateCurrentLocation(location: NavigationLocation): void;
40
+ updateCurrentZone(zone: NavigationZone): void;
41
+ resetZone(): void;
42
+ getCurrentBaseAddress(options?: {
43
+ withAppRoot?: boolean | undefined;
44
+ }): NavigationAddress;
45
+ getCurrentAddress(): NavigationAddress;
46
+ getCurrentLocation(): NavigationLocation;
47
+ getCurrentLocationParameters<T extends Record<string, NavigationLocationParameterValue>>(): T;
48
+ getCurrentLocationParameterValue(key: string): NavigationLocationParameterValue;
49
+ getCurrentZone(): NavigationZone;
44
50
  blockNavigation(blockCheckers: (() => boolean)[], onBlock?: ((onProceed: () => void) => void) | undefined, onNativePlatformNavigationBlock?: (() => void) | undefined): void;
45
51
  unblockNavigation(): void;
46
52
  get isNavigationBlocked(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"WebApplicationNavigator.d.ts","sourceRoot":"","sources":["../../../src/stores/navigation/WebApplicationNavigator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAQvC,OAAO,KAAK,EACV,OAAO,EACP,QAAQ,EACR,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,uBAAwB,YAAW,oBAAoB;IAClE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IACrC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,8BAA8B,CAAS;IAC/C,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,qBAAqB,CAS3B;IAEF,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACxD,+BAA+B,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;gBAE/C,gBAAgB,EAAE,OAAO;IAWrC,OAAO,KAAK,MAAM,GAKjB;IAED,YAAY,CACV,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GACjD,IAAI;IAkBP,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GAAG,IAAI;IAkBhE,WAAW,CACT,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GACjD,IAAI;IAkBP,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIpC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAI/C,iBAAiB,IAAI,OAAO;IAI5B,kBAAkB,IAAI,QAAQ;IAI9B,oBAAoB,CAClB,CAAC,SAAS,MAAM,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,KACzD,CAAC;IAWN,wBAAwB,CAAC,GAAG,EAAE,mBAAmB,GAAG,qBAAqB;IAIzE,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM;IAO3C,eAAe,CACb,aAAa,EAAE,CAAC,MAAM,OAAO,CAAC,EAAE,EAChC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,EACvD,+BAA+B,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,GACzD,IAAI;IAuBP,iBAAiB,IAAI,IAAI;IAQzB,IAAI,mBAAmB,IAAI,OAAO,CAEjC;CACF"}
1
+ {"version":3,"file":"WebApplicationNavigator.d.ts","sourceRoot":"","sources":["../../../src/stores/navigation/WebApplicationNavigator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAQvC,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,gCAAgC,EACrC,KAAK,cAAc,EAEpB,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,uBAAwB,YAAW,oBAAoB;IAClE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IACrC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,8BAA8B,CAAS;IAC/C,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,qBAAqB,CAS3B;IAEF,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACxD,+BAA+B,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;gBAE/C,gBAAgB,EAAE,OAAO;IAWrC,OAAO,KAAK,MAAM,GAKjB;IAED,YAAY,CACV,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GACjD,IAAI;IAkBP,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GAAG,IAAI;IAkBhE,WAAW,CACT,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GACjD,IAAI;IAkBP,YAAY,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAI9C,eAAe,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM;IAOrD,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI;IAIzD,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAI7C,SAAS,IAAI,IAAI;IAIjB,qBAAqB,CAAC,OAAO,CAAC,EAAE;QAC9B,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;KACnC,GAAG,iBAAiB;IAOrB,iBAAiB,IAAI,iBAAiB;IAItC,kBAAkB,IAAI,kBAAkB;IAIxC,4BAA4B,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gCAAgC,CAAC,KACvD,CAAC;IAWN,gCAAgC,CAC9B,GAAG,EAAE,MAAM,GACV,gCAAgC;IAInC,cAAc,IAAI,cAAc;IAIhC,eAAe,CACb,aAAa,EAAE,CAAC,MAAM,OAAO,CAAC,EAAE,EAChC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,EACvD,+BAA+B,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,GACzD,IAAI;IAuBP,iBAAiB,IAAI,IAAI;IAQzB,IAAI,mBAAmB,IAAI,OAAO,CAEjC;CACF"}
@@ -15,6 +15,7 @@
15
15
  */
16
16
  import { getQueryParameterValue, getQueryParameters, guaranteeNonNullable, sanitizeURL, } from '@finos/legend-shared';
17
17
  import { action, computed, makeObservable, observable } from 'mobx';
18
+ import { NAVIGATION_ZONE_PREFIX, } from './NavigationService.js';
18
19
  export class WebApplicationNavigator {
19
20
  historyAPI;
20
21
  _isNavigationBlocked = false;
@@ -95,16 +96,32 @@ export class WebApplicationNavigator {
95
96
  visitAddress(address) {
96
97
  this.window.open(address, '_blank');
97
98
  }
99
+ generateAddress(location) {
100
+ return (this.window.location.origin +
101
+ this.historyAPI.createHref({ pathname: location }));
102
+ }
98
103
  updateCurrentLocation(location) {
99
104
  this.historyAPI.push(location);
100
105
  }
106
+ updateCurrentZone(zone) {
107
+ this.window.location.hash = NAVIGATION_ZONE_PREFIX + zone;
108
+ }
109
+ resetZone() {
110
+ this.updateCurrentLocation(this.getCurrentLocation());
111
+ }
112
+ getCurrentBaseAddress(options) {
113
+ if (options?.withAppRoot) {
114
+ return this.generateAddress('');
115
+ }
116
+ return this.window.location.origin;
117
+ }
101
118
  getCurrentAddress() {
102
119
  return this.window.location.href;
103
120
  }
104
121
  getCurrentLocation() {
105
122
  return this.historyAPI.location.pathname;
106
123
  }
107
- getAddressParameters() {
124
+ getCurrentLocationParameters() {
108
125
  const result = {};
109
126
  const parameters = getQueryParameters(sanitizeURL(this.getCurrentAddress()), true);
110
127
  Object.keys(parameters).forEach((key) => {
@@ -112,12 +129,11 @@ export class WebApplicationNavigator {
112
129
  });
113
130
  return result;
114
131
  }
115
- getAddressParameterValue(key) {
116
- return this.getAddressParameters()[key];
132
+ getCurrentLocationParameterValue(key) {
133
+ return this.getCurrentLocationParameters()[key];
117
134
  }
118
- generateAddress(location) {
119
- return (this.window.location.origin +
120
- this.historyAPI.createHref({ pathname: location }));
135
+ getCurrentZone() {
136
+ return this.window.location.hash.substring(NAVIGATION_ZONE_PREFIX.length);
121
137
  }
122
138
  blockNavigation(blockCheckers, onBlock, onNativePlatformNavigationBlock) {
123
139
  this._isNavigationBlocked = true;
@@ -1 +1 @@
1
- {"version":3,"file":"WebApplicationNavigator.js","sourceRoot":"","sources":["../../../src/stores/navigation/WebApplicationNavigator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebApplicationNavigator.js","sourceRoot":"","sources":["../../../src/stores/navigation/WebApplicationNavigator.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,10 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import { Router, Route, Switch, Redirect, matchPath, generatePath, MemoryRouter, useParams } from 'react-router';
17
+ import { type NavigationZone } from './NavigationService.js';
16
18
  export { BrowserRouter } from 'react-router-dom';
17
- export { Router, Route, Switch, Redirect, useParams, matchPath, generatePath, MemoryRouter, } from 'react-router';
19
+ export { Router, Route, Switch, Redirect, useParams, matchPath, generatePath, MemoryRouter, };
18
20
  export { createMemoryHistory } from 'history';
21
+ export declare const useNavigationZone: () => NavigationZone;
19
22
  //# sourceMappingURL=WebApplicationRouter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebApplicationRouter.d.ts","sourceRoot":"","sources":["../../../src/stores/navigation/WebApplicationRouter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,SAAS,EACT,SAAS,EACT,YAAY,EACZ,YAAY,GACb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"WebApplicationRouter.d.ts","sourceRoot":"","sources":["../../../src/stores/navigation/WebApplicationRouter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,SAAS,EAEV,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,SAAS,EACT,SAAS,EACT,YAAY,EACZ,YAAY,GACb,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,eAAO,MAAM,iBAAiB,QAAO,cAGpC,CAAC"}
@@ -13,7 +13,13 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import { Router, Route, Switch, Redirect, matchPath, generatePath, MemoryRouter, useParams, useLocation, } from 'react-router';
17
+ import { NAVIGATION_ZONE_PREFIX, } from './NavigationService.js';
16
18
  export { BrowserRouter } from 'react-router-dom';
17
- export { Router, Route, Switch, Redirect, useParams, matchPath, generatePath, MemoryRouter, } from 'react-router';
19
+ export { Router, Route, Switch, Redirect, useParams, matchPath, generatePath, MemoryRouter, };
18
20
  export { createMemoryHistory } from 'history';
21
+ export const useNavigationZone = () => {
22
+ const location = useLocation(); // TODO: this is a temporary hack until we upgrade react-router
23
+ return location.hash.substring(NAVIGATION_ZONE_PREFIX.length);
24
+ };
19
25
  //# sourceMappingURL=WebApplicationRouter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebApplicationRouter.js","sourceRoot":"","sources":["../../../src/stores/navigation/WebApplicationRouter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,SAAS,EACT,SAAS,EACT,YAAY,EACZ,YAAY,GACb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"WebApplicationRouter.js","sourceRoot":"","sources":["../../../src/stores/navigation/WebApplicationRouter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,WAAW,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,sBAAsB,GAEvB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,SAAS,EACT,SAAS,EACT,YAAY,EACZ,YAAY,GACb,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAmB,EAAE;IACpD,MAAM,QAAQ,GAAG,WAAW,EAAsB,CAAC,CAAC,+DAA+D;IACnH,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAChE,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application",
3
- "version": "13.0.6",
3
+ "version": "13.0.8",
4
4
  "description": "Legend application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -43,17 +43,17 @@
43
43
  "test:watch": "jest --watch"
44
44
  },
45
45
  "dependencies": {
46
- "@finos/legend-art": "5.0.39",
47
- "@finos/legend-graph": "25.0.1",
48
- "@finos/legend-shared": "8.0.3",
46
+ "@finos/legend-art": "5.0.41",
47
+ "@finos/legend-graph": "26.0.1",
48
+ "@finos/legend-shared": "8.0.4",
49
49
  "@types/css-font-loading-module": "0.0.8",
50
- "@types/react": "18.0.30",
50
+ "@types/react": "18.0.33",
51
51
  "@types/react-dom": "18.0.11",
52
52
  "@types/react-router-dom": "5.3.3",
53
53
  "history": "5.3.0",
54
54
  "mobx": "6.9.0",
55
- "mobx-react-lite": "4.0.2",
56
- "monaco-editor": "0.36.1",
55
+ "mobx-react-lite": "3.4.3",
56
+ "monaco-editor": "0.37.0",
57
57
  "react": "18.2.0",
58
58
  "react-dnd": "16.0.1",
59
59
  "react-dnd-html5-backend": "16.0.1",
@@ -71,15 +71,15 @@
71
71
  "xterm-addon-webgl": "0.14.0"
72
72
  },
73
73
  "devDependencies": {
74
- "@finos/legend-dev-utils": "2.0.48",
74
+ "@finos/legend-dev-utils": "2.0.50",
75
75
  "@jest/globals": "29.5.0",
76
76
  "cross-env": "7.0.3",
77
- "eslint": "8.36.0",
77
+ "eslint": "8.37.0",
78
78
  "jest": "29.5.0",
79
79
  "npm-run-all": "4.1.5",
80
80
  "rimraf": "4.4.1",
81
81
  "sass": "1.60.0",
82
- "typescript": "5.0.2"
82
+ "typescript": "5.0.3"
83
83
  },
84
84
  "peerDependencies": {
85
85
  "react": "^18.0.0"
@@ -18,6 +18,7 @@ import {
18
18
  guaranteeNonEmptyString,
19
19
  guaranteeNonNullable,
20
20
  type ExtensionsConfigurationData,
21
+ URL_SEPARATOR,
21
22
  } from '@finos/legend-shared';
22
23
  import type { LegendApplicationConfigurationInput } from './LegendApplication.js';
23
24
  import {
@@ -57,7 +58,7 @@ export abstract class LegendApplicationConfig {
57
58
  readonly env: string;
58
59
 
59
60
  // documentation
60
- readonly documentationUrl: string | undefined;
61
+ readonly documentationUrl?: string | undefined;
61
62
  readonly documentationRegistryEntries: DocumentationRegistryEntry[] = [];
62
63
  readonly keyedDocumentationEntries: KeyedDocumentationEntry[] = [];
63
64
  readonly contextualDocEntries: ContextualDocumentationEntry[] = [];
@@ -105,4 +106,11 @@ export abstract class LegendApplicationConfig {
105
106
  `Can't collect application version: 'commitSHA' field is missing`,
106
107
  );
107
108
  }
109
+
110
+ protected static resolveAbsoluteUrl(url: string): string {
111
+ if (url.trim().startsWith(URL_SEPARATOR)) {
112
+ return window.location.origin + url;
113
+ }
114
+ return url;
115
+ }
108
116
  }
package/src/index.ts CHANGED
@@ -35,7 +35,12 @@ export * from './components/WebApplicationNavigatorProviderTestUtils.js';
35
35
 
36
36
  export * from './stores/ApplicationStore.js';
37
37
  export { WebApplicationNavigator } from './stores/navigation/WebApplicationNavigator.js';
38
- export { NavigationService } from './stores/navigation/NavigationService.js';
38
+ export {
39
+ NavigationService,
40
+ type NavigationAddress,
41
+ type NavigationLocation,
42
+ type NavigationZone,
43
+ } from './stores/navigation/NavigationService.js';
39
44
  export * from './stores/storage/ApplicationStorage.js';
40
45
  export * from './stores/storage/StorageService.js';
41
46
  export * from './stores/SettingService.js';
@@ -17,12 +17,12 @@
17
17
  import { action, computed, makeObservable, observable } from 'mobx';
18
18
  import type { GenericLegendApplicationStore } from './ApplicationStore.js';
19
19
  import { LEGEND_APPLICATION_SETTING_KEY } from '../application/LegendApplicationSetting.js';
20
+ import { LogEvent, guaranteeNonNullable } from '@finos/legend-shared';
21
+ import { APPLICATION_EVENT } from '../application/LegendApplicationEvent.js';
20
22
  import {
21
23
  DEFAULT_DARK_COLOR_THEME,
22
24
  LEGEND_APPLICATION_COLOR_THEME,
23
25
  } from '../application/LegendApplicationTheme.js';
24
- import { LogEvent } from '@finos/legend-shared';
25
- import { APPLICATION_EVENT } from '../application/LegendApplicationEvent.js';
26
26
 
27
27
  export type ColorTheme = {
28
28
  name: string;
@@ -57,10 +57,15 @@ export class LayoutService {
57
57
  });
58
58
  this.applicationStore = applicationStore;
59
59
 
60
+ // register core color themes
61
+ // TODO: we might want to cover at least: a dark theme, a light theme, and a high contrast theme (etc.)
62
+ // as part of core
60
63
  this.colorThemeRegistry.set(
61
64
  LEGEND_APPLICATION_COLOR_THEME.DEFAULT_DARK,
62
65
  DEFAULT_DARK_COLOR_THEME,
63
66
  );
67
+
68
+ // register color themes from extensions
64
69
  this.applicationStore.pluginManager
65
70
  .getApplicationPlugins()
66
71
  .flatMap((plugin) => plugin.getExtraColorThemes?.() ?? [])
@@ -83,9 +88,10 @@ export class LayoutService {
83
88
  const themeKey =
84
89
  this.applicationStore.settingService.getStringValue(
85
90
  LEGEND_APPLICATION_SETTING_KEY.COLOR_THEME,
86
- ) ?? DEFAULT_DARK_COLOR_THEME.key;
87
- this.currentColorTheme =
88
- this.colorThemeRegistry.get(themeKey) ?? DEFAULT_DARK_COLOR_THEME;
91
+ ) ?? LEGEND_APPLICATION_COLOR_THEME.DEFAULT_DARK;
92
+ this.currentColorTheme = guaranteeNonNullable(
93
+ this.colorThemeRegistry.get(themeKey),
94
+ );
89
95
  this.TEMPORARY__syncGlobalCSSClassName(this.currentColorTheme, undefined);
90
96
  }
91
97
 
@@ -116,7 +122,9 @@ export class LayoutService {
116
122
  * See https://github.com/finos/legend-studio/issues/264
117
123
  */
118
124
  get TEMPORARY__isLightColorThemeEnabled(): boolean {
119
- return this.currentColorTheme !== DEFAULT_DARK_COLOR_THEME;
125
+ return (
126
+ this.currentColorTheme.key !== LEGEND_APPLICATION_COLOR_THEME.DEFAULT_DARK
127
+ );
120
128
  }
121
129
 
122
130
  private TEMPORARY__syncGlobalCSSClassName(
@@ -14,10 +14,13 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- export type Location = string;
18
- export type Address = string;
19
- export type AddressParameterKey = string;
20
- export type AddressParameterValue = string | undefined;
17
+ export type NavigationAddress = string;
18
+ export type NavigationLocationParameterValue = string | undefined;
19
+ export type NavigationLocation = string;
20
+ export type NavigationZone = string;
21
+
22
+ export const NAVIGATION_ZONE_SEPARATOR = '__';
23
+ export const NAVIGATION_ZONE_PREFIX = '#';
21
24
 
22
25
  /**
23
26
  * This is an initial attempt to generalize the application navigation to other platforms
@@ -48,7 +51,7 @@ export interface ApplicationNavigator {
48
51
  * after navigation
49
52
  */
50
53
  goToLocation(
51
- location: Location,
54
+ location: NavigationLocation,
52
55
  options?: { ignoreBlocking?: boolean | undefined },
53
56
  ): void;
54
57
 
@@ -56,32 +59,55 @@ export interface ApplicationNavigator {
56
59
  * Visit the specified address
57
60
  */
58
61
  goToAddress(
59
- address: Address,
62
+ address: NavigationAddress,
60
63
  options?: { ignoreBlocking?: boolean | undefined },
61
64
  ): void;
62
65
 
63
66
  /**
64
67
  * Visit the specified address in a new window
65
68
  */
66
- visitAddress(address: Address): void;
69
+ visitAddress(address: NavigationAddress): void;
70
+
71
+ /**
72
+ * Generate the address from the current base address and the specified location
73
+ */
74
+ generateAddress(location: NavigationLocation): NavigationAddress;
67
75
 
68
76
  /**
69
77
  * Update the current location
70
78
  *
71
79
  * NOTE: any navigation actions: reload, go to address, go to location, etc.
72
80
  * explicitly updates the current location, this action will just update the
73
- * location without doing any navigation
81
+ * location without doing any navigation.
82
+ *
83
+ * NOTE: we need to reset zone when changing location
84
+ */
85
+ updateCurrentLocation(location: NavigationLocation): void;
86
+
87
+ /**
88
+ * Update the current zone
89
+ *
90
+ * Changing the address and location might potentially already included changing
91
+ * the zone, this action will just update the zone.
92
+ */
93
+ updateCurrentZone(zone: NavigationZone): void;
94
+ resetZone(): void;
95
+
96
+ /**
97
+ * Get the current address base
74
98
  */
75
- updateCurrentLocation(location: Location): void;
99
+ getCurrentBaseAddress(): NavigationAddress;
100
+ getCurrentAddress(): NavigationAddress;
76
101
 
77
- getCurrentAddress(): Address;
78
- getCurrentLocation(): Location;
79
- getAddressParameters<
80
- T extends Record<AddressParameterKey, AddressParameterValue>,
102
+ getCurrentLocation(): NavigationLocation;
103
+ getCurrentLocationParameters<
104
+ T extends Record<string, NavigationLocationParameterValue>,
81
105
  >(): T;
82
- getAddressParameterValue(key: AddressParameterKey): AddressParameterValue;
106
+ getCurrentLocationParameterValue(
107
+ key: string,
108
+ ): NavigationLocationParameterValue;
83
109
 
84
- generateAddress(location: Location): Address;
110
+ getCurrentZone(): NavigationZone;
85
111
 
86
112
  /**
87
113
  * Block all kinds of navigation, including going to another location,
@@ -22,12 +22,13 @@ import {
22
22
  sanitizeURL,
23
23
  } from '@finos/legend-shared';
24
24
  import { action, computed, makeObservable, observable } from 'mobx';
25
- import type {
26
- Address,
27
- Location,
28
- ApplicationNavigator,
29
- AddressParameterKey,
30
- AddressParameterValue,
25
+ import {
26
+ type NavigationAddress,
27
+ type NavigationLocation,
28
+ type ApplicationNavigator,
29
+ type NavigationLocationParameterValue,
30
+ type NavigationZone,
31
+ NAVIGATION_ZONE_PREFIX,
31
32
  } from './NavigationService.js';
32
33
 
33
34
  export class WebApplicationNavigator implements ApplicationNavigator {
@@ -68,7 +69,7 @@ export class WebApplicationNavigator implements ApplicationNavigator {
68
69
  }
69
70
 
70
71
  goToLocation(
71
- location: Location,
72
+ location: NavigationLocation,
72
73
  options?: { ignoreBlocking?: boolean | undefined },
73
74
  ): void {
74
75
  if (options?.ignoreBlocking) {
@@ -107,7 +108,7 @@ export class WebApplicationNavigator implements ApplicationNavigator {
107
108
  }
108
109
 
109
110
  goToAddress(
110
- address: Address,
111
+ address: NavigationAddress,
111
112
  options?: { ignoreBlocking?: boolean | undefined },
112
113
  ): void {
113
114
  if (options?.ignoreBlocking) {
@@ -127,28 +128,52 @@ export class WebApplicationNavigator implements ApplicationNavigator {
127
128
  }
128
129
  }
129
130
 
130
- visitAddress(address: Address): void {
131
+ visitAddress(address: NavigationAddress): void {
131
132
  this.window.open(address, '_blank');
132
133
  }
133
134
 
134
- updateCurrentLocation(location: Location): void {
135
+ generateAddress(location: NavigationLocation): string {
136
+ return (
137
+ this.window.location.origin +
138
+ this.historyAPI.createHref({ pathname: location })
139
+ );
140
+ }
141
+
142
+ updateCurrentLocation(location: NavigationLocation): void {
135
143
  this.historyAPI.push(location);
136
144
  }
137
145
 
138
- getCurrentAddress(): Address {
146
+ updateCurrentZone(zone: NavigationZone): void {
147
+ this.window.location.hash = NAVIGATION_ZONE_PREFIX + zone;
148
+ }
149
+
150
+ resetZone(): void {
151
+ this.updateCurrentLocation(this.getCurrentLocation());
152
+ }
153
+
154
+ getCurrentBaseAddress(options?: {
155
+ withAppRoot?: boolean | undefined;
156
+ }): NavigationAddress {
157
+ if (options?.withAppRoot) {
158
+ return this.generateAddress('');
159
+ }
160
+ return this.window.location.origin;
161
+ }
162
+
163
+ getCurrentAddress(): NavigationAddress {
139
164
  return this.window.location.href;
140
165
  }
141
166
 
142
- getCurrentLocation(): Location {
167
+ getCurrentLocation(): NavigationLocation {
143
168
  return this.historyAPI.location.pathname;
144
169
  }
145
170
 
146
- getAddressParameters<
147
- T extends Record<AddressParameterKey, AddressParameterValue>,
171
+ getCurrentLocationParameters<
172
+ T extends Record<string, NavigationLocationParameterValue>,
148
173
  >(): T {
149
- const result: Record<AddressParameterKey, AddressParameterValue> = {};
174
+ const result: Record<string, NavigationLocationParameterValue> = {};
150
175
  const parameters = getQueryParameters<
151
- Record<AddressParameterKey, AddressParameterValue>
176
+ Record<string, NavigationLocationParameterValue>
152
177
  >(sanitizeURL(this.getCurrentAddress()), true);
153
178
  Object.keys(parameters).forEach((key) => {
154
179
  result[key] = getQueryParameterValue(key, parameters);
@@ -156,15 +181,14 @@ export class WebApplicationNavigator implements ApplicationNavigator {
156
181
  return result as T;
157
182
  }
158
183
 
159
- getAddressParameterValue(key: AddressParameterKey): AddressParameterValue {
160
- return this.getAddressParameters()[key];
184
+ getCurrentLocationParameterValue(
185
+ key: string,
186
+ ): NavigationLocationParameterValue {
187
+ return this.getCurrentLocationParameters()[key];
161
188
  }
162
189
 
163
- generateAddress(location: Location): string {
164
- return (
165
- this.window.location.origin +
166
- this.historyAPI.createHref({ pathname: location })
167
- );
190
+ getCurrentZone(): NavigationZone {
191
+ return this.window.location.hash.substring(NAVIGATION_ZONE_PREFIX.length);
168
192
  }
169
193
 
170
194
  blockNavigation(
@@ -14,6 +14,22 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
+ import {
18
+ Router,
19
+ Route,
20
+ Switch,
21
+ Redirect,
22
+ matchPath,
23
+ generatePath,
24
+ MemoryRouter,
25
+ useParams,
26
+ useLocation,
27
+ } from 'react-router';
28
+ import {
29
+ NAVIGATION_ZONE_PREFIX,
30
+ type NavigationZone,
31
+ } from './NavigationService.js';
32
+
17
33
  export { BrowserRouter } from 'react-router-dom';
18
34
  export {
19
35
  Router,
@@ -24,5 +40,10 @@ export {
24
40
  matchPath,
25
41
  generatePath,
26
42
  MemoryRouter,
27
- } from 'react-router';
43
+ };
28
44
  export { createMemoryHistory } from 'history';
45
+
46
+ export const useNavigationZone = (): NavigationZone => {
47
+ const location = useLocation() as { hash: string }; // TODO: this is a temporary hack until we upgrade react-router
48
+ return location.hash.substring(NAVIGATION_ZONE_PREFIX.length);
49
+ };