@genexus/genexus-ide-ui 1.1.21 → 1.1.22

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 (129) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-ai-message.cjs.entry.js +1 -1
  3. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +1 -1
  4. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +1 -1
  5. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
  6. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +6 -9
  8. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js.map +1 -1
  9. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +345 -177
  10. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  11. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +13 -36
  12. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js.map +1 -1
  13. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +17 -13
  14. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  15. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
  16. package/dist/cjs/{helpers-30f109a4.js → helpers-b30b36b4.js} +2 -2
  17. package/dist/cjs/{helpers-30f109a4.js.map → helpers-b30b36b4.js.map} +1 -1
  18. package/dist/cjs/loader.cjs.js +1 -1
  19. package/dist/cjs/utilities-6118dc24.js +78 -0
  20. package/dist/cjs/utilities-6118dc24.js.map +1 -0
  21. package/dist/collection/common/helpers.js +1 -1
  22. package/dist/collection/common/helpers.js.map +1 -1
  23. package/dist/collection/common/types.js.map +1 -1
  24. package/dist/collection/components/team-dev/bring-changes/bring-changes.css +6 -6
  25. package/dist/collection/components/team-dev/bring-changes/bring-changes.js +5 -8
  26. package/dist/collection/components/team-dev/bring-changes/bring-changes.js.map +1 -1
  27. package/dist/collection/components/team-dev/commit/commit.css +48 -665
  28. package/dist/collection/components/team-dev/commit/commit.js +407 -251
  29. package/dist/collection/components/team-dev/commit/commit.js.map +1 -1
  30. package/dist/collection/components/team-dev/commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +20 -3
  31. package/dist/collection/components/team-dev/commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.ja.json +20 -3
  32. package/dist/collection/components/team-dev/commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +20 -3
  33. package/dist/collection/components/team-dev/commit/helpers.js +10 -0
  34. package/dist/collection/components/team-dev/commit/helpers.js.map +1 -0
  35. package/dist/collection/components/team-dev/common/types.js +2 -0
  36. package/dist/collection/components/team-dev/common/types.js.map +1 -0
  37. package/dist/collection/components/team-dev/common/utilities.js +67 -0
  38. package/dist/collection/components/team-dev/common/utilities.js.map +1 -0
  39. package/dist/collection/components/team-dev/history/history.css +6 -0
  40. package/dist/collection/components/team-dev/history/history.js +11 -34
  41. package/dist/collection/components/team-dev/history/history.js.map +1 -1
  42. package/dist/collection/components/team-dev/update/update.js +4 -10
  43. package/dist/collection/components/team-dev/update/update.js.map +1 -1
  44. package/dist/components/gx-ide-team-dev-bring-changes.js +6 -9
  45. package/dist/components/gx-ide-team-dev-bring-changes.js.map +1 -1
  46. package/dist/components/gx-ide-team-dev-commit.js +369 -191
  47. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  48. package/dist/components/gx-ide-team-dev-history.js +12 -35
  49. package/dist/components/gx-ide-team-dev-history.js.map +1 -1
  50. package/dist/components/gx-ide-team-dev-update.js +16 -12
  51. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  52. package/dist/components/helpers.js +1 -1
  53. package/dist/components/helpers.js.map +1 -1
  54. package/dist/components/utilities.js +75 -0
  55. package/dist/components/utilities.js.map +1 -0
  56. package/dist/esm/genexus-ide-ui.js +1 -1
  57. package/dist/esm/gx-ide-ai-message.entry.js +1 -1
  58. package/dist/esm/gx-ide-dashboard-home.entry.js +1 -1
  59. package/dist/esm/gx-ide-new-environment.entry.js +1 -1
  60. package/dist/esm/gx-ide-new-kb.entry.js +1 -1
  61. package/dist/esm/gx-ide-object-selector.entry.js +1 -1
  62. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +6 -9
  63. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js.map +1 -1
  64. package/dist/esm/gx-ide-team-dev-commit.entry.js +345 -177
  65. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  66. package/dist/esm/gx-ide-team-dev-history.entry.js +13 -36
  67. package/dist/esm/gx-ide-team-dev-history.entry.js.map +1 -1
  68. package/dist/esm/gx-ide-team-dev-update.entry.js +17 -13
  69. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  70. package/dist/esm/gx-ide-ww-images.entry.js +1 -1
  71. package/dist/esm/{helpers-10479d69.js → helpers-a4f16ffb.js} +2 -2
  72. package/dist/esm/{helpers-10479d69.js.map → helpers-a4f16ffb.js.map} +1 -1
  73. package/dist/esm/loader.js +1 -1
  74. package/dist/esm/utilities-6fdb43e4.js +75 -0
  75. package/dist/esm/utilities-6fdb43e4.js.map +1 -0
  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/team-dev-commit/langs/team-dev-commit.lang.en.json +20 -3
  79. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.ja.json +20 -3
  80. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +20 -3
  81. package/dist/genexus-ide-ui/{p-b465f29d.entry.js → p-012cfb1d.entry.js} +2 -2
  82. package/dist/genexus-ide-ui/p-0f8a8202.js +87 -0
  83. package/dist/genexus-ide-ui/p-0f8a8202.js.map +1 -0
  84. package/dist/genexus-ide-ui/{p-3b5a4e2e.entry.js → p-11b8f81d.entry.js} +2 -2
  85. package/dist/genexus-ide-ui/{p-82878950.entry.js → p-19d197c5.entry.js} +8 -8
  86. package/dist/genexus-ide-ui/{p-667965d3.entry.js → p-72b5d3e4.entry.js} +2 -2
  87. package/dist/genexus-ide-ui/{p-74a0cb25.entry.js → p-810ad95f.entry.js} +2 -2
  88. package/dist/genexus-ide-ui/{p-ac131847.entry.js → p-863ef4de.entry.js} +2 -2
  89. package/dist/genexus-ide-ui/{p-3fbc5a02.entry.js → p-884e0ed9.entry.js} +97 -104
  90. package/dist/genexus-ide-ui/p-884e0ed9.entry.js.map +1 -0
  91. package/dist/genexus-ide-ui/{p-9ddea83b.js → p-957046fd.js} +2 -2
  92. package/dist/genexus-ide-ui/p-957046fd.js.map +1 -0
  93. package/dist/genexus-ide-ui/p-ca706700.entry.js +484 -0
  94. package/dist/genexus-ide-ui/p-ca706700.entry.js.map +1 -0
  95. package/dist/genexus-ide-ui/p-d4ef0c35.entry.js +683 -0
  96. package/dist/genexus-ide-ui/p-d4ef0c35.entry.js.map +1 -0
  97. package/dist/genexus-ide-ui/{p-75a5c51f.entry.js → p-fa52a417.entry.js} +153 -149
  98. package/dist/genexus-ide-ui/p-fa52a417.entry.js.map +1 -0
  99. package/dist/types/common/types.d.ts +0 -1
  100. package/dist/types/components/team-dev/bring-changes/bring-changes.d.ts +1 -4
  101. package/dist/types/components/team-dev/commit/commit.d.ts +53 -70
  102. package/dist/types/components/team-dev/commit/helpers.d.ts +4 -0
  103. package/dist/types/components/team-dev/common/types.d.ts +1 -0
  104. package/dist/types/components/team-dev/common/utilities.d.ts +25 -0
  105. package/dist/types/components/team-dev/history/history.d.ts +1 -1
  106. package/dist/types/components/team-dev/update/update.d.ts +2 -1
  107. package/dist/types/components.d.ts +7 -15
  108. package/package.json +1 -1
  109. package/dist/cjs/render-combo-items-e774f796.js +0 -18
  110. package/dist/cjs/render-combo-items-e774f796.js.map +0 -1
  111. package/dist/components/render-combo-items.js +0 -16
  112. package/dist/components/render-combo-items.js.map +0 -1
  113. package/dist/esm/render-combo-items-e9c8df5e.js +0 -16
  114. package/dist/esm/render-combo-items-e9c8df5e.js.map +0 -1
  115. package/dist/genexus-ide-ui/p-34fd4875.entry.js +0 -573
  116. package/dist/genexus-ide-ui/p-34fd4875.entry.js.map +0 -1
  117. package/dist/genexus-ide-ui/p-3fbc5a02.entry.js.map +0 -1
  118. package/dist/genexus-ide-ui/p-60e39b2f.entry.js +0 -541
  119. package/dist/genexus-ide-ui/p-60e39b2f.entry.js.map +0 -1
  120. package/dist/genexus-ide-ui/p-75a5c51f.entry.js.map +0 -1
  121. package/dist/genexus-ide-ui/p-9ddea83b.js.map +0 -1
  122. package/dist/genexus-ide-ui/p-f549f6e1.js +0 -17
  123. package/dist/genexus-ide-ui/p-f549f6e1.js.map +0 -1
  124. /package/dist/genexus-ide-ui/{p-b465f29d.entry.js.map → p-012cfb1d.entry.js.map} +0 -0
  125. /package/dist/genexus-ide-ui/{p-3b5a4e2e.entry.js.map → p-11b8f81d.entry.js.map} +0 -0
  126. /package/dist/genexus-ide-ui/{p-82878950.entry.js.map → p-19d197c5.entry.js.map} +0 -0
  127. /package/dist/genexus-ide-ui/{p-667965d3.entry.js.map → p-72b5d3e4.entry.js.map} +0 -0
  128. /package/dist/genexus-ide-ui/{p-74a0cb25.entry.js.map → p-810ad95f.entry.js.map} +0 -0
  129. /package/dist/genexus-ide-ui/{p-ac131847.entry.js.map → p-863ef4de.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"commit.js","sourceRoot":"","sources":["../../../../src/components/team-dev/commit/commit.tsx"],"names":[],"mappings":"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","sourcesContent":["/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Method,\n State\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport {\n TabularGridMarkingChangedEvent,\n TabularGridRowContextMenuEvent,\n TabularGridSelectionChangedEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../../common/locale\";\nimport { config } from \"../../../common/config\";\nimport {\n GxOption,\n ObjectState,\n ContextMenuInfo,\n ObjectType,\n ItemsCheckedState,\n ItemsCheckedResult\n} from \"../../../common/types\";\nimport { renderComboItems } from \"../../../common/render-combo-items\";\nimport { formatDate } from \"../../../common/helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\",\n \"components/button\",\n \"components/checkbox\",\n \"components/edit\",\n \"components/tabular-grid\"\n];\n@Component({\n tag: \"gx-ide-team-dev-commit\",\n styleUrl: \"commit.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-commit\"]\n})\nexport class GxIdeTeamDevCommit {\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private loadDataCalledFirstTime = false; // pending commits grid checkboxes, should be checked, after loadData has loaded commits for the first time.\n private renderedFirstTime = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeTeamDevCommitElement;\n\n // filters\n private patternEl!: HTMLGxgFormTextElement;\n private changeSetEl!: HTMLGxgComboBoxElement;\n private typesEl!: HTMLGxgComboBoxElement;\n private foldersEl!: HTMLGxgComboBoxElement;\n private categoriesEl!: HTMLGxgComboBoxElement;\n // other\n private chGridPendingCommitsEl!: HTMLChGridElement;\n private chGridIgnoredObjectsEl!: HTMLChGridElement;\n private commitCommentEl!: HTMLGxgFormTextareaElement;\n\n // 3.STATE() VARIABLES //\n\n @State() filtersHidden = true;\n @State() comment = \"\";\n @State() pendingCommits: ModifiedObjectData[] = [];\n @State() ignoredObjects: ModifiedObjectData[] = [];\n @State() commitButtonEnabled = false;\n @State() filterHasConditions = false;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Possible values for ChangeSet filter\n */\n @Prop() readonly changeSet: GxOption[];\n\n /**\n * Possible values for Type filter\n */\n @Prop() readonly types: ObjectType[];\n\n /**\n * Possible values for Folders filter\n */\n @Prop() readonly folders: GxOption[];\n\n /**\n * Possible values for Categories filter\n */\n @Prop() readonly categories: GxOption[];\n\n /**\n * Callback invoked when user press Recent Comments button.\n */\n @Prop() readonly getRecentCommentCallback: GetRecentComment;\n\n /**\n * Callback invoked when user wants to reload the grid\n */\n @Prop() readonly loadCallback: LoadCallback;\n\n /**\n * Callback invoked when user starts the commit process\n */\n @Prop() readonly commitCallback: CommitCallback;\n\n /**\n * Callback that should be invoked when the user selects rows from the grids\n */\n @Prop() readonly selectCallback: CommitSelectCallback;\n\n /**\n * Callback invoked when user check/uncheck any item from the 'Pending to Commit' grid\n */\n @Prop() readonly pendingItemsCheckedCallback!: PendingItemsCheckedCallback;\n\n /**\n * Callback that must be invoked when user activate the context menu in any of the grids\n */\n @Prop() readonly objectsContextMenuCallback: ObjectsContextMenuCallback;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n async componentDidLoad() {\n await this.loadData();\n this.loadDataCalledFirstTime = true;\n this.componentDidLoadEvent.emit(true);\n this.conditionToCommit();\n this.commitCommentEl.focus();\n }\n\n async componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n\n if (this.loadDataCalledFirstTime) {\n // call this method only once\n await this.markAllPendingCommitsRows();\n // attach \"rowMarkingChanged\" after rows have been checked for the first time.\n this.chGridPendingCommitsEl.addEventListener(\n \"rowMarkingChanged\",\n this.pendingCommitsRowMarkingChangedHandler\n );\n this.loadDataCalledFirstTime = false;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n /**\n * The method used by the Host to instruct the component to force a data refresh in the grids.\n */\n @Method()\n async reload(): Promise<void> {\n this.loadData();\n }\n\n // 9.LOCAL METHODS //\n\n private conditionToCommit = async () => {\n const commitComment = !!this.commitCommentEl.value.length;\n const pendingChecked = await this.chGridPendingCommitsEl.getMarkedRows();\n if (commitComment && pendingChecked.length > 0) {\n this.commitButtonEnabled = true;\n } else {\n this.commitButtonEnabled = false;\n }\n };\n\n private markAllPendingCommitsRows = () => {\n this.chGridPendingCommitsEl.markAllRows();\n };\n\n private togglePendingCommitsCheckboxes = async (\n itemsToToggle: ItemsCheckedResult\n ) => {\n if (this.chGridPendingCommitsEl) {\n const itemsToCheck: string[] = itemsToToggle.itemsToCheck;\n const itemsToUncheck: string[] = itemsToToggle.itemsToUncheck;\n // check\n for (const rowId of itemsToCheck) {\n await this.chGridPendingCommitsEl.markRow(rowId, true);\n }\n // uncheck\n for (const rowId of itemsToUncheck) {\n await this.chGridPendingCommitsEl.markRow(rowId, false);\n }\n }\n };\n\n private revertPendingCommitsCheckboxes = async (\n addedRowsIds: string[],\n removedRowsId: string[]\n ) => {\n if (this.chGridPendingCommitsEl) {\n for (const rowId of addedRowsIds) {\n await this.chGridPendingCommitsEl.markRow(rowId, false);\n }\n for (const rowId of removedRowsId) {\n await this.chGridPendingCommitsEl.markRow(rowId, true);\n }\n }\n };\n\n private renderIconState = (state: ObjectState): HTMLChImageElement => {\n let icon: string;\n switch (state) {\n case \"inserted\":\n icon = \"gx-server/new\";\n break;\n case \"modified\":\n icon = \"gx-server/changes-commit-pending\";\n break;\n case \"deleted\":\n icon = \"gx-server/delete\";\n break;\n case \"conflicted\":\n icon = \"gx-server/conflict\";\n break;\n }\n return <ch-image src={icon} class=\"icon-md\"></ch-image>;\n };\n\n private pendingCommitsRowMarkingChangedHandler = async (\n e: CustomEvent<TabularGridMarkingChangedEvent>\n ): Promise<void> => {\n // remove \"rowMarkingChanged\" until checkboxes have been added/removed on togglePendingCommitsCheckboxes, to prevent loops.\n this.chGridPendingCommitsEl.removeEventListener(\n \"rowMarkingChanged\",\n this.pendingCommitsRowMarkingChangedHandler\n );\n if (this.chGridPendingCommitsEl) {\n const addedRowsIds = e.detail.addedRowsId;\n const removedRowsId = e.detail.removedRowsId;\n const pendingItemCheckedResult = await this.pendingItemsCheckedCallback({\n itemsChecked: addedRowsIds,\n itemsUnchecked: removedRowsId\n });\n if (pendingItemCheckedResult === undefined) {\n // undo check/uncheck\n await this.revertPendingCommitsCheckboxes(addedRowsIds, removedRowsId);\n } else {\n await this.togglePendingCommitsCheckboxes(pendingItemCheckedResult);\n }\n this.conditionToCommit();\n this.chGridPendingCommitsEl.addEventListener(\n \"rowMarkingChanged\",\n this.pendingCommitsRowMarkingChangedHandler\n );\n }\n };\n\n private objectsOnContextMenuCallbackHandler =\n (grid: CommitSourceType) =>\n async (ev: CustomEvent<TabularGridRowContextMenuEvent>) => {\n ev.preventDefault();\n ev.stopPropagation();\n let selection: string[] = [];\n if (grid === \"commit\") {\n selection = ev.detail.selectedRowsId;\n } else if (grid === \"ignored\") {\n selection = await this.chGridIgnoredObjectsEl.getSelectedRows();\n }\n if (this.objectsContextMenuCallback) {\n await this.objectsContextMenuCallback(grid, {\n selection: selection,\n clientX: ev.detail.clientX,\n clientY: ev.detail.clientY\n });\n }\n };\n\n private gridOnSelectionChangedCallbackHandler =\n (grid: CommitSourceType) =>\n async (ev: CustomEvent<TabularGridSelectionChangedEvent>) => {\n if (this.selectCallback) {\n await this.selectCallback(grid, ev.detail.rowsId);\n }\n };\n\n /* pending commits grid render*/\n private renderPendingCommitsGrid = (): Element => {\n return (\n <ch-tabular-grid\n class=\"tabular-grid tabular-grid-td-commit\"\n rowSelectionMode=\"multiple\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.chGridPendingCommitsEl = el)\n }\n part=\"ch-grid-pending-commits\"\n onRowContextMenu={this.objectsOnContextMenuCallbackHandler(\"commit\")}\n onSelectionChanged={this.gridOnSelectionChangedCallbackHandler(\n \"commit\"\n )}\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnType=\"rich\"\n richRowSelector\n richRowSelectorMode=\"mark\"\n settingable={false}\n sortable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"State\"\n settingable={false}\n sortable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n settingable={false}\n sortable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Name\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Type\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Description\"\n settingable={false}\n size={config.tabularGrid.colSize.commonDouble}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Modified On\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Module\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Local State\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Last Synchronized\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n {/* <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n sortable\n columnName=\"User\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column> */}\n </ch-tabular-grid-columnset>\n\n {this.pendingCommits.map((obj: ModifiedObjectData) => (\n <ch-tabular-grid-row rowid={obj.id} class=\"tabular-grid-row\">\n <ch-tabular-grid-cell\n cell-type=\"rich\"\n row-selector\n class=\"tabular-grid-cell\"\n ></ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.renderIconState(obj.state)}\n </ch-tabular-grid-cell>\n\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image src={obj.iconType} class=\"icon-md\"></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.type}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(obj.modifiedOn)}`}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.module}\n </ch-tabular-grid-cell>\n\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.localState}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(obj.lastSynchronized)}`}\n </ch-tabular-grid-cell>\n {/* <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.user}\n </ch-tabular-grid-cell> */}\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid>\n );\n };\n\n /* ignored objects grid render*/\n private renderIgnoredObjectsGrid = (): Element => {\n return (\n <ch-tabular-grid\n class=\"tabular-grid\"\n rowSelectionMode=\"multiple\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.chGridIgnoredObjectsEl = el)\n }\n part=\"ch-grid-pending-commits\"\n onRowContextMenu={this.objectsOnContextMenuCallbackHandler(\"ignored\")}\n onSelectionChanged={this.gridOnSelectionChangedCallbackHandler(\n \"ignored\"\n )}\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"TypeIcon\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Name\"\n settingable={false}\n sortable\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Type\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Description\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Modified On\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Module\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Local State\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"Last Synchronized\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n {/* <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnName=\"User\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column> */}\n </ch-tabular-grid-columnset>\n\n {this.ignoredObjects.map((obj: ModifiedObjectData) => (\n <ch-tabular-grid-row rowid={obj.id} selected class=\"tabular-grid-row\">\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.renderIconState(obj.state)}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image src={obj.iconType} class=\"icon-md\"></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.type}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(obj.modifiedOn)}`}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.module}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.localState}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(obj.lastSynchronized)}`}\n </ch-tabular-grid-cell>\n {/* <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.user}\n </ch-tabular-grid-cell> */}\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid>\n );\n };\n\n private getRecentCommentHandler = async () => {\n if (this.getRecentCommentCallback) {\n const response = await this.getRecentCommentCallback();\n if (response) {\n this.comment = response;\n }\n }\n };\n\n private commitCallbackHandler = async () => {\n const commitCommentEl = this.commitCommentEl.value;\n this.chGridPendingCommitsEl\n .getMarkedRows()\n .then(async pendingCommitsCheckedIds => {\n await this.commitCallback(pendingCommitsCheckedIds, commitCommentEl);\n /* returns boolean*/\n });\n };\n\n private loadData = async (): Promise<void> => {\n const filtersData: FiltersData = {\n pattern: this.patternEl.value,\n changeSet: this.changeSetEl.value,\n folder: this.foldersEl.value,\n category: this.categoriesEl.value,\n type: this.typesEl.value\n };\n\n this.evaluateFilterConditions();\n\n // this.pendingCommits = null;\n // this.ignoredObjects = null;\n\n return await this.loadCallback(filtersData).then(\n async ({ pending, ignored }) => {\n this.pendingCommits = pending;\n this.ignoredObjects = ignored;\n }\n );\n };\n\n private toggleFiltersHandler = () => {\n this.filtersHidden = !this.filtersHidden;\n };\n\n private evaluateFilterConditions = () => {\n if (\n this.patternEl.value ||\n this.changeSetEl.value ||\n this.typesEl.value ||\n this.foldersEl.value ||\n this.categoriesEl.value\n ) {\n this.filterHasConditions = true;\n } else {\n this.filterHasConditions = false;\n }\n };\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <Host class=\"gx-ide-component\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noContentPadding\n noHeadingPadding\n headingPaddingTop\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n noHeadingBorder\n >\n <div class=\"header\" slot=\"header\">\n <div class=\"header__first-row\">\n <div class=\"header__first-row__left-col\">\n <gxg-label\n part=\"commit-label\"\n labelPosition=\"start\"\n class=\"commit-label\"\n noMargin\n >\n {this._componentLocale.header.commentLabel}\n </gxg-label>\n </div>\n <div class=\"header__first-row__right-col\">\n {/* filter button*/}\n <gxg-button\n onClick={this.toggleFiltersHandler}\n type=\"secondary-icon-only\"\n icon={\n this.filterHasConditions\n ? \"window-tools/filter-conditions\"\n : \"window-tools/filter\"\n }\n part=\"gxg-button gxg-button--show-filter\"\n class=\"filter-btn\"\n ></gxg-button>\n\n {/* reset button*/}\n <gxg-button\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/reset\"\n onClick={this.loadData}\n part=\"gxg-button gxg-button--reload\"\n class=\"reset-btn\"\n ></gxg-button>\n\n {/* recen comments button*/}\n <gxg-button\n class=\"header-button\"\n type=\"outlined\"\n part=\"location\"\n onClick={this.getRecentCommentHandler}\n >\n {this._componentLocale.header.recentCommentsButton}\n </gxg-button>\n </div>\n </div>\n <div class=\"header__second-row\">\n {/* commit comment textarea*/}\n <gxg-form-textarea\n height=\"90px\"\n value={this.comment}\n ref={(el: HTMLGxgFormTextareaElement) =>\n (this.commitCommentEl = el)\n }\n singleLine\n onInput={this.conditionToCommit}\n placeholder={this._componentLocale.header.commentPlaceholder}\n part=\"comment\"\n class=\"commit-textarea\"\n ></gxg-form-textarea>\n </div>\n <div\n class={{\n \"filters-outer-wrapper\": true,\n \"filters-outer-wrapper--hidden\": this.filtersHidden\n }}\n >\n <div\n class={{\n \"filters-inner-wrapper\": true\n }}\n >\n <div\n class={{\n \"header__third-row\": true\n }}\n >\n {/* pattern*/}\n <gxg-label\n part=\"pattern-label\"\n labelPosition=\"start\"\n class=\"pattern-label\"\n noMargin\n >\n {this._componentLocale.filtersMenu.patternLabel}\n </gxg-label>\n <gxg-form-text\n disable-filter\n value=\"\"\n ref={(el: HTMLGxgFormTextElement) =>\n (this.patternEl = el as HTMLGxgFormTextElement)\n }\n display-validation-styles\n display-validation-message\n part=\"pattern-form-text\"\n class=\"pattern-form-text\"\n onInput={this.loadData}\n ></gxg-form-text>\n\n {/* changeset */}\n <gxg-label\n part=\"changeset-label\"\n labelPosition=\"start\"\n class=\"changeset-label\"\n noMargin\n >\n {this._componentLocale.filtersMenu.changesetLabel}\n </gxg-label>\n <gxg-combo-box\n value={this.changeSet[0][\"id\"]}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.changeSetEl = el as HTMLGxgComboBoxElement)\n }\n part=\"changeset-combo\"\n class=\"changeset-combo\"\n display-validation-styles\n display-validation-message\n onValueChanged={this.loadData}\n >\n {renderComboItems(this.changeSet)}\n </gxg-combo-box>\n\n {/* type */}\n <gxg-label\n part=\"type-label\"\n labelPosition=\"start\"\n class=\"type-label\"\n noMargin\n >\n {this._componentLocale.filtersMenu.typeLabel}\n </gxg-label>\n <gxg-combo-box\n labelPosition=\"start\"\n value={this.types[0][\"id\"]}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.typesEl = el as HTMLGxgComboBoxElement)\n }\n part=\"type-combo\"\n class=\"type-combo\"\n onValueChanged={this.loadData}\n >\n {renderComboItems(this.types)}\n </gxg-combo-box>\n\n {/* folder */}\n <gxg-label\n part=\"folder-label\"\n labelPosition=\"start\"\n class=\"folder-label\"\n noMargin\n >\n {this._componentLocale.filtersMenu.folderLabel}\n </gxg-label>\n <gxg-combo-box\n value={this.folders[0][\"id\"]}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.foldersEl = el as HTMLGxgComboBoxElement)\n }\n part=\"folder-combo\"\n display-validation-styles\n display-validation-message\n onValueChanged={this.loadData}\n >\n {renderComboItems(this.folders)}\n </gxg-combo-box>\n\n {/* category */}\n <gxg-label\n part=\"category-label\"\n labelPosition=\"start\"\n class=\"category-label\"\n noMargin\n >\n {this._componentLocale.filtersMenu.categoryLabel}\n </gxg-label>\n <gxg-combo-box\n value={this.categories[0][\"id\"]}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.categoriesEl = el as HTMLGxgComboBoxElement)\n }\n part=\"category-combo\"\n class=\"category-combo\"\n onValueChanged={this.loadData}\n >\n {renderComboItems(this.categories)}\n </gxg-combo-box>\n </div>\n </div>\n </div>\n </div>\n <main class=\"main\">\n <gx-ide-container noContentPadding class=\"grid-container\">\n <div class=\"tabs-container gxi-full-height\">\n <gxg-tabs class=\"gxg-tabs\">\n <gxg-tab-bar slot=\"tab-bar-container\" displayBorder>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={`${this._componentLocale.tabs.pendingCommits} (${this.pendingCommits.length})`}\n tab=\"pending-commits\"\n is-selected\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={`${this._componentLocale.tabs.ignoredObjects} (${this.ignoredObjects.length})`}\n tab=\"ignored-objects\"\n ></gxg-tab-button>\n </gxg-tab-bar>\n <gxg-tab tab=\"pending-commits\" no-padding flex>\n {this.renderPendingCommitsGrid()}\n </gxg-tab>\n <gxg-tab tab=\"ignored-objects\" no-padding flex>\n {this.renderIgnoredObjectsGrid()}\n </gxg-tab>\n </gxg-tabs>\n </div>\n </gx-ide-container>\n </main>\n\n {/* footer */}\n <gxg-button\n slot=\"footer-end\"\n type=\"primary-text-only\"\n onClick={this.commitCallbackHandler}\n part=\"commit-button\"\n disabled={!this.commitButtonEnabled}\n >\n {this._componentLocale.footer.commitButton}\n </gxg-button>\n </gx-ide-container>\n </div>\n </Host>\n );\n }\n}\n\nexport type GetRecentComment = () => Promise<string | undefined>;\n\nexport type LoadCallback = (filters: FiltersData) => Promise<CommitData>;\n\nexport type CommitCallback = (\n selection: string[],\n commitCommentEl: string\n) => Promise<boolean>;\n\nexport type PendingItemsCheckedCallback = (\n pendingItemsCheckedState: ItemsCheckedState\n) => Promise<ItemsCheckedResult | undefined>;\n\nexport type CommitSelectCallback = (\n grid: CommitSourceType,\n selectionIds: string[]\n) => Promise<void>;\n\nexport type ItemCheckedCallback = (\n checkedItemIds: string[]\n) => Promise<ItemsCheckedResult | undefined>;\n\nexport type ObjectsContextMenuCallback = (\n grid: CommitSourceType,\n contextMenuInfo: ContextMenuInfo\n) => Promise<void>;\n\nexport type CommitSourceType = \"commit\" | \"ignored\";\n\nexport type CommitData = {\n pending: ModifiedObjectData[];\n ignored: ModifiedObjectData[];\n};\n\nexport type ModifiedObjectData = {\n id: string;\n name: string;\n iconType: string;\n state: ObjectState;\n type: string;\n description: string;\n modifiedOn: Date;\n module: string;\n localState: ObjectState;\n lastSynchronized: Date;\n user: string;\n};\n\nexport type FiltersData = {\n pattern: string;\n changeSet: string;\n type: string;\n folder: string;\n category: string;\n};\n"]}
1
+ {"version":3,"file":"commit.js","sourceRoot":"","sources":["../../../../src/components/team-dev/commit/commit.tsx"],"names":[],"mappings":"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","sourcesContent":["// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Method,\n State,\n Watch\n} from \"@stencil/core\";\n\n// Other Libraries\nimport {\n ChEditCustomEvent,\n ComboBoxModel,\n TabModel,\n TabularGridMarkingChangedEvent,\n TabularGridRowContextMenuEvent,\n TabularGridSelectionChangedEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\nimport {\n renderObjectStateWithIcon,\n renderObjectTypeWithIcon\n} from \"../common/utilities\";\nimport { ObjectState } from \"../common/types\";\n\n// Custom Imports\nimport { Locale } from \"../../../common/locale\";\nimport { config } from \"../../../common/config\";\nimport {\n GxOption,\n ContextMenuInfo,\n ObjectType,\n ItemsCheckedState,\n ItemsCheckedResult\n} from \"../../../common/types\";\n\nimport { formatDate } from \"../../../common/helpers\";\nimport {\n mapGxOptionsToComboBoxItemModel,\n mapObjectTypeToComboBoxItemModel\n} from \"./helpers\";\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"primary\"\n});\n\nconst FILTER_ICON_EMPTY = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-surface\"\n});\n\nconst FILTER_WITH_CONDITIONS_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter-conditions\",\n colorType: \"primary\"\n});\n\nconst RESET_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"reset\",\n colorType: \"primary\"\n});\n\nconst ALL_OPTION = \"All\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/checkbox\",\n \"components/combo-box\",\n \"components/edit\",\n \"components/tab\",\n \"components/icon\",\n \"components/tabular-grid\",\n \"components/tooltip\",\n \"chameleon/scrollbar\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\"\n];\n@Component({\n tag: \"gx-ide-team-dev-commit\",\n styleUrl: \"commit.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-commit\"]\n})\nexport class GxIdeTeamDevCommit {\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 #loadDataCalledFirstTime = false; // pending commits grid checkboxes, should be checked, after loadData has loaded commits for the first time.\n #renderedFirstTime = false;\n #commitsTabModel: TabModel = [\n { id: \"pending-commits\", name: \"Pending Commits\" },\n { id: \"ignored-objects\", name: \"Ignored Objects\" }\n ];\n\n @Element() el: HTMLGxIdeTeamDevCommitElement;\n\n // filters\n #categoriesEl!: HTMLChComboBoxRenderElement;\n #changeSetEl!: HTMLChComboBoxRenderElement;\n #commitCommentEl!: HTMLChEditElement;\n #foldersEl!: HTMLChComboBoxRenderElement;\n #patternEl!: HTMLChEditElement;\n #typesEl!: HTMLChComboBoxRenderElement;\n // other\n #chGridIgnoredObjectsEl!: HTMLChTabularGridElement;\n #chGridPendingCommitsEl!: HTMLChTabularGridElement;\n\n @State() comment = \"\";\n @State() filterHasConditions = false;\n @State() ignoredObjects: ModifiedObjectData[] = [];\n @State() pendingCommits: ModifiedObjectData[] = [];\n @State() commentInputHasError: boolean = false;\n @State() commitingObjects: boolean = false;\n @State() filtersHidden = true;\n // Combo box models\n @State() folderOptionsModel: ComboBoxModel;\n @State() typeOptionsModel: ComboBoxModel;\n @State() changeSetOptionsModel: ComboBoxModel;\n @State() categoryOptionsModel: ComboBoxModel;\n\n /**\n * To show a loader when the component is loading\n */\n @State() loading: boolean = true;\n\n /**\n * Possible values for Categories filter\n */\n @Prop() readonly categories: GxOption[];\n @Watch(\"categories\")\n categoriesChangedHandler(newCategoriesOptions: GxOption[]) {\n mapGxOptionsToComboBoxItemModel(newCategoriesOptions);\n }\n\n /**\n * Possible values for ChangeSet filter\n */\n @Prop() readonly changeSet: GxOption[];\n @Watch(\"changeSet\")\n changeSetChangedHandler(newChangeSetOptions: GxOption[]) {\n this.changeSetOptionsModel =\n mapGxOptionsToComboBoxItemModel(newChangeSetOptions);\n }\n\n /**\n * Callback invoked when user starts the commit process\n */\n @Prop() readonly commitCallback: CommitCallback;\n\n /**\n * Possible values for Folders filter\n */\n @Prop() readonly folders: GxOption[];\n @Watch(\"folders\")\n foldersChangedHandler(newFolderOptions: GxOption[]) {\n this.folderOptionsModel = mapGxOptionsToComboBoxItemModel(newFolderOptions);\n }\n\n /**\n * Callback invoked when user press Recent Comments button.\n */\n @Prop() readonly getRecentCommentCallback: GetRecentComment;\n\n /**\n * Callback invoked when user wants to reload the grid\n */\n @Prop() readonly loadCallback: LoadCallback;\n\n /**\n * Callback invoked when the user activates the context menu in any grid\n */\n @Prop() readonly objectsContextMenuCallback: ObjectsContextMenuCallback;\n\n /**\n * Callback invoked when user check/uncheck any item from the 'Pending to Commit' grid\n */\n @Prop() readonly pendingItemsCheckedCallback!: PendingItemsCheckedCallback;\n\n /**\n * Callback invoked when the user selects rows from the grid\n */\n @Prop() readonly selectCallback: CommitSelectCallback;\n\n /**\n * Possible values for Type filter\n */\n @Prop() readonly types: ObjectType[];\n @Watch(\"types\")\n typesChangedHandler(newTypesOptions: ObjectType[]) {\n this.typeOptionsModel = mapObjectTypeToComboBoxItemModel(newTypesOptions);\n }\n\n /**\n * Emitted once after the component fully loads and the first render occurs\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n async componentDidLoad() {\n await this.#loadData();\n this.#loadDataCalledFirstTime = true;\n this.componentDidLoadEvent.emit(true);\n this.#commitCommentEl.focus();\n }\n\n async componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n\n if (this.#loadDataCalledFirstTime) {\n // call this method only once\n await this.#markAllPendingCommitsRows();\n // attach \"rowMarkingChanged\" after rows have been checked for the first time.\n this.#chGridPendingCommitsEl.addEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n this.#loadDataCalledFirstTime = false;\n }\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#initializeComboBoxModels();\n }\n\n #initializeComboBoxModels = () => {\n this.foldersChangedHandler(this.folders);\n this.typesChangedHandler(this.types);\n this.changeSetChangedHandler(this.changeSet);\n this.categoriesChangedHandler(this.categories);\n };\n\n /**\n * Method used by the Host to force a data refresh in the grids\n */\n @Method()\n async reload(): Promise<void> {\n this.#loadData();\n }\n\n #commitCallbackHandler = async () => {\n const comment = this.#commitCommentEl.value;\n if (!comment.length) {\n // A comment is required to commit.\n this.commentInputHasError = true;\n return;\n }\n\n this.commitingObjects = true;\n this.commentInputHasError = false;\n const pendingCommitsCheckedIds =\n await this.#chGridPendingCommitsEl.getMarkedRows();\n\n await this.commitCallback(pendingCommitsCheckedIds, comment);\n this.commitingObjects = false;\n };\n\n #evaluateFilterConditions = () => {\n // TODO: This should update\n if (\n this.#patternEl.value !== \"\" ||\n this.#changeSetEl.value !== ALL_OPTION ||\n this.#typesEl.value !== ALL_OPTION ||\n this.#foldersEl.value !== ALL_OPTION ||\n this.#categoriesEl.value !== ALL_OPTION\n ) {\n this.filterHasConditions = true;\n } else {\n this.filterHasConditions = false;\n }\n };\n\n #getRecentCommentHandler = async () => {\n if (this.getRecentCommentCallback) {\n const response = await this.getRecentCommentCallback();\n if (response) {\n this.#commitCommentEl.value = response;\n }\n }\n };\n\n #gridOnSelectionChangedCallbackHandler =\n (grid: CommitSourceType) =>\n async (ev: CustomEvent<TabularGridSelectionChangedEvent>) => {\n if (this.selectCallback) {\n await this.selectCallback(grid, ev.detail.rowsId);\n }\n };\n\n #handleColumnSortChanged = (e: CustomEvent) => {\n const { columnId, sortDirection } = e.detail;\n\n const aux = this.pendingCommits;\n aux.sort((a: any, b: any) => {\n if (a[columnId] < b[columnId]) {\n return sortDirection === \"asc\" ? -1 : 1;\n }\n if (a[columnId] > b[columnId]) {\n return sortDirection === \"asc\" ? 1 : -1;\n }\n return 0;\n });\n\n this.pendingCommits = [...aux];\n };\n\n #loadData = async () => {\n this.loading = true;\n const filtersData: FiltersData = {\n pattern: this.#patternEl.value,\n changeSet: this.#changeSetEl.value,\n folder: this.#foldersEl.value,\n category: this.#categoriesEl.value,\n type: this.#typesEl.value\n };\n\n this.#evaluateFilterConditions();\n\n await this.loadCallback(filtersData).then(async ({ pending, ignored }) => {\n this.pendingCommits = [...pending];\n this.ignoredObjects = [...ignored];\n });\n this.loading = false;\n this.#updateTabModel();\n };\n\n #markAllPendingCommitsRows = async () => {\n await this.#chGridPendingCommitsEl.markAllRows();\n };\n\n #objectsOnContextMenuCallbackHandler =\n (grid: CommitSourceType) =>\n async (ev: CustomEvent<TabularGridRowContextMenuEvent>) => {\n ev.preventDefault();\n ev.stopPropagation();\n let selection: string[] = [];\n if (grid === \"commit\") {\n selection = ev.detail.selectedRowsId;\n } else if (grid === \"ignored\") {\n selection = await this.#chGridIgnoredObjectsEl.getSelectedRows();\n }\n if (this.objectsContextMenuCallback) {\n await this.objectsContextMenuCallback(grid, {\n selection: selection,\n clientX: ev.detail.clientX,\n clientY: ev.detail.clientY\n });\n }\n };\n\n #pendingCommitsRowMarkingChangedHandler = async (\n e: CustomEvent<TabularGridMarkingChangedEvent>\n ): Promise<void> => {\n // remove \"rowMarkingChanged\" until checkboxes have been added/removed on #togglePendingCommitsCheckboxes, to prevent loops.\n this.#chGridPendingCommitsEl.removeEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n if (this.#chGridPendingCommitsEl) {\n const addedRowsIds = e.detail.addedRowsId;\n const removedRowsId = e.detail.removedRowsId;\n\n const pendingItemCheckedResult = await this.pendingItemsCheckedCallback({\n itemsChecked: addedRowsIds,\n itemsUnchecked: removedRowsId\n });\n\n if (pendingItemCheckedResult === undefined) {\n // undo check/uncheck\n await this.#revertPendingCommitsCheckboxes(addedRowsIds, removedRowsId);\n } else {\n await this.#togglePendingCommitsCheckboxes(pendingItemCheckedResult);\n }\n this.#chGridPendingCommitsEl.addEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n }\n };\n\n #renderTabularGridColumnSet = (\n withCheckboxes: boolean = false\n ): HTMLChTabularGridColumnsetElement => {\n return (\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n {withCheckboxes && (\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnType=\"rich\"\n richRowSelector\n richRowSelectorMode=\"mark\"\n settingable={false}\n sortable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n )}\n <ch-tabular-grid-column\n columnId=\"name\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Name\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"type\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Type\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"description\"\n class=\"tabular-grid-column\"\n columnName=\"Description\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"modifiedOn\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Modified On\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"module\"\n class=\"tabular-grid-column\"\n columnName=\"Module\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"localState\"\n class=\"tabular-grid-column\"\n columnName=\"Local State\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"lastSynchronized\"\n class=\"tabular-grid-column\"\n columnName=\"Last Synchronized\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.auto}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n );\n };\n\n #renderTabularGridCommonCells = (object: ModifiedObjectData) => {\n return [\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {object.name}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectTypeWithIcon(object.type)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell tabular-grid-cell-description\">\n {object.description}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(object.modifiedOn)}`}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {object.module}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectStateWithIcon(object.localState)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(object.lastSynchronized)}`}\n </ch-tabular-grid-cell>\n ];\n };\n\n #renderIgnoredObjectsGrid = (): Element => {\n const tabularGridEmpty =\n this.ignoredObjects?.length === 0 || !this.ignoredObjects;\n return (\n <ch-tabular-grid\n // ignored objects grid render\n class={{\n \"tabular-grid\": true,\n \"tabular-grid--empty\": tabularGridEmpty\n }}\n rowSelectionMode=\"multiple\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridIgnoredObjectsEl = el)\n }\n allowColumnReorder={false}\n part=\"ch-grid-pending-commits\"\n onRowContextMenu={this.#objectsOnContextMenuCallbackHandler(\"ignored\")}\n onSelectionChanged={this.#gridOnSelectionChangedCallbackHandler(\n \"ignored\"\n )}\n >\n {this.commitingObjects && (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n description={this.#componentLocale.loader.description}\n show\n ></gx-ide-loader>\n )}\n\n {this.#renderTabularGridColumnSet()}\n {this.ignoredObjects.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.ignoredObjects.map((obj: ModifiedObjectData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n selected\n class=\"tabular-grid-row\"\n >\n {this.#renderTabularGridCommonCells(obj)}\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateIconSrc={FILTER_ICON_EMPTY}\n stateTitle={this.#componentLocale.emptyIgnoredObjects}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #renderPendingCommitsGrid = (): Element => {\n const withCheckboxes = true;\n const tabularGridEmpty =\n this.pendingCommits?.length === 0 || !this.pendingCommits;\n\n if (this.loading) {\n return (\n <div class=\"tabular-grid\">\n <gx-ide-loader\n loaderTitle={this.#componentLocale.objectsLoader.title}\n description={this.#componentLocale.objectsLoader.description}\n show\n ></gx-ide-loader>\n </div>\n );\n }\n return (\n <ch-tabular-grid\n // pending commits grid render\n class={{\n \"tabular-grid\": true,\n \"tabular-grid--empty\": tabularGridEmpty\n }}\n rowSelectionMode=\"multiple\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridPendingCommitsEl = el)\n }\n allowColumnReorder={false}\n part=\"ch-grid-pending-commits\"\n onRowContextMenu={this.#objectsOnContextMenuCallbackHandler(\"commit\")}\n onSelectionChanged={this.#gridOnSelectionChangedCallbackHandler(\n \"commit\"\n )}\n >\n {this.commitingObjects && (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n description={this.#componentLocale.loader.description}\n show\n ></gx-ide-loader>\n )}\n\n {this.#renderTabularGridColumnSet(withCheckboxes)}\n\n {this.pendingCommits.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.pendingCommits.map((obj: ModifiedObjectData) => (\n <ch-tabular-grid-row rowid={obj.id} class=\"tabular-grid-row\">\n <ch-tabular-grid-cell\n cell-type=\"rich\"\n row-selector\n class=\"tabular-grid-cell\"\n ></ch-tabular-grid-cell>\n {this.#renderTabularGridCommonCells(obj)}\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateIconSrc={FILTER_ICON_EMPTY}\n stateTitle={this.#componentLocale.emptyPendingCommitsObjects}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #revertPendingCommitsCheckboxes = async (\n addedRowsIds: string[],\n removedRowsId: string[]\n ) => {\n if (this.#chGridPendingCommitsEl) {\n for (const rowId of addedRowsIds) {\n await this.#chGridPendingCommitsEl.markRow(rowId, false);\n }\n for (const rowId of removedRowsId) {\n await this.#chGridPendingCommitsEl.markRow(rowId, true);\n }\n }\n };\n\n #togglePendingCommitsCheckboxes = async (\n itemsToToggle: ItemsCheckedResult\n ) => {\n if (this.#chGridPendingCommitsEl) {\n const itemsToCheck: string[] = itemsToToggle.itemsToCheck;\n const itemsToUncheck: string[] = itemsToToggle.itemsToUncheck;\n // check\n for (const rowId of itemsToCheck) {\n await this.#chGridPendingCommitsEl.markRow(rowId, true);\n }\n // uncheck\n for (const rowId of itemsToUncheck) {\n await this.#chGridPendingCommitsEl.markRow(rowId, false);\n }\n }\n };\n\n #updateTabModel = () => {\n this.#commitsTabModel = [\n {\n id: \"pending-commits\",\n name: `${this.#componentLocale.tabs.pendingCommits} (${\n this.pendingCommits.length\n })`\n },\n {\n id: \"ignored-objects\",\n name: `${this.#componentLocale.tabs.ignoredObjects} (${\n this.ignoredObjects.length\n })`\n }\n ];\n };\n\n #commentInputHandler = async (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n const comment = event.detail as string;\n if (comment.length && this.commentInputHasError) {\n // remove error style and tooltip\n this.commentInputHasError = false;\n }\n };\n\n #toggleFiltersHandler = () => {\n this.filtersHidden = !this.filtersHidden;\n };\n\n #onTabActivated = (evt: CustomEvent) => {\n evt.stopImmediatePropagation();\n };\n\n render() {\n const filterIcon = this.filterHasConditions\n ? FILTER_WITH_CONDITIONS_ICON\n : FILTER_ICON;\n\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"section\">\n <header class=\"header spacing-body\">\n <div class=\"header__first-row field-group\">\n <div class=\"buttons-spacer\">\n <div\n // pattern\n class=\"field field-inline field-comment\"\n >\n <label class=\"label\" htmlFor=\"pattern-form-text\">\n {this.#componentLocale.header.commentLabel}\n </label>\n <ch-edit\n // commit comment\n id=\"comment\"\n class={{\n \"input\": true,\n \"commit-input\": true,\n \"scrollable\": true,\n \"input-error\": this.commentInputHasError\n }}\n placeholder={\n this.#componentLocale.header.commentPlaceholder\n }\n onInput={this.#commentInputHandler}\n value={this.comment}\n ref={(el: HTMLChEditElement) =>\n (this.#commitCommentEl = el as HTMLChEditElement)\n }\n part=\"comment\"\n ></ch-edit>\n </div>\n <button\n id=\"filter-toggle-button\"\n class=\"button-teritary button-icon-only\"\n aria-label={this.#componentLocale.header.filterAriaLabel}\n aria-expanded={this.filtersHidden ? \"false\" : \"true\"}\n aria-controls=\"filters-container\"\n onClick={this.#toggleFiltersHandler}\n title={this.#componentLocale.header.filterAriaLabel}\n >\n <ch-image class=\"icon-md\" src={filterIcon}></ch-image>\n </button>\n\n <button\n class=\"button-teritary button-icon-only\"\n aria-label={this.#componentLocale.header.reloadAriaLabel}\n title={this.#componentLocale.header.reloadAriaLabel}\n onClick={this.#loadData}\n part={this.#componentLocale.header.reloadAriaLabel}\n >\n <ch-image class=\"icon-md\" src={RESET_ICON}></ch-image>\n </button>\n </div>\n {this.commentInputHasError && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={\n this.#commitCommentEl as unknown as HTMLButtonElement\n }\n blockAlign=\"outside-end\"\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.#componentLocale.header.commentEmptyError}\n </ch-tooltip>\n )}\n\n <div class=\"buttons-spacer\">\n <button\n type=\"button\"\n class=\"button-secondary recent-comments-btn\"\n part=\"button button-location\"\n onClick={this.#getRecentCommentHandler}\n aria-label={this.#componentLocale.header.recentCommentsButton}\n disabled={this.commitingObjects}\n >\n {this.#componentLocale.header.recentCommentsButton}\n </button>\n </div>\n </div>\n\n <div\n id=\"filters-container\"\n aria-labelledby=\"filter-toggle-button\"\n class={{\n \"filters-container-visible\": !this.filtersHidden,\n \"filters-container\": true\n }}\n inert={this.filtersHidden}\n hidden={this.filtersHidden}\n >\n <div>\n <div slot=\"filter\" class=\"filter field-group\">\n <div\n // pattern\n class=\"field field-block field-pattern\"\n >\n <label class=\"label\" htmlFor=\"pattern-form-text\">\n {this.#componentLocale.filtersMenu.patternLabel}\n </label>\n <ch-edit\n id=\"pattern-form-text\"\n class=\"input\"\n value=\"\"\n ref={(el: HTMLChEditElement) =>\n (this.#patternEl = el as HTMLChEditElement)\n }\n debounce={config.inputDebounce}\n onInput={this.#loadData}\n part=\"pattern-form-text\"\n ></ch-edit>\n </div>\n\n <div\n // folder\n class=\"field field-block field-folder\"\n >\n <label class=\"label\" htmlFor=\"folder-combo\">\n {this.#componentLocale.filtersMenu.folderLabel}\n </label>\n <ch-combo-box-render\n id=\"folder-combo\"\n class=\"combo-box\"\n value={this.folders[0].id}\n model={this.folderOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#foldersEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"folder-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // type\n class=\"field field-block field-type\"\n >\n <label class=\"label\" htmlFor=\"type-combo\">\n {this.#componentLocale.filtersMenu.typeLabel}\n </label>\n <ch-combo-box-render\n id=\"type-combo\"\n class=\"combo-box\"\n value={this.types[0].id}\n model={this.typeOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#typesEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"type-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // changeset\n class=\"field field-block field-changeset\"\n >\n <label class=\"label\" htmlFor=\"changeset-combo\">\n {this.#componentLocale.filtersMenu.changesetLabel}\n </label>\n <ch-combo-box-render\n id=\"changeset-combo\"\n class=\"combo-box\"\n value={this.changeSet[0].id}\n model={this.changeSetOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#changeSetEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"changeset-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // category\n class=\"field field-block field-category\"\n >\n <label class=\"label\" htmlFor=\"category-combo\">\n {this.#componentLocale.filtersMenu.categoryLabel}\n </label>\n <ch-combo-box-render\n id=\"category-combo\"\n class=\"combo-box\"\n value={this.categories[0].id}\n model={this.categoryOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#categoriesEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"category-combo\"\n ></ch-combo-box-render>\n </div>\n </div>\n </div>\n </div>\n </header>\n\n <ch-tab-render\n class=\"tab scrollable\"\n tabListPosition=\"block-start\"\n model={this.#commitsTabModel}\n selectedId=\"pending-commits\"\n showTabListEnd\n overflow=\"auto auto\"\n contain=\"size\"\n onSelectedItemChange={this.#onTabActivated}\n >\n <div\n class=\"ch-tab-slot\"\n slot=\"pending-commits\"\n part=\"pending-commits\"\n >\n {this.#renderPendingCommitsGrid()}\n </div>\n <div\n class=\"ch-tab-slot\"\n slot=\"ignored-objects\"\n part=\"ignored-objects\"\n >\n {this.#renderIgnoredObjectsGrid()}\n </div>\n </ch-tab-render>\n\n <footer class=\"control-footer control-footer-with-border spacing-body-inline spacing-body-block-end\">\n <button\n class=\"button-primary\"\n onClick={this.#commitCallbackHandler}\n part=\"commit-button\"\n disabled={this.commitingObjects}\n >\n {this.#componentLocale.footer.commitButton}\n </button>\n </footer>\n </section>\n </Host>\n );\n }\n}\nexport type CommitCallback = (\n selection: string[],\n commitCommentEl: string\n) => Promise<boolean>;\n\nexport type CommitData = {\n pending: ModifiedObjectData[];\n ignored: ModifiedObjectData[];\n};\n\nexport type CommitSelectCallback = (\n grid: CommitSourceType,\n selectionIds: string[]\n) => Promise<void>;\n\nexport type CommitSourceType = \"commit\" | \"ignored\";\n\nexport type FiltersData = {\n pattern: string;\n changeSet: string;\n type: string;\n folder: string;\n category: string;\n};\n\nexport type GetRecentComment = () => Promise<string | undefined>;\n\nexport type ItemCheckedCallback = (\n checkedItemIds: string[]\n) => Promise<ItemsCheckedResult | undefined>;\n\nexport type LoadCallback = (filters: FiltersData) => Promise<CommitData>;\n\nexport type ModifiedObjectData = {\n id: string;\n name: string;\n iconType: string;\n state: ObjectState;\n type: ObjectType;\n description: string;\n modifiedOn: Date;\n module: string;\n localState: ObjectState;\n lastSynchronized: Date;\n user: string;\n};\n\nexport type ObjectsContextMenuCallback = (\n grid: CommitSourceType,\n contextMenuInfo: ContextMenuInfo\n) => Promise<void>;\n\nexport type PendingItemsCheckedCallback = (\n pendingItemsCheckedState: ItemsCheckedState\n) => Promise<ItemsCheckedResult | undefined>;\n"]}
@@ -1,9 +1,13 @@
1
1
  {
2
2
  "componentName": "Team Dev Commit",
3
3
  "header": {
4
- "commentLabel": "Commit Comment:",
5
- "commentPlaceholder": "Describe the changes you are including in this commit...",
6
- "recentCommentsButton": "Recent Comments"
4
+ "commentLabel": "Comment",
5
+ "commentEmptyError": "A description is required to commit",
6
+ "commentPlaceholder": "Describe this commit changes...",
7
+ "recentCommentsButton": "Recent Comments",
8
+ "filter": "Filter",
9
+ "filterAriaLabel": "Toggle filters",
10
+ "reloadAriaLabel": "Reload"
7
11
  },
8
12
  "filtersMenu": {
9
13
  "patternLabel": "Pattern:",
@@ -16,7 +20,20 @@
16
20
  "pendingCommits": "Pending Commits",
17
21
  "ignoredObjects": "Ignored Objects"
18
22
  },
23
+ "tabSlottedButtons": {
24
+ "reset": "Reset"
25
+ },
26
+ "loader": {
27
+ "title": "Commiting",
28
+ "description": "Hang on please..."
29
+ },
19
30
  "footer": {
20
31
  "commitButton": "Commit"
32
+ },
33
+ "emptyIgnoredObjects": "There are no ignored objects to show",
34
+ "emptyPendingCommitsObjects": "There are no objects pending to commit",
35
+ "objectsLoader": {
36
+ "title": "Loading Objects",
37
+ "description": "Hang on please..."
21
38
  }
22
39
  }
@@ -1,9 +1,13 @@
1
1
  {
2
2
  "componentName": "チーム開発のコミット",
3
3
  "header": {
4
- "commentLabel": "コミットのコメント:",
4
+ "commentLabel": "コメント",
5
+ "commentEmptyError": "A description is required to commit",
5
6
  "commentPlaceholder": "このコミットに含まれている変更を表示...",
6
- "recentCommentsButton": "最近のコメント"
7
+ "recentCommentsButton": "最近のコメント",
8
+ "filter": "フィルター",
9
+ "filterAriaLabel": "Toggle filters",
10
+ "reloadAriaLabel": "再読み込み"
7
11
  },
8
12
  "filtersMenu": {
9
13
  "patternLabel": "パターン:",
@@ -16,7 +20,20 @@
16
20
  "pendingCommits": "保留中のコミット",
17
21
  "ignoredObjects": "無視されたオブジェクト"
18
22
  },
23
+ "tabSlottedButtons": {
24
+ "reset": "Reset"
25
+ },
26
+ "loader": {
27
+ "title": "Commiting",
28
+ "description": "しばらくお待ちください..."
29
+ },
19
30
  "footer": {
20
31
  "commitButton": "コミット"
32
+ },
33
+ "emptyIgnoredObjects": "There are no ignored objects to show",
34
+ "emptyPendingCommitsObjects": "There are no objects pending to commit",
35
+ "objectsLoader": {
36
+ "title": "Loading Objects",
37
+ "description": "Hang on please..."
21
38
  }
22
- }
39
+ }
@@ -1,9 +1,13 @@
1
1
  {
2
2
  "componentName": "Team Dev Commit",
3
3
  "header": {
4
- "commentLabel": "Commit Comment:",
5
- "commentPlaceholder": "Describe the changes you are including in this commit...",
6
- "recentCommentsButton": "Recent Comments"
4
+ "commentLabel": "Comment",
5
+ "commentEmptyError": "A description is required to commit",
6
+ "commentPlaceholder": "Describe this commit changes...",
7
+ "recentCommentsButton": "Recent Comments",
8
+ "filter": "Filter",
9
+ "filterAriaLabel": "Toggle filters",
10
+ "reloadAriaLabel": "Reload"
7
11
  },
8
12
  "filtersMenu": {
9
13
  "patternLabel": "Pattern:",
@@ -16,7 +20,20 @@
16
20
  "pendingCommits": "Pending Commits",
17
21
  "ignoredObjects": "Ignored Objects"
18
22
  },
23
+ "tabSlottedButtons": {
24
+ "reset": "Reset"
25
+ },
26
+ "loader": {
27
+ "title": "Commiting",
28
+ "description": "Hang on please..."
29
+ },
19
30
  "footer": {
20
31
  "commitButton": "Commit"
32
+ },
33
+ "emptyIgnoredObjects": "There are no ignored objects to show",
34
+ "emptyPendingCommitsObjects": "There are no objects pending to commit",
35
+ "objectsLoader": {
36
+ "title": "Loading Objects",
37
+ "description": "Hang on please..."
21
38
  }
22
39
  }
@@ -0,0 +1,10 @@
1
+ export const mapObjectTypeToComboBoxItemModel = (objectTypeModel) => objectTypeModel.map(objectType => ({
2
+ value: objectType.id,
3
+ caption: objectType.name,
4
+ startImgSrc: objectType.icon
5
+ }));
6
+ export const mapGxOptionsToComboBoxItemModel = (categoryModel) => categoryModel.map(category => ({
7
+ value: category.id,
8
+ caption: category.label || category.name || ""
9
+ }));
10
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/components/team-dev/commit/helpers.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAC9C,eAA6B,EACd,EAAE,CACjB,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACjC,KAAK,EAAE,UAAU,CAAC,EAAE;IACpB,OAAO,EAAE,UAAU,CAAC,IAAI;IACxB,WAAW,EAAE,UAAU,CAAC,IAAI;CAC7B,CAAC,CAAC,CAAC;AAEN,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAC7C,aAAyB,EACV,EAAE,CACjB,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7B,KAAK,EAAE,QAAQ,CAAC,EAAE;IAClB,OAAO,EAAE,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,IAAI,EAAE;CAC/C,CAAC,CAAC,CAAC","sourcesContent":["import { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\nimport { ObjectType, GxOption } from \"../../../common/types\";\n\nexport const mapObjectTypeToComboBoxItemModel = (\n objectTypeModel: ObjectType[]\n): ComboBoxModel =>\n objectTypeModel.map(objectType => ({\n value: objectType.id,\n caption: objectType.name,\n startImgSrc: objectType.icon\n }));\n\nexport const mapGxOptionsToComboBoxItemModel = (\n categoryModel: GxOption[]\n): ComboBoxModel =>\n categoryModel.map(category => ({\n value: category.id,\n caption: category.label || category.name || \"\"\n }));\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/team-dev/common/types.ts"],"names":[],"mappings":"","sourcesContent":["export type ObjectState = \"Inserted\" | \"Modified\" | \"Deleted\" | \"Conflicted\";\n"]}
@@ -0,0 +1,67 @@
1
+ // Stencil
2
+ import { h } from "@stencil/core";
3
+ import { getIconPath } from "@genexus/mercury";
4
+ const INSERTED_ICON = getIconPath({
5
+ category: "system",
6
+ name: "add",
7
+ colorType: "success"
8
+ });
9
+ const EDITED_ICON = getIconPath({
10
+ category: "system",
11
+ name: "edit",
12
+ colorType: "warning"
13
+ });
14
+ const DELETED_ICON = getIconPath({
15
+ category: "system",
16
+ name: "substract",
17
+ colorType: "error"
18
+ });
19
+ const WARNING_ICON = getIconPath({
20
+ category: "system",
21
+ name: "warning",
22
+ colorType: "warning"
23
+ });
24
+ /**
25
+ * Renders a visual indicator (icon and label) for a given object state.
26
+ *
27
+ * This helper function maps a fixed set of object states to corresponding icons
28
+ *
29
+ * Supported states:
30
+ * - "inserted": Displays a green "add" icon.
31
+ * - "modified": Displays a yellow "edit" icon.
32
+ * - "deleted": Displays a red "subtract" icon.
33
+ * - "conflicted": Displays a yellow "warning" icon.
34
+ *
35
+ * @param {ObjectState} objectState - The current state of the object.
36
+ * @returns {HTMLChImageElement} A span element containing the corresponding icon and state label.
37
+ */
38
+ export const renderObjectStateWithIcon = (objectState) => {
39
+ let icon;
40
+ switch (objectState) {
41
+ case "Inserted":
42
+ icon = INSERTED_ICON;
43
+ break;
44
+ case "Modified":
45
+ icon = EDITED_ICON;
46
+ break;
47
+ case "Deleted":
48
+ icon = DELETED_ICON;
49
+ break;
50
+ case "Conflicted":
51
+ icon = WARNING_ICON;
52
+ break;
53
+ }
54
+ return (h("span", { class: "custom-icon-text-wrapper" }, h("ch-image", { class: "icon-md", src: icon }), `${objectState}`));
55
+ };
56
+ /**
57
+ * Renders a GeneXus object type as a span element containing its icon and name.
58
+ *
59
+ * @param {ObjectType} objectType - The GeneXus object type to render, including its `icon` and `name` properties.
60
+ * @returns {JSX.Element} A span element with the object's icon and label.
61
+ */
62
+ export const renderObjectTypeWithIcon = (objectType) => {
63
+ // bring changes
64
+ const icon = objectType.icon;
65
+ return (h("span", { class: "custom-icon-text-wrapper" }, h("ch-image", { class: "icon-md", src: icon }), `${objectType.name}`));
66
+ };
67
+ //# sourceMappingURL=utilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../../../src/components/team-dev/common/utilities.tsx"],"names":[],"mappings":"AAAA,UAAU;AACV,OAAO,EAAE,CAAC,EAAO,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAI/C,MAAM,aAAa,GAAG,WAAW,CAAC;IAChC,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,KAAK;IACX,SAAS,EAAE,SAAS;CACrB,CAAC,CAAC;AACH,MAAM,WAAW,GAAG,WAAW,CAAC;IAC9B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,SAAS;CACrB,CAAC,CAAC;AACH,MAAM,YAAY,GAAG,WAAW,CAAC;IAC/B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,OAAO;CACnB,CAAC,CAAC;AACH,MAAM,YAAY,GAAG,WAAW,CAAC;IAC/B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,SAAS;IACf,SAAS,EAAE,SAAS;CACrB,CAAC,CAAC;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,WAAwB,EACJ,EAAE;IACtB,IAAI,IAAY,CAAC;IACjB,QAAQ,WAAW,EAAE;QACnB,KAAK,UAAU;YACb,IAAI,GAAG,aAAa,CAAC;YACrB,MAAM;QACR,KAAK,UAAU;YACb,IAAI,GAAG,WAAW,CAAC;YACnB,MAAM;QACR,KAAK,SAAS;YACZ,IAAI,GAAG,YAAY,CAAC;YACpB,MAAM;QACR,KAAK,YAAY;YACf,IAAI,GAAG,YAAY,CAAC;YACpB,MAAM;KACT;IACD,OAAO,CACL,YAAM,KAAK,EAAC,0BAA0B;QACpC,gBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,IAAI,GAAa;QAC/C,GAAG,WAAW,EAAE,CACZ,CACR,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,UAAsB,EACT,EAAE;IACf,gBAAgB;IAChB,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAE7B,OAAO,CACL,YAAM,KAAK,EAAC,0BAA0B;QACpC,gBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,IAAI,GAAa;QAC/C,GAAG,UAAU,CAAC,IAAI,EAAE,CAChB,CACR,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Stencil\nimport { h, JSX } from \"@stencil/core\";\nimport { getIconPath } from \"@genexus/mercury\";\nimport { ObjectState } from \"./types\";\nimport { ObjectType } from \"../../../components\";\n\nconst INSERTED_ICON = getIconPath({\n category: \"system\",\n name: \"add\",\n colorType: \"success\"\n});\nconst EDITED_ICON = getIconPath({\n category: \"system\",\n name: \"edit\",\n colorType: \"warning\"\n});\nconst DELETED_ICON = getIconPath({\n category: \"system\",\n name: \"substract\",\n colorType: \"error\"\n});\nconst WARNING_ICON = getIconPath({\n category: \"system\",\n name: \"warning\",\n colorType: \"warning\"\n});\n\n/**\n * Renders a visual indicator (icon and label) for a given object state.\n *\n * This helper function maps a fixed set of object states to corresponding icons\n *\n * Supported states:\n * - \"inserted\": Displays a green \"add\" icon.\n * - \"modified\": Displays a yellow \"edit\" icon.\n * - \"deleted\": Displays a red \"subtract\" icon.\n * - \"conflicted\": Displays a yellow \"warning\" icon.\n *\n * @param {ObjectState} objectState - The current state of the object.\n * @returns {HTMLChImageElement} A span element containing the corresponding icon and state label.\n */\nexport const renderObjectStateWithIcon = (\n objectState: ObjectState\n): HTMLChImageElement => {\n let icon: string;\n switch (objectState) {\n case \"Inserted\":\n icon = INSERTED_ICON;\n break;\n case \"Modified\":\n icon = EDITED_ICON;\n break;\n case \"Deleted\":\n icon = DELETED_ICON;\n break;\n case \"Conflicted\":\n icon = WARNING_ICON;\n break;\n }\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image class=\"icon-md\" src={icon}></ch-image>\n {`${objectState}`}\n </span>\n );\n};\n\n/**\n * Renders a GeneXus object type as a span element containing its icon and name.\n *\n * @param {ObjectType} objectType - The GeneXus object type to render, including its `icon` and `name` properties.\n * @returns {JSX.Element} A span element with the object's icon and label.\n */\nexport const renderObjectTypeWithIcon = (\n objectType: ObjectType\n): JSX.Element => {\n // bring changes\n const icon = objectType.icon;\n\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image class=\"icon-md\" src={icon}></ch-image>\n {`${objectType.name}`}\n </span>\n );\n};\n"]}
@@ -1,3 +1,9 @@
1
+ .custom-icon-text-wrapper {
2
+ display: flex;
3
+ align-items: center;
4
+ gap: 10px;
5
+ }
6
+
1
7
  :host {
2
8
  display: grid;
3
9
  grid-template-columns: max-content 1fr;
@@ -14,7 +14,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
14
14
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
15
15
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
16
16
  };
17
- var _GxIdeTeamDevHistory__componentLocale, _GxIdeTeamDevHistory_types, _GxIdeTeamDevHistory_fromEl, _GxIdeTeamDevHistory_revisionEl, _GxIdeTeamDevHistory_searchEl, _GxIdeTeamDevHistory_toEl, _GxIdeTeamDevHistory_typesEl, _GxIdeTeamDevHistory_userEl, _GxIdeTeamDevHistory_sidebarEl, _GxIdeTeamDevHistory_revisionsGridEl, _GxIdeTeamDevHistory_getIconState, _GxIdeTeamDevHistory_getObjectsFromVersion, _GxIdeTeamDevHistory_getSelectedRevision, _GxIdeTeamDevHistory_registerGridContextMenuListener, _GxIdeTeamDevHistory_gridContextMenuCallbackHandler, _GxIdeTeamDevHistory_toggleFiltersHandler, _GxIdeTeamDevHistory_renderCommitsGrid, _GxIdeTeamDevHistory_renderAffectedObjectsGrid, _GxIdeTeamDevHistory_renderLoader;
17
+ var _GxIdeTeamDevHistory__componentLocale, _GxIdeTeamDevHistory_types, _GxIdeTeamDevHistory_fromEl, _GxIdeTeamDevHistory_revisionEl, _GxIdeTeamDevHistory_searchEl, _GxIdeTeamDevHistory_toEl, _GxIdeTeamDevHistory_typesEl, _GxIdeTeamDevHistory_userEl, _GxIdeTeamDevHistory_sidebarEl, _GxIdeTeamDevHistory_revisionsGridEl, _GxIdeTeamDevHistory_getObjectsFromVersion, _GxIdeTeamDevHistory_getSelectedRevision, _GxIdeTeamDevHistory_registerGridContextMenuListener, _GxIdeTeamDevHistory_gridContextMenuCallbackHandler, _GxIdeTeamDevHistory_toggleFiltersHandler, _GxIdeTeamDevHistory_renderCommitsGrid, _GxIdeTeamDevHistory_renderAffectedObjectsGrid, _GxIdeTeamDevHistory_renderLoader, _GxIdeTeamDevHistory_formatHistoryDetailDate;
18
18
  /* STENCIL IMPORTS */
19
19
  import { h, Host } from "@stencil/core";
20
20
  import { getIconPath } from "@genexus/mercury";
@@ -22,6 +22,7 @@ import { config } from "../../../common/config";
22
22
  import { formatDate } from "../../../common/helpers";
23
23
  import { Locale } from "../../../common/locale";
24
24
  import { hasActiveVersionInList, mapObjectTypeToComboBoxItemModel } from "./helpers";
25
+ import { renderObjectStateWithIcon, renderObjectTypeWithIcon } from "../common/utilities";
25
26
  const CSS_BUNDLES = [
26
27
  "resets/box-sizing",
27
28
  "utils/form--full",
@@ -33,10 +34,6 @@ const CSS_BUNDLES = [
33
34
  "components/accordion",
34
35
  "components/sidebar"
35
36
  ];
36
- const CHANGES_PENDING_ICON = getIconPath({
37
- category: "gx-server",
38
- name: "changes-commit-pending"
39
- });
40
37
  const FILTER_ICON_PRIMARY = getIconPath({
41
38
  category: "window-tools",
42
39
  name: "filter",
@@ -47,18 +44,6 @@ const FILTER_ICON = getIconPath({
47
44
  name: "filter",
48
45
  colorType: "on-surface"
49
46
  });
50
- const DELETED_ICON = getIconPath({
51
- category: "gx-server",
52
- name: "delete"
53
- });
54
- const NEW_ICON = getIconPath({
55
- category: "gx-server",
56
- name: "new"
57
- });
58
- const PRIVATE_ICON = getIconPath({
59
- category: "gx-server",
60
- name: "private"
61
- });
62
47
  const RESET_ICON = getIconPath({
63
48
  category: "gemini-tools",
64
49
  name: "reset",
@@ -81,21 +66,6 @@ export class GxIdeTeamDevHistory {
81
66
  _GxIdeTeamDevHistory_userEl.set(this, void 0);
82
67
  _GxIdeTeamDevHistory_sidebarEl.set(this, void 0);
83
68
  _GxIdeTeamDevHistory_revisionsGridEl.set(this, void 0);
84
- _GxIdeTeamDevHistory_getIconState.set(this, (state) => {
85
- let icon = h("ch-image", { src: PRIVATE_ICON, class: "icon-sm" });
86
- switch (state) {
87
- case "Inserted":
88
- icon = h("ch-image", { src: NEW_ICON, class: "icon-sm" });
89
- break;
90
- case "Modified":
91
- icon = h("ch-image", { src: CHANGES_PENDING_ICON, class: "icon-sm" });
92
- break;
93
- case "Deleted":
94
- icon = h("ch-image", { src: DELETED_ICON, class: "icon-sm" });
95
- break;
96
- }
97
- return icon;
98
- });
99
69
  _GxIdeTeamDevHistory_getObjectsFromVersion.set(this, async (versionId) => {
100
70
  var _a;
101
71
  this.loading = true;
@@ -114,6 +84,7 @@ export class GxIdeTeamDevHistory {
114
84
  _GxIdeTeamDevHistory_getSelectedRevision.set(this, async (revisionId) => {
115
85
  if (revisionId) {
116
86
  this.historyDetail = await this.loadDetailCallback(revisionId);
87
+ this.historyDetail.title = __classPrivateFieldGet(this, _GxIdeTeamDevHistory_formatHistoryDetailDate, "f").call(this, this.historyDetail.title);
117
88
  this.selectedRevisionId = revisionId;
118
89
  }
119
90
  else {
@@ -168,11 +139,17 @@ export class GxIdeTeamDevHistory {
168
139
  "affected-objects-grid": true,
169
140
  "tabular-grid": true,
170
141
  "tabular-grid--empty": tabularGridEmpty
171
- } }, h("ch-tabular-grid-columnset", { class: "tabular-grid-column-set" }, h("ch-tabular-grid-column", { "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: "max-content" }), h("ch-tabular-grid-column", { "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: config.tabularGrid.colSize.auto }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").affectedObjectsGrid.columns.name, "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: "max-content" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").affectedObjectsGrid.columns.types, "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: "max-content" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").affectedObjectsGrid.columns.description, "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: "1fr" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").affectedObjectsGrid.columns.action, "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: "max-content" })), this.historyDetail && this.historyDetail.objects.length > 0 ? (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, iterable.map((obj) => (h("ch-tabular-grid-row", { class: "tabular-grid-row" }, h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, h("ch-image", { src: obj.typeIcon, class: "icon-md" })), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, __classPrivateFieldGet(this, _GxIdeTeamDevHistory_getIconState, "f").call(this, obj.state)), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.name), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.type), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.description), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.action)))))) : (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, h("ch-tabular-grid-rowset-empty", null, h("gx-ide-empty-state", { stateIconSrc: FILTER_ICON, stateTitle: __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").emptyHistoryDetailText, isAnimated: true })))), h("ch-tabular-grid-row", { class: "tabular-grid-row" })));
142
+ } }, h("ch-tabular-grid-columnset", { class: "tabular-grid-column-set" }, h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").affectedObjectsGrid.columns.name, "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: config.tabularGrid.colSize.maxContent }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").affectedObjectsGrid.columns.types, "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: config.tabularGrid.colSize.maxContent }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").affectedObjectsGrid.columns.description, "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: config.tabularGrid.colSize.auto }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").affectedObjectsGrid.columns.action, "column-name-position": "text", class: "tabular-grid-column", settingable: false, size: config.tabularGrid.colSize.maxContent })), this.historyDetail && this.historyDetail.objects.length > 0 ? (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, iterable.map((obj) => (h("ch-tabular-grid-row", { class: "tabular-grid-row" }, h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.name), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, renderObjectTypeWithIcon(obj.type)), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.description), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, renderObjectStateWithIcon(obj.state))))))) : (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, h("ch-tabular-grid-rowset-empty", null, h("gx-ide-empty-state", { stateIconSrc: FILTER_ICON, stateTitle: __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").emptyHistoryDetailText, isAnimated: true })))), h("ch-tabular-grid-row", { class: "tabular-grid-row" })));
172
143
  });
173
144
  _GxIdeTeamDevHistory_renderLoader.set(this, () => {
174
145
  return (this.loading && (h("div", { class: "main__content scrollable" }, h("gx-ide-loader", { loaderTitle: __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").loader.title, show: true, description: __classPrivateFieldGet(this, _GxIdeTeamDevHistory__componentLocale, "f").loader.description }))));
175
146
  });
147
+ _GxIdeTeamDevHistory_formatHistoryDetailDate.set(this, (title) => {
148
+ const parts = title.split(" - ");
149
+ const datePart = new Date(parts[1]);
150
+ const formattedDate = formatDate(datePart, "date-time");
151
+ return `${parts[0]} - ${formattedDate} - ${parts[2]}`;
152
+ });
176
153
  this.historyDetail = undefined;
177
154
  this.objects = [];
178
155
  this.isFirstLoad = true;
@@ -444,5 +421,5 @@ export class GxIdeTeamDevHistory {
444
421
  }];
445
422
  }
446
423
  }
447
- _GxIdeTeamDevHistory__componentLocale = new WeakMap(), _GxIdeTeamDevHistory_types = new WeakMap(), _GxIdeTeamDevHistory_fromEl = new WeakMap(), _GxIdeTeamDevHistory_revisionEl = new WeakMap(), _GxIdeTeamDevHistory_searchEl = new WeakMap(), _GxIdeTeamDevHistory_toEl = new WeakMap(), _GxIdeTeamDevHistory_typesEl = new WeakMap(), _GxIdeTeamDevHistory_userEl = new WeakMap(), _GxIdeTeamDevHistory_sidebarEl = new WeakMap(), _GxIdeTeamDevHistory_revisionsGridEl = new WeakMap(), _GxIdeTeamDevHistory_getIconState = new WeakMap(), _GxIdeTeamDevHistory_getObjectsFromVersion = new WeakMap(), _GxIdeTeamDevHistory_getSelectedRevision = new WeakMap(), _GxIdeTeamDevHistory_registerGridContextMenuListener = new WeakMap(), _GxIdeTeamDevHistory_gridContextMenuCallbackHandler = new WeakMap(), _GxIdeTeamDevHistory_toggleFiltersHandler = new WeakMap(), _GxIdeTeamDevHistory_renderCommitsGrid = new WeakMap(), _GxIdeTeamDevHistory_renderAffectedObjectsGrid = new WeakMap(), _GxIdeTeamDevHistory_renderLoader = new WeakMap();
424
+ _GxIdeTeamDevHistory__componentLocale = new WeakMap(), _GxIdeTeamDevHistory_types = new WeakMap(), _GxIdeTeamDevHistory_fromEl = new WeakMap(), _GxIdeTeamDevHistory_revisionEl = new WeakMap(), _GxIdeTeamDevHistory_searchEl = new WeakMap(), _GxIdeTeamDevHistory_toEl = new WeakMap(), _GxIdeTeamDevHistory_typesEl = new WeakMap(), _GxIdeTeamDevHistory_userEl = new WeakMap(), _GxIdeTeamDevHistory_sidebarEl = new WeakMap(), _GxIdeTeamDevHistory_revisionsGridEl = new WeakMap(), _GxIdeTeamDevHistory_getObjectsFromVersion = new WeakMap(), _GxIdeTeamDevHistory_getSelectedRevision = new WeakMap(), _GxIdeTeamDevHistory_registerGridContextMenuListener = new WeakMap(), _GxIdeTeamDevHistory_gridContextMenuCallbackHandler = new WeakMap(), _GxIdeTeamDevHistory_toggleFiltersHandler = new WeakMap(), _GxIdeTeamDevHistory_renderCommitsGrid = new WeakMap(), _GxIdeTeamDevHistory_renderAffectedObjectsGrid = new WeakMap(), _GxIdeTeamDevHistory_renderLoader = new WeakMap(), _GxIdeTeamDevHistory_formatHistoryDetailDate = new WeakMap();
448
425
  //# sourceMappingURL=history.js.map