@rtsdk/topia 0.0.8 → 0.0.9
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/__mocks__/assets.js +241 -0
- package/dist/__mocks__/index.js +2 -0
- package/dist/__mocks__/scenes.js +104 -0
- package/dist/__mocks__/visitors.js +43 -16
- package/dist/__mocks__/worlds.js +9 -9
- package/dist/controllers/Asset.js +62 -0
- package/dist/controllers/DroppedAsset.js +150 -0
- package/dist/controllers/Scene.js +22 -0
- package/dist/controllers/Visitor.js +70 -0
- package/dist/controllers/World.js +125 -110
- package/dist/controllers/__tests__/asset.test.js +14 -0
- package/dist/controllers/__tests__/droppedAsset.test.js +109 -0
- package/dist/controllers/__tests__/scene.test.js +14 -0
- package/dist/controllers/__tests__/visitor.test.js +12 -0
- package/dist/controllers/__tests__/world.test.js +48 -109
- package/dist/controllers/index.js +4 -0
- package/dist/index.js +448 -125
- package/dist/{types/Visitor.js → interfaces/DroppedAssetInterfaces.js} +0 -0
- package/dist/interfaces/WorldInterfaces.js +1 -0
- package/dist/interfaces/index.js +2 -0
- package/dist/types/DroppedAssetType.js +1 -0
- package/dist/types/DroppedAssetTypes.js +12 -0
- package/dist/types/VisitorType.js +1 -0
- package/dist/types/VisitorTypes.js +1 -0
- package/dist/types/Visitors.js +1 -0
- package/dist/types/index.js +2 -1
- package/dist/utils/__tests__/scatterVisitors.test.js +11 -0
- package/dist/utils/createDroppedAsset.js +72 -0
- package/dist/utils/createVisitor.js +3 -0
- package/dist/utils/getErrorMessage.js +5 -0
- package/dist/utils/index.js +4 -0
- package/dist/utils/publicAPI.js +11 -0
- package/dist/utils/scatterVisitors.js +5 -0
- package/package.json +3 -1
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
export const assets = [
|
|
2
|
+
{
|
|
3
|
+
id: "00BP8X86cl1S0wwIwjNb",
|
|
4
|
+
addedOn: "2021-05-25T21:08:13.132Z",
|
|
5
|
+
assetName: "My Top Layer Asset",
|
|
6
|
+
specialType: null,
|
|
7
|
+
topLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/5SEa7AR1MyYV3sX48HQy3xLadyR2-asgard-1621976891729_layer1.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670268565&Signature=s95zVCcw2u5DRpqlrlCfVzuZZp1g4naQj%2B4ZaFW3ISK4Ekty047lJHFcKr1e%2B1ktn1a5%2FAlSa8WaYtnw3O5IcvW360Sgyuum1H5T%2BzZDu992uHiTSOnx9XihofH%2FAu%2BeeO7Rt%2BzNMxWbiyb6Suf8wLfEG0nwrSoEJV7%2BdNqF6E0wMZlhV5tQARl8jxw8%2BaJvOu93leR%2Fu13aftC8ScEXA%2Bqld9mV80sGFQJCcKEnbIa%2B7kOVyxaDfQzHZjbzV5N0KMQ%2FPdHRbGo44EPYjSZCB3LxYa2XT8jXkC6QK7SI2C%2Bo%2BRJ1KGtUhqRFiICpejC5RmTdwAjjchZkltU87iCBvw%3D%3D",
|
|
8
|
+
bottomLayerURL: "",
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
id: "0gk6RVtQ34U5vQIzxiOT",
|
|
12
|
+
addedOn: "2022-03-07T18:28:55.121Z",
|
|
13
|
+
assetName: "Tree",
|
|
14
|
+
specialType: null,
|
|
15
|
+
topLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/5SEa7AR1MyYV3sX48HQy3xLadyR2-ruins-free-04hrzvjsl-1646677734083_layer1.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670268565&Signature=dsQbL7POel7vEds%2BanaxH8%2B1lAf4FdROt3a%2BfIQParunSz6e2zQUNL7adclDa3C5WLkspbeHheav4XqiMmHyxZCg4zF8lawz7LuOA0q3jbzCHQalZzavGT4MWyE%2FXhbl%2BFNz9bmmFXE0MVp6Xo9RNCXYqv6%2Fpo9tf6Q9z1Imwq7H3wSA817eaw5NdkPhEVg9AWQTolJfPBgZohaobqImE%2Bnrk0fTx65gUzuZ2qUGzmWIUJld4We8QLT64ceeeGCfb9OdvjFuT7%2FOR5xsPcNWgXIQ%2BIukP82TlKVH5Tkl8Ct8hAfsJm%2F4KQQ9jgHyPs%2BgVkE4qsTIIgWgy%2BSGbwVBlA%3D%3D",
|
|
16
|
+
bottomLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/5SEa7AR1MyYV3sX48HQy3xLadyR2-ruins-free-04hrzvjsl-1646677734083_layer0.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670268565&Signature=KAwixdYB4V0XAa80BfY3IglBhI4rOTWMVYqSVJFBQlkes1J4oFbSTnC5COp7dgjuuMlEuBem68VuXr7vRqODUH%2BneKeOH5fi7tmdrmnjqZqWtJfFNQD4FZs7056op400JnbRWkW03vEzA8qCuEbO3ADV%2BMzDy8%2FtA9xH2%2F72U623gR0f9hdaTJoWJwwRMYlq2t1zc5sZ3dc9WOuTrBwNkzbwaweVBJ%2B5XRYLXBwwRHxm9DnLbZulqEtvp%2FdTp%2Bc9lQm8iTrR%2FhMpiPV2qG6n%2Ffj%2BnYOJhYo4fIKSxiNP8t88LwgTFygIvXcxq1HyNJosfjGv55%2BcTGsghzfSMZJe1Q%3D%3D",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
id: "TUe2wQVWJbGUCtkpqXhk",
|
|
20
|
+
addedOn: "2022-02-08T07:11:35.429Z",
|
|
21
|
+
assetName: "My Bottom Layer Asset",
|
|
22
|
+
specialType: null,
|
|
23
|
+
topLayerURL: "",
|
|
24
|
+
bottomLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/2OB4pQL4b6ReyRfh6TOVJlx8vDz2-magic-1644304293033_layer0.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670268565&Signature=yNh3QQpTwL6X%2BYUY6wijtDHy7QOGgkOu4hyQK8WMx1wwQQJ0zHDXOwPvRUBMT9skAjTejInsQOoBrDQSc7oxBoEKjk3Gklcf1MQN15zHEpdHHFZczX534LRxvt2ObxGFJkmSBFdH2sP0h22QjwWl2ERmzRfRYicBJcZZfBUxqlDz62IsBwhUgIfIRjtX6U8XWHQ%2BD3PgOJHQZlt%2BYhGKIPzSi5B289YHDN6xAgtQLGzSfps3f%2F4hl9fAhN0QPi%2BFSaNk0dko08hYCWqQAk75xurj0X6VPFAPb1FVggzTG0bzmQw%2Bm2%2BPbThH70Zqgw0VWSiBta9ojATAAuvnHJU0Jg%3D%3D",
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
addedOn: "May 25, 2021 at 2:21:16 PM UTC-7",
|
|
28
|
+
assetName: "ink rock 1",
|
|
29
|
+
creatorTags: {},
|
|
30
|
+
isPublic: false,
|
|
31
|
+
kitId: "dD8nsGBkEgU59H6sbqbx",
|
|
32
|
+
layer0: null,
|
|
33
|
+
layer1: "layers/5SEa7AR1MyYV3sX48HQy3xLadyR2-asgard-1621977675112_layer1.png",
|
|
34
|
+
library: "topia",
|
|
35
|
+
originalAssetId: "00ntfq6Q5zExrmmjzNct",
|
|
36
|
+
originalKit: "CzurQZYffz06sreI0Rz9",
|
|
37
|
+
ownerId: "xtSos8FlrXTzOHaslsBPYnq7fDy2",
|
|
38
|
+
ownerName: "",
|
|
39
|
+
purchased: true,
|
|
40
|
+
purchasedDate: "May 27, 2021 at 4:10:26 PM UTC-7",
|
|
41
|
+
purchasedFrom: "5SEa7AR1MyYV3sX48HQy3xLadyR2",
|
|
42
|
+
tagJson: "",
|
|
43
|
+
transactionId: "PcVCeSqotMl9lErNQyGB",
|
|
44
|
+
type: "layeredTexture",
|
|
45
|
+
urlSlug: "asgard",
|
|
46
|
+
},
|
|
47
|
+
];
|
|
48
|
+
export const droppedAssets = [
|
|
49
|
+
{
|
|
50
|
+
id: "1Vupeo4ColJ2xfyqu4zY",
|
|
51
|
+
assetId: "gCDCl3AfnnkrAzlxwXPA",
|
|
52
|
+
assetName: "Bike Path Horizontal",
|
|
53
|
+
assetScale: 1,
|
|
54
|
+
assetBroadcastAll: false,
|
|
55
|
+
assetBroadcast: false,
|
|
56
|
+
audioRadius: null,
|
|
57
|
+
audioVolume: null,
|
|
58
|
+
isPrivateZone: false,
|
|
59
|
+
isPrivateZoneChatDisabled: false,
|
|
60
|
+
privateZoneUserCap: null,
|
|
61
|
+
broadcasterEmail: null,
|
|
62
|
+
clickType: null,
|
|
63
|
+
clickableLink: null,
|
|
64
|
+
clickableLinkTitle: null,
|
|
65
|
+
clickablePortal: null,
|
|
66
|
+
creationDatetime: 1624557784470,
|
|
67
|
+
position: {
|
|
68
|
+
x: -247.6349071195266,
|
|
69
|
+
y: 1373.5047340020942,
|
|
70
|
+
},
|
|
71
|
+
portalCoordsX: null,
|
|
72
|
+
portalCoordsY: null,
|
|
73
|
+
specialType: null,
|
|
74
|
+
topLayerURL: "",
|
|
75
|
+
bottomLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/ZblDRDweiGVZFbuIaV4bVUBuvrD2-hayden-1598763536352_layer0.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670433535&Signature=Rc6sfxFoIpPDvgOqgP934C9Ijq5yrdf745oqayRKKd3jporB2pAWKmSJyu7PHFJVB7yH6e7tJPVIJjijmbylBfEn6SI0JlpK1Ob2534e7dvZJKCCMt4gLxqahD8RsAfJq2PPDAu08Zr5ZN8hKpQG%2FZEHovOoelRW2LhUrj7ClxDjhYElzEdGTFM%2F7jAN4WIZIlvwC9LhuOqug1%2BfjpYFDO1yXfu6wwACFkfqBhR4n66aWLcHHU5otTmb5Zds%2Fo%2FxCu0osKN%2Fp4INl4ScTku%2BE23e1ow%2B%2Fh%2FZfB%2B8KJ2ksYg%2FV%2ByWm8GQxV4Le5LYt32%2BZU2CscmW%2BgvTgACFJsQuUg%3D%3D",
|
|
76
|
+
text: null,
|
|
77
|
+
textStyle: {
|
|
78
|
+
textColor: "#000000",
|
|
79
|
+
textSize: 24,
|
|
80
|
+
textWidth: 200,
|
|
81
|
+
textWeight: "normal",
|
|
82
|
+
textFont: "Arial",
|
|
83
|
+
textFontFamily: "Arial",
|
|
84
|
+
},
|
|
85
|
+
teleportX: null,
|
|
86
|
+
teleportY: null,
|
|
87
|
+
syncUserMedia: null,
|
|
88
|
+
mediaLink: null,
|
|
89
|
+
mediaType: null,
|
|
90
|
+
mediaUploadedId: null,
|
|
91
|
+
mediaName: null,
|
|
92
|
+
isMutezone: null,
|
|
93
|
+
isVideo: null,
|
|
94
|
+
isVideoPlayer: null,
|
|
95
|
+
uniqueName: null,
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
id: "1aJwEWK9NKnXxluAuxPL",
|
|
99
|
+
assetId: "EceNskT4137EOOjmGXJP",
|
|
100
|
+
assetName: "String Bulbs",
|
|
101
|
+
assetScale: 1,
|
|
102
|
+
assetBroadcastAll: false,
|
|
103
|
+
assetBroadcast: false,
|
|
104
|
+
audioRadius: null,
|
|
105
|
+
audioVolume: null,
|
|
106
|
+
isPrivateZone: false,
|
|
107
|
+
isPrivateZoneChatDisabled: false,
|
|
108
|
+
privateZoneUserCap: null,
|
|
109
|
+
broadcasterEmail: null,
|
|
110
|
+
clickType: null,
|
|
111
|
+
clickableLink: null,
|
|
112
|
+
clickableLinkTitle: null,
|
|
113
|
+
clickablePortal: null,
|
|
114
|
+
creationDatetime: 1624476120886,
|
|
115
|
+
position: {
|
|
116
|
+
x: 1101.8736822470964,
|
|
117
|
+
y: -815.1441116727156,
|
|
118
|
+
},
|
|
119
|
+
portalCoordsX: null,
|
|
120
|
+
portalCoordsY: null,
|
|
121
|
+
specialType: null,
|
|
122
|
+
topLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/ZblDRDweiGVZFbuIaV4bVUBuvrD2-testbed-hayden-free-6b4evwqzq-1596092809043_layer1.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670433535&Signature=JqplISIyTTbfZhKG00ThKxPs3gLLx64zsbSOS9wE4PAlrPptK2%2F%2Bv9y4mGpU%2FHShtoSEsyN9iKl4s7TjZUBPw%2FE4Amtjju%2B8kKBM%2BQdmXeeMDUnofl6rNOTX5UIE1NkODBwGj309Ap88zBu2LHcubcRV1L2uE198PpvmLYL2nFLQG2hEoysi4yTXnNTXodZcp5amkyUYa3IfjiqanrIAs0mRFhza70kp9Xc%2BEpN2HHIi1j1ATNYgb3qTmHjxFip%2BZsV6Hi2Zz8mzo6To2skzQ1S2e3AavleA432yHyn7a6om9SqJYOqGpHTNERN1kD%2BHuHFWQHBSeK1YXb7diA%2BAXg%3D%3D",
|
|
123
|
+
bottomLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/ZblDRDweiGVZFbuIaV4bVUBuvrD2-testbed-hayden-free-6b4evwqzq-1596092809043_layer0.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670433535&Signature=rXuaiNl7jghRkO4VeK%2BpDyDu7XQ0O9QYsxa4pRnWScY7byVUHXc1UiQcqwnM%2FTSZoFL%2F8W0GLkphIEC4QyDbQtVOrjiLWKGQxdKdQhfCDt6I0IT3JJgQaSxOPpW5Eykkd0Rnp8R6KXAOkU8NRHp73fjrFWjZiSHIox0l%2Fty0v1zlGOt%2B%2F7cbotAu8fNO5yQtAIDpOt%2BVLqwLOrWj5D3vJtaiXEBCp1iawO1pJKap%2BFk4UF1DJdttEtOX2IYN5SWpAA2VfPJj7IfHQDPRXDKcfQziVSofJV482hN7Gsdm74jDCJ8p%2BAJxo%2Fou8CjTNXVihroJmw7CLccnNmvrzT8Guw%3D%3D",
|
|
124
|
+
text: null,
|
|
125
|
+
textStyle: {
|
|
126
|
+
textColor: "#000000",
|
|
127
|
+
textSize: 24,
|
|
128
|
+
textWidth: 200,
|
|
129
|
+
textWeight: "normal",
|
|
130
|
+
textFont: "Arial",
|
|
131
|
+
textFontFamily: "Arial",
|
|
132
|
+
},
|
|
133
|
+
teleportX: null,
|
|
134
|
+
teleportY: null,
|
|
135
|
+
syncUserMedia: null,
|
|
136
|
+
mediaLink: null,
|
|
137
|
+
mediaType: null,
|
|
138
|
+
mediaUploadedId: null,
|
|
139
|
+
mediaName: null,
|
|
140
|
+
isMutezone: null,
|
|
141
|
+
isVideo: null,
|
|
142
|
+
isVideoPlayer: null,
|
|
143
|
+
uniqueName: null,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
id: "1aL6y9NIpvg3i0NCYd9P",
|
|
147
|
+
assetId: "9eBGB494oS26uQp35O0j",
|
|
148
|
+
assetName: "Trash Fence Horizontal",
|
|
149
|
+
assetScale: 1,
|
|
150
|
+
assetBroadcastAll: false,
|
|
151
|
+
assetBroadcast: false,
|
|
152
|
+
audioRadius: null,
|
|
153
|
+
audioVolume: null,
|
|
154
|
+
isPrivateZone: false,
|
|
155
|
+
isPrivateZoneChatDisabled: false,
|
|
156
|
+
privateZoneUserCap: null,
|
|
157
|
+
broadcasterEmail: null,
|
|
158
|
+
clickType: null,
|
|
159
|
+
clickableLink: null,
|
|
160
|
+
clickableLinkTitle: null,
|
|
161
|
+
clickablePortal: null,
|
|
162
|
+
creationDatetime: 1624559093102,
|
|
163
|
+
position: {
|
|
164
|
+
x: -1024.6450136852004,
|
|
165
|
+
y: 1534.5126935363705,
|
|
166
|
+
},
|
|
167
|
+
portalCoordsX: null,
|
|
168
|
+
portalCoordsY: null,
|
|
169
|
+
specialType: null,
|
|
170
|
+
topLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/ZblDRDweiGVZFbuIaV4bVUBuvrD2-testbed-build-a-burn-free-fifzu5ms2-1598227342328_layer1.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670433535&Signature=G%2BeRl%2FBXQ7LzC9cwG%2BkoQRmtb8s56rScFvsb1iT7fztMKu%2B3JaB1Nsy0sMcSWd37v5bCAOYIs3rpbITOKI4vkXOhNdGQIOM1hFOyWCwr9N%2B0BBOMN4hZ1G0bJMuofXBXU5%2B%2Fh4OnY5hhY5g0Z9lSNbK2nxJRLQQzIQwlTiQ1e0x9%2B6VWVwQBw3mb0JvOp575AYNPHJ%2B5OmP9uX7W4SzBWPKerZ3OV6U%2FnCFU4u2zCLjyx7lpXqXDPJ5SzxCc97%2FQP186ybiZvw42EgWeAswf6XpNcn%2BqhcEGHY4alOaGBf6Sa8w814SrdjyWYh3yRjreTCDRjWoC%2F8tbeJTRf7t3Sg%3D%3D",
|
|
171
|
+
bottomLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/ZblDRDweiGVZFbuIaV4bVUBuvrD2-testbed-build-a-burn-free-fifzu5ms2-1598227342328_layer0.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670433535&Signature=SQeK2Udwpi4Cv3RIVRxe53VkcHlXtvX2YMVMZiWuNAyvnIFcSgoDAuDLjZWuqgfvwnqZ9ii6trqbLB64%2B1H0alWBrBGtq2YIAMP4X50cjO%2BKOlKO6nzYfo61aE8JpCWNk%2FqFx75UH2lRwKybsDjb63dXshyHV3BzewXHAxB1tdEcYxQfSesPUyH0BkuFSuSRYombYJf3%2B7cjcJFps%2BePTST3OJYMVDKphq%2BKL6Z1YN%2FwjWszEDJOzy4PyszklfiO%2Fj6q9VtY9WmwZst0nAILkq9G9eLFRzr%2Fma5ALw%2Bn627Z4%2FKS7dAQynr%2B2y8skprknTia8gE9A3KBz6EWLyV%2BZw%3D%3D",
|
|
172
|
+
text: null,
|
|
173
|
+
textStyle: {
|
|
174
|
+
textColor: "#000000",
|
|
175
|
+
textSize: 24,
|
|
176
|
+
textWidth: 200,
|
|
177
|
+
textWeight: "normal",
|
|
178
|
+
textFont: "Arial",
|
|
179
|
+
textFontFamily: "Arial",
|
|
180
|
+
},
|
|
181
|
+
teleportX: null,
|
|
182
|
+
teleportY: null,
|
|
183
|
+
syncUserMedia: null,
|
|
184
|
+
mediaLink: null,
|
|
185
|
+
mediaType: null,
|
|
186
|
+
mediaUploadedId: null,
|
|
187
|
+
mediaName: null,
|
|
188
|
+
isMutezone: null,
|
|
189
|
+
isVideo: null,
|
|
190
|
+
isVideoPlayer: null,
|
|
191
|
+
uniqueName: null,
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
id: "1giFZb0sQ3X27L7uGyQX",
|
|
195
|
+
assetId: "1yGOfvis4CG0r8Vkq46G",
|
|
196
|
+
assetName: "Triangle Rug",
|
|
197
|
+
assetScale: 1,
|
|
198
|
+
assetBroadcastAll: false,
|
|
199
|
+
assetBroadcast: false,
|
|
200
|
+
audioRadius: null,
|
|
201
|
+
audioVolume: null,
|
|
202
|
+
isPrivateZone: false,
|
|
203
|
+
isPrivateZoneChatDisabled: false,
|
|
204
|
+
privateZoneUserCap: null,
|
|
205
|
+
broadcasterEmail: null,
|
|
206
|
+
clickType: null,
|
|
207
|
+
clickableLink: null,
|
|
208
|
+
clickableLinkTitle: null,
|
|
209
|
+
clickablePortal: null,
|
|
210
|
+
creationDatetime: 1624557083983,
|
|
211
|
+
position: {
|
|
212
|
+
x: 383.4917021726642,
|
|
213
|
+
y: 937.6441853712226,
|
|
214
|
+
},
|
|
215
|
+
portalCoordsX: null,
|
|
216
|
+
portalCoordsY: null,
|
|
217
|
+
specialType: null,
|
|
218
|
+
topLayerURL: "",
|
|
219
|
+
bottomLayerURL: "https://storage.googleapis.com/topia-ba1c8.appspot.com/layers/ZblDRDweiGVZFbuIaV4bVUBuvrD2-testbed-hayden-free-6b4evwqzq-1596321298869_layer0.png?GoogleAccessId=firebase-adminsdk-f60ic%40topia-ba1c8.iam.gserviceaccount.com&Expires=1670433535&Signature=wnTww2Pgusnk9%2BwOu6XIlNbYNKF8IJXBFTvw7AumtGVKvCil8hwtDHrsuSuZKuB0adjfeTcb6YwP%2FJxs275KUeu6RZffHKeu8z9mcmpGBrxP2OBJkpBY7OyCra9oT2oEJqPzVIuJDSpIuAVJDVbkFAJln7rqBHHjJbrifSAOVTwaqqRf4ZHZX%2BPyVc%2BxbnogNyAmUk%2F9C%2BjfFzyIs0%2FPbVciEppEjt0q03SaY8JLurhtdl01nxpwGAk%2BtHm5fP9m2N5kswS0a9ItvM%2BlzR4rCYuZkjs0QLS5JH8L3yjMpuQBHYlkiGNmBsx7ur2Ys2ajaVG1h3JD6f4jFxTayercZw%3D%3D",
|
|
220
|
+
text: null,
|
|
221
|
+
textStyle: {
|
|
222
|
+
textColor: "#000000",
|
|
223
|
+
textSize: 24,
|
|
224
|
+
textWidth: 200,
|
|
225
|
+
textWeight: "normal",
|
|
226
|
+
textFont: "Arial",
|
|
227
|
+
textFontFamily: "Arial",
|
|
228
|
+
},
|
|
229
|
+
teleportX: null,
|
|
230
|
+
teleportY: null,
|
|
231
|
+
syncUserMedia: null,
|
|
232
|
+
mediaLink: null,
|
|
233
|
+
mediaType: null,
|
|
234
|
+
mediaUploadedId: null,
|
|
235
|
+
mediaName: null,
|
|
236
|
+
isMutezone: null,
|
|
237
|
+
isVideo: null,
|
|
238
|
+
isVideoPlayer: null,
|
|
239
|
+
uniqueName: null,
|
|
240
|
+
},
|
|
241
|
+
];
|
package/dist/__mocks__/index.js
CHANGED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
export const scenes = [
|
|
2
|
+
{
|
|
3
|
+
description: 'For that, "It was a dark and stormy night..."vibe...',
|
|
4
|
+
height: 4000,
|
|
5
|
+
name: "The Cabin in the Woods",
|
|
6
|
+
urlSlug: "inktopia-free-gu0xzmtvn",
|
|
7
|
+
purchasedDate: {
|
|
8
|
+
_seconds: 1652385963,
|
|
9
|
+
_nanoseconds: 367000000,
|
|
10
|
+
},
|
|
11
|
+
background: "backgrounds/5SEa7AR1MyYV3sX48HQy3xLadyR2-asgard-1618371873999.png",
|
|
12
|
+
spawnPosition: {
|
|
13
|
+
radius: 400,
|
|
14
|
+
y: -1260,
|
|
15
|
+
x: 411,
|
|
16
|
+
},
|
|
17
|
+
worldCenteredAtZero: true,
|
|
18
|
+
width: 4000,
|
|
19
|
+
price: "0",
|
|
20
|
+
originalKit: "HRxS1Z5cr5pOWDIGNky2",
|
|
21
|
+
isPublic: false,
|
|
22
|
+
created: {
|
|
23
|
+
_seconds: 1621996452,
|
|
24
|
+
_nanoseconds: 500000000,
|
|
25
|
+
},
|
|
26
|
+
id: "0cNAaugq17bHDzF9VQ8k",
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
background: null,
|
|
30
|
+
description: "A calendar of events hosted by the Topia community. This object is great for adding depth and value to your world.",
|
|
31
|
+
price: 0,
|
|
32
|
+
height: 500,
|
|
33
|
+
urlSlug: "canvas-one-free-k95wnsmxc",
|
|
34
|
+
originalKit: "ZtQhN1qe5nO3xuKrTMzg",
|
|
35
|
+
worldCenteredAtZero: true,
|
|
36
|
+
spawnPosition: {
|
|
37
|
+
x: 0,
|
|
38
|
+
radius: 100,
|
|
39
|
+
y: 0,
|
|
40
|
+
},
|
|
41
|
+
timesGetFree: 309,
|
|
42
|
+
isPublic: false,
|
|
43
|
+
timesUsed: 139,
|
|
44
|
+
created: {
|
|
45
|
+
_seconds: 1621036299,
|
|
46
|
+
_nanoseconds: 714000000,
|
|
47
|
+
},
|
|
48
|
+
purchasedDate: {
|
|
49
|
+
_seconds: 1628820905,
|
|
50
|
+
_nanoseconds: 432000000,
|
|
51
|
+
},
|
|
52
|
+
name: "Events Calendar",
|
|
53
|
+
width: 500,
|
|
54
|
+
id: "1KxaFJ7FnqsXayWfNPjm",
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
background: "backgrounds/office_background.png",
|
|
58
|
+
name: "OfficeParty",
|
|
59
|
+
timesUsed: 1,
|
|
60
|
+
height: 2000,
|
|
61
|
+
spawnPosition: {
|
|
62
|
+
x: 1000,
|
|
63
|
+
y: 1900,
|
|
64
|
+
radius: 100,
|
|
65
|
+
},
|
|
66
|
+
price: 0,
|
|
67
|
+
urlSlug: "sidebench",
|
|
68
|
+
created: {
|
|
69
|
+
_seconds: 1623872809,
|
|
70
|
+
_nanoseconds: 94000000,
|
|
71
|
+
},
|
|
72
|
+
description: "",
|
|
73
|
+
width: 2000,
|
|
74
|
+
id: "1OWOvTbABMVmuvMaifZh",
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
name: "Private conversation dome",
|
|
78
|
+
spawnPosition: {
|
|
79
|
+
x: 0,
|
|
80
|
+
radius: 100,
|
|
81
|
+
y: 0,
|
|
82
|
+
},
|
|
83
|
+
timesGetFree: 147,
|
|
84
|
+
originalKit: "rceXbVz2mJMrc7kuXH9h",
|
|
85
|
+
purchasedDate: {
|
|
86
|
+
_seconds: 1636393495,
|
|
87
|
+
_nanoseconds: 113000000,
|
|
88
|
+
},
|
|
89
|
+
urlSlug: "bctemp-free-1864nq02g",
|
|
90
|
+
isPublic: false,
|
|
91
|
+
height: 2000,
|
|
92
|
+
worldCenteredAtZero: true,
|
|
93
|
+
background: null,
|
|
94
|
+
price: 0,
|
|
95
|
+
width: 2000,
|
|
96
|
+
created: {
|
|
97
|
+
_seconds: 1631048612,
|
|
98
|
+
_nanoseconds: 923000000,
|
|
99
|
+
},
|
|
100
|
+
timesUsed: 87,
|
|
101
|
+
description: "A transparent, floating geodesic dome, useful as a private conversation space",
|
|
102
|
+
id: "7f6tnT0RkUbn2i83rfgA",
|
|
103
|
+
},
|
|
104
|
+
];
|
|
@@ -1,12 +1,39 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
export const visitor = {
|
|
2
|
+
playerId: 1,
|
|
3
|
+
color: "0x7AD3BA",
|
|
4
|
+
moveTo: {
|
|
5
|
+
x: -1458,
|
|
6
|
+
y: -351,
|
|
7
|
+
},
|
|
8
|
+
moveFrom: {},
|
|
9
|
+
username: "Test",
|
|
10
|
+
sitting: false,
|
|
11
|
+
gestureType: 0,
|
|
12
|
+
performer: false,
|
|
13
|
+
performerNear: false,
|
|
14
|
+
shareScreen: false,
|
|
15
|
+
isBackground: false,
|
|
16
|
+
muted: true,
|
|
17
|
+
hidden: true,
|
|
18
|
+
newId: "",
|
|
19
|
+
displayName: "test",
|
|
20
|
+
movedOn: 0,
|
|
21
|
+
lastUpdate: 1669915215216,
|
|
22
|
+
isMobile: false,
|
|
23
|
+
token: "a92863e4-c21c-4270-a7ed-cdee2574e3ec",
|
|
24
|
+
isAdmin: false,
|
|
25
|
+
isRecording: false,
|
|
26
|
+
isRecordingBot: false,
|
|
27
|
+
};
|
|
28
|
+
export const visitors = {
|
|
29
|
+
"1": {
|
|
30
|
+
playerId: 1,
|
|
4
31
|
color: "0x7AD3BA",
|
|
5
32
|
moveTo: {
|
|
6
33
|
x: -1458,
|
|
7
|
-
y: -351
|
|
34
|
+
y: -351,
|
|
8
35
|
},
|
|
9
|
-
moveFrom:
|
|
36
|
+
moveFrom: {},
|
|
10
37
|
username: "Lina",
|
|
11
38
|
sitting: false,
|
|
12
39
|
gestureType: 0,
|
|
@@ -16,24 +43,24 @@ export var visitors = {
|
|
|
16
43
|
isBackground: false,
|
|
17
44
|
muted: true,
|
|
18
45
|
hidden: true,
|
|
19
|
-
newId:
|
|
46
|
+
newId: "",
|
|
20
47
|
displayName: "",
|
|
21
|
-
movedOn:
|
|
48
|
+
movedOn: 0,
|
|
22
49
|
lastUpdate: 1669915215216,
|
|
23
50
|
isMobile: false,
|
|
24
51
|
token: "a92863e4-c21c-4270-a7ed-cdee2574e3ec",
|
|
25
52
|
isAdmin: false,
|
|
26
53
|
isRecording: false,
|
|
27
|
-
isRecordingBot: false
|
|
54
|
+
isRecordingBot: false,
|
|
28
55
|
},
|
|
29
|
-
"
|
|
30
|
-
playerId:
|
|
56
|
+
"2": {
|
|
57
|
+
playerId: 2,
|
|
31
58
|
color: "0xA0D2A7",
|
|
32
59
|
moveTo: {
|
|
33
60
|
x: -1504,
|
|
34
|
-
y: -260
|
|
61
|
+
y: -260,
|
|
35
62
|
},
|
|
36
|
-
moveFrom:
|
|
63
|
+
moveFrom: {},
|
|
37
64
|
username: "Definitely Not Lina",
|
|
38
65
|
sitting: false,
|
|
39
66
|
gestureType: 0,
|
|
@@ -43,14 +70,14 @@ export var visitors = {
|
|
|
43
70
|
isBackground: false,
|
|
44
71
|
muted: true,
|
|
45
72
|
hidden: true,
|
|
46
|
-
newId:
|
|
73
|
+
newId: "",
|
|
47
74
|
displayName: "",
|
|
48
|
-
movedOn:
|
|
75
|
+
movedOn: 0,
|
|
49
76
|
lastUpdate: 1669915214590,
|
|
50
77
|
isMobile: false,
|
|
51
78
|
token: "23fecaae-6b55-4e98-9e0c-6f869bb19463",
|
|
52
79
|
isAdmin: false,
|
|
53
80
|
isRecording: false,
|
|
54
|
-
isRecordingBot: false
|
|
55
|
-
}
|
|
81
|
+
isRecordingBot: false,
|
|
82
|
+
},
|
|
56
83
|
};
|
package/dist/__mocks__/worlds.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
1
|
+
const baseImageURL = "https://firebasestorage.googleapis.com/v0/b/topia-ba1c8.appspot.com/o/heroImages%";
|
|
2
|
+
export const worlds = [
|
|
3
3
|
{
|
|
4
4
|
description: "This is the a welcome lobby that anybody can enter to learn more about Topia.",
|
|
5
5
|
name: "Welcome",
|
|
6
|
-
heroImage:
|
|
7
|
-
urlSlug: "welcome"
|
|
6
|
+
heroImage: `${baseImageURL}2Fwelcome_banner.png?alt=media&token=548e1515-205e-4ef0-a0ca-bc4cc39c4f40`,
|
|
7
|
+
urlSlug: "welcome",
|
|
8
8
|
},
|
|
9
9
|
{
|
|
10
10
|
background: null,
|
|
11
11
|
created: {
|
|
12
12
|
_seconds: 1605310924,
|
|
13
|
-
_nanoseconds: 165000000
|
|
13
|
+
_nanoseconds: 165000000,
|
|
14
14
|
},
|
|
15
15
|
controls: {
|
|
16
16
|
isShowingCurrentGuests: true,
|
|
@@ -22,7 +22,7 @@ export var worlds = [
|
|
|
22
22
|
isWorldConversationHidden: false,
|
|
23
23
|
allowUsersToTurnOnNotifications: true,
|
|
24
24
|
allowMuteAll: true,
|
|
25
|
-
isMobileDisabled: false
|
|
25
|
+
isMobileDisabled: false,
|
|
26
26
|
},
|
|
27
27
|
description: "A place to play, test, create scenes, and more!",
|
|
28
28
|
enforceWhitelistOnLogin: false,
|
|
@@ -35,17 +35,17 @@ export var worlds = [
|
|
|
35
35
|
spawnPosition: {
|
|
36
36
|
radius: 100,
|
|
37
37
|
y: -348,
|
|
38
|
-
x: -1448
|
|
38
|
+
x: -1448,
|
|
39
39
|
},
|
|
40
40
|
tileBackgroundEverywhere: null,
|
|
41
41
|
useTopiaPassword: false,
|
|
42
|
-
width: 4096
|
|
42
|
+
width: 4096,
|
|
43
43
|
},
|
|
44
44
|
{
|
|
45
45
|
alt: "descriptive text for screen reader",
|
|
46
46
|
description: "Donec ullamcorper nulla non metus auctor fringilla. Donec ullamcorper nulla non metus auctor fringilla. Donec ullamcorper nulla non metus auctor fringilla",
|
|
47
47
|
name: "World Name that goes on for days",
|
|
48
48
|
heroImage: "https://bit.ly/2QdnMge",
|
|
49
|
-
urlSlug: "world-name-that-goes-on-forever-because-it-free"
|
|
49
|
+
urlSlug: "world-name-that-goes-on-forever-because-it-free",
|
|
50
50
|
},
|
|
51
51
|
];
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { getErrorMessage, publicAPI } from "utils";
|
|
2
|
+
export class Asset {
|
|
3
|
+
addedOn;
|
|
4
|
+
apiKey;
|
|
5
|
+
assetName;
|
|
6
|
+
creatorTags;
|
|
7
|
+
id;
|
|
8
|
+
isPublic;
|
|
9
|
+
kitId;
|
|
10
|
+
layer0;
|
|
11
|
+
layer1;
|
|
12
|
+
library;
|
|
13
|
+
originalAssetId;
|
|
14
|
+
originalKit;
|
|
15
|
+
ownerId;
|
|
16
|
+
ownerName;
|
|
17
|
+
platformAsset;
|
|
18
|
+
purchased;
|
|
19
|
+
purchaseDate;
|
|
20
|
+
purchasedFrom;
|
|
21
|
+
specialType;
|
|
22
|
+
transactionId;
|
|
23
|
+
type;
|
|
24
|
+
urlSlug;
|
|
25
|
+
constructor(addedOn = "", apiKey, assetName = "", creatorTags = {}, id = "", isPublic = false, kitId = "", layer0 = "", layer1 = "", library = "", originalAssetId = "", originalKit = "", ownerId = "", ownerName = "", platformAsset = false, purchased = false, purchaseDate = "", purchasedFrom = "", specialType = "", transactionId = "", type = "", urlSlug = "") {
|
|
26
|
+
this.addedOn = addedOn;
|
|
27
|
+
this.apiKey = apiKey;
|
|
28
|
+
this.assetName = assetName;
|
|
29
|
+
this.creatorTags = creatorTags;
|
|
30
|
+
this.id = id;
|
|
31
|
+
this.isPublic = isPublic;
|
|
32
|
+
this.kitId = kitId;
|
|
33
|
+
this.layer0 = layer0;
|
|
34
|
+
this.layer1 = layer1;
|
|
35
|
+
this.library = library;
|
|
36
|
+
this.originalAssetId = originalAssetId;
|
|
37
|
+
this.originalKit = originalKit;
|
|
38
|
+
this.ownerId = ownerId;
|
|
39
|
+
this.ownerName = ownerName;
|
|
40
|
+
this.platformAsset = platformAsset;
|
|
41
|
+
this.purchased = purchased;
|
|
42
|
+
this.purchaseDate = purchaseDate;
|
|
43
|
+
this.purchasedFrom = purchasedFrom;
|
|
44
|
+
this.specialType = specialType;
|
|
45
|
+
this.transactionId = transactionId;
|
|
46
|
+
this.type = type;
|
|
47
|
+
this.urlSlug = urlSlug;
|
|
48
|
+
}
|
|
49
|
+
fetchAssetsByEmail(ownerEmail) {
|
|
50
|
+
return new Promise((resolve, reject) => {
|
|
51
|
+
publicAPI(this.apiKey)
|
|
52
|
+
.get(`/assets/my-assets?email=${ownerEmail}`)
|
|
53
|
+
.then((response) => {
|
|
54
|
+
resolve(response.data);
|
|
55
|
+
})
|
|
56
|
+
.catch((error) => {
|
|
57
|
+
reject(new Error(getErrorMessage(error)));
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
export default Asset;
|