bruce-models 0.7.8 → 0.7.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/bruce-models.es5.js +165 -6
- package/dist/bruce-models.es5.js.map +1 -1
- package/dist/bruce-models.umd.js +163 -5
- package/dist/bruce-models.umd.js.map +1 -1
- package/dist/lib/api/bruce-api.js +19 -4
- package/dist/lib/api/bruce-api.js.map +1 -1
- package/dist/lib/bruce-models.js +1 -0
- package/dist/lib/bruce-models.js.map +1 -1
- package/dist/lib/calculator/calculator.js +2 -1
- package/dist/lib/calculator/calculator.js.map +1 -1
- package/dist/lib/project/project-view-tile.js.map +1 -1
- package/dist/lib/server/message-broker.js +159 -0
- package/dist/lib/server/message-broker.js.map +1 -0
- package/dist/types/api/bruce-api.d.ts +9 -1
- package/dist/types/bruce-models.d.ts +1 -0
- package/dist/types/project/project-view-tile.d.ts +2 -6
- package/dist/types/server/message-broker.d.ts +108 -0
- package/package.json +1 -1
|
@@ -54,6 +54,7 @@ var account_1 = require("../account/account");
|
|
|
54
54
|
var abstract_api_1 = require("./abstract-api");
|
|
55
55
|
var api_1 = require("./api");
|
|
56
56
|
var cam_api_1 = require("./cam-api");
|
|
57
|
+
var message_broker_1 = require("../server/message-broker");
|
|
57
58
|
var BruceApi;
|
|
58
59
|
(function (BruceApi) {
|
|
59
60
|
/**
|
|
@@ -73,19 +74,31 @@ var BruceApi;
|
|
|
73
74
|
_this.loadCancelled = false;
|
|
74
75
|
_this.accountId = accountId;
|
|
75
76
|
_this.env = env !== null && env !== void 0 ? env : api_1.Api.EEnv.PROD;
|
|
76
|
-
_this.loadProm = _this.
|
|
77
|
+
_this.loadProm = _this.init(cam);
|
|
77
78
|
return _this;
|
|
78
79
|
}
|
|
80
|
+
Object.defineProperty(Api.prototype, "MessageBroker", {
|
|
81
|
+
get: function () {
|
|
82
|
+
return this.messageBroker;
|
|
83
|
+
},
|
|
84
|
+
enumerable: false,
|
|
85
|
+
configurable: true
|
|
86
|
+
});
|
|
79
87
|
Object.defineProperty(Api.prototype, "Loading", {
|
|
80
88
|
// Indicates if the init process has finished loading.
|
|
81
|
-
// This means the regional base url has been set.
|
|
89
|
+
// This means the regional base url has been set and message broker is ready.
|
|
82
90
|
get: function () {
|
|
83
91
|
return this.loadProm;
|
|
84
92
|
},
|
|
85
93
|
enumerable: false,
|
|
86
94
|
configurable: true
|
|
87
95
|
});
|
|
88
|
-
|
|
96
|
+
/**
|
|
97
|
+
* Loads regional base url and sets up message broker.
|
|
98
|
+
* @param cam
|
|
99
|
+
* @returns
|
|
100
|
+
*/
|
|
101
|
+
Api.prototype.init = function (cam) {
|
|
89
102
|
var _a;
|
|
90
103
|
return __awaiter(this, void 0, void 0, function () {
|
|
91
104
|
var prefix, url, env, camApi, settings, endpoint, e_1;
|
|
@@ -134,7 +147,9 @@ var BruceApi;
|
|
|
134
147
|
e_1 = _b.sent();
|
|
135
148
|
console.error(e_1);
|
|
136
149
|
return [3 /*break*/, 4];
|
|
137
|
-
case 4:
|
|
150
|
+
case 4:
|
|
151
|
+
this.messageBroker = new message_broker_1.MessageBroker.WebSocketBroker(this.baseUrl, this.env);
|
|
152
|
+
return [2 /*return*/];
|
|
138
153
|
}
|
|
139
154
|
});
|
|
140
155
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bruce-api.js","sourceRoot":"","sources":["../../../src/api/bruce-api.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAA6C;AAC7C,+CAA6C;AAC7C,6BAAiC;AACjC,qCAAmC;
|
|
1
|
+
{"version":3,"file":"bruce-api.js","sourceRoot":"","sources":["../../../src/api/bruce-api.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/bruce-models.js
CHANGED
|
@@ -56,6 +56,7 @@ __exportStar(require("./project/project-view"), exports);
|
|
|
56
56
|
__exportStar(require("./project/project-view-legacy-tile"), exports);
|
|
57
57
|
__exportStar(require("./project/project-view-tile"), exports);
|
|
58
58
|
__exportStar(require("./server/pending-action"), exports);
|
|
59
|
+
__exportStar(require("./server/message-broker"), exports);
|
|
59
60
|
__exportStar(require("./style/style"), exports);
|
|
60
61
|
__exportStar(require("./tileset/tileset-cad"), exports);
|
|
61
62
|
__exportStar(require("./tileset/tileset-entities-map-tiles"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bruce-models.js","sourceRoot":"","sources":["../../src/bruce-models.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8DAA4C;AAE5C,4DAA0C;AAE1C,qDAAmC;AACnC,4CAA0B;AAC1B,kDAAgC;AAChC,gDAA8B;AAC9B,gDAA8B;AAC9B,mDAAiC;AAEjC,0DAAwC;AAExC,kDAAgC;AAChC,uDAAqC;AACrC,iDAA+B;AAC/B,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAC/B,iDAA+B;AAC/B,uDAAqC;AACrC,sDAAoC;AACpC,oDAAkC;AAClC,qDAAmC;AACnC,+CAA6B;AAE7B,kEAAgD;AAChD,6DAA2C;AAC3C,0DAAwC;AACxC,uDAAqC;AACrC,sDAAoC;AACpC,gEAA8C;AAC9C,2DAAyC;AACzC,yDAAuC;AACvC,sDAAoC;AACpC,uDAAqC;AACrC,kDAAgC;AAChC,gEAA8C;AAC9C,gEAA8C;AAC9C,wEAAsD;AACtD,uEAAqD;AACrD,yDAAuC;AAEvC,4DAA0C;AAE1C,4DAA0C;AAE1C,yDAAuC;AACvC,sDAAoC;AACpC,kEAAgD;AAChD,yDAAuC;AACvC,qEAAmD;AACnD,8DAA4C;AAE5C,0DAAwC;AAExC,gDAA8B;AAE9B,wDAAsC;AACtC,uEAAqD;AACrD,6DAA2C;AAC3C,kEAAgD;AAChD,sEAAoD;AACpD,8DAA4C;AAC5C,+DAA6C;AAC7C,kEAAgD;AAChD,oDAAkC;AAElC,oDAAkC;AAClC,iDAA+B;AAC/B,oDAAkC;AAClC,8CAA4B;AAE5B,oDAAkC;AAElC,uDAAqC;AACrC,oDAAkC;AAClC,sDAAoC;AACpC,oDAAkC;AAClC,mDAAiC;AAEjC,sDAAoC;AAEpC,sDAAoC;AACpC,sDAAoC;AACpC,uDAAqC;AACrC,sDAAoC;AACpC,yDAAuC"}
|
|
1
|
+
{"version":3,"file":"bruce-models.js","sourceRoot":"","sources":["../../src/bruce-models.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8DAA4C;AAE5C,4DAA0C;AAE1C,qDAAmC;AACnC,4CAA0B;AAC1B,kDAAgC;AAChC,gDAA8B;AAC9B,gDAA8B;AAC9B,mDAAiC;AAEjC,0DAAwC;AAExC,kDAAgC;AAChC,uDAAqC;AACrC,iDAA+B;AAC/B,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAC/B,iDAA+B;AAC/B,uDAAqC;AACrC,sDAAoC;AACpC,oDAAkC;AAClC,qDAAmC;AACnC,+CAA6B;AAE7B,kEAAgD;AAChD,6DAA2C;AAC3C,0DAAwC;AACxC,uDAAqC;AACrC,sDAAoC;AACpC,gEAA8C;AAC9C,2DAAyC;AACzC,yDAAuC;AACvC,sDAAoC;AACpC,uDAAqC;AACrC,kDAAgC;AAChC,gEAA8C;AAC9C,gEAA8C;AAC9C,wEAAsD;AACtD,uEAAqD;AACrD,yDAAuC;AAEvC,4DAA0C;AAE1C,4DAA0C;AAE1C,yDAAuC;AACvC,sDAAoC;AACpC,kEAAgD;AAChD,yDAAuC;AACvC,qEAAmD;AACnD,8DAA4C;AAE5C,0DAAwC;AACxC,0DAAwC;AAExC,gDAA8B;AAE9B,wDAAsC;AACtC,uEAAqD;AACrD,6DAA2C;AAC3C,kEAAgD;AAChD,sEAAoD;AACpD,8DAA4C;AAC5C,+DAA6C;AAC7C,kEAAgD;AAChD,oDAAkC;AAElC,oDAAkC;AAClC,iDAA+B;AAC/B,oDAAkC;AAClC,8CAA4B;AAE5B,oDAAkC;AAElC,uDAAqC;AACrC,oDAAkC;AAClC,sDAAoC;AACpC,oDAAkC;AAClC,mDAAiC;AAEjC,sDAAoC;AAEpC,sDAAoC;AACpC,sDAAoC;AACpC,uDAAqC;AACrC,sDAAoC;AACpC,yDAAuC"}
|
|
@@ -138,7 +138,8 @@ var Calculator;
|
|
|
138
138
|
if (typeof value == "string") {
|
|
139
139
|
try {
|
|
140
140
|
value = bruce_variable_1.BruceVariable.SwapValues(value, entity);
|
|
141
|
-
|
|
141
|
+
var eval2 = eval; // https://rollupjs.org/guide/en/#avoiding-eval
|
|
142
|
+
return eval2(value);
|
|
142
143
|
}
|
|
143
144
|
catch (exception) {
|
|
144
145
|
var e = exception;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../src/calculator/calculator.ts"],"names":[],"mappings":";;;AAAA,yCAAwC;AACxC,2CAA0C;AAC1C,2DAAyD;AACzD,iDAA+C;AAE/C;;;GAGG;AACH,IAAiB,UAAU,
|
|
1
|
+
{"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../src/calculator/calculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-view-tile.js","sourceRoot":"","sources":["../../../src/project/project-view-tile.ts"],"names":[],"mappings":";;;AACA,IAAiB,eAAe,
|
|
1
|
+
{"version":3,"file":"project-view-tile.js","sourceRoot":"","sources":["../../../src/project/project-view-tile.ts"],"names":[],"mappings":";;;AACA,IAAiB,eAAe,CAqK/B;AArKD,WAAiB,eAAe;IAuC5B,IAAY,eAcX;IAdD,WAAY,eAAe;QACvB,oDAAiC,CAAA;QACjC,wEAAqD,CAAA;QACrD,kDAA+B,CAAA;QAC/B,sDAAmC,CAAA;QACnC,kDAA+B,CAAA;QAC/B,gEAA6C,CAAA;QAC7C,wDAAqC,CAAA;QACrC,4DAAyC,CAAA;QACzC,oEAAiD,CAAA;QACjD,kDAA+B,CAAA;QAC/B,wDAAqC,CAAA;QACrC,8CAA2B,CAAA;QAC3B,gCAAa,CAAA;IACjB,CAAC,EAdW,eAAe,GAAf,+BAAe,KAAf,+BAAe,QAc1B;IAQD;;;OAGG;IACU,8BAAc,GAAsB;QAC7C;YACI,EAAE,EAAE,eAAe,CAAC,cAAc;YAClC,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,yFAAyF;SACrG;QACD;YACI,EAAE,EAAE,eAAe,CAAC,wBAAwB;YAC5C,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,+FAA+F;SAC3G;QACD;YACI,EAAE,EAAE,eAAe,CAAC,aAAa;YACjC,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,wFAAwF;SACpG;QACD;YACI,EAAE,EAAE,eAAe,CAAC,eAAe;YACnC,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,8FAA8F;SAC1G;QACD;YACI,EAAE,EAAE,eAAe,CAAC,aAAa;YACjC,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,4FAA4F;SACxG;QACD;YACI,EAAE,EAAE,eAAe,CAAC,oBAAoB;YACxC,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE,4FAA4F;SACxG;QACD;YACI,EAAE,EAAE,eAAe,CAAC,gBAAgB;YACpC,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,+FAA+F;SAC3G;QACD;YACI,EAAE,EAAE,eAAe,CAAC,kBAAkB;YACtC,IAAI,EAAE,uBAAuB;YAC7B,OAAO,EAAE,iGAAiG;SAC7G;QACD;YACI,EAAE,EAAE,eAAe,CAAC,sBAAsB;YAC1C,IAAI,EAAE,0BAA0B;YAChC,OAAO,EAAE,qGAAqG;SACjH;QACD;YACI,EAAE,EAAE,eAAe,CAAC,aAAa;YACjC,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,4FAA4F;SACxG;QACD;YACI,EAAE,EAAE,eAAe,CAAC,gBAAgB;YACpC,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,+FAA+F;SAC3G;QACD;YACI,EAAE,EAAE,eAAe,CAAC,WAAW;YAC/B,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,0FAA0F;SACtG;QACD;YACI,EAAE,EAAE,eAAe,CAAC,IAAI;YACxB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,sFAAsF;SAClG;KACJ,CAAC;IAEF,IAAY,eAIX;IAJD,WAAY,eAAe;QACvB,4DAAyC,CAAA;QACzC,8CAA2B,CAAA;QAC3B,gCAAa,CAAA;IACjB,CAAC,EAJW,eAAe,GAAf,+BAAe,KAAf,+BAAe,QAI1B;IAQD;;;OAGG;IACU,+BAAe,GAAsB;QAC9C;YACI,EAAE,EAAE,eAAe,CAAC,kBAAkB;YACtC,IAAI,EAAE,sBAAsB;YAC5B,OAAO,EAAE,iGAAiG;SAC7G;QACD;YACI,EAAE,EAAE,eAAe,CAAC,IAAI;YACxB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,mDAAmD;SAC/D;QACD;YACI,EAAE,EAAE,eAAe,CAAC,WAAW;YAC/B,IAAI,EAAE,cAAc;SACvB;KACJ,CAAA;AACL,CAAC,EArKgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAqK/B"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.MessageBroker = void 0;
|
|
15
|
+
var api_1 = require("../api/api");
|
|
16
|
+
var MessageBroker;
|
|
17
|
+
(function (MessageBroker) {
|
|
18
|
+
var Action;
|
|
19
|
+
(function (Action) {
|
|
20
|
+
Action["SUBSCRIBE"] = "subscribe";
|
|
21
|
+
Action["SUBSCRIBE_SHADOW"] = "subscribeShadow";
|
|
22
|
+
Action["UNSUBSCRIBE"] = "unsubscribe";
|
|
23
|
+
Action["BROADCAST"] = "broadcast";
|
|
24
|
+
Action["GET_TOPIC_SUBSCRIBERS"] = "getTopicSubscribers"; // requests topic subscribers without subscribing
|
|
25
|
+
})(Action = MessageBroker.Action || (MessageBroker.Action = {}));
|
|
26
|
+
/** Events types any component may get from server */
|
|
27
|
+
var Event;
|
|
28
|
+
(function (Event) {
|
|
29
|
+
Event["SAVED"] = "saved";
|
|
30
|
+
Event["UPDATED"] = "updated";
|
|
31
|
+
Event["DELETED"] = "deleted";
|
|
32
|
+
Event["EDIT_STARTED"] = "editStarted";
|
|
33
|
+
Event["EDIT_FINISHED"] = "editFinished";
|
|
34
|
+
Event["USERS_UPDATE"] = "usersUpdate";
|
|
35
|
+
})(Event = MessageBroker.Event || (MessageBroker.Event = {}));
|
|
36
|
+
/** Communicates with a server message broker */
|
|
37
|
+
var WebSocketBroker = /** @class */ (function () {
|
|
38
|
+
function WebSocketBroker(uri, env) {
|
|
39
|
+
this.uri = uri;
|
|
40
|
+
this.env = env;
|
|
41
|
+
this.subscriptions = new Map();
|
|
42
|
+
this.reconnects = 0;
|
|
43
|
+
this.maxReconnects = 5;
|
|
44
|
+
this.connect();
|
|
45
|
+
}
|
|
46
|
+
WebSocketBroker.prototype.connect = function () {
|
|
47
|
+
try {
|
|
48
|
+
this.ws = new WebSocket(this.formatApiUri(this.uri));
|
|
49
|
+
this.ws.onopen = this.onOpen.bind(this);
|
|
50
|
+
this.ws.onmessage = this.onMessage.bind(this);
|
|
51
|
+
this.ws.onerror = this.onError.bind(this);
|
|
52
|
+
this.ws.onclose = this.onClose.bind(this);
|
|
53
|
+
}
|
|
54
|
+
catch (e) {
|
|
55
|
+
console.error(e);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
WebSocketBroker.prototype.formatApiUri = function (uri) {
|
|
59
|
+
var ws = document.location.protocol === "https:" ? "wss" : "ws";
|
|
60
|
+
return uri.replace(/^(https|http)/, ws) + "websocket";
|
|
61
|
+
};
|
|
62
|
+
WebSocketBroker.prototype.setUser = function (user) {
|
|
63
|
+
this.user = this.user ? this.user : user;
|
|
64
|
+
};
|
|
65
|
+
WebSocketBroker.prototype.onOpen = function (ev) {
|
|
66
|
+
if (this.env === api_1.Api.EEnv.DEV) {
|
|
67
|
+
console.log("MessageBroker connection opened: ", ev);
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
WebSocketBroker.prototype.onClose = function (ev) {
|
|
71
|
+
var _this = this;
|
|
72
|
+
if (this.env === api_1.Api.EEnv.DEV) {
|
|
73
|
+
console.log("MessageBroker connection closed, trying to reconnect: ", ev);
|
|
74
|
+
}
|
|
75
|
+
if (this.reconnects < this.maxReconnects) {
|
|
76
|
+
this.reconnects += 1;
|
|
77
|
+
setTimeout(function () { return _this.connect(); }, 5000 * this.reconnects);
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
WebSocketBroker.prototype.onMessage = function (ev) {
|
|
81
|
+
var _a;
|
|
82
|
+
var data = JSON.parse(ev.data);
|
|
83
|
+
(_a = this.subscriptions.get(data.topic)) === null || _a === void 0 ? void 0 : _a.forEach(function (cb) { return cb(data); });
|
|
84
|
+
};
|
|
85
|
+
WebSocketBroker.prototype.onError = function (ev) {
|
|
86
|
+
console.error("MessageBroker connection error: ", ev);
|
|
87
|
+
};
|
|
88
|
+
WebSocketBroker.prototype.addSubscriber = function (topic, callback) {
|
|
89
|
+
var subscribers = this.subscriptions.get(topic) || [];
|
|
90
|
+
if (subscribers.includes(callback)) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
subscribers.push(callback);
|
|
94
|
+
this.subscriptions.set(topic, subscribers);
|
|
95
|
+
if (this.env === api_1.Api.EEnv.DEV) {
|
|
96
|
+
console.groupCollapsed("MessageBroker subscription added: ", topic);
|
|
97
|
+
console.table(Array.from(this.subscriptions.entries()));
|
|
98
|
+
console.groupEnd();
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
/** Send message to server */
|
|
102
|
+
WebSocketBroker.prototype.sendMessage = function (msg) {
|
|
103
|
+
if (this.ws.readyState !== WebSocket.OPEN) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
if (!this.user) {
|
|
107
|
+
console.error("Set user first!");
|
|
108
|
+
}
|
|
109
|
+
try {
|
|
110
|
+
var outgoingMessage = __assign(__assign({}, msg), { user: this.user, time: Date.now() });
|
|
111
|
+
this.ws.send(JSON.stringify(outgoingMessage));
|
|
112
|
+
}
|
|
113
|
+
catch (e) {
|
|
114
|
+
console.warn(e);
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
Object.defineProperty(WebSocketBroker.prototype, "connected", {
|
|
118
|
+
get: function () {
|
|
119
|
+
return this.ws.readyState === WebSocket.OPEN;
|
|
120
|
+
},
|
|
121
|
+
enumerable: false,
|
|
122
|
+
configurable: true
|
|
123
|
+
});
|
|
124
|
+
/** Add a subscriber to a topic */
|
|
125
|
+
WebSocketBroker.prototype.subscribe = function (topic, callback, action) {
|
|
126
|
+
if (action === void 0) { action = Action.SUBSCRIBE; }
|
|
127
|
+
this.addSubscriber(topic, callback);
|
|
128
|
+
this.sendMessage({ topic: topic, action: action });
|
|
129
|
+
if (this.env === api_1.Api.EEnv.DEV) {
|
|
130
|
+
console.log("Subscribe [" + action + "] called for topic", topic);
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
/** Add a shadow subscriber to a topic */
|
|
134
|
+
WebSocketBroker.prototype.subscribeShadow = function (topic, callback) {
|
|
135
|
+
this.subscribe(topic, callback, Action.SUBSCRIBE_SHADOW);
|
|
136
|
+
};
|
|
137
|
+
/** Remove a subscriber from a topic */
|
|
138
|
+
WebSocketBroker.prototype.unsubscribe = function (topic, callback) {
|
|
139
|
+
var subscribers = this.subscriptions.get(topic) || [];
|
|
140
|
+
this.subscriptions.set(topic, subscribers.filter(function (fn) { return fn != callback; }));
|
|
141
|
+
this.sendMessage({ topic: topic, action: Action.UNSUBSCRIBE });
|
|
142
|
+
if (this.env === api_1.Api.EEnv.DEV) {
|
|
143
|
+
console.groupCollapsed("MessageBroker subscription removed: ", topic);
|
|
144
|
+
console.table(Array.from(this.subscriptions.entries()));
|
|
145
|
+
console.groupEnd();
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
WebSocketBroker.prototype.sendBroadcastMessage = function (msg) {
|
|
149
|
+
this.sendMessage(__assign(__assign({}, msg), { action: Action.BROADCAST }));
|
|
150
|
+
};
|
|
151
|
+
WebSocketBroker.prototype.requestTopicUsers = function (topic, callback) {
|
|
152
|
+
this.addSubscriber(topic, callback);
|
|
153
|
+
this.sendMessage({ topic: topic, action: Action.GET_TOPIC_SUBSCRIBERS });
|
|
154
|
+
};
|
|
155
|
+
return WebSocketBroker;
|
|
156
|
+
}());
|
|
157
|
+
MessageBroker.WebSocketBroker = WebSocketBroker;
|
|
158
|
+
})(MessageBroker = exports.MessageBroker || (exports.MessageBroker = {}));
|
|
159
|
+
//# sourceMappingURL=message-broker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-broker.js","sourceRoot":"","sources":["../../../src/server/message-broker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kCAAiC;AAEjC,IAAiB,aAAa,CAsM7B;AAtMD,WAAiB,aAAa;IAC1B,IAAY,MAMX;IAND,WAAY,MAAM;QACd,iCAAuB,CAAA;QACvB,8CAAoC,CAAA;QACpC,qCAA2B,CAAA;QAC3B,iCAAuB,CAAA;QACvB,uDAA6C,CAAA,CAAE,iDAAiD;IACpG,CAAC,EANW,MAAM,GAAN,oBAAM,KAAN,oBAAM,QAMjB;IAED,qDAAqD;IACrD,IAAY,KAOX;IAPD,WAAY,KAAK;QACb,wBAAe,CAAA;QACf,4BAAmB,CAAA;QACnB,4BAAmB,CAAA;QACnB,qCAA4B,CAAA;QAC5B,uCAA8B,CAAA;QAC9B,qCAA4B,CAAA;IAChC,CAAC,EAPW,KAAK,GAAL,mBAAK,KAAL,mBAAK,QAOhB;IA8CD,gDAAgD;IAChD;QAOI,yBAA2B,GAAW,EAAU,GAAY;YAAjC,QAAG,GAAH,GAAG,CAAQ;YAAU,QAAG,GAAH,GAAG,CAAS;YANpD,kBAAa,GAAG,IAAI,GAAG,EAA8C,CAAC;YAEtE,eAAU,GAAW,CAAC,CAAC;YACvB,kBAAa,GAAW,CAAC,CAAC;YAI9B,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;QAEO,iCAAO,GAAf;YACI,IAAI;gBACA,IAAI,CAAC,EAAE,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBACrD,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9C,IAAI,CAAC,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,CAAC,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC7C;YAAC,OAAO,CAAC,EAAE;gBACR,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpB;QACL,CAAC;QAEO,sCAAY,GAApB,UAAqB,GAAW;YAC5B,IAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YAClE,OAAO,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,GAAG,WAAW,CAAC;QAC1D,CAAC;QAEM,iCAAO,GAAd,UAAe,IAAY;YACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7C,CAAC;QAEO,gCAAM,GAAd,UAAe,EAAO;YAClB,IAAI,IAAI,CAAC,GAAG,KAAK,SAAG,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,EAAE,CAAC,CAAC;aACxD;QACL,CAAC;QAEO,iCAAO,GAAf,UAAgB,EAAO;YAAvB,iBASC;YARG,IAAI,IAAI,CAAC,GAAG,KAAK,SAAG,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,OAAO,CAAC,GAAG,CAAC,wDAAwD,EAAE,EAAE,CAAC,CAAC;aAC7E;YAED,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE;gBACtC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;gBACrB,UAAU,CAAC,cAAM,OAAA,KAAI,CAAC,OAAO,EAAE,EAAd,CAAc,EAAE,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;aAC5D;QACL,CAAC;QAEO,mCAAS,GAAjB,UAAkB,EAAO;;YACrB,IAAM,IAAI,GAAoB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAClD,MAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,0CAAE,OAAO,CAAC,UAAA,EAAE,IAAI,OAAA,EAAE,CAAC,IAAI,CAAC,EAAR,CAAQ,EAAE;QAChE,CAAC;QAEO,iCAAO,GAAf,UAAgB,EAAO;YACnB,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,EAAE,CAAC,CAAC;QAC1D,CAAC;QAEO,uCAAa,GAArB,UAAsB,KAAa,EAAE,QAAwC;YACzE,IAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAExD,IAAI,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gBAChC,OAAO;aACV;YAED,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAE3C,IAAI,IAAI,CAAC,GAAG,KAAK,SAAG,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,OAAO,CAAC,cAAc,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;gBACpE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACxD,OAAO,CAAC,QAAQ,EAAE,CAAC;aACtB;QACL,CAAC;QAED,6BAA6B;QACrB,qCAAW,GAAnB,UAAoB,GAAiB;YACjC,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE;gBACvC,OAAO;aACV;YAED,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBACZ,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;aACpC;YAED,IAAI;gBACA,IAAM,eAAe,yBAAwB,GAAG,KAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAC,CAAC;gBACrF,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;aACjD;YAAC,OAAO,CAAC,EAAE;gBACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACnB;QACL,CAAC;QAED,sBAAW,sCAAS;iBAApB;gBACI,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC;YACjD,CAAC;;;WAAA;QAED,kCAAkC;QAC3B,mCAAS,GAAhB,UAAiB,KAAa,EAAE,QAAwC,EAAE,MAAyB;YAAzB,uBAAA,EAAA,SAAS,MAAM,CAAC,SAAS;YAC/F,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,EAAC,KAAK,OAAA,EAAE,MAAM,QAAA,EAAC,CAAC,CAAC;YAElC,IAAI,IAAI,CAAC,GAAG,KAAK,SAAG,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,OAAO,CAAC,GAAG,CAAC,gBAAc,MAAM,uBAAoB,EAAE,KAAK,CAAC,CAAC;aAChE;QACL,CAAC;QAED,yCAAyC;QAClC,yCAAe,GAAtB,UAAuB,KAAa,EAAE,QAAwC;YAC1E,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC7D,CAAC;QAED,uCAAuC;QAChC,qCAAW,GAAlB,UAAmB,KAAa,EAAE,QAAwC;YACtE,IAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACxD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,UAAA,EAAE,IAAI,OAAA,EAAE,IAAI,QAAQ,EAAd,CAAc,CAAC,CAAC,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,EAAC,KAAK,OAAA,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,EAAC,CAAC,CAAC;YAEtD,IAAI,IAAI,CAAC,GAAG,KAAK,SAAG,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,OAAO,CAAC,cAAc,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;gBACtE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACxD,OAAO,CAAC,QAAQ,EAAE,CAAC;aACtB;QACL,CAAC;QAEM,8CAAoB,GAA3B,UAA4B,GAAwB;YAChD,IAAI,CAAC,WAAW,uBAAK,GAAG,KAAE,MAAM,EAAE,MAAM,CAAC,SAAS,IAAE,CAAC;QACzD,CAAC;QAEM,2CAAiB,GAAxB,UAAyB,KAAa,EAAE,QAAwC;YAC5E,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,EAAC,KAAK,OAAA,EAAE,MAAM,EAAE,MAAM,CAAC,qBAAqB,EAAC,CAAC,CAAC;QACpE,CAAC;QACL,sBAAC;IAAD,CAAC,AArID,IAqIC;IArIY,6BAAe,kBAqI3B,CAAA;AACL,CAAC,EAtMgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAsM7B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AbstractApi } from "./abstract-api";
|
|
2
2
|
import { Api as A } from "./api";
|
|
3
3
|
import { CamApi } from "./cam-api";
|
|
4
|
+
import { MessageBroker } from "../server/message-broker";
|
|
4
5
|
export declare namespace BruceApi {
|
|
5
6
|
interface IGetter {
|
|
6
7
|
env: A.EEnv;
|
|
@@ -17,6 +18,8 @@ export declare namespace BruceApi {
|
|
|
17
18
|
private env;
|
|
18
19
|
private loadProm;
|
|
19
20
|
private loadCancelled;
|
|
21
|
+
private messageBroker;
|
|
22
|
+
get MessageBroker(): MessageBroker.IBroker;
|
|
20
23
|
get Loading(): Promise<void>;
|
|
21
24
|
/**
|
|
22
25
|
* @param accountId
|
|
@@ -24,7 +27,12 @@ export declare namespace BruceApi {
|
|
|
24
27
|
* @param cam (Optional) cam instance to use for loading the regional base url.
|
|
25
28
|
*/
|
|
26
29
|
constructor(accountId: string, env?: A.Env, cam?: CamApi.Api);
|
|
27
|
-
|
|
30
|
+
/**
|
|
31
|
+
* Loads regional base url and sets up message broker.
|
|
32
|
+
* @param cam
|
|
33
|
+
* @returns
|
|
34
|
+
*/
|
|
35
|
+
private init;
|
|
28
36
|
/**
|
|
29
37
|
* Warning: This method does not wait for init to finish loading.
|
|
30
38
|
* This means the url could be changed once fully initialized.
|
|
@@ -44,6 +44,7 @@ export * from "./project/project-view";
|
|
|
44
44
|
export * from "./project/project-view-legacy-tile";
|
|
45
45
|
export * from "./project/project-view-tile";
|
|
46
46
|
export * from "./server/pending-action";
|
|
47
|
+
export * from "./server/message-broker";
|
|
47
48
|
export * from "./style/style";
|
|
48
49
|
export * from "./tileset/tileset-cad";
|
|
49
50
|
export * from "./tileset/tileset-entities-map-tiles";
|
|
@@ -11,9 +11,7 @@ export declare namespace ProjectViewTile {
|
|
|
11
11
|
interface IViewImagery extends ITileMeta {
|
|
12
12
|
tilesetId: MapTileId;
|
|
13
13
|
}
|
|
14
|
-
interface IBookmarkImagery {
|
|
15
|
-
tilesetId: MapTileId;
|
|
16
|
-
accountId: string;
|
|
14
|
+
interface IBookmarkImagery extends IViewImagery {
|
|
17
15
|
alpha?: number;
|
|
18
16
|
brightness?: number;
|
|
19
17
|
saturation?: number;
|
|
@@ -21,9 +19,7 @@ export declare namespace ProjectViewTile {
|
|
|
21
19
|
gamma?: number;
|
|
22
20
|
hue?: number;
|
|
23
21
|
}
|
|
24
|
-
interface IBookmarkTerrain {
|
|
25
|
-
tilesetId: TerrainTileId;
|
|
26
|
-
accountId: string;
|
|
22
|
+
interface IBookmarkTerrain extends IViewTerrain {
|
|
27
23
|
}
|
|
28
24
|
enum EDefaultImagery {
|
|
29
25
|
BingMapsAerial = "bingmapsaerial",
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { Api } from "../api/api";
|
|
2
|
+
export declare namespace MessageBroker {
|
|
3
|
+
export enum Action {
|
|
4
|
+
SUBSCRIBE = "subscribe",
|
|
5
|
+
SUBSCRIBE_SHADOW = "subscribeShadow",
|
|
6
|
+
UNSUBSCRIBE = "unsubscribe",
|
|
7
|
+
BROADCAST = "broadcast",
|
|
8
|
+
GET_TOPIC_SUBSCRIBERS = "getTopicSubscribers"
|
|
9
|
+
}
|
|
10
|
+
/** Events types any component may get from server */
|
|
11
|
+
export enum Event {
|
|
12
|
+
SAVED = "saved",
|
|
13
|
+
UPDATED = "updated",
|
|
14
|
+
DELETED = "deleted",
|
|
15
|
+
EDIT_STARTED = "editStarted",
|
|
16
|
+
EDIT_FINISHED = "editFinished",
|
|
17
|
+
USERS_UPDATE = "usersUpdate"
|
|
18
|
+
}
|
|
19
|
+
interface IMessageBase {
|
|
20
|
+
action: Action;
|
|
21
|
+
topic: string;
|
|
22
|
+
}
|
|
23
|
+
interface IBroadcastMessage extends IMessageBase {
|
|
24
|
+
action: Action.BROADCAST;
|
|
25
|
+
event: Event;
|
|
26
|
+
user: string;
|
|
27
|
+
}
|
|
28
|
+
export type SubscribeMessage = IMessageBase & {
|
|
29
|
+
action: Action.SUBSCRIBE | Action.SUBSCRIBE_SHADOW;
|
|
30
|
+
user: string;
|
|
31
|
+
};
|
|
32
|
+
export type UnsubscribeMessage = IMessageBase & {
|
|
33
|
+
action: Action.UNSUBSCRIBE;
|
|
34
|
+
};
|
|
35
|
+
export type GetTopicSubscribersMessage = IMessageBase & {
|
|
36
|
+
action: Action.GET_TOPIC_SUBSCRIBERS;
|
|
37
|
+
};
|
|
38
|
+
export type BroadcastMessageSaved = IBroadcastMessage & {
|
|
39
|
+
event: Event.SAVED;
|
|
40
|
+
};
|
|
41
|
+
export type BroadcastMessageUpdated = IBroadcastMessage & {
|
|
42
|
+
event: Event.UPDATED;
|
|
43
|
+
};
|
|
44
|
+
export type BroadcastMessageDeleted = IBroadcastMessage & {
|
|
45
|
+
event: Event.DELETED;
|
|
46
|
+
};
|
|
47
|
+
export type BroadcastMessageEditionStarted = IBroadcastMessage & {
|
|
48
|
+
event: Event.EDIT_STARTED;
|
|
49
|
+
};
|
|
50
|
+
export type BroadcastMessageEditionFinished = IBroadcastMessage & {
|
|
51
|
+
event: Event.EDIT_FINISHED;
|
|
52
|
+
};
|
|
53
|
+
export type BroadcastMessageUsersUpdate = IBroadcastMessage & {
|
|
54
|
+
event: Event.USERS_UPDATE;
|
|
55
|
+
data: string[];
|
|
56
|
+
};
|
|
57
|
+
export interface OutgoingMessageBase {
|
|
58
|
+
topic: string;
|
|
59
|
+
event?: Event;
|
|
60
|
+
}
|
|
61
|
+
export type OutgoingBroadcastMessage = IMessageBase & {
|
|
62
|
+
action: Action.BROADCAST;
|
|
63
|
+
time: number;
|
|
64
|
+
};
|
|
65
|
+
export type IncomingMessage = BroadcastMessageSaved | BroadcastMessageUpdated | BroadcastMessageDeleted | BroadcastMessageEditionStarted | BroadcastMessageEditionFinished | BroadcastMessageUsersUpdate;
|
|
66
|
+
export type OutgoingMessage = (SubscribeMessage | UnsubscribeMessage | GetTopicSubscribersMessage | OutgoingBroadcastMessage) & {
|
|
67
|
+
user: string;
|
|
68
|
+
time: number;
|
|
69
|
+
};
|
|
70
|
+
export interface IBroker {
|
|
71
|
+
subscribe: (topic: string, callback: (msg: IncomingMessage) => void) => void;
|
|
72
|
+
subscribeShadow: (topic: string, callback: (msg: IncomingMessage) => void) => void;
|
|
73
|
+
unsubscribe: (topic: string, callback: (msg: IncomingMessage) => void) => void;
|
|
74
|
+
sendBroadcastMessage: (msg: OutgoingMessageBase) => void;
|
|
75
|
+
connected: boolean;
|
|
76
|
+
}
|
|
77
|
+
/** Communicates with a server message broker */
|
|
78
|
+
export class WebSocketBroker implements IBroker {
|
|
79
|
+
private uri;
|
|
80
|
+
private env;
|
|
81
|
+
private subscriptions;
|
|
82
|
+
private ws;
|
|
83
|
+
private reconnects;
|
|
84
|
+
private maxReconnects;
|
|
85
|
+
private user;
|
|
86
|
+
constructor(uri: string, env: Api.Env);
|
|
87
|
+
private connect;
|
|
88
|
+
private formatApiUri;
|
|
89
|
+
setUser(user: string): void;
|
|
90
|
+
private onOpen;
|
|
91
|
+
private onClose;
|
|
92
|
+
private onMessage;
|
|
93
|
+
private onError;
|
|
94
|
+
private addSubscriber;
|
|
95
|
+
/** Send message to server */
|
|
96
|
+
private sendMessage;
|
|
97
|
+
get connected(): boolean;
|
|
98
|
+
/** Add a subscriber to a topic */
|
|
99
|
+
subscribe(topic: string, callback: (msg: IncomingMessage) => void, action?: Action): void;
|
|
100
|
+
/** Add a shadow subscriber to a topic */
|
|
101
|
+
subscribeShadow(topic: string, callback: (msg: IncomingMessage) => void): void;
|
|
102
|
+
/** Remove a subscriber from a topic */
|
|
103
|
+
unsubscribe(topic: string, callback: (msg: IncomingMessage) => void): void;
|
|
104
|
+
sendBroadcastMessage(msg: OutgoingMessageBase): void;
|
|
105
|
+
requestTopicUsers(topic: string, callback: (msg: IncomingMessage) => void): void;
|
|
106
|
+
}
|
|
107
|
+
export {};
|
|
108
|
+
}
|