@genexus/genexus-ide-ui 1.0.36 → 1.0.38
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.
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +3 -1
- package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-ai-message.cjs.entry.js +26 -8
- package/dist/cjs/gx-ide-ai-message.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-design-import.cjs.entry.js +12 -13
- package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-select-user-team.cjs.entry.js +35 -20
- package/dist/cjs/gx-ide-select-user-team.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js +22 -22
- package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/ai-assistant/ai-assistant.js +2 -1
- package/dist/collection/components/ai-assistant/ai-assistant.js.map +1 -1
- package/dist/collection/components/ai-assistant/ai-message.css +32 -2
- package/dist/collection/components/ai-assistant/ai-message.js +25 -8
- package/dist/collection/components/ai-assistant/ai-message.js.map +1 -1
- package/dist/collection/components/design-import/design-import.js +12 -13
- package/dist/collection/components/design-import/design-import.js.map +1 -1
- package/dist/collection/components/design-import/gx-ide-assets/design-import/langs/design-import.lang.en.json +1 -0
- package/dist/collection/components/design-import/gx-ide-assets/design-import/langs/design-import.lang.ja.json +1 -0
- package/dist/collection/components/design-import/gx-ide-assets/design-import/langs/design-import.lang.zh.json +1 -0
- package/dist/collection/components/select-user-team/gx-ide-assets/select-user-team/langs/select-user-team.lang.en.json +4 -8
- package/dist/collection/components/select-user-team/gx-ide-assets/select-user-team/langs/select-user-team.lang.ja.json +2 -6
- package/dist/collection/components/select-user-team/gx-ide-assets/select-user-team/langs/select-user-team.lang.zh.json +2 -6
- package/dist/collection/components/select-user-team/select-user-team.css +47 -19
- package/dist/collection/components/select-user-team/select-user-team.js +64 -26
- package/dist/collection/components/select-user-team/select-user-team.js.map +1 -1
- package/dist/collection/components/sign-in-team/sign-in-team.js +20 -20
- package/dist/collection/components/sign-in-team/sign-in-team.js.map +1 -1
- package/dist/components/ai-message.js +27 -10
- package/dist/components/ai-message.js.map +1 -1
- package/dist/components/gx-ide-ai-assistant.js +3 -1
- package/dist/components/gx-ide-ai-assistant.js.map +1 -1
- package/dist/components/gx-ide-design-import.js +12 -13
- package/dist/components/gx-ide-design-import.js.map +1 -1
- package/dist/components/gx-ide-select-user-team.js +40 -22
- package/dist/components/gx-ide-select-user-team.js.map +1 -1
- package/dist/components/gx-ide-sign-in-team.js +22 -22
- package/dist/components/gx-ide-sign-in-team.js.map +1 -1
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-ai-assistant.entry.js +3 -1
- package/dist/esm/gx-ide-ai-assistant.entry.js.map +1 -1
- package/dist/esm/gx-ide-ai-message.entry.js +26 -8
- package/dist/esm/gx-ide-ai-message.entry.js.map +1 -1
- package/dist/esm/gx-ide-design-import.entry.js +12 -13
- package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-select-user-team.entry.js +35 -20
- package/dist/esm/gx-ide-select-user-team.entry.js.map +1 -1
- package/dist/esm/gx-ide-sign-in-team.entry.js +22 -22
- package/dist/esm/gx-ide-sign-in-team.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/design-import/langs/design-import.lang.en.json +1 -0
- package/dist/genexus-ide-ui/gx-ide-assets/design-import/langs/design-import.lang.ja.json +1 -0
- package/dist/genexus-ide-ui/gx-ide-assets/design-import/langs/design-import.lang.zh.json +1 -0
- package/dist/genexus-ide-ui/gx-ide-assets/select-user-team/langs/select-user-team.lang.en.json +4 -8
- package/dist/genexus-ide-ui/gx-ide-assets/select-user-team/langs/select-user-team.lang.ja.json +2 -6
- package/dist/genexus-ide-ui/gx-ide-assets/select-user-team/langs/select-user-team.lang.zh.json +2 -6
- package/dist/genexus-ide-ui/p-0b33d2f9.entry.js.map +1 -1
- package/dist/genexus-ide-ui/{p-32bd11fa.entry.js → p-5fc133b2.entry.js} +118 -121
- package/dist/genexus-ide-ui/p-5fc133b2.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-798eb91a.entry.js +121 -0
- package/dist/genexus-ide-ui/p-798eb91a.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-040bd0c5.entry.js → p-a7dcfedd.entry.js} +9 -5
- package/dist/genexus-ide-ui/p-a7dcfedd.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-c9b0fd13.entry.js +130 -0
- package/dist/genexus-ide-ui/p-c9b0fd13.entry.js.map +1 -0
- package/dist/types/components/ai-assistant/ai-message.d.ts +2 -0
- package/dist/types/components/select-user-team/select-user-team.d.ts +10 -5
- package/dist/types/components/sign-in-team/sign-in-team.d.ts +1 -1
- package/dist/types/components.d.ts +12 -4
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-040bd0c5.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-32bd11fa.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-7cdfbdba.entry.js +0 -88
- package/dist/genexus-ide-ui/p-7cdfbdba.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-b189e45d.entry.js +0 -113
- package/dist/genexus-ide-ui/p-b189e45d.entry.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["aiMessageCss","GxIdeAiMessage","this","copyable","evaluateMessageIsCopyable","messageType","componentWillLoad","_componentLocale","Locale","getComponentStrings","el","componentDidRender","setTimeout","visible","messagesList","parentElement","scrollTo","render","h","class","message","hidden","showCopiedMessage","you","message__role","assistant","message__caption","hiChar","filterValue"],"sources":["src/components/ai-assistant/ai-message.scss?tag=gx-ide-ai-message&encapsulation=shadow","src/components/ai-assistant/ai-message.tsx"],"sourcesContent":["@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n font-family: var(--mer-font-family--primary);\n}\n/*--- Messages ---*/\n.message {\n color: var(--mer-color__neutral-gray--100);\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows 100ms;\n transition: grid-template-rows 100ms, -ms-grid-rows 100ms;\n &__outer-wrapper {\n overflow: hidden;\n }\n &__inner-wrapper {\n padding: var(--mer-spacing--sm) var(--mer-spacing--sm);\n border-radius: var(--mer-border__radius--sm);\n border-inline-start: var(--mer-border__width--md) solid transparent;\n background-color: var(--mer-color__neutral-gray--1200);\n margin-block-start: var(--mer-spacing--xs);\n }\n &__role {\n display: inline-block;\n font-weight: var(--mer-font__weight--semi-bold);\n margin-block-end: var(--mer-spacing--xs);\n display: inline-grid;\n grid-template-columns: max-content max-content;\n gap: 6px;\n &:before {\n content: \"\";\n display: grid;\n place-self: center flex-end;\n inline-size: 4px;\n block-size: 4px;\n border-radius: 50%;\n background-color: currentcolor;\n }\n\n &--user {\n color: var(--mer-color__primary--300);\n }\n &--assistant {\n }\n &--hidden {\n display: none;\n }\n }\n &__caption {\n font-size: var(--mer-font__size--xs);\n line-height: var(--mer-line-height--regular);\n position: relative;\n }\n &--visible {\n grid-template-rows: 1fr;\n }\n &--copying {\n pointer-events: none;\n span:not(.copied),\n .message__caption {\n color: transparent;\n -webkit-user-select: none; /* Safari */\n -ms-user-select: none; /* IE 10 and IE 11 */\n user-select: none; /* Standard syntax */\n }\n }\n /*--- Types of messages ---*/\n &--user {\n .message__inner-wrapper {\n background-color: rgba(91, 167, 255, 0.08);\n border-color: var(--mer-border-color__primary);\n }\n }\n &--assistant-action {\n .message__inner-wrapper {\n background-color: rgba(63, 168, 155, 0.05);\n border-color: var(--mer-border-color__success);\n }\n }\n &--assistant-chat {\n .message__inner-wrapper {\n background-color: var(--mer-surface__elevation--01);\n }\n }\n &--assistant-in-progress {\n color: var(--mer-color__neutral-gray--500);\n .message__inner-wrapper {\n font-style: italic;\n display: grid;\n grid-template-columns: 1fr auto;\n gap: var(--mer-spacing--xs);\n\n .message__caption {\n @include ellipsis;\n flex: 1;\n }\n .animation-wrapper {\n flex: none;\n }\n }\n }\n &--assistant-error {\n .message__inner-wrapper {\n background-color: rgba(251, 124, 132, 0.05);\n border-color: var(--mer-border-color__error);\n }\n }\n &--copyable {\n }\n &:last-child {\n margin-block-end: 0;\n }\n}\n:host(:first-child) {\n .message {\n &__inner-wrapper {\n margin-block-end: 0;\n }\n }\n}\n\n/*--- Dot Pulse Sweet Animation ---*/\n.animation-wrapper {\n width: 45px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n$color: var(--mer-color__neutral-gray--400);\n.dot-pulse {\n position: relative;\n left: -9999px;\n width: 5px;\n height: 5px;\n border-radius: 2.5px;\n background-color: $color;\n color: $color;\n box-shadow: 9999px 0 0 -5px;\n animation: dot-pulse 1.5s infinite linear;\n animation-delay: 0.25s;\n &::before,\n &::after {\n content: \"\";\n display: inline-block;\n position: absolute;\n top: 0;\n width: 5px;\n height: 5px;\n border-radius: 2.5px;\n background-color: $color;\n color: $color;\n }\n &::before {\n box-shadow: 9984px 0 0 -5px;\n animation: dot-pulse-before 1.5s infinite linear;\n animation-delay: 0s;\n }\n &::after {\n box-shadow: 10014px 0 0 -5px;\n animation: dot-pulse-after 1.5s infinite linear;\n animation-delay: 0.5s;\n }\n}\n@keyframes dot-pulse-before {\n 0% {\n box-shadow: 9984px 0 0 -5px;\n }\n 30% {\n box-shadow: 9984px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 9984px 0 0 -5px;\n }\n}\n@keyframes dot-pulse {\n 0% {\n box-shadow: 9999px 0 0 -5px;\n }\n 30% {\n box-shadow: 9999px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 9999px 0 0 -5px;\n }\n}\n@keyframes dot-pulse-after {\n 0% {\n box-shadow: 10014px 0 0 -5px;\n }\n 30% {\n box-shadow: 10014px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 10014px 0 0 -5px;\n }\n}\n\n/*--- Copy Message ---*/\n.copied {\n position: absolute;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mer-color__neutral-gray--300);\n display: flex;\n gap: var(--mer-spacing--2xs);\n}\n\n@include hiChar;\n","/* STENCIL IMPORTS */\nimport { Component, h, Prop, Element, State } from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { MessageType } from \"./ai-assistant\";\nimport { hiChar } from \"../../common/helpers\";\n\n@Component({\n tag: \"gx-ide-ai-message\",\n styleUrl: \"ai-message.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/ai-message\"]\n})\nexport class GxIdeAiMessage {\n /*\nINDEX:\n1.OWN PROPERTIES \n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE METHODS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES //\n\n /* The message allows to be copied*/\n private _componentLocale: any;\n private copyable = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeAiMessageElement;\n\n // 3.STATE() VARIABLES //\n\n /**\n * This wil display the message if true\n */\n @State() visible = false;\n\n /**\n * This wil show the user a text, indicating that the message has been copied\n */\n @State() showCopiedMessage = false;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * The actual message\n */\n @Prop() readonly message: string;\n\n /**\n * The message type\n */\n @Prop() readonly messageType: MessageType;\n\n /**\n * The filter value\n */\n @Prop() readonly filterValue: string;\n\n /**\n * It hides the message (used for the filter)\n */\n @Prop() readonly hidden: boolean;\n\n /**\n * An object with the needed string translations.\n */\n @Prop() readonly translations: Translations;\n\n // 5.EVENTS (EMIT) //\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.evaluateMessageIsCopyable();\n }\n\n componentDidRender() {\n setTimeout(() => {\n /* Without the timeout it appears instantly (no apparent transition)*/\n this.visible = true;\n const messagesList = this.el.parentElement;\n messagesList.scrollTo(0, 0);\n }, 0);\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private evaluateMessageIsCopyable = () => {\n this.copyable =\n this.messageType !== \"assistant-in-progress\" &&\n this.messageType !== \"assistant-action\";\n };\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <li\n class={{\n \"message\": true,\n \"message--visible\": this.visible && !this.hidden,\n [`message--${[this.messageType]}`]: true,\n \"message--assistant\": this.messageType !== \"user\",\n \"message--copyable\": this.copyable,\n \"message--copying\": this.showCopiedMessage\n }}\n >\n <div class=\"message__outer-wrapper\">\n <div\n class={{\n \"message__inner-wrapper\": true\n }}\n >\n {this.messageType === \"user\" ? (\n <span class=\"message__role message__role--user\">\n {this._componentLocale.you}\n </span>\n ) : (\n <span\n class={{\n \"message__role\": this.messageType !== \"assistant-in-progress\",\n \"message__role--hidden\":\n this.messageType === \"assistant-in-progress\",\n \"message__role--assistant\": true\n }}\n >\n {this._componentLocale.assistant}\n </span>\n )}\n <div\n class={{\n \"message__caption\": true,\n \"message__caption--in-progress\":\n this.messageType === \"assistant-in-progress\"\n }}\n >\n {hiChar(this.message, this.filterValue)}\n </div>\n {this.messageType === \"assistant-in-progress\" ? (\n <div class=\"animation-wrapper\">\n <div class=\"dot-pulse\"></div>\n </div>\n ) : null}\n </div>\n </div>\n </li>\n );\n }\n}\n\nexport type Translations = {\n [key: string]: string;\n};\n"],"mappings":";;;;;;AAAA,MAAMA,IAAe;;MCcRC,IAAc;;;IAmBjBC,KAAAC,WAAW;;;;QAqEXD,KAAAE,4BAA4B;MAClCF,KAAKC,WACHD,KAAKG,gBAAgB,2BACrBH,KAAKG,gBAAgB;AAAkB;mBA7DxB;6BAKU;;;;;;;;;EAiC7B,uBAAMC;IACJJ,KAAKK,yBAAyBC,EAAOC,oBAAoBP,KAAKQ;IAC9DR,KAAKE;;EAGP,kBAAAO;IACEC,YAAW;;MAETV,KAAKW,UAAU;MACf,MAAMC,IAAeZ,KAAKQ,GAAGK;MAC7BD,EAAaE,SAAS,GAAG;AAAE,QAC1B;;;EAiBL,MAAAC;IACE,OACEC,EAAA;MACEC,OAAO;QACLC,SAAW;QACX,oBAAoBlB,KAAKW,YAAYX,KAAKmB;QAC1C,CAAC,YAAY,EAACnB,KAAKG,kBAAiB;QACpC,sBAAsBH,KAAKG,gBAAgB;QAC3C,qBAAqBH,KAAKC;QAC1B,oBAAoBD,KAAKoB;;OAG3BJ,EAAA;MAAKC,OAAM;OACTD,EAAA;MACEC,OAAO;QACL,0BAA0B;;OAG3BjB,KAAKG,gBAAgB,SACpBa,EAAA;MAAMC,OAAM;OACTjB,KAAKK,iBAAiBgB,OAGzBL,EAAA;MACEC,OAAO;QACLK,eAAiBtB,KAAKG,gBAAgB;QACtC,yBACEH,KAAKG,gBAAgB;QACvB,4BAA4B;;OAG7BH,KAAKK,iBAAiBkB,YAG3BP,EAAA;MACEC,OAAO;QACLO,kBAAoB;QACpB,iCACExB,KAAKG,gBAAgB;;OAGxBsB,EAAOzB,KAAKkB,SAASlB,KAAK0B,eAE5B1B,KAAKG,gBAAgB,0BACpBa,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAKC,OAAM;UAEX"}
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { a as e, r as i, h as t, H as s, g as a } from "./p-49712340.js";
|
|
2
|
-
|
|
3
|
-
import { L as r } from "./p-311eedf3.js";
|
|
4
|
-
|
|
5
|
-
const mapTeamsToComboBoxItemModel = e => e.map((e => ({
|
|
6
|
-
value: e.id,
|
|
7
|
-
caption: e.name
|
|
8
|
-
})));
|
|
9
|
-
|
|
10
|
-
const n = ":host{display:grid;block-size:100%;inline-size:100%;align-items:center;justify-content:center;padding:var(--mer-spacing--xl)}.slide{display:grid;max-inline-size:1100px;grid-template-columns:1fr 550px;background-color:var(--mer-surface__elevation--01);border-radius:var(--mer-spacing--md);overflow:hidden;transition:var(--slide-fade-duration) opacity}.slide__illustration{overflow:hidden;max-block-size:700px}.slide__select-team{display:grid;block-size:100%;inline-size:100%;padding:var(--mer-spacing--3xl)}.slide__select-team-container{display:grid;gap:var(--mer-spacing--lg);max-inline-size:480px;place-self:center}.slide__select-team-header{display:grid;gap:var(--mer-spacing--lg)}.slide__select-team-title{font-size:var(--mer-font__size--xl);color:var(--mer-text__on-surface);letter-spacing:0.02em;font-weight:var(--mer-font__weight--semi-bold)}.slide__select-team-description{display:grid;color:var(--mer-text__complementary);gap:var(--mer-spacing--md);font-size:var(--mer-font__size--sm);font-weight:var(--mer-font__weight--light);line-height:var(--mer-line-height--spaced)}.info-message{font-weight:bold;color:var(--mer-text__on-surface)}.continue-button{padding-inline-start:var(--mer-spacing--3xl) !important;padding-inline-end:var(--mer-spacing--3xl) !important}";
|
|
11
|
-
|
|
12
|
-
var o = undefined && undefined.__classPrivateFieldGet || function(e, i, t, s) {
|
|
13
|
-
if (t === "a" && !s) throw new TypeError("Private accessor was defined without a getter");
|
|
14
|
-
if (typeof i === "function" ? e !== i || !s : !i.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
15
|
-
return t === "m" ? s : t === "a" ? s.call(e) : s ? s.value : i.get(e);
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
var l = undefined && undefined.__classPrivateFieldSet || function(e, i, t, s, a) {
|
|
19
|
-
if (s === "m") throw new TypeError("Private method is not writable");
|
|
20
|
-
if (s === "a" && !a) throw new TypeError("Private accessor was defined without a setter");
|
|
21
|
-
if (typeof i === "function" ? e !== i || !a : !i.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
22
|
-
return s === "a" ? a.call(e, t) : a ? a.value = t : i.set(e, t), t;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
var c, d, m, p;
|
|
26
|
-
|
|
27
|
-
const f = e(`./gx-ide-assets/welcome-page/images/copyrights-illustration.png`);
|
|
28
|
-
|
|
29
|
-
const g = e(`./gx-ide-assets/welcome-page/images/icon-next.svg`);
|
|
30
|
-
|
|
31
|
-
const h = [ "resets/box-sizing", "utils/typography", "components/combo-box", "components/button", "utils/form" ];
|
|
32
|
-
|
|
33
|
-
const u = class {
|
|
34
|
-
constructor(e) {
|
|
35
|
-
i(this, e);
|
|
36
|
-
/**
|
|
37
|
-
* The component hard-coded strings translations.
|
|
38
|
-
*/
|
|
39
|
-
// eslint-disable-next-line @stencil-community/own-props-must-be-private
|
|
40
|
-
c.set(this, void 0);
|
|
41
|
-
d.set(this, []);
|
|
42
|
-
m.set(this, void 0);
|
|
43
|
-
p.set(this, (async () => {
|
|
44
|
-
await this.continueCallback(o(this, m, "f").value);
|
|
45
|
-
}));
|
|
46
|
-
this.teams = undefined;
|
|
47
|
-
this.continueCallback = undefined;
|
|
48
|
-
}
|
|
49
|
-
async componentWillLoad() {
|
|
50
|
-
l(this, c, await r.getComponentStrings(this.el), "f");
|
|
51
|
-
l(this, d, mapTeamsToComboBoxItemModel(this.teams), "f");
|
|
52
|
-
}
|
|
53
|
-
render() {
|
|
54
|
-
return t(s, null, t("ch-theme", {
|
|
55
|
-
model: h
|
|
56
|
-
}), t("section", {
|
|
57
|
-
class: "slide"
|
|
58
|
-
}, t("div", {
|
|
59
|
-
class: "slide__illustration",
|
|
60
|
-
role: "img",
|
|
61
|
-
"aria-label": o(this, c, "f").illustrationAriaLabel
|
|
62
|
-
}, t("img", {
|
|
63
|
-
// base image (acts like a background)
|
|
64
|
-
src: f,
|
|
65
|
-
class: "slide__illustration",
|
|
66
|
-
alt: o(this, c, "f").illustrationFigureAriaLabel
|
|
67
|
-
})), t("section", {
|
|
68
|
-
class: "slide__select-team"
|
|
69
|
-
}, t("div", {
|
|
70
|
-
class: "slide__select-team-container"
|
|
71
|
-
}, t("header", {
|
|
72
|
-
class: "slide__select-team-header"
|
|
73
|
-
}, t("img", {
|
|
74
|
-
src: g,
|
|
75
|
-
alt: o(this, c, "f").illustrationAlternativeText
|
|
76
|
-
}), t("h2", {
|
|
77
|
-
class: "slide__select-team-title"
|
|
78
|
-
}, o(this, c, "f").title)), t("div", {
|
|
79
|
-
class: "slide__select-team-description"
|
|
80
|
-
}, t("p", null, t("span", {
|
|
81
|
-
class: "info-message"
|
|
82
|
-
}, o(this, c, "f").infoMessage))), t("div", {
|
|
83
|
-
class: "field-group"
|
|
84
|
-
}, t("div", {
|
|
85
|
-
class: "field field-block"
|
|
86
|
-
}, t("label", {
|
|
87
|
-
htmlFor: "teams"
|
|
88
|
-
}, o(this, c, "f").teams), t("ch-combo-box-render", {
|
|
89
|
-
id: "teams",
|
|
90
|
-
accessibleName: "Teams",
|
|
91
|
-
class: "combo-box",
|
|
92
|
-
model: o(this, d, "f"),
|
|
93
|
-
value: o(this, d, "f")[0].value,
|
|
94
|
-
ref: e => l(this, m, e, "f")
|
|
95
|
-
}))), t("div", null, t("button", {
|
|
96
|
-
class: "button-primary continue-button",
|
|
97
|
-
onClick: o(this, p, "f")
|
|
98
|
-
}, o(this, c, "f").continueButtonCaption))))));
|
|
99
|
-
}
|
|
100
|
-
static get assetsDirs() {
|
|
101
|
-
return [ "gx-ide-assets/select-user-team" ];
|
|
102
|
-
}
|
|
103
|
-
get el() {
|
|
104
|
-
return a(this);
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
c = new WeakMap, d = new WeakMap, m = new WeakMap, p = new WeakMap;
|
|
109
|
-
|
|
110
|
-
u.style = n;
|
|
111
|
-
|
|
112
|
-
export { u as gx_ide_select_user_team };
|
|
113
|
-
//# sourceMappingURL=p-b189e45d.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["mapTeamsToComboBoxItemModel","teams","map","team","value","id","caption","name","selectUserTeamCss","COPYRIGHTS_ILLUSTRATION","getAssetPath","ICON_NEXT","CSS_BUNDLES","GxIdeUiSplash","_GxIdeUiSplash_componentLocale","set","this","_GxIdeUiSplash_userTeamsModel","_GxIdeUiSplash_chSelectTeamEl","_GxIdeUiSplash_continueHandle","async","continueCallback","__classPrivateFieldGet","componentWillLoad","__classPrivateFieldSet","Locale","getComponentStrings","el","render","h","Host","model","class","role","illustrationAriaLabel","src","alt","illustrationFigureAriaLabel","illustrationAlternativeText","title","infoMessage","htmlFor","accessibleName","ref","onClick","continueButtonCaption"],"sources":["src/components/select-user-team/helpers.tsx","src/components/select-user-team/select-user-team.scss?tag=gx-ide-select-user-team&encapsulation=shadow","src/components/select-user-team/select-user-team.tsx"],"sourcesContent":["import { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { TeamData } from \"./select-user-team\";\n\nexport const mapTeamsToComboBoxItemModel = (\n teams: TeamData[]\n): ComboBoxItemModel[] => {\n return teams.map(team => {\n return {\n value: team.id,\n caption: team.name\n };\n });\n};\n",":host {\n display: grid;\n block-size: 100%;\n inline-size: 100%;\n align-items: center;\n justify-content: center;\n padding: var(--mer-spacing--xl);\n}\n\n.slide {\n display: grid;\n max-inline-size: 1100px;\n grid-template-columns: 1fr 550px;\n background-color: var(--mer-surface__elevation--01);\n border-radius: var(--mer-spacing--md);\n overflow: hidden;\n transition: var(--slide-fade-duration) opacity;\n\n &__illustration {\n overflow: hidden;\n max-block-size: 700px;\n }\n\n &__select-team {\n display: grid;\n block-size: 100%;\n inline-size: 100%;\n padding: var(--mer-spacing--3xl);\n }\n\n &__select-team-container {\n display: grid;\n gap: var(--mer-spacing--lg);\n max-inline-size: 480px;\n place-self: center;\n }\n\n &__select-team-header {\n display: grid;\n gap: var(--mer-spacing--lg);\n }\n\n &__select-team-title {\n font-size: var(--mer-font__size--xl);\n color: var(--mer-text__on-surface);\n letter-spacing: 0.02em;\n font-weight: var(--mer-font__weight--semi-bold);\n }\n\n &__select-team-description {\n display: grid;\n color: var(--mer-text__complementary);\n gap: var(--mer-spacing--md);\n font-size: var(--mer-font__size--sm);\n font-weight: var(--mer-font__weight--light);\n line-height: var(--mer-line-height--spaced);\n }\n}\n\n.info-message {\n font-weight: bold;\n color: var(--mer-text__on-surface);\n}\n.continue-button {\n padding-inline-start: var(--mer-spacing--3xl) !important;\n padding-inline-end: var(--mer-spacing--3xl) !important;\n}\n","// Stencil\nimport { Component, Host, h, Prop, Element, getAssetPath } from \"@stencil/core\";\n// Other Libraries\nimport { MercuryBundles } from \"@genexus/mercury\";\n// Custom Imports\nimport { Locale } from \"../../common/locale\";\nimport { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { mapTeamsToComboBoxItemModel } from \"./helpers\";\n\nconst COPYRIGHTS_ILLUSTRATION = getAssetPath(\n `./gx-ide-assets/welcome-page/images/copyrights-illustration.png`\n);\nconst ICON_NEXT = getAssetPath(\n `./gx-ide-assets/welcome-page/images/icon-next.svg`\n);\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/typography\",\n \"components/combo-box\",\n \"components/button\",\n \"utils/form\"\n];\n\n@Component({\n tag: \"gx-ide-select-user-team\",\n styleUrl: \"select-user-team.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/select-user-team\"]\n})\nexport class GxIdeUiSplash {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n #userTeamsModel: ComboBoxItemModel[] = [];\n #chSelectTeamEl: HTMLChComboBoxRenderElement;\n\n /**\n * Array that contain the user's teams\n */\n @Prop() readonly teams!: TeamData[];\n\n /**\n * Callback executed when the user click the 'continue' button\n */\n @Prop() readonly continueCallback!: (teamId: string) => Promise<void>;\n\n @Element() el: HTMLGxIdeSelectUserTeamElement;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#userTeamsModel = mapTeamsToComboBoxItemModel(this.teams);\n }\n\n #continueHandle = async () => {\n await this.continueCallback(this.#chSelectTeamEl.value);\n };\n\n render() {\n return (\n <Host>\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"slide\">\n <div\n class=\"slide__illustration\"\n role=\"img\"\n aria-label={this.#componentLocale.illustrationAriaLabel}\n >\n <img\n // base image (acts like a background)\n src={COPYRIGHTS_ILLUSTRATION}\n class=\"slide__illustration\"\n alt={this.#componentLocale.illustrationFigureAriaLabel}\n />\n </div>\n\n <section class=\"slide__select-team\">\n <div class=\"slide__select-team-container\">\n <header class=\"slide__select-team-header\">\n <img\n src={ICON_NEXT}\n alt={this.#componentLocale.illustrationAlternativeText}\n />\n <h2 class=\"slide__select-team-title\">\n {this.#componentLocale.title}\n </h2>\n </header>\n\n <div class=\"slide__select-team-description\">\n <p>\n <span class=\"info-message\">\n {this.#componentLocale.infoMessage}\n </span>\n </p>\n </div>\n\n <div class=\"field-group\">\n <div class=\"field field-block\">\n <label htmlFor=\"teams\">{this.#componentLocale.teams}</label>\n <ch-combo-box-render\n id=\"teams\"\n accessibleName=\"Teams\"\n class=\"combo-box\"\n model={this.#userTeamsModel}\n value={this.#userTeamsModel[0].value}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#chSelectTeamEl = el as HTMLChComboBoxRenderElement)\n }\n ></ch-combo-box-render>\n </div>\n </div>\n\n <div>\n <button\n class=\"button-primary continue-button\"\n onClick={this.#continueHandle}\n >\n {this.#componentLocale.continueButtonCaption}\n </button>\n </div>\n </div>\n </section>\n </section>\n </Host>\n );\n }\n}\n\nexport type TeamData = {\n id: string;\n name: string;\n};\n"],"mappings":";;;;AAGO,MAAMA,8BACXC,KAEOA,EAAMC,KAAIC,MACR;EACLC,OAAOD,EAAKE;EACZC,SAASH,EAAKI;;;ACTpB,MAAMC,IAAoB;;;;;;;;;;;;;;;;;ACS1B,MAAMC,IAA0BC,EAC9B;;AAEF,MAAMC,IAAYD,EAChB;;AAGF,MAAME,IAA8B,EAClC,qBACA,oBACA,wBACA,qBACA;;MASWC,IAAa;;;;;;;QAKxBC,EAAAC,IAAAC,WAAA;IACAC,EAAAF,IAAAC,MAAuC;IACvCE,EAAAH,IAAAC,WAAA;IAmBAG,EAAAJ,IAAAC,OAAkBI;YACVJ,KAAKK,iBAAiBC,EAAAN,MAAIE,GAAA,KAAiBd;AAAM;;;;EANzD,uBAAMmB;IACJC,EAAAR,MAAIF,SAA0BW,EAAOC,oBAAoBV,KAAKW,KAAG;IACjEH,EAAAR,MAAIC,GAAmBjB,4BAA4BgB,KAAKf,QAAM;;EAOhE,MAAA2B;IACE,OACEC,EAACC,GAAI,MACHD,EAAA;MAAUE,OAAOnB;QACjBiB,EAAA;MAASG,OAAM;OACbH,EAAA;MACEG,OAAM;MACNC,MAAK;MAAK,cACEX,EAAAN,MAAIF,GAAA,KAAkBoB;OAElCL,EAAA;;MAEEM,KAAK1B;MACLuB,OAAM;MACNI,KAAKd,EAAAN,MAAIF,GAAA,KAAkBuB;SAI/BR,EAAA;MAASG,OAAM;OACbH,EAAA;MAAKG,OAAM;OACTH,EAAA;MAAQG,OAAM;OACZH,EAAA;MACEM,KAAKxB;MACLyB,KAAKd,EAAAN,MAAIF,GAAA,KAAkBwB;QAE7BT,EAAA;MAAIG,OAAM;OACPV,EAAAN,MAAIF,GAAA,KAAkByB,SAI3BV,EAAA;MAAKG,OAAM;OACTH,EAAA,WACEA,EAAA;MAAMG,OAAM;OACTV,EAAAN,MAAIF,GAAA,KAAkB0B,gBAK7BX,EAAA;MAAKG,OAAM;OACTH,EAAA;MAAKG,OAAM;OACTH,EAAA;MAAOY,SAAQ;OAASnB,EAAAN,MAAIF,GAAA,KAAkBb,QAC9C4B,EAAA;MACExB,IAAG;MACHqC,gBAAe;MACfV,OAAM;MACND,OAAOT,EAAAN,MAAIC,GAAA;MACXb,OAAOkB,EAAAN,MAAIC,GAAA,KAAiB,GAAGb;MAC/BuC,KAAMhB,KACHH,EAAAR,MAAIE,GAAmBS,GAAiC;UAMjEE,EAAA,aACEA,EAAA;MACEG,OAAM;MACNY,SAAStB,EAAAN,MAAIG,GAAA;OAEZG,EAAAN,MAAIF,GAAA,KAAkB+B"}
|