@genexus/genexus-ide-ui 0.0.102 → 0.0.104

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 (80) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/{gx-ide-container_3.cjs.entry.js → gx-ide-container_2.cjs.entry.js} +3 -42
  3. package/dist/cjs/gx-ide-container_2.cjs.entry.js.map +1 -0
  4. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +53 -8
  5. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +14 -8
  7. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js +107 -97
  9. package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-recent-news.cjs.entry.js +113 -0
  11. package/dist/cjs/gx-ide-recent-news.cjs.entry.js.map +1 -0
  12. package/dist/cjs/gxg-title-editable.cjs.entry.js +128 -0
  13. package/dist/cjs/gxg-title-editable.cjs.entry.js.map +1 -0
  14. package/dist/cjs/gxg-title.cjs.entry.js +47 -0
  15. package/dist/cjs/gxg-title.cjs.entry.js.map +1 -0
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js +4 -4
  18. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js.map +1 -1
  19. package/dist/collection/components/dashboard-home/dashboard-home.css +23 -11
  20. package/dist/collection/components/dashboard-home/dashboard-home.js +75 -9
  21. package/dist/collection/components/dashboard-home/dashboard-home.js.map +1 -1
  22. package/dist/collection/components/dashboard-home/gx-ide-assets/dashboard-home/langs/dashboard-home.lang.en.json +16 -1
  23. package/dist/collection/components/data-selector/data-selector.js +15 -9
  24. package/dist/collection/components/data-selector/data-selector.js.map +1 -1
  25. package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.en.json +1 -1
  26. package/dist/components/gx-ide-dashboard-home.js +104 -20
  27. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  28. package/dist/components/gx-ide-data-selector.js +14 -8
  29. package/dist/components/gx-ide-data-selector.js.map +1 -1
  30. package/dist/components/gx-ide-empty-state2.js +4 -4
  31. package/dist/components/gx-ide-empty-state2.js.map +1 -1
  32. package/dist/esm/genexus-ide-ui.js +1 -1
  33. package/dist/esm/{gx-ide-container_3.entry.js → gx-ide-container_2.entry.js} +4 -42
  34. package/dist/esm/gx-ide-container_2.entry.js.map +1 -0
  35. package/dist/esm/gx-ide-dashboard-home.entry.js +53 -8
  36. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  37. package/dist/esm/gx-ide-data-selector.entry.js +14 -8
  38. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
  39. package/dist/esm/gx-ide-empty-state_2.entry.js +107 -97
  40. package/dist/esm/gx-ide-empty-state_2.entry.js.map +1 -1
  41. package/dist/esm/gx-ide-recent-news.entry.js +109 -0
  42. package/dist/esm/gx-ide-recent-news.entry.js.map +1 -0
  43. package/dist/esm/gxg-title-editable.entry.js +124 -0
  44. package/dist/esm/gxg-title-editable.entry.js.map +1 -0
  45. package/dist/esm/gxg-title.entry.js +43 -0
  46. package/dist/esm/gxg-title.entry.js.map +1 -0
  47. package/dist/esm/loader.js +1 -1
  48. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  49. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  50. package/dist/genexus-ide-ui/gx-ide-assets/dashboard-home/langs/dashboard-home.lang.en.json +16 -1
  51. package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.en.json +1 -1
  52. package/dist/genexus-ide-ui/{p-1346991a.entry.js → p-01f66e53.entry.js} +93 -39
  53. package/dist/genexus-ide-ui/p-01f66e53.entry.js.map +1 -0
  54. package/dist/genexus-ide-ui/p-3457226c.entry.js +146 -0
  55. package/dist/genexus-ide-ui/p-3457226c.entry.js.map +1 -0
  56. package/dist/genexus-ide-ui/{p-bff2603a.entry.js → p-5270ef52.entry.js} +120 -172
  57. package/dist/genexus-ide-ui/p-5270ef52.entry.js.map +1 -0
  58. package/dist/genexus-ide-ui/{p-725fe015.entry.js → p-926191a3.entry.js} +26 -19
  59. package/dist/genexus-ide-ui/p-926191a3.entry.js.map +1 -0
  60. package/dist/genexus-ide-ui/{p-40f21d2d.entry.js → p-95cd2572.entry.js} +9 -76
  61. package/dist/genexus-ide-ui/p-95cd2572.entry.js.map +1 -0
  62. package/dist/genexus-ide-ui/p-ce89cbcb.entry.js +71 -0
  63. package/dist/genexus-ide-ui/p-ce89cbcb.entry.js.map +1 -0
  64. package/dist/genexus-ide-ui/{p-2e6da0ef.entry.js → p-e9456041.entry.js} +6 -96
  65. package/dist/genexus-ide-ui/p-e9456041.entry.js.map +1 -0
  66. package/dist/types/components/dashboard-home/dashboard-home.d.ts +12 -2
  67. package/dist/types/components/data-selector/data-selector.d.ts +3 -2
  68. package/dist/types/components.d.ts +10 -2
  69. package/package.json +1 -1
  70. package/dist/cjs/gx-ide-container_3.cjs.entry.js.map +0 -1
  71. package/dist/cjs/gxg-card_2.cjs.entry.js +0 -243
  72. package/dist/cjs/gxg-card_2.cjs.entry.js.map +0 -1
  73. package/dist/esm/gx-ide-container_3.entry.js.map +0 -1
  74. package/dist/esm/gxg-card_2.entry.js +0 -238
  75. package/dist/esm/gxg-card_2.entry.js.map +0 -1
  76. package/dist/genexus-ide-ui/p-1346991a.entry.js.map +0 -1
  77. package/dist/genexus-ide-ui/p-2e6da0ef.entry.js.map +0 -1
  78. package/dist/genexus-ide-ui/p-40f21d2d.entry.js.map +0 -1
  79. package/dist/genexus-ide-ui/p-725fe015.entry.js.map +0 -1
  80. package/dist/genexus-ide-ui/p-bff2603a.entry.js.map +0 -1
@@ -1 +0,0 @@
1
- {"file":"gx-ide-container.gx-ide-title.gxg-title.entry.js","mappings":"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","names":["titleCss"],"sources":["src/components/_helpers/container/container.scss?tag=gx-ide-container&encapsulation=shadow","src/components/_helpers/container/container.tsx","src/components/_helpers/title/title.scss?tag=gx-ide-title&encapsulation=shadow","src/components/_helpers/title/title.tsx","node_modules/@genexus/gemini/dist/collection/components/title/title.css?tag=gxg-title&encapsulation=shadow","node_modules/@genexus/gemini/dist/collection/components/title/title.js"],"sourcesContent":["@import \"../../../../node_modules/@genexus/gemini/dist/gemini/globals/mixins.scss\";\n\n/*******************************\nHOST / GENERAL\n********************************/\n:host {\n --gx-ide-container-elements-spacing: var(--mer-spacing--xs);\n display: block;\n height: 100%;\n box-sizing: border-box;\n}\n.container {\n display: grid;\n height: 100%;\n grid-template-rows: auto 1fr auto;\n box-sizing: border-box;\n}\n.heading,\n.content,\n.footer,\n.footer-above {\n padding: var(--gx-ide-container__padding);\n}\n/*PADDING*/\n.container--padding-s {\n --gx-ide-container__padding: var(--mer-spacing--xs);\n}\n.container--padding-m {\n --gx-ide-container__padding: var(--mer-spacing--sm);\n}\n.container--padding-l {\n --gx-ide-container__padding: var(--mer-spacing--md);\n}\n/*BORDERS*/\n.container--display-border {\n border: 1px solid var(--gx-ide-container-border-color);\n}\n.container--display-border-top {\n border-top: 1px solid var(--gx-ide-container-border-color);\n}\n.container--display-border-end {\n border-inline-end: 1px solid var(--gx-ide-container-border-color);\n}\n.container--display-border-bottom {\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n}\n.container--display-border-start {\n border-inline-start: 1px solid var(--gx-ide-container-border-color);\n}\n.container--overflow-hidden-y {\n overflow-y: hidden;\n}\n/*******************************\nHEADING\n********************************/\n.heading {\n // @include gxg-flex-justify();\n display: flex;\n flex-direction: column;\n gap: var(--gx-ide-container__padding);\n width: 100%;\n box-sizing: border-box;\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n &--no-border {\n border-bottom: 0;\n }\n &--no-padding {\n padding: 0;\n }\n &--inactive {\n color: var(--gxg-color--disabled);\n }\n &--padding-top {\n padding: var(--gx-ide-container__padding) 0 0 0;\n }\n &--slimmer {\n padding-top: var(--mer-spacing--xs);\n padding-bottom: var(--mer-spacing--xs);\n }\n &--form-text-height {\n .heading__title {\n min-height: var(--gxg-form-text-height);\n justify-content: center;\n }\n }\n &--flex-row {\n flex-direction: row;\n align-items: center;\n justify-content: center;\n }\n}\n/*******************************\nCONTENT\n********************************/\n.content {\n overflow-x: auto;\n display: flex;\n flex-direction: column;\n gap: var(--gx-ide-form-items-gap);\n box-sizing: border-box;\n @include gxg-scrollbar();\n\n &--no-padding {\n padding: 0;\n }\n &--no-border-top {\n border-top: none;\n }\n &--flex {\n display: flex;\n }\n &--no-gap {\n gap: 0;\n }\n &--align-items-start {\n align-items: start;\n }\n &--align-items-center {\n align-items: center;\n }\n &--align-items-end {\n align-items: end;\n }\n &--justify-content-start {\n justify-content: start;\n }\n &--justify-content-center {\n justify-content: center;\n }\n &--justify-content-end {\n justify-content: end;\n }\n &--border-end {\n border-inline-end: 1px solid var(--gx-ide-container-border-color);\n }\n}\n/*only content*/\n.container--only-content {\n grid-template-rows: 1fr;\n}\n/*no header, but has footer*/\n.container--no-header:not(.container--only-content) {\n grid-template-rows: 1fr auto;\n}\n/*no footer, but has header*/\n.container--no-footer:not(.container--only-content) {\n grid-template-rows: auto 1fr;\n}\n/*******************************\nFOOTER\n********************************/\n/*ABOVE*/\n.footer-above {\n border-top: 1px solid var(--gx-ide-container-border-color);\n &--no-border-top {\n border-top: 0;\n }\n &--slimmer {\n padding-top: var(--mer-spacing--xs);\n padding-bottom: var(--mer-spacing--xs);\n }\n &--no-padding {\n padding: 0;\n }\n}\n/*START and END*/\n.footer {\n display: flex;\n gap: var(--gx-ide-container-elements-spacing);\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n border-top: 1px solid var(--gx-ide-container-border-color);\n &__start,\n &__end {\n display: flex;\n gap: var(--gx-ide-container-elements-spacing);\n }\n &--no-border {\n border-top: 0;\n }\n &--no-padding {\n padding: 0;\n }\n &--slimmer {\n padding-top: var(--mer-spacing--xs);\n padding-bottom: var(--mer-spacing--xs);\n }\n}\n","import { Component, Host, h, Prop, Element, State } from \"@stencil/core\";\nimport { TitleAlignment } from \"@genexus/gemini/dist/types/common/types\";\nimport { TitleType } from \"../title/title\";\n@Component({\n tag: \"gx-ide-container\",\n styleUrl: \"container.scss\",\n shadow: true\n})\nexport class GxIdeContainer {\n /*\nINDEX:\n1.OWN PROPERTIES\n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE EVENTS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES //\n\n /* GENERAL */\n\n /**\n * By setting the title to inactive, the color will be gray instead of black.\n */\n @Prop() readonly inactiveTitle: boolean = false;\n\n /**\n * The title of the container\n */\n @Prop() readonly containerTitle: string;\n\n /**\n * The title of the container\n */\n @Prop() readonly titleType: TitleType = \"primary\";\n\n /**\n * Displays a border all around the container\n */\n @Prop() readonly displayBorder: boolean = false;\n\n /**\n * Displays a border on the top\n */\n @Prop() readonly displayBorderTop: boolean = false;\n\n /**\n * Displays a border at the end\n */\n @Prop() readonly displayBorderEnd: boolean = false;\n\n /**\n * Displays a border at on the bottom\n */\n @Prop() readonly displayBorderBottom: boolean = false;\n\n /**\n * Displays a border at the start\n */\n @Prop() readonly displayBorderStart: boolean = false;\n\n /**\n * The container general padding (applies to .heading, .content, and .footer)\n */\n @Prop() readonly sectionsPadding: SectionsPadding = \"m\";\n\n /* HEADING*/\n\n /**\n * Title alignment\n */\n @Prop() readonly titleAlignment: TitleAlignment = \"center\";\n\n /**\n * Removes the border bottom from the heading\n */\n @Prop() readonly noHeadingBorder: boolean = false;\n\n /**\n * Removes the padding from the heading\n */\n @Prop() readonly noHeadingPadding: boolean = false;\n\n /**\n * Adds padding to the top of the heading\n */\n @Prop() readonly headingPaddingTop: boolean = false;\n\n /**\n * The heading justification\n */\n @Prop() readonly headingJustify: HeadingJustify = \"center\";\n\n /**\n * It forces the .heading__title min-height to be as tall as the gxg-form-text height. This is useful when you are displaying two gx-ide-container's on the same row, both of them display a title, and one of them displays a gxg-form-text in the header (usually used to filter content). Without this property set to true, the .heading without a gxg-from-text would be shorter. At the time of writing, this is used on ww-images.\n */\n @Prop() readonly titleHeightAsInput: boolean = false;\n\n /**\n * Makes the header (.heading) display flex:row, instad of the default flex:column.\n */\n @Prop() readonly flexRow: boolean = false;\n\n /* CONTENT */\n\n /**\n * Makes the content a flex container\n */\n @Prop() readonly flexContent: boolean = false;\n\n /**\n * Removes the border-top from the content\n */\n @Prop() readonly noContentBorderTop: boolean = false;\n\n /**\n * Removes the padding from the content\n */\n @Prop() readonly noContentPadding: boolean = false;\n\n /**\n * Removes the gap from the content\n */\n @Prop() readonly noContentGap: boolean = false;\n\n /**\n * Align items\n */\n @Prop() readonly alignItems: AlignItems = undefined;\n\n /**\n * Justify content\n */\n @Prop() readonly justifyContent: JustifyContent = undefined;\n\n /**\n * Display border end on the content\n */\n @Prop() readonly contentBorderEnd: boolean = false;\n\n /* FOOTER ABOVE */\n\n /**\n * Makes the above footer vertical padding slimmer\n */\n @Prop() readonly slimmerAboveFooter: boolean = false;\n\n /**\n * Removes the above padding from the footer\n */\n @Prop() readonly noAboveFooterPadding: boolean = false;\n\n /**\n * Removes the above border top\n */\n @Prop() readonly noBorderAboveFooter: boolean = false;\n\n /* FOOTER > START and FOOTER > END*/\n\n /**\n * Makes the footer vertical padding slimmer\n */\n @Prop() readonly slimmerFooter: boolean = false;\n\n /**\n * Removes the padding from the footer\n */\n @Prop() readonly noFooterPadding: boolean = false;\n\n /**\n * The footer justification\n */\n @Prop() readonly footerJustify: FooterJustify = \"end\";\n\n /**\n * Removes the border top from the footer\n */\n @Prop() readonly noBorderFooter: boolean = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeContainerElement;\n\n // 3.STATE() VARIABLES //\n\n /**\n * A boolean variable indicating if the component has or not any content for the 'header' slot\n */\n @State() hasHeaderSlot = false;\n\n /**\n * A boolean variable indicating if the component has or not any content slotted content (regular slotted content, without 'slot' attribute)\n */\n @State() hasSlottedContent = false;\n\n /**\n * A boolean variable indicating if the component has or not any content for the 'footer' slot\n */\n @State() hasFooterSlot = false;\n\n /**\n * A boolean variable indicating if the component has or not any content for the 'footer' slot\n */\n @State() hasAboveFooterSlot = false;\n\n /**\n * A boolean variable indicating that the container only has the heading section\n */\n @State() hasOnlyHeading = false;\n\n /**\n * A boolean variable indicating that the container only has the content section\n */\n @State() hasOnlyContent = false;\n\n /**\n * A boolean variable indicating that the container only has the footer section\n */\n @State() hasOnlyFooter = false;\n\n // 4.PUBLIC PROPERTY API //\n\n // 5.EVENTS (EMIT) //\n\n // 6.COMPONENT LIFECYCLE EVENTS //\n\n componentWillLoad() {\n this.evaluateSlots();\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private evaluateSlots() {\n // header\n const headerSlot = this.el.querySelectorAll(':scope > [slot=\"header\"]');\n if (headerSlot.length) {\n this.hasHeaderSlot = true;\n }\n // content\n const slottedContent = this.el.querySelectorAll(\":scope > :not([slot])\");\n if (slottedContent.length) {\n this.hasSlottedContent = true;\n }\n // footer\n const footerAboveSlot = this.el.querySelectorAll(\n ':scope > [slot=\"footer-above\"]'\n );\n const footerStartSlot = this.el.querySelectorAll(\n ':scope > [slot=\"footer-start\"]'\n );\n const footerEndSlot = this.el.querySelectorAll(\n ':scope > [slot=\"footer-end\"]'\n );\n if (footerStartSlot.length || footerEndSlot.length) {\n this.hasFooterSlot = true;\n }\n if (footerAboveSlot.length) {\n this.hasAboveFooterSlot = true;\n }\n }\n\n private evaluateSections() {\n // has only heading\n if (\n !this.hasSlottedContent &&\n !this.hasFooterSlot &&\n !this.hasAboveFooterSlot\n ) {\n this.hasOnlyHeading = true;\n }\n // has only content\n if (\n this.hasSlottedContent &&\n !this.containerTitle &&\n !this.hasHeaderSlot &&\n !this.hasAboveFooterSlot &&\n !this.hasFooterSlot\n ) {\n this.hasOnlyContent = true;\n }\n // has only footer\n if (\n !this.hasSlottedContent &&\n !this.containerTitle &&\n !this.hasAboveFooterSlot\n ) {\n this.hasOnlyFooter = true;\n }\n }\n\n private headingClasses = (): string | { [className: string]: boolean } => {\n return {\n \"heading\": true,\n \"heading--inactive\": this.inactiveTitle,\n \"heading--slimmer\": this.titleType === \"secondary\",\n \"heading--no-border\": this.noHeadingBorder || this.hasOnlyHeading,\n [`heading--justify-${this.headingJustify}`]: true,\n \"heading--no-padding\": this.noHeadingPadding,\n \"heading--padding-top\":\n this.headingPaddingTop && this.containerTitle?.length > 0,\n \"heading--form-text-height\": this.titleHeightAsInput,\n \"heading--flex-row\": this.flexRow\n };\n };\n\n private contentClasses = (): string | { [className: string]: boolean } => {\n return {\n \"content\": true,\n \"content--flex\": this.flexContent,\n \"content--no-padding\": this.noContentPadding,\n \"content--no-gap\": this.noContentGap,\n \"content--no-border-top\": this.noContentBorderTop,\n \"content--border-end\": this.contentBorderEnd,\n [`content--align-items-${this.alignItems}`]:\n this.alignItems !== undefined,\n [`content--justify-content-${this.justifyContent}`]:\n this.justifyContent !== undefined\n };\n };\n\n private aboveFooter = (): JSX.Element | null => {\n return this.hasAboveFooterSlot ? (\n <footer\n class={{\n \"footer-above\": true,\n \"footer-above--no-border-top\": this.noBorderAboveFooter,\n \"footer-above--no-padding\": this.noAboveFooterPadding,\n \"footer-above--slimmer\": this.slimmerFooter\n }}\n >\n <slot name=\"footer-above\"></slot>\n </footer>\n ) : null;\n };\n\n private footer = (): JSX.Element | null => {\n return this.hasFooterSlot ? (\n <footer\n class={{\n \"footer\": true,\n \"footer--no-border\":\n this.hasOnlyFooter ||\n !this.hasSlottedContent ||\n this.noBorderFooter,\n [`footer--justify-${this.footerJustify}`]: true,\n [`footer--justify-${this.footerJustify}`]: true,\n \"footer--no-padding\": this.noFooterPadding,\n \"footer--slimmer\": this.slimmerFooter\n }}\n >\n <div class=\"footer__start\">\n <slot name=\"footer-start\"></slot>\n </div>\n <div class=\"footer__end\">\n <slot name=\"footer-end\"></slot>\n </div>\n </footer>\n ) : null;\n };\n\n // 10.RENDER() FUNCTION //\n\n render() {\n this.evaluateSections();\n const result = [\n this.containerTitle || this.hasHeaderSlot ? (\n <header class={this.headingClasses()}>\n {this.containerTitle ? (\n <gx-ide-title\n class=\"heading__title\"\n type={this.titleType}\n alignment={this.titleAlignment as any}\n >\n {this.containerTitle}\n </gx-ide-title>\n ) : null}\n {this.hasHeaderSlot ? (\n <div class=\"heading__inner-wrapper\">\n <slot name=\"header\"></slot>\n </div>\n ) : null}\n </header>\n ) : null,\n this.hasSlottedContent ? (\n <div class={this.contentClasses()} part=\"content\">\n <slot></slot>\n </div>\n ) : null,\n this.aboveFooter(),\n this.footer()\n ];\n\n return (\n <Host>\n <div\n class={{\n \"container\": true,\n [`container--padding-${this.sectionsPadding}`]: true,\n \"container--display-border\": this.displayBorder,\n \"container--display-border-top\": this.displayBorderTop,\n \"container--display-border-end\": this.displayBorderEnd,\n \"container--display-border-bottom\": this.displayBorderBottom,\n \"container--display-border-start\": this.displayBorderStart,\n \"container--only-content\": this.hasOnlyContent,\n \"container--no-header\": !this.hasHeaderSlot && !this.containerTitle,\n \"container--no-footer\": !this.hasFooterSlot\n }}\n >\n {result}\n </div>\n </Host>\n );\n }\n}\n\nexport type HeadingJustify = \"start\" | \"center\" | \"end\";\nexport type FooterJustify = \"start\" | \"center\" | \"end\";\nexport type SectionsPadding = \"s\" | \"m\" | \"l\";\nexport type AlignItems = \"start\" | \"center\" | \"end\";\nexport type JustifyContent = \"start\" | \"center\" | \"end\";\n",":host {\n --gx-ide-title-padding: var(--gx-ide-container--padding, --mer-spacing--sm);\n display: flex;\n flex-direction: column;\n color: var(--gx-ide-component-text-color);\n font-family: var(--mer-font-family--primary);\n line-height: 1.6em;\n background-color: transparent;\n padding: 0;\n}\n/*alignment*/\n:host(.alignment--start) {\n align-items: start;\n}\n:host(.alignment--center) {\n align-items: center;\n}\n/*padding*/\n:host(.alignment--start) {\n text-align: start;\n}\n:host([padding]) {\n padding: var(--gx-ide-title-padding);\n}\n:host([no-padding-bottom]) {\n padding-bottom: 0;\n}\n/*border*/\n:host([border]) {\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n}\n/*type*/\n:host(.title-type--primary) {\n}\n:host(.title-type--secondary) {\n //a little subtle\n color: var(--gray-06);\n}\n","import { Component, Host, h, Prop } from \"@stencil/core\";\nimport { TitleType as GeminiTitleType } from \"@genexus/gemini/dist/types/components/title/title\";\n\n@Component({\n tag: \"gx-ide-title\",\n styleUrl: \"title.scss\",\n shadow: true\n})\nexport class GxIdeTitle {\n /**\n * Description: This helper component has been created for using as a title for the dialogs sections.\n */\n\n private geminiType: GeminiTitleType;\n\n /**\n * The title caption (the title)\n */\n @Prop() readonly titleCaption: string;\n\n /**\n * The title caption (the title)\n */\n @Prop() readonly type: TitleType = \"primary\";\n\n /**\n * The title alignment\n */\n @Prop() readonly alignment: TitleAlignment = \"start\";\n\n /**\n * Disables the padding\n */\n @Prop({ reflect: true }) readonly padding: boolean = false;\n\n /**\n * Disables the padding on the bottom\n */\n @Prop({ reflect: true }) readonly noPaddingBottom: boolean = false;\n\n /**\n * Displays a border on the bottom\n */\n @Prop({ reflect: true }) readonly border: boolean = false;\n\n componentWillLoad() {\n if (this.type === \"primary\") {\n this.geminiType = \"title-04\";\n } else if (this.type === \"secondary\") {\n this.geminiType = \"title-05\";\n }\n }\n\n render() {\n return (\n <Host\n class={{\n [`alignment--${this.alignment}`]: true,\n [`title-type--${this.type}`]: true\n }}\n >\n <gxg-title type={this.geminiType} alignment={this.alignment}>\n <slot></slot>\n </gxg-title>\n </Host>\n );\n }\n}\n\nexport type TitleType = \"primary\" | \"secondary\";\n\nexport type TitleAlignment = \"start\" | \"center\";\n","/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n/* Document\n ========================================================================== */\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\nhtml {\n line-height: 1.15;\n /* 1 */\n -webkit-text-size-adjust: 100%;\n /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n/**\n * Remove the margin in all browsers.\n */\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\nhr {\n box-sizing: content-box;\n /* 1 */\n height: 0;\n /* 1 */\n overflow: visible;\n /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\npre {\n font-family: monospace, monospace;\n /* 1 */\n font-size: 1em;\n /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n/**\n * Remove the gray background on active links in IE 10.\n */\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\nabbr[title] {\n border-bottom: none;\n /* 1 */\n text-decoration: underline;\n /* 2 */\n text-decoration: underline dotted;\n /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace;\n /* 1 */\n font-size: 1em;\n /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n/**\n * Remove the border on images inside links in IE 10.\n */\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n /* 1 */\n font-size: 100%;\n /* 1 */\n line-height: 1.15;\n /* 1 */\n margin: 0;\n /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\nbutton::-moz-focus-inner,\n[type=button]::-moz-focus-inner,\n[type=reset]::-moz-focus-inner,\n[type=submit]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\nbutton:-moz-focusring,\n[type=button]:-moz-focusring,\n[type=reset]:-moz-focusring,\n[type=submit]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\nlegend {\n box-sizing: border-box;\n /* 1 */\n color: inherit;\n /* 2 */\n display: table;\n /* 1 */\n max-width: 100%;\n /* 1 */\n padding: 0;\n /* 3 */\n white-space: normal;\n /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n[type=checkbox],\n[type=radio] {\n box-sizing: border-box;\n /* 1 */\n padding: 0;\n /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n[type=number]::-webkit-inner-spin-button,\n[type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n[type=search] {\n -webkit-appearance: textfield;\n /* 1 */\n outline-offset: -2px;\n /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n[type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n /* 1 */\n font: inherit;\n /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n/**\n * Add the correct display in IE 10+.\n */\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n[hidden] {\n display: none;\n}\n\n:root {\n --ui-animaton-speed: 0.2s;\n}\n\n/*ALIGNMENT*/\n/*Ellipsis*/\n/*****************************************************\nTYPOGRAPHY\n*****************************************************/\n/*Title 01 (Positive)*/\n.gxg-title-01 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-01-font-weight);\n font-size: var(--ds-title-01-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n/*Title 01 (Negative)*/\n.gxg-title-01--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-01-font-weight);\n font-size: var(--ds-title-01-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 02 (Positive)*/\n.gxg-title-02 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-02-font-weight);\n font-size: var(--ds-title-02-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-02--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-02-font-weight);\n font-size: var(--ds-title-02-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--color-on-primary);\n}\n\n/*Title 03*/\n.gxg-title-03 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-03-font-weight);\n font-size: var(--ds-title-03-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-03--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-03-font-weight);\n font-size: var(--ds-title-03-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n text-transform: uppercase;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 04*/\n.gxg-title-04 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-04-font-weight);\n font-size: var(--ds-title-04-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-04--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-04-font-weight);\n font-size: var(--ds-title-04-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--comfortable);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Title 05*/\n.gxg-title-05 {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-05-font-weight);\n font-size: var(--ds-title-05-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-title-05--negative {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--ds-title-05-font-weight);\n font-size: var(--ds-title-05-font-size);\n letter-spacing: var(--ds-base-font-letter-spacing--regular);\n color: var(--ds-base-font-color);\n text-align: start;\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n/*Text*/\n.gxg-text {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n}\n\n.gxg-text--negative {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--negative);\n}\n\n.gxg-text--gray {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--dimmed);\n}\n\n/*Quote*/\n.gxg-quote {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n font-style: italic;\n}\n\n.gxg-quote--negative {\n color: var(--ds-base-font-color--negative);\n}\n\n/*Link*/\n.gxg-link {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n}\n.gxg-link:hover {\n color: var(--ds-base-font-color--link-hover);\n}\n.gxg-link:active {\n color: var(--ds-base-font-color--link-active);\n}\n\n.gxg-link-gray {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n color: var(--ds-base-font-color--dimmed);\n}\n.gxg-link-gray:hover {\n line-height: unset;\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--link);\n text-decoration: underline;\n cursor: pointer;\n display: inline-block;\n color: var(--ds-base-font-color--dimmed);\n filter: brightness(1.4);\n}\n\n/*Alerts*/\n.gxg-alert-error {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--error);\n display: inline-block;\n}\n\n.gxg-alert-warning {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--warning);\n display: inline-block;\n}\n\n.gxg-alert-success {\n font-family: var(--ds-base-font-family-primary);\n font-size: var(--ds-base-font-size);\n color: var(--ds-base-font-size-color);\n font-weight: var(--ds-base-font-size-weight);\n line-height: var(--ds-base-font-line-height--comfortable);\n color: var(--ds-base-font-color--success);\n display: inline-block;\n}\n\n/*Tab*/\n.gxg-tab--disabled {\n color: var(--color-primary-disabled);\n pointer-events: none;\n}\n.gxg-tab--disabled[disabled] {\n color: var(--color-primary-disabled);\n pointer-events: none;\n}\n\n/*Label*/\n.gxg-label {\n font-family: var(--ds-base-font-family-primary);\n font-weight: var(--gxg-label-font-weight);\n font-size: var(--gxg-label-font-size);\n color: var(--gxg-label-color);\n text-align: center;\n line-height: 1.455em;\n display: flex;\n align-items: center;\n}\n.gxg-label:hover {\n color: var(--color-primary-hover);\n}\n.gxg-label:focus {\n color: var(--color-primary-active);\n}\n.gxg-label:active {\n color: var(--color-primary-active);\n}\n.gxg-label[disabled] {\n color: var(--color-primary-disabled);\n}\n\n.gxg-label--negative {\n color: var(--color-on-primary);\n}\n.gxg-label--negative[disabled] {\n color: var(--color-on-disabled);\n}\n\n/*****************************************************\nGXG-BUTTON and GXG-BUTTON-GROUP COMMON STYLES\n*****************************************************/\n/*****************************************************\nFORM ELEMENTS\n*****************************************************/\n.gxg-scrollbar {\n /* Track */\n /* Handle */\n /* Handle on hover */\n}\n.gxg-scrollbar::-webkit-scrollbar {\n width: var(--gxg-scrollbar-width);\n height: var(--gxg-scrollbar-width);\n}\n.gxg-scrollbar::-webkit-scrollbar-track {\n background-color: var(--gxg-scrollbar-track-background);\n border-radius: var(--gxg-scrollbar-track-border-radius);\n}\n.gxg-scrollbar::-webkit-scrollbar-thumb {\n background-color: var(--gxg-scrollbar-track-thumb-background);\n border-radius: var(--gxg-scrollbar-track-thumb-radius);\n}\n.gxg-scrollbar::-webkit-scrollbar-thumb:hover {\n background-color: var(--gxg-scrollbar-track-thumb-hover-background);\n}\n.gxg-scrollbar::-webkit-scrollbar-corner {\n background: rgba(0, 0, 0, 0);\n}\n\n:host h1,\n:host h2,\n:host h3,\n:host h4,\n:host h5 {\n margin: 0;\n color: inherit;\n background-color: transparent;\n}\n\n/*Aligment*/\n:host([alignment=start]) h1,\n:host([alignment=start]) h2,\n:host([alignment=start]) h3,\n:host([alignment=start]) h4,\n:host([alignment=start]) h5 {\n text-align: start;\n}\n\n:host([alignment=center]) h1,\n:host([alignment=center]) h2,\n:host([alignment=center]) h3,\n:host([alignment=center]) h4,\n:host([alignment=center]) h5 {\n text-align: center;\n}\n\n:host([alignment=end]) h1,\n:host([alignment=end]) h2,\n:host([alignment=end]) h3,\n:host([alignment=end]) h4,\n:host([alignment=end]) h5 {\n text-align: end;\n}","import { Host, h } from \"@stencil/core\";\nimport state from \"../store\";\nexport class GxgTitle {\n constructor() {\n this.type = \"title-01\";\n this.alignment = \"start\";\n }\n titleType() {\n let title;\n switch (this.type) {\n case \"title-01\":\n title = (h(\"h1\", { class: \"gxg-title-01\", part: \"title\" }, h(\"slot\", null)));\n break;\n case \"title-02\":\n title = (h(\"h2\", { class: \"gxg-title-02\", part: \"title\" }, h(\"slot\", null)));\n break;\n case \"title-03\":\n title = (h(\"h3\", { class: \"gxg-title-03\", part: \"title\" }, h(\"slot\", null)));\n break;\n case \"title-04\":\n title = (h(\"h4\", { class: \"gxg-title-04\", part: \"title\" }, h(\"slot\", null)));\n break;\n case \"title-05\":\n title = (h(\"h5\", { class: \"gxg-title-05\", part: \"title\" }, h(\"slot\", null)));\n break;\n default:\n title = (h(\"h1\", { class: \"gxg-title-06\", part: \"title\" }, h(\"slot\", null)));\n }\n return title;\n }\n render() {\n return h(Host, { class: { large: state.large } }, this.titleType(), \" \");\n }\n static get is() { return \"gxg-title\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"title.scss\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"title.css\"]\n };\n }\n static get properties() {\n return {\n \"type\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"TitleType\",\n \"resolved\": \"\\\"title-01\\\" | \\\"title-02\\\" | \\\"title-03\\\" | \\\"title-04\\\" | \\\"title-05\\\"\",\n \"references\": {\n \"TitleType\": {\n \"location\": \"local\",\n \"path\": \"/home/circleci/repo/src/components/title/title.tsx\",\n \"id\": \"src/components/title/title.tsx::TitleType\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Title type\"\n },\n \"attribute\": \"type\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"title-01\\\"\"\n },\n \"alignment\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"TitleAlignment\",\n \"resolved\": \"\\\"center\\\" | \\\"end\\\" | \\\"start\\\"\",\n \"references\": {\n \"TitleAlignment\": {\n \"location\": \"import\",\n \"path\": \"../../common/types\",\n \"id\": \"src/common/types.ts::TitleAlignment\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Title type\"\n },\n \"attribute\": \"alignment\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"start\\\"\"\n }\n };\n }\n}\n//# sourceMappingURL=title.js.map\n"],"version":3}
@@ -1,238 +0,0 @@
1
- import { h, r as registerInstance, g as getElement, H as Host, c as createEvent } from './index-f010c1e9.js';
2
- import { s as state } from './store-ccf0cb77.js';
3
- import { a as formTooltipLogic } from './form-32b2e788.js';
4
- import { f as formClasses, c as commonClassesNames } from './classesNames-ee9623a5.js';
5
- import { d as detectClickOutside } from './detect-click-outside-2150a315.js';
6
-
7
- /* STENCIL IMPORTS */
8
- /*A function that helps highlighting characters when searching.*/
9
- const escapeRegExp = (str) => {
10
- return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
11
- };
12
- const hiChar = function (text, filterValue) {
13
- if (text && filterValue) {
14
- /* this function highlights the character(s) that match(es) the filter value. (hi)light (Char)acters */
15
- const escapedFilterValue = escapeRegExp(filterValue);
16
- const re = new RegExp(escapedFilterValue, "gi");
17
- return (h("span", { innerHTML: text.replace(re, '<span class="hiChar">$&</span>') }));
18
- }
19
- else {
20
- return text;
21
- }
22
- };
23
-
24
- const cardCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0;}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px;}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host{display:block;background-color:var(--gxg-card_background-color);box-shadow:var(--gxg-card_box-shadow);border-radius:var(--gxg-card_border-radius);border-style:solid;border-width:1px;border-color:transparent;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}:host([elevation=xs]){box-shadow:var(--gxg-card_box-shadow)}:host([elevation=m]){box-shadow:var(--gxg-card_box-shadow)}:host([padding=\"0\"]){padding:0}:host([padding=xs]){padding:var(--gxg-card_padding-xs)}:host([padding=s]){padding:var(--gxg-card_padding-s)}:host([padding=m]){padding:var(--gxg-card_padding-m)}:host([padding=l]){padding:var(--gxg-card_padding-l)}:host([padding=xl]){padding:var(--gxg-card_padding-xl)}:host([padding=xxl]){padding:var(--gxg-card_padding-xxl)}:host([padding=xxxl]){padding:var(--gxg-card_padding-xxxl)}:host([background=white]){background:var(--gxg-card_background-white)}:host([background=gray-01]){background:var(--gxg-card_background-gray)}.content{overflow:auto;height:100%}.content::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.content::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.content::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.content::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.content::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host(.card--no-shadow){box-shadow:none}:host(.card--title) .wrapper{display:flex;flex-direction:column;height:100%;grid-template-rows:auto 1fr}:host(.card){background-color:var(--gxg-card_background-color)}:host(.card) .card__header{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;margin:var(--gxg-card-header_margin);padding-block-end:var(--gxg-card-header_padding-block-end);border-block-end:var(--gxg-card-header_border-block-end);gap:var(--gxg-card-header_gap)}:host(.card) .card__header--left{display:flex;align-items:center;gap:var(--gxg-card-header-left_gap);width:var(--gxg-card-header-left_width)}:host(.card) .card__header--left .card-title-wrapper{width:100%;white-space:nowrap;overflow:hidden}:host(.card) .card__header--left-full-width{width:100% !important}:host(.card) .card__header--left-full-width .card-title-wrapper{white-space:unset}:host(.card) .card__header--right{display:flex;flex-direction:row;align-items:center;justify-content:end;gap:var(--gxg-card-header-right_gap);font-size:var(--font-size-xl);width:var(--gxg-card-header-right_width);overflow:hidden;white-space:nowrap}:host(.card) .card__header .subtitle-wrapper{overflow:hidden;text-overflow:ellipsis;color:var(--gxg-card-subtitle_color);padding-inline-end:var(--gxg-card-subtitle-wrapper_padding-inline-end);}:host(.card) .card__header .subtitle-wrapper a{color:var(--gxg-card-subtitle-wrapper_link-color)}:host(.card) .card__header .subtitle{white-space:nowrap;color:var(--gxg-card-subtitle-wrapper_color)}:host(.card) .content{padding:var(--gxg-card-content_padding);font-size:var(--gxg-card-content_font-size);line-height:var(--gxg-card-content_line-height);color:var(--gxg-card-content_color)}:host(.card--default){background:var(--color-background)}:host(.card--default) .content{padding:0}:host(.card--section){font-size:var(--gxg-card-section_font-size);border-radius:var(--gxg-card-section_border-radius);padding:var(--gxg-card-section_padding);background-color:var(--mer-elevation__background-color--01);border:var(--mer-elevation__border-01);box-shadow:var(--mer-elevation__box-shadow--01)}:host(.card--section) .card__title{font-weight:var(--gxg-card-section-title_font-weight);font-size:var(--gxg-card-section-title_font-size)}:host(.card--article){font-size:var(--gxg-card-article_font-size);border-radius:var(--gxg-card-article_border-radius);padding:var(--gxg-card-article_padding);background-color:var(--mer-elevation__background-color--02);border:var(--mer-elevation__border-02);box-shadow:var(--mer-elevation__box-shadow--02);border:var(--gxg-card-article_border)}:host(.card--article) .card__header .card__title{margin:var(--gxg-card-article-title_margin);color:var(--gxg-card-article-title_color);overflow:hidden;text-overflow:ellipsis;font-weight:var(--gxg-card-article-title_font-weight);font-size:var(--gxg-card-article-title_font-size)}:host(.card--article) .card__header .subtitle-wrapper{color:var(--gxg-card-article-subtitle-wrapper_color);font-style:var(--gxg-card-article-subtitle-wrapper_font-style)}:host(.card--article) .content{font-style:var(--gxg-card-article-subtitle-content_font-style);color:var(--gxg-card-article-content_color);line-height:var(--gxg-card-article-subtitle-content_line-height)}:host(.card--article.title-semibold) .card__header .card__title{font-weight:var(--gxg-card-article-title-semibold_font-weight)}:host(.card--mini){font-size:var(--gxg-card-mini_font-size);border-radius:var(--gxg-card-mini_border-radius);padding:var(--gxg-card-mini_padding);background-color:var(--mer-elevation__background-color--02);border:var(--mer-elevation__border-02);box-shadow:var(--mer-elevation__box-shadow--02);border:var(--gxg-card-mini_border)}:host(.card--mini) .card__header{margin:var(--gxg-card-mini-header_margin);padding-block-end:var(--gxg-card-mini-header_padding-block-end);border-bottom:var(--gxg-card-mini-header_border-bottom)}:host(.card--mini) .card__header .card__header--left{width:var(--gxg-card-mini-header-left_width);gap:var(--gxg-card-mini-header-left_gap)}:host(.card--mini) .card__header .card__title{margin:var(--gxg-card-mini-title_margin);overflow:hidden;text-overflow:ellipsis;font-weight:var(--gxg-card-mini-title_font-weight);font-size:var(--gxg-card-mini-title_font-size);color:var(--gxg-card-mini-title_color)}:host(.card--mini) .content{font-style:var(--gxg-card-mini-content_font-style);font-size:var(--gxg-card-mini_font-size);padding:var(--gxg-card-mini-content_padding);color:var(--gxg-card-mini-content_color)}:host(.card--no-content) .card__header{border-bottom:0}:host(.card--actionable:hover){filter:brightness(var(--gxg-card-actionable-brightness--hover))}:host(.card--actionable:hover) .wrapper,:host(.card--actionable:hover) .card__header,:host(.card--actionable:hover) .content{cursor:pointer}:host(.no-header-border) .card__header{padding-bottom:0;border-bottom:0}:host(.card--no-border){border:none !important}.hiChar{color:var(--gxg-hi-char-color);font-weight:600}";
25
-
26
- const GxgCard = class {
27
- constructor(hostRef) {
28
- /*--- Mercury Only Tokens ---*/
29
- this.titleType = "h2";
30
- this.hasSlot = false;
31
- this.hasHeaderSlot = false;
32
- this.renderCardSubtitle = () => {
33
- if (this.cardSubtitle && this.subtitleLink) {
34
- return (h("a", { class: "subtitle", href: this.subtitleLink, target: "_blank" }, this.cardSubtitle));
35
- }
36
- else if (this.cardSubtitle && !this.subtitleLink) {
37
- {
38
- return this.hiChar
39
- ? hiChar(this.cardSubtitle, this.filterValue)
40
- : this.cardSubtitle;
41
- }
42
- }
43
- };
44
- registerInstance(this, hostRef);
45
- this.elevation = "xs";
46
- this.background = "white";
47
- this.padding = "xs";
48
- this.minHeight = "auto";
49
- this.height = "auto";
50
- this.maxWidth = "100%";
51
- this.noShadow = false;
52
- this.noBorder = false;
53
- this.hiChar = false;
54
- this.filterValue = undefined;
55
- this.noPaddingTop = false;
56
- this.cardTitle = undefined;
57
- this.noHeaderBorder = false;
58
- this.titleSemibold = false;
59
- this.cardSubtitle = undefined;
60
- this.subtitleLink = undefined;
61
- this.subtitleIcon = undefined;
62
- this.cardType = "section";
63
- this.icon = undefined;
64
- this.iconColor = "auto";
65
- this.subtitleColor = "auto";
66
- this.editableTitle = false;
67
- this.actionable = false;
68
- }
69
- get el() { return getElement(this); }
70
- componentWillLoad() {
71
- if (this.cardType === "article") {
72
- this.titleType = "h2";
73
- }
74
- else if (this.cardType === "mini") {
75
- this.titleType = "h4";
76
- }
77
- const hasSlot = this.el.querySelector("*");
78
- if (hasSlot) {
79
- this.hasSlot = true;
80
- }
81
- const headerSlot = this.el.querySelector("[slot='header']");
82
- if (headerSlot) {
83
- this.hasHeaderSlot = true;
84
- }
85
- }
86
- render() {
87
- return (h(Host, { role: "article", class: {
88
- card: true,
89
- mercury: state.mercury,
90
- "card--no-content": !this.hasSlot,
91
- "card--section": this.cardType === "section",
92
- "card--article": this.cardType === "article",
93
- "card--mini": this.cardType === "mini",
94
- "card--title": this.cardTitle !== undefined,
95
- "card--actionable": this.actionable &&
96
- (this.cardType === "article" || this.cardType === "mini"),
97
- "title-semibold": this.titleSemibold,
98
- "card--no-shadow": this.noShadow,
99
- "card--no-border": this.noBorder,
100
- "no-header-border": this.noHeaderBorder
101
- }, style: {
102
- maxWidth: this.maxWidth,
103
- minHeight: this.minHeight,
104
- height: this.height
105
- } }, h("div", { role: this.actionable ? "button" : "none", class: {
106
- wrapper: true,
107
- "wrapper--header": this.cardTitle !== undefined
108
- } }, this.cardTitle ? (h("header", { class: "card__header" }, h("div", { class: {
109
- "card__header--left": true,
110
- "card__header--left-full-width": !this.cardSubtitle
111
- } }, this.icon ? (h("gxg-icon", { type: this.icon, color: this.iconColor })) : null, h("div", { class: "card-title-wrapper" }, this.cardType === "section" ? (h("gxg-title-editable", { class: "card__title", titleType: this.titleType, value: this.cardTitle, disableEdition: !this.editableTitle })) : (h("h2", { class: "card__title" }, this.hiChar
112
- ? hiChar(this.cardTitle, this.filterValue)
113
- : this.cardTitle)))), this.cardSubtitle &&
114
- this.cardType !== "mini" &&
115
- !this.hasHeaderSlot ? (h("div", { class: "card__header--right" }, h("div", { class: "subtitle-wrapper" }, this.renderCardSubtitle()), this.subtitleIcon ? (h("gxg-icon", { type: this.subtitleIcon, color: this.subtitleColor })) : null)) : null, this.hasHeaderSlot ? (h("div", { class: "card__header--right" }, h("slot", { name: "header" }))) : null)) : null, this.hasSlot ? (h("div", { class: "content" }, h("slot", null))) : null)));
116
- }
117
- };
118
- GxgCard.style = cardCss;
119
-
120
- const titleEditableCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host(.gxg-validation--warning) .form-element{border-color:var(--ds-border-color--warning)}:host(.gxg-validation--warning) .form-element:focus{outline-color:var(--ds-border-color--warning);border-color:var(--ds-border-color--warning)}:host(.gxg-validation--warning) .form-element:focus+.checkmark{--checkmark-border-color:var(--ds-border-color--warning)}:host(.gxg-validation--error) .form-element{border-color:var(--ds-border-color--error)}:host(.gxg-validation--error) .form-element:focus{outline-color:var(--ds-border-color--error);border-color:var(--ds-border-color--error)}:host(.gxg-validation--error) .form-element:focus+.checkmark{--checkmark-border-color:var(--ds-border-color--error)}:host(.gxg-validation--success) .form-element{border-color:var(--ds-border-color--success)}:host(.gxg-validation--success) .form-element:focus{outline-color:var(--ds-border-color--success);border-color:var(--ds-border-color--success)}:host(.gxg-validation--success) .form-element:focus+.checkmark{--checkmark-border-color:var(--ds-border-color--success)}.tooltip-outer-wrapper{display:grid;grid-template-columns:0fr;transition:grid-template-columns var(--timing-02)}:host(.tooltip--visible) .tooltip-outer-wrapper{grid-template-columns:1fr}.tooltip-inner-wrapper{--margin-inline-start:6px;overflow:hidden;transition:150ms width;width:0}.tooltip-inner-wrapper gxg-icon{display:flex;position:relative !important;top:0 !important;transform:none !important;margin-inline-start:var(--margin-inline-start);box-sizing:border-box}.tooltip-inner-wrapper--visible{width:calc(var(--ds-icon-size-box--small) + var(--margin-inline-start))}.tooltip-inner-wrapper--hidden{display:none}:host(.gxg--disabled) .form-element,:host(.gxg--disabled.form-element){pointer-events:none;background-color:var(--ds-background-color-disabled) !important;color:var(--ds-color--disabled) !important;border-color:var(--ds-border-color-disabled) !important;cursor:default !important}:host{display:block;color:var(--gxg-title-editable__color)}:host .wrapper{font-family:var(--ds-base-font-family-primary);position:relative;max-width:100%}:host input{font-family:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;color:inherit;background-color:transparent;border:none;padding:0;box-sizing:border-box;flex-grow:1;cursor:auto;border-bottom:2px solid transparent}:host input:focus{outline:none}.wrapper{display:flex;align-items:center;gap:var(--gxg-title-editable-wrapper__gap);font-weight:var(--gxg-title-editable__font-weight)}:host(:not([editing])) input{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host([click-to-edit]:not([disable-edition])) .wrapper,:host([click-to-edit]:not([disable-edition])) input{cursor:pointer}:host([title-type=h1]) .wrapper{font-size:var(--gxg-title-editable-h1__font-size);text-transform:capitalize}:host([title-type=h2]) .wrapper{font-size:var(--gxg-title-editable-h2__font-size)}:host([fluid]) .wrapper{display:inline-flex}:host(.focus--text.editing) input{color:var(--gxg-title-editable__color--editing)}:host(.focus--line.editing) input{border-bottom-color:var(--gxg-title-editable__color--editing)}.ghost{font-family:inherit;font-size:inherit;position:fixed;visibility:hidden;height:auto;width:auto;white-space:nowrap;bottom:0;left:0;transform:translate(-100%, -100%)}.right-wrapper{display:flex;align-items:center}";
121
-
122
- const GxgTitleEditable = class {
123
- constructor(hostRef) {
124
- /*PRIVATE METHODS*/
125
- this.edit = () => {
126
- this.editing = true;
127
- this.positionCursorAtTheEnd();
128
- };
129
- this.wrapperClickedHandler = () => {
130
- this.editing = true;
131
- };
132
- this.positionCursorAtTheEnd = () => {
133
- this.textInput.selectionStart = this.textInput.selectionEnd =
134
- this.textInput.value.length;
135
- this.textInput.focus();
136
- };
137
- this.inputKeyDownHandler = (e) => {
138
- if (e.key === "Enter" || e.key === "Escape") {
139
- e.preventDefault();
140
- this.editing = false;
141
- this.editButtonEl.focus();
142
- }
143
- else if (this.fluid) {
144
- this.setInputWidth();
145
- }
146
- };
147
- this.detectClickOutsideFunc = (e) => {
148
- const clickedOutside = detectClickOutside(e, this.wrapperEl);
149
- if (clickedOutside) {
150
- this.editing = false;
151
- }
152
- };
153
- this.setInputWidth = () => {
154
- this.textInput.style.width = this.value.length + 1 + "ch";
155
- };
156
- this.inputInputHandler = () => {
157
- this.value = this.textInput.value;
158
- if (this.fluid) {
159
- this.ghostDiv.innerText = this.value;
160
- this.updateInputWidth();
161
- }
162
- };
163
- this.updateInputWidth = () => {
164
- if (this.fluid) {
165
- const ghostDivWidth = this.ghostDiv.getBoundingClientRect().width;
166
- this.textInput.style.width = `${ghostDivWidth}px`;
167
- }
168
- };
169
- registerInstance(this, hostRef);
170
- this.valueChanged = createEvent(this, "valueChanged", 7);
171
- this.value = undefined;
172
- this.titleType = "h1";
173
- this.disableEdition = false;
174
- this.debounce = false;
175
- this.debounceDelay = 800;
176
- this.disabled = false;
177
- this.clickToEdit = false;
178
- this.fluid = false;
179
- this.focusType = undefined;
180
- this.validationStatus = "indeterminate";
181
- this.validationMessage = undefined;
182
- this.hideTooltip = false;
183
- this.editing = false;
184
- }
185
- get el() { return getElement(this); }
186
- watchValueHandler(newValue) {
187
- if (this.debounce) {
188
- clearTimeout(this.timeoutReference);
189
- this.timeoutReference = setTimeout(() => {
190
- this.valueChanged.emit(newValue);
191
- }, this.debounceDelay);
192
- }
193
- else {
194
- this.valueChanged.emit(newValue);
195
- }
196
- }
197
- watchEditingHandler(editing) {
198
- if (editing) {
199
- document.addEventListener("click", this.detectClickOutsideFunc);
200
- }
201
- else {
202
- document.removeEventListener("click", this.detectClickOutsideFunc);
203
- }
204
- }
205
- /*COMPONENT LIFECYCLE METHODS*/
206
- componentDidLoad() {
207
- if (this.fluid) {
208
- this.inputInputHandler();
209
- }
210
- }
211
- /*RENDER*/
212
- render() {
213
- return (h(Host, { class: {
214
- editing: this.editing,
215
- "focus--text": this.focusType === "text",
216
- "focus--line": this.focusType === "line",
217
- [formClasses["VALIDATION_INDETERMINATE_CLASS"]]: this.validationStatus === "indeterminate",
218
- [formClasses["VALIDATION_WARNING_CLASS"]]: this.validationStatus === "warning",
219
- [formClasses["VALIDATION_ERROR_CLASS"]]: this.validationStatus === "error",
220
- [formClasses["VALIDATION_SUCCESS_CLASS"]]: this.validationStatus === "success",
221
- [commonClassesNames["DISABLED_CLASS"]]: this.disabled
222
- } }, h("div", { onMouseUp: this.clickToEdit &&
223
- !this.editing &&
224
- !this.disableEdition &&
225
- this.wrapperClickedHandler, class: {
226
- wrapper: true
227
- }, ref: el => (this.wrapperEl = el) }, this.fluid ? (h("div", { class: "ghost", ref: el => (this.ghostDiv = el) })) : null, h("input", { type: "text", value: this.value, readOnly: !this.editing, ref: el => (this.textInput = el), onKeyDown: this.inputKeyDownHandler, onInput: this.inputInputHandler, tabIndex: this.editing ? 0 : -1 }), h("div", { class: "right-wrapper" }, !this.disableEdition ? (h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/edit", onClick: this.edit, ref: el => (this.editButtonEl = el) })) : null, formTooltipLogic(this, this.hideTooltip)))));
228
- }
229
- static get watchers() { return {
230
- "value": ["watchValueHandler"],
231
- "editing": ["watchEditingHandler"]
232
- }; }
233
- };
234
- GxgTitleEditable.style = titleEditableCss;
235
-
236
- export { GxgCard as gxg_card, GxgTitleEditable as gxg_title_editable };
237
-
238
- //# sourceMappingURL=gxg-card_2.entry.js.map