@emuanalytics/flow-engine-client 1.3.137 → 1.3.153

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 (74) hide show
  1. package/dist/bundle.js +2 -2
  2. package/dist/bundle.js.map +4 -4
  3. package/dist/cjs/lib/__mocks__/client.js +57 -0
  4. package/dist/cjs/lib/__mocks__/client.js.map +1 -0
  5. package/dist/cjs/lib/api-interfaces.js.map +1 -1
  6. package/dist/cjs/lib/apikey.endpoints.js.map +1 -1
  7. package/dist/cjs/lib/appconfig.endpoints.js.map +1 -1
  8. package/dist/cjs/lib/application.endpoints.js.map +1 -1
  9. package/dist/cjs/lib/auth.edpoints.js.map +1 -1
  10. package/dist/cjs/lib/base.endpoints.js.map +1 -1
  11. package/dist/cjs/lib/client.js +2 -0
  12. package/dist/cjs/lib/client.js.map +1 -1
  13. package/dist/cjs/lib/database.endpoints.js.map +1 -1
  14. package/dist/cjs/lib/dataset.endpoints.js.map +1 -1
  15. package/dist/cjs/lib/errors.js.map +1 -1
  16. package/dist/cjs/lib/job.endpoints.js.map +1 -1
  17. package/dist/cjs/lib/maplayer.endpoints.js.map +1 -1
  18. package/dist/cjs/lib/pipeline-component.endpoints.js +37 -0
  19. package/dist/cjs/lib/pipeline-component.endpoints.js.map +1 -0
  20. package/dist/cjs/lib/pipeline-metric.endpoint.js +31 -0
  21. package/dist/cjs/lib/pipeline-metric.endpoint.js.map +1 -0
  22. package/dist/cjs/lib/pipeline.endpoints.js +87 -0
  23. package/dist/cjs/lib/pipeline.endpoints.js.map +1 -0
  24. package/dist/cjs/lib/style.endpoint.js.map +1 -1
  25. package/dist/cjs/lib/tile-source.endpoints.js.map +1 -1
  26. package/dist/cjs/lib/upload.endpoints.js +7 -7
  27. package/dist/cjs/lib/upload.endpoints.js.map +1 -1
  28. package/dist/cjs/lib/user.endpoints.js.map +1 -1
  29. package/dist/cjs/lib/web-socket-gateway.js +1 -1
  30. package/dist/cjs/lib/web-socket-gateway.js.map +1 -1
  31. package/dist/esm/lib/__mocks__/client.js +54 -0
  32. package/dist/esm/lib/__mocks__/client.js.map +1 -0
  33. package/dist/esm/lib/api-interfaces.js.map +1 -1
  34. package/dist/esm/lib/apikey.endpoints.js.map +1 -1
  35. package/dist/esm/lib/appconfig.endpoints.js.map +1 -1
  36. package/dist/esm/lib/application.endpoints.js.map +1 -1
  37. package/dist/esm/lib/auth.edpoints.js.map +1 -1
  38. package/dist/esm/lib/base.endpoints.js.map +1 -1
  39. package/dist/esm/lib/client.js +2 -0
  40. package/dist/esm/lib/client.js.map +1 -1
  41. package/dist/esm/lib/database.endpoints.js.map +1 -1
  42. package/dist/esm/lib/dataset.endpoints.js.map +1 -1
  43. package/dist/esm/lib/errors.js.map +1 -1
  44. package/dist/esm/lib/job.endpoints.js.map +1 -1
  45. package/dist/esm/lib/maplayer.endpoints.js.map +1 -1
  46. package/dist/esm/lib/pipeline-component.endpoints.js +34 -0
  47. package/dist/esm/lib/pipeline-component.endpoints.js.map +1 -0
  48. package/dist/esm/lib/pipeline-metric.endpoint.js +28 -0
  49. package/dist/esm/lib/pipeline-metric.endpoint.js.map +1 -0
  50. package/dist/esm/lib/pipeline.endpoints.js +84 -0
  51. package/dist/esm/lib/pipeline.endpoints.js.map +1 -0
  52. package/dist/esm/lib/style.endpoint.js.map +1 -1
  53. package/dist/esm/lib/tile-source.endpoints.js.map +1 -1
  54. package/dist/esm/lib/upload.endpoints.js +7 -7
  55. package/dist/esm/lib/upload.endpoints.js.map +1 -1
  56. package/dist/esm/lib/user.endpoints.js.map +1 -1
  57. package/dist/esm/lib/web-socket-gateway.js.map +1 -1
  58. package/dist/types/lib/__mocks__/client.d.ts +3 -0
  59. package/dist/types/lib/__mocks__/client.d.ts.map +1 -0
  60. package/dist/types/lib/api-interfaces.d.ts +46 -3
  61. package/dist/types/lib/api-interfaces.d.ts.map +1 -1
  62. package/dist/types/lib/client.d.ts +3 -1
  63. package/dist/types/lib/client.d.ts.map +1 -1
  64. package/dist/types/lib/dataset.endpoints.d.ts +1 -1
  65. package/dist/types/lib/dataset.endpoints.d.ts.map +1 -1
  66. package/dist/types/lib/pipeline-component.endpoints.d.ts +13 -0
  67. package/dist/types/lib/pipeline-component.endpoints.d.ts.map +1 -0
  68. package/dist/types/lib/pipeline-metric.endpoint.d.ts +10 -0
  69. package/dist/types/lib/pipeline-metric.endpoint.d.ts.map +1 -0
  70. package/dist/types/lib/pipeline.endpoints.d.ts +14 -0
  71. package/dist/types/lib/pipeline.endpoints.d.ts.map +1 -0
  72. package/dist/types/lib/web-socket-gateway.d.ts +6 -6
  73. package/dist/types/lib/web-socket-gateway.d.ts.map +1 -1
  74. package/package.json +7 -5
@@ -18,7 +18,7 @@ var WebSocketChannel;
18
18
  WebSocketChannel["System"] = "system";
19
19
  WebSocketChannel["AppConfig"] = "appconfig";
20
20
  WebSocketChannel["Dataset"] = "dataset/";
21
- })(WebSocketChannel = exports.WebSocketChannel || (exports.WebSocketChannel = {}));
21
+ })(WebSocketChannel || (exports.WebSocketChannel = WebSocketChannel = {}));
22
22
  var WebSocketGateway = /** @class */ (function () {
23
23
  function WebSocketGateway(client, options) {
24
24
  this.client = client;
@@ -1 +1 @@
1
- {"version":3,"file":"web-socket-gateway.js","sourceRoot":"","sources":["../../../src/lib/web-socket-gateway.ts"],"names":[],"mappings":"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","sourcesContent":["import { io, ManagerOptions, Socket, SocketOptions } from 'socket.io-client';\nimport { Client } from './client';\n\nexport enum WebSocketChannel {\n System = 'system',\n AppConfig = 'appconfig',\n Dataset = 'dataset/'\n}\n\nexport interface WebSocketPublishMessage {\n channel: string;\n messageType?: string;\n payload: unknown;\n}\n\nexport interface WebSocketSubscribeMessage {\n channel: string;\n}\n\nexport interface WebSocketErrorResponse {\n status: 'error';\n code: string;\n message: string;\n}\n\nexport interface WebSocketOkResponse {\n status: 'ok';\n}\n\nexport type WebSocketResponse = WebSocketOkResponse | WebSocketErrorResponse;\nexport type WebSocketManagerOptions = Partial<ManagerOptions & SocketOptions>;\nexport type WebSocketSubscribeCallback = (err: Error | null, msg?: WebSocketPublishMessage) => void;\nexport type WebSocketUnsubscribeCallback = (err: Error | null) => void;\nexport type WebSocketUnsubscriber = (cb?: WebSocketUnsubscribeCallback) => void;\n\nexport class WebSocketGateway {\n private connected = false;\n private subscribedChannels = new Set<string>();\n\n socket!: Socket;\n\n get isConnected(): boolean {\n return this.connected;\n }\n\n constructor(public readonly client: Client, private readonly options?: WebSocketManagerOptions) {}\n\n connect(): Promise<void> {\n if (this.isConnected) {\n return Promise.resolve();\n }\n\n return new Promise((resolve, reject) => {\n const socket = io(this.client.baseUrl, {\n ...this.options,\n autoConnect: false,\n auth: cb => {\n const authHeaders: Record<string, string> = {};\n\n if (this.client.apiKey) {\n authHeaders['x-api-key'] = this.client.apiKey;\n }\n\n if (this.client.accessToken) {\n authHeaders['x-socket-token'] = `Bearer ${this.client.accessToken}`;\n }\n\n cb(authHeaders);\n }\n });\n\n socket.on('connect', () => {\n this.client.debug(`Socket connected: ${socket.id}`);\n\n if (this.subscribedChannels.size) {\n this.subscribedChannels.forEach(channel => {\n socket.emit('subscribe', { channel }, (resp: WebSocketResponse) => {\n if (resp.status === 'error') {\n console.error(`Error re-subscribing to channel '${channel}`, resp);\n } else {\n this.client.debug(`Re-subscribed to channel '${channel}`);\n }\n });\n });\n }\n });\n\n socket.io.on('reconnect_attempt', (attempt: number) => {\n this.client.debug(`Socket reconnect attempt: ${attempt}`);\n });\n\n socket.io.on('reconnect_error', (error: Error) => {\n this.client.debug(`Socket reconnect error: ${error.message}`);\n });\n\n socket.io.on('reconnect_failed', () => {\n this.client.debug(`Socket reconnect failed`);\n });\n\n socket.io.on('reconnect', () => {\n this.client.debug(`Socket reconnected`);\n });\n\n socket.on('disconnect', reason => {\n this.client.debug(`Socket disconnected: ${reason}`);\n });\n\n socket.on('error', e => {\n this.client.debug(`Socket error: ${e.messaage}`);\n });\n\n this.socket = socket;\n\n this.connected = true;\n\n socket.on('connect', () => {\n resolve();\n });\n\n socket.connect();\n });\n }\n\n disconnect(): Promise<void> {\n if (!this.isConnected) {\n return Promise.resolve();\n }\n\n return new Promise(resolve => {\n this.socket.once('disconnect', () => {\n this.connected = false;\n resolve();\n });\n this.socket.disconnect();\n });\n }\n\n subscribe(channel: string, cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n if (!this.isConnected) {\n throw new Error('WebSocketGateway is not initialized');\n }\n\n this.client.debug(`Subscribing to channel '${channel}`);\n\n // Discriminating 'message' event listener that only responds to messages sent to 'channel'\n const listener = (msg: WebSocketPublishMessage) => {\n if (msg.channel === channel) {\n cb(null, msg);\n }\n };\n\n // Unsubscriber\n const unsubscribe = (unsubscribeCb?: WebSocketUnsubscribeCallback) => {\n this.socket.off('message', listener);\n this.unsubscribe(channel, unsubscribeCb);\n };\n\n // Subscribe and bind listener\n this.socket.emit('subscribe', { channel }, (resp: WebSocketResponse) => {\n if (resp.status === 'error') {\n this.client.debug(`Error subscribed to channel '${channel}`, resp);\n return cb(new Error(resp.message));\n }\n\n this.subscribedChannels.add(channel);\n this.client.debug(`Subscribed to channel '${channel}`);\n this.socket.on('message', listener);\n });\n\n return unsubscribe;\n }\n\n unsubscribe(channel: string, cb?: WebSocketUnsubscribeCallback) {\n if (!this.isConnected) {\n throw new Error('WebSocketGateway is not initialized');\n }\n\n this.client.debug(`Unsubscribing from channel '${channel}`);\n this.socket.emit('unsubscribe', { channel }, (resp: WebSocketResponse) => {\n if (resp.status === 'error') {\n this.client.debug(`Error unsubscribing from channel '${channel}`, resp);\n if (cb) {\n cb(new Error(resp.message));\n }\n } else {\n this.subscribedChannels.delete(channel);\n this.client.debug(`Unsubscribed from channel '${channel}`);\n if (cb) {\n cb(null);\n }\n }\n });\n }\n}\n"]}
1
+ {"version":3,"file":"web-socket-gateway.js","sourceRoot":"","sources":["../../../src/lib/web-socket-gateway.ts"],"names":[],"mappings":"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","sourcesContent":["import { io, ManagerOptions, Socket, SocketOptions } from 'socket.io-client';\nimport { Client } from './client';\n\nexport enum WebSocketChannel {\n System = 'system',\n AppConfig = 'appconfig',\n Dataset = 'dataset/'\n}\n\nexport interface WebSocketPublishMessage {\n channel: string;\n messageType?: string;\n payload: unknown;\n}\n\nexport interface WebSocketSubscribeMessage {\n channel: string;\n}\n\nexport interface WebSocketErrorResponse {\n status: 'error';\n code: string;\n message: string;\n}\n\nexport interface WebSocketOkResponse {\n status: 'ok';\n}\n\nexport type WebSocketResponse = WebSocketOkResponse | WebSocketErrorResponse;\nexport type WebSocketManagerOptions = Partial<ManagerOptions & SocketOptions>;\nexport type WebSocketSubscribeCallback = (err: Error | null, msg?: WebSocketPublishMessage) => void;\nexport type WebSocketUnsubscribeCallback = (err: Error | null) => void;\nexport type WebSocketUnsubscriber = (cb?: WebSocketUnsubscribeCallback) => void;\n\nexport class WebSocketGateway {\n private connected = false;\n private subscribedChannels = new Set<string>();\n\n socket!: Socket;\n\n get isConnected(): boolean {\n return this.connected;\n }\n\n constructor(public readonly client: Client, private readonly options?: WebSocketManagerOptions) {}\n\n connect(): Promise<void> {\n if (this.isConnected) {\n return Promise.resolve();\n }\n\n return new Promise((resolve, reject) => {\n const socket = io(this.client.baseUrl, {\n ...this.options,\n autoConnect: false,\n auth: cb => {\n const authHeaders: Record<string, string> = {};\n\n if (this.client.apiKey) {\n authHeaders['x-api-key'] = this.client.apiKey;\n }\n\n if (this.client.accessToken) {\n authHeaders['x-socket-token'] = `Bearer ${this.client.accessToken}`;\n }\n\n cb(authHeaders);\n }\n });\n\n socket.on('connect', () => {\n this.client.debug(`Socket connected: ${socket.id}`);\n\n if (this.subscribedChannels.size) {\n this.subscribedChannels.forEach(channel => {\n socket.emit('subscribe', { channel }, (resp: WebSocketResponse) => {\n if (resp.status === 'error') {\n console.error(`Error re-subscribing to channel '${channel}`, resp);\n } else {\n this.client.debug(`Re-subscribed to channel '${channel}`);\n }\n });\n });\n }\n });\n\n socket.io.on('reconnect_attempt', (attempt: number) => {\n this.client.debug(`Socket reconnect attempt: ${attempt}`);\n });\n\n socket.io.on('reconnect_error', (error: Error) => {\n this.client.debug(`Socket reconnect error: ${error.message}`);\n });\n\n socket.io.on('reconnect_failed', () => {\n this.client.debug(`Socket reconnect failed`);\n });\n\n socket.io.on('reconnect', () => {\n this.client.debug(`Socket reconnected`);\n });\n\n socket.on('disconnect', reason => {\n this.client.debug(`Socket disconnected: ${reason}`);\n });\n\n socket.on('error', e => {\n this.client.debug(`Socket error: ${e.messaage}`);\n });\n\n this.socket = socket;\n\n this.connected = true;\n\n socket.on('connect', () => {\n resolve();\n });\n\n socket.connect();\n });\n }\n\n disconnect(): Promise<void> {\n if (!this.isConnected) {\n return Promise.resolve();\n }\n\n return new Promise(resolve => {\n this.socket.once('disconnect', () => {\n this.connected = false;\n resolve();\n });\n this.socket.disconnect();\n });\n }\n\n subscribe(channel: string, cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n if (!this.isConnected) {\n throw new Error('WebSocketGateway is not initialized');\n }\n\n this.client.debug(`Subscribing to channel '${channel}`);\n\n // Discriminating 'message' event listener that only responds to messages sent to 'channel'\n const listener = (msg: WebSocketPublishMessage) => {\n if (msg.channel === channel) {\n cb(null, msg);\n }\n };\n\n // Unsubscriber\n const unsubscribe = (unsubscribeCb?: WebSocketUnsubscribeCallback) => {\n this.socket.off('message', listener);\n this.unsubscribe(channel, unsubscribeCb);\n };\n\n // Subscribe and bind listener\n this.socket.emit('subscribe', { channel }, (resp: WebSocketResponse) => {\n if (resp.status === 'error') {\n this.client.debug(`Error subscribed to channel '${channel}`, resp);\n return cb(new Error(resp.message));\n }\n\n this.subscribedChannels.add(channel);\n this.client.debug(`Subscribed to channel '${channel}`);\n this.socket.on('message', listener);\n });\n\n return unsubscribe;\n }\n\n unsubscribe(channel: string, cb?: WebSocketUnsubscribeCallback) {\n if (!this.isConnected) {\n throw new Error('WebSocketGateway is not initialized');\n }\n\n this.client.debug(`Unsubscribing from channel '${channel}`);\n this.socket.emit('unsubscribe', { channel }, (resp: WebSocketResponse) => {\n if (resp.status === 'error') {\n this.client.debug(`Error unsubscribing from channel '${channel}`, resp);\n if (cb) {\n cb(new Error(resp.message));\n }\n } else {\n this.subscribedChannels.delete(channel);\n this.client.debug(`Unsubscribed from channel '${channel}`);\n if (cb) {\n cb(null);\n }\n }\n });\n }\n}\n"]}
@@ -0,0 +1,54 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { Client as MockClient } from '../client';
13
+ MockClient.prototype._get = function (path, options) {
14
+ var _a;
15
+ if (options === void 0) { options = {}; }
16
+ // Move apiKey from params
17
+ if ((_a = options.params) === null || _a === void 0 ? void 0 : _a.apiKey) {
18
+ options.apiKey = options.params.apiKey;
19
+ delete options.params.apiKey;
20
+ }
21
+ return __assign(__assign({ method: 'get', url: path }, options), this.headers(options));
22
+ };
23
+ MockClient.prototype._post = function (path, data, options) {
24
+ var _a;
25
+ if (options === void 0) { options = {}; }
26
+ // Move apiKey from params
27
+ if ((_a = options.params) === null || _a === void 0 ? void 0 : _a.apiKey) {
28
+ options.apiKey = options.params.apiKey;
29
+ delete options.params.apiKey;
30
+ }
31
+ return __assign(__assign({ method: 'post', url: path, data: data }, options), this.headers(options));
32
+ };
33
+ MockClient.prototype._put = function (path, data, options) {
34
+ var _a;
35
+ if (options === void 0) { options = {}; }
36
+ // Move apiKey from params
37
+ if ((_a = options.params) === null || _a === void 0 ? void 0 : _a.apiKey) {
38
+ options.apiKey = options.params.apiKey;
39
+ delete options.params.apiKey;
40
+ }
41
+ return __assign(__assign({ method: 'put', url: path, data: data }, options), this.headers(options));
42
+ };
43
+ MockClient.prototype._delete = function (path, options) {
44
+ var _a;
45
+ if (options === void 0) { options = {}; }
46
+ // Move apiKey from params
47
+ if ((_a = options.params) === null || _a === void 0 ? void 0 : _a.apiKey) {
48
+ options.apiKey = options.params.apiKey;
49
+ delete options.params.apiKey;
50
+ }
51
+ return __assign(__assign({ method: 'delete', url: path }, options), this.headers(options));
52
+ };
53
+ export var Client = MockClient;
54
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/lib/__mocks__/client.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC;AAEjD,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,UAAS,IAAY,EAAE,OAAiB;;IAAjB,wBAAA,EAAA,YAAiB;IAClE,0BAA0B;IAC1B,IAAI,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QACvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,2BACE,MAAM,EAAE,KAAK,EACb,GAAG,EAAE,IAAI,IACN,OAAO,GACN,IAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EACjC;AACJ,CAAC,CAAC;AAEF,UAAU,CAAC,SAAS,CAAC,KAAK,GAAG,UAAS,IAAY,EAAE,IAAY,EAAE,OAAiB;;IAAjB,wBAAA,EAAA,YAAiB;IACjF,0BAA0B;IAC1B,IAAI,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QACvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,2BACE,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,IAAI,EACT,IAAI,MAAA,IACD,OAAO,GACN,IAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EACjC;AACJ,CAAC,CAAC;AAEF,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,UAAS,IAAY,EAAE,IAAY,EAAE,OAAiB;;IAAjB,wBAAA,EAAA,YAAiB;IAChF,0BAA0B;IAC1B,IAAI,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QACvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,2BACE,MAAM,EAAE,KAAK,EACb,GAAG,EAAE,IAAI,EACT,IAAI,MAAA,IACD,OAAO,GACN,IAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EACjC;AACJ,CAAC,CAAC;AAEF,UAAU,CAAC,SAAS,CAAC,OAAO,GAAG,UAAS,IAAY,EAAE,OAAiB;;IAAjB,wBAAA,EAAA,YAAiB;IACrE,0BAA0B;IAC1B,IAAI,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QACvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,2BACE,MAAM,EAAE,QAAQ,EAChB,GAAG,EAAE,IAAI,IACN,OAAO,GACN,IAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EACjC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,MAAM,GAAG,UAAU,CAAC","sourcesContent":["import { Client as MockClient } from '../client';\n\nMockClient.prototype._get = function(path: string, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return {\n method: 'get',\n url: path,\n ...options,\n ...(this as any).headers(options)\n };\n};\n\nMockClient.prototype._post = function(path: string, data: object, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return {\n method: 'post',\n url: path,\n data,\n ...options,\n ...(this as any).headers(options)\n };\n};\n\nMockClient.prototype._put = function(path: string, data: object, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return {\n method: 'put',\n url: path,\n data,\n ...options,\n ...(this as any).headers(options)\n };\n};\n\nMockClient.prototype._delete = function(path: string, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return {\n method: 'delete',\n url: path,\n ...options,\n ...(this as any).headers(options)\n };\n};\n\nexport const Client = MockClient;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"api-interfaces.js","sourceRoot":"","sources":["../../../src/lib/api-interfaces.ts"],"names":[],"mappings":"AAAA;;GAEG","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nexport interface IQuery {\n filter?: { [key: string]: any };\n attributes?: string | string[];\n join?: string | string[];\n limit?: number;\n offset?: number;\n sort?: string | string[];\n}\n\nexport interface IBaseResource {\n id: string;\n}\n\nexport interface IMetadata {\n [key: string]: any;\n}\n\nexport interface IPermissions {\n [key: string]: { [key: string]: string };\n}\n\nexport interface IApiKey extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n id: string;\n description: string;\n type: 'app' | 'master';\n permissions: IPermissions;\n metadata: IMetadata;\n userId: string;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface IApplication extends IBaseResource {\n id: string;\n name: string;\n databases?: IDatabase[];\n description: string;\n contact: string;\n metadata: IMetadata;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface IAppConfig extends IBaseResource {\n applicationId: string;\n config: object;\n}\n\nexport interface IDatabase extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n id: string;\n type: string;\n name: string;\n default: boolean;\n description: string;\n host: string;\n port: number;\n user: string;\n password: string;\n db: string;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface IDatasetAttribute {\n attribute: string;\n type: string;\n dbType: string;\n isGeometry?: boolean;\n srid?: number;\n extent?: number[];\n extentLngLat?: number[];\n primaryKey?: boolean;\n default?: string;\n nullable?: boolean;\n description?: string;\n}\n\nexport interface IDataset extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n id: string;\n type: 'table' | 'sql';\n source: string;\n name: string;\n databaseId: string;\n database?: IDatabase;\n description: string;\n bytes: number;\n metadata: IMetadata;\n ownerId: string;\n createdAt: string;\n updatedAt: string;\n attributes: IDatasetAttribute[];\n options?: { [key: string]: any };\n}\nexport interface IMapLayer extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n ownerId: string;\n createdAt: string;\n updatedAt: string;\n\n id: string;\n name: string;\n description: string;\n layerSpec: any;\n type: string;\n group: string;\n metadata: IMetadata;\n}\n\nexport type FileExportFormat = 'geojson' | 'gpkg' | 'shapefile';\n\nexport interface ITileSource extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n metadata: IMetadata;\n id: string;\n type: string;\n source: string;\n attribution: string;\n minZoom: number;\n maxZoom: number;\n headers: { [key: string]: string };\n extentLngLat: number[];\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface IUpload extends IBaseResource {\n id: string;\n fileName: string;\n path: string;\n options: {\n name: string;\n description?: string;\n datasetId: string;\n attribution?: string;\n schema?: string;\n };\n size: number;\n status: string;\n error: { message: string; stdout: string; stderr: string };\n applicationId: string;\n application?: IApplication;\n ownerId: string;\n updatedAt: string;\n createdAt: string;\n}\n\nexport interface IUser extends IBaseResource {\n [key: string]: any;\n}\n\nexport interface IStyle extends IBaseResource {\n [key: string]: any;\n}\n\nexport interface ITileSpec {\n [key: string]: any;\n}\n\nexport interface IConfig {\n version: {\n tag: string;\n hash: string;\n timestamp: number;\n };\n}\n\nexport interface ILoginResponse {\n accessToken: string;\n refreshToken: string;\n}\n\nexport interface ITokenRefreshResponse {\n accessToken: string;\n}\n\nexport interface UsersMeResponse {\n applicationId: string;\n email: string;\n firstName: string;\n id: string;\n lastName: string;\n metadata: object;\n roles: string[];\n}\n\n/* Job resource */\nexport type JobStatus = 'pending' | 'processing' | 'done' | 'cancelled' | 'error';\n\nexport interface IJob {\n id: string;\n applicationId: string;\n ownerId?: string;\n metadata: IMetadata;\n type: string;\n name?: string;\n description?: string;\n params: any;\n status: JobStatus;\n error?: object;\n progress?: number;\n progressText?: string;\n datasetId?: string;\n createdAt: string;\n updatedAt: string;\n}\nexport interface IJobStatus {\n status?: JobStatus;\n error?: object;\n progress?: number;\n progressText?: string;\n}\n\nexport interface IJobSubmission {\n type: string;\n name?: string;\n description?: string;\n params: any;\n}\n\nexport interface IJobRequest {\n type: string;\n}\n\nexport type IngestAction = 'insert' | 'upsert' | 'delete';\nexport interface IIngestMessage {\n datasetId: string;\n action: IngestAction;\n data: any;\n}\n"]}
1
+ {"version":3,"file":"api-interfaces.js","sourceRoot":"","sources":["../../../src/lib/api-interfaces.ts"],"names":[],"mappings":"AAAA;;GAEG","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nexport interface IQuery {\n filter?: { [key: string]: any };\n attributes?: string | string[];\n join?: string | string[];\n limit?: number;\n offset?: number;\n sort?: string | string[];\n}\n\nexport interface IBaseResource {\n id: string;\n}\n\nexport interface IMetadata {\n [key: string]: any;\n}\n\nexport interface IPermissions {\n [key: string]: { [key: string]: string };\n}\n\nexport interface IApiKey extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n id: string;\n description: string;\n type: 'app' | 'master';\n permissions: IPermissions;\n metadata: IMetadata;\n userId: string;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface IApplication extends IBaseResource {\n id: string;\n name: string;\n databases?: IDatabase[];\n description: string;\n contact: string;\n metadata: IMetadata;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface IAppConfig extends IBaseResource {\n applicationId: string;\n config: object;\n}\n\nexport interface IDatabase extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n id: string;\n type: string;\n name: string;\n default: boolean;\n description: string;\n host: string;\n port: number;\n user: string;\n password: string;\n db: string;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface IDatasetAttribute {\n attribute: string;\n type: string;\n dbType: string;\n isGeometry?: boolean;\n srid?: number;\n extent?: number[];\n extentLngLat?: number[];\n primaryKey?: boolean;\n default?: string;\n nullable?: boolean;\n description?: string;\n}\n\nexport interface IDataset extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n id: string;\n type: 'table' | 'sql';\n source: string;\n name: string;\n databaseId: string;\n database?: IDatabase;\n description: string;\n bytes: number;\n metadata: IMetadata;\n ownerId: string;\n createdAt: string;\n updatedAt: string;\n attributes: IDatasetAttribute[];\n options?: { [key: string]: any };\n}\nexport interface IMapLayer extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n ownerId: string;\n createdAt: string;\n updatedAt: string;\n\n id: string;\n name: string;\n description: string;\n layerSpec: any;\n type: string;\n group: string;\n metadata: IMetadata;\n}\n\nexport type FileExportFormat = 'geojson' | 'gpkg' | 'shapefile';\n\nexport interface ITileSource extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n metadata: IMetadata;\n id: string;\n type: string;\n source: string;\n attribution: string;\n minZoom: number;\n maxZoom: number;\n headers: { [key: string]: string };\n extentLngLat: number[];\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface IUpload extends IBaseResource {\n id: string;\n fileName: string;\n path: string;\n options: {\n name: string;\n description?: string;\n datasetId: string;\n attribution?: string;\n schema?: string;\n };\n size: number;\n status: string;\n error: { message: string; stdout: string; stderr: string };\n applicationId: string;\n application?: IApplication;\n ownerId: string;\n updatedAt: string;\n createdAt: string;\n}\n\nexport interface IUser extends IBaseResource {\n [key: string]: any;\n}\n\nexport interface IStyle extends IBaseResource {\n [key: string]: any;\n}\n\nexport interface ITileSpec {\n [key: string]: any;\n}\n\nexport interface IConfig {\n version: {\n tag: string;\n hash: string;\n timestamp: number;\n };\n}\n\nexport interface ILoginResponse {\n accessToken: string;\n refreshToken: string;\n}\n\nexport interface ITokenRefreshResponse {\n accessToken: string;\n}\n\nexport interface UsersMeResponse {\n applicationId: string;\n email: string;\n firstName: string;\n id: string;\n lastName: string;\n metadata: object;\n roles: string[];\n}\n\n/* Job resource */\nexport type JobStatus = 'pending' | 'processing' | 'done' | 'cancelled' | 'error';\n\nexport interface IJob {\n id: string;\n applicationId: string;\n ownerId?: string;\n metadata: IMetadata;\n type: string;\n name?: string;\n description?: string;\n params: any;\n status: JobStatus;\n error?: object;\n progress?: number;\n progressText?: string;\n datasetId?: string;\n createdAt: string;\n updatedAt: string;\n}\nexport interface IJobStatus {\n status?: JobStatus;\n error?: object;\n progress?: number;\n progressText?: string;\n}\n\nexport interface IJobSubmission {\n type: string;\n name?: string;\n description?: string;\n params: any;\n}\n\nexport interface IJobRequest {\n type: string;\n}\n\nexport type IngestAction = 'insert' | 'upsert' | 'delete';\nexport interface IIngestMessage {\n datasetId: string;\n action: IngestAction;\n data: any;\n}\n\nexport interface IPipeline extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n id: string;\n environment: string;\n description: string;\n config: Record<string, any>;\n type: 'app' | 'master';\n metadata: IMetadata;\n startedAt: string;\n heartbeatAt: string;\n createdAt: string;\n updatedAt: string;\n components: IPipelineComponent[];\n}\n\nexport interface IPipelineComponent extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n pipelineId: string;\n pipeline?: IPipeline;\n id: string;\n description: string;\n config: Record<string, any>;\n type: 'app' | 'master';\n metadata: IMetadata;\n createdAt: string;\n updatedAt: string;\n metrics: IPipelineMetric[];\n}\n\nexport interface IPipelineMetric extends IBaseResource {\n applicationId: string;\n application?: IApplication;\n pipelineId: string;\n pipeline?: IPipeline;\n componentId: string;\n component?: IPipelineComponent;\n name: string;\n timestamp: string;\n value: number;\n labels: Record<string, string>;\n createdAt: string;\n updatedAt: string;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"apikey.endpoints.js","sourceRoot":"","sources":["../../../src/lib/apikey.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAAqC,mCAAsB;IACzD,yBAAY,MAAc;eACxB,kBAAM,MAAM,EAAE,SAAS,CAAC;IAC1B,CAAC;IACH,sBAAC;AAAD,CAAC,AAJD,CAAqC,aAAa,GAIjD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { IApiKey } from './api-interfaces';\n\nexport class ApiKeyEndpoints extends BaseEndpoints<IApiKey> {\n constructor(client: Client) {\n super(client, 'apikeys');\n }\n}\n"]}
1
+ {"version":3,"file":"apikey.endpoints.js","sourceRoot":"","sources":["../../../src/lib/apikey.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAAqC,mCAAsB;IACzD,yBAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,SAAS,CAAC,SAAC;IAC3B,CAAC;IACH,sBAAC;AAAD,CAAC,AAJD,CAAqC,aAAa,GAIjD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { IApiKey } from './api-interfaces';\n\nexport class ApiKeyEndpoints extends BaseEndpoints<IApiKey> {\n constructor(client: Client) {\n super(client, 'apikeys');\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"appconfig.endpoints.js","sourceRoot":"","sources":["../../../src/lib/appconfig.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;IACE,4BAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C,sBAAY,gDAAgB;aAA5B;YACE,OAAO,mBAAmB,CAAC;QAC7B,CAAC;;;OAAA;IAED,gCAAG,GAAH,UAAI,IAAa,EAAE,MAAgC;QAAhC,uBAAA,EAAA,WAAgC;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAG,IAAI,CAAC,gBAAgB,cAAI,IAAI,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;IACzG,CAAC;IAED,gCAAG,GAAH,UAAI,IAAmB,EAAE,KAAU,EAAE,MAAgC;QAAhC,uBAAA,EAAA,WAAgC;QACnE,kCAAkC;QAClC,IACE,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,KAAK,KAAK,SAAS;YAC1B,KAAK,KAAK,IAAI;YACd,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EACpB;YACA,KAAK,GAAG,EAAE,KAAK,OAAA,EAAE,CAAC;SACnB;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAG,IAAI,CAAC,gBAAgB,cAAI,IAAI,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE;YAChG,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,MAAM,QAAA;SACP,CAAC,CAAC;IACL,CAAC;IAED,mCAAM,GAAN,UAAO,IAAY,EAAE,MAAgC;QAAhC,uBAAA,EAAA,WAAgC;QACnD,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAG,IAAI,CAAC,gBAAgB,cAAI,IAAI,CAAE,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,sCAAS,GAAT,UAAU,EAA8B;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACH,yBAAC;AAAD,CAAC,AAtCD,IAsCC","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { WebSocketSubscribeCallback, WebSocketUnsubscriber } from './web-socket-gateway';\n\nexport class AppConfigEndpoints {\n constructor(private readonly client: Client) {}\n\n private get resourceEndpoint(): string {\n return `/api/v1/appconfig`;\n }\n\n get(path?: string, params: Record<string, any> = {}): Promise<any> {\n return this.client._get(path ? `${this.resourceEndpoint}/${path}` : this.resourceEndpoint, { params });\n }\n\n set(path: string | null, value: any, params: Record<string, any> = {}): Promise<any> {\n // Wrap primitives in value object\n if (\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean' ||\n value === null ||\n Array.isArray(value)\n ) {\n value = { value };\n }\n\n return this.client._put(path ? `${this.resourceEndpoint}/${path}` : this.resourceEndpoint, value, {\n headers: {\n 'Content-Type': 'application/json'\n },\n params\n });\n }\n\n delete(path: string, params: Record<string, any> = {}): Promise<any> {\n return this.client._delete(`${this.resourceEndpoint}/${path}`, { params });\n }\n\n subscribe(cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n return this.client._subscribe('appconfig', cb);\n }\n}\n"]}
1
+ {"version":3,"file":"appconfig.endpoints.js","sourceRoot":"","sources":["../../../src/lib/appconfig.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;IACE,4BAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C,sBAAY,gDAAgB;aAA5B;YACE,OAAO,mBAAmB,CAAC;QAC7B,CAAC;;;OAAA;IAED,gCAAG,GAAH,UAAI,IAAa,EAAE,MAAgC;QAAhC,uBAAA,EAAA,WAAgC;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAG,IAAI,CAAC,gBAAgB,cAAI,IAAI,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;IACzG,CAAC;IAED,gCAAG,GAAH,UAAI,IAAmB,EAAE,KAAU,EAAE,MAAgC;QAAhC,uBAAA,EAAA,WAAgC;QACnE,kCAAkC;QAClC,IACE,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,KAAK,KAAK,SAAS;YAC1B,KAAK,KAAK,IAAI;YACd,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EACpB,CAAC;YACD,KAAK,GAAG,EAAE,KAAK,OAAA,EAAE,CAAC;QACpB,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAG,IAAI,CAAC,gBAAgB,cAAI,IAAI,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE;YAChG,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,MAAM,QAAA;SACP,CAAC,CAAC;IACL,CAAC;IAED,mCAAM,GAAN,UAAO,IAAY,EAAE,MAAgC;QAAhC,uBAAA,EAAA,WAAgC;QACnD,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAG,IAAI,CAAC,gBAAgB,cAAI,IAAI,CAAE,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,sCAAS,GAAT,UAAU,EAA8B;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACH,yBAAC;AAAD,CAAC,AAtCD,IAsCC","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { WebSocketSubscribeCallback, WebSocketUnsubscriber } from './web-socket-gateway';\n\nexport class AppConfigEndpoints {\n constructor(private readonly client: Client) {}\n\n private get resourceEndpoint(): string {\n return `/api/v1/appconfig`;\n }\n\n get(path?: string, params: Record<string, any> = {}): Promise<any> {\n return this.client._get(path ? `${this.resourceEndpoint}/${path}` : this.resourceEndpoint, { params });\n }\n\n set(path: string | null, value: any, params: Record<string, any> = {}): Promise<any> {\n // Wrap primitives in value object\n if (\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean' ||\n value === null ||\n Array.isArray(value)\n ) {\n value = { value };\n }\n\n return this.client._put(path ? `${this.resourceEndpoint}/${path}` : this.resourceEndpoint, value, {\n headers: {\n 'Content-Type': 'application/json'\n },\n params\n });\n }\n\n delete(path: string, params: Record<string, any> = {}): Promise<any> {\n return this.client._delete(`${this.resourceEndpoint}/${path}`, { params });\n }\n\n subscribe(cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n return this.client._subscribe('appconfig', cb);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"application.endpoints.js","sourceRoot":"","sources":["../../../src/lib/application.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAA0C,wCAA2B;IACnE,8BAAY,MAAc;eACxB,kBAAM,MAAM,EAAE,cAAc,CAAC;IAC/B,CAAC;IACH,2BAAC;AAAD,CAAC,AAJD,CAA0C,aAAa,GAItD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { IApplication } from './api-interfaces';\n\nexport class ApplicationEndpoints extends BaseEndpoints<IApplication> {\n constructor(client: Client) {\n super(client, 'applications');\n }\n}\n"]}
1
+ {"version":3,"file":"application.endpoints.js","sourceRoot":"","sources":["../../../src/lib/application.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAA0C,wCAA2B;IACnE,8BAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,cAAc,CAAC,SAAC;IAChC,CAAC;IACH,2BAAC;AAAD,CAAC,AAJD,CAA0C,aAAa,GAItD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { IApplication } from './api-interfaces';\n\nexport class ApplicationEndpoints extends BaseEndpoints<IApplication> {\n constructor(client: Client) {\n super(client, 'applications');\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.edpoints.js","sourceRoot":"","sources":["../../../src/lib/auth.edpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;IAGE,uBAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAF3C,UAAK,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEQ,CAAC;IAE/C,6BAAK,GAAL,UAAM,KAAa,EAAE,QAAgB,EAAE,aAAsB;QAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,aAAa,eAAA,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,8BAAM,GAAN,UAAO,WAAmB,EAAE,YAAoB;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CACtB,qBAAqB,EACrB,EAAE,YAAY,cAAA,EAAE,EAChB;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,iBAAU,WAAW,CAAE,EAAE;SACpD,CACF,CAAC;IACJ,CAAC;IAED,+BAAO,GAAP,UAAQ,YAAoB,EAAE,aAAqB;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,YAAY,cAAA,EAAE,aAAa,eAAA,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,sCAAc,GAAd,UAAe,QAAgB,EAAE,WAAmB,EAAE,KAAa;QACjE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CACtB,6BAA6B,EAC7B;YACE,QAAQ,UAAA;YACR,WAAW,aAAA;SACZ,EACD;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,iBAAU,KAAK,CAAE,EAAE;SAC9C,CACF,CAAC;IACJ,CAAC;IAED,8BAAM,GAAN,UACE,SAAiB,EACjB,QAAgB,EAChB,KAAa,EACb,QAAgB,EAChB,aAAqB,EACrB,UAAkB,EAClB,WAAoB;QAEpB,yDAAyD;QACzD,IAAI,CAAC,WAAW,EAAE;YAChB,WAAW,GAAG,UAAU,CAAC;YACzB,UAAU,GAAG,UAAG,IAAI,CAAC,MAAM,CAAC,OAAO,+BAA4B,CAAC;SACjE;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE;YAC9C,SAAS,WAAA;YACT,QAAQ,UAAA;YACR,KAAK,OAAA;YACL,QAAQ,UAAA;YACR,aAAa,eAAA;YACb,UAAU,YAAA;YACV,WAAW,aAAA;SACZ,CAAC,CAAC;IACL,CAAC;IAED,qCAAa,GAAb,UAAc,KAAa,EAAE,KAAa,EAAE,QAAiB;QAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,OAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,EAAE,CAAC,CAAC;IAChG,CAAC;IAED,4CAAoB,GAApB,UAAqB,KAAa,EAAE,aAAqB,EAAE,WAAmB;QAC5E,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAE,KAAK,OAAA,EAAE,aAAa,eAAA,EAAE,WAAW,aAAA,EAAE,CAAC,CAAC;IACvG,CAAC;IAED,qCAAa,GAAb,UAAc,KAAa,EAAE,QAAgB,EAAE,aAAqB,EAAE,KAAa;QACjF,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,aAAa,eAAA,EAAE,KAAK,OAAA,EAAE,CAAC,CAAC;IACpG,CAAC;IACH,oBAAC;AAAD,CAAC,AAzED,IAyEC","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { ILoginResponse, ITokenRefreshResponse } from './api-interfaces';\nimport { Client } from './client';\nimport { UserEndpoint } from './user.endpoints';\n\nexport class AuthEndpoints {\n users = new UserEndpoint(this.client);\n\n constructor(private readonly client: Client) {}\n\n login(email: string, password: string, applicationId?: string): Promise<ILoginResponse> {\n return this.client._post('/api/v1/auth/login', { email, password, applicationId });\n }\n\n logout(accessToken: string, refreshToken: string): Promise<void> {\n return this.client._post(\n '/api/v1/auth/logout',\n { refreshToken },\n {\n headers: { Authorization: `Bearer ${accessToken}` }\n }\n );\n }\n\n refresh(refreshToken: string, applicationId: string): Promise<ITokenRefreshResponse> {\n return this.client._post('/api/v1/auth/refresh', { refreshToken, applicationId });\n }\n\n changePassword(password: string, newPassword: string, token: string): Promise<void> {\n return this.client._post(\n '/api/v1/auth/changepassword',\n {\n password,\n newPassword\n },\n {\n headers: { Authorization: `Bearer ${token}` }\n }\n );\n }\n\n signUp(\n firstName: string,\n lastName: string,\n email: string,\n password: string,\n applicationId: string,\n confirmUrl: string,\n redirectUrl?: string\n ): Promise<void> {\n // Support legacy signature, which was missing confirmUrl\n if (!redirectUrl) {\n redirectUrl = confirmUrl;\n confirmUrl = `${this.client.baseUrl}/api/v1/auth/confirmsignup`;\n }\n\n return this.client._post('/api/v1/auth/signup', {\n firstName,\n lastName,\n email,\n password,\n applicationId,\n confirmUrl,\n redirectUrl\n });\n }\n\n confirmSignUp(email: string, token: string, redirect?: string): Promise<void> {\n return this.client._get(`/api/v1/auth/confirmsignup`, { params: { email, token, redirect } });\n }\n\n requestPasswordReset(email: string, applicationId: string, redirectUrl: string): Promise<void> {\n return this.client._post('/api/v1/auth/requestpasswordreset', { email, applicationId, redirectUrl });\n }\n\n resetPassword(email: string, password: string, applicationId: string, token: string): Promise<void> {\n return this.client._post('/api/v1/auth/resetpassword', { email, password, applicationId, token });\n }\n}\n"]}
1
+ {"version":3,"file":"auth.edpoints.js","sourceRoot":"","sources":["../../../src/lib/auth.edpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;IAGE,uBAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAF3C,UAAK,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEQ,CAAC;IAE/C,6BAAK,GAAL,UAAM,KAAa,EAAE,QAAgB,EAAE,aAAsB;QAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,aAAa,eAAA,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,8BAAM,GAAN,UAAO,WAAmB,EAAE,YAAoB;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CACtB,qBAAqB,EACrB,EAAE,YAAY,cAAA,EAAE,EAChB;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,iBAAU,WAAW,CAAE,EAAE;SACpD,CACF,CAAC;IACJ,CAAC;IAED,+BAAO,GAAP,UAAQ,YAAoB,EAAE,aAAqB;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,YAAY,cAAA,EAAE,aAAa,eAAA,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,sCAAc,GAAd,UAAe,QAAgB,EAAE,WAAmB,EAAE,KAAa;QACjE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CACtB,6BAA6B,EAC7B;YACE,QAAQ,UAAA;YACR,WAAW,aAAA;SACZ,EACD;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,iBAAU,KAAK,CAAE,EAAE;SAC9C,CACF,CAAC;IACJ,CAAC;IAED,8BAAM,GAAN,UACE,SAAiB,EACjB,QAAgB,EAChB,KAAa,EACb,QAAgB,EAChB,aAAqB,EACrB,UAAkB,EAClB,WAAoB;QAEpB,yDAAyD;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,UAAU,CAAC;YACzB,UAAU,GAAG,UAAG,IAAI,CAAC,MAAM,CAAC,OAAO,+BAA4B,CAAC;QAClE,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE;YAC9C,SAAS,WAAA;YACT,QAAQ,UAAA;YACR,KAAK,OAAA;YACL,QAAQ,UAAA;YACR,aAAa,eAAA;YACb,UAAU,YAAA;YACV,WAAW,aAAA;SACZ,CAAC,CAAC;IACL,CAAC;IAED,qCAAa,GAAb,UAAc,KAAa,EAAE,KAAa,EAAE,QAAiB;QAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,OAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,EAAE,CAAC,CAAC;IAChG,CAAC;IAED,4CAAoB,GAApB,UAAqB,KAAa,EAAE,aAAqB,EAAE,WAAmB;QAC5E,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAE,KAAK,OAAA,EAAE,aAAa,eAAA,EAAE,WAAW,aAAA,EAAE,CAAC,CAAC;IACvG,CAAC;IAED,qCAAa,GAAb,UAAc,KAAa,EAAE,QAAgB,EAAE,aAAqB,EAAE,KAAa;QACjF,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,aAAa,eAAA,EAAE,KAAK,OAAA,EAAE,CAAC,CAAC;IACpG,CAAC;IACH,oBAAC;AAAD,CAAC,AAzED,IAyEC","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { ILoginResponse, ITokenRefreshResponse } from './api-interfaces';\nimport { Client } from './client';\nimport { UserEndpoint } from './user.endpoints';\n\nexport class AuthEndpoints {\n users = new UserEndpoint(this.client);\n\n constructor(private readonly client: Client) {}\n\n login(email: string, password: string, applicationId?: string): Promise<ILoginResponse> {\n return this.client._post('/api/v1/auth/login', { email, password, applicationId });\n }\n\n logout(accessToken: string, refreshToken: string): Promise<void> {\n return this.client._post(\n '/api/v1/auth/logout',\n { refreshToken },\n {\n headers: { Authorization: `Bearer ${accessToken}` }\n }\n );\n }\n\n refresh(refreshToken: string, applicationId: string): Promise<ITokenRefreshResponse> {\n return this.client._post('/api/v1/auth/refresh', { refreshToken, applicationId });\n }\n\n changePassword(password: string, newPassword: string, token: string): Promise<void> {\n return this.client._post(\n '/api/v1/auth/changepassword',\n {\n password,\n newPassword\n },\n {\n headers: { Authorization: `Bearer ${token}` }\n }\n );\n }\n\n signUp(\n firstName: string,\n lastName: string,\n email: string,\n password: string,\n applicationId: string,\n confirmUrl: string,\n redirectUrl?: string\n ): Promise<void> {\n // Support legacy signature, which was missing confirmUrl\n if (!redirectUrl) {\n redirectUrl = confirmUrl;\n confirmUrl = `${this.client.baseUrl}/api/v1/auth/confirmsignup`;\n }\n\n return this.client._post('/api/v1/auth/signup', {\n firstName,\n lastName,\n email,\n password,\n applicationId,\n confirmUrl,\n redirectUrl\n });\n }\n\n confirmSignUp(email: string, token: string, redirect?: string): Promise<void> {\n return this.client._get(`/api/v1/auth/confirmsignup`, { params: { email, token, redirect } });\n }\n\n requestPasswordReset(email: string, applicationId: string, redirectUrl: string): Promise<void> {\n return this.client._post('/api/v1/auth/requestpasswordreset', { email, applicationId, redirectUrl });\n }\n\n resetPassword(email: string, password: string, applicationId: string, token: string): Promise<void> {\n return this.client._post('/api/v1/auth/resetpassword', { email, password, applicationId, token });\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"base.endpoints.js","sourceRoot":"","sources":["../../../src/lib/base.endpoints.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { IBaseResource, IQuery } from './api-interfaces';\n\nexport class BaseEndpoints<T extends IBaseResource> {\n constructor(protected readonly client: Client, private readonly resourcePath: string) {}\n\n protected get resourceEndpoint(): string {\n return `/api/v1/${this.resourcePath}`;\n }\n\n list(params?: IQuery): Promise<T[]> {\n // Reformat filter for query string\n if (params?.filter) {\n const filter = params.filter;\n Object.keys(filter).forEach(key => {\n (params as any)[`filter[${key}]`] = filter[key];\n });\n delete params.filter;\n }\n\n return this.client._get(this.resourceEndpoint, { params });\n }\n\n get(id: string, params: Record<string, any> = {}): Promise<T> {\n return this.client._get(`${this.resourceEndpoint}/${id}`, { params });\n }\n\n create(data: Partial<T>, params: Record<string, any> = {}): Promise<T> {\n return this.client._post(`${this.resourceEndpoint}`, data, { params });\n }\n\n update(id: string, data: Partial<T>, params: Record<string, any> = {}): Promise<T> {\n return this.client._put(`${this.resourceEndpoint}/${id}`, data, { params });\n }\n\n delete(id: string, params: Record<string, any> = {}) {\n return this.client._delete(`${this.resourceEndpoint}/${id}`, { params });\n }\n\n getMetadata(id: string, key?: string, params: Record<string, any> = {}): Promise<any> {\n const endpoint = key\n ? `${this.resourceEndpoint}/${id}/metadata/${key}`\n : `${this.resourceEndpoint}/${id}/metadata`;\n return this.client._get(endpoint, { params });\n }\n\n setMetadata(id: string, key: string, value: any, params: Record<string, any> = {}): Promise<any> {\n // Wrap primitives in value object\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n value = { value };\n }\n\n return this.client._put(`${this.resourceEndpoint}/${id}/metadata/${key}`, value, {\n headers: {\n 'Content-Type': 'application/json'\n },\n params\n });\n }\n\n deleteMetadata(id: string, key: string, params: Record<string, any> = {}): Promise<any> {\n return this.client._delete(`${this.resourceEndpoint}/${id}/metadata/${key}`, {\n headers: {\n 'Content-Type': 'application/json'\n },\n params\n });\n }\n}\n"]}
1
+ {"version":3,"file":"base.endpoints.js","sourceRoot":"","sources":["../../../src/lib/base.endpoints.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { IBaseResource, IQuery } from './api-interfaces';\n\nexport class BaseEndpoints<T extends IBaseResource> {\n constructor(protected readonly client: Client, private readonly resourcePath: string) {}\n\n protected get resourceEndpoint(): string {\n return `/api/v1/${this.resourcePath}`;\n }\n\n list(params?: IQuery): Promise<T[]> {\n // Reformat filter for query string\n if (params?.filter) {\n const filter = params.filter;\n Object.keys(filter).forEach(key => {\n (params as any)[`filter[${key}]`] = filter[key];\n });\n delete params.filter;\n }\n\n return this.client._get(this.resourceEndpoint, { params });\n }\n\n get(id: string, params: Record<string, any> = {}): Promise<T> {\n return this.client._get(`${this.resourceEndpoint}/${id}`, { params });\n }\n\n create(data: Partial<T>, params: Record<string, any> = {}): Promise<T> {\n return this.client._post(`${this.resourceEndpoint}`, data, { params });\n }\n\n update(id: string, data: Partial<T>, params: Record<string, any> = {}): Promise<T> {\n return this.client._put(`${this.resourceEndpoint}/${id}`, data, { params });\n }\n\n delete(id: string, params: Record<string, any> = {}) {\n return this.client._delete(`${this.resourceEndpoint}/${id}`, { params });\n }\n\n getMetadata(id: string, key?: string, params: Record<string, any> = {}): Promise<any> {\n const endpoint = key\n ? `${this.resourceEndpoint}/${id}/metadata/${key}`\n : `${this.resourceEndpoint}/${id}/metadata`;\n return this.client._get(endpoint, { params });\n }\n\n setMetadata(id: string, key: string, value: any, params: Record<string, any> = {}): Promise<any> {\n // Wrap primitives in value object\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n value = { value };\n }\n\n return this.client._put(`${this.resourceEndpoint}/${id}/metadata/${key}`, value, {\n headers: {\n 'Content-Type': 'application/json'\n },\n params\n });\n }\n\n deleteMetadata(id: string, key: string, params: Record<string, any> = {}): Promise<any> {\n return this.client._delete(`${this.resourceEndpoint}/${id}/metadata/${key}`, {\n headers: {\n 'Content-Type': 'application/json'\n },\n params\n });\n }\n}\n"]}
@@ -24,6 +24,7 @@ import { FlowEngineError } from './errors';
24
24
  import { JobEndpoints } from './job.endpoints';
25
25
  import { MapEndpoints } from './map.endoints';
26
26
  import { MapLayerEndpoints } from './maplayer.endpoints';
27
+ import { PipelineEndpoints } from './pipeline.endpoints';
27
28
  import { StyleEndpoints } from './style.endpoint';
28
29
  import { TileSourceEndpoints } from './tile-source.endpoints';
29
30
  import { TileEndpoints } from './tile.endpoints';
@@ -49,6 +50,7 @@ var Client = /** @class */ (function () {
49
50
  this.uploads = new UploadEndpoints(this);
50
51
  this.jobs = new JobEndpoints(this);
51
52
  this.maplayers = new MapLayerEndpoints(this);
53
+ this.pipelines = new PipelineEndpoints(this);
52
54
  this.axios = Axios.create({
53
55
  baseURL: baseUrl,
54
56
  maxContentLength: 524288000,
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/lib/client.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport Axios, { AxiosError, AxiosInstance } from 'axios';\nimport Debug from 'debug';\nimport { IConfig } from './api-interfaces';\nimport { ApiKeyEndpoints } from './apikey.endpoints';\nimport { AppConfigEndpoints } from './appconfig.endpoints';\nimport { ApplicationEndpoints } from './application.endpoints';\nimport { AuthEndpoints } from './auth.edpoints';\nimport { DatabaseEndpoints } from './database.endpoints';\nimport { DatasetEndpoints } from './dataset.endpoints';\nimport { FlowEngineError } from './errors';\nimport { JobEndpoints } from './job.endpoints';\nimport { MapEndpoints } from './map.endoints';\nimport { MapLayerEndpoints } from './maplayer.endpoints';\nimport { StyleEndpoints } from './style.endpoint';\nimport { TileSourceEndpoints } from './tile-source.endpoints';\nimport { TileEndpoints } from './tile.endpoints';\nimport { UploadEndpoints } from './upload.endpoints';\nimport {\n WebSocketGateway,\n WebSocketManagerOptions,\n WebSocketSubscribeCallback,\n WebSocketUnsubscribeCallback,\n WebSocketUnsubscriber\n} from './web-socket-gateway';\n\nexport type ClientOptions = WebSocketManagerOptions;\n\nexport class Client {\n private readonly axios: AxiosInstance;\n readonly debug = Debug('flow-engine-client');\n\n public webSocketGateway: WebSocketGateway;\n\n accessToken: string | null = null;\n\n auth = new AuthEndpoints(this);\n tiles = new TileEndpoints(this);\n maps = new MapEndpoints(this);\n apiKeys = new ApiKeyEndpoints(this);\n applications = new ApplicationEndpoints(this);\n appconfig = new AppConfigEndpoints(this);\n databases = new DatabaseEndpoints(this);\n datasets = new DatasetEndpoints(this);\n styles = new StyleEndpoints(this);\n tileSources = new TileSourceEndpoints(this);\n uploads = new UploadEndpoints(this);\n jobs = new JobEndpoints(this);\n maplayers = new MapLayerEndpoints(this);\n\n constructor(public baseUrl: string, public readonly apiKey: string | null = null, options?: ClientOptions) {\n this.axios = Axios.create({\n baseURL: baseUrl,\n maxContentLength: 524288000,\n transformResponse: [\n function transformResponse(data, headers) {\n if (headers?.['content-type']?.startsWith('application/json')) {\n // Force parsing of data if expected content type is JSON\n // This ensures that errors are thrown if JSON is truncated due to a query timeout\n // (default Axios behavior is simply to return a string if JSON parsing fails)\n return JSON.parse(data);\n }\n\n return data;\n }\n ]\n });\n\n this.webSocketGateway = new WebSocketGateway(this, options);\n }\n\n connect(): Promise<void> {\n return this.webSocketGateway.connect();\n }\n\n disconnect(): Promise<void> {\n return this.webSocketGateway.disconnect();\n }\n\n config(): Promise<IConfig> {\n return this._get('/api/v1/config');\n }\n\n _get(path: string, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return this.axios({\n method: 'get',\n url: path,\n ...options,\n ...this.headers(options)\n })\n .then(res => res.data)\n .catch(this.handleError);\n }\n\n _post(path: string, data: object, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return this.axios({\n method: 'post',\n url: path,\n data,\n maxContentLength: Infinity,\n maxBodyLength: Infinity,\n ...options,\n ...this.headers(options)\n })\n .then(res => res.data)\n .catch(this.handleError);\n }\n\n _put(path: string, data: object, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return this.axios({\n method: 'put',\n url: path,\n data,\n ...options,\n ...this.headers(options)\n })\n .then(res => res.data)\n .catch(this.handleError);\n }\n\n _delete(path: string, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return this.axios({\n method: 'delete',\n url: path,\n ...options,\n ...this.headers(options)\n })\n .then(res => res.data)\n .catch(this.handleError);\n }\n\n // Subscribe to named channel - errors and messages are delivered via the callback\n _subscribe(channel: string, cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n if (!this.webSocketGateway.isConnected) {\n this.webSocketGateway.connect();\n }\n\n return this.webSocketGateway.subscribe(channel, cb);\n }\n\n // Unsubscribe from named channel - optional callback is called on completion\n _unsubscribe(channel: string, cb?: WebSocketUnsubscribeCallback) {\n if (!this.webSocketGateway.isConnected) {\n this.webSocketGateway.connect();\n }\n this.webSocketGateway.unsubscribe(channel, cb);\n }\n\n /**\n * Normalize errors\n * Throws a new error based on type of input error\n *\n * @param {AxiosError} e\n */\n private handleError(e: AxiosError) {\n // Flow API error\n if (e.response && e.response.data) {\n if (typeof e.response.data === 'object') {\n const data: any = e.response.data;\n throw new FlowEngineError(data.message || data.error, data.error, e.response.status);\n } else if (typeof e.response.data === 'string') {\n throw new FlowEngineError(e.response.data, null, e.response.status);\n }\n }\n\n // Generic error\n\n // Don't leak information in error\n const cleanError: any = e;\n delete cleanError.config;\n delete cleanError.request;\n delete cleanError.response;\n\n throw new FlowEngineError(cleanError.message, cleanError);\n }\n\n private headers(options: any) {\n const headers = options.headers || {};\n\n if (options.apiKey || this.apiKey) {\n headers['X-Api-Key'] = options.apiKey || this.apiKey;\n }\n\n // Add default auth header if token supplied and not already set in options\n if (this.accessToken) {\n headers.Authorization = headers.Authorization || `Bearer ${this.accessToken}`;\n }\n\n return { headers };\n }\n}\n"]}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/lib/client.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;AAEH,OAAO,KAAoC,MAAM,OAAO,CAAC;AACzD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EACL,gBAAgB,EAKjB,MAAM,sBAAsB,CAAC;AAI9B;IAuBE,gBAAmB,OAAe,EAAkB,MAA4B,EAAE,OAAuB;QAArD,uBAAA,EAAA,aAA4B;QAA7D,YAAO,GAAP,OAAO,CAAQ;QAAkB,WAAM,GAAN,MAAM,CAAsB;QArBvE,UAAK,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAI7C,gBAAW,GAAkB,IAAI,CAAC;QAElC,SAAI,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/B,UAAK,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QAChC,SAAI,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QAC9B,YAAO,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QACpC,iBAAY,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC9C,cAAS,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzC,cAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxC,aAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACtC,WAAM,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QAClC,gBAAW,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC5C,YAAO,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QACpC,SAAI,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QAC9B,cAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxC,cAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAGtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YACxB,OAAO,EAAE,OAAO;YAChB,gBAAgB,EAAE,SAAS;YAC3B,iBAAiB,EAAE;gBACjB,SAAS,iBAAiB,CAAC,IAAI,EAAE,OAAO;;oBACtC,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,cAAc,CAAC,0CAAE,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;wBAC9D,yDAAyD;wBACzD,kFAAkF;wBAClF,8EAA8E;wBAC9E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC1B,CAAC;oBAED,OAAO,IAAI,CAAC;gBACd,CAAC;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED,wBAAO,GAAP;QACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACzC,CAAC;IAED,2BAAU,GAAV;QACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IAC5C,CAAC;IAED,uBAAM,GAAN;QACE,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACrC,CAAC;IAED,qBAAI,GAAJ,UAAK,IAAY,EAAE,OAAiB;;QAAjB,wBAAA,EAAA,YAAiB;QAClC,0BAA0B;QAC1B,IAAI,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YACvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/B,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,qBACf,MAAM,EAAE,KAAK,EACb,GAAG,EAAE,IAAI,IACN,OAAO,GACP,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EACxB;aACC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,EAAR,CAAQ,CAAC;aACrB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7B,CAAC;IAED,sBAAK,GAAL,UAAM,IAAY,EAAE,IAAY,EAAE,OAAiB;;QAAjB,wBAAA,EAAA,YAAiB;QACjD,0BAA0B;QAC1B,IAAI,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YACvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/B,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,qBACf,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,IAAI,EACT,IAAI,MAAA,EACJ,gBAAgB,EAAE,QAAQ,EAC1B,aAAa,EAAE,QAAQ,IACpB,OAAO,GACP,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EACxB;aACC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,EAAR,CAAQ,CAAC;aACrB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7B,CAAC;IAED,qBAAI,GAAJ,UAAK,IAAY,EAAE,IAAY,EAAE,OAAiB;;QAAjB,wBAAA,EAAA,YAAiB;QAChD,0BAA0B;QAC1B,IAAI,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YACvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/B,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,qBACf,MAAM,EAAE,KAAK,EACb,GAAG,EAAE,IAAI,EACT,IAAI,MAAA,IACD,OAAO,GACP,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EACxB;aACC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,EAAR,CAAQ,CAAC;aACrB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7B,CAAC;IAED,wBAAO,GAAP,UAAQ,IAAY,EAAE,OAAiB;;QAAjB,wBAAA,EAAA,YAAiB;QACrC,0BAA0B;QAC1B,IAAI,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YACvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/B,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,qBACf,MAAM,EAAE,QAAQ,EAChB,GAAG,EAAE,IAAI,IACN,OAAO,GACP,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EACxB;aACC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,EAAR,CAAQ,CAAC;aACrB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7B,CAAC;IAED,kFAAkF;IAClF,2BAAU,GAAV,UAAW,OAAe,EAAE,EAA8B;QACxD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,6EAA6E;IAC7E,6BAAY,GAAZ,UAAa,OAAe,EAAE,EAAiC;QAC7D,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACK,4BAAW,GAAnB,UAAoB,CAAa;QAC/B,iBAAiB;QACjB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxC,IAAM,IAAI,GAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAClC,MAAM,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvF,CAAC;iBAAM,IAAI,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/C,MAAM,IAAI,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QAED,gBAAgB;QAEhB,kCAAkC;QAClC,IAAM,UAAU,GAAQ,CAAC,CAAC;QAC1B,OAAO,UAAU,CAAC,MAAM,CAAC;QACzB,OAAO,UAAU,CAAC,OAAO,CAAC;QAC1B,OAAO,UAAU,CAAC,QAAQ,CAAC;QAE3B,MAAM,IAAI,eAAe,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC5D,CAAC;IAEO,wBAAO,GAAf,UAAgB,OAAY;QAC1B,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;QAEtC,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QACvD,CAAC;QAED,2EAA2E;QAC3E,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,iBAAU,IAAI,CAAC,WAAW,CAAE,CAAC;QAChF,CAAC;QAED,OAAO,EAAE,OAAO,SAAA,EAAE,CAAC;IACrB,CAAC;IACH,aAAC;AAAD,CAAC,AA3LD,IA2LC","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport Axios, { AxiosError, AxiosInstance } from 'axios';\nimport Debug from 'debug';\nimport { IConfig } from './api-interfaces';\nimport { ApiKeyEndpoints } from './apikey.endpoints';\nimport { AppConfigEndpoints } from './appconfig.endpoints';\nimport { ApplicationEndpoints } from './application.endpoints';\nimport { AuthEndpoints } from './auth.edpoints';\nimport { DatabaseEndpoints } from './database.endpoints';\nimport { DatasetEndpoints } from './dataset.endpoints';\nimport { FlowEngineError } from './errors';\nimport { JobEndpoints } from './job.endpoints';\nimport { MapEndpoints } from './map.endoints';\nimport { MapLayerEndpoints } from './maplayer.endpoints';\nimport { PipelineEndpoints } from './pipeline.endpoints';\nimport { StyleEndpoints } from './style.endpoint';\nimport { TileSourceEndpoints } from './tile-source.endpoints';\nimport { TileEndpoints } from './tile.endpoints';\nimport { UploadEndpoints } from './upload.endpoints';\nimport {\n WebSocketGateway,\n WebSocketManagerOptions,\n WebSocketSubscribeCallback,\n WebSocketUnsubscribeCallback,\n WebSocketUnsubscriber\n} from './web-socket-gateway';\n\nexport type ClientOptions = WebSocketManagerOptions;\n\nexport class Client {\n private readonly axios: AxiosInstance;\n readonly debug = Debug('flow-engine-client');\n\n public webSocketGateway: WebSocketGateway;\n\n accessToken: string | null = null;\n\n auth = new AuthEndpoints(this);\n tiles = new TileEndpoints(this);\n maps = new MapEndpoints(this);\n apiKeys = new ApiKeyEndpoints(this);\n applications = new ApplicationEndpoints(this);\n appconfig = new AppConfigEndpoints(this);\n databases = new DatabaseEndpoints(this);\n datasets = new DatasetEndpoints(this);\n styles = new StyleEndpoints(this);\n tileSources = new TileSourceEndpoints(this);\n uploads = new UploadEndpoints(this);\n jobs = new JobEndpoints(this);\n maplayers = new MapLayerEndpoints(this);\n pipelines = new PipelineEndpoints(this);\n\n constructor(public baseUrl: string, public readonly apiKey: string | null = null, options?: ClientOptions) {\n this.axios = Axios.create({\n baseURL: baseUrl,\n maxContentLength: 524288000,\n transformResponse: [\n function transformResponse(data, headers) {\n if (headers?.['content-type']?.startsWith('application/json')) {\n // Force parsing of data if expected content type is JSON\n // This ensures that errors are thrown if JSON is truncated due to a query timeout\n // (default Axios behavior is simply to return a string if JSON parsing fails)\n return JSON.parse(data);\n }\n\n return data;\n }\n ]\n });\n\n this.webSocketGateway = new WebSocketGateway(this, options);\n }\n\n connect(): Promise<void> {\n return this.webSocketGateway.connect();\n }\n\n disconnect(): Promise<void> {\n return this.webSocketGateway.disconnect();\n }\n\n config(): Promise<IConfig> {\n return this._get('/api/v1/config');\n }\n\n _get(path: string, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return this.axios({\n method: 'get',\n url: path,\n ...options,\n ...this.headers(options)\n })\n .then(res => res.data)\n .catch(this.handleError);\n }\n\n _post(path: string, data: object, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return this.axios({\n method: 'post',\n url: path,\n data,\n maxContentLength: Infinity,\n maxBodyLength: Infinity,\n ...options,\n ...this.headers(options)\n })\n .then(res => res.data)\n .catch(this.handleError);\n }\n\n _put(path: string, data: object, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return this.axios({\n method: 'put',\n url: path,\n data,\n ...options,\n ...this.headers(options)\n })\n .then(res => res.data)\n .catch(this.handleError);\n }\n\n _delete(path: string, options: any = {}): Promise<any> {\n // Move apiKey from params\n if (options.params?.apiKey) {\n options.apiKey = options.params.apiKey;\n delete options.params.apiKey;\n }\n\n return this.axios({\n method: 'delete',\n url: path,\n ...options,\n ...this.headers(options)\n })\n .then(res => res.data)\n .catch(this.handleError);\n }\n\n // Subscribe to named channel - errors and messages are delivered via the callback\n _subscribe(channel: string, cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n if (!this.webSocketGateway.isConnected) {\n this.webSocketGateway.connect();\n }\n\n return this.webSocketGateway.subscribe(channel, cb);\n }\n\n // Unsubscribe from named channel - optional callback is called on completion\n _unsubscribe(channel: string, cb?: WebSocketUnsubscribeCallback) {\n if (!this.webSocketGateway.isConnected) {\n this.webSocketGateway.connect();\n }\n this.webSocketGateway.unsubscribe(channel, cb);\n }\n\n /**\n * Normalize errors\n * Throws a new error based on type of input error\n *\n * @param {AxiosError} e\n */\n private handleError(e: AxiosError) {\n // Flow API error\n if (e.response && e.response.data) {\n if (typeof e.response.data === 'object') {\n const data: any = e.response.data;\n throw new FlowEngineError(data.message || data.error, data.error, e.response.status);\n } else if (typeof e.response.data === 'string') {\n throw new FlowEngineError(e.response.data, null, e.response.status);\n }\n }\n\n // Generic error\n\n // Don't leak information in error\n const cleanError: any = e;\n delete cleanError.config;\n delete cleanError.request;\n delete cleanError.response;\n\n throw new FlowEngineError(cleanError.message, cleanError);\n }\n\n private headers(options: any) {\n const headers = options.headers || {};\n\n if (options.apiKey || this.apiKey) {\n headers['X-Api-Key'] = options.apiKey || this.apiKey;\n }\n\n // Add default auth header if token supplied and not already set in options\n if (this.accessToken) {\n headers.Authorization = headers.Authorization || `Bearer ${this.accessToken}`;\n }\n\n return { headers };\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"database.endpoints.js","sourceRoot":"","sources":["../../../src/lib/database.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAAuC,qCAAwB;IAC7D,2BAAY,MAAc;eACxB,kBAAM,MAAM,EAAE,WAAW,CAAC;IAC5B,CAAC;IAED,mCAAO,GAAP;QACE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,KAAK,CAAC,UAAA,CAAC;YAC1D,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE;gBACpB,8CAA8C;gBAC9C,OAAO,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;aACtC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACH,wBAAC;AAAD,CAAC,AAbD,CAAuC,aAAa,GAanD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { IDatabase } from './api-interfaces';\n\nexport class DatabaseEndpoints extends BaseEndpoints<IDatabase> {\n constructor(client: Client) {\n super(client, 'databases');\n }\n\n drivers(): Promise<string[]> {\n return this.client._get(`/api/v1/databases/drivers`).catch(e => {\n if (e.status === 404) {\n // Backwards compatibility for pre-1.0.0 Flo.w\n return ['postgis', 'postgis-mapnik'];\n }\n });\n }\n}\n"]}
1
+ {"version":3,"file":"database.endpoints.js","sourceRoot":"","sources":["../../../src/lib/database.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAAuC,qCAAwB;IAC7D,2BAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,WAAW,CAAC,SAAC;IAC7B,CAAC;IAED,mCAAO,GAAP;QACE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,KAAK,CAAC,UAAA,CAAC;YAC1D,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACrB,8CAA8C;gBAC9C,OAAO,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;YACvC,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACH,wBAAC;AAAD,CAAC,AAbD,CAAuC,aAAa,GAanD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { IDatabase } from './api-interfaces';\n\nexport class DatabaseEndpoints extends BaseEndpoints<IDatabase> {\n constructor(client: Client) {\n super(client, 'databases');\n }\n\n drivers(): Promise<string[]> {\n return this.client._get(`/api/v1/databases/drivers`).catch(e => {\n if (e.status === 404) {\n // Backwards compatibility for pre-1.0.0 Flo.w\n return ['postgis', 'postgis-mapnik'];\n }\n });\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dataset.endpoints.js","sourceRoot":"","sources":["../../../src/lib/dataset.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAiBjD;IAAsC,oCAAuB;IAC3D,0BAAY,MAAc;eACxB,kBAAM,MAAM,EAAE,UAAU,CAAC;IAC3B,CAAC;IAED,gCAAK,GAAL,UACE,SAAgC,EAChC,KAAwB,EACxB,MAAoD;QADpD,sBAAA,EAAA,UAAwB;QACxB,uBAAA,EAAA,WAAoD;QAEpD,2CAA2C;QAC3C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,MAAM,yBAAQ,SAAS,CAAC,MAAM,KAAE,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,MAAM,GAAE,CAAC;YACrE,KAAK,GAAG,SAAS,CAAC;YAClB,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAC5B,OAAO,KAAK,CAAC,SAAS,CAAC;YACvB,OAAO,KAAK,CAAC,MAAM,CAAC;SACrB;QAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,MAAM,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;SAC7B;QAED,IAAI,eAAe,GAA2B,IAAI,CAAC;QACnD,IAAI,MAAM,CAAC,eAAe,EAAE;YAC1B,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;YACzC,OAAO,MAAM,CAAC,eAAe,CAAC;SAC/B;QAED,OAAO,IAAI,CAAC,MAAM;aACf,KAAK,CAAC,2BAAoB,SAAS,WAAQ,EAAE,KAAK,EAAE;YACnD,MAAM,wBACD,MAAM,KACT,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,MAAM,EAC/B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK,GACjC;YACD,MAAM,EAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,MAAM;SAChC,CAAC;aACD,KAAK,CAAC,UAAA,CAAC;YACN,IAAI,CAAC,CAAC,OAAO,KAAK,eAAe,EAAE;gBACjC,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;aACpC;iBAAM;gBACL,MAAM,CAAC,CAAC;aACT;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAED,iCAAM,GAAN,UAAO,aAA6B,EAAE,MAAgC;QAAhC,uBAAA,EAAA,WAAgC;QACpE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAAoB,aAAa,CAAC,SAAS,YAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACxG,CAAC;IAED,uCAAY,GAAZ,UAAa,SAAiB,EAAE,MAAwB;QACtD,IAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW;YACzC,CAAC,CAAC,sBAAe,IAAI,CAAC,MAAM,CAAC,WAAW,CAAE;YAC1C,CAAC,CAAC,iBAAU,IAAI,CAAC,MAAM,CAAC,MAAM,CAAE,CAAC;QACnC,OAAO,UAAG,IAAI,CAAC,MAAM,CAAC,OAAO,8BAAoB,SAAS,4BAAkB,MAAM,cAAI,WAAW,CAAE,CAAC;IACtG,CAAC;IAED,oCAAS,GAAT,UAAU,SAAiB,EAAE,EAA8B;QACzD,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAW,SAAS,CAAE,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACH,uBAAC;AAAD,CAAC,AA7DD,CAAsC,aAAa,GA6DlD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { FileExportFormat, IDataset, IIngestMessage } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\nimport { Client } from './client';\nimport { WebSocketSubscribeCallback, WebSocketUnsubscriber } from './web-socket-gateway';\n\nexport interface DatasetQuery {\n [key: string]: any;\n}\n\ntype QueryOutputFormat = 'plain' | 'json' | 'csv' | 'geojson';\n\nexport interface DatasetQueryOptions {\n [param: string]: any;\n format?: QueryOutputFormat;\n explain?: boolean | string;\n abortController?: AbortController;\n}\n\nexport class DatasetEndpoints extends BaseEndpoints<IDataset> {\n constructor(client: Client) {\n super(client, 'datasets');\n }\n\n query(\n datasetId: string | DatasetQuery,\n query: DatasetQuery = {},\n params: DatasetQueryOptions | QueryOutputFormat = {}\n ): Promise<any> {\n // Support Flo.w RDF-style query definition\n if (typeof datasetId === 'object') {\n params = { ...datasetId.params, format: datasetId.format || 'json' };\n query = datasetId;\n datasetId = query.datasetId;\n delete query.datasetId;\n delete query.format;\n }\n\n if (typeof params === 'string') {\n params = { format: params };\n }\n\n let abortController: AbortController | null = null;\n if (params.abortController) {\n abortController = params.abortController;\n delete params.abortController;\n }\n\n return this.client\n ._post(`/api/v1/datasets/${datasetId}/query`, query, {\n params: {\n ...params,\n format: params.format || 'json',\n explain: params.explain || false\n },\n signal: abortController?.signal\n })\n .catch(e => {\n if (e.message === 'Network Error') {\n throw new Error('Query timed out');\n } else {\n throw e;\n }\n });\n }\n\n ingest(ingestMessage: IIngestMessage, params: Record<string, any> = {}): Promise<any> {\n return this.client._post(`/api/v1/datasets/${ingestMessage.datasetId}/ingest`, ingestMessage, params);\n }\n\n getExportUrl(datasetId: string, format: FileExportFormat): string {\n const credentials = this.client.accessToken\n ? `accesstoken=${this.client.accessToken}`\n : `apikey=${this.client.apiKey}`;\n return `${this.client.baseUrl}/api/v1/datasets/${datasetId}/export?format=${format}&${credentials}`;\n }\n\n subscribe(datasetId: string, cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n return this.client._subscribe(`dataset/${datasetId}`, cb);\n }\n}\n"]}
1
+ {"version":3,"file":"dataset.endpoints.js","sourceRoot":"","sources":["../../../src/lib/dataset.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAiBjD;IAAsC,oCAAuB;IAC3D,0BAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,UAAU,CAAC,SAAC;IAC5B,CAAC;IAED,gCAAK,GAAL,UACE,SAAgC,EAChC,KAAwB,EACxB,MAAoD;QADpD,sBAAA,EAAA,UAAwB;QACxB,uBAAA,EAAA,WAAoD;QAEpD,2CAA2C;QAC3C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,yBAAQ,SAAS,CAAC,MAAM,KAAE,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,MAAM,GAAE,CAAC;YACrE,KAAK,GAAG,SAAS,CAAC;YAClB,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAC5B,OAAO,KAAK,CAAC,SAAS,CAAC;YACvB,OAAO,KAAK,CAAC,MAAM,CAAC;QACtB,CAAC;QAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC9B,CAAC;QAED,IAAI,eAAe,GAA2B,IAAI,CAAC;QACnD,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;YAC3B,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;YACzC,OAAO,MAAM,CAAC,eAAe,CAAC;QAChC,CAAC;QAED,OAAO,IAAI,CAAC,MAAM;aACf,KAAK,CAAC,2BAAoB,SAAS,WAAQ,EAAE,KAAK,EAAE;YACnD,MAAM,wBACD,MAAM,KACT,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,MAAM,EAC/B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK,GACjC;YACD,MAAM,EAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,MAAM;SAChC,CAAC;aACD,KAAK,CAAC,UAAA,CAAC;YACN,IAAI,CAAC,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,CAAC;YACV,CAAC;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAED,iCAAM,GAAN,UAAO,aAA6B,EAAE,MAAgC;QAAhC,uBAAA,EAAA,WAAgC;QACpE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAAoB,aAAa,CAAC,SAAS,YAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACxG,CAAC;IAED,uCAAY,GAAZ,UAAa,SAAiB,EAAE,MAAwB;QACtD,IAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW;YACzC,CAAC,CAAC,sBAAe,IAAI,CAAC,MAAM,CAAC,WAAW,CAAE;YAC1C,CAAC,CAAC,iBAAU,IAAI,CAAC,MAAM,CAAC,MAAM,CAAE,CAAC;QACnC,OAAO,UAAG,IAAI,CAAC,MAAM,CAAC,OAAO,8BAAoB,SAAS,4BAAkB,MAAM,cAAI,WAAW,CAAE,CAAC;IACtG,CAAC;IAED,oCAAS,GAAT,UAAU,SAAiB,EAAE,EAA8B;QACzD,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAW,SAAS,CAAE,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACH,uBAAC;AAAD,CAAC,AA7DD,CAAsC,aAAa,GA6DlD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { FileExportFormat, IDataset, IIngestMessage } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\nimport { Client } from './client';\nimport { WebSocketSubscribeCallback, WebSocketUnsubscriber } from './web-socket-gateway';\n\nexport interface DatasetQuery {\n [key: string]: any;\n}\n\ntype QueryOutputFormat = 'plain' | 'json' | 'csv' | 'geojson';\n\nexport interface DatasetQueryOptions {\n [param: string]: any;\n format?: QueryOutputFormat;\n explain?: boolean | string;\n abortController?: AbortController;\n}\n\nexport class DatasetEndpoints extends BaseEndpoints<IDataset> {\n constructor(client: Client) {\n super(client, 'datasets');\n }\n\n query(\n datasetId: string | DatasetQuery,\n query: DatasetQuery = {},\n params: DatasetQueryOptions | QueryOutputFormat = {}\n ): Promise<any> {\n // Support Flo.w RDF-style query definition\n if (typeof datasetId === 'object') {\n params = { ...datasetId.params, format: datasetId.format || 'json' };\n query = datasetId;\n datasetId = query.datasetId;\n delete query.datasetId;\n delete query.format;\n }\n\n if (typeof params === 'string') {\n params = { format: params };\n }\n\n let abortController: AbortController | null = null;\n if (params.abortController) {\n abortController = params.abortController;\n delete params.abortController;\n }\n\n return this.client\n ._post(`/api/v1/datasets/${datasetId}/query`, query, {\n params: {\n ...params,\n format: params.format || 'json',\n explain: params.explain || false\n },\n signal: abortController?.signal\n })\n .catch(e => {\n if (e.message === 'Network Error') {\n throw new Error('Query timed out');\n } else {\n throw e;\n }\n });\n }\n\n ingest(ingestMessage: IIngestMessage, params: Record<string, any> = {}): Promise<any> {\n return this.client._post(`/api/v1/datasets/${ingestMessage.datasetId}/ingest`, ingestMessage, params);\n }\n\n getExportUrl(datasetId: string, format: FileExportFormat): string {\n const credentials = this.client.accessToken\n ? `accesstoken=${this.client.accessToken}`\n : `apikey=${this.client.apiKey}`;\n return `${this.client.baseUrl}/api/v1/datasets/${datasetId}/export?format=${format}&${credentials}`;\n }\n\n subscribe(datasetId: string, cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n return this.client._subscribe(`dataset/${datasetId}`, cb);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/lib/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH;IAAqC,mCAAK;IAIxC,yBAAY,OAAe,EAAE,eAAoC,EAAE,UAAgB;QAAtD,gCAAA,EAAA,sBAAoC;QAAE,2BAAA,EAAA,gBAAgB;QAAnF,YACE,kBAAM,OAAO,IAAI,eAAe,CAAC,SAMlC;QAJC,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;QAEvD,KAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,KAAI,CAAC,KAAK,GAAG,eAAe,CAAC;;IAC/B,CAAC;IACH,sBAAC;AAAD,CAAC,AAZD,CAAqC,KAAK,GAYzC","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nexport class FlowEngineError extends Error {\n error: object | null;\n statusCode: number;\n\n constructor(message: string, underlyingError: Error | null = null, statusCode = 500) {\n super(message || 'Unknown Error');\n\n Object.setPrototypeOf(this, FlowEngineError.prototype);\n\n this.statusCode = statusCode;\n this.error = underlyingError;\n }\n}\n"]}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/lib/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH;IAAqC,mCAAK;IAIxC,yBAAY,OAAe,EAAE,eAAoC,EAAE,UAAgB;QAAtD,gCAAA,EAAA,sBAAoC;QAAE,2BAAA,EAAA,gBAAgB;QACjF,YAAA,MAAK,YAAC,OAAO,IAAI,eAAe,CAAC,SAAC;QAElC,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;QAEvD,KAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,KAAI,CAAC,KAAK,GAAG,eAAe,CAAC;;IAC/B,CAAC;IACH,sBAAC;AAAD,CAAC,AAZD,CAAqC,KAAK,GAYzC","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nexport class FlowEngineError extends Error {\n error: object | null;\n statusCode: number;\n\n constructor(message: string, underlyingError: Error | null = null, statusCode = 500) {\n super(message || 'Unknown Error');\n\n Object.setPrototypeOf(this, FlowEngineError.prototype);\n\n this.statusCode = statusCode;\n this.error = underlyingError;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"job.endpoints.js","sourceRoot":"","sources":["../../../src/lib/job.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAAkC,gCAAmB;IACnD,sBAAY,MAAc;eACxB,kBAAM,MAAM,EAAE,MAAM,CAAC;IACvB,CAAC;IAED,6BAAM,GAAN,UAAO,UAA0B;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAC;IAC9D,CAAC;IAED,gCAAS,GAAT,UAAU,KAAa;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAgB,KAAK,YAAS,CAAC,CAAC;IAC1D,CAAC;IAED,gCAAS,GAAT,UAAU,KAAa,EAAE,MAAkB;QACzC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAgB,KAAK,YAAS,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,6BAAM,GAAN,UAAO,KAAa;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAgB,KAAK,YAAS,EAAE,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,8BAAO,GAAP,UAAQ,OAAe;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACtE,CAAC;IACH,mBAAC;AAAD,CAAC,AAxBD,CAAkC,aAAa,GAwB9C","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { IJob, IJobSubmission, IJobStatus } from './api-interfaces';\n\nexport class JobEndpoints extends BaseEndpoints<IJob> {\n constructor(client: Client) {\n super(client, 'jobs');\n }\n\n submit(submission: IJobSubmission): Promise<IJob> {\n return this.client._post(`/api/v1/jobs/submit`, submission);\n }\n\n getStatus(jobId: string): Promise<IJobStatus> {\n return this.client._get(`/api/v1/jobs/${jobId}/status`);\n }\n\n setStatus(jobId: string, status: IJobStatus): Promise<IJob> {\n return this.client._post(`/api/v1/jobs/${jobId}/status`, status);\n }\n\n cancel(jobId: string): Promise<IJob> {\n return this.client._post(`/api/v1/jobs/${jobId}/cancel`, {});\n }\n\n request(jobType: string): Promise<IJob> {\n return this.client._post(`/api/v1/jobs/request`, { type: jobType });\n }\n}\n"]}
1
+ {"version":3,"file":"job.endpoints.js","sourceRoot":"","sources":["../../../src/lib/job.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAAkC,gCAAmB;IACnD,sBAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,MAAM,CAAC,SAAC;IACxB,CAAC;IAED,6BAAM,GAAN,UAAO,UAA0B;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAC;IAC9D,CAAC;IAED,gCAAS,GAAT,UAAU,KAAa;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAgB,KAAK,YAAS,CAAC,CAAC;IAC1D,CAAC;IAED,gCAAS,GAAT,UAAU,KAAa,EAAE,MAAkB;QACzC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAgB,KAAK,YAAS,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,6BAAM,GAAN,UAAO,KAAa;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAgB,KAAK,YAAS,EAAE,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,8BAAO,GAAP,UAAQ,OAAe;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACtE,CAAC;IACH,mBAAC;AAAD,CAAC,AAxBD,CAAkC,aAAa,GAwB9C","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { IJob, IJobSubmission, IJobStatus } from './api-interfaces';\n\nexport class JobEndpoints extends BaseEndpoints<IJob> {\n constructor(client: Client) {\n super(client, 'jobs');\n }\n\n submit(submission: IJobSubmission): Promise<IJob> {\n return this.client._post(`/api/v1/jobs/submit`, submission);\n }\n\n getStatus(jobId: string): Promise<IJobStatus> {\n return this.client._get(`/api/v1/jobs/${jobId}/status`);\n }\n\n setStatus(jobId: string, status: IJobStatus): Promise<IJob> {\n return this.client._post(`/api/v1/jobs/${jobId}/status`, status);\n }\n\n cancel(jobId: string): Promise<IJob> {\n return this.client._post(`/api/v1/jobs/${jobId}/cancel`, {});\n }\n\n request(jobType: string): Promise<IJob> {\n return this.client._post(`/api/v1/jobs/request`, { type: jobType });\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"maplayer.endpoints.js","sourceRoot":"","sources":["../../../src/lib/maplayer.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD;IAAuC,qCAAwB;IAC7D,2BAAY,MAAc;eACxB,kBAAM,MAAM,EAAE,WAAW,CAAC;IAC5B,CAAC;IAED,qCAAS,GAAT,UAAU,EAA8B;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACH,wBAAC;AAAD,CAAC,AARD,CAAuC,aAAa,GAQnD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { IMapLayer } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\nimport { Client } from './client';\nimport { WebSocketSubscribeCallback, WebSocketUnsubscriber } from './web-socket-gateway';\n\nexport class MapLayerEndpoints extends BaseEndpoints<IMapLayer> {\n constructor(client: Client) {\n super(client, 'maplayers');\n }\n\n subscribe(cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n return this.client._subscribe(`maplayers`, cb);\n }\n}\n"]}
1
+ {"version":3,"file":"maplayer.endpoints.js","sourceRoot":"","sources":["../../../src/lib/maplayer.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD;IAAuC,qCAAwB;IAC7D,2BAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,WAAW,CAAC,SAAC;IAC7B,CAAC;IAED,qCAAS,GAAT,UAAU,EAA8B;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACH,wBAAC;AAAD,CAAC,AARD,CAAuC,aAAa,GAQnD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { IMapLayer } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\nimport { Client } from './client';\nimport { WebSocketSubscribeCallback, WebSocketUnsubscriber } from './web-socket-gateway';\n\nexport class MapLayerEndpoints extends BaseEndpoints<IMapLayer> {\n constructor(client: Client) {\n super(client, 'maplayers');\n }\n\n subscribe(cb: WebSocketSubscribeCallback): WebSocketUnsubscriber {\n return this.client._subscribe(`maplayers`, cb);\n }\n}\n"]}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Copyright © 2018-present Emu Analytics
3
+ */
4
+ var __extends = (this && this.__extends) || (function () {
5
+ var extendStatics = function (d, b) {
6
+ extendStatics = Object.setPrototypeOf ||
7
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
8
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
9
+ return extendStatics(d, b);
10
+ };
11
+ return function (d, b) {
12
+ if (typeof b !== "function" && b !== null)
13
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
14
+ extendStatics(d, b);
15
+ function __() { this.constructor = d; }
16
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
17
+ };
18
+ })();
19
+ import { BaseEndpoints } from './base.endpoints';
20
+ import { PipelineMetricEndpoints } from './pipeline-metric.endpoint';
21
+ var PipelineComponentEndpoints = /** @class */ (function (_super) {
22
+ __extends(PipelineComponentEndpoints, _super);
23
+ function PipelineComponentEndpoints(client, pipelineId) {
24
+ var _this = _super.call(this, client, "pipelines/".concat(pipelineId, "/components")) || this;
25
+ _this.pipelineId = pipelineId;
26
+ return _this;
27
+ }
28
+ PipelineComponentEndpoints.prototype.metrics = function (componentId) {
29
+ return new PipelineMetricEndpoints(this.client, this.pipelineId, componentId);
30
+ };
31
+ return PipelineComponentEndpoints;
32
+ }(BaseEndpoints));
33
+ export { PipelineComponentEndpoints };
34
+ //# sourceMappingURL=pipeline-component.endpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline-component.endpoints.js","sourceRoot":"","sources":["../../../src/lib/pipeline-component.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAErE;IAAgD,8CAAiC;IAC/E,oCAAY,MAAc,EAAU,UAAkB;QACpD,YAAA,MAAK,YAAC,MAAM,EAAE,oBAAa,UAAU,gBAAa,CAAC,SAAC;QADlB,gBAAU,GAAV,UAAU,CAAQ;;IAEtD,CAAC;IAED,4CAAO,GAAP,UAAQ,WAAmB;QACzB,OAAO,IAAI,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAChF,CAAC;IACH,iCAAC;AAAD,CAAC,AARD,CAAgD,aAAa,GAQ5D","sourcesContent":["/**\n * Copyright © 2018-present Emu Analytics\n */\n\nimport { IPipelineComponent } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\nimport { Client } from './client';\nimport { PipelineMetricEndpoints } from './pipeline-metric.endpoint';\n\nexport class PipelineComponentEndpoints extends BaseEndpoints<IPipelineComponent> {\n constructor(client: Client, private pipelineId: string) {\n super(client, `pipelines/${pipelineId}/components`);\n }\n\n metrics(componentId: string) {\n return new PipelineMetricEndpoints(this.client, this.pipelineId, componentId);\n }\n}\n"]}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Copyright © 2018-present Emu Analytics
3
+ */
4
+ var __extends = (this && this.__extends) || (function () {
5
+ var extendStatics = function (d, b) {
6
+ extendStatics = Object.setPrototypeOf ||
7
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
8
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
9
+ return extendStatics(d, b);
10
+ };
11
+ return function (d, b) {
12
+ if (typeof b !== "function" && b !== null)
13
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
14
+ extendStatics(d, b);
15
+ function __() { this.constructor = d; }
16
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
17
+ };
18
+ })();
19
+ import { BaseEndpoints } from './base.endpoints';
20
+ var PipelineMetricEndpoints = /** @class */ (function (_super) {
21
+ __extends(PipelineMetricEndpoints, _super);
22
+ function PipelineMetricEndpoints(client, pipelineId, componentId) {
23
+ return _super.call(this, client, "pipelines/".concat(pipelineId, "/components/").concat(componentId, "/metrics")) || this;
24
+ }
25
+ return PipelineMetricEndpoints;
26
+ }(BaseEndpoints));
27
+ export { PipelineMetricEndpoints };
28
+ //# sourceMappingURL=pipeline-metric.endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline-metric.endpoint.js","sourceRoot":"","sources":["../../../src/lib/pipeline-metric.endpoint.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAA6C,2CAA8B;IACzE,iCAAY,MAAc,EAAE,UAAkB,EAAE,WAAmB;QACjE,OAAA,MAAK,YAAC,MAAM,EAAE,oBAAa,UAAU,yBAAe,WAAW,aAAU,CAAC,SAAC;IAC7E,CAAC;IACH,8BAAC;AAAD,CAAC,AAJD,CAA6C,aAAa,GAIzD","sourcesContent":["/**\n * Copyright © 2018-present Emu Analytics\n */\n\nimport { IPipelineMetric } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\nimport { Client } from './client';\n\nexport class PipelineMetricEndpoints extends BaseEndpoints<IPipelineMetric> {\n constructor(client: Client, pipelineId: string, componentId: string) {\n super(client, `pipelines/${pipelineId}/components/${componentId}/metrics`);\n }\n}\n"]}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Copyright © 2018-present Emu Analytics
3
+ */
4
+ var __extends = (this && this.__extends) || (function () {
5
+ var extendStatics = function (d, b) {
6
+ extendStatics = Object.setPrototypeOf ||
7
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
8
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
9
+ return extendStatics(d, b);
10
+ };
11
+ return function (d, b) {
12
+ if (typeof b !== "function" && b !== null)
13
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
14
+ extendStatics(d, b);
15
+ function __() { this.constructor = d; }
16
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
17
+ };
18
+ })();
19
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
20
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
21
+ return new (P || (P = Promise))(function (resolve, reject) {
22
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
23
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
24
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
25
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
26
+ });
27
+ };
28
+ var __generator = (this && this.__generator) || function (thisArg, body) {
29
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
30
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
31
+ function verb(n) { return function (v) { return step([n, v]); }; }
32
+ function step(op) {
33
+ if (f) throw new TypeError("Generator is already executing.");
34
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
35
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
36
+ if (y = 0, t) op = [op[0] & 2, t.value];
37
+ switch (op[0]) {
38
+ case 0: case 1: t = op; break;
39
+ case 4: _.label++; return { value: op[1], done: false };
40
+ case 5: _.label++; y = op[1]; op = [0]; continue;
41
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
42
+ default:
43
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
44
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
45
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
46
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
47
+ if (t[2]) _.ops.pop();
48
+ _.trys.pop(); continue;
49
+ }
50
+ op = body.call(thisArg, _);
51
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
52
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
53
+ }
54
+ };
55
+ import { BaseEndpoints } from './base.endpoints';
56
+ import { PipelineComponentEndpoints } from './pipeline-component.endpoints';
57
+ var PipelineEndpoints = /** @class */ (function (_super) {
58
+ __extends(PipelineEndpoints, _super);
59
+ function PipelineEndpoints(client) {
60
+ return _super.call(this, client, 'pipelines') || this;
61
+ }
62
+ PipelineEndpoints.prototype.components = function (pipelineId) {
63
+ return new PipelineComponentEndpoints(this.client, pipelineId);
64
+ };
65
+ PipelineEndpoints.prototype.heartbeat = function (id_1) {
66
+ return __awaiter(this, arguments, void 0, function (id, params) {
67
+ if (params === void 0) { params = {}; }
68
+ return __generator(this, function (_a) {
69
+ return [2 /*return*/, this.client._post("".concat(this.resourceEndpoint, "/").concat(id, "/heartbeat"), { params: params })];
70
+ });
71
+ });
72
+ };
73
+ PipelineEndpoints.prototype.publishMetrics = function (metrics_1) {
74
+ return __awaiter(this, arguments, void 0, function (metrics, params) {
75
+ if (params === void 0) { params = {}; }
76
+ return __generator(this, function (_a) {
77
+ return [2 /*return*/, this.client._post("".concat(this.resourceEndpoint, "/publish-metrics"), metrics, { params: params })];
78
+ });
79
+ });
80
+ };
81
+ return PipelineEndpoints;
82
+ }(BaseEndpoints));
83
+ export { PipelineEndpoints };
84
+ //# sourceMappingURL=pipeline.endpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.endpoints.js","sourceRoot":"","sources":["../../../src/lib/pipeline.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAE5E;IAAuC,qCAAwB;IAC7D,2BAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,WAAW,CAAC,SAAC;IAC7B,CAAC;IAED,sCAAU,GAAV,UAAW,UAAkB;QAC3B,OAAO,IAAI,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjE,CAAC;IAEK,qCAAS,GAAf;4DAAgB,EAAU,EAAE,MAAgC;YAAhC,uBAAA,EAAA,WAAgC;;gBAC1D,sBAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAG,IAAI,CAAC,gBAAgB,cAAI,EAAE,eAAY,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,EAAC;;;KAClF;IAEK,0CAAc,GAApB;4DAAqB,OAAe,EAAE,MAAgC;YAAhC,uBAAA,EAAA,WAAgC;;gBACpE,sBAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAG,IAAI,CAAC,gBAAgB,qBAAkB,EAAE,OAAO,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,EAAC;;;KAC3F;IACH,wBAAC;AAAD,CAAC,AAhBD,CAAuC,aAAa,GAgBnD","sourcesContent":["/**\n * Copyright © 2018-present Emu Analytics\n */\n\nimport { IPipeline } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\nimport { Client } from './client';\nimport { PipelineComponentEndpoints } from './pipeline-component.endpoints';\n\nexport class PipelineEndpoints extends BaseEndpoints<IPipeline> {\n constructor(client: Client) {\n super(client, 'pipelines');\n }\n\n components(pipelineId: string) {\n return new PipelineComponentEndpoints(this.client, pipelineId);\n }\n\n async heartbeat(id: string, params: Record<string, any> = {}): Promise<void> {\n return this.client._post(`${this.resourceEndpoint}/${id}/heartbeat`, { params });\n }\n\n async publishMetrics(metrics: object, params: Record<string, any> = {}): Promise<void> {\n return this.client._post(`${this.resourceEndpoint}/publish-metrics`, metrics, { params });\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"style.endpoint.js","sourceRoot":"","sources":["../../../src/lib/style.endpoint.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;IAAoC,kCAAqB;IACvD,wBAAY,MAAc;eACxB,kBAAM,MAAM,EAAE,QAAQ,CAAC;IACzB,CAAC;IACH,qBAAC;AAAD,CAAC,AAJD,CAAoC,aAAa,GAIhD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { IStyle } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\n\nexport class StyleEndpoints extends BaseEndpoints<IStyle> {\n constructor(client: Client) {\n super(client, 'styles');\n }\n}\n"]}
1
+ {"version":3,"file":"style.endpoint.js","sourceRoot":"","sources":["../../../src/lib/style.endpoint.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;IAAoC,kCAAqB;IACvD,wBAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,QAAQ,CAAC,SAAC;IAC1B,CAAC;IACH,qBAAC;AAAD,CAAC,AAJD,CAAoC,aAAa,GAIhD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { IStyle } from './api-interfaces';\nimport { BaseEndpoints } from './base.endpoints';\n\nexport class StyleEndpoints extends BaseEndpoints<IStyle> {\n constructor(client: Client) {\n super(client, 'styles');\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"tile-source.endpoints.js","sourceRoot":"","sources":["../../../src/lib/tile-source.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAAyC,uCAA0B;IACjE,6BAAY,MAAc;eACxB,kBAAM,MAAM,EAAE,aAAa,CAAC;IAC9B,CAAC;IAED,qCAAO,GAAP;QACE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,KAAK,CAAC,UAAA,CAAC;YAC5D,IAAI,CAAC,CAAC,UAAU,KAAK,GAAG,EAAE;gBACxB,8CAA8C;gBAC9C,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACH,0BAAC;AAAD,CAAC,AAbD,CAAyC,aAAa,GAarD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { ITileSource } from './api-interfaces';\n\nexport class TileSourceEndpoints extends BaseEndpoints<ITileSource> {\n constructor(client: Client) {\n super(client, 'tilesources');\n }\n\n drivers(): Promise<string[]> {\n return this.client._get(`/api/v1/tilesources/drivers`).catch(e => {\n if (e.statusCode === 404) {\n // Backwards compatibility for pre-1.0.0 Flo.w\n return ['tilelive', 'dataset'];\n }\n });\n }\n}\n"]}
1
+ {"version":3,"file":"tile-source.endpoints.js","sourceRoot":"","sources":["../../../src/lib/tile-source.endpoints.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;IAAyC,uCAA0B;IACjE,6BAAY,MAAc;QACxB,OAAA,MAAK,YAAC,MAAM,EAAE,aAAa,CAAC,SAAC;IAC/B,CAAC;IAED,qCAAO,GAAP;QACE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,KAAK,CAAC,UAAA,CAAC;YAC5D,IAAI,CAAC,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;gBACzB,8CAA8C;gBAC9C,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACjC,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACH,0BAAC;AAAD,CAAC,AAbD,CAAyC,aAAa,GAarD","sourcesContent":["/**\n * Copyright © 2018 Emu Analytics\n */\n\nimport { Client } from './client';\nimport { BaseEndpoints } from './base.endpoints';\nimport { ITileSource } from './api-interfaces';\n\nexport class TileSourceEndpoints extends BaseEndpoints<ITileSource> {\n constructor(client: Client) {\n super(client, 'tilesources');\n }\n\n drivers(): Promise<string[]> {\n return this.client._get(`/api/v1/tilesources/drivers`).catch(e => {\n if (e.statusCode === 404) {\n // Backwards compatibility for pre-1.0.0 Flo.w\n return ['tilelive', 'dataset'];\n }\n });\n }\n}\n"]}