@vitrosoftware/common-ui-ts 1.1.226 → 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 (31) hide show
  1. package/css/std/controls/lookup-picker/lookup-picker-selected-item.css +0 -1
  2. package/css/std/controls/lookup-picker/lookup-picker-value-list.css +0 -1
  3. package/css/std/controls/lookup-picker/lookup-picker.css +1 -6
  4. package/css/std/controls/pdf-viewer/img/compare-dlg-separator.svg +3 -1
  5. package/css/std/controls/pdf-viewer/img/compare-dlg-title.svg +12 -0
  6. package/css/std/controls/pdf-viewer/pdf-viewer-index.css +148 -0
  7. package/css/std/controls/pdf-viewer/pdf-viewer.css +148 -0
  8. package/css/std/controls/select/select.css +2 -2
  9. package/css/std/controls/table-view/table-view-custom-lookup-edit.css +1 -1
  10. package/css/std/controls/table-view/treegrid-cell.css +4 -0
  11. package/css/std/controls/table-view/treegrid-context-menu.css +3 -3
  12. package/dist/index.css +3 -10
  13. package/dist/index.js +894 -1126
  14. package/dist/index.js.map +1 -1
  15. package/dist/src/controls/LookupPicker/LookupPicker.d.ts +2 -0
  16. package/dist/src/controls/LookupPicker/ValueList.d.ts +2 -0
  17. package/dist/src/controls/PdfViewer/services/PdfViewerService.d.ts +6 -0
  18. package/dist/src/controls/ScrollBar/ScrollBar.d.ts +1 -1
  19. package/dist/src/controls/TableView/TableViewConstants.d.ts +2 -1
  20. package/dist/src/controls/TableView/services/TableViewService.d.ts +1 -0
  21. package/dist/src/controls/TableView/services/impl/TableViewServiceImpl.d.ts +1 -0
  22. package/dist/src/controls/ViewPart/ViewPart.d.ts +2 -1
  23. package/dist/src/models/ItemCopyRequest.d.ts +5 -1
  24. package/dist/src/services/FileService.d.ts +8 -0
  25. package/lib/dxf-viewer/parser/DxfArrayScanner.js +27 -1
  26. package/lib/dxf-viewer/parser/DxfParser.js +7 -4
  27. package/lib/fflate/fflate.module.js +2672 -0
  28. package/package.json +1 -1
  29. package/src/controls/BimViewer/js/bim-viewer.js +2 -2
  30. package/src/controls/DxfViewer/js/dxf-viewer.js +100 -29
  31. package/src/controls/PdfViewer/js/pdf-viewer.js +240 -36
@@ -26,8 +26,10 @@ export interface LookupPickerProps {
26
26
  isRequired?: boolean;
27
27
  isFlipDropdown?: boolean;
28
28
  dropdownPlacement?: string;
29
+ dropdownAllowedAutoPlacements?: string[];
29
30
  isShowButtonClear?: boolean;
30
31
  isShowSearchButton?: boolean;
32
+ isValueListFullWidth?: boolean;
31
33
  onSearch?: () => Promise<{
32
34
  id: string;
33
35
  }[] | undefined>;
@@ -19,7 +19,9 @@ interface ValueListProps {
19
19
  id: string;
20
20
  }) => FunctionComponentElement<any> | null;
21
21
  placement?: any;
22
+ allowedAutoPlacements?: any;
22
23
  button?: ButtonProps;
24
+ isFullWidth?: boolean;
23
25
  }
24
26
  export declare const ValueList: (props: ValueListProps) => JSX.Element;
25
27
  export {};
@@ -2,6 +2,8 @@ import { models } from '../../../models';
2
2
  import type { Field } from '../../../models/Field';
3
3
  import type { Item } from '../../../models/Item';
4
4
  import type { ListConfig } from '../../../models/ListConfig';
5
+ import type { ItemService } from '../../../services/ItemService';
6
+ import type { FileService } from '../../../services/FileService';
5
7
  export interface PdfViewerService {
6
8
  file: any;
7
9
  versionId?: string;
@@ -27,4 +29,8 @@ export interface PdfViewerService {
27
29
  getSettingsFromLocalStorage: () => any;
28
30
  setSettingsToLocalStorage: (settings: string) => void;
29
31
  onIssueTileChange: (issue: Item, changedFieldValueMap: Map<string, unknown>) => void;
32
+ getItemIdList: () => Promise<string[]>;
33
+ itemService: ItemService;
34
+ fileService: FileService;
35
+ selectFileBtnText: string;
30
36
  }
@@ -3,7 +3,7 @@ interface ScrollBarProps extends React.HTMLAttributes<HTMLDivElement> {
3
3
  isHideScrollX?: boolean;
4
4
  isFocusOnScroll?: boolean;
5
5
  isPreventParentScroll?: boolean;
6
- onInit?: (container: any) => void;
6
+ onInit?: (container: any, scrollElement: any) => void;
7
7
  children: React.ReactNode;
8
8
  className?: string;
9
9
  contentRef?: React.RefObject<HTMLDivElement>;
@@ -148,7 +148,8 @@ export declare enum ATTRIBUTE {
148
148
  SPAN = "Span",
149
149
  LANG = "Lang",
150
150
  GMT = "GMT",
151
- ACTIONS = "Actions"
151
+ ACTIONS = "Actions",
152
+ MENU = "Menu"
152
153
  }
153
154
  export declare enum DRAG_ITEM_TYPE {
154
155
  CANNOT_DROP = 0,
@@ -124,6 +124,7 @@ export interface TableViewService {
124
124
  getPage(num?: number): models.TableViewRow;
125
125
  reloadPage(page: models.TableViewRow): void;
126
126
  getFirstVisible(): models.TableViewRow | undefined;
127
+ getLastVisible(): models.TableViewRow | undefined;
127
128
  getGanttSlack(row: models.TableViewRow, col?: string, bar?: string): number;
128
129
  getDependencies(row: models.TableViewRow, col?: string, ancestors?: boolean): Array<any>;
129
130
  getZoomList(col?: string): Array<any>;
@@ -155,4 +155,5 @@ export declare class TableViewServiceImpl implements services.TableViewService {
155
155
  private setVisibleColumnListXml;
156
156
  private addGanttVisibleColumnList;
157
157
  getNextCol(col: string): any;
158
+ getLastVisible(): any;
158
159
  }
@@ -5,6 +5,7 @@ interface ViewPartProps {
5
5
  props: any;
6
6
  item?: any;
7
7
  className?: string;
8
+ scrollElementRef?: any;
8
9
  }
9
- export declare let ViewPart: (props: ViewPartProps) => JSX.Element;
10
+ export declare const ViewPart: (props: ViewPartProps) => JSX.Element;
10
11
  export {};
@@ -1,5 +1,9 @@
1
1
  export interface ItemCopyRequest {
2
2
  id: string;
3
- isChildListCopyRequired: boolean;
3
+ name?: string;
4
+ isChildListCopy: boolean;
5
+ isFileCopy: boolean;
6
+ isPermissionCopy: boolean;
7
+ isMetadataCopy: boolean;
4
8
  childNodeList?: ItemCopyRequest[];
5
9
  }
@@ -0,0 +1,8 @@
1
+ import { Item } from "../models/Item";
2
+ export interface FileService {
3
+ get(sourceId: string): Promise<Array<Item>>;
4
+ getBySourceIdVersionId(sourceId: string, version: string): Promise<Item>;
5
+ download(itemId: string, fileName: string, version?: string, isFileBody?: boolean): void;
6
+ restore(versionId: string): any;
7
+ getName(fileName: string, majorVersion: number, minorVersion: number): string;
8
+ }
@@ -9,18 +9,36 @@
9
9
  * @param data - an array where each element represents a line in the dxf file
10
10
  * @constructor
11
11
  */
12
- export default function DxfArrayScanner(data) {
12
+ export default function DxfArrayScanner(data, fetcher) {
13
13
  this._pointer = 0;
14
14
  this._data = data;
15
15
  this._eof = false;
16
+ this._fetcher = fetcher;
16
17
  }
17
18
 
19
+ DxfArrayScanner.prototype.checkNextChunk = function () {
20
+ var delta = this._data.length - this._pointer;
21
+ const reserve = 6;
22
+ if (delta <= reserve) {
23
+ var nextChunk = this._fetcher.GetNextChunk();
24
+ if (nextChunk) {
25
+ const tail = this._data.slice(this._pointer - reserve)
26
+ this._data = tail.concat(nextChunk);
27
+ this._pointer = reserve;
28
+ }
29
+ }
30
+ }
31
+
32
+
18
33
  /**
19
34
  * Gets the next group (code, value) from the array. A group is two consecutive elements
20
35
  * in the array. The first is the code, the second is the value.
21
36
  * @returns {{code: Number}|*}
22
37
  */
23
38
  DxfArrayScanner.prototype.next = function() {
39
+ if (this._fetcher)
40
+ this.checkNextChunk();
41
+
24
42
  var group;
25
43
  if(!this.hasNext()) {
26
44
  if(!this._eof)
@@ -33,6 +51,10 @@ DxfArrayScanner.prototype.next = function() {
33
51
  code: parseInt(this._data[this._pointer])
34
52
  };
35
53
 
54
+ if (isNaN(group.code)) {
55
+ throw new Error("Cannot parse group code: " + this._data[this._pointer])
56
+ }
57
+
36
58
  this._pointer++;
37
59
 
38
60
  group.value = parseGroupValue(group.code, this._data[this._pointer]);
@@ -58,6 +80,10 @@ DxfArrayScanner.prototype.peek = function() {
58
80
  code: parseInt(this._data[this._pointer])
59
81
  };
60
82
 
83
+ if (isNaN(group.code)) {
84
+ throw new Error("Cannot parse group code: " + this._data[this._pointer])
85
+ }
86
+
61
87
  group.value = parseGroupValue(group.code, this._data[this._pointer + 1]);
62
88
 
63
89
  return group;
@@ -65,7 +65,8 @@ function registerDefaultObjectHandlers(dxfParser) {
65
65
  dxfParser.registerObjectHandler(Layout);
66
66
  }
67
67
 
68
- export default function DxfParser() {
68
+ export default function DxfParser(dxfFetcher) {
69
+ this._dxfFetcher = dxfFetcher;
69
70
  this._entityHandlers = {};
70
71
  this._objectHandlers = {};
71
72
 
@@ -127,7 +128,7 @@ DxfParser.prototype._parse = function(dxfString) {
127
128
  var scanner, curr, dxf = {}, lastHandle = 0;
128
129
  var dxfLinesArray = dxfString.split(/\r\n|\r|\n/g);
129
130
 
130
- scanner = new DxfArrayScanner(dxfLinesArray);
131
+ scanner = new DxfArrayScanner(dxfLinesArray, this._dxfFetcher);
131
132
  if (!scanner.hasNext()) {
132
133
  throw Error('Empty file');
133
134
  }
@@ -202,7 +203,7 @@ DxfParser.prototype._parse = function(dxfString) {
202
203
  if(currVarName) header[currVarName] = currVarValue;
203
204
  break;
204
205
  } else if(curr.code === 9) {
205
- if(currVarName) header[currVarName] = currVarValue;
206
+ if (currVarName != null) header[currVarName] = currVarValue;
206
207
  currVarName = curr.value;
207
208
  // Filter here for particular variables we are interested in
208
209
  } else {
@@ -287,7 +288,7 @@ DxfParser.prototype._parse = function(dxfString) {
287
288
  curr = scanner.next();
288
289
  break;
289
290
  case 67:
290
- block.paperSpace = (curr.value && curr.value == 1) ? true : false;
291
+ block.inPaperSpace = (curr.value && curr.value == 1) ? true : false;
291
292
  curr = scanner.next();
292
293
  break;
293
294
  case 70:
@@ -417,6 +418,8 @@ DxfParser.prototype._parse = function(dxfString) {
417
418
  if(expectedCount !== actualCount)
418
419
  expectedCount !== actualCount;
419
420
  log.warn('Parsed ' + actualCount + ' ' + tableDefinition.dxfSymbolName + '\'s but expected ' + expectedCount);
421
+ } else {
422
+ table[tableDefinition.tableRecordsProperty] = []
420
423
  }
421
424
  curr = scanner.next();
422
425
  return table;