3dviewer-sdk 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,4 +1,5 @@
1
1
  declare enum ViewerMessageType {
2
+ LANGUAGE_CHANGE = "viewer-language-change",
2
3
  ZOOM = "viewer-zoom",
3
4
  DRAW_MODE = "viewer-draw-mode",
4
5
  EXPLODE = "viewer-explode",
@@ -28,10 +29,18 @@ declare enum ViewerMessageType {
28
29
  TREE_SELECT_NODE = "viewer-tree-select-node",
29
30
  TREE_GET_NODE_IDS = "viewer-tree-get-node-ids",
30
31
  TREE_NODE_IDS = "viewer-tree-node-ids",
32
+ PDF_PLAN_MODE = "viewer-pdf-plan-mode",
33
+ PDF_DOCUMENT_MODE = "viewer-pdf-document-mode",
34
+ PDF_FIRST_PAGE = "viewer-pdf-first-page",
35
+ PDF_PREVIOUS_PAGE = "viewer-pdf-previous-page",
36
+ PDF_NEXT_PAGE = "viewer-pdf-next-page",
37
+ PDF_LAST_PAGE = "viewer-pdf-last-page",
38
+ PDF_CURRENT_PAGE = "viewer-pdf-current-page",
31
39
  HOME_CLICK = "viewer-home-click",
32
40
  NODE_SELECT = "viewer-node-select",
33
41
  PAN_CHANGE = "viewer-pan-change"
34
42
  }
43
+ type LanguageCode = "en" | "vn";
35
44
  type MarkupAction = "line" | "arrow" | "circle" | "ellipse" | "rectangle" | "polygon" | "polyline" | "textbox" | "note" | "callout" | "cloud" | "freehand";
36
45
  type MarkupOperationResultPayload = {
37
46
  requestId: string;
@@ -57,6 +66,18 @@ type SheetListItem = {
57
66
  is3D?: boolean;
58
67
  viewId?: string;
59
68
  };
69
+ type PdfModeEventPayload = {
70
+ mode: "plan" | "document";
71
+ timestamp: number;
72
+ };
73
+ type PdfToolbarActionEventPayload = {
74
+ timestamp: number;
75
+ };
76
+ type PdfCurrentPagePayload = {
77
+ pageIndex: number;
78
+ pageNumber: number;
79
+ timestamp: number;
80
+ };
60
81
 
61
82
  type ViewerEventMap = {
62
83
  "camera:home": {
@@ -69,6 +90,13 @@ type ViewerEventMap = {
69
90
  "interaction:pan-change": {
70
91
  enabled: boolean;
71
92
  };
93
+ "toolbar:pdf-plan-mode": PdfModeEventPayload;
94
+ "toolbar:pdf-document-mode": PdfModeEventPayload;
95
+ "toolbar:pdf-first-page": PdfToolbarActionEventPayload;
96
+ "toolbar:pdf-previous-page": PdfToolbarActionEventPayload;
97
+ "toolbar:pdf-next-page": PdfToolbarActionEventPayload;
98
+ "toolbar:pdf-last-page": PdfToolbarActionEventPayload;
99
+ "toolbar:pdf-current-page": PdfCurrentPagePayload;
72
100
  "modelTree:node-ids": {
73
101
  requestId: string;
74
102
  nodeIds: string[];
@@ -285,6 +313,33 @@ type GetSheetsOptions = {
285
313
  };
286
314
  declare class ToolbarModule {
287
315
  private viewer;
316
+ on: {
317
+ planMode: (cb: (payload: {
318
+ mode: "plan" | "document";
319
+ timestamp: number;
320
+ }) => void) => () => void;
321
+ documentMode: (cb: (payload: {
322
+ mode: "plan" | "document";
323
+ timestamp: number;
324
+ }) => void) => () => void;
325
+ firstPage: (cb: (payload: {
326
+ timestamp: number;
327
+ }) => void) => () => void;
328
+ previousPage: (cb: (payload: {
329
+ timestamp: number;
330
+ }) => void) => () => void;
331
+ nextPage: (cb: (payload: {
332
+ timestamp: number;
333
+ }) => void) => () => void;
334
+ lastPage: (cb: (payload: {
335
+ timestamp: number;
336
+ }) => void) => () => void;
337
+ currentPage: (cb: (payload: {
338
+ pageIndex: number;
339
+ pageNumber: number;
340
+ timestamp: number;
341
+ }) => void) => () => void;
342
+ };
288
343
  constructor(viewer: Viewer3D);
289
344
  setDisabled3D(operators: string[]): void;
290
345
  setDisabledPdf(operators: string[]): void;
@@ -371,6 +426,13 @@ declare class MarkupModule {
371
426
  private runRequest;
372
427
  }
373
428
 
429
+ declare class LanguageModule {
430
+ private viewer;
431
+ constructor(viewer: Viewer3D);
432
+ change(language: LanguageCode): void;
433
+ set(language: LanguageCode): void;
434
+ }
435
+
374
436
  type Viewer3DOptions = {
375
437
  container: HTMLElement | string;
376
438
  url?: string;
@@ -396,6 +458,7 @@ declare class Viewer3D {
396
458
  toolbar: ToolbarModule;
397
459
  modelTree: ModelTreeModule;
398
460
  markup: MarkupModule;
461
+ language: LanguageModule;
399
462
  constructor(options: Viewer3DOptions);
400
463
  getOptions(): Viewer3DOptions;
401
464
  patchOptions(next: Partial<Viewer3DOptions>): void;
@@ -412,4 +475,4 @@ declare class Viewer3D {
412
475
  private handleMessage;
413
476
  }
414
477
 
415
- export { type FilesConfig, type LoadStage, type LoadStatePayload, type MarkupAction, type MarkupListItem, type MarkupOperationResultPayload, type PreparedViewerData, Viewer3D };
478
+ export { type FilesConfig, type LanguageCode, type LoadStage, type LoadStatePayload, type MarkupAction, type MarkupListItem, type MarkupOperationResultPayload, type PreparedViewerData, Viewer3D };
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  declare enum ViewerMessageType {
2
+ LANGUAGE_CHANGE = "viewer-language-change",
2
3
  ZOOM = "viewer-zoom",
3
4
  DRAW_MODE = "viewer-draw-mode",
4
5
  EXPLODE = "viewer-explode",
@@ -28,10 +29,18 @@ declare enum ViewerMessageType {
28
29
  TREE_SELECT_NODE = "viewer-tree-select-node",
29
30
  TREE_GET_NODE_IDS = "viewer-tree-get-node-ids",
30
31
  TREE_NODE_IDS = "viewer-tree-node-ids",
32
+ PDF_PLAN_MODE = "viewer-pdf-plan-mode",
33
+ PDF_DOCUMENT_MODE = "viewer-pdf-document-mode",
34
+ PDF_FIRST_PAGE = "viewer-pdf-first-page",
35
+ PDF_PREVIOUS_PAGE = "viewer-pdf-previous-page",
36
+ PDF_NEXT_PAGE = "viewer-pdf-next-page",
37
+ PDF_LAST_PAGE = "viewer-pdf-last-page",
38
+ PDF_CURRENT_PAGE = "viewer-pdf-current-page",
31
39
  HOME_CLICK = "viewer-home-click",
32
40
  NODE_SELECT = "viewer-node-select",
33
41
  PAN_CHANGE = "viewer-pan-change"
34
42
  }
43
+ type LanguageCode = "en" | "vn";
35
44
  type MarkupAction = "line" | "arrow" | "circle" | "ellipse" | "rectangle" | "polygon" | "polyline" | "textbox" | "note" | "callout" | "cloud" | "freehand";
36
45
  type MarkupOperationResultPayload = {
37
46
  requestId: string;
@@ -57,6 +66,18 @@ type SheetListItem = {
57
66
  is3D?: boolean;
58
67
  viewId?: string;
59
68
  };
69
+ type PdfModeEventPayload = {
70
+ mode: "plan" | "document";
71
+ timestamp: number;
72
+ };
73
+ type PdfToolbarActionEventPayload = {
74
+ timestamp: number;
75
+ };
76
+ type PdfCurrentPagePayload = {
77
+ pageIndex: number;
78
+ pageNumber: number;
79
+ timestamp: number;
80
+ };
60
81
 
61
82
  type ViewerEventMap = {
62
83
  "camera:home": {
@@ -69,6 +90,13 @@ type ViewerEventMap = {
69
90
  "interaction:pan-change": {
70
91
  enabled: boolean;
71
92
  };
93
+ "toolbar:pdf-plan-mode": PdfModeEventPayload;
94
+ "toolbar:pdf-document-mode": PdfModeEventPayload;
95
+ "toolbar:pdf-first-page": PdfToolbarActionEventPayload;
96
+ "toolbar:pdf-previous-page": PdfToolbarActionEventPayload;
97
+ "toolbar:pdf-next-page": PdfToolbarActionEventPayload;
98
+ "toolbar:pdf-last-page": PdfToolbarActionEventPayload;
99
+ "toolbar:pdf-current-page": PdfCurrentPagePayload;
72
100
  "modelTree:node-ids": {
73
101
  requestId: string;
74
102
  nodeIds: string[];
@@ -285,6 +313,33 @@ type GetSheetsOptions = {
285
313
  };
286
314
  declare class ToolbarModule {
287
315
  private viewer;
316
+ on: {
317
+ planMode: (cb: (payload: {
318
+ mode: "plan" | "document";
319
+ timestamp: number;
320
+ }) => void) => () => void;
321
+ documentMode: (cb: (payload: {
322
+ mode: "plan" | "document";
323
+ timestamp: number;
324
+ }) => void) => () => void;
325
+ firstPage: (cb: (payload: {
326
+ timestamp: number;
327
+ }) => void) => () => void;
328
+ previousPage: (cb: (payload: {
329
+ timestamp: number;
330
+ }) => void) => () => void;
331
+ nextPage: (cb: (payload: {
332
+ timestamp: number;
333
+ }) => void) => () => void;
334
+ lastPage: (cb: (payload: {
335
+ timestamp: number;
336
+ }) => void) => () => void;
337
+ currentPage: (cb: (payload: {
338
+ pageIndex: number;
339
+ pageNumber: number;
340
+ timestamp: number;
341
+ }) => void) => () => void;
342
+ };
288
343
  constructor(viewer: Viewer3D);
289
344
  setDisabled3D(operators: string[]): void;
290
345
  setDisabledPdf(operators: string[]): void;
@@ -371,6 +426,13 @@ declare class MarkupModule {
371
426
  private runRequest;
372
427
  }
373
428
 
429
+ declare class LanguageModule {
430
+ private viewer;
431
+ constructor(viewer: Viewer3D);
432
+ change(language: LanguageCode): void;
433
+ set(language: LanguageCode): void;
434
+ }
435
+
374
436
  type Viewer3DOptions = {
375
437
  container: HTMLElement | string;
376
438
  url?: string;
@@ -396,6 +458,7 @@ declare class Viewer3D {
396
458
  toolbar: ToolbarModule;
397
459
  modelTree: ModelTreeModule;
398
460
  markup: MarkupModule;
461
+ language: LanguageModule;
399
462
  constructor(options: Viewer3DOptions);
400
463
  getOptions(): Viewer3DOptions;
401
464
  patchOptions(next: Partial<Viewer3DOptions>): void;
@@ -412,4 +475,4 @@ declare class Viewer3D {
412
475
  private handleMessage;
413
476
  }
414
477
 
415
- export { type FilesConfig, type LoadStage, type LoadStatePayload, type MarkupAction, type MarkupListItem, type MarkupOperationResultPayload, type PreparedViewerData, Viewer3D };
478
+ export { type FilesConfig, type LanguageCode, type LoadStage, type LoadStatePayload, type MarkupAction, type MarkupListItem, type MarkupOperationResultPayload, type PreparedViewerData, Viewer3D };
package/dist/index.js CHANGED
@@ -146,7 +146,7 @@ var NodeModule = class {
146
146
 
147
147
  // src/modules/files.module.ts
148
148
  var DEFAULT_API_BASE_URL = "https://dev.3dviewer.anybim.vn";
149
- var DEFAULT_VIEWER_ORIGIN = "http://localhost:3000";
149
+ var DEFAULT_VIEWER_ORIGIN = "https://dev.3dviewer.anybim.vn";
150
150
  var FilesModule = class {
151
151
  constructor(viewer) {
152
152
  this.viewer = viewer;
@@ -801,6 +801,22 @@ var MarkupModule = class {
801
801
  }
802
802
  };
803
803
 
804
+ // src/modules/language.module.ts
805
+ var LanguageModule = class {
806
+ constructor(viewer) {
807
+ this.viewer = viewer;
808
+ }
809
+ change(language) {
810
+ this.viewer.postToViewer("viewer-language-change" /* LANGUAGE_CHANGE */, {
811
+ language,
812
+ timestamp: Date.now()
813
+ });
814
+ }
815
+ set(language) {
816
+ this.change(language);
817
+ }
818
+ };
819
+
804
820
  // src/viewer.ts
805
821
  var Viewer3D = class {
806
822
  constructor(options) {
@@ -963,6 +979,7 @@ var Viewer3D = class {
963
979
  this.toolbar = new ToolbarModule(this);
964
980
  this.modelTree = new ModelTreeModule(this);
965
981
  this.markup = new MarkupModule(this);
982
+ this.language = new LanguageModule(this);
966
983
  }
967
984
  // ===== options helpers =====
968
985
  getOptions() {
package/dist/index.mjs CHANGED
@@ -120,7 +120,7 @@ var NodeModule = class {
120
120
 
121
121
  // src/modules/files.module.ts
122
122
  var DEFAULT_API_BASE_URL = "https://dev.3dviewer.anybim.vn";
123
- var DEFAULT_VIEWER_ORIGIN = "http://localhost:3000";
123
+ var DEFAULT_VIEWER_ORIGIN = "https://dev.3dviewer.anybim.vn";
124
124
  var FilesModule = class {
125
125
  constructor(viewer) {
126
126
  this.viewer = viewer;
@@ -775,6 +775,22 @@ var MarkupModule = class {
775
775
  }
776
776
  };
777
777
 
778
+ // src/modules/language.module.ts
779
+ var LanguageModule = class {
780
+ constructor(viewer) {
781
+ this.viewer = viewer;
782
+ }
783
+ change(language) {
784
+ this.viewer.postToViewer("viewer-language-change" /* LANGUAGE_CHANGE */, {
785
+ language,
786
+ timestamp: Date.now()
787
+ });
788
+ }
789
+ set(language) {
790
+ this.change(language);
791
+ }
792
+ };
793
+
778
794
  // src/viewer.ts
779
795
  var Viewer3D = class {
780
796
  constructor(options) {
@@ -937,6 +953,7 @@ var Viewer3D = class {
937
953
  this.toolbar = new ToolbarModule(this);
938
954
  this.modelTree = new ModelTreeModule(this);
939
955
  this.markup = new MarkupModule(this);
956
+ this.language = new LanguageModule(this);
940
957
  }
941
958
  // ===== options helpers =====
942
959
  getOptions() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "3dviewer-sdk",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [