@vitrosoftware/common-ui-ts 1.1.227 → 1.1.228

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 (63) hide show
  1. package/css/std/controls/alert/alert.css +10 -47
  2. package/css/std/controls/bim-viewer/bim-viewer-index.css +4 -0
  3. package/css/std/controls/bim-viewer/style.css +4 -0
  4. package/css/std/controls/dialog/dialog-content.css +3 -0
  5. package/css/std/controls/dialog/dialog-footer.css +2 -0
  6. package/css/std/controls/dxf-viewer/common.css +4 -0
  7. package/css/std/controls/dxf-viewer/dxf-viewer-index.css +4 -0
  8. package/css/std/controls/field-iterator/field-iterator.css +6 -0
  9. package/css/std/controls/file/file.css +5 -4
  10. package/css/std/controls/filter/filter.css +1 -1
  11. package/css/std/controls/lookup-picker/lookup-picker-selected-item.css +0 -1
  12. package/css/std/controls/lookup-picker/lookup-picker-value-list.css +0 -1
  13. package/css/std/controls/lookup-picker/lookup-picker.css +38 -21
  14. package/css/std/controls/pdf-viewer/custom.css +4 -0
  15. package/css/std/controls/pdf-viewer/img/compare-dlg-separator.svg +3 -1
  16. package/css/std/controls/pdf-viewer/img/compare-dlg-title.svg +12 -0
  17. package/css/std/controls/pdf-viewer/pdf-viewer-index.css +217 -0
  18. package/css/std/controls/pdf-viewer/pdf-viewer.css +213 -0
  19. package/css/std/controls/select/select.css +26 -2
  20. package/css/std/controls/tab-group/tab-group.css +6 -3
  21. package/css/std/controls/table-view/table-view-custom-lookup-edit.css +1 -1
  22. package/css/std/controls/table-view/treegrid-cell.css +5 -0
  23. package/css/std/controls/table-view/treegrid-context-menu.css +22 -3
  24. package/css/std/controls/video-viewer/video-viewer.css +1 -1
  25. package/dist/index.css +98 -82
  26. package/dist/index.js +451 -337
  27. package/dist/index.js.map +1 -1
  28. package/dist/src/constants/Factory.d.ts +1 -0
  29. package/dist/src/controls/Alert/Alert.d.ts +0 -4
  30. package/dist/src/controls/Dialog/Dialog.d.ts +2 -0
  31. package/dist/src/controls/Dialog/DialogContent.d.ts +1 -0
  32. package/dist/src/controls/LookupPicker/LookupPicker.d.ts +2 -0
  33. package/dist/src/controls/LookupPicker/RightButtonGroup.d.ts +2 -2
  34. package/dist/src/controls/LookupPicker/ValueList.d.ts +2 -0
  35. package/dist/src/controls/PdfViewer/services/PdfViewerService.d.ts +8 -0
  36. package/dist/src/controls/ScrollBar/ScrollBar.d.ts +4 -3
  37. package/dist/src/controls/Search/Search.d.ts +3 -2
  38. package/dist/src/controls/TabGroup/Tab.d.ts +3 -3
  39. package/dist/src/controls/TabGroup/TabGroup.d.ts +0 -1
  40. package/dist/src/controls/TabGroup/TabGroupComponent.d.ts +0 -1
  41. package/dist/src/controls/TabGroup/models/Tab.d.ts +2 -1
  42. package/dist/src/controls/TableView/TableView.d.ts +2 -0
  43. package/dist/src/controls/TableView/TableViewConstants.d.ts +8 -2
  44. package/dist/src/controls/TableView/models/TableViewMenuItem.d.ts +2 -0
  45. package/dist/src/controls/TableView/services/TableViewService.d.ts +4 -0
  46. package/dist/src/controls/TableView/services/impl/TableViewServiceImpl.d.ts +6 -1
  47. package/dist/src/controls/View/View.d.ts +1 -1
  48. package/dist/src/controls/ViewPart/ViewPart.d.ts +2 -1
  49. package/dist/src/models/Item.d.ts +0 -1
  50. package/dist/src/models/ItemCopyRequest.d.ts +5 -1
  51. package/dist/src/models/ItemId.d.ts +2 -0
  52. package/dist/src/services/FileService.d.ts +8 -0
  53. package/dist/src/services/ItemSelectDialogService.d.ts +1 -1
  54. package/dist/src/services.d.ts +3 -0
  55. package/lib/dxf-viewer/OrbitControls.js +6 -2
  56. package/lib/dxf-viewer/parser/DxfArrayScanner.js +27 -1
  57. package/lib/dxf-viewer/parser/DxfParser.js +7 -4
  58. package/lib/fflate/fflate.module.js +2672 -0
  59. package/package.json +1 -1
  60. package/src/controls/BimViewer/js/bim-viewer.js +3 -3
  61. package/src/controls/DxfViewer/js/dxf-viewer.js +153 -48
  62. package/src/controls/PdfViewer/js/pdf-viewer.js +986 -38
  63. package/css/std/controls/file/img/file-button-context.svg +0 -6
package/dist/index.js CHANGED
@@ -516,10 +516,13 @@ var styles$1 = {"vitro-scrollbar-content":"_scrollbar_vitro-scrollbar-content_3H
516
516
 
517
517
  var CSS_CLASS_SCROLL_Y = 'ps-scroll-y';
518
518
  var w = window;
519
- var ScrollBar = function ScrollBar(props) {
519
+ var ScrollBar = React.forwardRef(function (props, outerRef) {
520
520
  var ref = React.useRef(null);
521
521
  var scrollElementRef = React.useRef(null);
522
522
  var observerRef = React.useRef();
523
+ React.useImperativeHandle(outerRef, function () {
524
+ return ref.current;
525
+ }, []);
523
526
  React.useEffect(function () {
524
527
  return function () {
525
528
  if (observerRef.current) {
@@ -579,7 +582,7 @@ var ScrollBar = function ScrollBar(props) {
579
582
  });
580
583
  }
581
584
  if (props.onInit) {
582
- props.onInit(ref.current);
585
+ props.onInit(ref.current, scrollElement);
583
586
  }
584
587
  if (props.isFocusOnScroll && ref.current) {
585
588
  ref.current.addEventListener(CSS_CLASS_SCROLL_Y, function () {
@@ -591,7 +594,9 @@ var ScrollBar = function ScrollBar(props) {
591
594
  }
592
595
  };
593
596
  var onWheel = function onWheel(e) {
594
- e.stopPropagation();
597
+ if (props.isPreventParentScroll) {
598
+ e.stopPropagation();
599
+ }
595
600
  };
596
601
  var onScrollY = function onScrollY(e) {
597
602
  if (ref.current && props.onScrollY) {
@@ -601,12 +606,12 @@ var ScrollBar = function ScrollBar(props) {
601
606
  return React__default.createElement("div", {
602
607
  ref: ref,
603
608
  className: props.className || CTRL.EMPTY
604
- }, React__default.createElement("div", {
609
+ }, React__default.createElement("div", Object.assign({}, props, {
605
610
  ref: props.contentRef,
606
611
  onWheel: onWheel,
607
612
  className: styles$1['vitro-scrollbar-content'] + (props.contentClassName ? CTRL.SPACE + props.contentClassName : CTRL.EMPTY)
608
- }, props.children));
609
- };
613
+ }), props.children));
614
+ });
610
615
 
611
616
  (function (EVENT) {
612
617
  EVENT["MOUSEDOWN"] = "mousedown";
@@ -21128,6 +21133,7 @@ var CFG_ATTRIBUTE;
21128
21133
  CFG_ATTRIBUTE["SHOW_V_SCROLL"] = "ShowVScroll";
21129
21134
  CFG_ATTRIBUTE["MID_WIDTH"] = "MidWidth";
21130
21135
  CFG_ATTRIBUTE["RIGHT_WIDTH"] = "RightWidth";
21136
+ CFG_ATTRIBUTE["SCROLL_TOP"] = "ScrollTop";
21131
21137
  })(CFG_ATTRIBUTE || (CFG_ATTRIBUTE = {}));
21132
21138
  var URL;
21133
21139
  (function (URL) {
@@ -21199,6 +21205,11 @@ var ATTRIBUTE$1;
21199
21205
  ATTRIBUTE["ADDED"] = "Added";
21200
21206
  ATTRIBUTE["FORMULA"] = "Formula";
21201
21207
  ATTRIBUTE["FORMAT"] = "Format";
21208
+ ATTRIBUTE["SPAN"] = "Span";
21209
+ ATTRIBUTE["LANG"] = "Lang";
21210
+ ATTRIBUTE["GMT"] = "GMT";
21211
+ ATTRIBUTE["ACTIONS"] = "Actions";
21212
+ ATTRIBUTE["MENU"] = "Menu";
21202
21213
  })(ATTRIBUTE$1 || (ATTRIBUTE$1 = {}));
21203
21214
  var DRAG_ITEM_TYPE;
21204
21215
  (function (DRAG_ITEM_TYPE) {
@@ -21413,6 +21424,7 @@ var TableViewServiceImpl = /*#__PURE__*/function () {
21413
21424
  this.gridChangesFormat = 'JSON';
21414
21425
  this.searchCriterionMap = new Map();
21415
21426
  this.visibleColumnList = [];
21427
+ this.disabledActionList = [];
21416
21428
  this.grid = grid;
21417
21429
  this.id = grid.id;
21418
21430
  this.grid.Source.Upload.Format = this.gridChangesFormat;
@@ -21425,6 +21437,7 @@ var TableViewServiceImpl = /*#__PURE__*/function () {
21425
21437
  } else {
21426
21438
  this.clearSearchCriterionList(searchId);
21427
21439
  }
21440
+ this.grid.searchCriterionList = Array.from(this.searchCriterionMap.values()).flat();
21428
21441
  };
21429
21442
  _proto.setCfgAttribute = function setCfgAttribute(attr, value) {
21430
21443
  var attrList = attr.split(CTRL.DOT);
@@ -21810,7 +21823,7 @@ var TableViewServiceImpl = /*#__PURE__*/function () {
21810
21823
  var filterContentTypeListJson = JSON.stringify(this.filterContentTypeList);
21811
21824
  newData = this.setXmlPart(newData, "FilterContentTypeList='" + filterContentTypeListJson + "'", XML_TAG.PAGE_SETTINGS);
21812
21825
  }
21813
- newData = this.setSearchCriterionLisXml(newData);
21826
+ newData = this.setSearchCriterionListXml(newData);
21814
21827
  newData = this.setVisibleColumnListXml(newData);
21815
21828
  return newData;
21816
21829
  };
@@ -21831,7 +21844,7 @@ var TableViewServiceImpl = /*#__PURE__*/function () {
21831
21844
  }
21832
21845
  return xmlString;
21833
21846
  };
21834
- _proto.setSearchCriterionLisXml = function setSearchCriterionLisXml(data) {
21847
+ _proto.setSearchCriterionListXml = function setSearchCriterionListXml(data) {
21835
21848
  var searchCriterionList = this.getSearchCriterionList();
21836
21849
  if (searchCriterionList && searchCriterionList.length) {
21837
21850
  var searchCriterionListJson = JSON.stringify(searchCriterionList);
@@ -21863,6 +21876,12 @@ var TableViewServiceImpl = /*#__PURE__*/function () {
21863
21876
  }
21864
21877
  }
21865
21878
  };
21879
+ _proto.getNextCol = function getNextCol(col) {
21880
+ return this.grid.GetNextCol(col);
21881
+ };
21882
+ _proto.getLastVisible = function getLastVisible() {
21883
+ return this.grid.GetLastVisible();
21884
+ };
21866
21885
  _createClass(TableViewServiceImpl, [{
21867
21886
  key: "columnList",
21868
21887
  get: function get() {
@@ -21981,10 +22000,84 @@ var TableViewServiceImpl = /*#__PURE__*/function () {
21981
22000
  get: function get() {
21982
22001
  return this.grid.Source;
21983
22002
  }
22003
+ }, {
22004
+ key: "linkItemId",
22005
+ get: function get() {
22006
+ return this.grid.linkItemId;
22007
+ },
22008
+ set: function set(id) {
22009
+ this.grid.linkItemId = id;
22010
+ }
21984
22011
  }]);
21985
22012
  return TableViewServiceImpl;
21986
22013
  }();
21987
22014
 
22015
+ var TableViewOnCustomAjaxServiceImpl = /*#__PURE__*/function () {
22016
+ function TableViewOnCustomAjaxServiceImpl(ajaxService) {
22017
+ this.id = EVENT$1.ON_CUSTOM_AJAX;
22018
+ this.data = 'Data';
22019
+ this.dataRequestUrl = '/api/tableViewRequest/' + this.data;
22020
+ this.dataResultString = '<Grid><Body><B /></Body></Grid>';
22021
+ this.getRequest = 'Get';
22022
+ this.treeGrid = 'treegrid/';
22023
+ this.api = '/api/';
22024
+ this.cacheVersionParam = 'CacheVersion';
22025
+ this.ajaxService = ajaxService;
22026
+ }
22027
+ var _proto = TableViewOnCustomAjaxServiceImpl.prototype;
22028
+ _proto.process = function process(tableView, source, data, func) {
22029
+ var success = function success(ret) {
22030
+ return func(0, ret);
22031
+ };
22032
+ if (source.Url && source.Url.indexOf(this.dataRequestUrl) === 0) {
22033
+ success(this.dataResultString);
22034
+ return true;
22035
+ }
22036
+ var fail = function fail() {
22037
+ return func(0, '<Grid><IO / > <Body><B Pos="0" Count = "0" /> </Body></Grid>');
22038
+ };
22039
+ var url = source.Url;
22040
+ if (url.indexOf(this.api) !== 0) {
22041
+ url = this.getTreeGridFileUrl(tableView[this.cacheVersionParam], source);
22042
+ }
22043
+ if (source.Method === this.getRequest) {
22044
+ this.ajaxService.get(url, tableView.scope).then(success)["catch"](fail);
22045
+ } else {
22046
+ var formData = new FormData();
22047
+ formData.set(this.data, data);
22048
+ this.ajaxService.post(url, formData, tableView.scope).then(success)["catch"](fail);
22049
+ }
22050
+ return true;
22051
+ };
22052
+ _proto.getTreeGridFileUrl = function getTreeGridFileUrl(cacheVersion, source) {
22053
+ var url = source.Url;
22054
+ if (url[0] !== CTRL.SLASH) {
22055
+ if (url.indexOf(this.treeGrid) !== 0) {
22056
+ url = this.treeGrid + source.Url;
22057
+ }
22058
+ url = CTRL.SLASH + url;
22059
+ }
22060
+ if (url.indexOf(CTRL.QUESTION) === -1) {
22061
+ url += CTRL.QUESTION + this.cacheVersionParam + CTRL.EQUAL + cacheVersion;
22062
+ }
22063
+ return url;
22064
+ };
22065
+ return TableViewOnCustomAjaxServiceImpl;
22066
+ }();
22067
+
22068
+ var SERVICE = function SERVICE() {};
22069
+ SERVICE.LOCALE = 'LocaleService';
22070
+ SERVICE.LOCAL_STORAGE = 'LocalStorageService';
22071
+ SERVICE.COLUMN = 'ColumnService';
22072
+ SERVICE.GUID = 'GuidService';
22073
+ SERVICE.EVENT = 'EventService';
22074
+ SERVICE.IMAGE = 'ImageService';
22075
+ SERVICE.ITEM = 'ItemService';
22076
+ SERVICE.CONTENT_TYPE = 'ContentTypeService';
22077
+ SERVICE.LOOKUP_LIST_ITEM = 'LookupListItemService';
22078
+ SERVICE.ITEM_SELECT_DIALOG = 'ItemSelectDialogService';
22079
+ SERVICE.AJAX = 'AjaxService';
22080
+
21988
22081
  var styles$5 = {"vitro-table-view":"_table-view_vitro-table-view_1tTs32D"};
21989
22082
 
21990
22083
  var w$2 = window;
@@ -22056,6 +22149,22 @@ var TreeGrid = function TreeGrid(props) {
22056
22149
  return [URL.API, controller, dataKey, props.listCode].join(CTRL.SLASH);
22057
22150
  }
22058
22151
  };
22152
+ var initOnCustomAjax = function initOnCustomAjax() {
22153
+ if (props.onCustomAjax) {
22154
+ var onCustomAjax = props.onCustomAjax;
22155
+ w$2.TGSetEvent(EVENT$1.ON_CUSTOM_AJAX, props.id, function (grid, source, data, func) {
22156
+ return onCustomAjax(grid, source, data, func);
22157
+ });
22158
+ } else if (props.container) {
22159
+ var ajaxService = props.container.get(SERVICE.AJAX);
22160
+ if (ajaxService) {
22161
+ var tableViewOnCustomAjaxService = new TableViewOnCustomAjaxServiceImpl(ajaxService);
22162
+ w$2.TGSetEvent(EVENT$1.ON_CUSTOM_AJAX, props.id, function (grid, source, data, func) {
22163
+ return tableViewOnCustomAjaxService.process(grid, source, data, func);
22164
+ });
22165
+ }
22166
+ }
22167
+ };
22059
22168
  React.useEffect(function () {
22060
22169
  if (prevGridIdRef.current) {
22061
22170
  disposeTableViewById(prevGridIdRef.current);
@@ -22065,15 +22174,10 @@ var TreeGrid = function TreeGrid(props) {
22065
22174
  w$2.TGSetEvent(EVENT$1.ON_LOADED, props.id, function (grid, next) {
22066
22175
  return onGridLoaded(grid, next);
22067
22176
  });
22068
- w$2.TGSetEvent(EVENT$1.ON_INIT, props.id, function (grid, reload) {
22177
+ w$2.TGSetEvent(EVENT$1.ON_INIT, props.id, function (grid) {
22069
22178
  return onGridInit(grid);
22070
22179
  });
22071
- if (props.onCustomAjax) {
22072
- var onCustomAjax = props.onCustomAjax;
22073
- w$2.TGSetEvent(EVENT$1.ON_CUSTOM_AJAX, props.id, function (grid, source, data, func) {
22074
- return onCustomAjax(grid, source, data, func);
22075
- });
22076
- }
22180
+ initOnCustomAjax();
22077
22181
  }
22078
22182
  if (w$2.TreeGrid) {
22079
22183
  if (props.layout || props.data) {
@@ -22175,6 +22279,7 @@ var MicroFrontendServiceImpl = /*#__PURE__*/function () {
22175
22279
 
22176
22280
  var styles$6 = {"vitro-micro-frontend":"_micro-frontend_vitro-micro-frontend_3PhlRuX"};
22177
22281
 
22282
+ var index = 1;
22178
22283
  var MicroFrontend = React.forwardRef(function (props, ref) {
22179
22284
  var _useState = React.useState(),
22180
22285
  id = _useState[0],
@@ -22189,7 +22294,7 @@ var MicroFrontend = React.forwardRef(function (props, ref) {
22189
22294
  if (props.data.containerId) {
22190
22295
  setId(props.data.containerId);
22191
22296
  } else {
22192
- var containerId = id ? id : getId(rootRef.current);
22297
+ var containerId = (id ? id : getId(rootRef.current)) + CTRL.DASH + index++;
22193
22298
  setId(containerId);
22194
22299
  props.data.containerId = containerId;
22195
22300
  }
@@ -22724,18 +22829,6 @@ var DropZone = React.forwardRef(function (props, ref) {
22724
22829
  }, props.label)));
22725
22830
  });
22726
22831
 
22727
- var SERVICE = function SERVICE() {};
22728
- SERVICE.LOCALE = 'LocaleService';
22729
- SERVICE.LOCAL_STORAGE = 'LocalStorageService';
22730
- SERVICE.COLUMN = 'ColumnService';
22731
- SERVICE.GUID = 'GuidService';
22732
- SERVICE.EVENT = 'EventService';
22733
- SERVICE.IMAGE = 'ImageService';
22734
- SERVICE.ITEM = 'ItemService';
22735
- SERVICE.CONTENT_TYPE = 'ContentTypeService';
22736
- SERVICE.LOOKUP_LIST_ITEM = 'LookupListItemService';
22737
- SERVICE.ITEM_SELECT_DIALOG = 'ItemSelectDialogService';
22738
-
22739
22832
  var styles$a = {"vitro-uploader":"_uploader_vitro-uploader_237vX7T","vitro-upload-container":"_uploader_vitro-upload-container_2ASGHSS","vitro-drop-zone":"_uploader_vitro-drop-zone_3w2dluc","vitro-progress-info":"_uploader_vitro-progress-info_J4BRjZ0","vitro-button-close":"_uploader_vitro-button-close_30As0AM","vitro-button-show":"_uploader_vitro-button-show_uUmWVJc","vitro-button-hide":"_uploader_vitro-button-hide_LYS1px9","vitro-hidden":"_uploader_vitro-hidden_12825pc","vitro-progress":"_uploader_vitro-progress_2NtaSj2","vitro-progress-bar":"_uploader_vitro-progress-bar_3YXLbbu"};
22740
22833
 
22741
22834
  var $$2 = window.$;
@@ -56386,35 +56479,6 @@ var BootstrapAlert = Object.assign(Alert, {
56386
56479
  Heading: AlertHeading
56387
56480
  });
56388
56481
 
56389
- const Button$1 = /*#__PURE__*/React.forwardRef(({
56390
- as,
56391
- bsPrefix,
56392
- variant = 'primary',
56393
- size,
56394
- active = false,
56395
- disabled = false,
56396
- className,
56397
- ...props
56398
- }, ref) => {
56399
- const prefix = useBootstrapPrefix(bsPrefix, 'btn');
56400
- const [buttonProps, {
56401
- tagName
56402
- }] = useButtonProps({
56403
- tagName: as,
56404
- disabled,
56405
- ...props
56406
- });
56407
- const Component = tagName;
56408
- return /*#__PURE__*/jsxRuntime.jsx(Component, {
56409
- ...buttonProps,
56410
- ...props,
56411
- ref: ref,
56412
- disabled: disabled,
56413
- className: classnames(className, prefix, active && 'active', variant && `${prefix}-${variant}`, size && `${prefix}-${size}`, props.href && disabled && 'disabled')
56414
- });
56415
- });
56416
- Button$1.displayName = 'Button';
56417
-
56418
56482
  const context = /*#__PURE__*/React.createContext(null);
56419
56483
  context.displayName = 'CardHeaderContext';
56420
56484
 
@@ -59912,11 +59976,12 @@ var DialogComponent = function DialogComponent(props) {
59912
59976
  }, props.children);
59913
59977
  };
59914
59978
 
59915
- var styles$e = {"vitro-dialog-content":"_dialog-content_vitro-dialog-content_qQNWu6x"};
59979
+ var styles$e = {"vitro-dialog-content":"_dialog-content_vitro-dialog-content_qQNWu6x","vitro-dialog-content-padding":"_dialog-content_vitro-dialog-content-padding_oVEc6Z4"};
59916
59980
 
59917
59981
  var DialogContent = function DialogContent(props) {
59982
+ var className = [styles$e['vitro-dialog-content'], props.isCustomContainer ? CTRL.EMPTY : styles$e['vitro-dialog-content-padding'], props.className || CTRL.EMPTY].join(CTRL.SPACE);
59918
59983
  return React__default.createElement("div", {
59919
- className: styles$e['vitro-dialog-content'] + (props.className ? CTRL.SPACE + props.className : CTRL.EMPTY)
59984
+ className: className
59920
59985
  }, props.children);
59921
59986
  };
59922
59987
 
@@ -59983,7 +60048,7 @@ var styles$h = {"vitro-button":"_button_vitro-button_hVfBuSO","vitro-animation-r
59983
60048
 
59984
60049
  var HTML_ELEMENT_SPAN = 'span';
59985
60050
  var TYPE_BUTTON = 'button';
59986
- var Button$2 = React.forwardRef(function (props, ref) {
60051
+ var Button$1 = React.forwardRef(function (props, ref) {
59987
60052
  var _useState = React.useState(false),
59988
60053
  pending = _useState[0],
59989
60054
  setPending = _useState[1];
@@ -60062,7 +60127,7 @@ var Button$2 = React.forwardRef(function (props, ref) {
60062
60127
  });
60063
60128
 
60064
60129
  var ButtonCancel = function ButtonCancel(props) {
60065
- return React__default.createElement(Button$2, Object.assign({}, props, {
60130
+ return React__default.createElement(Button$1, Object.assign({}, props, {
60066
60131
  className: STYLE.OUTLINE_LIGHT + (props.className ? CTRL.SPACE + props.className : CTRL.EMPTY)
60067
60132
  }));
60068
60133
  };
@@ -60074,7 +60139,7 @@ var ButtonGroup = React.forwardRef(function (props, ref) {
60074
60139
  ref: ref,
60075
60140
  className: styles$i['vitro-button-group'] + (props.className ? CTRL.SPACE + props.className : CTRL.EMPTY)
60076
60141
  }, props.itemList && props.itemList.length > 0 ? props.itemList.map(function (item, index) {
60077
- return React__default.createElement(Button$2, Object.assign({}, item, {
60142
+ return React__default.createElement(Button$1, Object.assign({}, item, {
60078
60143
  key: index
60079
60144
  }));
60080
60145
  }) : null, props.children);
@@ -60150,7 +60215,7 @@ var DialogFooter = function DialogFooter(props) {
60150
60215
  onClick: props.onClose,
60151
60216
  className: styles$k['vitro-button']
60152
60217
  }), (_props$buttonList2 = props.buttonList) !== null && _props$buttonList2 !== void 0 && _props$buttonList2.length ? props.buttonList.map(function (button) {
60153
- return React__default.createElement(Button$2, Object.assign({}, button, {
60218
+ return React__default.createElement(Button$1, Object.assign({}, button, {
60154
60219
  onClick: function onClick() {
60155
60220
  var _button$onClick;
60156
60221
  return (_button$onClick = button.onClick) === null || _button$onClick === void 0 ? void 0 : _button$onClick.call(button, props.dialog);
@@ -60289,7 +60354,8 @@ var Dialog = function Dialog(props) {
60289
60354
  content: props.headerContent,
60290
60355
  className: props.headerClassName
60291
60356
  }), component && React__default.createElement(DialogContent, {
60292
- className: props.contentClassName
60357
+ className: props.contentClassName,
60358
+ isCustomContainer: props.isCustomContentContainer
60293
60359
  }, component), props.children, isMobileView && props.hiddenContent && React__default.createElement(DialogDetailExpandButton, {
60294
60360
  onClick: onClickDetailButton
60295
60361
  }), props.hiddenContent && React__default.createElement("div", {
@@ -61101,25 +61167,188 @@ var OverflowButton = function OverflowButton(props) {
61101
61167
  });
61102
61168
  };
61103
61169
 
61170
+ var CSS_PROPERTY = function CSS_PROPERTY() {};
61171
+ CSS_PROPERTY.FONT_WEIGHT = 'font-weight';
61172
+ CSS_PROPERTY.FONT_SIZE = 'font-size';
61173
+ CSS_PROPERTY.FONT_FAMILY = 'font-family';
61174
+
61175
+ var ValueTooltip = React.forwardRef(function (props, ref) {
61176
+ var _useState = React.useState(false),
61177
+ isEnabled = _useState[0],
61178
+ setIsEnabled = _useState[1];
61179
+ var _useState2 = React.useState(false),
61180
+ isShow = _useState2[0],
61181
+ setIsShow = _useState2[1];
61182
+ var _useState3 = React.useState(props.text),
61183
+ text = _useState3[0],
61184
+ _setText = _useState3[1];
61185
+ var canvasRef = React.useRef();
61186
+ var containerRef = React.useRef();
61187
+ var onShowTimeout = React.useMemo(function () {
61188
+ return {
61189
+ id: null
61190
+ };
61191
+ }, []);
61192
+ var resizeObserver = React__default.useMemo(function () {
61193
+ return new window.ResizeObserver(function (entries) {
61194
+ for (var _iterator = _createForOfIteratorHelperLoose(entries), _step; !(_step = _iterator()).done;) {
61195
+ var entry = _step.value;
61196
+ setIsEnabled(isValueOverflow(text, entry.target));
61197
+ }
61198
+ });
61199
+ }, [text]);
61200
+ React.useEffect(function () {
61201
+ if (props.containerRef && props.containerRef.current) {
61202
+ containerRef.current = props.containerRef.current;
61203
+ resizeObserver.observe(containerRef.current);
61204
+ containerRef.current.addEventListener(exports.EVENT.MOUSEENTER, onMouseEnter);
61205
+ containerRef.current.addEventListener(exports.EVENT.MOUSELEAVE, onMouseLeave);
61206
+ }
61207
+ return function () {
61208
+ if (containerRef.current) {
61209
+ containerRef.current.removeEventListener(exports.EVENT.MOUSEENTER, onMouseEnter);
61210
+ containerRef.current.removeEventListener(exports.EVENT.MOUSELEAVE, onMouseLeave);
61211
+ }
61212
+ };
61213
+ }, [props.containerRef, resizeObserver]);
61214
+ React.useEffect(function () {
61215
+ return function () {
61216
+ resizeObserver.disconnect();
61217
+ };
61218
+ }, []);
61219
+ React.useEffect(function () {
61220
+ _setText(props.text);
61221
+ if (containerRef.current) {
61222
+ setIsEnabled(isValueOverflow(props.text, containerRef.current));
61223
+ } else {
61224
+ setIsEnabled(true);
61225
+ }
61226
+ }, [props.text]);
61227
+ React.useEffect(function () {
61228
+ if (props.onUpdate) {
61229
+ props.onUpdate(isEnabled);
61230
+ }
61231
+ }, [isEnabled]);
61232
+ React.useImperativeHandle(ref, function () {
61233
+ return {
61234
+ update: function update() {
61235
+ if (containerRef.current) {
61236
+ setIsEnabled(isValueOverflow(text, containerRef.current));
61237
+ }
61238
+ },
61239
+ setIsShow: function setIsShow(value) {
61240
+ if (value === false) {
61241
+ setIsEnabled(false);
61242
+ } else {
61243
+ if (containerRef.current) {
61244
+ setIsEnabled(isValueOverflow(text, containerRef.current));
61245
+ } else {
61246
+ setIsEnabled(true);
61247
+ }
61248
+ }
61249
+ },
61250
+ setText: function setText(value) {
61251
+ _setText(value);
61252
+ }
61253
+ };
61254
+ });
61255
+ var isValueOverflow = function isValueOverflow(value, container) {
61256
+ if (props.isMultiline) {
61257
+ return isValueVerticalOverflow(container);
61258
+ }
61259
+ return isValueHorizontalOverflow(value, container);
61260
+ };
61261
+ var isValueHorizontalOverflow = function isValueHorizontalOverflow(value, container) {
61262
+ var textWidth = getTextWidth(value, getCanvasFont(container), container.scrollWidth);
61263
+ if (container && textWidth > getAvailableWidth(container)) {
61264
+ return true;
61265
+ } else {
61266
+ return false;
61267
+ }
61268
+ };
61269
+ var isValueVerticalOverflow = function isValueVerticalOverflow(container) {
61270
+ return container.clientHeight + 1 < container.scrollHeight;
61271
+ };
61272
+ var getTextWidth = function getTextWidth(text, font, scrollWidth) {
61273
+ if (!canvasRef.current) {
61274
+ canvasRef.current = document.createElement('canvas');
61275
+ }
61276
+ var canvas = canvasRef.current;
61277
+ var context = canvas.getContext('2d');
61278
+ if (context) {
61279
+ context.font = font;
61280
+ var metrics = context.measureText(text);
61281
+ return metrics.width;
61282
+ }
61283
+ return scrollWidth;
61284
+ };
61285
+ var getAvailableWidth = function getAvailableWidth(element) {
61286
+ var style = getComputedStyle(element);
61287
+ var paddingX = getNumber(style.paddingLeft) + getNumber(style.paddingRight);
61288
+ var borderX = getNumber(style.borderLeftWidth) + getNumber(style.borderRightWidth);
61289
+ return element.offsetWidth - paddingX - borderX;
61290
+ };
61291
+ var getNumber = function getNumber(value) {
61292
+ return parseFloat(value) || 0;
61293
+ };
61294
+ var getCssStyle = function getCssStyle(element, prop) {
61295
+ return window.getComputedStyle(element, null).getPropertyValue(prop);
61296
+ };
61297
+ var getCanvasFont = function getCanvasFont(el) {
61298
+ if (el === void 0) {
61299
+ el = document.body;
61300
+ }
61301
+ var fontWeight = getCssStyle(el, CSS_PROPERTY.FONT_WEIGHT);
61302
+ var fontSize = getCssStyle(el, CSS_PROPERTY.FONT_SIZE);
61303
+ var fontFamily = getCssStyle(el, CSS_PROPERTY.FONT_FAMILY);
61304
+ return fontWeight + " " + fontSize + " " + fontFamily;
61305
+ };
61306
+ var onMouseEnter = function onMouseEnter(e) {
61307
+ if (onShowTimeout.id) {
61308
+ clearTimeout(onShowTimeout.id);
61309
+ }
61310
+ if (e.target == containerRef.current) {
61311
+ onShowTimeout.id = setTimeout(function () {
61312
+ setIsShow(true);
61313
+ }, 750);
61314
+ }
61315
+ };
61316
+ var onMouseLeave = function onMouseLeave(e) {
61317
+ if (onShowTimeout.id) {
61318
+ clearTimeout(onShowTimeout.id);
61319
+ }
61320
+ setTimeout(function () {
61321
+ return setIsShow(false);
61322
+ }, 300);
61323
+ };
61324
+ return React__default.createElement(Tooltip$1, Object.assign({}, props, {
61325
+ text: text,
61326
+ isShow: isEnabled ? isShow : false,
61327
+ isHideOnHover: false
61328
+ }), props.children);
61329
+ });
61330
+
61104
61331
  var styles$r = {"vitro-tab":"_tab-group_vitro-tab_1Qb50HL","vitro-item":"_tab-group_vitro-item_2YnBcmb","active":"_tab-group_active_3M-IIR2"};
61105
61332
 
61106
61333
  var Tab = function Tab(props) {
61107
- if (!props.icon && !props.title) {
61108
- return null;
61109
- }
61334
+ var linkRef = React.useRef(null);
61110
61335
  return React__default.createElement("div", {
61111
61336
  key: props.index,
61112
61337
  className: styles$r['vitro-item']
61338
+ }, React__default.createElement(ValueTooltip, {
61339
+ text: props.text,
61340
+ containerRef: linkRef
61113
61341
  }, React__default.createElement(Nav$2.Item, {
61114
61342
  className: props.active ? styles$r['active'] : undefined,
61115
61343
  onClick: function onClick() {
61116
61344
  return props.onClick(props.index);
61117
61345
  }
61118
61346
  }, React__default.createElement(Nav$2.Link, {
61119
- eventKey: props.eventKey
61120
- }, React__default.createElement("span", null, props.icon && React__default.createElement(Image, {
61121
- defaultUrl: props.icon
61122
- }), props.title))));
61347
+ eventKey: props.eventKey,
61348
+ ref: linkRef
61349
+ }, React__default.createElement("span", null, props.imageUrl && React__default.createElement(Image, {
61350
+ defaultUrl: props.imageUrl
61351
+ }), props.text)))));
61123
61352
  };
61124
61353
 
61125
61354
  var TabGroupHeader = function TabGroupHeader(props) {
@@ -61167,8 +61396,8 @@ var TabGroupHeader = function TabGroupHeader(props) {
61167
61396
  active: index === props.currentTab,
61168
61397
  onClick: onClick,
61169
61398
  eventKey: item.eventKey,
61170
- icon: item.icon,
61171
- title: item.text
61399
+ imageUrl: item.imageUrl,
61400
+ text: item.text
61172
61401
  });
61173
61402
  }
61174
61403
  if (activeItem && activeItem.index === index) {
@@ -61182,8 +61411,8 @@ var TabGroupHeader = function TabGroupHeader(props) {
61182
61411
  active: true,
61183
61412
  onClick: function onClick() {},
61184
61413
  eventKey: activeItem.eventKey,
61185
- icon: activeItem.icon,
61186
- title: activeItem.text
61414
+ imageUrl: activeItem.imageUrl,
61415
+ text: activeItem.text
61187
61416
  }), props.itemList && props.wrap && React__default.createElement(OverflowButton, {
61188
61417
  list: overflowTabList,
61189
61418
  offset: props.itemList.length - overflowTabList.length,
@@ -61247,10 +61476,11 @@ var TabGroupComponent = React.forwardRef(function (props, forwardedRef) {
61247
61476
  }
61248
61477
  return null;
61249
61478
  };
61479
+ var isShowHeader = props.itemList.length === 1 ? props.itemList[0].isAlwaysShown === true : true;
61250
61480
  return React__default.createElement("div", {
61251
61481
  className: styles$r['vitro-tab'] + (props.className ? CTRL.SPACE + props.className : CTRL.EMPTY),
61252
61482
  ref: ref
61253
- }, props.itemList.length === 1 && props.isHideSingleHeader === true ? null : React__default.createElement(TabGroupHeader, {
61483
+ }, isShowHeader ? React__default.createElement(TabGroupHeader, {
61254
61484
  itemList: props.itemList.map(function (item, index) {
61255
61485
  return _extends({}, item, {
61256
61486
  index: index
@@ -61261,7 +61491,7 @@ var TabGroupComponent = React.forwardRef(function (props, forwardedRef) {
61261
61491
  changeTab: changeTab,
61262
61492
  wrap: props.wrap,
61263
61493
  isDisabled: props.isDisabled
61264
- }), React__default.createElement("div", {
61494
+ }) : null, React__default.createElement("div", {
61265
61495
  className: 'vitro-content'
61266
61496
  }, getContent()));
61267
61497
  });
@@ -61304,7 +61534,9 @@ var ViewPart = function ViewPart(props) {
61304
61534
  React.useEffect(function () {
61305
61535
  if (props.component) {
61306
61536
  props.props.settings = props.settings;
61307
- var _component = React__default.createElement(props.component, props.props);
61537
+ var _component = React__default.createElement(props.component, _extends({}, props.props, {
61538
+ scrollElementRef: props.scrollElementRef
61539
+ }));
61308
61540
  setComponent(_component);
61309
61541
  } else {
61310
61542
  setComponent(null);
@@ -61334,6 +61566,7 @@ var styles$u = {"vitro-view":"_view_vitro-view_1NKb-kU","vitro-tab":"_view_vitro
61334
61566
 
61335
61567
  var GroupControl = function GroupControl(props) {
61336
61568
  var scrollbarContentRef = React.useRef(null);
61569
+ var scrollElementRef = React.useRef();
61337
61570
  React.useEffect(function () {
61338
61571
  scrollIntoView();
61339
61572
  }, [props.item.id]);
@@ -61342,16 +61575,22 @@ var GroupControl = function GroupControl(props) {
61342
61575
  scrollbarContentRef.current.scrollIntoView();
61343
61576
  }
61344
61577
  };
61578
+ var onInit = function onInit(elem, scrollElement) {
61579
+ scrollElementRef.current = scrollElement;
61580
+ };
61345
61581
  return React__default.createElement(ControlGroup, {
61346
61582
  horizontal: true
61347
61583
  }, React__default.createElement(ScrollBar, {
61348
61584
  contentClassName: styles$u['vitro-content'],
61349
- contentRef: scrollbarContentRef
61585
+ contentRef: scrollbarContentRef,
61586
+ key: props.key,
61587
+ onInit: onInit
61350
61588
  }, props.componentList && props.componentList.map(function (viewPart) {
61351
61589
  return React__default.createElement(ViewPart, {
61352
61590
  component: viewPart.component,
61353
61591
  settings: viewPart.settings,
61354
61592
  props: props,
61593
+ scrollElementRef: scrollElementRef,
61355
61594
  item: props.item,
61356
61595
  className: styles$u['vitro-view-part']
61357
61596
  });
@@ -61363,17 +61602,18 @@ var View = React.forwardRef(function (props, ref) {
61363
61602
  tabList = _useState[0],
61364
61603
  setTabList = _useState[1];
61365
61604
  var createTabList = function createTabList(tabList) {
61366
- return tabList.map(function (tab) {
61367
- return {
61605
+ return tabList.map(function (tab, index) {
61606
+ return _extends({}, tab, {
61368
61607
  text: tab.text,
61369
61608
  content: {
61370
61609
  component: GroupControl,
61371
61610
  props: {
61372
61611
  item: props.item,
61373
- componentList: tab.componentList
61612
+ componentList: tab.componentList,
61613
+ key: index
61374
61614
  }
61375
61615
  }
61376
- };
61616
+ });
61377
61617
  });
61378
61618
  };
61379
61619
  React.useEffect(function () {
@@ -61382,12 +61622,11 @@ var View = React.forwardRef(function (props, ref) {
61382
61622
  }
61383
61623
  }, [props.tabList]);
61384
61624
  return tabList && React__default.createElement("div", {
61385
- className: styles$u['vitro-view']
61625
+ className: styles$u['vitro-view'] + (props.className ? CTRL.SPACE + props.className : CTRL.EMPTY)
61386
61626
  }, React__default.createElement(TabGroup, {
61387
61627
  itemList: tabList,
61388
61628
  isDisabled: props.isDisabled,
61389
61629
  className: styles$u['vitro-tab'],
61390
- isHideSingleHeader: props.isHideSingleTabHeader,
61391
61630
  ref: ref,
61392
61631
  wrap: true
61393
61632
  }));
@@ -61512,7 +61751,7 @@ var TabButtonGroup = function TabButtonGroup(props) {
61512
61751
  return ((_tabList$index = tabList[index]) === null || _tabList$index === void 0 ? void 0 : _tabList$index.id) == activeItem;
61513
61752
  };
61514
61753
  var getTabButton = function getTabButton(item, index) {
61515
- return React__default.createElement(Button$2, {
61754
+ return React__default.createElement(Button$1, {
61516
61755
  key: item.id,
61517
61756
  className: isTabButtonActive(index) ? styles$v[CSS_CLASS_ACTIVE] : CTRL.EMPTY,
61518
61757
  text: item.text,
@@ -61543,7 +61782,7 @@ var TabButtonGroup = function TabButtonGroup(props) {
61543
61782
  }
61544
61783
  overflowTabList.push(item);
61545
61784
  return null;
61546
- }), activeItemTabBtn && React__default.createElement(Button$2, {
61785
+ }), activeItemTabBtn && React__default.createElement(Button$1, {
61547
61786
  key: activeItemTabBtn.id,
61548
61787
  className: styles$v[CSS_CLASS_ACTIVE],
61549
61788
  text: activeItemTabBtn.text,
@@ -62565,7 +62804,7 @@ var AddFieldButton = React.forwardRef(function (props, ref) {
62565
62804
  };
62566
62805
  return React__default.createElement("div", {
62567
62806
  className: styles$H['vitro-add-field']
62568
- }, React__default.createElement(Button$2, {
62807
+ }, React__default.createElement(Button$1, {
62569
62808
  ref: addFieldButtonRef,
62570
62809
  text: props.labelAddField,
62571
62810
  onClick: props.onAddField,
@@ -62933,170 +63172,9 @@ var CriterionFieldIterator = function CriterionFieldIterator(props) {
62933
63172
  })));
62934
63173
  };
62935
63174
 
62936
- var CSS_PROPERTY = function CSS_PROPERTY() {};
62937
- CSS_PROPERTY.FONT_WEIGHT = 'font-weight';
62938
- CSS_PROPERTY.FONT_SIZE = 'font-size';
62939
- CSS_PROPERTY.FONT_FAMILY = 'font-family';
62940
-
62941
- var ValueTooltip = React.forwardRef(function (props, ref) {
62942
- var _useState = React.useState(false),
62943
- isEnabled = _useState[0],
62944
- setIsEnabled = _useState[1];
62945
- var _useState2 = React.useState(false),
62946
- isShow = _useState2[0],
62947
- setIsShow = _useState2[1];
62948
- var _useState3 = React.useState(props.text),
62949
- text = _useState3[0],
62950
- _setText = _useState3[1];
62951
- var canvasRef = React.useRef();
62952
- var containerRef = React.useRef();
62953
- var onShowTimeout = React.useMemo(function () {
62954
- return {
62955
- id: null
62956
- };
62957
- }, []);
62958
- var resizeObserver = React__default.useMemo(function () {
62959
- return new window.ResizeObserver(function (entries) {
62960
- for (var _iterator = _createForOfIteratorHelperLoose(entries), _step; !(_step = _iterator()).done;) {
62961
- var entry = _step.value;
62962
- setIsEnabled(isValueOverflow(text, entry.target));
62963
- }
62964
- });
62965
- }, [text]);
62966
- React.useEffect(function () {
62967
- if (props.containerRef && props.containerRef.current) {
62968
- containerRef.current = props.containerRef.current;
62969
- resizeObserver.observe(containerRef.current);
62970
- containerRef.current.addEventListener(exports.EVENT.MOUSEENTER, onMouseEnter);
62971
- containerRef.current.addEventListener(exports.EVENT.MOUSELEAVE, onMouseLeave);
62972
- }
62973
- return function () {
62974
- if (containerRef.current) {
62975
- containerRef.current.removeEventListener(exports.EVENT.MOUSEENTER, onMouseEnter);
62976
- containerRef.current.removeEventListener(exports.EVENT.MOUSELEAVE, onMouseLeave);
62977
- }
62978
- };
62979
- }, [props.containerRef, resizeObserver]);
62980
- React.useEffect(function () {
62981
- return function () {
62982
- resizeObserver.disconnect();
62983
- };
62984
- }, []);
62985
- React.useEffect(function () {
62986
- _setText(props.text);
62987
- if (containerRef.current) {
62988
- setIsEnabled(isValueOverflow(props.text, containerRef.current));
62989
- } else {
62990
- setIsEnabled(true);
62991
- }
62992
- }, [props.text]);
62993
- React.useEffect(function () {
62994
- if (props.onUpdate) {
62995
- props.onUpdate(isEnabled);
62996
- }
62997
- }, [isEnabled]);
62998
- React.useImperativeHandle(ref, function () {
62999
- return {
63000
- update: function update() {
63001
- if (containerRef.current) {
63002
- setIsEnabled(isValueOverflow(text, containerRef.current));
63003
- }
63004
- },
63005
- setIsShow: function setIsShow(value) {
63006
- if (value === false) {
63007
- setIsEnabled(false);
63008
- } else {
63009
- if (containerRef.current) {
63010
- setIsEnabled(isValueOverflow(text, containerRef.current));
63011
- } else {
63012
- setIsEnabled(true);
63013
- }
63014
- }
63015
- },
63016
- setText: function setText(value) {
63017
- _setText(value);
63018
- }
63019
- };
63020
- });
63021
- var isValueOverflow = function isValueOverflow(value, container) {
63022
- if (props.isMultiline) {
63023
- return isValueVerticalOverflow(container);
63024
- }
63025
- return isValueHorizontalOverflow(value, container);
63026
- };
63027
- var isValueHorizontalOverflow = function isValueHorizontalOverflow(value, container) {
63028
- var textWidth = getTextWidth(value, getCanvasFont(container), container.scrollWidth);
63029
- if (container && textWidth > getAvailableWidth(container)) {
63030
- return true;
63031
- } else {
63032
- return false;
63033
- }
63034
- };
63035
- var isValueVerticalOverflow = function isValueVerticalOverflow(container) {
63036
- return container.clientHeight + 1 < container.scrollHeight;
63037
- };
63038
- var getTextWidth = function getTextWidth(text, font, scrollWidth) {
63039
- if (!canvasRef.current) {
63040
- canvasRef.current = document.createElement('canvas');
63041
- }
63042
- var canvas = canvasRef.current;
63043
- var context = canvas.getContext('2d');
63044
- if (context) {
63045
- context.font = font;
63046
- var metrics = context.measureText(text);
63047
- return metrics.width;
63048
- }
63049
- return scrollWidth;
63050
- };
63051
- var getAvailableWidth = function getAvailableWidth(element) {
63052
- var style = getComputedStyle(element);
63053
- var paddingX = getNumber(style.paddingLeft) + getNumber(style.paddingRight);
63054
- var borderX = getNumber(style.borderLeftWidth) + getNumber(style.borderRightWidth);
63055
- return element.offsetWidth - paddingX - borderX;
63056
- };
63057
- var getNumber = function getNumber(value) {
63058
- return parseFloat(value) || 0;
63059
- };
63060
- var getCssStyle = function getCssStyle(element, prop) {
63061
- return window.getComputedStyle(element, null).getPropertyValue(prop);
63062
- };
63063
- var getCanvasFont = function getCanvasFont(el) {
63064
- if (el === void 0) {
63065
- el = document.body;
63066
- }
63067
- var fontWeight = getCssStyle(el, CSS_PROPERTY.FONT_WEIGHT);
63068
- var fontSize = getCssStyle(el, CSS_PROPERTY.FONT_SIZE);
63069
- var fontFamily = getCssStyle(el, CSS_PROPERTY.FONT_FAMILY);
63070
- return fontWeight + " " + fontSize + " " + fontFamily;
63071
- };
63072
- var onMouseEnter = function onMouseEnter(e) {
63073
- if (onShowTimeout.id) {
63074
- clearTimeout(onShowTimeout.id);
63075
- }
63076
- if (e.target == containerRef.current) {
63077
- onShowTimeout.id = setTimeout(function () {
63078
- setIsShow(true);
63079
- }, 750);
63080
- }
63081
- };
63082
- var onMouseLeave = function onMouseLeave(e) {
63083
- if (onShowTimeout.id) {
63084
- clearTimeout(onShowTimeout.id);
63085
- }
63086
- setTimeout(function () {
63087
- return setIsShow(false);
63088
- }, 300);
63089
- };
63090
- return React__default.createElement(Tooltip$1, Object.assign({}, props, {
63091
- text: text,
63092
- isShow: isEnabled ? isShow : false,
63093
- isHideOnHover: false
63094
- }), props.children);
63095
- });
63096
-
63097
63175
  var styles$M = {"vitro-selected-item-multi":"_lookup-picker-selected-item_vitro-selected-item-multi_bzL7ugZ","vitro-selected-item":"_lookup-picker-selected-item_vitro-selected-item_hw-euth","vitro-button-close":"_lookup-picker-selected-item_vitro-button-close_1SRnr_0"};
63098
63176
 
63099
- var styles$N = {"vitro-lookup-picker":"_lookup-picker_vitro-lookup-picker_1aXYQEG","vitro-content":"_lookup-picker_vitro-content_37L0slb","vitro-lookup-picker-multi-select":"_lookup-picker_vitro-lookup-picker-multi-select_3Lkq2tk","vitro-value-container":"_lookup-picker_vitro-value-container_3GeBIaW","vitro-right":"_lookup-picker_vitro-right_1XFsL1w","vitro-read-only":"_lookup-picker_vitro-read-only_32NOdGB","vitro-label":"_lookup-picker_vitro-label_2QoJkUz","vitro-focus":"_lookup-picker_vitro-focus_2UGpxXD","vitro-error":"_lookup-picker_vitro-error_dF7iopC","vitro-error-message":"_lookup-picker_vitro-error-message_2iBjyRP","vitro-copy-button":"_lookup-picker_vitro-copy-button_3UItrZb","vitro-button-close":"_lookup-picker_vitro-button-close_3_Qndrj","vitro-button-collapse-up":"_lookup-picker_vitro-button-collapse-up_3i0OJub","vitro-button-collapse-bottom":"_lookup-picker_vitro-button-collapse-bottom_3o0Pl83","vitro-tooltip":"_lookup-picker_vitro-tooltip_2a12Z4P","vitro-library-button":"_lookup-picker_vitro-library-button_1zwNYAA"};
63177
+ var styles$N = {"vitro-lookup-picker":"_lookup-picker_vitro-lookup-picker_1aXYQEG","vitro-content":"_lookup-picker_vitro-content_37L0slb","vitro-read-only":"_lookup-picker_vitro-read-only_32NOdGB","vitro-label":"_lookup-picker_vitro-label_2QoJkUz","vitro-focus":"_lookup-picker_vitro-focus_2UGpxXD","vitro-error":"_lookup-picker_vitro-error_dF7iopC","vitro-error-message":"_lookup-picker_vitro-error-message_2iBjyRP","vitro-copy-button":"_lookup-picker_vitro-copy-button_3UItrZb","vitro-value-container":"_lookup-picker_vitro-value-container_3GeBIaW","vitro-multi-value-container":"_lookup-picker_vitro-multi-value-container_2ScQ_Ua","vitro-lookup-picker-multi-select":"_lookup-picker_vitro-lookup-picker-multi-select_3Lkq2tk","vitro-button-close":"_lookup-picker_vitro-button-close_3_Qndrj","vitro-button-collapse-up":"_lookup-picker_vitro-button-collapse-up_3i0OJub","vitro-button-collapse-bottom":"_lookup-picker_vitro-button-collapse-bottom_3o0Pl83","vitro-tooltip":"_lookup-picker_vitro-tooltip_2a12Z4P","vitro-right":"_lookup-picker_vitro-right_1XFsL1w","vitro-library-button":"_lookup-picker_vitro-library-button_1zwNYAA"};
63100
63178
 
63101
63179
  var htmlValueStyles = {"vitro-item-html-value":"_lookup-picker-html-value_vitro-item-html-value_2QBoTey"};
63102
63180
 
@@ -63193,9 +63271,15 @@ var ValueList = function ValueList(props) {
63193
63271
  }, []);
63194
63272
  React.useEffect(function () {
63195
63273
  if (props.isVisible && props.contentRef) {
63196
- setStyle({
63197
- width: props.contentRef.offsetWidth + UNIT.PX
63198
- });
63274
+ if (props.isFullWidth !== false) {
63275
+ setStyle({
63276
+ width: props.contentRef.offsetWidth + UNIT.PX
63277
+ });
63278
+ } else {
63279
+ setStyle({
63280
+ minWidth: props.contentRef.offsetWidth + UNIT.PX
63281
+ });
63282
+ }
63199
63283
  } else {
63200
63284
  setStyle({
63201
63285
  width: 0
@@ -63226,13 +63310,15 @@ var ValueList = function ValueList(props) {
63226
63310
  isShow: props.isVisible,
63227
63311
  target: props.contentRef,
63228
63312
  placement: props.placement,
63313
+ allowedAutoPlacements: props.allowedAutoPlacements,
63229
63314
  isFlip: props.isFlip,
63230
63315
  className: valueListStyles['vitro-value-list'],
63231
63316
  style: style ? style : {}
63232
63317
  }, React__default.createElement("div", {
63233
63318
  onMouseDown: onMouseDown
63234
63319
  }, React__default.createElement(ScrollBar, {
63235
- onInit: setScrollableElement
63320
+ onInit: setScrollableElement,
63321
+ isPreventParentScroll: true
63236
63322
  }, props.isPending && React__default.createElement(Progress, null), !props.isPending && React__default.createElement(React__default.Fragment, null, props.list.length > 0 ? props.list.sort(sortValueList).map(function (x) {
63237
63323
  return React__default.createElement(ValueListItem, {
63238
63324
  item: x,
@@ -63244,7 +63330,7 @@ var ValueList = function ValueList(props) {
63244
63330
  className: valueListStyles['vitro-placeholder-empty']
63245
63331
  }, props.emptyPlaceholder))), props.button && React__default.createElement(FlexBox, {
63246
63332
  className: valueListStyles['vitro-flex']
63247
- }, React__default.createElement(Button$2, Object.assign({}, props.button, {
63333
+ }, React__default.createElement(Button$1, Object.assign({}, props.button, {
63248
63334
  className: valueListStyles['vitro-button']
63249
63335
  })))));
63250
63336
  };
@@ -63300,9 +63386,10 @@ var CopyButton = function CopyButton(props) {
63300
63386
  });
63301
63387
  };
63302
63388
 
63303
- var RightButtonGroup = function RightButtonGroup(props) {
63389
+ var RightButtonGroup = React.forwardRef(function (props, ref) {
63304
63390
  return React__default.createElement(FlexBox, {
63305
- className: styles$N['vitro-right']
63391
+ className: styles$N['vitro-right'],
63392
+ ref: ref
63306
63393
  }, props.isShowButtonClear && React__default.createElement(ImageButton, {
63307
63394
  className: styles$N['vitro-button-close'],
63308
63395
  onClick: function onClick() {
@@ -63322,7 +63409,7 @@ var RightButtonGroup = function RightButtonGroup(props) {
63322
63409
  return props.selectedValueTemplate(x);
63323
63410
  }).join(CTRL.COMMA)
63324
63411
  }) : null);
63325
- };
63412
+ });
63326
63413
 
63327
63414
  var LOCALE$6;
63328
63415
  (function (LOCALE) {
@@ -63361,6 +63448,8 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63361
63448
  var contentRef = React.useRef(null);
63362
63449
  var containerRef = React.useRef(null);
63363
63450
  var isShowTooltipRef = React.useRef(true);
63451
+ var scrollBarRef = React.useRef(null);
63452
+ var rightButtonGroupRef = React.useRef(null);
63364
63453
  var updatePending = function updatePending(valueList) {
63365
63454
  return setPending(valueList ? false : true);
63366
63455
  };
@@ -63436,9 +63525,6 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63436
63525
  }
63437
63526
  }
63438
63527
  };
63439
- React.useEffect(function () {
63440
- onInputValueUpdated();
63441
- }, [inputValue]);
63442
63528
  React.useEffect(function () {
63443
63529
  if (props.valueList && selectedValueList) {
63444
63530
  updateFilteredValueList(props.valueList.filter(function (x) {
@@ -63479,12 +63565,16 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63479
63565
  var selectedValueTemplate = function selectedValueTemplate(value) {
63480
63566
  return props.selectedValueTemplate ? props.selectedValueTemplate(value) : value.title;
63481
63567
  };
63568
+ var expandValueList = function expandValueList() {
63569
+ if (props.getAllValueList || props.getValueList) {
63570
+ setValueListVisible(true);
63571
+ }
63572
+ };
63482
63573
  var onChange = function onChange(e) {
63483
- var _inputRef$current;
63484
63574
  setState(styles$N['vitro-focus']);
63485
- setValueListVisible(true);
63575
+ expandValueList();
63486
63576
  setInputValue(e.target.value);
63487
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
63577
+ onInputValueUpdated();
63488
63578
  };
63489
63579
  var onKeyDown = function onKeyDown(e) {
63490
63580
  var keyBoardBackSpace = 8;
@@ -63553,8 +63643,8 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63553
63643
  };
63554
63644
  var onOptionValueDelete = function onOptionValueDelete(id) {
63555
63645
  if (!props.isDisabled) {
63556
- var _inputRef$current2;
63557
- (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus();
63646
+ var _inputRef$current;
63647
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
63558
63648
  var newSelectedValueList = id ? selectedValueList.filter(function (x) {
63559
63649
  return x.id !== id;
63560
63650
  }) : [];
@@ -63566,9 +63656,12 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63566
63656
  };
63567
63657
  var onFocusOut = function onFocusOut(e) {
63568
63658
  var _document$activeEleme;
63659
+ if (scrollBarRef.current) {
63660
+ scrollBarRef.current.scrollTop = 0;
63661
+ }
63569
63662
  var target = e.currentTarget;
63570
63663
  var isValueListItem = Boolean(props.isMultiSelect && ((_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 ? void 0 : _document$activeEleme.classList.contains(valueListStyles['vitro-item'])));
63571
- if (!target.contains(document.activeElement) && !isValueListItem) {
63664
+ if (!target.contains(document.activeElement) && !(e.target.parentElement == rightButtonGroupRef.current) && !isValueListItem) {
63572
63665
  setValueListVisible(false);
63573
63666
  setInputValue(CTRL.EMPTY);
63574
63667
  if (props.onBlur && !props.isDisabled) {
@@ -63580,20 +63673,24 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63580
63673
  }
63581
63674
  };
63582
63675
  var onFocus = function onFocus(e) {
63583
- var _inputRef$current3;
63676
+ var _inputRef$current2;
63677
+ if (scrollBarRef.current) {
63678
+ scrollBarRef.current.scrollTop = scrollBarRef.current.scrollHeight;
63679
+ }
63584
63680
  onInputValueUpdated();
63585
63681
  isShowTooltipRef.current = false;
63586
63682
  setState(styles$N['vitro-focus']);
63587
- setValueListVisible(true);
63588
- (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.focus();
63683
+ expandValueList();
63684
+ (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus();
63589
63685
  if (props.onFocus) {
63590
63686
  props.onFocus(e);
63591
63687
  }
63592
63688
  };
63593
63689
  var onCollapseButtonClick = function onCollapseButtonClick(valueListVisible) {
63594
- setValueListVisible(!valueListVisible);
63595
- if (!valueListVisible) {
63596
- onInputValueUpdated();
63690
+ if (valueListVisible) {
63691
+ setValueListVisible(false);
63692
+ } else {
63693
+ onFocus(null);
63597
63694
  }
63598
63695
  };
63599
63696
  var getClassName = function getClassName() {
@@ -63634,6 +63731,23 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63634
63731
  });
63635
63732
  }
63636
63733
  };
63734
+ var content = React__default.createElement(React__default.Fragment, null, selectedValueList && selectedValueList.length > 0 && (props.isMultiSelect ? true : inputValue.length === 0) ? React__default.createElement(SelectedValueList, {
63735
+ list: selectedValueList,
63736
+ onOptionValueDelete: onOptionValueDelete,
63737
+ selectedValueTemplate: selectedValueTemplate,
63738
+ isMultiSelect: props.isMultiSelect,
63739
+ isReadOnly: props.isReadOnly,
63740
+ isValueListVisible: valueListVisible,
63741
+ getHtmlValue: getHtmlValue
63742
+ }) : !valueListVisible && props.placeholder && React__default.createElement("div", {
63743
+ className: styles$N['vitro-placeholder']
63744
+ }, props.placeholder), isEditable && React__default.createElement("input", {
63745
+ ref: inputRef,
63746
+ value: inputValue,
63747
+ onKeyDown: onKeyDown,
63748
+ onChange: onChange
63749
+ }), !props.isDisabled && props.children);
63750
+ var isShowButtonClear = props.isShowButtonClear !== false && !props.isMultiSelect && selectedValueList && selectedValueList.length > 0 && isEditable;
63637
63751
  return React__default.createElement("div", {
63638
63752
  className: getClassName(),
63639
63753
  tabIndex: 1,
@@ -63647,36 +63761,27 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63647
63761
  }), React__default.createElement(FlexBox, {
63648
63762
  className: styles$N['vitro-content'],
63649
63763
  ref: contentRef
63650
- }, React__default.createElement(FlexBox, {
63764
+ }, props.isMultiSelect ? React__default.createElement(ScrollBar, {
63765
+ contentClassName: styles$N['vitro-multi-value-container'],
63766
+ onClick: onFocus,
63767
+ ref: scrollBarRef
63768
+ }, content) : React__default.createElement(FlexBox, {
63651
63769
  className: styles$N['vitro-value-container'],
63652
63770
  onClick: onFocus
63653
- }, selectedValueList && selectedValueList.length > 0 && (props.isMultiSelect ? true : inputValue.length === 0) ? React__default.createElement(SelectedValueList, {
63654
- list: selectedValueList,
63655
- onOptionValueDelete: onOptionValueDelete,
63656
- selectedValueTemplate: selectedValueTemplate,
63657
- isMultiSelect: props.isMultiSelect,
63658
- isReadOnly: props.isReadOnly,
63659
- isValueListVisible: valueListVisible,
63660
- getHtmlValue: getHtmlValue
63661
- }) : !valueListVisible && React__default.createElement(React__default.Fragment, null, props.placeholder), isEditable && React__default.createElement("input", {
63662
- ref: inputRef,
63663
- value: inputValue,
63664
- onKeyDown: onKeyDown,
63665
- onChange: onChange,
63666
- onFocus: onFocus
63667
- }), !props.isDisabled && props.children), React__default.createElement(RightButtonGroup, {
63771
+ }, content), props.isShowSearchButton || props.filterMinLength == 0 || isShowButtonClear || !isEditable ? React__default.createElement(RightButtonGroup, {
63668
63772
  selectedValueList: selectedValueList,
63669
63773
  isReadOnly: props.isReadOnly,
63670
63774
  isEditable: isEditable,
63671
- isShowButtonClear: props.isShowButtonClear !== false && !props.isMultiSelect && selectedValueList && selectedValueList.length > 0 && isEditable,
63775
+ isShowButtonClear: isShowButtonClear,
63672
63776
  isValueListVisible: valueListVisible,
63673
63777
  isShowExpandButton: props.filterMinLength == 0,
63674
63778
  isShowSearchButton: props.isShowSearchButton,
63675
63779
  onClickSearchButton: onSearch,
63676
63780
  onOptionValueDelete: onOptionValueDelete,
63677
63781
  onCollapseButtonClick: onCollapseButtonClick,
63678
- selectedValueTemplate: props.selectedValueTemplate
63679
- })), isEditable && (!props.filterMinLength || props.filterMinLength <= inputValue.length) && React__default.createElement(ValueList, {
63782
+ selectedValueTemplate: props.selectedValueTemplate,
63783
+ ref: rightButtonGroupRef
63784
+ }) : null), isEditable && (!props.filterMinLength || props.filterMinLength <= inputValue.length) && React__default.createElement(ValueList, {
63680
63785
  isPending: pending,
63681
63786
  inputValue: inputValue,
63682
63787
  list: filteredValueList,
@@ -63689,7 +63794,9 @@ var LookupPicker = React.forwardRef(function (props, ref) {
63689
63794
  emptyPlaceholder: props.emptyPlaceholder || localeService.create(LOCALE$6.PLACEHOLDER_EMPTY),
63690
63795
  getHtmlValue: getHtmlValue,
63691
63796
  placement: props.dropdownPlacement,
63692
- button: props.valueListButton
63797
+ allowedAutoPlacements: props.dropdownAllowedAutoPlacements,
63798
+ button: props.valueListButton,
63799
+ isFullWidth: props.isValueListFullWidth
63693
63800
  }), props.errorMessage && React__default.createElement(ErrorMessage, {
63694
63801
  text: props.errorMessage,
63695
63802
  className: styles$N['vitro-error-message']
@@ -63807,7 +63914,7 @@ var BaseLookupPicker = function BaseLookupPicker(props) {
63807
63914
  var _exit = false;
63808
63915
  var _temp2 = function () {
63809
63916
  if (data.list) {
63810
- return Promise.resolve(itemSelectDialogService.show(data.list, undefined, isMultiSelect, undefined, {
63917
+ return Promise.resolve(itemSelectDialogService.show(data.list, undefined, isMultiSelect, undefined, false, {
63811
63918
  isShowSelection: isMultiSelect
63812
63919
  })).then(function (itemIdList) {
63813
63920
  if (itemIdList && itemIdList.length) {
@@ -65589,7 +65696,8 @@ var CriterionFilter = function CriterionFilter(props) {
65589
65696
  selectedValueTemplate: function selectedValueTemplate(value) {
65590
65697
  return value.name;
65591
65698
  },
65592
- valueList: getContentTypeList()
65699
+ valueList: getContentTypeList(),
65700
+ isMultiSelect: true
65593
65701
  }));
65594
65702
  }
65595
65703
  }, {
@@ -65597,7 +65705,8 @@ var CriterionFilter = function CriterionFilter(props) {
65597
65705
  value: function value(props) {
65598
65706
  var _props$id;
65599
65707
  return React__default.createElement(UserLookupPicker$1, Object.assign({}, props, {
65600
- id: (_props$id = props.id) === null || _props$id === void 0 ? void 0 : _props$id.split(CTRL.DOT)[0]
65708
+ id: (_props$id = props.id) === null || _props$id === void 0 ? void 0 : _props$id.split(CTRL.DOT)[0],
65709
+ isMultiSelect: true
65601
65710
  }));
65602
65711
  }
65603
65712
  }];
@@ -66071,7 +66180,7 @@ var SortFilter = function SortFilter(props) {
66071
66180
  isClearChangedFieldValueMap: true
66072
66181
  }) : CTRL.EMPTY, React__default.createElement("div", {
66073
66182
  className: CSS_CLASS_ADD_FIELD
66074
- }, React__default.createElement(Button$2, {
66183
+ }, React__default.createElement(Button$1, {
66075
66184
  ref: addFieldButtonRef,
66076
66185
  text: props.labelAddField,
66077
66186
  onClick: onAddSortField,
@@ -66227,7 +66336,7 @@ var SearchDialog = function SearchDialog(props) {
66227
66336
  }, React__default.createElement(ButtonCancel, {
66228
66337
  text: getSearchLabel(ACTION$2.CANCEL),
66229
66338
  onClick: props.onCancel
66230
- }), React__default.createElement(Button$2, {
66339
+ }), React__default.createElement(Button$1, {
66231
66340
  text: getSearchLabel(ACTION$2.SEARCH),
66232
66341
  onClick: props.onSearch,
66233
66342
  className: STYLE.PRIMARY
@@ -66254,7 +66363,7 @@ var styles$W = {"vitro-search":"_search_vitro-search_QkJksC_","vitro-active":"_s
66254
66363
 
66255
66364
  var CONDITION_CONTAINS = 11;
66256
66365
  var CSS_CLASS_ACTIVE$1 = 'vitro-active';
66257
- var Search = function Search(props) {
66366
+ var Search = React.forwardRef(function (props, ref) {
66258
66367
  var _useState = React.useState(false),
66259
66368
  isShowDialog = _useState[0],
66260
66369
  setIsShowDialog = _useState[1];
@@ -66275,12 +66384,20 @@ var Search = function Search(props) {
66275
66384
  setSendedSearchCriterionList = _useState6[1];
66276
66385
  var searchInputRef = React.useRef(null);
66277
66386
  var searchRef = React.useRef(null);
66387
+ var destinationRef = React.useRef(props.destination);
66278
66388
  var eventService = inversifyReact.useInjection(SERVICE.EVENT);
66279
66389
  var localeService = inversifyReact.useInjection(SERVICE.LOCALE);
66280
66390
  var columnService = inversifyReact.useInjection(SERVICE.COLUMN);
66281
66391
  var guidService = inversifyReact.useInjection(SERVICE.GUID);
66282
66392
  var inputPlaceholder = localeService.create(LOCALE$8.SEARCH_INPUT_PLACEHOLDER);
66283
66393
  var defaultSearchFieldName = FIELD$1.NAME;
66394
+ React.useImperativeHandle(ref, function () {
66395
+ return {
66396
+ setDestination: function setDestination(destination) {
66397
+ destinationRef.current = destination;
66398
+ }
66399
+ };
66400
+ });
66284
66401
  React.useEffect(function () {
66285
66402
  if (props.searchCriterionList) {
66286
66403
  setSearchCriterionList(props.searchCriterionList);
@@ -66317,7 +66434,7 @@ var Search = function Search(props) {
66317
66434
  eventService.send(exports.EVENT.SEARCH, {
66318
66435
  searchCriterionList: list,
66319
66436
  source: props.id,
66320
- destination: props.destination
66437
+ destination: destinationRef.current
66321
66438
  });
66322
66439
  }
66323
66440
  }, [props.parentId]);
@@ -66430,7 +66547,7 @@ var Search = function Search(props) {
66430
66547
  eventService.send(exports.EVENT.SEARCH, {
66431
66548
  searchCriterionList: null,
66432
66549
  source: props.id,
66433
- destination: props.destination
66550
+ destination: destinationRef.current
66434
66551
  });
66435
66552
  };
66436
66553
  var getInputCriterionList = function getInputCriterionList(value) {
@@ -66483,7 +66600,7 @@ var Search = function Search(props) {
66483
66600
  eventService.send(exports.EVENT.SEARCH, {
66484
66601
  searchCriterionList: list,
66485
66602
  source: props.id,
66486
- destination: props.destination
66603
+ destination: destinationRef.current
66487
66604
  });
66488
66605
  };
66489
66606
  return React__default.createElement("div", {
@@ -66519,7 +66636,7 @@ var Search = function Search(props) {
66519
66636
  setSearchCriterionList: setSearchCriterionList,
66520
66637
  searchRef: searchRef
66521
66638
  }));
66522
- };
66639
+ });
66523
66640
 
66524
66641
  var styles$X = {"vitro-viewer-issue-list":"_viewer-issue-list_vitro-viewer-issue-list_NgsIC86","vitro-search-wrap":"_viewer-issue-list_vitro-search-wrap_1relfMg","vitro-issue-list-wrap":"_viewer-issue-list_vitro-issue-list-wrap_jT8ou5P"};
66525
66642
 
@@ -66645,11 +66762,13 @@ var ViewerIssueList = function ViewerIssueList(props) {
66645
66762
  };
66646
66763
 
66647
66764
  var w$6 = window;
66765
+ var LOCALE_DATE_TIME = 'app.common.dateTime';
66648
66766
  var CSS_CLASS_SIDEBAR_CONTENT = 'body__sidebar-content';
66649
66767
  var ID_VIEWER_CONTAINER = 'viewerContainer';
66650
66768
  var ID_FILE_VERSION_SELECT = 'fileVersionSelect';
66651
66769
  var EVENT_PAGE_RENDERED = 'webViewerPageRendered';
66652
66770
  var Viewer = function Viewer(props) {
66771
+ var localeService = inversifyReact.useInjection(SERVICE.LOCALE);
66653
66772
  React.useEffect(function () {
66654
66773
  if (props.context.file) {
66655
66774
  init();
@@ -66660,7 +66779,8 @@ var Viewer = function Viewer(props) {
66660
66779
  if (w$6.initPdfViewer) {
66661
66780
  initSearchCriterionList();
66662
66781
  var context = _extends({}, props.context, {
66663
- initIssueList: initIssueList
66782
+ initIssueList: initIssueList,
66783
+ getDateText: getDateText
66664
66784
  });
66665
66785
  w$6.initPdfViewer(context);
66666
66786
  initFileVersionSelect();
@@ -66750,11 +66870,16 @@ var Viewer = function Viewer(props) {
66750
66870
  });
66751
66871
  reactDom.render(select, selectContainer);
66752
66872
  };
66873
+ var getDateText = function getDateText(date) {
66874
+ return localeService.create(LOCALE_DATE_TIME, {
66875
+ date: date
66876
+ });
66877
+ };
66753
66878
  return React__default.createElement(React__default.Fragment, null);
66754
66879
  };
66755
66880
 
66756
66881
  var name = "@vitrosoftware/common-ui-ts";
66757
- var version$1 = "1.1.227";
66882
+ var version$1 = "1.1.228";
66758
66883
  var description = "vitro software common ui ts";
66759
66884
  var author = "";
66760
66885
  var license = "MIT";
@@ -67056,7 +67181,7 @@ var styles$12 = {"vitro-submit-button":"_login-submit-button_vitro-submit-button
67056
67181
 
67057
67182
  var LoginSubmitButton = function LoginSubmitButton(props) {
67058
67183
  var localeService = inversifyReact.useInjection(SERVICE.LOCALE);
67059
- return React__default.createElement(Button$2, {
67184
+ return React__default.createElement(Button$1, {
67060
67185
  className: STYLE.PRIMARY + CTRL.SPACE + styles$12['vitro-submit-button'] + (props.className ? CTRL.SPACE + props.className : CTRL.EMPTY),
67061
67186
  text: localeService.create(LOCALE$9.ACTION_LOGIN),
67062
67187
  onClick: props.onClick,
@@ -67223,7 +67348,7 @@ var LoginForm = React.forwardRef(function (props, ref) {
67223
67348
  }, localeService.create(LOCALE$9.LOGIN_FORM_SEPARATOR_TEXT)), React__default.createElement("div", {
67224
67349
  className: styles$14['vitro-button-list']
67225
67350
  }, props.buttonList.map(function (button) {
67226
- return React__default.createElement(Button$2, Object.assign({}, button, {
67351
+ return React__default.createElement(Button$1, Object.assign({}, button, {
67227
67352
  className: styles$14['vitro-button']
67228
67353
  }));
67229
67354
  }))) : React__default.createElement(React__default.Fragment, null), props.onRegister && React__default.createElement(Link, {
@@ -67418,7 +67543,7 @@ var CommandMenu = React.forwardRef(function (props, ref) {
67418
67543
  var styles$19 = {"vitro-command-menu-button":"_command-menu-button_vitro-command-menu-button_2IiXVbP","vitro-image":"_command-menu-button_vitro-image_27yILgG"};
67419
67544
 
67420
67545
  var CommandMenuButton = function CommandMenuButton(props) {
67421
- return React__default.createElement("li", null, React__default.createElement(Button$2, Object.assign({}, props, {
67546
+ return React__default.createElement("li", null, React__default.createElement(Button$1, Object.assign({}, props, {
67422
67547
  className: styles$19['vitro-command-menu-button'] + CTRL.SPACE + (props.className ? props.className : STYLE.LIGHT)
67423
67548
  })));
67424
67549
  };
@@ -68161,7 +68286,7 @@ var AlertConstants = {
68161
68286
  get TYPE () { return TYPE$2; }
68162
68287
  };
68163
68288
 
68164
- var styles$1h = {"vitro-alert":"_alert_vitro-alert_3sPAkJb","vitro-position-absolute":"_alert_vitro-position-absolute_2A33Lq4","vitro-alert-content":"_alert_vitro-alert-content_10fW1n4","vitro-button-close":"_alert_vitro-button-close_39K9cqW","vitro-icon":"_alert_vitro-icon_pK385gF","vitro-text":"_alert_vitro-text_37Erxqj","vitro-alert-action-list":"_alert_vitro-alert-action-list_2XzbaCO","vitro-position-center":"_alert_vitro-position-center_1r_lK_e"};
68289
+ var styles$1h = {"vitro-alert":"_alert_vitro-alert_3sPAkJb","vitro-position-absolute":"_alert_vitro-position-absolute_2A33Lq4","vitro-alert-content":"_alert_vitro-alert-content_10fW1n4","vitro-button-close":"_alert_vitro-button-close_39K9cqW","vitro-icon":"_alert_vitro-icon_pK385gF","vitro-text":"_alert_vitro-text_37Erxqj","vitro-position-center":"_alert_vitro-position-center_1r_lK_e","vitro-content-container":"_alert_vitro-content-container_M2-akFp"};
68165
68290
 
68166
68291
  var TYPE_DANGER = 'danger';
68167
68292
  var Alert$1 = function Alert(props) {
@@ -68171,12 +68296,6 @@ var Alert$1 = function Alert(props) {
68171
68296
  ref.current.focus();
68172
68297
  }
68173
68298
  }, [props]);
68174
- var actionOnClick = function actionOnClick(action) {
68175
- if (action) {
68176
- action();
68177
- }
68178
- props.setMessage(null);
68179
- };
68180
68299
  var onClose = function onClose() {
68181
68300
  if (props.onClose) {
68182
68301
  props.onClose();
@@ -68193,16 +68312,6 @@ var Alert$1 = function Alert(props) {
68193
68312
  }, 100);
68194
68313
  }
68195
68314
  };
68196
- var actionList = props.actionList && React__default.createElement("div", {
68197
- className: styles$1h['vitro-alert-action-list']
68198
- }, props.actionList.map(function (a) {
68199
- return React__default.createElement(Button$1, {
68200
- key: a.text,
68201
- onClick: function onClick() {
68202
- return actionOnClick(a.onClick);
68203
- }
68204
- }, a.text);
68205
- }));
68206
68315
  var className = [styles$1h['vitro-alert'], props.isPositionCenter ? styles$1h['vitro-position-center'] : CTRL.EMPTY, props.isPositionAbsolute ? styles$1h['vitro-position-absolute'] : CTRL.EMPTY, props.className || CTRL.EMPTY].join(CTRL.SPACE);
68207
68316
  return React__default.createElement("div", {
68208
68317
  tabIndex: 1,
@@ -68216,12 +68325,15 @@ var Alert$1 = function Alert(props) {
68216
68325
  className: styles$1h['vitro-alert-content']
68217
68326
  }, React__default.createElement("div", {
68218
68327
  className: styles$1h['vitro-icon']
68219
- }), React__default.createElement("div", {
68328
+ }), React__default.createElement(FlexBox, {
68329
+ className: styles$1h['vitro-content-container'],
68330
+ isColumn: true
68331
+ }, (props.title || props.text) && React__default.createElement("div", {
68220
68332
  className: styles$1h['vitro-text']
68221
- }, props.title && React__default.createElement("strong", null, props.title), props.text, !props.text && props.children), !props.isMultiline && actionList, props.isDismissible && React__default.createElement("div", {
68333
+ }, props.title && React__default.createElement("strong", null, props.title), props.text), props.children), props.isDismissible && React__default.createElement("div", {
68222
68334
  className: styles$1h['vitro-button-close'],
68223
68335
  onClick: onClose
68224
- })), props.text && props.children, props.isMultiline && actionList));
68336
+ }))));
68225
68337
  };
68226
68338
 
68227
68339
  var styles$1i = {"vitro-user-profile":"_user-profile_vitro-user-profile_11XpBoQ","vitro-dropdown-item":"_user-profile_vitro-dropdown-item_dSErsta","vitro-avatar":"_user-profile_vitro-avatar_3SzDPAi"};
@@ -82548,7 +82660,8 @@ var File = function File(props) {
82548
82660
  isColumn: true
82549
82661
  }, props.actionList && props.actionList.length ? React__default.createElement(DropdownButton, {
82550
82662
  itemList: props.actionList,
82551
- className: styles$1k['vitro-dropdown-button']
82663
+ containerClassName: styles$1k['vitro-dropdown-button'],
82664
+ className: STYLE$1.CONTEXT
82552
82665
  }) : null, props.preview && React__default.createElement(Tooltip$1, {
82553
82666
  placement: PLACEMENT.TOP,
82554
82667
  text: props.tooltip || CTRL.EMPTY
@@ -83137,7 +83250,6 @@ var EditableFieldIterator = function EditableFieldIterator(props) {
83137
83250
  changedFieldValueMap: changedFieldValueMap,
83138
83251
  componentMap: componentMap,
83139
83252
  onChange: onChange,
83140
- isVisibleOverflow: true,
83141
83253
  className: styles$1r['vitro-field-iterator']
83142
83254
  }) : React__default.createElement(ScrollBar, {
83143
83255
  className: styles$1r['vitro-scrollbar']
@@ -83147,7 +83259,6 @@ var EditableFieldIterator = function EditableFieldIterator(props) {
83147
83259
  changedFieldValueMap: changedFieldValueMap,
83148
83260
  componentMap: componentMap,
83149
83261
  onChange: onChange,
83150
- isVisibleOverflow: true,
83151
83262
  className: styles$1r['vitro-field-iterator']
83152
83263
  })));
83153
83264
  };
@@ -84549,7 +84660,7 @@ var DxfViewer = function DxfViewer(props) {
84549
84660
  });
84550
84661
  };
84551
84662
 
84552
- var styles$1O = {"vitro-select":"_select_vitro-select_EObExkL","vitro-active":"_select_vitro-active_3I2oZ9Y","vitro-label":"_select_vitro-label_1sD79dR","vitro-list-container":"_select_vitro-list-container_1iaPtG5","vitro-item":"_select_vitro-item_3Q88bWt"};
84663
+ var styles$1O = {"vitro-select":"_select_vitro-select_EObExkL","vitro-active":"_select_vitro-active_3I2oZ9Y","vitro-label":"_select_vitro-label_1sD79dR","vitro-list-container":"_select_vitro-list-container_1iaPtG5","vitro-expanded":"_select_vitro-expanded_1_6Vcpy","vitro-item":"_select_vitro-item_3Q88bWt","vitro-scrollbar":"_select_vitro-scrollbar_1T9-kjS"};
84553
84664
 
84554
84665
  var Select = function Select(props) {
84555
84666
  var _useState = React.useState(null),
@@ -84613,13 +84724,15 @@ var Select = function Select(props) {
84613
84724
  text: props.label,
84614
84725
  className: styles$1O['vitro-label']
84615
84726
  }), React__default.createElement(itemTemplate, value), React__default.createElement("div", {
84616
- className: styles$1O['vitro-list-container'],
84727
+ className: styles$1O['vitro-list-container'] + (isExpanded ? CTRL.SPACE + styles$1O['vitro-expanded'] : CTRL.EMPTY),
84617
84728
  ref: listRef
84729
+ }, React__default.createElement(ScrollBar, {
84730
+ className: styles$1O['vitro-scrollbar']
84618
84731
  }, React__default.createElement(List$1, {
84619
84732
  itemList: props.itemList,
84620
84733
  onClick: onClick,
84621
84734
  itemTemplate: itemTemplate
84622
- })));
84735
+ }))));
84623
84736
  };
84624
84737
 
84625
84738
  var styles$1P = {"vitro-switch":"_switch_vitro-switch_1noCcra","vitro-slider":"_switch_vitro-slider_3wesxda","vitro-active":"_switch_vitro-active_3LJI9TW"};
@@ -84773,6 +84886,7 @@ var EditableList = function EditableList(props) {
84773
84886
  return new Map();
84774
84887
  }, []);
84775
84888
  React.useEffect(function () {
84889
+ setActiveDropdownItemId(undefined);
84776
84890
  setEditedItem(props.editedItemId || CTRL.EMPTY);
84777
84891
  if (props.editedItemId) {
84778
84892
  var _editedItem = props.itemList.find(function (val) {
@@ -85530,7 +85644,7 @@ var TelerikMediaPlayerServiceImpl = /*#__PURE__*/function () {
85530
85644
  media: {
85531
85645
  title: settings.media.title ? settings.media.title : CTRL.EMPTY,
85532
85646
  source: settings.media.url,
85533
- poster: settings.media.title ? settings.media.title : false
85647
+ poster: settings.media.poster ? settings.media.poster : false
85534
85648
  },
85535
85649
  autoPlay: settings.isAutoPlay === false ? settings.isAutoPlay : true,
85536
85650
  autoRepeat: settings.isAutoRepeat ? settings.isAutoRepeat : false,
@@ -85825,7 +85939,7 @@ var SlideUpButton = function SlideUpButton(props) {
85825
85939
  props.onClick(e);
85826
85940
  }
85827
85941
  };
85828
- return React__default.createElement(React__default.Fragment, null, React__default.createElement(Button$2, {
85942
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(Button$1, {
85829
85943
  onClick: onClick,
85830
85944
  text: CTRL.EMPTY,
85831
85945
  imageUrl: props.imageUrl,
@@ -85863,7 +85977,7 @@ exports.BUTTON = ButtonConstants;
85863
85977
  exports.BimViewer = BimViewer;
85864
85978
  exports.BottomAlignControlGroup = BottomAlignControlGroup;
85865
85979
  exports.Breadcrumbs = Breadcrumbs;
85866
- exports.Button = Button$2;
85980
+ exports.Button = Button$1;
85867
85981
  exports.ButtonCancel = ButtonCancel;
85868
85982
  exports.ButtonGroup = ButtonGroup;
85869
85983
  exports.CONTROL = CONTROL;