@genexus/genexus-ide-ui 1.0.44 → 1.0.46

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 (115) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +10 -11
  3. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js.map +1 -1
  4. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +3 -1
  5. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-loader.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-loader.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-select-user-team.cjs.entry.js +38 -11
  9. package/dist/cjs/gx-ide-select-user-team.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js +75 -13
  11. package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +244 -0
  13. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js.map +1 -0
  14. package/dist/cjs/loader.cjs.js +1 -1
  15. package/dist/collection/collection-manifest.json +1 -0
  16. package/dist/collection/components/_helpers/entity-selector/entity-selector.js +4 -2
  17. package/dist/collection/components/_helpers/entity-selector/entity-selector.js.map +1 -1
  18. package/dist/collection/components/_helpers/ide-loader/ide-loader.css +1 -1
  19. package/dist/collection/components/current-user-info/current-user-info.css +6 -1
  20. package/dist/collection/components/current-user-info/current-user-info.js +32 -11
  21. package/dist/collection/components/current-user-info/current-user-info.js.map +1 -1
  22. package/dist/collection/components/current-user-info/gx-ide-assets/current-user-info/langs/current-user-info.lang.en.json +2 -1
  23. package/dist/collection/components/current-user-info/gx-ide-assets/current-user-info/langs/current-user-info.lang.ja.json +2 -1
  24. package/dist/collection/components/current-user-info/gx-ide-assets/current-user-info/langs/current-user-info.lang.zh.json +2 -1
  25. package/dist/collection/components/select-user-team/gx-ide-assets/select-user-team/langs/select-user-team.lang.en.json +5 -1
  26. package/dist/collection/components/select-user-team/gx-ide-assets/select-user-team/langs/select-user-team.lang.ja.json +5 -1
  27. package/dist/collection/components/select-user-team/gx-ide-assets/select-user-team/langs/select-user-team.lang.zh.json +5 -1
  28. package/dist/collection/components/select-user-team/helpers.js +1 -1
  29. package/dist/collection/components/select-user-team/helpers.js.map +1 -1
  30. package/dist/collection/components/select-user-team/select-user-team.css +8 -0
  31. package/dist/collection/components/select-user-team/select-user-team.js +42 -9
  32. package/dist/collection/components/select-user-team/select-user-team.js.map +1 -1
  33. package/dist/collection/components/sign-in-team/gx-ide-assets/sign-in-team/langs/sign-in-team.lang.en.json +15 -5
  34. package/dist/collection/components/sign-in-team/gx-ide-assets/sign-in-team/langs/sign-in-team.lang.ja.json +13 -3
  35. package/dist/collection/components/sign-in-team/gx-ide-assets/sign-in-team/langs/sign-in-team.lang.zh.json +13 -3
  36. package/dist/collection/components/sign-in-team/sign-in-team.css +9 -4
  37. package/dist/collection/components/sign-in-team/sign-in-team.js +116 -15
  38. package/dist/collection/components/sign-in-team/sign-in-team.js.map +1 -1
  39. package/dist/collection/components/ww-attributes/gx-ide-assets/ww-attributes/langs/ww-attributes.lang.en.json +30 -0
  40. package/dist/collection/components/ww-attributes/gx-ide-assets/ww-attributes/langs/ww-attributes.lang.ja.json +30 -0
  41. package/dist/collection/components/ww-attributes/gx-ide-assets/ww-attributes/langs/ww-attributes.lang.zh.json +30 -0
  42. package/dist/collection/components/ww-attributes/helpers.js +11 -0
  43. package/dist/collection/components/ww-attributes/helpers.js.map +1 -0
  44. package/dist/collection/components/ww-attributes/ww-attributes.css +70 -0
  45. package/dist/collection/components/ww-attributes/ww-attributes.js +468 -0
  46. package/dist/collection/components/ww-attributes/ww-attributes.js.map +1 -0
  47. package/dist/collection/testing/locale.e2e.js +1 -0
  48. package/dist/collection/testing/locale.e2e.js.map +1 -1
  49. package/dist/components/entity-selector.js +3 -1
  50. package/dist/components/entity-selector.js.map +1 -1
  51. package/dist/components/gx-ide-current-user-info.js +12 -12
  52. package/dist/components/gx-ide-current-user-info.js.map +1 -1
  53. package/dist/components/gx-ide-select-user-team.js +48 -13
  54. package/dist/components/gx-ide-select-user-team.js.map +1 -1
  55. package/dist/components/gx-ide-sign-in-team.js +86 -15
  56. package/dist/components/gx-ide-sign-in-team.js.map +1 -1
  57. package/dist/components/gx-ide-ww-attributes.d.ts +11 -0
  58. package/dist/components/gx-ide-ww-attributes.js +294 -0
  59. package/dist/components/gx-ide-ww-attributes.js.map +1 -0
  60. package/dist/components/ide-loader.js +1 -1
  61. package/dist/components/ide-loader.js.map +1 -1
  62. package/dist/esm/genexus-ide-ui.js +1 -1
  63. package/dist/esm/gx-ide-current-user-info.entry.js +10 -11
  64. package/dist/esm/gx-ide-current-user-info.entry.js.map +1 -1
  65. package/dist/esm/gx-ide-entity-selector.entry.js +3 -1
  66. package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
  67. package/dist/esm/gx-ide-loader.entry.js +1 -1
  68. package/dist/esm/gx-ide-loader.entry.js.map +1 -1
  69. package/dist/esm/gx-ide-select-user-team.entry.js +38 -11
  70. package/dist/esm/gx-ide-select-user-team.entry.js.map +1 -1
  71. package/dist/esm/gx-ide-sign-in-team.entry.js +75 -13
  72. package/dist/esm/gx-ide-sign-in-team.entry.js.map +1 -1
  73. package/dist/esm/gx-ide-ww-attributes.entry.js +240 -0
  74. package/dist/esm/gx-ide-ww-attributes.entry.js.map +1 -0
  75. package/dist/esm/loader.js +1 -1
  76. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  77. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  78. package/dist/genexus-ide-ui/gx-ide-assets/current-user-info/langs/current-user-info.lang.en.json +2 -1
  79. package/dist/genexus-ide-ui/gx-ide-assets/current-user-info/langs/current-user-info.lang.ja.json +2 -1
  80. package/dist/genexus-ide-ui/gx-ide-assets/current-user-info/langs/current-user-info.lang.zh.json +2 -1
  81. package/dist/genexus-ide-ui/gx-ide-assets/select-user-team/langs/select-user-team.lang.en.json +5 -1
  82. package/dist/genexus-ide-ui/gx-ide-assets/select-user-team/langs/select-user-team.lang.ja.json +5 -1
  83. package/dist/genexus-ide-ui/gx-ide-assets/select-user-team/langs/select-user-team.lang.zh.json +5 -1
  84. package/dist/genexus-ide-ui/gx-ide-assets/sign-in-team/langs/sign-in-team.lang.en.json +15 -5
  85. package/dist/genexus-ide-ui/gx-ide-assets/sign-in-team/langs/sign-in-team.lang.ja.json +13 -3
  86. package/dist/genexus-ide-ui/gx-ide-assets/sign-in-team/langs/sign-in-team.lang.zh.json +13 -3
  87. package/dist/genexus-ide-ui/gx-ide-assets/ww-attributes/langs/ww-attributes.lang.en.json +30 -0
  88. package/dist/genexus-ide-ui/gx-ide-assets/ww-attributes/langs/ww-attributes.lang.ja.json +30 -0
  89. package/dist/genexus-ide-ui/gx-ide-assets/ww-attributes/langs/ww-attributes.lang.zh.json +30 -0
  90. package/dist/genexus-ide-ui/{p-04d7f44c.entry.js → p-1693a2d1.entry.js} +4 -2
  91. package/dist/genexus-ide-ui/p-1693a2d1.entry.js.map +1 -0
  92. package/dist/genexus-ide-ui/p-5619120d.entry.js +341 -0
  93. package/dist/genexus-ide-ui/p-5619120d.entry.js.map +1 -0
  94. package/dist/genexus-ide-ui/{p-b12a5426.entry.js → p-a27c088d.entry.js} +45 -41
  95. package/dist/genexus-ide-ui/p-a27c088d.entry.js.map +1 -0
  96. package/dist/genexus-ide-ui/{p-c9b0fd13.entry.js → p-ab653cc2.entry.js} +44 -18
  97. package/dist/genexus-ide-ui/p-ab653cc2.entry.js.map +1 -0
  98. package/dist/genexus-ide-ui/p-b04a0ae3.entry.js +236 -0
  99. package/dist/genexus-ide-ui/p-b04a0ae3.entry.js.map +1 -0
  100. package/dist/genexus-ide-ui/{p-6db2056c.entry.js → p-efebc74b.entry.js} +7 -7
  101. package/dist/genexus-ide-ui/p-efebc74b.entry.js.map +1 -0
  102. package/dist/types/components/_helpers/entity-selector/entity-selector.d.ts +1 -1
  103. package/dist/types/components/current-user-info/current-user-info.d.ts +6 -2
  104. package/dist/types/components/select-user-team/select-user-team.d.ts +9 -0
  105. package/dist/types/components/sign-in-team/sign-in-team.d.ts +13 -1
  106. package/dist/types/components/ww-attributes/helpers.d.ts +3 -0
  107. package/dist/types/components/ww-attributes/ww-attributes.d.ts +95 -0
  108. package/dist/types/components.d.ts +128 -17
  109. package/package.json +1 -1
  110. package/dist/genexus-ide-ui/p-04d7f44c.entry.js.map +0 -1
  111. package/dist/genexus-ide-ui/p-0b33d2f9.entry.js +0 -163
  112. package/dist/genexus-ide-ui/p-0b33d2f9.entry.js.map +0 -1
  113. package/dist/genexus-ide-ui/p-6db2056c.entry.js.map +0 -1
  114. package/dist/genexus-ide-ui/p-b12a5426.entry.js.map +0 -1
  115. package/dist/genexus-ide-ui/p-c9b0fd13.entry.js.map +0 -1
@@ -0,0 +1,95 @@
1
+ import { ContextMenuInfo, EntityData, GxOption } from "../../common/types";
2
+ export declare class GxIdeWWAttributes {
3
+ #private;
4
+ el: HTMLGxIdeWwAttributesElement;
5
+ /**
6
+ * Attributes rendered in the table
7
+ */
8
+ attributes: AttributeData[];
9
+ /**
10
+ * Selected attributes in the table of attributes
11
+ */
12
+ selectedAttributesIds: string[];
13
+ /**
14
+ * Show or hide advanced filters
15
+ */
16
+ filterMore: boolean;
17
+ /**
18
+ * The attribute filter name
19
+ */
20
+ name: string;
21
+ /**
22
+ * True if loadCallback hasn't been resolved yet
23
+ */
24
+ loading: boolean;
25
+ /**
26
+ * The attribute object value
27
+ */
28
+ object: EntityData;
29
+ /**
30
+ * The attribute filter type value
31
+ */
32
+ type: string;
33
+ /**
34
+ * Callback invoked when user right-clicks on the grid
35
+ */
36
+ readonly contextMenuCallback: ContextMenuCallback;
37
+ /**
38
+ * Callback invoked when user deletes an object
39
+ */
40
+ readonly deleteSelectionCallback: DeleteSelectionCallback;
41
+ /**
42
+ * Callback invoked when user filters the objects
43
+ */
44
+ readonly loadCallback: LoadCallback;
45
+ /**
46
+ * Callback invoked when user executes filter action
47
+ */
48
+ readonly objectActionCallback: ObjectActionCallback;
49
+ /**
50
+ * Objects rendered in the object selector
51
+ */
52
+ readonly objects: GxOption[];
53
+ /**
54
+ * Callback invoked when user opens the selection dialog
55
+ */
56
+ readonly openSelectionCallback: OpenSelectionCallback;
57
+ /**
58
+ * Callback invoked when user selects or deselects an object
59
+ */
60
+ readonly selectionChangeCallback: SelectionChangeCallback;
61
+ /**
62
+ * Types rendered in the filter type selector
63
+ */
64
+ readonly types: GxOption[];
65
+ componentWillLoad(): Promise<void>;
66
+ componentDidLoad(): void;
67
+ keyDownHandler(eventInfo: KeyboardEvent): void;
68
+ /**
69
+ * Reloads the view, refreshing the filters and attributes table.
70
+ */
71
+ reload(): Promise<void>;
72
+ /**
73
+ * Validate necessary data input
74
+ */
75
+ validate(): Promise<boolean>;
76
+ render(): void;
77
+ }
78
+ export type ContextMenuCallback = (contextMenuInfo: ContextMenuInfo) => Promise<void>;
79
+ export type DeleteSelectionCallback = (ids: string[]) => Promise<void>;
80
+ export type LoadCallback = (filters: AttributeFiltersData) => Promise<AttributeData[]>;
81
+ export type ObjectActionCallback = () => Promise<EntityData | undefined>;
82
+ export type OpenSelectionCallback = (ids: string[]) => Promise<void>;
83
+ export type SelectionChangeCallback = (ids: string[]) => Promise<void>;
84
+ export interface AttributeData {
85
+ id: string;
86
+ icon: string;
87
+ name: string;
88
+ type: string;
89
+ description: string;
90
+ }
91
+ export interface AttributeFiltersData {
92
+ name?: string;
93
+ type?: string;
94
+ object?: string;
95
+ }
@@ -58,7 +58,8 @@ import { cancelCallbackFn, confirmCallbackFn } from "./components/team-dev/updat
58
58
  import { TitleAlignment as TitleAlignment1, TitleType as TitleType1 } from "./components/_helpers/title/title";
59
59
  import { CloseCallback as CloseCallback1, SlideInfo, TransitionType } from "./components/welcome-page/welcome-page";
60
60
  import { WFConfigData } from "./components/wf-settings/wf-settings";
61
- import { ContextMenuCallback, DeleteSelectionCallback, LoadCallback as LoadCallback5, LoadImageItemsCallback, NewObjectCallback as NewObjectCallback1, OpenSelectionCallback as OpenSelectionCallback1, SelectionObjectCallback, SelectModuleCallback as SelectModuleCallback3 } from "./components/ww-images/ww-images";
61
+ import { ContextMenuCallback, DeleteSelectionCallback, LoadCallback as LoadCallback5, ObjectActionCallback, OpenSelectionCallback as OpenSelectionCallback1, SelectionChangeCallback } from "./components/ww-attributes/ww-attributes";
62
+ import { ContextMenuCallback as ContextMenuCallback1, DeleteSelectionCallback as DeleteSelectionCallback1, LoadCallback as LoadCallback6, LoadImageItemsCallback, NewObjectCallback as NewObjectCallback1, OpenSelectionCallback as OpenSelectionCallback2, SelectionObjectCallback, SelectModuleCallback as SelectModuleCallback3 } from "./components/ww-images/ww-images";
62
63
  export { AiStatus, Message, UserMessageCallback } from "./components/ai-assistant/ai-assistant";
63
64
  export { MessageType } from "./components/ai-assistant/ai-assistant";
64
65
  export { Translations } from "./components/ai-assistant/ai-message";
@@ -112,7 +113,8 @@ export { cancelCallbackFn, confirmCallbackFn } from "./components/team-dev/updat
112
113
  export { TitleAlignment as TitleAlignment1, TitleType as TitleType1 } from "./components/_helpers/title/title";
113
114
  export { CloseCallback as CloseCallback1, SlideInfo, TransitionType } from "./components/welcome-page/welcome-page";
114
115
  export { WFConfigData } from "./components/wf-settings/wf-settings";
115
- export { ContextMenuCallback, DeleteSelectionCallback, LoadCallback as LoadCallback5, LoadImageItemsCallback, NewObjectCallback as NewObjectCallback1, OpenSelectionCallback as OpenSelectionCallback1, SelectionObjectCallback, SelectModuleCallback as SelectModuleCallback3 } from "./components/ww-images/ww-images";
116
+ export { ContextMenuCallback, DeleteSelectionCallback, LoadCallback as LoadCallback5, ObjectActionCallback, OpenSelectionCallback as OpenSelectionCallback1, SelectionChangeCallback } from "./components/ww-attributes/ww-attributes";
117
+ export { ContextMenuCallback as ContextMenuCallback1, DeleteSelectionCallback as DeleteSelectionCallback1, LoadCallback as LoadCallback6, LoadImageItemsCallback, NewObjectCallback as NewObjectCallback1, OpenSelectionCallback as OpenSelectionCallback2, SelectionObjectCallback, SelectModuleCallback as SelectModuleCallback3 } from "./components/ww-images/ww-images";
116
118
  export namespace Components {
117
119
  interface GxIdeAiAssistant {
118
120
  /**
@@ -562,13 +564,17 @@ export namespace Components {
562
564
  */
563
565
  "myAccountCallback": () => Promise<void>;
564
566
  /**
565
- * Callback executed when the user click "Privacy Policy & Terms of use" link
567
+ * Callback executed when the user clicks on the "privacy policy" link
566
568
  */
567
- "showTermsCallback": () => Promise<void>;
569
+ "privacyCallback": () => Promise<void>;
568
570
  /**
569
571
  * Callback executed when the user click "Sign Out" link
570
572
  */
571
573
  "signOutCallback": () => Promise<void>;
574
+ /**
575
+ * Callback executed when the user clicks on the "term and conditions" link
576
+ */
577
+ "termsCallback": () => Promise<void>;
572
578
  /**
573
579
  * User data
574
580
  */
@@ -858,7 +864,7 @@ export namespace Components {
858
864
  /**
859
865
  * Callback invoked when the action button is pressed. Returns the new value.
860
866
  */
861
- "selectEntityCallback": () => Promise<EntityData>;
867
+ "selectEntityCallback": () => Promise<EntityData> | null;
862
868
  /**
863
869
  * Value currently assigned.
864
870
  */
@@ -1512,6 +1518,10 @@ export namespace Components {
1512
1518
  * Callback executed when the user clicks the 'Continue' button
1513
1519
  */
1514
1520
  "continueCallback": (teamId: string) => Promise<void>;
1521
+ /**
1522
+ * Callback executed when the user clicks on the "privacy policy" link
1523
+ */
1524
+ "privacyCallback": () => Promise<void>;
1515
1525
  /**
1516
1526
  * Callback executed when the user click the "Sign In" button
1517
1527
  */
@@ -1524,6 +1534,10 @@ export namespace Components {
1524
1534
  * Callback executed when the user clicks on the "term and conditions" link
1525
1535
  */
1526
1536
  "termsCallback": () => Promise<void>;
1537
+ /**
1538
+ * When true, it will diplay checkboxes for the user to confirm terms and conditions
1539
+ */
1540
+ "termsConfirmationRequired": boolean;
1527
1541
  }
1528
1542
  interface GxIdeSplash {
1529
1543
  /**
@@ -1869,6 +1883,48 @@ export namespace Components {
1869
1883
  */
1870
1884
  "saveCallback": (config: WFConfigData) => Promise<void>;
1871
1885
  }
1886
+ interface GxIdeWwAttributes {
1887
+ /**
1888
+ * Callback invoked when user right-clicks on the grid
1889
+ */
1890
+ "contextMenuCallback": ContextMenuCallback;
1891
+ /**
1892
+ * Callback invoked when user deletes an object
1893
+ */
1894
+ "deleteSelectionCallback": DeleteSelectionCallback;
1895
+ /**
1896
+ * Callback invoked when user filters the objects
1897
+ */
1898
+ "loadCallback": LoadCallback5;
1899
+ /**
1900
+ * Callback invoked when user executes filter action
1901
+ */
1902
+ "objectActionCallback": ObjectActionCallback;
1903
+ /**
1904
+ * Objects rendered in the object selector
1905
+ */
1906
+ "objects": GxOption[];
1907
+ /**
1908
+ * Callback invoked when user opens the selection dialog
1909
+ */
1910
+ "openSelectionCallback": OpenSelectionCallback1;
1911
+ /**
1912
+ * Reloads the view, refreshing the filters and attributes table.
1913
+ */
1914
+ "reload": () => Promise<void>;
1915
+ /**
1916
+ * Callback invoked when user selects or deselects an object
1917
+ */
1918
+ "selectionChangeCallback": SelectionChangeCallback;
1919
+ /**
1920
+ * Types rendered in the filter type selector
1921
+ */
1922
+ "types": GxOption[];
1923
+ /**
1924
+ * Validate necessary data input
1925
+ */
1926
+ "validate": () => Promise<boolean>;
1927
+ }
1872
1928
  interface GxIdeWwImages {
1873
1929
  /**
1874
1930
  * The categories render in the filter category selector
@@ -1877,7 +1933,7 @@ export namespace Components {
1877
1933
  /**
1878
1934
  * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.
1879
1935
  */
1880
- "contextMenuCallback": ContextMenuCallback;
1936
+ "contextMenuCallback": ContextMenuCallback1;
1881
1937
  /**
1882
1938
  * The default value for the 'categories' filter
1883
1939
  */
@@ -1893,7 +1949,7 @@ export namespace Components {
1893
1949
  /**
1894
1950
  * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.
1895
1951
  */
1896
- "deleteSelectionCallback": DeleteSelectionCallback;
1952
+ "deleteSelectionCallback": DeleteSelectionCallback1;
1897
1953
  /**
1898
1954
  * The densities render in the filter density selector
1899
1955
  */
@@ -1917,7 +1973,7 @@ export namespace Components {
1917
1973
  /**
1918
1974
  * This is a function provided by the developer that return a list of images to populate the table of images.
1919
1975
  */
1920
- "loadCallback": LoadCallback5;
1976
+ "loadCallback": LoadCallback6;
1921
1977
  /**
1922
1978
  * This is a function provided by the developer that return a list of items of the image selected.
1923
1979
  */
@@ -1929,7 +1985,7 @@ export namespace Components {
1929
1985
  /**
1930
1986
  * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.
1931
1987
  */
1932
- "openSelectionCallback": OpenSelectionCallback1;
1988
+ "openSelectionCallback": OpenSelectionCallback2;
1933
1989
  /**
1934
1990
  * This method reload the view, refreshing the filters and the table of images.
1935
1991
  */
@@ -2765,6 +2821,12 @@ declare global {
2765
2821
  prototype: HTMLGxIdeWfSettingsElement;
2766
2822
  new (): HTMLGxIdeWfSettingsElement;
2767
2823
  };
2824
+ interface HTMLGxIdeWwAttributesElement extends Components.GxIdeWwAttributes, HTMLStencilElement {
2825
+ }
2826
+ var HTMLGxIdeWwAttributesElement: {
2827
+ prototype: HTMLGxIdeWwAttributesElement;
2828
+ new (): HTMLGxIdeWwAttributesElement;
2829
+ };
2768
2830
  interface HTMLGxIdeWwImagesElementEventMap {
2769
2831
  "componentDidLoadEvent": boolean;
2770
2832
  "componentDidRenderFirstTime": string;
@@ -2840,6 +2902,7 @@ declare global {
2840
2902
  "gx-ide-top-bar": HTMLGxIdeTopBarElement;
2841
2903
  "gx-ide-welcome-page": HTMLGxIdeWelcomePageElement;
2842
2904
  "gx-ide-wf-settings": HTMLGxIdeWfSettingsElement;
2905
+ "gx-ide-ww-attributes": HTMLGxIdeWwAttributesElement;
2843
2906
  "gx-ide-ww-images": HTMLGxIdeWwImagesElement;
2844
2907
  }
2845
2908
  }
@@ -3324,13 +3387,17 @@ declare namespace LocalJSX {
3324
3387
  */
3325
3388
  "myAccountCallback": () => Promise<void>;
3326
3389
  /**
3327
- * Callback executed when the user click "Privacy Policy & Terms of use" link
3390
+ * Callback executed when the user clicks on the "privacy policy" link
3328
3391
  */
3329
- "showTermsCallback": () => Promise<void>;
3392
+ "privacyCallback"?: () => Promise<void>;
3330
3393
  /**
3331
3394
  * Callback executed when the user click "Sign Out" link
3332
3395
  */
3333
3396
  "signOutCallback": () => Promise<void>;
3397
+ /**
3398
+ * Callback executed when the user clicks on the "term and conditions" link
3399
+ */
3400
+ "termsCallback"?: () => Promise<void>;
3334
3401
  /**
3335
3402
  * User data
3336
3403
  */
@@ -3624,7 +3691,7 @@ declare namespace LocalJSX {
3624
3691
  /**
3625
3692
  * Callback invoked when the action button is pressed. Returns the new value.
3626
3693
  */
3627
- "selectEntityCallback": () => Promise<EntityData>;
3694
+ "selectEntityCallback": () => Promise<EntityData> | null;
3628
3695
  /**
3629
3696
  * Value currently assigned.
3630
3697
  */
@@ -4298,10 +4365,14 @@ declare namespace LocalJSX {
4298
4365
  * Callback executed when the user clicks the 'Continue' button
4299
4366
  */
4300
4367
  "continueCallback": (teamId: string) => Promise<void>;
4368
+ /**
4369
+ * Callback executed when the user clicks on the "privacy policy" link
4370
+ */
4371
+ "privacyCallback"?: () => Promise<void>;
4301
4372
  /**
4302
4373
  * Callback executed when the user click the "Sign In" button
4303
4374
  */
4304
- "signInCallback"?: () => Promise<void>;
4375
+ "signInCallback": () => Promise<void>;
4305
4376
  /**
4306
4377
  * Array that contains the user's teams
4307
4378
  */
@@ -4310,6 +4381,10 @@ declare namespace LocalJSX {
4310
4381
  * Callback executed when the user clicks on the "term and conditions" link
4311
4382
  */
4312
4383
  "termsCallback"?: () => Promise<void>;
4384
+ /**
4385
+ * When true, it will diplay checkboxes for the user to confirm terms and conditions
4386
+ */
4387
+ "termsConfirmationRequired"?: boolean;
4313
4388
  }
4314
4389
  interface GxIdeSplash {
4315
4390
  /**
@@ -4691,6 +4766,40 @@ declare namespace LocalJSX {
4691
4766
  */
4692
4767
  "saveCallback"?: (config: WFConfigData) => Promise<void>;
4693
4768
  }
4769
+ interface GxIdeWwAttributes {
4770
+ /**
4771
+ * Callback invoked when user right-clicks on the grid
4772
+ */
4773
+ "contextMenuCallback": ContextMenuCallback;
4774
+ /**
4775
+ * Callback invoked when user deletes an object
4776
+ */
4777
+ "deleteSelectionCallback": DeleteSelectionCallback;
4778
+ /**
4779
+ * Callback invoked when user filters the objects
4780
+ */
4781
+ "loadCallback": LoadCallback5;
4782
+ /**
4783
+ * Callback invoked when user executes filter action
4784
+ */
4785
+ "objectActionCallback": ObjectActionCallback;
4786
+ /**
4787
+ * Objects rendered in the object selector
4788
+ */
4789
+ "objects": GxOption[];
4790
+ /**
4791
+ * Callback invoked when user opens the selection dialog
4792
+ */
4793
+ "openSelectionCallback": OpenSelectionCallback1;
4794
+ /**
4795
+ * Callback invoked when user selects or deselects an object
4796
+ */
4797
+ "selectionChangeCallback": SelectionChangeCallback;
4798
+ /**
4799
+ * Types rendered in the filter type selector
4800
+ */
4801
+ "types": GxOption[];
4802
+ }
4694
4803
  interface GxIdeWwImages {
4695
4804
  /**
4696
4805
  * The categories render in the filter category selector
@@ -4699,7 +4808,7 @@ declare namespace LocalJSX {
4699
4808
  /**
4700
4809
  * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.
4701
4810
  */
4702
- "contextMenuCallback": ContextMenuCallback;
4811
+ "contextMenuCallback": ContextMenuCallback1;
4703
4812
  /**
4704
4813
  * The default value for the 'categories' filter
4705
4814
  */
@@ -4715,7 +4824,7 @@ declare namespace LocalJSX {
4715
4824
  /**
4716
4825
  * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.
4717
4826
  */
4718
- "deleteSelectionCallback": DeleteSelectionCallback;
4827
+ "deleteSelectionCallback": DeleteSelectionCallback1;
4719
4828
  /**
4720
4829
  * The densities render in the filter density selector
4721
4830
  */
@@ -4739,7 +4848,7 @@ declare namespace LocalJSX {
4739
4848
  /**
4740
4849
  * This is a function provided by the developer that return a list of images to populate the table of images.
4741
4850
  */
4742
- "loadCallback": LoadCallback5;
4851
+ "loadCallback": LoadCallback6;
4743
4852
  /**
4744
4853
  * This is a function provided by the developer that return a list of items of the image selected.
4745
4854
  */
@@ -4759,7 +4868,7 @@ declare namespace LocalJSX {
4759
4868
  /**
4760
4869
  * This is a function provided by the developer for expanded the data of images that is double-clicked or entered.
4761
4870
  */
4762
- "openSelectionCallback": OpenSelectionCallback1;
4871
+ "openSelectionCallback": OpenSelectionCallback2;
4763
4872
  /**
4764
4873
  * Displays a secondary filter, used to filter over the filtered images
4765
4874
  */
@@ -4842,6 +4951,7 @@ declare namespace LocalJSX {
4842
4951
  "gx-ide-top-bar": GxIdeTopBar;
4843
4952
  "gx-ide-welcome-page": GxIdeWelcomePage;
4844
4953
  "gx-ide-wf-settings": GxIdeWfSettings;
4954
+ "gx-ide-ww-attributes": GxIdeWwAttributes;
4845
4955
  "gx-ide-ww-images": GxIdeWwImages;
4846
4956
  }
4847
4957
  }
@@ -4905,6 +5015,7 @@ declare module "@stencil/core" {
4905
5015
  "gx-ide-top-bar": LocalJSX.GxIdeTopBar & JSXBase.HTMLAttributes<HTMLGxIdeTopBarElement>;
4906
5016
  "gx-ide-welcome-page": LocalJSX.GxIdeWelcomePage & JSXBase.HTMLAttributes<HTMLGxIdeWelcomePageElement>;
4907
5017
  "gx-ide-wf-settings": LocalJSX.GxIdeWfSettings & JSXBase.HTMLAttributes<HTMLGxIdeWfSettingsElement>;
5018
+ "gx-ide-ww-attributes": LocalJSX.GxIdeWwAttributes & JSXBase.HTMLAttributes<HTMLGxIdeWwAttributesElement>;
4908
5019
  "gx-ide-ww-images": LocalJSX.GxIdeWwImages & JSXBase.HTMLAttributes<HTMLGxIdeWwImagesElement>;
4909
5020
  }
4910
5021
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genexus/genexus-ide-ui",
3
3
  "license": "Apache-2.0",
4
- "version": "1.0.44",
4
+ "version": "1.0.46",
5
5
  "description": "GeneXus IDE UI components",
6
6
  "main": "dist/index.cjs.js",
7
7
  "module": "dist/index.js",
@@ -1 +0,0 @@
1
- {"version":3,"names":["entitySelectorCss","CSS_BUNDLES","SELECT_DEFAULT_ICON","getIconPath","category","name","colorType","CLEAR_ICON","GxIdeEntitySelector","_GxIdeEntitySelector_componentLocale","set","this","_GxIdeEntitySelector_btnClearClickHandler","value","defaultValue","iconSrc","_a","_GxIdeEntitySelector_btnSelectClickHandler","selectEntityCallback","then","result","_GxIdeEntitySelector_buttonFocusHandler","e","type","buttonHasFocus","_GxIdeEntitySelector_renderControl","h","part","class","accessibleName","labelPosition","__classPrivateFieldGet","entitySelectorInputAccessibleName","disabled","entitySelectorNameAttribute","startImgSrc","readonly","_b","id","clearButtonLabel","title","onClick","onFocus","undefined","onBlur","src","selectButtonLabel","_GxIdeEntitySelector_updateIconSrc","valueChangedHandler","valueChanged","emit","call","componentWillLoad","__classPrivateFieldSet","Locale","getComponentStrings","el","connectedCallback","render","Host","model","field","htmlFor","labelCaption"],"sources":["src/components/_helpers/entity-selector/entity-selector.scss?tag=gx-ide-entity-selector&encapsulation=shadow","src/components/_helpers/entity-selector/entity-selector.tsx"],"sourcesContent":["/*wrapper*/\n.wrapper {\n display: grid;\n grid-template-columns: 1fr max-content max-content;\n gap: var(--mer-spacing--xs);\n border-radius: var(--control__border-radius);\n border: var(--control__border-width) var(--control__border-style)\n var(--control__border-color);\n padding: var(--control__padding-block) var(--control__padding-inline);\n\n &:hover {\n --control__border-color: var(--control__border-color--hover);\n }\n &:focus {\n }\n}\n/*input*/\n.input {\n --control__padding-block: 0;\n --control__padding-inline: 0;\n // Remove control border. We want to simulate a input that includes two buttons at the end.\n --control__border-width: 0;\n --focus__outline-width: 0;\n}\n:host(:focus-within) {\n .wrapper {\n --control__border-color: var(--focus__outline-color);\n }\n}\n:host(.entity-selector--button-has-focus) {\n .wrapper {\n outline: none;\n }\n}\n\n:host([disabled]) {\n pointer-events: none;\n .wrapper {\n background-color: var(--control__background-color--disabled);\n border-color: var(--control__border-color--disabled);\n }\n}\n/*custom button icon*/\n","import {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Event,\n EventEmitter,\n Watch\n} from \"@stencil/core\";\n\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../../common/locale\";\nimport { LabelPosition } from \"../../../common/types\";\nimport { EntityData } from \"../../../common/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/edit\",\n \"components/button\",\n \"components/icon\",\n \"utils/form\"\n];\nconst SELECT_DEFAULT_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"primary\"\n});\nconst CLEAR_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"reset\",\n colorType: \"primary\"\n});\n\n@Component({\n tag: \"gx-ide-entity-selector\",\n styleUrl: \"entity-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/entity-selector\"]\n})\nexport class GxIdeEntitySelector {\n #componentLocale: any;\n\n @Element() el: HTMLGxIdeEntitySelectorElement;\n\n /**\n * Adds/removes a CSS class on the host. It removes focus-within styles when\n * focus is on a button.\n */\n @State() buttonHasFocus = false;\n\n @State() iconSrc: string = null;\n\n /**\n * Default value for the component. Used when the 'X' button is pressed.\n */\n @Prop() readonly defaultValue?: EntityData | null | undefined;\n\n /**\n * This attribute lets you specify if the element is disabled.\n */\n @Prop({ reflect: true }) readonly disabled: boolean = false;\n\n /**\n * The label caption. Only visible if \"labelPosition\" is not \"none\".\n * I no \"labelCaption\" is provided, a generic caption \"Select Entity\" will be provided\n */\n @Prop() readonly labelCaption?: string;\n\n /**\n * The label position\n */\n @Prop({ reflect: true }) readonly labelPosition?: LabelPosition =\n \"block-start\";\n\n /**\n * This property specifies the `name` of the control when used in a form.\n */\n @Prop({ reflect: true }) readonly name?: string;\n\n /**\n * Callback invoked when the action button is pressed. Returns the new value.\n */\n @Prop() readonly selectEntityCallback!: () => Promise<EntityData>;\n\n /**\n * Value currently assigned.\n */\n @Prop({ mutable: true }) value: EntityData | null | undefined;\n @Watch(\"value\")\n valueChangedHandler() {\n this.valueChanged.emit(this.value);\n this.#updateIconSrc();\n }\n\n /**\n * Emits the input value every time it changes\n */\n @Event() valueChanged: EventEmitter<EntityData>;\n\n // 6.Component Lifecycle Events\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#updateIconSrc();\n }\n\n #btnClearClickHandler = () => {\n this.value = this.defaultValue;\n this.iconSrc = this.defaultValue?.iconSrc;\n };\n\n #btnSelectClickHandler = () => {\n this.selectEntityCallback().then(result => {\n this.value = result;\n });\n };\n\n #buttonFocusHandler = (e: FocusEvent) => {\n if (e.type === \"focus\") {\n this.buttonHasFocus = true;\n } else if (e.type === \"blur\") {\n this.buttonHasFocus = false;\n }\n };\n\n #renderControl = (): HTMLDivElement => {\n return (\n <div part=\"wrapper\" class=\"wrapper\">\n <ch-edit\n accessibleName={\n this.labelPosition === \"none\" &&\n this.#componentLocale.entitySelectorInputAccessibleName\n }\n class=\"input\"\n disabled={this.disabled}\n name={this.name || this.#componentLocale.entitySelectorNameAttribute}\n startImgSrc={this.iconSrc}\n readonly\n value={this.value?.name || this.defaultValue?.name}\n id=\"entity-input\"\n ></ch-edit>\n\n <button\n part=\"button-clear\"\n class=\"icon-button\"\n aria-label={this.#componentLocale.clearButtonLabel}\n title={this.#componentLocale.clearButtonLabel}\n type=\"button\"\n disabled={this.disabled}\n onClick={this.#btnClearClickHandler}\n onFocus={this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n onBlur={!this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n >\n <ch-image\n class=\"icon-md\"\n src={CLEAR_ICON}\n disabled={this.disabled}\n ></ch-image>\n </button>\n\n <button\n class=\"icon-button\"\n aria-label={this.#componentLocale.selectButtonLabel}\n title={this.#componentLocale.selectButtonLabel}\n type=\"button\"\n disabled={!this.selectEntityCallback || this.disabled}\n onClick={this.#btnSelectClickHandler}\n onBlur={!this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n onFocus={this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n >\n <ch-image\n class=\"icon-md\"\n src={SELECT_DEFAULT_ICON}\n disabled={this.disabled}\n ></ch-image>\n </button>\n </div>\n );\n };\n\n #updateIconSrc = () => {\n if (this.value && this.value.iconSrc) {\n this.iconSrc = this.value.iconSrc;\n }\n };\n\n render() {\n return (\n <Host\n class={{\n \"entity-selector--button-has-focus\": this.buttonHasFocus\n }}\n >\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n {this.labelPosition !== \"none\" ? (\n <div\n class={{\n \"field\": true,\n \"field-block\": this.labelPosition === \"block-start\",\n \"field-inline\": this.labelPosition === \"inline-start\"\n }}\n >\n <label class=\"label\" htmlFor=\"entity-input\">\n {this.labelCaption ||\n this.#componentLocale.entitySelectorInputAccessibleName}\n </label>\n {this.#renderControl()}\n </div>\n ) : (\n this.#renderControl()\n )}\n </Host>\n );\n }\n}\n\nexport type EntitySelectorLabels = {\n buttonClearLabel: string;\n buttonSelectLabel: string;\n};\n"],"mappings":";;;;;;AAAA,MAAMA,IAAoB;;;;;;;;;;;;;;;;;ACkB1B,MAAMC,IAA8B,EAClC,qBACA,mBACA,qBACA,mBACA;;AAEF,MAAMC,IAAsBC,EAAY;EACtCC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAEb,MAAMC,IAAaJ,EAAY;EAC7BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;MASAE,IAAmB;;;;IAC9BC,EAAAC,IAAAC,WAAA;IAqEAC,EAAAF,IAAAC,OAAwB;;MACtBA,KAAKE,QAAQF,KAAKG;MAClBH,KAAKI,WAAUC,IAAAL,KAAKG,kBAAY,QAAAE,WAAA,aAAAA,EAAED;AAAO;IAG3CE,EAAAP,IAAAC,OAAyB;MACvBA,KAAKO,uBAAuBC,MAAKC;QAC/BT,KAAKE,QAAQO;AAAM;AACnB;IAGJC,EAAAX,IAAAC,OAAuBW;MACrB,IAAIA,EAAEC,SAAS,SAAS;QACtBZ,KAAKa,iBAAiB;aACjB,IAAIF,EAAEC,SAAS,QAAQ;QAC5BZ,KAAKa,iBAAiB;;;IAI1BC,EAAAf,IAAAC,OAAiB;;MACf,OACEe,EAAA;QAAKC,MAAK;QAAUC,OAAM;SACxBF,EAAA;QACEG,gBACElB,KAAKmB,kBAAkB,UACvBC,EAAApB,MAAIF,GAAA,KAAkBuB;QAExBJ,OAAM;QACNK,UAAUtB,KAAKsB;QACf5B,MAAMM,KAAKN,QAAQ0B,EAAApB,MAAIF,GAAA,KAAkByB;QACzCC,aAAaxB,KAAKI;QAClBqB,UAAQ;QACRvB,SAAOG,IAAAL,KAAKE,WAAK,QAAAG,WAAA,aAAAA,EAAEX,WAAQgC,IAAA1B,KAAKG,kBAAY,QAAAuB,WAAA,aAAAA,EAAEhC;QAC9CiC,IAAG;UAGLZ,EAAA;QACEC,MAAK;QACLC,OAAM;QAAa,cACPG,EAAApB,MAAIF,GAAA,KAAkB8B;QAClCC,OAAOT,EAAApB,MAAIF,GAAA,KAAkB8B;QAC7BhB,MAAK;QACLU,UAAUtB,KAAKsB;QACfQ,SAASV,EAAApB,MAAIC,GAAA;QACb8B,SAAS/B,KAAKa,iBAAiBO,EAAApB,MAAIU,GAAA,OAAuBsB;QAC1DC,SAASjC,KAAKa,iBAAiBO,EAAApB,MAAIU,GAAA,OAAuBsB;SAE1DjB,EAAA;QACEE,OAAM;QACNiB,KAAKtC;QACL0B,UAAUtB,KAAKsB;WAInBP,EAAA;QACEE,OAAM;QAAa,cACPG,EAAApB,MAAIF,GAAA,KAAkBqC;QAClCN,OAAOT,EAAApB,MAAIF,GAAA,KAAkBqC;QAC7BvB,MAAK;QACLU,WAAWtB,KAAKO,wBAAwBP,KAAKsB;QAC7CQ,SAASV,EAAApB,MAAIM,GAAA;QACb2B,SAASjC,KAAKa,iBAAiBO,EAAApB,MAAIU,GAAA,OAAuBsB;QAC1DD,SAAS/B,KAAKa,iBAAiBO,EAAApB,MAAIU,GAAA,OAAuBsB;SAE1DjB,EAAA;QACEE,OAAM;QACNiB,KAAK3C;QACL+B,UAAUtB,KAAKsB;;AAGf;IAIVc,EAAArC,IAAAC,OAAiB;MACf,IAAIA,KAAKE,SAASF,KAAKE,MAAME,SAAS;QACpCJ,KAAKI,UAAUJ,KAAKE,MAAME;;;0BAzIJ;mBAEC;;oBAU2B;;yBAYpD;;;;;EAiBF,mBAAAiC;IACErC,KAAKsC,aAAaC,KAAKvC,KAAKE;IAC5BkB,EAAApB,MAAIoC,GAAA,KAAeI,KAAnBxC;;;EAUF,uBAAMyC;IACJC,EAAA1C,MAAIF,SAA0B6C,EAAOC,oBAAoB5C,KAAK6C,KAAG;;EAGnE,iBAAAC;IACE1B,EAAApB,MAAIoC,GAAA,KAAeI,KAAnBxC;;EAmFF,MAAA+C;IACE,OACEhC,EAACiC,GAAI;MACH/B,OAAO;QACL,qCAAqCjB,KAAKa;;OAG5CE,EAAA;MAAUkC,OAAO3D;QAChBU,KAAKmB,kBAAkB,SACtBJ,EAAA;MACEE,OAAO;QACLiC,OAAS;QACT,eAAelD,KAAKmB,kBAAkB;QACtC,gBAAgBnB,KAAKmB,kBAAkB;;OAGzCJ,EAAA;MAAOE,OAAM;MAAQkC,SAAQ;OAC1BnD,KAAKoD,gBACJhC,EAAApB,MAAIF,GAAA,KAAkBuB,oCAEzBD,EAAApB,MAAIc,GAAA,KAAe0B,KAAnBxC,SAGHoB,EAAApB,MAAIc,GAAA,KAAe0B,KAAnBxC"}
@@ -1,163 +0,0 @@
1
- import { a as n, r as e, h as i, H as t, g as s } from "./p-49712340.js";
2
-
3
- import { L as a } from "./p-311eedf3.js";
4
-
5
- const mapTeamsToComboBoxItemModel = n => {
6
- if (!n) {
7
- return [];
8
- }
9
- return n.map((n => ({
10
- value: n.id,
11
- caption: n.name
12
- })));
13
- };
14
-
15
- const r = ":host {\n display: grid;\n container-type: inline-size;\n container-name: host-container;\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 grid-template-columns: 1fr 1fr;\n block-size: 100%;\n max-block-size: 700px;\n max-inline-size: 1100px;\n background-color: var(--mer-surface__elevation--01);\n border-radius: var(--mer-spacing--md);\n overflow: hidden;\n}\n.slide__illustration {\n overflow: hidden;\n object-fit: cover;\n object-position: left;\n block-size: 100%;\n inline-size: 100%;\n}\n.slide__main {\n display: grid;\n block-size: 100%;\n inline-size: 100%;\n padding: var(--mer-spacing--3xl);\n transform: translateY(var(--mer-spacing--2xs));\n transition: var(--switch-step-transtion-time) all;\n opacity: 0;\n}\n.slide__main--visible {\n transform: translateY(0);\n opacity: 1;\n}\n.slide__main-container {\n display: grid;\n place-self: center;\n gap: var(--mer-spacing--lg);\n max-inline-size: 480px;\n}\n.slide__main-header {\n display: grid;\n gap: var(--mer-spacing--lg);\n}\n.slide__main-title {\n display: flex;\n flex-direction: column;\n font-size: var(--mer-font__size--xl);\n font-weight: var(--mer-font__weight--semi-bold);\n letter-spacing: 0.02em;\n color: var(--mer-text__on-surface);\n}\n.slide__main-description {\n display: grid;\n gap: var(--mer-spacing--2xl);\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 color: var(--mer-text__complementary);\n}\n\n.terms-conditions {\n text-decoration: underline;\n}\n\n.teams-list {\n inline-size: 100%;\n max-inline-size: 400px;\n}\n\n.main-btn {\n inline-size: 100%;\n max-inline-size: 124px;\n}\n\n@container host-container (max-width: 768px) {\n .slide {\n grid-template-columns: 1fr 2fr;\n }\n}\n@container host-container (max-width: 640px) {\n .slide {\n grid-template-columns: 1fr 5fr;\n }\n}";
16
-
17
- var o = undefined && undefined.__classPrivateFieldGet || function(n, e, i, t) {
18
- if (i === "a" && !t) throw new TypeError("Private accessor was defined without a getter");
19
- if (typeof e === "function" ? n !== e || !t : !e.has(n)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
20
- return i === "m" ? t : i === "a" ? t.call(n) : t ? t.value : e.get(n);
21
- };
22
-
23
- var l = undefined && undefined.__classPrivateFieldSet || function(n, e, i, t, s) {
24
- if (t === "m") throw new TypeError("Private method is not writable");
25
- if (t === "a" && !s) throw new TypeError("Private accessor was defined without a setter");
26
- if (typeof e === "function" ? n !== e || !s : !e.has(n)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
27
- return t === "a" ? s.call(n, i) : s ? s.value = i : e.set(n, i), i;
28
- };
29
-
30
- var d, c, h, m, p, f;
31
-
32
- const g = n(`./gx-ide-assets/welcome-page/images/copyrights-illustration.png`);
33
-
34
- const u = n(`./gx-ide-assets/welcome-page/images/icon-next.svg`);
35
-
36
- const _ = [ "resets/box-sizing", "utils/typography", "components/button", "components/combo-box" ];
37
-
38
- const v = class {
39
- constructor(n) {
40
- e(this, n);
41
- /**
42
- * The component hard-coded strings translations.
43
- */
44
- // eslint-disable-next-line @stencil-community/own-props-must-be-private
45
- d.set(this, void 0);
46
- // Select User Team References :
47
- c.set(this, []);
48
- h.set(this, void 0);
49
- m.set(this, 100);
50
- p.set(this, (() => {
51
- if (this.authStep === "signIn") {
52
- this.signInCallback();
53
- } else if (this.authStep === "selectUserTeam") {
54
- o(this, f, "f").call(this);
55
- }
56
- }));
57
- f.set(this, (async () => {
58
- await this.continueCallback(o(this, h, "f").value);
59
- }));
60
- this.authStepInternal = undefined;
61
- this.slideIsVisible = true;
62
- this.authStep = "signIn";
63
- this.continueCallback = undefined;
64
- this.signInCallback = undefined;
65
- this.teams = undefined;
66
- this.termsCallback = undefined;
67
- }
68
- authStepChanged(n) {
69
- this.slideIsVisible = false;
70
- // switch step
71
- setTimeout((() => {
72
- this.authStepInternal = n;
73
- }), o(this, m, "f"));
74
- // show slide
75
- setTimeout((() => {
76
- this.slideIsVisible = true;
77
- }), o(this, m, "f") * 2);
78
- }
79
- teamsChanged(n) {
80
- l(this, c, mapTeamsToComboBoxItemModel(n), "f");
81
- }
82
- async componentWillLoad() {
83
- l(this, d, await a.getComponentStrings(this.el), "f");
84
- this.el.style.setProperty("--switch-step-transtion-time", o(this, m, "f").toString() + "ms");
85
- // Initialize values
86
- this.authStepInternal = this.authStep;
87
- this.teamsChanged(this.teams);
88
- }
89
- render() {
90
- var n;
91
- return i(t, null, i("ch-theme", {
92
- model: _
93
- }), i("section", {
94
- class: "slide"
95
- }, i("img", {
96
- src: g,
97
- class: "slide__illustration",
98
- alt: ""
99
- }), i("div", {
100
- class: {
101
- slide__main: true,
102
- "slide__main--visible": this.slideIsVisible
103
- }
104
- }, i("div", {
105
- class: "slide__main-container"
106
- }, i("header", {
107
- class: "slide__main-header"
108
- }, i("img", {
109
- src: u,
110
- alt: ""
111
- }), i("h2", {
112
- // Split the title into two spans for better styling
113
- class: "slide__main-title"
114
- }, i("span", null, o(this, d, "f")[this.authStepInternal].titlePart1), i("span", null, o(this, d, "f")[this.authStepInternal].titlePart2))), this.authStepInternal === "signIn" ? i("div", {
115
- class: "slide__main-description"
116
- }, i("p", {
117
- hidden: true
118
- }, i("span", null, o(this, d, "f").descriptionText)), i("span", null, o(this, d, "f").signIn.byContinuingText, i("a", {
119
- class: "terms-conditions",
120
- onClick: this.termsCallback
121
- }, o(this, d, "f").signIn.byContinuingCallBackText))) : [ i("div", {
122
- class: "slide__select-team-description"
123
- }, i("p", {
124
- class: "text-body-highlighted-l"
125
- }, o(this, d, "f").selectUserTeam.infoMessage)), i("div", {
126
- class: "field-group"
127
- }, i("div", {
128
- class: "field field-block"
129
- }, i("label", {
130
- htmlFor: "teams"
131
- }, o(this, d, "f").teams), i("ch-combo-box-render", {
132
- id: "teams",
133
- accessibleName: "Teams",
134
- class: "combo-box teams-list",
135
- model: o(this, c, "f"),
136
- value: (n = o(this, c, "f")[0]) === null || n === void 0 ? void 0 : n.value,
137
- ref: n => l(this, h, n, "f")
138
- }))) ], i("div", null, i("button", {
139
- class: "button-primary main-btn",
140
- onClick: o(this, p, "f")
141
- }, o(this, d, "f")[this.authStepInternal].buttonCaption))))));
142
- }
143
- static get assetsDirs() {
144
- return [ "gx-ide-assets/sign-in-team" ];
145
- }
146
- get el() {
147
- return s(this);
148
- }
149
- static get watchers() {
150
- return {
151
- authStep: [ "authStepChanged" ],
152
- teams: [ "teamsChanged" ]
153
- };
154
- }
155
- };
156
-
157
- d = new WeakMap, c = new WeakMap, h = new WeakMap, m = new WeakMap, p = new WeakMap,
158
- f = new WeakMap;
159
-
160
- v.style = r;
161
-
162
- export { v as gx_ide_sign_in_team };
163
- //# sourceMappingURL=p-0b33d2f9.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["mapTeamsToComboBoxItemModel","teams","map","team","value","id","caption","name","signInTeamCss","COPYRIGHTS_ILLUSTRATION","getAssetPath","ICON_NEXT","CSS_BUNDLES","GxIdeSignInTeam","_GxIdeSignInTeam_componentLocale","set","this","_GxIdeSignInTeam_userTeamsModel","_GxIdeSignInTeam_chSelectTeamEl","_GxIdeSignInTeam_switchStepTransitionTime","_GxIdeSignInTeam_authStepCallback","authStep","signInCallback","__classPrivateFieldGet","_GxIdeSignInTeam_continueHandler","call","async","continueCallback","authStepChanged","newAuthStep","slideIsVisible","setTimeout","authStepInternal","teamsChanged","newTeams","__classPrivateFieldSet","componentWillLoad","Locale","getComponentStrings","el","style","setProperty","toString","render","h","Host","model","class","src","alt","slide__main","titlePart1","titlePart2","hidden","descriptionText","signIn","byContinuingText","onClick","termsCallback","byContinuingCallBackText","selectUserTeam","infoMessage","htmlFor","accessibleName","_a","ref","buttonCaption"],"sources":["src/components/sign-in-team/helpers.ts","src/components/sign-in-team/sign-in-team.scss?tag=gx-ide-sign-in-team&encapsulation=shadow","src/components/sign-in-team/sign-in-team.tsx"],"sourcesContent":["import { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { TeamData } from \"./sign-in-team\";\n\nexport const mapTeamsToComboBoxItemModel = (\n teams?: TeamData[]\n): ComboBoxItemModel[] | undefined => {\n if (!teams) {\n return [];\n }\n return teams.map(team => ({\n value: team.id,\n caption: team.name\n }));\n};\n",":host {\n display: grid;\n container-type: inline-size;\n container-name: host-container;\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 grid-template-columns: 1fr 1fr;\n block-size: 100%;\n max-block-size: 700px;\n max-inline-size: 1100px;\n background-color: var(--mer-surface__elevation--01);\n border-radius: var(--mer-spacing--md);\n overflow: hidden;\n\n &__illustration {\n overflow: hidden;\n object-fit: cover;\n object-position: left;\n block-size: 100%;\n inline-size: 100%;\n }\n\n &__main {\n display: grid;\n block-size: 100%;\n inline-size: 100%;\n padding: var(--mer-spacing--3xl);\n transform: translateY(var(--mer-spacing--2xs));\n transition: var(--switch-step-transtion-time) all;\n opacity: 0;\n\n &--visible {\n transform: translateY(0);\n opacity: 1;\n }\n }\n\n &__main-container {\n display: grid;\n place-self: center;\n gap: var(--mer-spacing--lg);\n max-inline-size: 480px;\n }\n\n &__main-header {\n display: grid;\n gap: var(--mer-spacing--lg);\n }\n\n &__main-title {\n display: flex;\n flex-direction: column;\n font-size: var(--mer-font__size--xl);\n font-weight: var(--mer-font__weight--semi-bold);\n letter-spacing: 0.02em;\n color: var(--mer-text__on-surface);\n }\n\n &__main-description {\n display: grid;\n gap: var(--mer-spacing--2xl);\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 color: var(--mer-text__complementary);\n }\n}\n\n.terms-conditions {\n text-decoration: underline;\n}\n\n.teams-list {\n inline-size: 100%;\n max-inline-size: 400px;\n}\n\n.main-btn {\n inline-size: 100%;\n max-inline-size: 124px;\n}\n\n@container host-container (max-width: 768px) {\n .slide {\n grid-template-columns: 1fr 2fr;\n }\n}\n\n@container host-container (max-width: 640px) {\n .slide {\n grid-template-columns: 1fr 5fr;\n }\n}\n","// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n State,\n Watch,\n Element,\n getAssetPath\n} from \"@stencil/core\";\n// Other Libraries\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\n// Custom Imports\nimport { Locale } from \"../../common/locale\";\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);\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/typography\",\n \"components/button\",\n \"components/combo-box\"\n];\n\n@Component({\n tag: \"gx-ide-sign-in-team\",\n styleUrl: \"sign-in-team.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/sign-in-team\"]\n})\nexport class GxIdeSignInTeam {\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 // Select User Team References :\n #userTeamsModel: ComboBoxItemModel[] = [];\n #chSelectTeamEl: HTMLChComboBoxRenderElement;\n #switchStepTransitionTime: number = 100;\n\n @Element() el: HTMLGxIdeSignInTeamElement;\n\n /**\n * This is a handover from \"authStep\" that allows updating descriptions once\n * the slide is hidden. This enables a smooth transition between descriptions.\n */\n\n @State() authStepInternal: AuthStep;\n\n /**\n * Defines if the main slide is visible or not. Used for smooth transitions\n * between slides.\n */\n @State() slideIsVisible: boolean = true;\n\n /**\n * The authentication step to display\n */\n @Prop() readonly authStep: AuthStep = \"signIn\";\n @Watch(\"authStep\")\n authStepChanged(newAuthStep: AuthStep) {\n this.slideIsVisible = false;\n // switch step\n setTimeout(() => {\n this.authStepInternal = newAuthStep;\n }, this.#switchStepTransitionTime);\n // show slide\n setTimeout(() => {\n this.slideIsVisible = true;\n }, this.#switchStepTransitionTime * 2);\n }\n\n /**\n * Callback executed when the user clicks the 'Continue' button\n */\n @Prop() readonly continueCallback!: (teamId: string) => Promise<void>;\n\n /**\n * Callback executed when the user click the \"Sign In\" button\n */\n @Prop() readonly signInCallback: () => Promise<void>;\n\n /**\n * Array that contains the user's teams\n */\n @Prop() readonly teams!: TeamData[];\n @Watch(\"teams\")\n teamsChanged(newTeams: TeamData[]) {\n this.#userTeamsModel = mapTeamsToComboBoxItemModel(newTeams);\n }\n\n /**\n * Callback executed when the user clicks on the \"term and conditions\" link\n */\n @Prop() readonly termsCallback: () => Promise<void>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.el.style.setProperty(\n \"--switch-step-transtion-time\",\n this.#switchStepTransitionTime.toString() + \"ms\"\n );\n // Initialize values\n this.authStepInternal = this.authStep;\n this.teamsChanged(this.teams);\n }\n\n #authStepCallback = () => {\n if (this.authStep === \"signIn\") {\n this.signInCallback();\n } else if (this.authStep === \"selectUserTeam\") {\n this.#continueHandler();\n }\n };\n\n #continueHandler = 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 <img\n src={COPYRIGHTS_ILLUSTRATION}\n class=\"slide__illustration\"\n alt=\"\" // decorative\n />\n\n <div\n class={{\n \"slide__main\": true,\n \"slide__main--visible\": this.slideIsVisible\n }}\n >\n <div class=\"slide__main-container\">\n <header class=\"slide__main-header\">\n <img\n src={ICON_NEXT}\n alt=\"\" // decorative\n />\n <h2\n // Split the title into two spans for better styling\n class=\"slide__main-title\"\n >\n <span>\n {this.#componentLocale[this.authStepInternal].titlePart1}\n </span>\n <span>\n {this.#componentLocale[this.authStepInternal].titlePart2}\n </span>\n </h2>\n </header>\n\n {this.authStepInternal === \"signIn\" ? (\n <div class=\"slide__main-description\">\n <p hidden>\n <span>{this.#componentLocale.descriptionText}</span>\n </p>\n <span>\n {this.#componentLocale.signIn.byContinuingText}\n <a class=\"terms-conditions\" onClick={this.termsCallback}>\n {this.#componentLocale.signIn.byContinuingCallBackText}\n </a>\n </span>\n </div>\n ) : (\n [\n <div class=\"slide__select-team-description\">\n <p class=\"text-body-highlighted-l\">\n {this.#componentLocale.selectUserTeam.infoMessage}\n </p>\n </div>,\n\n <div class=\"field-group\">\n <div class=\"field field-block\">\n <label htmlFor=\"teams\">\n {this.#componentLocale.teams}\n </label>\n <ch-combo-box-render\n id=\"teams\"\n accessibleName=\"Teams\"\n class=\"combo-box teams-list\"\n model={this.#userTeamsModel}\n value={this.#userTeamsModel[0]?.value}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#chSelectTeamEl =\n el as HTMLChComboBoxRenderElement)\n }\n ></ch-combo-box-render>\n </div>\n </div>\n ]\n )}\n\n <div>\n <button\n class=\"button-primary main-btn\"\n onClick={this.#authStepCallback}\n >\n {this.#componentLocale[this.authStepInternal].buttonCaption}\n </button>\n </div>\n </div>\n </div>\n </section>\n </Host>\n );\n }\n}\n\nexport type AuthStep = \"signIn\" | \"selectUserTeam\";\n\nexport type TeamData = {\n id: string;\n name: string;\n};\n"],"mappings":"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"}