@genexus/genexus-ide-ui 1.1.65 → 1.1.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-comments-viewer.cjs.entry.js +66 -0
- package/dist/cjs/gx-ide-comments-viewer.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-team-dev-bring-all-changes-selector.cjs.entry.js +210 -0
- package/dist/cjs/gx-ide-team-dev-bring-all-changes-selector.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +29 -28
- package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +10 -2
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-preview.cjs.entry.js +34 -20
- package/dist/cjs/gx-ide-team-dev-preview.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +9 -2
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/_helpers/comments-viewer/comments-viewer.css +41 -0
- package/dist/collection/components/_helpers/comments-viewer/comments-viewer.js +112 -0
- package/dist/collection/components/_helpers/comments-viewer/comments-viewer.js.map +1 -0
- package/dist/collection/components/_helpers/comments-viewer/gx-ide-assets/comments-viewer/langs/comments-viewer.lang.en.json +5 -0
- package/dist/collection/components/_helpers/comments-viewer/gx-ide-assets/comments-viewer/langs/comments-viewer.lang.ja.json +5 -0
- package/dist/collection/components/_helpers/comments-viewer/gx-ide-assets/comments-viewer/langs/comments-viewer.lang.zh.json +5 -0
- package/dist/collection/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.css +27 -0
- package/dist/collection/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.js +273 -0
- package/dist/collection/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.js.map +1 -0
- package/dist/collection/components/team-dev/bring-all-changes-selector/gx-ide-assets/team-dev-bring-all-changes-selector/langs/team-dev-bring-all-changes-selector.lang.en.json +22 -0
- package/dist/collection/components/team-dev/bring-all-changes-selector/gx-ide-assets/team-dev-bring-all-changes-selector/langs/team-dev-bring-all-changes-selector.lang.ja.json +22 -0
- package/dist/collection/components/team-dev/bring-all-changes-selector/gx-ide-assets/team-dev-bring-all-changes-selector/langs/team-dev-bring-all-changes-selector.lang.zh.json +22 -0
- package/dist/collection/components/team-dev/bring-changes/bring-changes.css +22 -8
- package/dist/collection/components/team-dev/bring-changes/bring-changes.js +69 -28
- package/dist/collection/components/team-dev/bring-changes/bring-changes.js.map +1 -1
- package/dist/collection/components/team-dev/bring-changes/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.en.json +6 -0
- package/dist/collection/components/team-dev/bring-changes/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.ja.json +6 -0
- package/dist/collection/components/team-dev/bring-changes/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.zh.json +6 -0
- package/dist/collection/components/team-dev/preview/team-dev-preview.css +15 -0
- package/dist/collection/components/team-dev/preview/team-dev-preview.js +56 -20
- package/dist/collection/components/team-dev/preview/team-dev-preview.js.map +1 -1
- package/dist/collection/components/team-dev/update/update.js +31 -2
- package/dist/collection/components/team-dev/update/update.js.map +1 -1
- package/dist/collection/components/team-dev/version-control/commit/commit.js +33 -3
- package/dist/collection/components/team-dev/version-control/commit/commit.js.map +1 -1
- package/dist/collection/components/team-dev/version-control/common/types.js.map +1 -1
- package/dist/collection/testing/locale.e2e.js +3 -1
- package/dist/collection/testing/locale.e2e.js.map +1 -1
- package/dist/components/gx-ide-comments-viewer.d.ts +11 -0
- package/dist/components/gx-ide-comments-viewer.js +83 -0
- package/dist/components/gx-ide-comments-viewer.js.map +1 -0
- package/dist/components/gx-ide-team-dev-bring-all-changes-selector.d.ts +11 -0
- package/dist/components/gx-ide-team-dev-bring-all-changes-selector.js +232 -0
- package/dist/components/gx-ide-team-dev-bring-all-changes-selector.js.map +1 -0
- package/dist/components/gx-ide-team-dev-bring-changes.js +31 -28
- package/dist/components/gx-ide-team-dev-bring-changes.js.map +1 -1
- package/dist/components/gx-ide-team-dev-commit.js +13 -3
- package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
- package/dist/components/gx-ide-team-dev-preview.js +37 -21
- package/dist/components/gx-ide-team-dev-preview.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update.js +12 -3
- package/dist/components/gx-ide-team-dev-update.js.map +1 -1
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-comments-viewer.entry.js +62 -0
- package/dist/esm/gx-ide-comments-viewer.entry.js.map +1 -0
- package/dist/esm/gx-ide-team-dev-bring-all-changes-selector.entry.js +206 -0
- package/dist/esm/gx-ide-team-dev-bring-all-changes-selector.entry.js.map +1 -0
- package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +29 -28
- package/dist/esm/gx-ide-team-dev-bring-changes.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +10 -2
- package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-preview.entry.js +34 -20
- package/dist/esm/gx-ide-team-dev-preview.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-update.entry.js +9 -2
- package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/comments-viewer/langs/comments-viewer.lang.en.json +5 -0
- package/dist/genexus-ide-ui/gx-ide-assets/comments-viewer/langs/comments-viewer.lang.ja.json +5 -0
- package/dist/genexus-ide-ui/gx-ide-assets/comments-viewer/langs/comments-viewer.lang.zh.json +5 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-all-changes-selector/langs/team-dev-bring-all-changes-selector.lang.en.json +22 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-all-changes-selector/langs/team-dev-bring-all-changes-selector.lang.ja.json +22 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-all-changes-selector/langs/team-dev-bring-all-changes-selector.lang.zh.json +22 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.en.json +6 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.ja.json +6 -0
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.zh.json +6 -0
- package/dist/genexus-ide-ui/p-0488759f.entry.js +82 -0
- package/dist/genexus-ide-ui/p-0488759f.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-09693b80.entry.js +274 -0
- package/dist/genexus-ide-ui/p-09693b80.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-ab8aee7d.entry.js → p-1890d374.entry.js} +209 -181
- package/dist/genexus-ide-ui/p-1890d374.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-3d71b287.entry.js → p-9285b6db.entry.js} +34 -28
- package/dist/genexus-ide-ui/p-9285b6db.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-73c3f9ec.entry.js → p-c8b0004e.entry.js} +15 -9
- package/dist/genexus-ide-ui/p-c8b0004e.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-eeae4b37.entry.js → p-e2fd2c24.entry.js} +135 -128
- package/dist/genexus-ide-ui/p-e2fd2c24.entry.js.map +1 -0
- package/dist/types/components/_helpers/comments-viewer/comments-viewer.d.ts +19 -0
- package/dist/types/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.d.ts +45 -0
- package/dist/types/components/team-dev/bring-changes/bring-changes.d.ts +9 -1
- package/dist/types/components/team-dev/preview/team-dev-preview.d.ts +8 -0
- package/dist/types/components/team-dev/update/update.d.ts +8 -0
- package/dist/types/components/team-dev/version-control/commit/commit.d.ts +8 -0
- package/dist/types/components/team-dev/version-control/common/types.d.ts +1 -0
- package/dist/types/components.d.ts +94 -0
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-3d71b287.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-73c3f9ec.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-ab8aee7d.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-eeae4b37.entry.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["bringChangesCss","CSS_BUNDLES","COMBO_BOX_ALL_VALUE","DETAIL_LABEL_CLASSES","ADD_ICON","getIconPath","category","name","colorType","EDITED_ICON","FILTER_ICON","SEARCH_ICON","SUBSTRACT_ICON","WARNING_ICON","ERROR_ICON","GxIdeTeamDevBringChanges","_GxIdeTeamDevBringChanges_componentLocale","set","this","_GxIdeTeamDevBringChanges_commitLabel","_GxIdeTeamDevBringChanges_comboBoxStatesModel","_GxIdeTeamDevBringChanges_checkedObjectsIdsArray","_GxIdeTeamDevBringChanges_formatComments","commitInformation","length","h","comment","firstComment","__classPrivateFieldGet","latest","_GxIdeTeamDevBringChanges_mergeCheckedClickedHandler","async","merging","newobjectsStatesMap","Map","objectsStatesMap","forEach","checkedObjectId","operationType","mergeObjectsCallback","_GxIdeTeamDevBringChanges_mergeSingleObject","objectId","_GxIdeTeamDevBringChanges_renderActionCellContent","actionTaken","icon","caption","iconColor","objects","actions","delete","insert","modify","class","type","src","style","backgroundColor","_GxIdeTeamDevBringChanges_renderCommitsNumbers","onlyNumbers","_a","id","_b","loading","_GxIdeTeamDevBringChanges_renderFormatedDate","date","dateObject","Date","lang","navigator","languages","language","toLocaleDateString","toLocaleTimeString","hour","minute","hour12","_GxIdeTeamDevBringChanges_renderObjectStateWithIcon","objectType","states","reverting","classes","revertPillAsButton","onClick","call","statesForButton","_GxIdeTeamDevBringChanges_renderObjectsRows","objectsFiltered","map","commitObject","marked","markedObjectsSet","has","alreadyMerged","alreadyMergedObjectsIdsArray","find","errorOrWarningMessage","commitObjectsMessagesMap","get","state","MESSAGE_ICON","key","rowid","ref","el","setAttribute","size","renderObjectTypeWithIcon","description","_GxIdeTeamDevBringChanges_rowContextMenuHandler","ev","preventDefault","selectedRowsIds","tabularGridEl","getSelectedRows","contextMenuCallback","selection","clientX","detail","clientY","_GxIdeTeamDevBringChanges_rowMarkingChangedHandler","event","newobjectsMarkedSet","Set","markedRowsIds","rowsId","checkedObjectsIgnoringAlreadyMerged","filter","markedObjectId","includes","__classPrivateFieldSet","add","atLeastOneObjectIsChecked","objectCurrentState","markedRowIndex","findIndex","splice","_GxIdeTeamDevBringChanges_searchInputHandler","searchValue","toLowerCase","_GxIdeTeamDevBringChanges_updateFilteredObjects","_GxIdeTeamDevBringChanges_stateChangedHandler","stateFilterValue","filteredObjects","commitObjects","object","objectState","includesName","includesType","includesDescription","_GxIdeTeamDevBringChanges_sortTabularGridColumnCallback","e","columnId","objectProperty","dateType","COLUMNS_IDS","sortTabularGridColumn","_GxIdeTeamDevBringChanges_viewAllCommentsHandler","viewAllCommentsCallback","_GxIdeTeamDevBringChanges_editRangeHandler","editRangeCallback","objectsStatesMapChanged","newCommitObjectsStateMap","someObjectIsMerging","entries","commitObjectsChanged","newCommitObjects","componentWillLoad","Locale","getComponentStrings","commmits","commmit","all","value","warning","error","reverted","merged","updateObjectState","newState","message","checkedObject","push","markRow","render","enableRichRowSelector","disableControls","Host","model","commitDetail","revertChangesDetail","bringChangesDetail","genexusServer","href","target","knowledgeBase","currentVersion","mergeFromVersion","title","ids","from","to","buttons","editRange","htmlFor","comments","viewAllComments","replace","toString","viewComment","hideFilters","disabled","startImgSrc","placeholder","searchPlaceholder","onInput","statePlaceholder","revertSelected","mergeSelected","keyboardNavigationMode","rowSelectionMode","onRowMarkingChanged","onRowContextMenu","columnName","columnType","richRowSelector","richRowSelectorMode","settingable","sortable","onColumnSortChanged","config","tabularGrid","colSize","action","status","isAnimated","stateIconSrc","stateTitle","cancelLabel","loader","loaderTitle","show"],"sources":["src/components/team-dev/bring-changes/bring-changes.scss?tag=gx-ide-team-dev-bring-changes&encapsulation=shadow","src/components/team-dev/bring-changes/bring-changes.tsx"],"sourcesContent":["@import \"../common/styles.scss\";\n@import \"../../../../node_modules/@genexus/mercury/dist/assets/scss/helpers.scss\";\n@import \"../../../global/gx-ide-mixins.scss\";\n\n:host {\n --pill-border-radius: 12px;\n --pill-padding-inline: 8px;\n --pill-padding-block: 2px;\n --pill-font-size: var(--font-size-body-s);\n\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content max-content 1fr;\n}\n$header-item-common-inline-padding: 24px;\n$header-item-common-separator-border: 1px solid\n var(--mer-border-color__on-elevation--01);\n\n%header-item-common-inline-sizes {\n max-inline-size: 250px;\n min-inline-size: 180px;\n}\n%header-item-common {\n padding-inline: $header-item-common-inline-padding;\n border-inline-end: $header-item-common-separator-border;\n @extend %header-item-common-inline-sizes;\n}\n%header-item-common-start {\n padding-inline-end: $header-item-common-inline-padding;\n border-inline-end: $header-item-common-separator-border;\n}\n%header-item-common-end {\n padding-inline-start: $header-item-common-inline-padding;\n}\n\n.section {\n display: contents;\n}\n\n.header {\n display: grid;\n gap: 24px;\n}\n\n// header detail\n.header__detail {\n display: grid;\n grid-template-areas:\n \"detail-title detail-title detail-title detail-title\"\n // \"detail-commit-name detail-commit-name detail-commit-name detail-commit-name\"\n \"detail-genexus-server detail-knowledge-base detail-current-version detail-merge-from-version\";\n row-gap: 16px;\n grid-auto-columns: max-content;\n // grid-template-columns: max-content auto auto auto;\n // grid-template-columns: minmax(250px, 350px) repeat(3, minmax(180px, 250px));\n}\n.detail__label {\n color: var(--mer-color__neutral-gray--400);\n}\n.detail__title {\n grid-area: detail-title;\n}\n.detail__commit-name {\n grid-area: detail-commit-name;\n}\n.detail__genexus-server {\n grid-area: detail-genexus-server;\n @extend %header-item-common-start;\n\n > a {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n display: inline-block;\n }\n}\n.detail__link {\n align-items: start;\n color: var(--mer-text__primary);\n text-decoration: underline;\n &:hover {\n color: var(--mer-text__primary--hover);\n }\n &:active {\n color: var(--mer-text__primary--active);\n }\n}\n.detail__knowledge-base {\n grid-area: detail-knowledge-base;\n @extend %header-item-common;\n}\n.detail__current-version {\n grid-area: detail-current-version;\n @extend %header-item-common;\n}\n.detail__merge-from-version {\n grid-area: detail-merge-from-version;\n @extend %header-item-common-end;\n}\n\n// header information\n.header__information {\n display: grid;\n row-gap: 10px;\n grid-template-areas:\n \"information-title information-title\"\n \"information-col-1 information-col-2\";\n grid-template-columns: max-content 1fr;\n grid-template-rows: max-content max-content;\n}\n.information__title {\n grid-area: information-title;\n}\n.information__col-1 {\n grid-area: information-col-1;\n display: flex;\n gap: 24px;\n}\n.information__col-1.divider {\n @extend %header-item-common-start;\n}\n\n//header comments\n.header__comments .layout__panel {\n justify-items: start;\n text-align: left;\n}\n\n// filter / controls-container\n.controls-container {\n display: grid;\n}\n\n.controls-container.margin-block-start {\n margin-block-start: 24px;\n}\n.filter {\n grid-template-columns: 232px 186px 1fr;\n gap: 12px;\n}\n.button-merge-checked {\n margin-inline-start: auto;\n}\n\n// main\n.main {\n position: relative;\n display: grid;\n overflow: auto;\n}\n.loader {\n position: relative;\n inline-size: 100%;\n block-size: 100%;\n inset-block-start: 0;\n}\n.tabular-grid {\n border-radius: 4px;\n overflow: hidden;\n}\n\n.empty-state {\n block-size: 100%;\n}\n.loader {\n --elevation-background-color: var(--mer-surface__elevation--01);\n}\n\n.tabular-grid.empty-result::part(main) {\n // WA to avoid scrollbar flickering when displaying the empty-state message\n overflow: hidden;\n}\n\n.comments-container {\n @include ellipsis;\n}\n\n.button-tertiary.edit-range-button {\n padding-block: 0;\n align-content: flex-end;\n}\n\n// - - - - - - - - - - - - - -\n// WA (WORK AROUNDS)\n// - - - - - - - - - - - - - -\n\n.input-comments-container {\n position: relative;\n}\n// ch-edit for comments WA's\n// Figma design for this component displays the textarea witout border, and with a little more line-height.\n// The following styles are a temporary WA that should be brouhgt to Mercury DS.\n.input-comments {\n --control__border-color: transparent;\n padding-block: 0 !important;\n padding-inline: 0 !important;\n --line-height-tight: 1.4;\n block-size: 100%;\n background-color: var(--mer-surface);\n transition:\n var(--mer-timing--super-fast) block-size,\n var(--mer-timing--super-fast) background-color,\n var(--mer-timing--super-fast) padding-block,\n var(--mer-timing--super-fast) padding-inline;\n}\n.input-comments:focus {\n position: absolute;\n block-size: 200px;\n inline-size: 100%;\n z-index: 99;\n background-color: var(--mer-surface__elevation--01);\n padding-block: var(--control__padding-block) !important;\n padding-inline: var(--control__padding-inline) !important;\n}\n\nch-tabular-grid-cell.tabular-grid-cell::part(actions-icon) {\n background-size: contain; //force icon fit container\n margin-inline-end: 0;\n --icon-path: var(--icon__gemini-tools_show-more-vertical_neutral--enabled);\n cursor: pointer;\n &:hover {\n --icon-path: var(--icon__gemini-tools_show-more-vertical_neutral--hover);\n }\n &:active {\n --icon-path: var(--icon__gemini-tools_show-more-vertical_neutral--active);\n }\n}\n\n.tabular-grid-row-actions::part(main),\n.property-grid-row-actions::part(main) {\n // gap not required since buttons are tertiary.\n // extra space perceived.\n gap: 0 !important;\n}\n\n.tabular-grid-row-actions {\n // Butons are center by default, but design dictates start alignemnt\n > button {\n justify-content: start;\n }\n}\n\n// These static type of pills do not exist on Mercury yet.\n// They should be defined on Mercury. The actual pills on Mercury\n// are combo-boxes. Not what we need for this case.\n\n.pill {\n --pill-background-color: transparent;\n --pill-color: transparent;\n --pill-border-color: transparent;\n\n background-color: var(--pill-background-color);\n color: var(--pill-color);\n border: 1px solid var(--pill-border-color);\n inline-size: 100%;\n padding: var(--pill-padding-block) var(--pill-padding-inline);\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--pill-border-radius);\n position: relative;\n font-weight: var(--font-weight-semi-bold);\n\n &--to-merge,\n &--to-revert {\n --pill-background-color: var(--mer-color__tinted-primary--8);\n --pill-color: var(--mer-border-color__primary);\n --pill-border-color: var(--mer-color__tinted-primary--50);\n }\n &--to-merge-marked {\n --pill-background-color: var();\n --pill-color: var(--mer-border-color__primary);\n --pill-border-color: var();\n }\n &--pending {\n --pill-background-color: var(--mer-color__tinted-primary--8);\n --pill-color: var(--mer-border-color__primary);\n --pill-border-color: var(--mer-color__tinted-primary--50);\n }\n &--warning {\n --pill-background-color: var(--mer-color__tinted-yellow--5);\n --pill-color: var(--mer-border-color__warning);\n --pill-border-color: var(--mer-color__tinted-yellow--60);\n }\n &--error {\n --pill-background-color: var(--mer-color__tinted-red--5);\n --pill-color: var(--mer-border-color__error);\n --pill-border-color: var(--mer-color__tinted-red--60);\n }\n &--merged,\n &--reverted {\n --pill-background-color: var(--mer-color__tinted-green--5);\n --pill-color: var(--mer-border-color__success);\n --pill-border-color: var(--mer-color__tinted-green--60);\n }\n &--transitioning {\n // used to hide the text, before updating the caption (smooth transtion)\n --pill-color: transparent;\n }\n}\n.merging-spinner-caption {\n display: flex;\n align-items: center;\n gap: 6px;\n $size: 14px;\n --status-circle-color: transparent;\n --status-circle-size: $size;\n --status-circle-inset-inline-start: 14px;\n --pill-color: var(--mer-border-color__primary);\n &::before {\n display: inline-block;\n content: \"\";\n\n @include spinner(\n $size,\n var(--mer-color__primary--300),\n var(--mer-color__tinted-primary--50)\n );\n }\n}\n.tabular-grid .button-secondary {\n --control__padding-block: var(--pill-padding-block);\n --control__padding-inline: var(--pill-padding-inline);\n font-size: inherit;\n font-weight: inherit;\n /* font-size: var(--pill-font-size); */\n}\n\n.tabular-grid .tabular-grid-cell--for-pill {\n --grid-cell__padding-block: 4px;\n align-items: center;\n justify-content: center;\n\n // --grid-cell__padding-inline: 0;\n}\n\n.tabular-grid.disabled-custom-selector .tabular-grid-cell::part(selector-label),\n.tabular-grid.disabled-custom-selector .tabular-grid-column::part(bar-selector),\n.tabular-grid.disabled-custom-selector .tabular-grid-cell::part(actions-icon) {\n pointer-events: none;\n opacity: 0.5;\n}\n.tabular-grid-column--settings-custom-selector,\n.tabular-grid-cell--settings-custom-selector {\n --grid-cell__padding-inline: 0;\n --grid-cell__padding-block: 0;\n}\n.tabular-grid-cell::part(actions-icon) {\n padding-block: 6px;\n}\nch-tabular-grid-cell.tabular-grid-cell::part(actions-icon) {\n block-size: 100%;\n display: block;\n background-size: 14px;\n padding-inline: 16px;\n}\n\n.tabular-grid-cell.no-checkbox-custom-selector::part(selector-label) {\n visibility: hidden;\n}\n\n.tabular-grid-row-actions::part(window) {\n background-color: var(--mer-surface__elevation--02) !important;\n}\n\n.tabular-grid-row .tabular-grid-cell:nth-child(3) {\n min-inline-size: 400px;\n}\n\n// - - - - - - - - - - - - - -\n// END OF WA\n// - - - - - - - - - - - - - -\n","import {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method,\n JSX,\n Watch\n} from \"@stencil/core\";\n\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport {\n ChEditCustomEvent,\n TabularGridMarkingChangedEvent,\n TabularGridColumnSortChangedEvent,\n TabularGridRowContextMenuEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { ObjectType } from \"../../../components\";\n\nimport { config } from \"../../../common/config\";\n\nimport { ContextMenuCallback } from \"../../../components\";\n\nimport { renderObjectTypeWithIcon } from \"../common/utilities\";\n\nimport { COLUMNS_IDS } from \"../version-control/common/tabular-grid-render\";\nimport sortTabularGridColumn, {\n type SortTabularGridColumnDataType\n} from \"../../../common/chameleon/tabular-grid-column-sort\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/tabular-grid\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"chameleon/scrollbar\",\n \"components/tooltip\"\n];\n\nconst COMBO_BOX_ALL_VALUE = \"all\";\n\nconst DETAIL_LABEL_CLASSES = \"detail__label body-semi-bold-s\";\n\nconst ADD_ICON = getIconPath({\n category: \"system\",\n name: \"add\",\n colorType: \"on-elevation\"\n});\nconst EDITED_ICON = getIconPath({\n category: \"system\",\n name: \"edit\",\n colorType: \"on-elevation\"\n});\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-elevation\"\n});\nconst SEARCH_ICON = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-elevation\"\n});\nconst SUBSTRACT_ICON = getIconPath({\n category: \"system\",\n name: \"substract\",\n colorType: \"on-elevation\"\n});\nconst WARNING_ICON = getIconPath({\n category: \"system\",\n name: \"warning\",\n colorType: \"warning\"\n});\nconst ERROR_ICON = getIconPath({\n category: \"system\",\n name: \"error\",\n colorType: \"error\"\n});\n\n@Component({\n tag: \"gx-ide-team-dev-bring-changes\",\n styleUrl: \"bring-changes.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-changes\"]\n})\nexport class GxIdeTeamDevBringChanges {\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 #commitLabel: string;\n #comboBoxStatesModel: { caption: string; value: ObjectStateForFilter }[];\n #checkedObjectsIdsArray: string[] = [];\n\n @Element() el: HTMLGxIdeTeamDevBringChangesElement;\n\n private tabularGridEl!: HTMLChTabularGridElement;\n\n /**\n * An array that holds the id's of the objects that have been merged already.\n */\n @State() alreadyMergedObjectsIdsArray: string[] = [];\n\n /**\n * It hols a boolean indicating if at least one object from the tabular-grid is checked, for merging.\n */\n @State() atLeastOneObjectIsChecked: boolean = false;\n\n /**\n * True while commitObjects hasn't been loaded or is empty. Used to display a loader.\n */\n @State() loading: boolean = true;\n\n /**\n * It hols a boolean indicating if at least one object from the tabular-grid is checked, for merging.\n */\n @State() objectsFiltered: CommitObject[] = [];\n\n /**\n * The current search filter value\n */\n @State() searchValue: string = \"\";\n\n /**\n * The current state filter value\n */\n @State() stateFilterValue: ObjectStateForFilter = COMBO_BOX_ALL_VALUE;\n\n /**\n * A set that stores the marked state of each object cell. This is necessary because filtering the grid * causes marked cells to lose their state.\n */\n @State() markedObjectsSet: Set<string> = new Set<string>();\n\n /**\n * A map that holds the current commit objects states (\"pending\" | \"warning\" | \"error\" | \"merged\" | \"reverted\")\n */\n @State() objectsStatesMap: Map<string, ObjectState> = new Map();\n @Watch(\"objectsStatesMap\")\n objectsStatesMapChanged(newCommitObjectsStateMap: Map<string, ObjectState>) {\n const someObjectIsMerging = [...newCommitObjectsStateMap.entries()].find(\n ([, state]) => state === \"merging\" || state === \"reverting\"\n );\n\n if (!someObjectIsMerging) {\n this.merging = false;\n }\n }\n\n /**\n * A map that holds object messages, if any, for objects that could not be merged (these objects are in a \"warning\" or \"error\" state)\n */\n @State() commitObjectsMessagesMap: Map<string, string> = new Map();\n\n /**\n * Set to true when objects are being mered. This helps disabling controls until all objects are done.\n */\n @State() merging: boolean = false;\n\n /**\n * Detail about the commit\n */\n @Prop() readonly commitDetail: CommitDetail;\n\n /**\n * Commit information\n */\n @Prop() readonly commitInformation: CommitInformation[] = [];\n\n /**\n * Array of commit\n */\n @Prop() readonly commitObjects: CommitObject[] = [];\n @Watch(\"commitObjects\")\n commitObjectsChanged(newCommitObjects: CommitObject[]) {\n this.loading = true;\n if (newCommitObjects.length) {\n // This is the first and only objects asignment\n this.loading = false;\n\n // All commit objects begin as \"pending to merge\"\n newCommitObjects.forEach(commitObject => {\n this.objectsStatesMap.set(\n commitObject.id,\n this.operationType === \"revert\" ? \"to-revert\" : \"to-merge\"\n );\n });\n\n this.objectsFiltered = this.commitObjects;\n }\n }\n\n /**\n * Determines whether the filters are rendered or not.\n */\n @Prop() readonly hideFilters: boolean = false;\n\n /**\n * The type of operation to perform: \"merge\" or \"revert\".\n */\n @Prop() readonly operationType: OperationType = \"merge\";\n\n /**\n * The callback that is triggered when the user wants to merge more than one commit.\n */\n @Prop() readonly mergeObjectsCallback!: MergeObjectsCallback;\n\n /**\n * If true, the \"Action\" column will display a button instead of a pill, only when the action is\n */\n @Prop() readonly revertPillAsButton: boolean = false;\n\n /**\n * Invoked when user activates the context menu on th grid.\n */\n @Prop() readonly contextMenuCallback!: ContextMenuCallback;\n\n /**\n * Callback to be executed when the user wants to view all comments.\n */\n @Prop() readonly viewAllCommentsCallback!: () => Promise<void>;\n\n /**\n * Callback to be executed when the user wants to edit the range.\n */\n @Prop() readonly editRangeCallback!: () => Promise<void>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#commitLabel =\n this.commitInformation.length > 1\n ? this.#componentLocale.commmits\n : this.#componentLocale.commmit;\n\n // Initiate \"states\" combo box filter\n this.#comboBoxStatesModel = [\n {\n caption: this.#componentLocale.states.all,\n value: COMBO_BOX_ALL_VALUE\n },\n {\n caption:\n this.operationType === \"revert\"\n ? this.#componentLocale.states[\"to-revert\"]\n : this.#componentLocale.states[\"to-merge\"],\n value: this.operationType === \"revert\" ? \"to-revert\" : \"to-merge\"\n },\n {\n caption: this.#componentLocale.states.warning,\n value: \"warning\"\n },\n {\n caption: this.#componentLocale.states.error,\n value: \"error\"\n },\n {\n caption:\n this.operationType === \"revert\"\n ? this.#componentLocale.states.reverted\n : this.#componentLocale.states.merged,\n value: this.operationType === \"revert\" ? \"reverted\" : \"merged\"\n }\n ];\n\n if (this.commitObjects?.length) {\n // if commitObjects already set...\n this.commitObjectsChanged(this.commitObjects);\n }\n }\n\n #formatComments = (): JSX.Element => {\n if (this.commitInformation.length === 1) {\n return <span>{this.commitInformation[0].comment}</span>;\n }\n const firstComment =\n this.commitInformation[this.commitInformation.length - 1].comment;\n return <span>{`${this.#componentLocale.latest}: ${firstComment}...`}</span>;\n };\n\n #mergeCheckedClickedHandler = async () => {\n this.merging = true;\n const newobjectsStatesMap = new Map(this.objectsStatesMap);\n this.#checkedObjectsIdsArray.forEach(checkedObjectId => {\n newobjectsStatesMap.set(\n checkedObjectId,\n this.operationType === \"revert\" ? \"reverting\" : \"merging\"\n );\n });\n\n this.objectsStatesMap = newobjectsStatesMap;\n await this.mergeObjectsCallback(this.#checkedObjectsIdsArray);\n };\n\n #mergeSingleObject: (objectId: string) => () => void =\n objectId => async () => {\n this.merging = true;\n const newobjectsStatesMap = new Map(this.objectsStatesMap);\n newobjectsStatesMap.set(\n objectId,\n this.operationType === \"revert\" ? \"reverting\" : \"merging\"\n );\n this.objectsStatesMap = newobjectsStatesMap;\n await this.mergeObjectsCallback([objectId]);\n };\n\n #renderActionCellContent = (\n actionTaken: ObjectActionTaken\n ): JSX.Element[] => {\n let icon: string;\n let caption: string;\n let iconColor: string;\n\n if (actionTaken === \"Deleted\") {\n icon = SUBSTRACT_ICON;\n caption = this.#componentLocale.objects.actions.delete;\n iconColor = \"--mer-icon__error\";\n } else if (actionTaken === \"Inserted\") {\n icon = ADD_ICON;\n caption = this.#componentLocale.objects.actions.insert;\n iconColor = \"--mer-icon__success\";\n } else {\n // modified\n icon = EDITED_ICON;\n caption = this.#componentLocale.objects.actions.modify;\n iconColor = \"--mer-icon__warning\";\n }\n\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image\n type=\"mask\"\n class=\"icon-md\"\n src={icon}\n style={{ backgroundColor: `var(${iconColor})` }}\n ></ch-image>\n {`${caption}`}\n </span>\n );\n };\n\n #renderCommitsNumbers = (onlyNumbers: boolean = false): string => {\n if (this.commitInformation?.length > 1) {\n // more than one commit\n return onlyNumbers\n ? `${this.commitInformation[0].id} ... ${\n this.commitInformation[this.commitInformation.length - 1].id\n }`\n : `${this.#commitLabel} ${this.commitInformation[0].id} ... ${\n this.commitInformation[this.commitInformation.length - 1].id\n }`;\n } else if (this.commitInformation?.length === 1) {\n // just one commit\n return onlyNumbers\n ? this.commitInformation[0].id\n : `${this.#commitLabel} ${this.commitInformation[0].id}`;\n } else {\n // Probably commits have not been loaded yet (loading state)\n return onlyNumbers\n ? `${this.#componentLocale.loading}`\n : `${this.#commitLabel} ${this.#componentLocale.loading}`;\n }\n };\n\n #renderFormatedDate = (date: Date): string => {\n const dateObject = new Date(date);\n const lang = navigator.languages?.[0] || navigator.language;\n\n return `${dateObject.toLocaleDateString(\n lang\n )} ${dateObject.toLocaleTimeString(lang, {\n hour: \"2-digit\",\n minute: \"2-digit\",\n hour12: false\n })}`;\n };\n\n #renderObjectStateWithIcon = (\n objectType: ObjectState,\n objectId: string\n ): JSX.Element[] => {\n if (objectType === \"merging\" || objectType === \"reverting\") {\n return (\n <span class=\"merging-spinner-caption\">\n {this.operationType === \"revert\"\n ? this.#componentLocale.states.reverting\n : this.#componentLocale.states.merging}\n </span>\n );\n }\n const classes = `pill pill--${objectType}`;\n if (\n this.revertPillAsButton &&\n (objectType === \"to-merge\" ||\n objectType === \"to-merge-marked\" ||\n objectType === \"to-revert\")\n ) {\n return (\n <button\n class={{ [classes]: true, \"button-secondary\": true }}\n onClick={this.#mergeSingleObject(objectId)}\n >\n {this.#componentLocale.statesForButton[objectType]}\n </button>\n );\n } else {\n return (\n <span class={classes}>{this.#componentLocale.states[objectType]}</span>\n );\n }\n };\n\n #renderObjectsRows = (): JSX.Element[] => {\n return this.objectsFiltered.map(commitObject => {\n const marked = this.markedObjectsSet.has(commitObject.id);\n\n const alreadyMerged = this.alreadyMergedObjectsIdsArray.find(\n checkedObjectId => checkedObjectId === commitObject.id\n );\n const errorOrWarningMessage = this.commitObjectsMessagesMap.get(\n commitObject.id\n );\n const state = this.objectsStatesMap.get(commitObject.id);\n\n let MESSAGE_ICON;\n if (state === \"error\") {\n MESSAGE_ICON = ERROR_ICON;\n } else if (state === \"warning\") {\n MESSAGE_ICON = WARNING_ICON;\n }\n\n return (\n <ch-tabular-grid-row\n class=\"tabular-grid-row\"\n key={commitObject.id}\n rowid={commitObject.id}\n ref={(el: HTMLElement) =>\n marked && el?.setAttribute(\"marked\", \"true\")\n }\n >\n <ch-tabular-grid-cell\n cell-type=\"rich\"\n row-selector=\"true\"\n class={{\n \"tabular-grid-cell\": true,\n \"no-checkbox-custom-selector\": alreadyMerged\n }}\n size=\"max-content\"\n >\n {commitObject.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectTypeWithIcon(commitObject.type)}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {commitObject.description}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#renderActionCellContent(commitObject.actionTaken)}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell tabular-grid-cell--for-pill\">\n {this.#renderObjectStateWithIcon(\n this.objectsStatesMap.get(commitObject.id),\n commitObject.id\n )}\n </ch-tabular-grid-cell>\n {errorOrWarningMessage && (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty\n class={{ \"tabular-grid-rowset-empty\": true, [state]: true }}\n >\n <p class=\"warning-error-description\">\n <ch-image\n class=\"icon-md warning-error-icon\"\n src={MESSAGE_ICON}\n ></ch-image>\n {errorOrWarningMessage}\n </p>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid-row>\n );\n });\n };\n\n #rowContextMenuHandler = async (\n ev: CustomEvent<TabularGridRowContextMenuEvent>\n ) => {\n ev.preventDefault();\n const selectedRowsIds = await this.tabularGridEl.getSelectedRows();\n\n await this.contextMenuCallback({\n selection: selectedRowsIds,\n clientX: ev.detail.clientX,\n clientY: ev.detail.clientY\n });\n };\n\n #rowMarkingChangedHandler = (\n event: CustomEvent<TabularGridMarkingChangedEvent>\n ) => {\n const newobjectsMarkedSet = new Set<string>();\n const newobjectsStatesMap = new Map(this.objectsStatesMap);\n const markedRowsIds = event.detail.rowsId;\n const checkedObjectsIgnoringAlreadyMerged = markedRowsIds.filter(\n markedObjectId =>\n !this.alreadyMergedObjectsIdsArray.includes(markedObjectId)\n );\n this.#checkedObjectsIdsArray = [...checkedObjectsIgnoringAlreadyMerged];\n\n // Update markedObjectsSet\n this.#checkedObjectsIdsArray.forEach(checkedObjectId => {\n newobjectsMarkedSet.add(checkedObjectId);\n });\n this.markedObjectsSet = newobjectsMarkedSet;\n\n this.atLeastOneObjectIsChecked = markedRowsIds.length > 0;\n\n newobjectsStatesMap.forEach(objectId => {\n const objectCurrentState = this.objectsStatesMap.get(objectId);\n if (\n objectCurrentState !== \"to-merge\" &&\n objectCurrentState !== \"to-merge-marked\"\n ) {\n return;\n }\n\n const markedRowIndex = markedRowsIds.findIndex(id => id === objectId);\n if (markedRowIndex !== -1) {\n newobjectsStatesMap.set(objectId, \"to-merge-marked\");\n markedRowsIds.splice(markedRowIndex, 1);\n markedRowsIds;\n } else {\n newobjectsStatesMap.set(objectId, \"to-merge\");\n }\n });\n\n this.objectsStatesMap = newobjectsStatesMap;\n };\n\n #searchInputHandler = (event: ChEditCustomEvent<string> | InputEvent) => {\n this.searchValue = (event.detail as string).toLowerCase();\n this.#updateFilteredObjects();\n };\n\n #stateChangedHandler = (event: CustomEvent<string> | InputEvent) => {\n this.stateFilterValue = event.detail as ObjectStateForFilter;\n this.#updateFilteredObjects();\n };\n\n #updateFilteredObjects = () => {\n let filteredObjects = [...this.commitObjects];\n\n // filter by state (ch-combo-box-render) ...\n if (this.stateFilterValue !== \"all\") {\n filteredObjects = filteredObjects.filter(object => {\n const objectState = this.objectsStatesMap.get(object.id);\n return objectState === this.stateFilterValue;\n });\n }\n\n // and filter by value (ch-edit) as well\n filteredObjects = filteredObjects.filter(object => {\n const includesName = object.name.toLowerCase().includes(this.searchValue);\n\n const includesType = object.type.name\n .toLowerCase()\n .includes(this.searchValue);\n\n const includesDescription = object.description\n .toLowerCase()\n .includes(this.searchValue);\n\n if (includesName || includesType || includesDescription) {\n return true;\n }\n return false;\n });\n\n this.objectsFiltered = filteredObjects;\n };\n\n /**\n * It allows the host updating an object state, by providing the object id.\n * @param objectId The ID of the object to update.\n * @param newState The new state to set on the object.\n * @param message Optional message explaining the change.\n *\n * @example\n * bringChanges.updateObjectState('obj-24', \"merging\", null);\n * bringChanges.updateObjectState('obj-27', \"error\", \"The server did not respond.\");\n */\n @Method()\n async updateObjectState(\n objectId: string,\n newState: ObjectState,\n message: string\n ) {\n // update object state\n const newobjectsStatesMap = new Map(this.objectsStatesMap);\n newobjectsStatesMap.set(objectId, newState);\n this.objectsStatesMap = newobjectsStatesMap;\n\n // add message if state is \"warning\" or \"error\"\n if (message?.length > 0) {\n this.commitObjectsMessagesMap.set(objectId, message);\n }\n\n if (newState === \"merged\" || newState === \"reverted\") {\n // remove from checked\n this.#checkedObjectsIdsArray = this.#checkedObjectsIdsArray.filter(\n checkedObject => checkedObject !== objectId\n );\n\n // add to \"already merged\". This will hide the checkbox\n this.alreadyMergedObjectsIdsArray.push(objectId);\n\n // unmark checkbox:\n this.tabularGridEl.markRow(objectId, false);\n\n // remove message if any\n this.commitObjectsMessagesMap.delete(objectId);\n }\n }\n\n #sortTabularGridColumnCallback = (\n e: CustomEvent<TabularGridColumnSortChangedEvent>\n ) => {\n const columnId = e.detail.columnId;\n\n let objectProperty;\n let dateType: SortTabularGridColumnDataType = \"string\";\n if (columnId === COLUMNS_IDS.type) {\n objectProperty = \"name\"; // the type name\n dateType = \"object\";\n }\n\n this.objectsFiltered = [\n ...sortTabularGridColumn(\n e,\n this.objectsFiltered,\n dateType,\n objectProperty\n )\n ];\n };\n\n #viewAllCommentsHandler = async () => {\n await this.viewAllCommentsCallback();\n };\n\n #editRangeHandler = async () => {\n await this.editRangeCallback();\n };\n\n render() {\n const enableRichRowSelector =\n this.alreadyMergedObjectsIdsArray.length !== this.commitObjects.length;\n\n const disableControls = this.merging || this.loading;\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\n // header details\n class=\"header__detail\"\n >\n <p class=\"detail__title subtitle-semi-bold-s\">\n {this.operationType === \"revert\"\n ? this.#componentLocale.commitDetail.revertChangesDetail\n : this.#componentLocale.commitDetail.bringChangesDetail}\n </p>\n {/* <p class=\"detail__commit-name subtitle-semi-bold-xs\">\n {this.#renderCommitsNumbers()}\n </p> */}\n <div\n // genexus server\n class=\"detail__genexus-server field field-block\"\n >\n <span class={DETAIL_LABEL_CLASSES}>\n {this.#componentLocale.commitDetail.genexusServer}\n </span>\n <a\n class=\"detail__link body-regular-s\"\n href={this.commitDetail.genexusServer}\n target=\"_blank\"\n >\n {this.commitDetail.genexusServer}\n </a>\n </div>\n\n <div\n // knowledge base\n class=\"detail__knowledge-base field field-block\"\n >\n <span class={DETAIL_LABEL_CLASSES}>\n {this.#componentLocale.commitDetail.knowledgeBase}\n </span>\n <p class=\"body-regular-s\">{this.commitDetail.knowledgeBase}</p>\n </div>\n\n <div\n // current version\n class=\"detail__current-version field field-block\"\n >\n <span class={DETAIL_LABEL_CLASSES}>\n {this.#componentLocale.commitDetail.currentVersion}\n </span>\n <a class=\"body-regular-s\">{this.commitDetail.currentVersion}</a>\n </div>\n {(this.operationType === \"merge\" ||\n this.operationType === \"merge-all\") && (\n <div\n // merge from version\n class=\"detail__merge-from-version field field-block\"\n >\n <span class={DETAIL_LABEL_CLASSES}>\n {this.#componentLocale.commitDetail.mergeFromVersion}\n </span>\n <p class=\"body-regular-s\">\n {this.commitDetail.mergeFromVersion}\n </p>\n </div>\n )}\n </div>\n <div\n // header information\n class=\"header__information\"\n >\n <p class=\"information__title subtitle-semi-bold-xs\">\n {this.#componentLocale.commitInformation.title}\n </p>\n <div\n // header information (col-1)\n class=\"information__col-1\"\n >\n <div\n // IDs\n class=\"field field-block\"\n >\n <span class={DETAIL_LABEL_CLASSES}>\n {this.commitInformation.length === 1\n ? this.#componentLocale.commitInformation.id\n : this.#componentLocale.commitInformation.ids}\n </span>\n <p class=\"body-regular-s\">\n {this.#renderCommitsNumbers(true)}\n </p>\n </div>\n {this.commitInformation.length === 1 ? (\n <div class=\"field field-block\">\n <span class={DETAIL_LABEL_CLASSES}>\n {this.#componentLocale.commitInformation.date}\n </span>\n <p class=\"body-regular-s\">\n {this.#renderFormatedDate(this.commitInformation[0].date)}\n </p>\n </div>\n ) : (\n [\n <div class=\"field field-block\">\n <span class={DETAIL_LABEL_CLASSES}>\n {this.#componentLocale.commitInformation.from}\n </span>\n <p class=\"body-regular-s\">\n {this.#renderFormatedDate(\n this.commitInformation[0].date\n )}\n </p>\n </div>,\n <div class=\"field field-block\">\n <span class={DETAIL_LABEL_CLASSES}>\n {this.#componentLocale.commitInformation.to}\n </span>\n <p class=\"body-regular-s\">\n {this.#renderFormatedDate(\n this.commitInformation[\n this.commitInformation.length - 1\n ].date\n )}\n </p>\n </div>,\n this.operationType === \"merge-all\" && (\n <button\n class=\"button-tertiary button-icon-and-text body-semi-bold-s edit-range-button\"\n type=\"button\"\n onClick={this.#editRangeHandler}\n >\n <ch-image\n class=\"icon-md\"\n src={EDITED_ICON}\n type=\"mask\"\n />\n {this.#componentLocale.buttons.editRange}\n </button>\n )\n ]\n )}\n </div>\n </div>\n <div class=\"header__comments\">\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label\n class={DETAIL_LABEL_CLASSES}\n htmlFor=\"commit-comments\"\n >\n {this.commitInformation.length > 1\n ? `${this.#componentLocale.commitInformation.comments} (${this.commitInformation.length})`\n : this.#componentLocale.commitInformation.comment}\n </label>\n <p class=\"body-regular-s comments-container\">\n {this.#formatComments()}\n </p>\n </div>\n <button\n class=\"button-tertiary body-semi-bold-s\"\n type=\"button\"\n onClick={this.#viewAllCommentsHandler}\n >\n {this.commitInformation.length > 1\n ? this.#componentLocale.buttons.viewAllComments.replace(\n \"{{commentsCount}}\",\n this.commitInformation.length.toString()\n )\n : this.#componentLocale.buttons.viewComment}\n </button>\n </div>\n </div>\n </div>\n </header>\n <div\n class={{\n \"controls-container\": true,\n \"filter\": !this.hideFilters,\n \"spacing-body-inline\": true\n }}\n >\n {!this.hideFilters && [\n <ch-edit\n class=\"input\"\n disabled={disableControls}\n startImgSrc={SEARCH_ICON}\n placeholder={this.#componentLocale.filter.searchPlaceholder}\n type=\"search\"\n onInput={this.#searchInputHandler}\n ></ch-edit>,\n <ch-combo-box-render\n class=\"combo-box\"\n disabled={disableControls}\n model={this.#comboBoxStatesModel}\n value={this.stateFilterValue}\n onInput={this.#stateChangedHandler}\n placeholder={this.#componentLocale.filter.statePlaceholder}\n ></ch-combo-box-render>\n ]}\n\n <button\n class=\"button-primary button-merge-checked\"\n disabled={!this.atLeastOneObjectIsChecked || disableControls}\n onClick={this.#mergeCheckedClickedHandler}\n >\n {this.operationType === \"revert\"\n ? this.#componentLocale.filter.revertSelected\n : this.#componentLocale.filter.mergeSelected}\n </button>\n </div>\n <div class=\"main spacing-body\">\n {this.commitObjects.length ? (\n <ch-tabular-grid\n class={{\n \"tabular-grid\": true,\n \"objects-tabular-grid\": true,\n \"disabled-custom-selector\": this.merging,\n \"empty-result\": this.objectsFiltered.length === 0\n }}\n keyboardNavigationMode=\"focus\"\n rowSelectionMode=\"multiple\"\n onRowMarkingChanged={this.#rowMarkingChangedHandler}\n onRowContextMenu={this.#rowContextMenuHandler}\n ref={(el: HTMLChTabularGridElement) =>\n (this.tabularGridEl = el as HTMLChTabularGridElement)\n }\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId={COLUMNS_IDS.name}\n columnName={this.#componentLocale.objects.name}\n columnType=\"rich\"\n richRowSelector={enableRichRowSelector}\n richRowSelectorMode=\"mark\"\n settingable={false}\n sortable={true}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n size=\"max-content\"\n />\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId={COLUMNS_IDS.type}\n columnName={this.#componentLocale.objects.type}\n settingable={false}\n sortable={true}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n size=\"max-content\"\n />\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId={COLUMNS_IDS.description}\n columnName={this.#componentLocale.objects.description}\n settingable={false}\n sortable={true}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n size={config.tabularGrid.colSize.description}\n />\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId={COLUMNS_IDS.action}\n columnName={this.#componentLocale.objects.action}\n settingable={false}\n sortable={false}\n size=\"max-content\"\n />\n <ch-tabular-grid-column\n // size of this column should the enough for the largest pill, and no more.\n // this prevents layout shifts when pills state changes.\n class=\"tabular-grid-column\"\n columnId={COLUMNS_IDS.status}\n columnName={this.#componentLocale.objects.status}\n settingable={false}\n sortable={false}\n size=\"100px\"\n />\n </ch-tabular-grid-columnset>\n {this.#renderObjectsRows()}\n\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objectsFiltered.length === 0 && (\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n class=\"empty-state\"\n isAnimated\n stateIconSrc={FILTER_ICON}\n stateTitle=\"No object matched your filter\"\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n )}\n </ch-tabular-grid-rowset>\n </ch-tabular-grid>\n ) : (\n <gx-ide-loader\n cancelLabel={this.#componentLocale.loader.cancelLabel}\n loaderTitle={this.#componentLocale.loader.title}\n description={this.#componentLocale.loader.description}\n show\n class=\"loader\"\n ></gx-ide-loader>\n )}\n </div>\n </section>\n </Host>\n );\n }\n}\n\nexport type OperationType = \"merge\" | \"revert\" | \"merge-all\";\n\nexport type CommitDetail = {\n genexusServer: string;\n knowledgeBase: string;\n currentVersion: string;\n mergeFromVersion: string;\n};\n\nexport type CommitInformation = {\n id: string;\n comment: string;\n date: Date;\n};\n\nexport type CommitObject = {\n id: string;\n date: Date;\n name: string;\n type: ObjectType;\n description: string;\n actionTaken: ObjectActionTaken;\n};\n\nexport type ObjectActionTaken =\n | \"Inserted\"\n | \"Deleted\"\n | \"Modified\"\n | \"Unchanged\"\n | \"Unknown\";\n\nexport type ObjectState =\n | \"to-merge\"\n | \"to-merge-marked\"\n | \"to-revert\"\n | \"merging\"\n | \"pending\"\n | \"warning\"\n | \"error\"\n | \"merged\"\n | \"reverted\"\n | \"reverting\";\n\ntype ObjectStateForFilter =\n | Extract<\n ObjectState,\n \"to-merge\" | \"to-revert\" | \"warning\" | \"error\" | \"merged\" | \"reverted\"\n >\n | \"all\";\n\nexport type MergeObjectsCallback = (objectsIds: string[]) => Promise<void>;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare class GxIdeCommentsViewer {
|
|
2
|
+
#private;
|
|
3
|
+
el: HTMLGxIdeCommentsViewerElement;
|
|
4
|
+
/**
|
|
5
|
+
* Comments data to display
|
|
6
|
+
*/
|
|
7
|
+
readonly commentsData: CommentData[];
|
|
8
|
+
/**
|
|
9
|
+
* Callback to be executed when the user closes the viewer
|
|
10
|
+
*/
|
|
11
|
+
readonly closeCallback: () => Promise<void>;
|
|
12
|
+
componentWillLoad(): Promise<void>;
|
|
13
|
+
render(): any;
|
|
14
|
+
}
|
|
15
|
+
export type CommentData = {
|
|
16
|
+
date: string;
|
|
17
|
+
user: string;
|
|
18
|
+
comment: string;
|
|
19
|
+
};
|
package/dist/types/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.d.ts
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { RadioGroupModel } from "@genexus/chameleon-controls-library";
|
|
2
|
+
import { FormSubmitResult } from "../../../components";
|
|
3
|
+
import { ControlValidation } from "../../../common/form-validation";
|
|
4
|
+
export declare class GxIdeBringAllChangesSelector {
|
|
5
|
+
#private;
|
|
6
|
+
el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;
|
|
7
|
+
/**
|
|
8
|
+
* Date from which the commits will be merged
|
|
9
|
+
*/
|
|
10
|
+
sinceCommitDate: Date | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* Number from which the commits will be merged
|
|
13
|
+
*/
|
|
14
|
+
sinceCommitNumber: number | undefined;
|
|
15
|
+
/**
|
|
16
|
+
* The selected option from the radio group.
|
|
17
|
+
*/
|
|
18
|
+
selectedOption: MergeActionTaken;
|
|
19
|
+
/**
|
|
20
|
+
* Model for the radio group.
|
|
21
|
+
*/
|
|
22
|
+
radioGroupModel: RadioGroupModel;
|
|
23
|
+
/**
|
|
24
|
+
* Map of validatable controls in the form.
|
|
25
|
+
*/
|
|
26
|
+
validatableControls: Map<string, ControlValidation>;
|
|
27
|
+
/**
|
|
28
|
+
* Callback that must be invoked when the 'Cancel' button is pressed.
|
|
29
|
+
*/
|
|
30
|
+
readonly cancelCallback: () => Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Callback that must be invoked when the 'Confirm' button is pressed.
|
|
33
|
+
*/
|
|
34
|
+
readonly confirmCallback: (selectedMergeActionData: SelectedMergeActionData) => Promise<FormSubmitResult>;
|
|
35
|
+
componentWillLoad(): Promise<void>;
|
|
36
|
+
componentDidRender(): void;
|
|
37
|
+
render(): any;
|
|
38
|
+
}
|
|
39
|
+
export type SelectedMergeActionData = {
|
|
40
|
+
operationType: MergeActionTaken;
|
|
41
|
+
fromDate?: Date;
|
|
42
|
+
fromRevision?: number;
|
|
43
|
+
};
|
|
44
|
+
export type MergeActionTaken = "fromCommitDate" | "fromCommitNumber";
|
|
45
|
+
export type LastDates = "lastSevenDays" | "lastThirtyDays" | "lastNinetyDays";
|
|
@@ -78,6 +78,14 @@ export declare class GxIdeTeamDevBringChanges {
|
|
|
78
78
|
* Invoked when user activates the context menu on th grid.
|
|
79
79
|
*/
|
|
80
80
|
readonly contextMenuCallback: ContextMenuCallback;
|
|
81
|
+
/**
|
|
82
|
+
* Callback to be executed when the user wants to view all comments.
|
|
83
|
+
*/
|
|
84
|
+
readonly viewAllCommentsCallback: () => Promise<void>;
|
|
85
|
+
/**
|
|
86
|
+
* Callback to be executed when the user wants to edit the range.
|
|
87
|
+
*/
|
|
88
|
+
readonly editRangeCallback: () => Promise<void>;
|
|
81
89
|
componentWillLoad(): Promise<void>;
|
|
82
90
|
/**
|
|
83
91
|
* It allows the host updating an object state, by providing the object id.
|
|
@@ -92,7 +100,7 @@ export declare class GxIdeTeamDevBringChanges {
|
|
|
92
100
|
updateObjectState(objectId: string, newState: ObjectState, message: string): Promise<void>;
|
|
93
101
|
render(): any;
|
|
94
102
|
}
|
|
95
|
-
export type OperationType = "merge" | "revert";
|
|
103
|
+
export type OperationType = "merge" | "revert" | "merge-all";
|
|
96
104
|
export type CommitDetail = {
|
|
97
105
|
genexusServer: string;
|
|
98
106
|
knowledgeBase: string;
|
|
@@ -46,6 +46,10 @@ export declare class GxIdeTeamDevPreview {
|
|
|
46
46
|
* Indicates if the update process is ongoing
|
|
47
47
|
*/
|
|
48
48
|
updatingChanges: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Indicates if the server operations (commit/update) should be disabled
|
|
51
|
+
*/
|
|
52
|
+
serverOperationsDisabled: boolean;
|
|
49
53
|
/**
|
|
50
54
|
* Data required to render the Team Dev Preview
|
|
51
55
|
*/
|
|
@@ -93,6 +97,10 @@ export declare class GxIdeTeamDevPreview {
|
|
|
93
97
|
* Used by the host to reload remote or local changes
|
|
94
98
|
*/
|
|
95
99
|
reloadChanges(type: TeamDevPreviewMode): Promise<void>;
|
|
100
|
+
/**
|
|
101
|
+
* Used by the host to instruct the component to disable the commit/update button.
|
|
102
|
+
*/
|
|
103
|
+
disableServerOperations(value: boolean): Promise<void>;
|
|
96
104
|
private getEmptyStateType;
|
|
97
105
|
render(): any;
|
|
98
106
|
}
|
|
@@ -71,6 +71,10 @@ export declare class GxIdeTeamDevUpdate {
|
|
|
71
71
|
* The selected type
|
|
72
72
|
*/
|
|
73
73
|
selectedType: string;
|
|
74
|
+
/**
|
|
75
|
+
* Indicates if the update button should be disabled
|
|
76
|
+
*/
|
|
77
|
+
isUpdateDisabled: boolean;
|
|
74
78
|
/**
|
|
75
79
|
* A map that holds the current update objects states ("inserted" | "modified" | "modified-with-conflicts" | "deleted" | "updating" | "update")
|
|
76
80
|
*/
|
|
@@ -127,6 +131,10 @@ export declare class GxIdeTeamDevUpdate {
|
|
|
127
131
|
* Used by the host to instruct the component to force a data reload in the grids.
|
|
128
132
|
*/
|
|
129
133
|
reload(): Promise<void>;
|
|
134
|
+
/**
|
|
135
|
+
* Used by the host to instruct the component to disable the update button.
|
|
136
|
+
*/
|
|
137
|
+
disableUpdate(value: boolean): Promise<void>;
|
|
130
138
|
render(): any;
|
|
131
139
|
}
|
|
132
140
|
export type ContextMenuCallback = (source: UpdateSourceType, contextMenuInfo: ContextMenuInfo) => Promise<void>;
|
|
@@ -132,6 +132,10 @@ export declare class GxIdeTeamDevCommit {
|
|
|
132
132
|
* folder options as ComboBoxModel
|
|
133
133
|
*/
|
|
134
134
|
foldersComboBoxModel: ComboBoxModel;
|
|
135
|
+
/**
|
|
136
|
+
* Indicates if the commit button should be disabled
|
|
137
|
+
*/
|
|
138
|
+
isCommitDisabled: boolean;
|
|
135
139
|
/**
|
|
136
140
|
* Invoked when user starts the commit process
|
|
137
141
|
*/
|
|
@@ -189,5 +193,9 @@ export declare class GxIdeTeamDevCommit {
|
|
|
189
193
|
* Used by the host to instruct the component to force a data reload in the grids.
|
|
190
194
|
*/
|
|
191
195
|
reload(): Promise<void>;
|
|
196
|
+
/**
|
|
197
|
+
* Used by the host to instruct the component to disable the commit button.
|
|
198
|
+
*/
|
|
199
|
+
disableCommit(value: boolean): Promise<void>;
|
|
192
200
|
render(): any;
|
|
193
201
|
}
|
|
@@ -21,6 +21,7 @@ export interface ModifiedObject {
|
|
|
21
21
|
description?: string;
|
|
22
22
|
modifiedOn?: Date;
|
|
23
23
|
status?: UpdateStatus;
|
|
24
|
+
module: string;
|
|
24
25
|
}
|
|
25
26
|
export type Action = "inserted" | "modified" | "modified-with-conflicts" | "deleted";
|
|
26
27
|
export type ActionForFilter = Action | "all-actions";
|
|
@@ -16,6 +16,7 @@ import { SelectionData } from "./components/bpm/objects-selector/bpm-objects-sel
|
|
|
16
16
|
import { SyncData } from "./components/bpm/sync-gam-roles/bpm-sync-gam-roles";
|
|
17
17
|
import { CancelCallback as CancelCallback3, ConfirmCallback as ConfirmCallback2, SelectDocumentCallback, SuggestDocumentsCallback, TaskDocumentData } from "./components/bpm/task-documents/task-documents";
|
|
18
18
|
import { TimerDuration } from "./components/bpm/timer-duration/bpm-timer-duration";
|
|
19
|
+
import { CommentData } from "./components/_helpers/comments-viewer/comments-viewer";
|
|
19
20
|
import { AuthenticationType, GXServerConnectionData } from "./components/team-dev/connect-gx-server/connect-gx-server";
|
|
20
21
|
import { ContextMenuInfo, EntityData as EntityData1, FormSubmitResult, GxOption, ImportItemResultData, LabelPosition as LabelPosition1, ObjectBaseData, ObjectType } from "./common/types";
|
|
21
22
|
import { NewServerConnectionData } from "./components/team-dev/server-selector/server-selector";
|
|
@@ -64,6 +65,7 @@ import { MessageType } from "./components/splash/splash";
|
|
|
64
65
|
import { RecentKBData, SampleData, SecondarySection } from "./components/start-page/start-page";
|
|
65
66
|
import { CancelCallback as CancelCallback16, SaveCallback as SaveCallback1 } from "./components/_starting-template/starting-template";
|
|
66
67
|
import { CheckedItemsInfo as CheckedItemsInfo1 } from "./components/_helpers/list-selector/list-selector";
|
|
68
|
+
import { SelectedMergeActionData } from "./components/team-dev/bring-all-changes-selector/bring-all-changes-selector";
|
|
67
69
|
import { CommitDetail, CommitInformation, CommitObject, MergeObjectsCallback, ObjectState, OperationType } from "./components/team-dev/bring-changes/bring-changes";
|
|
68
70
|
import { CommitCallback, ContextMenuCallback as ContextMenuCallback1, LoadLocalChangesCallback, LoadRemoteChangesCallback, PendingItemsCheckedCallback, SelectCallback, ServerDetails, UpdateCallback } from "./components/team-dev/version-control/common/types";
|
|
69
71
|
import { LoadCallback as LoadCallback4, LoadDetailCallback, ObjectType as ObjectType1, SelectedVersionChangeCallback } from "./components/team-dev/history/history";
|
|
@@ -90,6 +92,7 @@ export { SelectionData } from "./components/bpm/objects-selector/bpm-objects-sel
|
|
|
90
92
|
export { SyncData } from "./components/bpm/sync-gam-roles/bpm-sync-gam-roles";
|
|
91
93
|
export { CancelCallback as CancelCallback3, ConfirmCallback as ConfirmCallback2, SelectDocumentCallback, SuggestDocumentsCallback, TaskDocumentData } from "./components/bpm/task-documents/task-documents";
|
|
92
94
|
export { TimerDuration } from "./components/bpm/timer-duration/bpm-timer-duration";
|
|
95
|
+
export { CommentData } from "./components/_helpers/comments-viewer/comments-viewer";
|
|
93
96
|
export { AuthenticationType, GXServerConnectionData } from "./components/team-dev/connect-gx-server/connect-gx-server";
|
|
94
97
|
export { ContextMenuInfo, EntityData as EntityData1, FormSubmitResult, GxOption, ImportItemResultData, LabelPosition as LabelPosition1, ObjectBaseData, ObjectType } from "./common/types";
|
|
95
98
|
export { NewServerConnectionData } from "./components/team-dev/server-selector/server-selector";
|
|
@@ -138,6 +141,7 @@ export { MessageType } from "./components/splash/splash";
|
|
|
138
141
|
export { RecentKBData, SampleData, SecondarySection } from "./components/start-page/start-page";
|
|
139
142
|
export { CancelCallback as CancelCallback16, SaveCallback as SaveCallback1 } from "./components/_starting-template/starting-template";
|
|
140
143
|
export { CheckedItemsInfo as CheckedItemsInfo1 } from "./components/_helpers/list-selector/list-selector";
|
|
144
|
+
export { SelectedMergeActionData } from "./components/team-dev/bring-all-changes-selector/bring-all-changes-selector";
|
|
141
145
|
export { CommitDetail, CommitInformation, CommitObject, MergeObjectsCallback, ObjectState, OperationType } from "./components/team-dev/bring-changes/bring-changes";
|
|
142
146
|
export { CommitCallback, ContextMenuCallback as ContextMenuCallback1, LoadLocalChangesCallback, LoadRemoteChangesCallback, PendingItemsCheckedCallback, SelectCallback, ServerDetails, UpdateCallback } from "./components/team-dev/version-control/common/types";
|
|
143
147
|
export { LoadCallback as LoadCallback4, LoadDetailCallback, ObjectType as ObjectType1, SelectedVersionChangeCallback } from "./components/team-dev/history/history";
|
|
@@ -433,6 +437,16 @@ export namespace Components {
|
|
|
433
437
|
*/
|
|
434
438
|
"welcomeTitle"?: string;
|
|
435
439
|
}
|
|
440
|
+
interface GxIdeCommentsViewer {
|
|
441
|
+
/**
|
|
442
|
+
* Callback to be executed when the user closes the viewer
|
|
443
|
+
*/
|
|
444
|
+
"closeCallback": () => Promise<void>;
|
|
445
|
+
/**
|
|
446
|
+
* Comments data to display
|
|
447
|
+
*/
|
|
448
|
+
"commentsData": CommentData[];
|
|
449
|
+
}
|
|
436
450
|
interface GxIdeConnectGxServer {
|
|
437
451
|
/**
|
|
438
452
|
* List of authentication types.
|
|
@@ -2253,6 +2267,18 @@ export namespace Components {
|
|
|
2253
2267
|
interface GxIdeSwitchPanel {
|
|
2254
2268
|
}
|
|
2255
2269
|
interface GxIdeSwitcher {
|
|
2270
|
+
}
|
|
2271
|
+
interface GxIdeTeamDevBringAllChangesSelector {
|
|
2272
|
+
/**
|
|
2273
|
+
* Callback that must be invoked when the 'Cancel' button is pressed.
|
|
2274
|
+
*/
|
|
2275
|
+
"cancelCallback": () => Promise<void>;
|
|
2276
|
+
/**
|
|
2277
|
+
* Callback that must be invoked when the 'Confirm' button is pressed.
|
|
2278
|
+
*/
|
|
2279
|
+
"confirmCallback": (
|
|
2280
|
+
selectedMergeActionData: SelectedMergeActionData
|
|
2281
|
+
) => Promise<FormSubmitResult1>;
|
|
2256
2282
|
}
|
|
2257
2283
|
interface GxIdeTeamDevBringChanges {
|
|
2258
2284
|
/**
|
|
@@ -2271,6 +2297,10 @@ export namespace Components {
|
|
|
2271
2297
|
* Invoked when user activates the context menu on th grid.
|
|
2272
2298
|
*/
|
|
2273
2299
|
"contextMenuCallback": ContextMenuCallback;
|
|
2300
|
+
/**
|
|
2301
|
+
* Callback to be executed when the user wants to edit the range.
|
|
2302
|
+
*/
|
|
2303
|
+
"editRangeCallback": () => Promise<void>;
|
|
2274
2304
|
/**
|
|
2275
2305
|
* Determines whether the filters are rendered or not.
|
|
2276
2306
|
*/
|
|
@@ -2295,6 +2325,10 @@ export namespace Components {
|
|
|
2295
2325
|
* @example bringChanges.updateObjectState('obj-24', "merging", null); bringChanges.updateObjectState('obj-27', "error", "The server did not respond.");
|
|
2296
2326
|
*/
|
|
2297
2327
|
"updateObjectState": (objectId: string, newState: ObjectState, message: string) => Promise<void>;
|
|
2328
|
+
/**
|
|
2329
|
+
* Callback to be executed when the user wants to view all comments.
|
|
2330
|
+
*/
|
|
2331
|
+
"viewAllCommentsCallback": () => Promise<void>;
|
|
2298
2332
|
}
|
|
2299
2333
|
interface GxIdeTeamDevCommit {
|
|
2300
2334
|
/**
|
|
@@ -2305,6 +2339,10 @@ export namespace Components {
|
|
|
2305
2339
|
* Invoked when user starts the commit process
|
|
2306
2340
|
*/
|
|
2307
2341
|
"commitCallback": CommitCallback;
|
|
2342
|
+
/**
|
|
2343
|
+
* Used by the host to instruct the component to disable the commit button.
|
|
2344
|
+
*/
|
|
2345
|
+
"disableCommit": (value: boolean) => Promise<void>;
|
|
2308
2346
|
/**
|
|
2309
2347
|
* "folder" options for the filter.
|
|
2310
2348
|
*/
|
|
@@ -2393,6 +2431,10 @@ export namespace Components {
|
|
|
2393
2431
|
* Invoked to create a knowledge base from the server
|
|
2394
2432
|
*/
|
|
2395
2433
|
"createKBFromServerCallback": () => Promise<void>;
|
|
2434
|
+
/**
|
|
2435
|
+
* Used by the host to instruct the component to disable the commit/update button.
|
|
2436
|
+
*/
|
|
2437
|
+
"disableServerOperations": (value: boolean) => Promise<void>;
|
|
2396
2438
|
/**
|
|
2397
2439
|
* Invoked to return the list of local changes
|
|
2398
2440
|
*/
|
|
@@ -2453,6 +2495,10 @@ export namespace Components {
|
|
|
2453
2495
|
* Callback invoked when user activates the context menu on any of the grids.
|
|
2454
2496
|
*/
|
|
2455
2497
|
"contextMenuCallback": ContextMenuCallback2;
|
|
2498
|
+
/**
|
|
2499
|
+
* Used by the host to instruct the component to disable the update button.
|
|
2500
|
+
*/
|
|
2501
|
+
"disableUpdate": (value: boolean) => Promise<void>;
|
|
2456
2502
|
/**
|
|
2457
2503
|
* Callback invoked to return the list of data types loaded from file or url.
|
|
2458
2504
|
*/
|
|
@@ -3108,6 +3154,12 @@ declare global {
|
|
|
3108
3154
|
prototype: HTMLGxIdeChatWelcomeElement;
|
|
3109
3155
|
new (): HTMLGxIdeChatWelcomeElement;
|
|
3110
3156
|
};
|
|
3157
|
+
interface HTMLGxIdeCommentsViewerElement extends Components.GxIdeCommentsViewer, HTMLStencilElement {
|
|
3158
|
+
}
|
|
3159
|
+
var HTMLGxIdeCommentsViewerElement: {
|
|
3160
|
+
prototype: HTMLGxIdeCommentsViewerElement;
|
|
3161
|
+
new (): HTMLGxIdeCommentsViewerElement;
|
|
3162
|
+
};
|
|
3111
3163
|
interface HTMLGxIdeConnectGxServerElement extends Components.GxIdeConnectGxServer, HTMLStencilElement {
|
|
3112
3164
|
}
|
|
3113
3165
|
var HTMLGxIdeConnectGxServerElement: {
|
|
@@ -3658,6 +3710,12 @@ declare global {
|
|
|
3658
3710
|
prototype: HTMLGxIdeSwitcherElement;
|
|
3659
3711
|
new (): HTMLGxIdeSwitcherElement;
|
|
3660
3712
|
};
|
|
3713
|
+
interface HTMLGxIdeTeamDevBringAllChangesSelectorElement extends Components.GxIdeTeamDevBringAllChangesSelector, HTMLStencilElement {
|
|
3714
|
+
}
|
|
3715
|
+
var HTMLGxIdeTeamDevBringAllChangesSelectorElement: {
|
|
3716
|
+
prototype: HTMLGxIdeTeamDevBringAllChangesSelectorElement;
|
|
3717
|
+
new (): HTMLGxIdeTeamDevBringAllChangesSelectorElement;
|
|
3718
|
+
};
|
|
3661
3719
|
interface HTMLGxIdeTeamDevBringChangesElement extends Components.GxIdeTeamDevBringChanges, HTMLStencilElement {
|
|
3662
3720
|
}
|
|
3663
3721
|
var HTMLGxIdeTeamDevBringChangesElement: {
|
|
@@ -3827,6 +3885,7 @@ declare global {
|
|
|
3827
3885
|
"gx-ide-card": HTMLGxIdeCardElement;
|
|
3828
3886
|
"gx-ide-chat-container": HTMLGxIdeChatContainerElement;
|
|
3829
3887
|
"gx-ide-chat-welcome": HTMLGxIdeChatWelcomeElement;
|
|
3888
|
+
"gx-ide-comments-viewer": HTMLGxIdeCommentsViewerElement;
|
|
3830
3889
|
"gx-ide-connect-gx-server": HTMLGxIdeConnectGxServerElement;
|
|
3831
3890
|
"gx-ide-container": HTMLGxIdeContainerElement;
|
|
3832
3891
|
"gx-ide-create-kb-from-server": HTMLGxIdeCreateKbFromServerElement;
|
|
@@ -3882,6 +3941,7 @@ declare global {
|
|
|
3882
3941
|
"gx-ide-status-buttons": HTMLGxIdeStatusButtonsElement;
|
|
3883
3942
|
"gx-ide-switch-panel": HTMLGxIdeSwitchPanelElement;
|
|
3884
3943
|
"gx-ide-switcher": HTMLGxIdeSwitcherElement;
|
|
3944
|
+
"gx-ide-team-dev-bring-all-changes-selector": HTMLGxIdeTeamDevBringAllChangesSelectorElement;
|
|
3885
3945
|
"gx-ide-team-dev-bring-changes": HTMLGxIdeTeamDevBringChangesElement;
|
|
3886
3946
|
"gx-ide-team-dev-commit": HTMLGxIdeTeamDevCommitElement;
|
|
3887
3947
|
"gx-ide-team-dev-history": HTMLGxIdeTeamDevHistoryElement;
|
|
@@ -4208,6 +4268,16 @@ declare namespace LocalJSX {
|
|
|
4208
4268
|
*/
|
|
4209
4269
|
"welcomeTitle"?: string;
|
|
4210
4270
|
}
|
|
4271
|
+
interface GxIdeCommentsViewer {
|
|
4272
|
+
/**
|
|
4273
|
+
* Callback to be executed when the user closes the viewer
|
|
4274
|
+
*/
|
|
4275
|
+
"closeCallback": () => Promise<void>;
|
|
4276
|
+
/**
|
|
4277
|
+
* Comments data to display
|
|
4278
|
+
*/
|
|
4279
|
+
"commentsData"?: CommentData[];
|
|
4280
|
+
}
|
|
4211
4281
|
interface GxIdeConnectGxServer {
|
|
4212
4282
|
/**
|
|
4213
4283
|
* List of authentication types.
|
|
@@ -6054,6 +6124,18 @@ declare namespace LocalJSX {
|
|
|
6054
6124
|
interface GxIdeSwitchPanel {
|
|
6055
6125
|
}
|
|
6056
6126
|
interface GxIdeSwitcher {
|
|
6127
|
+
}
|
|
6128
|
+
interface GxIdeTeamDevBringAllChangesSelector {
|
|
6129
|
+
/**
|
|
6130
|
+
* Callback that must be invoked when the 'Cancel' button is pressed.
|
|
6131
|
+
*/
|
|
6132
|
+
"cancelCallback": () => Promise<void>;
|
|
6133
|
+
/**
|
|
6134
|
+
* Callback that must be invoked when the 'Confirm' button is pressed.
|
|
6135
|
+
*/
|
|
6136
|
+
"confirmCallback": (
|
|
6137
|
+
selectedMergeActionData: SelectedMergeActionData
|
|
6138
|
+
) => Promise<FormSubmitResult1>;
|
|
6057
6139
|
}
|
|
6058
6140
|
interface GxIdeTeamDevBringChanges {
|
|
6059
6141
|
/**
|
|
@@ -6072,6 +6154,10 @@ declare namespace LocalJSX {
|
|
|
6072
6154
|
* Invoked when user activates the context menu on th grid.
|
|
6073
6155
|
*/
|
|
6074
6156
|
"contextMenuCallback": ContextMenuCallback;
|
|
6157
|
+
/**
|
|
6158
|
+
* Callback to be executed when the user wants to edit the range.
|
|
6159
|
+
*/
|
|
6160
|
+
"editRangeCallback": () => Promise<void>;
|
|
6075
6161
|
/**
|
|
6076
6162
|
* Determines whether the filters are rendered or not.
|
|
6077
6163
|
*/
|
|
@@ -6088,6 +6174,10 @@ declare namespace LocalJSX {
|
|
|
6088
6174
|
* If true, the "Action" column will display a button instead of a pill, only when the action is
|
|
6089
6175
|
*/
|
|
6090
6176
|
"revertPillAsButton"?: boolean;
|
|
6177
|
+
/**
|
|
6178
|
+
* Callback to be executed when the user wants to view all comments.
|
|
6179
|
+
*/
|
|
6180
|
+
"viewAllCommentsCallback": () => Promise<void>;
|
|
6091
6181
|
}
|
|
6092
6182
|
interface GxIdeTeamDevCommit {
|
|
6093
6183
|
/**
|
|
@@ -6594,6 +6684,7 @@ declare namespace LocalJSX {
|
|
|
6594
6684
|
"gx-ide-card": GxIdeCard;
|
|
6595
6685
|
"gx-ide-chat-container": GxIdeChatContainer;
|
|
6596
6686
|
"gx-ide-chat-welcome": GxIdeChatWelcome;
|
|
6687
|
+
"gx-ide-comments-viewer": GxIdeCommentsViewer;
|
|
6597
6688
|
"gx-ide-connect-gx-server": GxIdeConnectGxServer;
|
|
6598
6689
|
"gx-ide-container": GxIdeContainer;
|
|
6599
6690
|
"gx-ide-create-kb-from-server": GxIdeCreateKbFromServer;
|
|
@@ -6649,6 +6740,7 @@ declare namespace LocalJSX {
|
|
|
6649
6740
|
"gx-ide-status-buttons": GxIdeStatusButtons;
|
|
6650
6741
|
"gx-ide-switch-panel": GxIdeSwitchPanel;
|
|
6651
6742
|
"gx-ide-switcher": GxIdeSwitcher;
|
|
6743
|
+
"gx-ide-team-dev-bring-all-changes-selector": GxIdeTeamDevBringAllChangesSelector;
|
|
6652
6744
|
"gx-ide-team-dev-bring-changes": GxIdeTeamDevBringChanges;
|
|
6653
6745
|
"gx-ide-team-dev-commit": GxIdeTeamDevCommit;
|
|
6654
6746
|
"gx-ide-team-dev-history": GxIdeTeamDevHistory;
|
|
@@ -6684,6 +6776,7 @@ declare module "@stencil/core" {
|
|
|
6684
6776
|
"gx-ide-card": LocalJSX.GxIdeCard & JSXBase.HTMLAttributes<HTMLGxIdeCardElement>;
|
|
6685
6777
|
"gx-ide-chat-container": LocalJSX.GxIdeChatContainer & JSXBase.HTMLAttributes<HTMLGxIdeChatContainerElement>;
|
|
6686
6778
|
"gx-ide-chat-welcome": LocalJSX.GxIdeChatWelcome & JSXBase.HTMLAttributes<HTMLGxIdeChatWelcomeElement>;
|
|
6779
|
+
"gx-ide-comments-viewer": LocalJSX.GxIdeCommentsViewer & JSXBase.HTMLAttributes<HTMLGxIdeCommentsViewerElement>;
|
|
6687
6780
|
"gx-ide-connect-gx-server": LocalJSX.GxIdeConnectGxServer & JSXBase.HTMLAttributes<HTMLGxIdeConnectGxServerElement>;
|
|
6688
6781
|
"gx-ide-container": LocalJSX.GxIdeContainer & JSXBase.HTMLAttributes<HTMLGxIdeContainerElement>;
|
|
6689
6782
|
"gx-ide-create-kb-from-server": LocalJSX.GxIdeCreateKbFromServer & JSXBase.HTMLAttributes<HTMLGxIdeCreateKbFromServerElement>;
|
|
@@ -6739,6 +6832,7 @@ declare module "@stencil/core" {
|
|
|
6739
6832
|
"gx-ide-status-buttons": LocalJSX.GxIdeStatusButtons & JSXBase.HTMLAttributes<HTMLGxIdeStatusButtonsElement>;
|
|
6740
6833
|
"gx-ide-switch-panel": LocalJSX.GxIdeSwitchPanel & JSXBase.HTMLAttributes<HTMLGxIdeSwitchPanelElement>;
|
|
6741
6834
|
"gx-ide-switcher": LocalJSX.GxIdeSwitcher & JSXBase.HTMLAttributes<HTMLGxIdeSwitcherElement>;
|
|
6835
|
+
"gx-ide-team-dev-bring-all-changes-selector": LocalJSX.GxIdeTeamDevBringAllChangesSelector & JSXBase.HTMLAttributes<HTMLGxIdeTeamDevBringAllChangesSelectorElement>;
|
|
6742
6836
|
"gx-ide-team-dev-bring-changes": LocalJSX.GxIdeTeamDevBringChanges & JSXBase.HTMLAttributes<HTMLGxIdeTeamDevBringChangesElement>;
|
|
6743
6837
|
"gx-ide-team-dev-commit": LocalJSX.GxIdeTeamDevCommit & JSXBase.HTMLAttributes<HTMLGxIdeTeamDevCommitElement>;
|
|
6744
6838
|
"gx-ide-team-dev-history": LocalJSX.GxIdeTeamDevHistory & JSXBase.HTMLAttributes<HTMLGxIdeTeamDevHistoryElement>;
|