@genexus/genexus-ide-ui 1.1.10 → 1.1.12

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 (88) hide show
  1. package/dist/cjs/{code-render-55d37767.js → code-render-2af31443.js} +2 -2
  2. package/dist/cjs/{code-render-55d37767.js.map → code-render-2af31443.js.map} +1 -1
  3. package/dist/cjs/{common-090e6d3a.js → common-8c725d8c.js} +4 -8
  4. package/dist/cjs/common-8c725d8c.js.map +1 -0
  5. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  6. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +1 -1
  8. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +3 -2
  9. package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
  11. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +2 -2
  12. package/dist/cjs/gx-ide-splash.cjs.entry.js +1 -1
  13. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +456 -0
  14. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js.map +1 -0
  15. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
  16. package/dist/cjs/index.cjs.js +2 -2
  17. package/dist/cjs/loader.cjs.js +1 -1
  18. package/dist/collection/collection-manifest.json +1 -0
  19. package/dist/collection/common/common.js +2 -7
  20. package/dist/collection/common/common.js.map +1 -1
  21. package/dist/collection/components/new-environment/new-environment.js +3 -2
  22. package/dist/collection/components/new-environment/new-environment.js.map +1 -1
  23. package/dist/collection/components/team-dev/bring-changes/bring-changes.css +356 -0
  24. package/dist/collection/components/team-dev/bring-changes/bring-changes.js +670 -0
  25. package/dist/collection/components/team-dev/bring-changes/bring-changes.js.map +1 -0
  26. package/dist/collection/components/team-dev/bring-changes/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.en.json +66 -0
  27. package/dist/collection/components/team-dev/bring-changes/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.ja.json +66 -0
  28. package/dist/collection/components/team-dev/bring-changes/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.zh.json +66 -0
  29. package/dist/collection/testing/locale.e2e.js +1 -0
  30. package/dist/collection/testing/locale.e2e.js.map +1 -1
  31. package/dist/components/common.js +3 -8
  32. package/dist/components/common.js.map +1 -1
  33. package/dist/components/gx-ide-new-environment.js +3 -2
  34. package/dist/components/gx-ide-new-environment.js.map +1 -1
  35. package/dist/components/gx-ide-team-dev-bring-changes.d.ts +11 -0
  36. package/dist/components/gx-ide-team-dev-bring-changes.js +505 -0
  37. package/dist/components/gx-ide-team-dev-bring-changes.js.map +1 -0
  38. package/dist/esm/{code-render-53b3b0bd.js → code-render-e6bf0562.js} +2 -2
  39. package/dist/esm/{code-render-53b3b0bd.js.map → code-render-e6bf0562.js.map} +1 -1
  40. package/dist/esm/{common-719c4daf.js → common-c25d8c2f.js} +4 -9
  41. package/dist/esm/common-c25d8c2f.js.map +1 -0
  42. package/dist/esm/genexus-ide-ui.js +1 -1
  43. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +1 -1
  44. package/dist/esm/gx-ide-manage-module-references.entry.js +1 -1
  45. package/dist/esm/gx-ide-new-environment.entry.js +3 -2
  46. package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
  47. package/dist/esm/gx-ide-new-kb.entry.js +1 -1
  48. package/dist/esm/gx-ide-sc-chat-container.entry.js +2 -2
  49. package/dist/esm/gx-ide-splash.entry.js +1 -1
  50. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +452 -0
  51. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js.map +1 -0
  52. package/dist/esm/gx-ide-ww-images.entry.js +1 -1
  53. package/dist/esm/index.js +2 -2
  54. package/dist/esm/loader.js +1 -1
  55. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  56. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  57. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.en.json +66 -0
  58. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.ja.json +66 -0
  59. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.zh.json +66 -0
  60. package/dist/genexus-ide-ui/index.esm.js +2 -2
  61. package/dist/genexus-ide-ui/{p-48f5911b.js → p-0c0eb8ae.js} +37 -38
  62. package/dist/genexus-ide-ui/p-0c0eb8ae.js.map +1 -0
  63. package/dist/genexus-ide-ui/{p-a1415a9c.entry.js → p-3b5a4e2e.entry.js} +2 -2
  64. package/dist/genexus-ide-ui/{p-0bdf34f2.entry.js → p-3b983843.entry.js} +2 -2
  65. package/dist/genexus-ide-ui/p-4d4ed703.entry.js +649 -0
  66. package/dist/genexus-ide-ui/p-4d4ed703.entry.js.map +1 -0
  67. package/dist/genexus-ide-ui/{p-c5178973.js → p-60221a44.js} +29 -29
  68. package/dist/genexus-ide-ui/{p-ee79f815.entry.js → p-6d996621.entry.js} +3 -3
  69. package/dist/genexus-ide-ui/{p-d3767a7d.entry.js → p-82878950.entry.js} +134 -133
  70. package/dist/genexus-ide-ui/p-82878950.entry.js.map +1 -0
  71. package/dist/genexus-ide-ui/{p-4d0ba4f6.entry.js → p-9dcb8fb7.entry.js} +2 -2
  72. package/dist/genexus-ide-ui/{p-6f898249.entry.js → p-bc760bb3.entry.js} +2 -2
  73. package/dist/genexus-ide-ui/{p-e28e6bc4.entry.js → p-ff28c49d.entry.js} +2 -2
  74. package/dist/types/common/common.d.ts +1 -0
  75. package/dist/types/components/team-dev/bring-changes/bring-changes.d.ts +120 -0
  76. package/dist/types/components.d.ts +79 -0
  77. package/package.json +1 -1
  78. package/dist/cjs/common-090e6d3a.js.map +0 -1
  79. package/dist/esm/common-719c4daf.js.map +0 -1
  80. package/dist/genexus-ide-ui/p-48f5911b.js.map +0 -1
  81. package/dist/genexus-ide-ui/p-d3767a7d.entry.js.map +0 -1
  82. /package/dist/genexus-ide-ui/{p-a1415a9c.entry.js.map → p-3b5a4e2e.entry.js.map} +0 -0
  83. /package/dist/genexus-ide-ui/{p-0bdf34f2.entry.js.map → p-3b983843.entry.js.map} +0 -0
  84. /package/dist/genexus-ide-ui/{p-c5178973.js.map → p-60221a44.js.map} +0 -0
  85. /package/dist/genexus-ide-ui/{p-ee79f815.entry.js.map → p-6d996621.entry.js.map} +0 -0
  86. /package/dist/genexus-ide-ui/{p-4d0ba4f6.entry.js.map → p-9dcb8fb7.entry.js.map} +0 -0
  87. /package/dist/genexus-ide-ui/{p-6f898249.entry.js.map → p-bc760bb3.entry.js.map} +0 -0
  88. /package/dist/genexus-ide-ui/{p-e28e6bc4.entry.js.map → p-ff28c49d.entry.js.map} +0 -0
@@ -0,0 +1,649 @@
1
+ import { r as t, h as e, H as i, a as r } from "./p-25a9f1d7.js";
2
+
3
+ import { g as a } from "./p-ede7bd20.js";
4
+
5
+ import { L as s } from "./p-311eedf3.js";
6
+
7
+ const l = ':host{--pill-border-radius:12px;--pill-padding-inline:8px;--pill-padding-block:2px;--pill-font-size:var(--font-size-body-s);display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content max-content 1fr}.detail__current-version,.detail__knowledge-base{max-inline-size:250px;min-inline-size:180px}.detail__current-version,.detail__knowledge-base{padding-inline:24px;border-inline-end:1px solid var(--mer-border-color__on-elevation--01)}.information__col-1,.detail__genexus-server{padding-inline-end:24px;border-inline-end:1px solid var(--mer-border-color__on-elevation--01)}.information__col-2,.detail__merge-from-version{padding-inline-start:24px}.section{display:contents}.header{display:grid;gap:24px}.header__detail{display:grid;grid-template-areas:"detail-title detail-title detail-title detail-title" "detail-commit-name detail-commit-name detail-commit-name detail-commit-name" "detail-genexus-server detail-knowledge-base detail-current-version detail-merge-from-version";row-gap:16px;grid-template-columns:minmax(250px, 350px) repeat(3, minmax(180px, 250px))}.detail__label{color:var(--mer-color__neutral-gray--400)}.detail__title{grid-area:detail-title}.detail__commit-name{grid-area:detail-commit-name}.detail__genexus-server{grid-area:detail-genexus-server}.detail__genexus-server>a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block}.detail__link{align-items:start;color:var(--mer-text__primary);text-decoration:underline}.detail__link:hover{color:var(--mer-text__primary--hover)}.detail__link:active{color:var(--mer-text__primary--active)}.detail__knowledge-base{grid-area:detail-knowledge-base}.detail__current-version{grid-area:detail-current-version}.detail__merge-from-version{grid-area:detail-merge-from-version}.header__information{display:grid;row-gap:10px;grid-template-areas:"information-title information-title" "information-col-1 information-col-2";grid-template-columns:max-content 1fr;grid-template-rows:max-content 64px}.information__title{grid-area:information-title}.information__col-1{grid-area:information-col-1;display:flex;gap:24px}.information__col-2{display:grid;grid-area:information-col-2}.controls-container{display:grid;margin-block-start:24px}.filter{grid-template-columns:232px 186px 1fr;gap:12px}.button-merge-checked{margin-inline-start:auto}.main{position:relative;display:grid;overflow:auto}.loader{position:relative;inline-size:100%;block-size:100%;inset-block-start:0}.tabular-grid{border-radius:4px;overflow:hidden}.empty-state{block-size:100%}.loader{--elevation-background-color:var(--mer-surface__elevation--01)}.warning-error-description{display:flex;align-items:center;gap:8px;padding:8px;max-inline-size:800px;line-height:1.5}.warning-error-icon{flex-shrink:0}.tabular-grid.empty-result::part(main){overflow:hidden}.input-comments-container{position:relative}.input-comments{--control__border-color:transparent;padding-block:0 !important;padding-inline:0 !important;--line-height-tight:1.4;block-size:100%;background-color:var(--mer-surface);transition:var(--mer-timing--super-fast) block-size, var(--mer-timing--super-fast) background-color, var(--mer-timing--super-fast) padding-block, var(--mer-timing--super-fast) padding-inline}.input-comments:focus{position:absolute;block-size:200px;inline-size:100%;z-index:99;background-color:var(--mer-surface__elevation--01);padding-block:var(--control__padding-block) !important;padding-inline:var(--control__padding-inline) !important}ch-tabular-grid-cell.tabular-grid-cell::part(actions-icon){background-size:contain;margin-inline-end:0;--icon-path:var(--icon__gemini-tools_show-more-vertical_neutral--enabled);cursor:pointer}ch-tabular-grid-cell.tabular-grid-cell::part(actions-icon):hover{--icon-path:var(--icon__gemini-tools_show-more-vertical_neutral--hover)}ch-tabular-grid-cell.tabular-grid-cell::part(actions-icon):active{--icon-path:var(--icon__gemini-tools_show-more-vertical_neutral--active)}.tabular-grid-row-actions::part(main),.property-grid-row-actions::part(main){gap:0 !important}.custom-icon-text-wrapper{display:flex;align-items:center;gap:10px}.tabular-grid-row-actions>button{justify-content:start}.pill{--pill-background-color:transparent;--pill-color:transparent;--pill-border-color:transparent;background-color:var(--pill-background-color);color:var(--pill-color);border:1px solid var(--pill-border-color);inline-size:100%;padding:var(--pill-padding-block) var(--pill-padding-inline);display:flex;align-items:center;justify-content:center;border-radius:var(--pill-border-radius);position:relative;font-weight:var(--font-weight-semi-bold)}.pill--to-merge{--pill-background-color:var();--pill-color:var(--mer-color__neutral-gray--400);--pill-border-color:var()}.pill--to-merge-marked{--pill-background-color:var();--pill-color:var(--mer-border-color__primary);--pill-border-color:var()}.pill--pending{--pill-background-color:var(--mer-color__tinted-primary--8);--pill-color:var(--mer-border-color__primary);--pill-border-color:var(--mer-color__tinted-primary--50)}.pill--warning{--pill-background-color:var(--mer-color__tinted-yellow--5);--pill-color:var(--mer-border-color__warning);--pill-border-color:var(--mer-color__tinted-yellow--60)}.pill--error{--pill-background-color:var(--mer-color__tinted-red--5);--pill-color:var(--mer-border-color__error);--pill-border-color:var(--mer-color__tinted-red--60)}.pill--merged{--pill-background-color:var(--mer-color__tinted-green--5);--pill-color:var(--mer-border-color__success);--pill-border-color:var(--mer-color__tinted-green--60)}.pill--transitioning{--pill-color:transparent}.merging-spinner-caption{display:flex;align-items:center;gap:6px;--status-circle-color:transparent;--status-circle-size:$size;--status-circle-inset-inline-start:14px;--pill-color:var(--mer-border-color__primary)}.merging-spinner-caption::before{display:inline-block;content:"";width:14px;height:14px;border:calc(14px / 7) solid var(--mer-color__tinted-primary--50);border-top:calc(14px / 7) solid var(--mer-color__primary--300);border-radius:50%;animation:spin var(--mer-timing--regular) linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.tabular-grid .button-secondary{--control__padding-block:var(--pill-padding-block);--control__padding-inline:var(--pill-padding-inline);font-size:inherit;font-weight:inherit;}.tabular-grid .tabular-grid-cell--for-pill{--grid-cell__padding-block:4px;align-items:center;justify-content:center}.tabular-grid.disabled-custom-selector .tabular-grid-cell::part(selector-label),.tabular-grid.disabled-custom-selector .tabular-grid-column::part(bar-selector),.tabular-grid.disabled-custom-selector .tabular-grid-cell::part(actions-icon){pointer-events:none;opacity:0.5}.tabular-grid-column--settings-custom-selector,.tabular-grid-cell--settings-custom-selector{--grid-cell__padding-inline:0;--grid-cell__padding-block:0}.tabular-grid-cell::part(actions-icon){padding-block:6px}ch-tabular-grid-cell.tabular-grid-cell::part(actions-icon){block-size:100%;display:block;background-size:14px;padding-inline:16px}.tabular-grid-cell.no-checkbox-custom-selector::part(selector-label){visibility:hidden}.tabular-grid-row-actions::part(window){background-color:var(--mer-surface__elevation--02) !important}.tabular-grid-row .tabular-grid-cell:nth-child(3){min-inline-size:400px}';
8
+
9
+ var o = undefined && undefined.__classPrivateFieldGet || function(t, e, i, r) {
10
+ if (i === "a" && !r) throw new TypeError("Private accessor was defined without a getter");
11
+ if (typeof e === "function" ? t !== e || !r : !e.has(t)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
12
+ return i === "m" ? r : i === "a" ? r.call(t) : r ? r.value : e.get(t);
13
+ };
14
+
15
+ var n = undefined && undefined.__classPrivateFieldSet || function(t, e, i, r, a) {
16
+ if (r === "m") throw new TypeError("Private method is not writable");
17
+ if (r === "a" && !a) throw new TypeError("Private accessor was defined without a setter");
18
+ if (typeof e === "function" ? t !== e || !a : !e.has(t)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
19
+ return r === "a" ? a.call(t, i) : a ? a.value = i : e.set(t, i), i;
20
+ };
21
+
22
+ var c, d, p, h, m, u, g, b, f, _, v, w, y, k, x, M, z, W, $, j;
23
+
24
+ const T = [ "resets/box-sizing", "components/tabular-grid", "utils/form--full", "utils/layout", "utils/typography", "utils/spacing", "chameleon/scrollbar" ];
25
+
26
+ const C = "all";
27
+
28
+ const I = "detail__label body-semi-bold-s";
29
+
30
+ const S = a({
31
+ category: "system",
32
+ name: "add",
33
+ colorType: "on-elevation"
34
+ });
35
+
36
+ const N = a({
37
+ category: "system",
38
+ name: "edit",
39
+ colorType: "on-elevation"
40
+ });
41
+
42
+ const R = a({
43
+ category: "window-tools",
44
+ name: "filter",
45
+ colorType: "on-elevation"
46
+ });
47
+
48
+ const O = a({
49
+ category: "system",
50
+ name: "search",
51
+ colorType: "on-elevation"
52
+ });
53
+
54
+ const E = a({
55
+ category: "system",
56
+ name: "substract",
57
+ colorType: "on-elevation"
58
+ });
59
+
60
+ const A = a({
61
+ category: "system",
62
+ name: "warning",
63
+ colorType: "warning"
64
+ });
65
+
66
+ const D = a({
67
+ category: "system",
68
+ name: "error",
69
+ colorType: "error"
70
+ });
71
+
72
+ const L = class {
73
+ constructor(i) {
74
+ t(this, i);
75
+ /**
76
+ * The component hard-coded strings translations.
77
+ */
78
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
79
+ c.set(this, void 0);
80
+ d.set(this, void 0);
81
+ p.set(this, void 0);
82
+ h.set(this, []);
83
+ m.set(this, (() => {
84
+ if (this.commitInformation.length === 1) {
85
+ // return comment without revison number
86
+ return this.commitInformation[0].comment;
87
+ }
88
+ // return comments with revison number
89
+ let t = "";
90
+ this.commitInformation.map(((e, i) => {
91
+ const r = i === this.commitInformation.length - 1;
92
+ const a = r ? "" : "\n\n";
93
+ t += `Commit ${e.id}:\n${e.comment}${a}`;
94
+ }));
95
+ return t;
96
+ }));
97
+ u.set(this, (async () => {
98
+ this.merging = true;
99
+ const t = new Map(this.objectsStatesMap);
100
+ o(this, h, "f").forEach((e => {
101
+ t.set(e, "merging");
102
+ }));
103
+ this.objectsStatesMap = t;
104
+ await this.mergeObjectsCallback(o(this, h, "f"));
105
+ }));
106
+ g.set(this, (t => async () => {
107
+ this.merging = true;
108
+ const e = new Map(this.objectsStatesMap);
109
+ e.set(t, "merging");
110
+ this.objectsStatesMap = e;
111
+ await this.mergeObjectsCallback([ t ]);
112
+ }));
113
+ b.set(this, (t => {
114
+ let i;
115
+ let r;
116
+ let a;
117
+ if (t === "Deleted") {
118
+ i = E;
119
+ r = o(this, c, "f").objects.actions.delete;
120
+ a = "--mer-icon__error";
121
+ } else if (t === "Inserted") {
122
+ i = S;
123
+ r = o(this, c, "f").objects.actions.insert;
124
+ a = "--mer-icon__success";
125
+ } else {
126
+ // modified
127
+ i = N;
128
+ r = o(this, c, "f").objects.actions.modify;
129
+ a = "--mer-icon__warning";
130
+ }
131
+ return e("span", {
132
+ class: "custom-icon-text-wrapper"
133
+ }, e("ch-image", {
134
+ type: "mask",
135
+ class: "icon-md",
136
+ src: i,
137
+ style: {
138
+ backgroundColor: `var(${a})`
139
+ }
140
+ }), `${r}`);
141
+ }));
142
+ f.set(this, ((t = false) => {
143
+ var e, i;
144
+ if (((e = this.commitInformation) === null || e === void 0 ? void 0 : e.length) > 1) {
145
+ // more than one commit
146
+ return t ? `${this.commitInformation[0].id} ... ${this.commitInformation[this.commitInformation.length - 1].id}` : `${o(this, d, "f")} ${this.commitInformation[0].id} ... ${this.commitInformation[this.commitInformation.length - 1].id}`;
147
+ } else if (((i = this.commitInformation) === null || i === void 0 ? void 0 : i.length) === 1) {
148
+ // just one commit
149
+ return t ? this.commitInformation[0].id : `${o(this, d, "f")} ${this.commitInformation[0].id}`;
150
+ } else {
151
+ // Probably commits have not been loaded yet (loading state)
152
+ return t ? `${o(this, c, "f").loading}` : `${o(this, d, "f")} ${o(this, c, "f").loading}`;
153
+ }
154
+ }));
155
+ _.set(this, (t => {
156
+ var e;
157
+ const i = new Date(t);
158
+ const r = ((e = navigator.languages) === null || e === void 0 ? void 0 : e[0]) || navigator.language;
159
+ return `${i.toLocaleDateString(r)} ${i.toLocaleTimeString(r, {
160
+ hour: "2-digit",
161
+ minute: "2-digit",
162
+ hour12: false
163
+ })}`;
164
+ }));
165
+ v.set(this, (() => {
166
+ const t = false;
167
+ const i = this.menuContextAction === "Inserted";
168
+ const r = this.menuContextAction === "Inserted";
169
+ const a = false;
170
+ return [ e("button", {
171
+ type: "button",
172
+ class: "button-tertiary",
173
+ disabled: t
174
+ }, o(this, c, "f").objectActions.open), e("button", {
175
+ type: "button",
176
+ class: "button-tertiary",
177
+ disabled: i
178
+ }, o(this, c, "f").objectActions.compareWithCurrentRevision), e("button", {
179
+ type: "button",
180
+ class: "button-tertiary",
181
+ disabled: r
182
+ }, o(this, c, "f").objectActions.revisionChanges), e("button", {
183
+ type: "button",
184
+ class: "button-tertiary",
185
+ disabled: a
186
+ }, o(this, c, "f").objectActions.previewMerge) ];
187
+ }));
188
+ w.set(this, ((t, i) => {
189
+ if (t === "merging") {
190
+ return e("span", {
191
+ class: "merging-spinner-caption"
192
+ }, o(this, c, "f").states.merging);
193
+ }
194
+ const r = `pill pill--${t}`;
195
+ if (this.mergePillAsButton && (t === "to-merge" || t === "to-merge-marked")) {
196
+ return e("button", {
197
+ class: {
198
+ [r]: true,
199
+ "button-secondary": true
200
+ },
201
+ onClick: o(this, g, "f").call(this, i)
202
+ }, o(this, c, "f").statesForButton[t]);
203
+ } else {
204
+ return e("span", {
205
+ class: r
206
+ }, o(this, c, "f").states[t]);
207
+ }
208
+ }));
209
+ y.set(this, (t => {
210
+ const i = t.icon;
211
+ return e("span", {
212
+ class: "custom-icon-text-wrapper"
213
+ }, e("ch-image", {
214
+ class: "icon-md",
215
+ src: i
216
+ }), `${t.name}`);
217
+ }));
218
+ k.set(this, (() => this.objectsFiltered.map((t => {
219
+ const i = this.markedObjectsSet.has(t.id);
220
+ const r = this.alreadyMergedObjectsIdsArray.find((e => e === t.id));
221
+ const a = this.commitObjectsMessagesMap.get(t.id);
222
+ const s = this.objectsStatesMap.get(t.id);
223
+ let l;
224
+ if (s === "error") {
225
+ l = D;
226
+ } else if (s === "warning") {
227
+ l = A;
228
+ }
229
+ return e("ch-tabular-grid-row", {
230
+ class: "tabular-grid-row",
231
+ key: t.id,
232
+ rowid: t.id,
233
+ ref: t => i && (t === null || t === void 0 ? void 0 : t.setAttribute("marked", "true"))
234
+ }, e("ch-tabular-grid-cell", {
235
+ "cell-type": "rich",
236
+ "row-selector": "true",
237
+ class: {
238
+ "tabular-grid-cell": true,
239
+ "no-checkbox-custom-selector": r
240
+ },
241
+ size: "max-content"
242
+ }, t.name), e("ch-tabular-grid-cell", {
243
+ class: "tabular-grid-cell"
244
+ }, o(this, y, "f").call(this, t.type)), e("ch-tabular-grid-cell", {
245
+ class: "tabular-grid-cell"
246
+ }, t.description), e("ch-tabular-grid-cell", {
247
+ class: "tabular-grid-cell"
248
+ }, o(this, b, "f").call(this, t.actionTaken)), e("ch-tabular-grid-cell", {
249
+ class: "tabular-grid-cell tabular-grid-cell--for-pill"
250
+ }, o(this, w, "f").call(this, this.objectsStatesMap.get(t.id), t.id)), e("ch-tabular-grid-cell", {
251
+ class: "tabular-grid-cell tabular-grid-cell--settings-custom-selector",
252
+ "cell-type": "rich",
253
+ "row-actions": "true"
254
+ }), a && e("ch-tabular-grid-rowset", {
255
+ class: "tabular-grid-rowset"
256
+ }, e("ch-tabular-grid-rowset-empty", {
257
+ class: {
258
+ "tabular-grid-rowset-empty": true,
259
+ [s]: true
260
+ }
261
+ }, e("p", {
262
+ class: "warning-error-description"
263
+ }, e("ch-image", {
264
+ class: "icon-md warning-error-icon",
265
+ src: l
266
+ }), a))));
267
+ }))));
268
+ x.set(this, (t => {
269
+ const e = t.detail.rowId;
270
+ o(this, $, "f").call(this, e);
271
+ }));
272
+ M.set(this, (t => {
273
+ const e = new Set;
274
+ const i = new Map(this.objectsStatesMap);
275
+ const r = t.detail.rowsId;
276
+ const a = r.filter((t => !this.alreadyMergedObjectsIdsArray.includes(t)));
277
+ n(this, h, [ ...a ], "f");
278
+ // Update markedObjectsSet
279
+ o(this, h, "f").forEach((t => {
280
+ e.add(t);
281
+ }));
282
+ this.markedObjectsSet = e;
283
+ this.atLeastOneObjectIsChecked = r.length > 0;
284
+ i.forEach((t => {
285
+ const e = this.objectsStatesMap.get(t);
286
+ if (e !== "to-merge" && e !== "to-merge-marked") {
287
+ return;
288
+ }
289
+ const a = r.findIndex((e => e === t));
290
+ if (a !== -1) {
291
+ i.set(t, "to-merge-marked");
292
+ r.splice(a, 1);
293
+ } else {
294
+ i.set(t, "to-merge");
295
+ }
296
+ }));
297
+ this.objectsStatesMap = i;
298
+ }));
299
+ z.set(this, (t => {
300
+ this.searchValue = t.detail.toLowerCase();
301
+ o(this, j, "f").call(this);
302
+ }));
303
+ W.set(this, (t => {
304
+ this.stateFilterValue = t.detail;
305
+ o(this, j, "f").call(this);
306
+ }));
307
+ $.set(this, (t => {
308
+ const e = this.commitObjects.find((e => e.id === t));
309
+ this.menuContextAction = e.actionTaken;
310
+ }));
311
+ j.set(this, (() => {
312
+ let t = [ ...this.commitObjects ];
313
+ // filter by state (ch-combo-box-render) ...
314
+ if (this.stateFilterValue !== "all") {
315
+ t = t.filter((t => {
316
+ const e = this.objectsStatesMap.get(t.id);
317
+ return e === this.stateFilterValue;
318
+ }));
319
+ }
320
+ // and filter by value (ch-edit) as well
321
+ t = t.filter((t => {
322
+ const e = t.name.toLowerCase().includes(this.searchValue);
323
+ const i = t.type.name.toLowerCase().includes(this.searchValue);
324
+ const r = t.description.toLowerCase().includes(this.searchValue);
325
+ if (e || i || r) {
326
+ return true;
327
+ }
328
+ return false;
329
+ }));
330
+ this.objectsFiltered = t;
331
+ }));
332
+ this.alreadyMergedObjectsIdsArray = [];
333
+ this.atLeastOneObjectIsChecked = false;
334
+ this.loading = true;
335
+ this.menuContextAction = undefined;
336
+ this.objectsFiltered = [];
337
+ this.searchValue = "";
338
+ this.stateFilterValue = C;
339
+ this.markedObjectsSet = new Set;
340
+ this.objectsStatesMap = new Map;
341
+ this.commitObjectsMessagesMap = new Map;
342
+ this.merging = false;
343
+ this.commitDetail = undefined;
344
+ this.commitInformation = [];
345
+ this.commitObjects = [];
346
+ this.enableRowOptions = false;
347
+ this.hideFilters = false;
348
+ this.mergeObjectsCallback = undefined;
349
+ this.mergePillAsButton = undefined;
350
+ }
351
+ objectsStatesMapChanged(t) {
352
+ const e = [ ...t.entries() ].find((([, t]) => t === "merging"));
353
+ if (!e) {
354
+ this.merging = false;
355
+ }
356
+ }
357
+ commitObjectsChanged(t) {
358
+ if (t.length) {
359
+ // This is the first and only objects asignment
360
+ this.loading = false;
361
+ // All commit objects begin as "pending to merge"
362
+ t.forEach((t => {
363
+ this.objectsStatesMap.set(t.id, "to-merge");
364
+ }));
365
+ this.objectsFiltered = this.commitObjects;
366
+ }
367
+ }
368
+ async componentWillLoad() {
369
+ var t;
370
+ n(this, c, await s.getComponentStrings(this.el), "f");
371
+ n(this, d, this.commitInformation.length > 1 ? o(this, c, "f").commmits : o(this, c, "f").commmit, "f");
372
+ // Initiate "states" combo box filter
373
+ n(this, p, [ {
374
+ caption: o(this, c, "f").states.all,
375
+ value: C
376
+ }, {
377
+ caption: o(this, c, "f").states["to-merge"],
378
+ value: "to-merge"
379
+ }, {
380
+ caption: o(this, c, "f").states.warning,
381
+ value: "warning"
382
+ }, {
383
+ caption: o(this, c, "f").states.error,
384
+ value: "error"
385
+ }, {
386
+ caption: o(this, c, "f").states.merged,
387
+ value: "merged"
388
+ } ], "f");
389
+ if ((t = this.commitObjects) === null || t === void 0 ? void 0 : t.length) {
390
+ // if commitObjects already set...
391
+ this.commitObjectsChanged(this.commitObjects);
392
+ }
393
+ }
394
+ /**
395
+ * It allows the host updating an object state, by providing the object id.
396
+ * @param objectId The ID of the object to update.
397
+ * @param newState The new state to set on the object.
398
+ * @param message Optional message explaining the change.
399
+ *
400
+ * @example
401
+ * bringChanges.updateObjectState('obj-24', "merging", null);
402
+ * bringChanges.updateObjectState('obj-27', "error", "The server did not respond.");
403
+ */ async updateObjectState(t, e, i) {
404
+ // update object state
405
+ const r = new Map(this.objectsStatesMap);
406
+ r.set(t, e);
407
+ this.objectsStatesMap = r;
408
+ // add message if state is "warning" or "error"
409
+ if ((i === null || i === void 0 ? void 0 : i.length) > 0) {
410
+ this.commitObjectsMessagesMap.set(t, i);
411
+ }
412
+ if (e === "merged") {
413
+ // remove from checked
414
+ n(this, h, o(this, h, "f").filter((e => e !== t)), "f");
415
+ // add to "already merged". This will hide the checkbox
416
+ this.alreadyMergedObjectsIdsArray.push(t);
417
+ // unmark checkbox:
418
+ this.tabularGridEl.markRow(t, false);
419
+ // remove message if any
420
+ this.commitObjectsMessagesMap.delete(t);
421
+ }
422
+ }
423
+ render() {
424
+ const t = this.alreadyMergedObjectsIdsArray.length !== this.commitObjects.length;
425
+ const r = this.merging || this.loading;
426
+ return e(i, {
427
+ class: "widget"
428
+ }, e("ch-theme", {
429
+ model: T
430
+ }), e("section", {
431
+ class: "section"
432
+ }, e("header", {
433
+ class: "header spacing-body-inline spacing-body-block-start"
434
+ }, e("div", {
435
+ // header details
436
+ class: "header__detail"
437
+ }, e("p", {
438
+ class: "detail__title subtitle-semi-bold-xs"
439
+ }, o(this, c, "f").commitDetail.bringChangesDetail), e("p", {
440
+ class: "detail__commit-name subtitle-semi-bold-s"
441
+ }, o(this, f, "f").call(this)), e("div", {
442
+ // genexus server
443
+ class: "detail__genexus-server field field-block"
444
+ }, e("span", {
445
+ class: I
446
+ }, o(this, c, "f").commitDetail.genexusServer), e("a", {
447
+ class: "detail__link body-regular-s",
448
+ href: this.commitDetail.genexusServer,
449
+ target: "_blank"
450
+ }, this.commitDetail.genexusServer)), e("div", {
451
+ // knowledge base
452
+ class: "detail__knowledge-base field field-block"
453
+ }, e("span", {
454
+ class: I
455
+ }, o(this, c, "f").commitDetail.knowledgeBase), e("p", {
456
+ class: "body-regular-s"
457
+ }, this.commitDetail.knowledgeBase)), e("div", {
458
+ // current version
459
+ class: "detail__current-version field field-block"
460
+ }, e("span", {
461
+ class: I
462
+ }, o(this, c, "f").commitDetail.currentVersion), e("a", {
463
+ class: "body-regular-s"
464
+ }, this.commitDetail.currentVersion)), e("div", {
465
+ // merge from version
466
+ class: "detail__merge-from-version field field-block"
467
+ }, e("span", {
468
+ class: I
469
+ }, o(this, c, "f").commitDetail.mergeFromVersion), e("p", {
470
+ class: "body-regular-s"
471
+ }, this.commitDetail.mergeFromVersion))), e("div", {
472
+ // header information
473
+ class: "header__information"
474
+ }, e("p", {
475
+ class: "information__title subtitle-semi-bold-xs"
476
+ }, o(this, c, "f").commitInformation.title), e("div", {
477
+ // header information (col-1)
478
+ class: "information__col-1"
479
+ }, e("div", {
480
+ // IDs
481
+ class: "field field-block"
482
+ }, e("span", {
483
+ class: I
484
+ }, this.commitInformation.length === 1 ? o(this, c, "f").commitInformation.id : o(this, c, "f").commitInformation.ids), e("p", {
485
+ class: "body-regular-s"
486
+ }, o(this, f, "f").call(this, true))), this.commitInformation.length === 1 ? e("div", {
487
+ class: "field field-block"
488
+ }, e("span", {
489
+ class: I
490
+ }, o(this, c, "f").commitInformation.date), e("p", {
491
+ class: "body-regular-s"
492
+ }, o(this, _, "f").call(this, this.commitInformation[0].date))) : [ e("div", {
493
+ class: "field field-block"
494
+ }, e("span", {
495
+ class: I
496
+ }, o(this, c, "f").commitInformation.from), e("p", {
497
+ class: "body-regular-s"
498
+ }, o(this, _, "f").call(this, this.commitInformation[0].date))), e("div", {
499
+ class: "field field-block"
500
+ }, e("span", {
501
+ class: I
502
+ }, o(this, c, "f").commitInformation.to), e("p", {
503
+ class: "body-regular-s"
504
+ }, o(this, _, "f").call(this, this.commitInformation[this.commitInformation.length - 1].date))) ]), e("div", {
505
+ // header information (col-2)
506
+ class: "information__col-2"
507
+ }, e("div", {
508
+ // To
509
+ class: "field field-block"
510
+ }, e("label", {
511
+ class: I,
512
+ htmlFor: "commit-comments"
513
+ }, this.commitInformation.length > 1 ? o(this, c, "f").commitInformation.comments : o(this, c, "f").commitInformation.comment), e("div", {
514
+ class: "input-comments-container"
515
+ }, e("ch-edit", {
516
+ id: "commit-comments",
517
+ class: "input scrollable input-comments body-regular-s",
518
+ type: "text",
519
+ multiline: true,
520
+ readonly: true,
521
+ value: o(this, m, "f").call(this)
522
+ })))))), e("div", {
523
+ class: {
524
+ "controls-container": true,
525
+ filter: !this.hideFilters,
526
+ "spacing-body-inline": true
527
+ }
528
+ }, !this.hideFilters && [ e("ch-edit", {
529
+ class: "input",
530
+ disabled: r,
531
+ startImgSrc: O,
532
+ placeholder: o(this, c, "f").filter.searchPlaceholder,
533
+ type: "search",
534
+ onInput: o(this, z, "f")
535
+ }), e("ch-combo-box-render", {
536
+ class: "combo-box",
537
+ disabled: r,
538
+ model: o(this, p, "f"),
539
+ value: this.stateFilterValue,
540
+ onInput: o(this, W, "f"),
541
+ placeholder: o(this, c, "f").filter.statePlaceholder
542
+ }) ], e("button", {
543
+ class: "button-primary button-merge-checked",
544
+ disabled: !this.atLeastOneObjectIsChecked || r,
545
+ onClick: o(this, u, "f")
546
+ }, o(this, c, "f").filter.mergeChecked)), e("div", {
547
+ class: "main spacing-body"
548
+ }, this.commitObjects.length ? e("ch-tabular-grid", {
549
+ class: {
550
+ "tabular-grid": true,
551
+ "objects-tabular-grid": true,
552
+ "disabled-custom-selector": this.merging,
553
+ "empty-result": this.objectsFiltered.length === 0
554
+ },
555
+ keyboardNavigationMode: "focus",
556
+ rowSelectionMode: "multiple",
557
+ onRowMarkingChanged: o(this, M, "f"),
558
+ onRowContextMenu: o(this, x, "f"),
559
+ ref: t => this.tabularGridEl = t
560
+ }, e("ch-tabular-grid-columnset", {
561
+ class: "tabular-grid-column-set"
562
+ }, e("ch-tabular-grid-column", {
563
+ class: "tabular-grid-column",
564
+ columnId: "name",
565
+ columnName: o(this, c, "f").objects.name,
566
+ columnType: "rich",
567
+ richRowSelector: t,
568
+ richRowSelectorMode: "mark",
569
+ settingable: false,
570
+ size: "max-content"
571
+ }), e("ch-tabular-grid-column", {
572
+ class: "tabular-grid-column",
573
+ columnId: "type",
574
+ columnName: o(this, c, "f").objects.type,
575
+ settingable: false,
576
+ size: "max-content"
577
+ }), e("ch-tabular-grid-column", {
578
+ class: "tabular-grid-column",
579
+ columnId: "description",
580
+ columnName: o(this, c, "f").objects.description,
581
+ settingable: false,
582
+ size: "auto"
583
+ }), e("ch-tabular-grid-column", {
584
+ class: "tabular-grid-column",
585
+ columnId: "action",
586
+ columnName: o(this, c, "f").objects.action,
587
+ settingable: false,
588
+ size: "max-content"
589
+ }), e("ch-tabular-grid-column", {
590
+ // size of this column should the enough for the largest pill, and no more.
591
+ // this prevents layout shifts when pills state changes.
592
+ class: "tabular-grid-column",
593
+ columnId: "status",
594
+ columnName: o(this, c, "f").objects.status,
595
+ settingable: false,
596
+ size: "100px"
597
+ }), e("ch-tabular-grid-column", {
598
+ class: "tabular-grid-column tabular-grid-column--settings-custom-selector",
599
+ columnId: "actions",
600
+ columnName: "Actions",
601
+ columnNameHidden: true,
602
+ size: "min-content",
603
+ columnType: "rich",
604
+ richRowActions: true,
605
+ settingable: false
606
+ })), o(this, k, "f").call(this), this.enableRowOptions && e("ch-tabular-grid-row-actions", {
607
+ class: "tabular-grid-row-actions",
608
+ showOnRowActions: true
609
+ }, o(this, v, "f").call(this)), this.enableRowOptions && e("ch-tabular-grid-row-actions", {
610
+ class: "tabular-grid-row-actions",
611
+ showOnRowContext: true
612
+ }, o(this, v, "f").call(this)), e("ch-tabular-grid-rowset", {
613
+ class: "tabular-grid-rowset"
614
+ }, this.objectsFiltered.length === 0 && e("ch-tabular-grid-rowset-empty", null, e("gx-ide-empty-state", {
615
+ class: "empty-state",
616
+ isAnimated: true,
617
+ stateIconSrc: R,
618
+ stateTitle: "No object matched your filter"
619
+ })))) : e("gx-ide-loader", {
620
+ cancelLabel: o(this, c, "f").loader.cancelLabel,
621
+ loaderTitle: o(this, c, "f").loader.title,
622
+ description: o(this, c, "f").loader.description,
623
+ show: true,
624
+ class: "loader"
625
+ }))));
626
+ }
627
+ static get assetsDirs() {
628
+ return [ "gx-ide-assets/team-dev-bring-changes" ];
629
+ }
630
+ get el() {
631
+ return r(this);
632
+ }
633
+ static get watchers() {
634
+ return {
635
+ objectsStatesMap: [ "objectsStatesMapChanged" ],
636
+ commitObjects: [ "commitObjectsChanged" ]
637
+ };
638
+ }
639
+ };
640
+
641
+ c = new WeakMap, d = new WeakMap, p = new WeakMap, h = new WeakMap, m = new WeakMap,
642
+ u = new WeakMap, g = new WeakMap, b = new WeakMap, f = new WeakMap, _ = new WeakMap,
643
+ v = new WeakMap, w = new WeakMap, y = new WeakMap, k = new WeakMap, x = new WeakMap,
644
+ M = new WeakMap, z = new WeakMap, W = new WeakMap, $ = new WeakMap, j = new WeakMap;
645
+
646
+ L.style = l;
647
+
648
+ export { L as gx_ide_team_dev_bring_changes };
649
+ //# sourceMappingURL=p-4d4ed703.entry.js.map