@combeenation/3d-viewer 9.0.1 → 9.0.2-alpha2

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 (107) hide show
  1. package/README.md +111 -111
  2. package/dist/lib-cjs/api/classes/animationInterface.d.ts +8 -8
  3. package/dist/lib-cjs/api/classes/animationInterface.js +2 -2
  4. package/dist/lib-cjs/api/classes/dottedPath.d.ts +79 -79
  5. package/dist/lib-cjs/api/classes/dottedPath.js +166 -166
  6. package/dist/lib-cjs/api/classes/element.d.ts +153 -153
  7. package/dist/lib-cjs/api/classes/element.js +667 -667
  8. package/dist/lib-cjs/api/classes/event.d.ts +401 -401
  9. package/dist/lib-cjs/api/classes/event.js +424 -424
  10. package/dist/lib-cjs/api/classes/eventBroadcaster.d.ts +26 -26
  11. package/dist/lib-cjs/api/classes/eventBroadcaster.js +49 -49
  12. package/dist/lib-cjs/api/classes/fuzzyMap.d.ts +7 -7
  13. package/dist/lib-cjs/api/classes/fuzzyMap.js +21 -21
  14. package/dist/lib-cjs/api/classes/parameter.d.ts +410 -410
  15. package/dist/lib-cjs/api/classes/parameter.js +642 -642
  16. package/dist/lib-cjs/api/classes/parameterObservable.d.ts +36 -36
  17. package/dist/lib-cjs/api/classes/parameterObservable.js +72 -72
  18. package/dist/lib-cjs/api/classes/parameterizable.d.ts +15 -15
  19. package/dist/lib-cjs/api/classes/parameterizable.js +102 -102
  20. package/dist/lib-cjs/api/classes/placementAnimation.d.ts +45 -45
  21. package/dist/lib-cjs/api/classes/placementAnimation.js +176 -176
  22. package/dist/lib-cjs/api/classes/variant.d.ts +261 -261
  23. package/dist/lib-cjs/api/classes/variant.js +870 -870
  24. package/dist/lib-cjs/api/classes/variantInstance.d.ts +53 -53
  25. package/dist/lib-cjs/api/classes/variantInstance.js +125 -125
  26. package/dist/lib-cjs/api/classes/variantParameterizable.d.ts +17 -17
  27. package/dist/lib-cjs/api/classes/variantParameterizable.js +86 -86
  28. package/dist/lib-cjs/api/classes/viewer.d.ts +213 -213
  29. package/dist/lib-cjs/api/classes/viewer.js +717 -717
  30. package/dist/lib-cjs/api/classes/viewerError.d.ts +43 -43
  31. package/dist/lib-cjs/api/classes/viewerError.js +55 -55
  32. package/dist/lib-cjs/api/classes/viewerLight.d.ts +66 -66
  33. package/dist/lib-cjs/api/classes/viewerLight.js +348 -348
  34. package/dist/lib-cjs/api/internal/lensRendering.d.ts +8 -8
  35. package/dist/lib-cjs/api/internal/lensRendering.js +11 -11
  36. package/dist/lib-cjs/api/internal/sceneSetup.d.ts +13 -13
  37. package/dist/lib-cjs/api/internal/sceneSetup.js +226 -226
  38. package/dist/lib-cjs/api/manager/animationManager.d.ts +30 -30
  39. package/dist/lib-cjs/api/manager/animationManager.js +126 -126
  40. package/dist/lib-cjs/api/manager/gltfExportManager.d.ts +103 -103
  41. package/dist/lib-cjs/api/manager/gltfExportManager.js +331 -325
  42. package/dist/lib-cjs/api/manager/gltfExportManager.js.map +1 -1
  43. package/dist/lib-cjs/api/manager/sceneManager.d.ts +33 -33
  44. package/dist/lib-cjs/api/manager/sceneManager.js +128 -128
  45. package/dist/lib-cjs/api/manager/tagManager.d.ts +118 -118
  46. package/dist/lib-cjs/api/manager/tagManager.js +535 -522
  47. package/dist/lib-cjs/api/manager/tagManager.js.map +1 -1
  48. package/dist/lib-cjs/api/manager/textureLoadManager.d.ts +22 -22
  49. package/dist/lib-cjs/api/manager/textureLoadManager.js +97 -97
  50. package/dist/lib-cjs/api/manager/variantInstanceManager.d.ts +106 -106
  51. package/dist/lib-cjs/api/manager/variantInstanceManager.js +290 -290
  52. package/dist/lib-cjs/api/store/specStorage.d.ts +32 -32
  53. package/dist/lib-cjs/api/store/specStorage.js +65 -65
  54. package/dist/lib-cjs/api/util/babylonHelper.d.ts +237 -237
  55. package/dist/lib-cjs/api/util/babylonHelper.js +825 -825
  56. package/dist/lib-cjs/api/util/globalTypes.d.ts +479 -479
  57. package/dist/lib-cjs/api/util/globalTypes.js +1 -1
  58. package/dist/lib-cjs/api/util/resourceHelper.d.ts +58 -58
  59. package/dist/lib-cjs/api/util/resourceHelper.js +214 -211
  60. package/dist/lib-cjs/api/util/resourceHelper.js.map +1 -1
  61. package/dist/lib-cjs/api/util/sceneLoaderHelper.d.ts +44 -44
  62. package/dist/lib-cjs/api/util/sceneLoaderHelper.js +175 -175
  63. package/dist/lib-cjs/api/util/stringHelper.d.ts +13 -13
  64. package/dist/lib-cjs/api/util/stringHelper.js +32 -32
  65. package/dist/lib-cjs/api/util/structureHelper.d.ts +9 -9
  66. package/dist/lib-cjs/api/util/structureHelper.js +60 -60
  67. package/dist/lib-cjs/buildinfo.json +3 -3
  68. package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
  69. package/dist/lib-cjs/index.d.ts +54 -54
  70. package/dist/lib-cjs/index.js +117 -117
  71. package/package.json +82 -82
  72. package/src/api/classes/animationInterface.ts +10 -10
  73. package/src/api/classes/dottedPath.ts +181 -181
  74. package/src/api/classes/element.ts +723 -723
  75. package/src/api/classes/event.ts +457 -457
  76. package/src/api/classes/eventBroadcaster.ts +52 -52
  77. package/src/api/classes/fuzzyMap.ts +21 -21
  78. package/src/api/classes/parameter.ts +686 -686
  79. package/src/api/classes/parameterObservable.ts +73 -73
  80. package/src/api/classes/parameterizable.ts +87 -87
  81. package/src/api/classes/placementAnimation.ts +162 -162
  82. package/src/api/classes/variant.ts +963 -963
  83. package/src/api/classes/variantInstance.ts +123 -123
  84. package/src/api/classes/variantParameterizable.ts +83 -83
  85. package/src/api/classes/viewer.ts +770 -770
  86. package/src/api/classes/viewerError.ts +63 -63
  87. package/src/api/classes/viewerLight.ts +339 -339
  88. package/src/api/internal/debugViewer.ts +90 -90
  89. package/src/api/internal/lensRendering.ts +9 -9
  90. package/src/api/internal/sceneSetup.ts +205 -205
  91. package/src/api/manager/animationManager.ts +143 -143
  92. package/src/api/manager/gltfExportManager.ts +310 -302
  93. package/src/api/manager/sceneManager.ts +134 -134
  94. package/src/api/manager/tagManager.ts +576 -564
  95. package/src/api/manager/textureLoadManager.ts +95 -95
  96. package/src/api/manager/variantInstanceManager.ts +306 -306
  97. package/src/api/store/specStorage.ts +68 -68
  98. package/src/api/util/babylonHelper.ts +913 -913
  99. package/src/api/util/globalTypes.ts +555 -555
  100. package/src/api/util/resourceHelper.ts +201 -198
  101. package/src/api/util/sceneLoaderHelper.ts +170 -170
  102. package/src/api/util/stringHelper.ts +30 -30
  103. package/src/api/util/structureHelper.ts +60 -60
  104. package/src/buildinfo.json +3 -3
  105. package/src/dev.ts +62 -62
  106. package/src/index.ts +103 -103
  107. package/src/types.d.ts +38 -38
@@ -1,36 +1,36 @@
1
- import { EventBroadcaster } from './eventBroadcaster';
2
- export declare abstract class ParameterObservable extends EventBroadcaster {
3
- readonly uuid: string;
4
- readonly parameters: ParameterBag;
5
- protected readonly parameterDeclaration: ParameterDeclarations;
6
- protected parameterObservers: Map<string, ParameterObserver[]>;
7
- protected constructor(parameterDeclaration?: ParameterDeclarations, parameters?: ParameterBag);
8
- /**
9
- * The uuid (if not overloaded).
10
- */
11
- get id(): string;
12
- /**
13
- * Adds an observer function for parameter changes.
14
- * The {@link ParameterObserver} gets 3 parameters: the {@link ParameterObservable}, the old {@link ParameterValue}
15
- * and the new {@link ParameterValue}.
16
- *
17
- * See [Parameters](https://3dviewer.docs.combeenation.com/pages/documentation/Parameters.html) for an example.
18
- */
19
- addParameterObserver(parameter: string, observer: ParameterObserver): ParameterObservable;
20
- /**
21
- * Removes all {@link ParameterObserver}s for given parameter.
22
- */
23
- removeParameterObservers(parameter: string): ParameterObservable;
24
- /**
25
- * Invoke parameter observers for given parameter.
26
- */
27
- commitParameter(parameter: string, value: ParameterValue): Promise<ParameterObservable>;
28
- /**
29
- * Invoke parameter observers for given parameters.
30
- */
31
- abstract commitParameters(parameters?: ParameterBag): Promise<ParameterObservable>;
32
- /**
33
- * Asserts whether given parameter is declared and valid.
34
- */
35
- assertParameter(parameterDeclaration: ParameterDeclarations, parameter: string, value: ParameterValue): void;
36
- }
1
+ import { EventBroadcaster } from './eventBroadcaster';
2
+ export declare abstract class ParameterObservable extends EventBroadcaster {
3
+ readonly uuid: string;
4
+ readonly parameters: ParameterBag;
5
+ protected readonly parameterDeclaration: ParameterDeclarations;
6
+ protected parameterObservers: Map<string, ParameterObserver[]>;
7
+ protected constructor(parameterDeclaration?: ParameterDeclarations, parameters?: ParameterBag);
8
+ /**
9
+ * The uuid (if not overloaded).
10
+ */
11
+ get id(): string;
12
+ /**
13
+ * Adds an observer function for parameter changes.
14
+ * The {@link ParameterObserver} gets 3 parameters: the {@link ParameterObservable}, the old {@link ParameterValue}
15
+ * and the new {@link ParameterValue}.
16
+ *
17
+ * See [Parameters](https://3dviewer.docs.combeenation.com/pages/documentation/Parameters.html) for an example.
18
+ */
19
+ addParameterObserver(parameter: string, observer: ParameterObserver): ParameterObservable;
20
+ /**
21
+ * Removes all {@link ParameterObserver}s for given parameter.
22
+ */
23
+ removeParameterObservers(parameter: string): ParameterObservable;
24
+ /**
25
+ * Invoke parameter observers for given parameter.
26
+ */
27
+ commitParameter(parameter: string, value: ParameterValue): Promise<ParameterObservable>;
28
+ /**
29
+ * Invoke parameter observers for given parameters.
30
+ */
31
+ abstract commitParameters(parameters?: ParameterBag): Promise<ParameterObservable>;
32
+ /**
33
+ * Asserts whether given parameter is declared and valid.
34
+ */
35
+ assertParameter(parameterDeclaration: ParameterDeclarations, parameter: string, value: ParameterValue): void;
36
+ }
@@ -1,73 +1,73 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ParameterObservable = void 0;
13
- const stringHelper_1 = require("../util/stringHelper");
14
- const eventBroadcaster_1 = require("./eventBroadcaster");
15
- const parameter_1 = require("./parameter");
16
- const lodash_es_1 = require("lodash-es");
17
- class ParameterObservable extends eventBroadcaster_1.EventBroadcaster {
18
- constructor(parameterDeclaration = {}, parameters = {}) {
19
- super();
20
- this.parameters = {};
21
- this.parameterDeclaration = {};
22
- this.parameterObservers = new Map();
23
- this.uuid = (0, stringHelper_1.uuidv4)();
24
- this.parameterDeclaration = (0, lodash_es_1.merge)(this.parameterDeclaration, parameterDeclaration);
25
- this.parameters = (0, lodash_es_1.merge)(this.parameters, parameters);
26
- }
27
- /**
28
- * The uuid (if not overloaded).
29
- */
30
- get id() {
31
- return this.uuid;
32
- }
33
- /**
34
- * Adds an observer function for parameter changes.
35
- * The {@link ParameterObserver} gets 3 parameters: the {@link ParameterObservable}, the old {@link ParameterValue}
36
- * and the new {@link ParameterValue}.
37
- *
38
- * See [Parameters](https://3dviewer.docs.combeenation.com/pages/documentation/Parameters.html) for an example.
39
- */
40
- addParameterObserver(parameter, observer) {
41
- if (this.parameterObservers.has(parameter)) {
42
- this.parameterObservers.get(parameter).push(observer);
43
- return this;
44
- }
45
- this.parameterObservers.set(parameter, [observer]);
46
- return this;
47
- }
48
- /**
49
- * Removes all {@link ParameterObserver}s for given parameter.
50
- */
51
- removeParameterObservers(parameter) {
52
- this.parameterObservers.delete(parameter);
53
- return this;
54
- }
55
- /**
56
- * Invoke parameter observers for given parameter.
57
- */
58
- commitParameter(parameter, value) {
59
- return __awaiter(this, void 0, void 0, function* () {
60
- const parameters = {};
61
- parameters[parameter] = value;
62
- return this.commitParameters(parameters);
63
- });
64
- }
65
- /**
66
- * Asserts whether given parameter is declared and valid.
67
- */
68
- assertParameter(parameterDeclaration, parameter, value) {
69
- parameter_1.Parameter.assertParameter(parameterDeclaration, parameter, value);
70
- }
71
- }
72
- exports.ParameterObservable = ParameterObservable;
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ParameterObservable = void 0;
13
+ const stringHelper_1 = require("../util/stringHelper");
14
+ const eventBroadcaster_1 = require("./eventBroadcaster");
15
+ const parameter_1 = require("./parameter");
16
+ const lodash_es_1 = require("lodash-es");
17
+ class ParameterObservable extends eventBroadcaster_1.EventBroadcaster {
18
+ constructor(parameterDeclaration = {}, parameters = {}) {
19
+ super();
20
+ this.parameters = {};
21
+ this.parameterDeclaration = {};
22
+ this.parameterObservers = new Map();
23
+ this.uuid = (0, stringHelper_1.uuidv4)();
24
+ this.parameterDeclaration = (0, lodash_es_1.merge)(this.parameterDeclaration, parameterDeclaration);
25
+ this.parameters = (0, lodash_es_1.merge)(this.parameters, parameters);
26
+ }
27
+ /**
28
+ * The uuid (if not overloaded).
29
+ */
30
+ get id() {
31
+ return this.uuid;
32
+ }
33
+ /**
34
+ * Adds an observer function for parameter changes.
35
+ * The {@link ParameterObserver} gets 3 parameters: the {@link ParameterObservable}, the old {@link ParameterValue}
36
+ * and the new {@link ParameterValue}.
37
+ *
38
+ * See [Parameters](https://3dviewer.docs.combeenation.com/pages/documentation/Parameters.html) for an example.
39
+ */
40
+ addParameterObserver(parameter, observer) {
41
+ if (this.parameterObservers.has(parameter)) {
42
+ this.parameterObservers.get(parameter).push(observer);
43
+ return this;
44
+ }
45
+ this.parameterObservers.set(parameter, [observer]);
46
+ return this;
47
+ }
48
+ /**
49
+ * Removes all {@link ParameterObserver}s for given parameter.
50
+ */
51
+ removeParameterObservers(parameter) {
52
+ this.parameterObservers.delete(parameter);
53
+ return this;
54
+ }
55
+ /**
56
+ * Invoke parameter observers for given parameter.
57
+ */
58
+ commitParameter(parameter, value) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ const parameters = {};
61
+ parameters[parameter] = value;
62
+ return this.commitParameters(parameters);
63
+ });
64
+ }
65
+ /**
66
+ * Asserts whether given parameter is declared and valid.
67
+ */
68
+ assertParameter(parameterDeclaration, parameter, value) {
69
+ parameter_1.Parameter.assertParameter(parameterDeclaration, parameter, value);
70
+ }
71
+ }
72
+ exports.ParameterObservable = ParameterObservable;
73
73
  //# sourceMappingURL=parameterObservable.js.map
@@ -1,15 +1,15 @@
1
- import { ParameterObservable } from './parameterObservable';
2
- export declare abstract class Parameterizable extends ParameterObservable {
3
- protected parameterDeclaration: ParameterDeclarations;
4
- get visible(): boolean | undefined;
5
- get highlighted(): boolean | undefined;
6
- get material(): string | undefined;
7
- get scaling(): string | undefined;
8
- get position(): string | undefined;
9
- get rotation(): string | undefined;
10
- get castShadow(): boolean | undefined;
11
- show(): Promise<ParameterObservable>;
12
- hide(): Promise<ParameterObservable>;
13
- toggle(): Promise<ParameterObservable>;
14
- toggleHighlight(): Promise<ParameterObservable>;
15
- }
1
+ import { ParameterObservable } from './parameterObservable';
2
+ export declare abstract class Parameterizable extends ParameterObservable {
3
+ protected parameterDeclaration: ParameterDeclarations;
4
+ get visible(): boolean | undefined;
5
+ get highlighted(): boolean | undefined;
6
+ get material(): string | undefined;
7
+ get scaling(): string | undefined;
8
+ get position(): string | undefined;
9
+ get rotation(): string | undefined;
10
+ get castShadow(): boolean | undefined;
11
+ show(): Promise<ParameterObservable>;
12
+ hide(): Promise<ParameterObservable>;
13
+ toggle(): Promise<ParameterObservable>;
14
+ toggleHighlight(): Promise<ParameterObservable>;
15
+ }
@@ -1,103 +1,103 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.Parameterizable = void 0;
13
- const parameter_1 = require("./parameter");
14
- const parameterObservable_1 = require("./parameterObservable");
15
- class Parameterizable extends parameterObservable_1.ParameterObservable {
16
- constructor() {
17
- super(...arguments);
18
- this.parameterDeclaration = parameter_1.Parameter.declarations;
19
- }
20
- get visible() {
21
- if (!(parameter_1.Parameter.VISIBLE in this.parameters)) {
22
- return undefined;
23
- }
24
- try {
25
- return parameter_1.Parameter.parseBoolean(this.parameters[parameter_1.Parameter.VISIBLE]);
26
- }
27
- catch (e) {
28
- return undefined;
29
- }
30
- }
31
- get highlighted() {
32
- if (!(parameter_1.Parameter.HIGHLIGHTED in this.parameters)) {
33
- return undefined;
34
- }
35
- try {
36
- return parameter_1.Parameter.parseBoolean(this.parameters[parameter_1.Parameter.HIGHLIGHTED]);
37
- }
38
- catch (e) {
39
- return undefined;
40
- }
41
- }
42
- get material() {
43
- if (!(parameter_1.Parameter.MATERIAL in this.parameters)) {
44
- return undefined;
45
- }
46
- return this.parameters[parameter_1.Parameter.MATERIAL].toString();
47
- }
48
- get scaling() {
49
- if (!(parameter_1.Parameter.SCALING in this.parameters)) {
50
- return undefined;
51
- }
52
- return this.parameters[parameter_1.Parameter.SCALING].toString();
53
- }
54
- get position() {
55
- if (!(parameter_1.Parameter.POSITION in this.parameters)) {
56
- return undefined;
57
- }
58
- return this.parameters[parameter_1.Parameter.POSITION].toString();
59
- }
60
- get rotation() {
61
- if (!(parameter_1.Parameter.ROTATION in this.parameters)) {
62
- return undefined;
63
- }
64
- return this.parameters[parameter_1.Parameter.ROTATION].toString();
65
- }
66
- get castShadow() {
67
- if (!(parameter_1.Parameter.CAST_SHADOW in this.parameters)) {
68
- return undefined;
69
- }
70
- try {
71
- return parameter_1.Parameter.parseBoolean(this.parameters[parameter_1.Parameter.CAST_SHADOW]);
72
- }
73
- catch (e) {
74
- return undefined;
75
- }
76
- }
77
- show() {
78
- return __awaiter(this, void 0, void 0, function* () {
79
- yield this.commitParameter(parameter_1.Parameter.VISIBLE, true);
80
- return this;
81
- });
82
- }
83
- hide() {
84
- return __awaiter(this, void 0, void 0, function* () {
85
- yield this.commitParameter(parameter_1.Parameter.VISIBLE, false);
86
- return this;
87
- });
88
- }
89
- toggle() {
90
- return __awaiter(this, void 0, void 0, function* () {
91
- yield this.commitParameter(parameter_1.Parameter.VISIBLE, !this.visible);
92
- return this;
93
- });
94
- }
95
- toggleHighlight() {
96
- return __awaiter(this, void 0, void 0, function* () {
97
- yield this.commitParameter(parameter_1.Parameter.HIGHLIGHTED, !this.highlighted);
98
- return this;
99
- });
100
- }
101
- }
102
- exports.Parameterizable = Parameterizable;
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Parameterizable = void 0;
13
+ const parameter_1 = require("./parameter");
14
+ const parameterObservable_1 = require("./parameterObservable");
15
+ class Parameterizable extends parameterObservable_1.ParameterObservable {
16
+ constructor() {
17
+ super(...arguments);
18
+ this.parameterDeclaration = parameter_1.Parameter.declarations;
19
+ }
20
+ get visible() {
21
+ if (!(parameter_1.Parameter.VISIBLE in this.parameters)) {
22
+ return undefined;
23
+ }
24
+ try {
25
+ return parameter_1.Parameter.parseBoolean(this.parameters[parameter_1.Parameter.VISIBLE]);
26
+ }
27
+ catch (e) {
28
+ return undefined;
29
+ }
30
+ }
31
+ get highlighted() {
32
+ if (!(parameter_1.Parameter.HIGHLIGHTED in this.parameters)) {
33
+ return undefined;
34
+ }
35
+ try {
36
+ return parameter_1.Parameter.parseBoolean(this.parameters[parameter_1.Parameter.HIGHLIGHTED]);
37
+ }
38
+ catch (e) {
39
+ return undefined;
40
+ }
41
+ }
42
+ get material() {
43
+ if (!(parameter_1.Parameter.MATERIAL in this.parameters)) {
44
+ return undefined;
45
+ }
46
+ return this.parameters[parameter_1.Parameter.MATERIAL].toString();
47
+ }
48
+ get scaling() {
49
+ if (!(parameter_1.Parameter.SCALING in this.parameters)) {
50
+ return undefined;
51
+ }
52
+ return this.parameters[parameter_1.Parameter.SCALING].toString();
53
+ }
54
+ get position() {
55
+ if (!(parameter_1.Parameter.POSITION in this.parameters)) {
56
+ return undefined;
57
+ }
58
+ return this.parameters[parameter_1.Parameter.POSITION].toString();
59
+ }
60
+ get rotation() {
61
+ if (!(parameter_1.Parameter.ROTATION in this.parameters)) {
62
+ return undefined;
63
+ }
64
+ return this.parameters[parameter_1.Parameter.ROTATION].toString();
65
+ }
66
+ get castShadow() {
67
+ if (!(parameter_1.Parameter.CAST_SHADOW in this.parameters)) {
68
+ return undefined;
69
+ }
70
+ try {
71
+ return parameter_1.Parameter.parseBoolean(this.parameters[parameter_1.Parameter.CAST_SHADOW]);
72
+ }
73
+ catch (e) {
74
+ return undefined;
75
+ }
76
+ }
77
+ show() {
78
+ return __awaiter(this, void 0, void 0, function* () {
79
+ yield this.commitParameter(parameter_1.Parameter.VISIBLE, true);
80
+ return this;
81
+ });
82
+ }
83
+ hide() {
84
+ return __awaiter(this, void 0, void 0, function* () {
85
+ yield this.commitParameter(parameter_1.Parameter.VISIBLE, false);
86
+ return this;
87
+ });
88
+ }
89
+ toggle() {
90
+ return __awaiter(this, void 0, void 0, function* () {
91
+ yield this.commitParameter(parameter_1.Parameter.VISIBLE, !this.visible);
92
+ return this;
93
+ });
94
+ }
95
+ toggleHighlight() {
96
+ return __awaiter(this, void 0, void 0, function* () {
97
+ yield this.commitParameter(parameter_1.Parameter.HIGHLIGHTED, !this.highlighted);
98
+ return this;
99
+ });
100
+ }
101
+ }
102
+ exports.Parameterizable = Parameterizable;
103
103
  //# sourceMappingURL=parameterizable.js.map
@@ -1,45 +1,45 @@
1
- /// <reference types="gsap" />
2
- import { AnimationInterface } from './animationInterface';
3
- /**
4
- * An {@link PlacementAnimation} handling `Tweens` of the `GSAP` API using configured {@link PlacementDefinition}s
5
- * and {@link AnimationDefinition}s. It mutates the attributes in the given {@link PlacementDefinition} with the given
6
- * {@link AnimationDefinition}. The latter can be anything the `GSAP` allows in its API. Please consider using the
7
- * API of the {@link AnimationManager} to handle instances of this class in your consuming project.
8
- */
9
- export declare class PlacementAnimation implements AnimationInterface {
10
- readonly mutable: object;
11
- protected _placement: PlacementDefinition | string;
12
- protected _animation?: string | AnimationDefinition | undefined;
13
- protected _placementDefinition: PlacementDefinition;
14
- protected _animationDefinition: AnimationDefinition;
15
- protected _timeline: GSAPTimeline;
16
- /**
17
- * Constructor.
18
- */
19
- constructor(mutable: object, _placement: PlacementDefinition | string, _animation?: string | AnimationDefinition | undefined);
20
- /**
21
- * Plays all `Tweens` of this {@link PlacementAnimation}.
22
- */
23
- play(): Promise<AnimationInterface>;
24
- /**
25
- * Pause all `Tweens` of this {@link PlacementAnimation}.
26
- */
27
- pause(): AnimationInterface;
28
- /**
29
- * Kills all `Tweens` of this {@link PlacementAnimation}.
30
- */
31
- kill(): AnimationInterface;
32
- /**
33
- * Creates a {@link AnimationDefinition} definition if not provided in the constructor and sets some defaults.
34
- * Only custom properties from {@link AnimationDefinition} are adjusted, all {@link GSAPTweenVars} remain untouched.
35
- */
36
- protected prepareAnimationDefinition(): void;
37
- /**
38
- * Prepares different types of {@link PlacementDefinition} and sets some defaults.
39
- */
40
- protected preparePlacementDefinition(): void;
41
- /**
42
- * Creates `Tweens` for the {@link PlacementDefinition} configured for this {@link PlacementAnimation}.
43
- */
44
- protected createTweens(): void;
45
- }
1
+ /// <reference types="gsap" />
2
+ import { AnimationInterface } from './animationInterface';
3
+ /**
4
+ * An {@link PlacementAnimation} handling `Tweens` of the `GSAP` API using configured {@link PlacementDefinition}s
5
+ * and {@link AnimationDefinition}s. It mutates the attributes in the given {@link PlacementDefinition} with the given
6
+ * {@link AnimationDefinition}. The latter can be anything the `GSAP` allows in its API. Please consider using the
7
+ * API of the {@link AnimationManager} to handle instances of this class in your consuming project.
8
+ */
9
+ export declare class PlacementAnimation implements AnimationInterface {
10
+ readonly mutable: object;
11
+ protected _placement: PlacementDefinition | string;
12
+ protected _animation?: string | AnimationDefinition | undefined;
13
+ protected _placementDefinition: PlacementDefinition;
14
+ protected _animationDefinition: AnimationDefinition;
15
+ protected _timeline: GSAPTimeline;
16
+ /**
17
+ * Constructor.
18
+ */
19
+ constructor(mutable: object, _placement: PlacementDefinition | string, _animation?: string | AnimationDefinition | undefined);
20
+ /**
21
+ * Plays all `Tweens` of this {@link PlacementAnimation}.
22
+ */
23
+ play(): Promise<AnimationInterface>;
24
+ /**
25
+ * Pause all `Tweens` of this {@link PlacementAnimation}.
26
+ */
27
+ pause(): AnimationInterface;
28
+ /**
29
+ * Kills all `Tweens` of this {@link PlacementAnimation}.
30
+ */
31
+ kill(): AnimationInterface;
32
+ /**
33
+ * Creates a {@link AnimationDefinition} definition if not provided in the constructor and sets some defaults.
34
+ * Only custom properties from {@link AnimationDefinition} are adjusted, all {@link GSAPTweenVars} remain untouched.
35
+ */
36
+ protected prepareAnimationDefinition(): void;
37
+ /**
38
+ * Prepares different types of {@link PlacementDefinition} and sets some defaults.
39
+ */
40
+ protected preparePlacementDefinition(): void;
41
+ /**
42
+ * Creates `Tweens` for the {@link PlacementDefinition} configured for this {@link PlacementAnimation}.
43
+ */
44
+ protected createTweens(): void;
45
+ }