@vitrosoftware/common-ui-ts 1.1.209 → 1.1.210

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 (65) hide show
  1. package/css/std/controls/bim-viewer/bim-viewer-index.css +4 -1
  2. package/css/std/controls/bim-viewer/style.css +4 -0
  3. package/css/std/controls/filter/filter.css +85 -0
  4. package/css/std/controls/pdf-viewer/custom.css +1 -5
  5. package/css/std/controls/pdf-viewer/pdf-viewer-index.css +1 -24
  6. package/css/std/controls/pdf-viewer/pdf-viewer.css +0 -19
  7. package/css/std/controls/search/search-dialog.css +202 -0
  8. package/css/std/controls/search/search.css +0 -185
  9. package/css/std/controls/viewer-issue-list/viewer-issue-list.css +49 -0
  10. package/dist/index.css +3292 -3140
  11. package/dist/index.js +11815 -10479
  12. package/dist/index.js.map +1 -1
  13. package/dist/src/constants/Event.d.ts +5 -1
  14. package/dist/src/constants/Factory.d.ts +8 -0
  15. package/dist/src/constants/MoveType.d.ts +5 -0
  16. package/dist/src/controls/BimViewer/services/BimViewerService.d.ts +10 -1
  17. package/dist/src/controls/DxfViewer/services/DxfViewerService.d.ts +10 -1
  18. package/dist/src/controls/Filter/CriterionFilter.d.ts +26 -0
  19. package/dist/src/controls/Filter/Filter.d.ts +28 -0
  20. package/dist/src/controls/Filter/FilterConstants.d.ts +54 -0
  21. package/dist/src/controls/Filter/Inputs/BaseLookupPicker.d.ts +35 -0
  22. package/dist/src/controls/Filter/Inputs/Checkbox.d.ts +10 -0
  23. package/dist/src/controls/Filter/Inputs/DatePicker.d.ts +8 -0
  24. package/dist/src/controls/Filter/Inputs/Input.d.ts +10 -0
  25. package/dist/src/controls/Filter/Inputs/LookupPicker.d.ts +2 -0
  26. package/dist/src/controls/Filter/Inputs/NumberInput.d.ts +13 -0
  27. package/dist/src/controls/Filter/Inputs/TimePicker.d.ts +8 -0
  28. package/dist/src/controls/Filter/Inputs/UserLookupPicker.d.ts +3 -0
  29. package/dist/src/controls/Filter/SortFilter.d.ts +14 -0
  30. package/dist/src/controls/Filter/models/SortCriterion.d.ts +7 -0
  31. package/dist/src/controls/Filter/models/SortItem.d.ts +4 -0
  32. package/dist/src/controls/PdfViewer/services/PdfViewerService.d.ts +10 -1
  33. package/dist/src/controls/Search/Search.d.ts +11 -24
  34. package/dist/src/controls/Search/SearchConstants.d.ts +12 -0
  35. package/dist/src/controls/Search/SearchDialog.d.ts +23 -0
  36. package/dist/src/controls/ViewerIssueList/ViewerIssueList.d.ts +28 -0
  37. package/dist/src/index.d.ts +3 -0
  38. package/dist/src/models/Action.d.ts +20 -0
  39. package/dist/src/models/ContentType.d.ts +17 -0
  40. package/dist/src/models/ContentTypeView.d.ts +5 -0
  41. package/dist/src/models/Field.d.ts +13 -0
  42. package/dist/src/models/FieldType.d.ts +5 -0
  43. package/dist/src/models/Item.d.ts +22 -0
  44. package/dist/src/models/ItemCopyRequest.d.ts +5 -0
  45. package/dist/src/models/ItemId.d.ts +7 -0
  46. package/dist/src/models/ItemPath.d.ts +5 -0
  47. package/dist/src/models/ItemUpdateRequest.d.ts +8 -0
  48. package/dist/src/models/ListConfig.d.ts +25 -0
  49. package/dist/src/models/Site.d.ts +10 -0
  50. package/dist/src/models/ViewPart.d.ts +7 -0
  51. package/dist/src/models/ViewPartList.d.ts +7 -0
  52. package/dist/src/models.d.ts +3 -0
  53. package/dist/src/services/ColumnService.d.ts +9 -0
  54. package/dist/src/services/ContentTypeService.d.ts +8 -0
  55. package/dist/src/services/EventHandlerService.d.ts +4 -0
  56. package/dist/src/services/EventService.d.ts +6 -0
  57. package/dist/src/services/GuidService.d.ts +3 -0
  58. package/dist/src/services/ImageService.d.ts +7 -0
  59. package/dist/src/services/ItemSelectDialogService.d.ts +12 -0
  60. package/dist/src/services/ItemService.d.ts +24 -0
  61. package/dist/src/services/LookupListItemService.d.ts +9 -0
  62. package/package.json +1 -1
  63. package/src/controls/BimViewer/js/bim-viewer.js +50 -7
  64. package/src/controls/DxfViewer/js/dxf-viewer.js +78 -21
  65. package/src/controls/PdfViewer/js/pdf-viewer.js +136 -23
@@ -21208,7 +21208,7 @@ const defaultOptions = {
21208
21208
  kind: OptionKind.WORKER
21209
21209
  },
21210
21210
  workerSrc: {
21211
- value: "resource/pdfViewer/js/pdf.worker.js?version=1.1.209",
21211
+ value: "resource/pdfViewer/js/pdf.worker.js?version=1.1.210",
21212
21212
  kind: OptionKind.WORKER
21213
21213
  }
21214
21214
  };
@@ -37405,6 +37405,9 @@ var label_deleteMeasure = context.createLocale('app.viewer.pdf.contextMenu.delet
37405
37405
  var label_cancel = context.createLocale('app.viewer.pdf.contextMenu.cancel');
37406
37406
  var label_createAnnotation = context.createLocale('app.viewer.pdf.contextMenu.addNote');
37407
37407
  var label_measures2PointHint = context.createLocale('app.viewer.pdf.measures.twoPointHint');
37408
+ const EVENT_SEARCH_ISSUE_LIST = 'vitro.search.issue.list';
37409
+ const EVENT_ISSUE_LIST_REFRESH = 'vitro.issue.list.refresh';
37410
+ const EVENT_ISSUE_LIST_SELECT_ITEM = 'vitro.issue.list.select.item';
37408
37411
 
37409
37412
  function initContextMenuCanvas() {
37410
37413
  var pages = '#viewer .page:not(.has-new-svg)';
@@ -37718,7 +37721,7 @@ function bindBtnDoCompare() {
37718
37721
  if ($(this).hasClass('disabled')) {
37719
37722
  return false;
37720
37723
  } else {
37721
- hideDlgOverlay();
37724
+ hideDlgOverlay();
37722
37725
 
37723
37726
  doCompare(compareObjList);
37724
37727
  }
@@ -37758,7 +37761,7 @@ function isComparedDocumentCurrentOpened(url) {
37758
37761
  let loadedVersion = context.fileVersionList.find(item => item.id == loadedVersionId);
37759
37762
  if (context.file.id === itemId && loadedVersion.name === version) {
37760
37763
  return true;
37761
- }
37764
+ }
37762
37765
 
37763
37766
  return false;
37764
37767
  }
@@ -37855,10 +37858,12 @@ function bindBtnToggleSidebarNotes() {
37855
37858
  if ($('#btnDrawAnnotation').hasClass('toggled')) {
37856
37859
  $('#btnDrawAnnotation').click();
37857
37860
  }
37858
- context.initIssueList();
37861
+ if (!$('.body__sidebar').find('.vitro-viewer-issue-list').length) {
37862
+ context.initIssueList();
37863
+ }
37859
37864
  $('#outerContainer').addClass('sidebarNotesOpen');
37860
37865
  setContainerInset($('.body__sidebar').width());
37861
- expandSidebarNotes();
37866
+ expandSidebarNotes();
37862
37867
  }
37863
37868
  } else {
37864
37869
  $('#outerContainer').removeClass('sidebarNotesOpen');
@@ -37908,7 +37913,7 @@ function showNoteDesc(note) {
37908
37913
  }
37909
37914
  }, 100);
37910
37915
  }
37911
- }
37916
+ }
37912
37917
  }
37913
37918
 
37914
37919
  function isIssueInSidebarNoteExist(noteId) {
@@ -37946,16 +37951,57 @@ function initMarkupData(issue) {
37946
37951
  return null;
37947
37952
  }
37948
37953
 
37954
+ function bindUpdateDocumentMarkupList() {
37955
+ window.addEventListener(EVENT_SEARCH_ISSUE_LIST, updateDocumentMarkupList);
37956
+ }
37957
+
37958
+ function updateDocumentMarkupList(e) {
37959
+ const pageCount = getPdfPageCount();
37960
+ context.issueList = e.detail.issueList;
37961
+ for (let i = 1; i <= pageCount; i++) {
37962
+ if (isPageRendered(i)) {
37963
+ removePageAllNotes(i);
37964
+ resetPageSketchpad(i);
37965
+ if (e.detail.issueList && e.detail.issueList.length) {
37966
+ initMarkupList(e.detail.issueList, i);
37967
+ }
37968
+ }
37969
+ }
37970
+ }
37971
+
37972
+ function resetPageSketchpad(pageNr) {
37973
+ const sketchpadSvgSelector = '#svgsketch-' + pageNr + ' > svg';
37974
+ const pageSketchpad = $(sketchpadSvgSelector);
37975
+ if (pageSketchpad.length) {
37976
+ $(sketchpadSvgSelector + ' > ellipse').remove();
37977
+ $(sketchpadSvgSelector + ' > path').remove();
37978
+ $(sketchpadSvgSelector + ' > polygon').remove();
37979
+ $(sketchpadSvgSelector + ' > cloud').remove();
37980
+ $(sketchpadSvgSelector + ' > line').remove();
37981
+ $(sketchpadSvgSelector + ' > arrow').remove();
37982
+ $(sketchpadSvgSelector + ' > rect:not(#surface-' + pageNr + ')').remove();
37983
+ }
37984
+ drawNodes = {};
37985
+ }
37986
+
37987
+ function isPageRendered(pageNr) {
37988
+ return $('.page[data-page-number="' + pageNr + '"]').find('.canvasWrapper')?.length;
37989
+ }
37990
+
37949
37991
  function doInitNotesByPageNr(pageNr) {
37950
- context.getIssueList().then(list => {
37951
- $.each(list, function (index, issue) {
37992
+ initMarkupList(context.issueList, pageNr);
37993
+ }
37994
+
37995
+ function initMarkupList(issueList, pageNr) {
37996
+ if (issueList && issueList.length) {
37997
+ $.each(issueList, function (index, issue) {
37952
37998
  let markup = initMarkupData(issue);
37953
37999
  if (markup && markup.pageNr == pageNr) {
37954
38000
  createNote(pageNr, index, issue);
37955
38001
  loadSvgShape(markup.svg);
37956
38002
  }
37957
38003
  });
37958
- });
38004
+ }
37959
38005
  }
37960
38006
 
37961
38007
  function removePageAllNotes(pageNr) {
@@ -38023,17 +38069,14 @@ function createNote(pageNr, index, issue) {
38023
38069
  }
38024
38070
 
38025
38071
  function highlightSidebarNote(noteId) {
38026
- $('.body__sidebar-note-wrap').removeClass('active');
38027
- $('.body__sidebar-content').children().removeClass('vitro-active');
38028
38072
  var notetWrap = $('#vitro-issue-tile-' + noteId);
38029
- notetWrap.addClass('vitro-active');
38030
38073
  autosize(notetWrap.find('textarea'));
38031
- var sidebarContent = $('.body__sidebar-content');
38032
- var sidebarOffsetTop = parseInt(sidebarContent[0].offsetTop);
38033
- var sidebarScrollTop = parseInt(sidebarContent[0].scrollTop);
38034
- sidebarContent.animate({
38035
- scrollTop: notetWrap.position().top - sidebarOffsetTop + sidebarScrollTop
38036
- }, 1000);
38074
+ selectIssueListItem(noteId);
38075
+ }
38076
+
38077
+ function selectIssueListItem(itemId) {
38078
+ const event = new CustomEvent(EVENT_ISSUE_LIST_SELECT_ITEM, { detail: { itemId: itemId } });
38079
+ window.dispatchEvent(event);
38037
38080
  }
38038
38081
 
38039
38082
  function getNoteCreator() {
@@ -38175,15 +38218,22 @@ function bindUpdatePage() {
38175
38218
  }
38176
38219
  }
38177
38220
 
38221
+ function refreshIssueList() {
38222
+ const event = new CustomEvent(EVENT_ISSUE_LIST_REFRESH, { detail: {} });
38223
+ window.dispatchEvent(event);
38224
+ }
38225
+
38178
38226
  function updatePage(e) {
38179
38227
  const item = e.detail.itemList[0];
38180
38228
  const markup = JSON.parse(item.fieldValueMap.markup);
38181
38229
  const page = markup ? markup.pageNr : null;
38230
+ let updateContextIssueList = false;
38182
38231
 
38183
38232
  if (e.type === context.deleteIssueEvent && markup) {
38184
38233
  const markupData = { id: item.fieldValueMap.item_id, pageNr: page };
38185
38234
  removeSvg(markupData);
38186
- context.initIssueList();
38235
+ context.issueList = context.issueList?.filter(itm => itm.id !== item.fieldValueMap.item_id);
38236
+ refreshIssueList();
38187
38237
  }
38188
38238
 
38189
38239
  if (e.type === context.updateIssueEvent && markup) {
@@ -38199,14 +38249,25 @@ function updatePage(e) {
38199
38249
  detail: {
38200
38250
  itemIdList: [itemId],
38201
38251
  listId: item.listId
38202
- }});
38252
+ }
38253
+ });
38203
38254
  window.dispatchEvent(event);
38255
+ refreshIssueList();
38256
+ updateContextIssueList = true;
38204
38257
  }
38205
38258
 
38206
38259
  removeNewSvg();
38207
38260
 
38208
38261
  if (page) {
38209
- initNotesByPageNr(page);
38262
+ if (updateContextIssueList) {
38263
+ const searchCriterion = window.searchCriterionList ? window.searchCriterionList : [];
38264
+ context.getIssueList(searchCriterion).then(list => {
38265
+ context.issueList = list;
38266
+ initNotesByPageNr(page);
38267
+ });
38268
+ } else {
38269
+ initNotesByPageNr(page);
38270
+ }
38210
38271
  }
38211
38272
 
38212
38273
  if ($('#btnDrawAnnotation').hasClass('toggled')) {
@@ -38230,7 +38291,7 @@ function initBtnDrawAnnotation() {
38230
38291
  $('#cursorSelectTool').click();
38231
38292
  }
38232
38293
  untoggleBtnsMeasure();
38233
- hideMeasureToolbar();
38294
+ hideMeasureToolbar();
38234
38295
  activateDrawAnnotation();
38235
38296
  } else {
38236
38297
  if (!isHandToolActive) {
@@ -38440,7 +38501,7 @@ function endDragMeasure(event, pageNr) {
38440
38501
 
38441
38502
  drawStart = null;
38442
38503
  event.preventDefault();
38443
- }
38504
+ }
38444
38505
 
38445
38506
  function setDlgMeasureSettingsScale(scale) {
38446
38507
  let child = $('#measuresScaleList').children().toArray().find(child => $(child).attr('value') === scale);
@@ -38487,6 +38548,57 @@ function setContainerInset(width) {
38487
38548
  } else {
38488
38549
  $('#viewerContainer').css('inset-inline-end', 0);
38489
38550
  }
38551
+ }
38552
+
38553
+ function removeSvg(svgData) {
38554
+ if (drawNodes[svgData.id] && drawNodes[svgData.id].nodeObj) {
38555
+ sketchpad[svgData.pageNr].remove(drawNodes[svgData.id].nodeObj);
38556
+ delete drawNodes[svgData.id];
38557
+ } else {
38558
+ $('svg-' + svgData.id).remove();
38559
+ }
38560
+ }
38561
+
38562
+ function initNotes() {
38563
+ const searchCriterion = window.searchCriterionList ? window.searchCriterionList : [];
38564
+ //$(document).on('webViewerPageRendered', function (e, pageNr) {
38565
+ // if (context.issueList) {
38566
+ // initNotesByPageNr(pageNr);
38567
+ // if (isSketchpadActive) {
38568
+ // $('.svgsketch-wrap').addClass('active');
38569
+ // }
38570
+ // } else {
38571
+ // context.getIssueList(searchCriterion).then(list => {
38572
+ // context.issueList = list;
38573
+ // initNotesByPageNr(pageNr);
38574
+ // if (isSketchpadActive) {
38575
+ // $('.svgsketch-wrap').addClass('active');
38576
+ // }
38577
+ // });
38578
+ // }
38579
+ //});
38580
+ const renderedPageList = [];
38581
+
38582
+ context.getIssueList(searchCriterion).then(list => {
38583
+ context.issueList = list;
38584
+ $(document).on('webViewerPageRendered', function (e, pageNr) {
38585
+ renderedPageList.push(pageNr);
38586
+ initMarkupByPageNr(pageNr);
38587
+ });
38588
+ const pageLoaded = $('.page[data-loaded="true"]');
38589
+ pageLoaded?.each((index, item) => {
38590
+ if (!renderedPageList.includes(item.attr('data-page-number'))) {
38591
+ initMarkupByPageNr(pageNr);
38592
+ }
38593
+ });
38594
+ });
38595
+ }
38596
+
38597
+ function initMarkupByPageNr(pageNr) {
38598
+ initNotesByPageNr(pageNr);
38599
+ if (isSketchpadActive) {
38600
+ $('.svgsketch-wrap').addClass('active');
38601
+ }
38490
38602
  }
38491
38603
  $(document).ready(function() {
38492
38604
  context.openFile();
@@ -38510,6 +38622,7 @@ $(document).ready(function() {
38510
38622
 
38511
38623
  bindUpdatePage();
38512
38624
  bindSelectList();
38625
+ bindUpdateDocumentMarkupList();
38513
38626
 
38514
38627
  initZoomPage();
38515
38628
  initCompare();