@splunk/visualization-context 26.4.1 → 27.0.0

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 (44) hide show
  1. package/BaseRegistry.js +227 -495
  2. package/BaseRegistry.js.map +7 -1
  3. package/DataSourceContext.js +55 -125
  4. package/DataSourceContext.js.map +7 -1
  5. package/EventsContext.js +54 -121
  6. package/EventsContext.js.map +7 -1
  7. package/FeatureFlagContext.js +55 -120
  8. package/FeatureFlagContext.js.map +7 -1
  9. package/FeatureFlags.js +27 -107
  10. package/FeatureFlags.js.map +7 -1
  11. package/GeoContext.js +55 -120
  12. package/GeoContext.js.map +7 -1
  13. package/GeoJsonProvider.js +26712 -303
  14. package/GeoJsonProvider.js.map +7 -1
  15. package/GeoRegistry.js +280 -691
  16. package/GeoRegistry.js.map +7 -1
  17. package/IconContext.js +55 -120
  18. package/IconContext.js.map +7 -1
  19. package/IconRegistry.js +256 -654
  20. package/IconRegistry.js.map +7 -1
  21. package/ImageContext.js +55 -120
  22. package/ImageContext.js.map +7 -1
  23. package/ImageRegistry.js +265 -660
  24. package/ImageRegistry.js.map +7 -1
  25. package/LocalIconProvider.js +206 -470
  26. package/LocalIconProvider.js.map +7 -1
  27. package/LocalImageProvider.js +143 -366
  28. package/LocalImageProvider.js.map +7 -1
  29. package/MapContext.js +103 -164
  30. package/MapContext.js.map +7 -1
  31. package/MessageContext.js +54 -121
  32. package/MessageContext.js.map +7 -1
  33. package/MockedProvider.js +146 -376
  34. package/MockedProvider.js.map +7 -1
  35. package/Provider.js +87 -276
  36. package/Provider.js.map +7 -1
  37. package/TimezoneContext.js +55 -122
  38. package/TimezoneContext.js.map +7 -1
  39. package/package.json +7 -14
  40. package/testDataURIs.js +37 -106
  41. package/testDataURIs.js.map +7 -1
  42. package/testSVG.js +27 -104
  43. package/testSVG.js.map +7 -1
  44. package/babel.config.js +0 -3
package/GeoRegistry.js CHANGED
@@ -1,710 +1,299 @@
1
- /*!
2
- * Copyright © 2024 Splunk Inc.
3
- * SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
4
- * in part without a valid written license from Splunk Inc. is PROHIBITED.
5
- */
6
- module.exports =
7
- /******/ (function(modules) { // webpackBootstrap
8
- /******/ // The module cache
9
- /******/ var installedModules = {};
10
- /******/
11
- /******/ // The require function
12
- /******/ function __webpack_require__(moduleId) {
13
- /******/
14
- /******/ // Check if module is in cache
15
- /******/ if(installedModules[moduleId]) {
16
- /******/ return installedModules[moduleId].exports;
17
- /******/ }
18
- /******/ // Create a new module (and put it into the cache)
19
- /******/ var module = installedModules[moduleId] = {
20
- /******/ i: moduleId,
21
- /******/ l: false,
22
- /******/ exports: {}
23
- /******/ };
24
- /******/
25
- /******/ // Execute the module function
26
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
27
- /******/
28
- /******/ // Flag the module as loaded
29
- /******/ module.l = true;
30
- /******/
31
- /******/ // Return the exports of the module
32
- /******/ return module.exports;
33
- /******/ }
34
- /******/
35
- /******/
36
- /******/ // expose the modules object (__webpack_modules__)
37
- /******/ __webpack_require__.m = modules;
38
- /******/
39
- /******/ // expose the module cache
40
- /******/ __webpack_require__.c = installedModules;
41
- /******/
42
- /******/ // define getter function for harmony exports
43
- /******/ __webpack_require__.d = function(exports, name, getter) {
44
- /******/ if(!__webpack_require__.o(exports, name)) {
45
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
46
- /******/ }
47
- /******/ };
48
- /******/
49
- /******/ // define __esModule on exports
50
- /******/ __webpack_require__.r = function(exports) {
51
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
52
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
53
- /******/ }
54
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
55
- /******/ };
56
- /******/
57
- /******/ // create a fake namespace object
58
- /******/ // mode & 1: value is a module id, require it
59
- /******/ // mode & 2: merge all properties of value into the ns
60
- /******/ // mode & 4: return value when already ns object
61
- /******/ // mode & 8|1: behave like require
62
- /******/ __webpack_require__.t = function(value, mode) {
63
- /******/ if(mode & 1) value = __webpack_require__(value);
64
- /******/ if(mode & 8) return value;
65
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
66
- /******/ var ns = Object.create(null);
67
- /******/ __webpack_require__.r(ns);
68
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
69
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
70
- /******/ return ns;
71
- /******/ };
72
- /******/
73
- /******/ // getDefaultExport function for compatibility with non-harmony modules
74
- /******/ __webpack_require__.n = function(module) {
75
- /******/ var getter = module && module.__esModule ?
76
- /******/ function getDefault() { return module['default']; } :
77
- /******/ function getModuleExports() { return module; };
78
- /******/ __webpack_require__.d(getter, 'a', getter);
79
- /******/ return getter;
80
- /******/ };
81
- /******/
82
- /******/ // Object.prototype.hasOwnProperty.call
83
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
84
- /******/
85
- /******/ // __webpack_public_path__
86
- /******/ __webpack_require__.p = "";
87
- /******/
88
- /******/
89
- /******/ // Load entry module and return exports
90
- /******/ return __webpack_require__(__webpack_require__.s = 23);
91
- /******/ })
92
- /************************************************************************/
93
- /******/ ([
94
- /* 0 */
95
- /***/ (function(module, exports) {
96
-
97
- module.exports = require("@splunk/ui-utils/i18n");
98
-
99
- /***/ }),
100
- /* 1 */
101
- /***/ (function(module, exports) {
102
-
103
- module.exports = require("@babel/runtime/regenerator");
104
-
105
- /***/ }),
106
- /* 2 */
107
- /***/ (function(module, exports) {
108
-
109
- module.exports = require("@babel/runtime/helpers/classCallCheck");
110
-
111
- /***/ }),
112
- /* 3 */
113
- /***/ (function(module, exports) {
114
-
115
- module.exports = require("@babel/runtime/helpers/createClass");
116
-
117
- /***/ }),
118
- /* 4 */
119
- /***/ (function(module, exports) {
120
-
121
- module.exports = require("@babel/runtime/helpers/asyncToGenerator");
122
-
123
- /***/ }),
124
- /* 5 */
125
- /***/ (function(module, exports) {
126
-
127
- module.exports = require("@babel/runtime/helpers/getPrototypeOf");
128
-
129
- /***/ }),
130
- /* 6 */
131
- /***/ (function(module, exports) {
132
-
133
- module.exports = require("@splunk/visualization-context/Provider");
134
-
135
- /***/ }),
136
- /* 7 */,
137
- /* 8 */
138
- /***/ (function(module, exports) {
139
-
140
- module.exports = require("@babel/runtime/helpers/inherits");
141
-
142
- /***/ }),
143
- /* 9 */
144
- /***/ (function(module, exports) {
145
-
146
- module.exports = require("@babel/runtime/helpers/possibleConstructorReturn");
147
-
148
- /***/ }),
149
- /* 10 */,
150
- /* 11 */
151
- /***/ (function(module, exports) {
152
-
153
- module.exports = require("@babel/runtime/helpers/slicedToArray");
154
-
155
- /***/ }),
156
- /* 12 */
157
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
158
-
159
- "use strict";
160
- __webpack_require__.r(__webpack_exports__);
161
- /* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);
162
- /* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__);
163
- /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(11);
164
- /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__);
165
- /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2);
166
- /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__);
167
- /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3);
168
- /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__);
169
- /* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1);
170
- /* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__);
171
- /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(0);
172
- /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_5__);
173
- /* harmony import */ var _splunk_visualization_context_Provider__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6);
174
- /* harmony import */ var _splunk_visualization_context_Provider__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualization_context_Provider__WEBPACK_IMPORTED_MODULE_6__);
175
-
176
-
177
-
178
-
179
-
180
- /* eslint-disable class-methods-use-this */
181
-
182
-
183
-
184
- /**
185
- * Base Registry
186
- */
187
-
188
- var BaseRegistry = /*#__PURE__*/function () {
189
- function BaseRegistry() {
190
- _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2___default()(this, BaseRegistry);
191
-
1
+ /* Copyright © 2020 Splunk Inc.
2
+ SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
3
+ in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
+ var __create = Object.create;
5
+ var __defProp = Object.defineProperty;
6
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __export = (target, all) => {
11
+ for (var name in all)
12
+ __defProp(target, name, { get: all[name], enumerable: true });
13
+ };
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from))
17
+ if (!__hasOwnProp.call(to, key) && key !== except)
18
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
19
+ }
20
+ return to;
21
+ };
22
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
23
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
24
+ // If the importer is in node compatibility mode or this is not an ESM
25
+ // file that has been converted to a CommonJS file using a Babel-
26
+ // compatible transform (i.e. "__esModule" has not been set), then set
27
+ // "default" to the CommonJS "module.exports" for node compatibility.
28
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
29
+ mod
30
+ ));
31
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
32
+ var __async = (__this, __arguments, generator) => {
33
+ return new Promise((resolve, reject) => {
34
+ var fulfilled = (value) => {
35
+ try {
36
+ step(generator.next(value));
37
+ } catch (e) {
38
+ reject(e);
39
+ }
40
+ };
41
+ var rejected = (value) => {
42
+ try {
43
+ step(generator.throw(value));
44
+ } catch (e) {
45
+ reject(e);
46
+ }
47
+ };
48
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
49
+ step((generator = generator.apply(__this, __arguments)).next());
50
+ });
51
+ };
52
+
53
+ // src/GeoRegistry.js
54
+ var GeoRegistry_exports = {};
55
+ __export(GeoRegistry_exports, {
56
+ default: () => GeoRegistry_default
57
+ });
58
+ module.exports = __toCommonJS(GeoRegistry_exports);
59
+
60
+ // esm-externals:@splunk/ui-utils/i18n
61
+ var i18n_exports = {};
62
+ __export(i18n_exports, {
63
+ default: () => i18n_default
64
+ });
65
+ var defaultImport = __toESM(require("@splunk/ui-utils/i18n"));
66
+ __reExport(i18n_exports, require("@splunk/ui-utils/i18n"));
67
+ var i18n_default = "default" in defaultImport ? defaultImport.default : defaultImport;
68
+
69
+ // esm-externals:@splunk/visualization-context/Provider
70
+ var Provider_exports = {};
71
+ __export(Provider_exports, {
72
+ default: () => Provider_default
73
+ });
74
+ var defaultImport2 = __toESM(require("@splunk/visualization-context/Provider"));
75
+ __reExport(Provider_exports, require("@splunk/visualization-context/Provider"));
76
+ var Provider_default = "default" in defaultImport2 ? defaultImport2.default : defaultImport2;
77
+
78
+ // src/BaseRegistry.js
79
+ var BaseRegistry = class _BaseRegistry {
80
+ constructor() {
192
81
  this.cachedProviders = {};
193
82
  this.defaultProvider = null;
194
83
  }
195
-
196
- _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3___default()(BaseRegistry, [{
197
- key: "isValidProvider",
198
- value:
199
- /**
200
- * check whether user defined provider extends the base provider
201
- * @param {Provider} provider
202
- * @returns {Boolean}
203
- */
204
- function isValidProvider(provider) {
205
- if (provider instanceof _splunk_visualization_context_Provider__WEBPACK_IMPORTED_MODULE_6___default.a) {
206
- return true;
207
- }
208
-
209
- throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_5__["_"])('Invalid Provider'));
84
+ static create() {
85
+ return new _BaseRegistry();
86
+ }
87
+ /**
88
+ * check whether user defined provider extends the base provider
89
+ * @param {Provider} provider
90
+ * @returns {Boolean}
91
+ */
92
+ isValidProvider(provider) {
93
+ if (provider instanceof Provider_default) {
94
+ return true;
210
95
  }
211
- /**
212
- * add default provider to cache
213
- * @param {Provider} provider
214
- */
215
-
216
- }, {
217
- key: "addDefaultProvider",
218
- value: function addDefaultProvider(provider) {
219
- if (this.isValidProvider(provider)) {
220
- this.addProvider(provider);
221
- this.defaultProvider = provider;
222
- }
96
+ throw new Error((0, i18n_exports._)("Invalid Provider"));
97
+ }
98
+ /**
99
+ * add default provider to cache
100
+ * @param {Provider} provider
101
+ */
102
+ addDefaultProvider(provider) {
103
+ if (this.isValidProvider(provider)) {
104
+ this.addProvider(provider);
105
+ this.defaultProvider = provider;
223
106
  }
224
- /**
225
- * add provider to cache
226
- * @param {Provider} provider
227
- */
228
-
229
- }, {
230
- key: "addProvider",
231
- value: function addProvider(provider) {
232
- if (this.isValidProvider(provider)) {
233
- if (this.cachedProviders[provider.getType()]) {
234
- // eslint-disable-next-line
235
- console.warn("The provider \"".concat(provider.getType(), "\" existed already."));
236
- }
237
-
238
- this.cachedProviders[provider.getType()] = provider;
107
+ }
108
+ /**
109
+ * add provider to cache
110
+ * @param {Provider} provider
111
+ */
112
+ addProvider(provider) {
113
+ if (this.isValidProvider(provider)) {
114
+ if (this.cachedProviders[provider.getType()]) {
115
+ console.warn(`The provider "${provider.getType()}" existed already.`);
239
116
  }
117
+ this.cachedProviders[provider.getType()] = provider;
240
118
  }
241
- /**
242
- * delete provider
243
- * @param {String} providerType
244
- */
245
-
246
- }, {
247
- key: "deleteProvider",
248
- value: function deleteProvider(providerType) {
249
- var cachedProvider = this.cachedProviders[providerType];
250
-
251
- if (!cachedProvider) {
252
- // eslint-disable-next-line
253
- console.warn("The provider \"".concat(providerType, "\" does not existed"));
254
- return;
255
- }
256
-
257
- if (this.defaultProvider && providerType === this.defaultProvider.getType()) {
258
- this.defaultProvider = null;
259
- }
260
-
261
- delete this.cachedProviders[providerType];
119
+ }
120
+ /**
121
+ * delete provider
122
+ * @param {String} providerType
123
+ */
124
+ deleteProvider(providerType) {
125
+ const cachedProvider = this.cachedProviders[providerType];
126
+ if (!cachedProvider) {
127
+ console.warn(`The provider "${providerType}" does not existed`);
128
+ return;
262
129
  }
263
- /**
264
- * find provider from cache
265
- * @param {String} type
266
- * @returns {Provider} provider
267
- */
268
-
269
- }, {
270
- key: "findProvider",
271
- value: function findProvider(type) {
272
- var provider = this.cachedProviders[type];
273
-
274
- if (provider) {
275
- return provider;
276
- }
277
-
278
- throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_5__["_"])('Provider not found'));
130
+ if (this.defaultProvider && providerType === this.defaultProvider.getType()) {
131
+ this.defaultProvider = null;
279
132
  }
280
- /**
281
- * list all providers
282
- * @return {Object} provider = { type: 'local', isDefault: true }
283
- */
284
-
285
- }, {
286
- key: "listProviders",
287
- value: function listProviders() {
288
- var _this = this;
289
-
290
- return Object.keys(this.cachedProviders).map(function (type) {
291
- return {
292
- type: type,
293
- isDefault: type === _this.defaultProvider.getType()
294
- };
295
- });
133
+ delete this.cachedProviders[providerType];
134
+ }
135
+ /**
136
+ * find provider from cache
137
+ * @param {String} type
138
+ * @returns {Provider} provider
139
+ */
140
+ findProvider(type) {
141
+ const provider = this.cachedProviders[type];
142
+ if (provider) {
143
+ return provider;
296
144
  }
297
- /**
298
- * check whether src is a http url or a url used for icon/image-registry (e.g. 'kvstore://image123')
299
- */
300
-
301
- }, {
302
- key: "isResourceURL",
303
- value: function isResourceURL(url) {
304
- if (!url || url.indexOf('://') < 0) {
305
- return false;
306
- }
307
-
308
- var _this$parseURL = this.parseURL(url),
309
- type = _this$parseURL.type;
310
-
311
- return type !== 'http' && type !== 'https';
145
+ throw new Error((0, i18n_exports._)("Provider not found"));
146
+ }
147
+ /**
148
+ * list all providers
149
+ * @return {Object} provider = { type: 'local', isDefault: true }
150
+ */
151
+ listProviders() {
152
+ return Object.keys(this.cachedProviders).map((type) => ({
153
+ type,
154
+ isDefault: type === this.defaultProvider.getType()
155
+ }));
156
+ }
157
+ /**
158
+ * check whether src is a http url or a url used for icon/image-registry (e.g. 'kvstore://image123')
159
+ */
160
+ isResourceURL(url) {
161
+ if (!url || url.indexOf("://") < 0) {
162
+ return false;
312
163
  }
313
- /**
314
- * parse provider type and id from the url
315
- * @params {String} url 'kvstore://image123'
316
- * @returns {Object} obj
317
- * @returns {String} obj.type 'kvstore'
318
- * @returns {String} obj.id 'image123'
319
- */
320
-
321
- }, {
322
- key: "parseURL",
323
- value: function parseURL(url) {
324
- if (url) {
325
- var _url$split = url.split('://'),
326
- _url$split2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_url$split, 2),
327
- type = _url$split2[0],
328
- id = _url$split2[1];
329
-
330
- if (type && id) {
331
- return {
332
- type: type,
333
- id: id
334
- };
335
- }
164
+ const { type } = this.parseURL(url);
165
+ return type !== "http" && type !== "https";
166
+ }
167
+ /**
168
+ * parse provider type and id from the url
169
+ * @params {String} url 'kvstore://image123'
170
+ * @returns {Object} obj
171
+ * @returns {String} obj.type 'kvstore'
172
+ * @returns {String} obj.id 'image123'
173
+ */
174
+ parseURL(url) {
175
+ if (url) {
176
+ const [type, id] = url.split("://");
177
+ if (type && id) {
178
+ return { type, id };
336
179
  }
337
-
338
- throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_5__["_"])('Invalid url'));
339
180
  }
340
- /**
341
- * upload
342
- * @param {DataURI} dataURI
343
- * @param {Object} metaData
344
- * @param {String} providerType e.g. 'kvstore' or 'sui' or 'local'
345
- * @returns {String} id e.g. 'kvstore://image123'
346
- */
347
-
348
- }, {
349
- key: "upload",
350
- value: function () {
351
- var _upload = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default()( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee(dataURI, metaData, providerType) {
352
- var provider, id;
353
- return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee$(_context) {
354
- while (1) {
355
- switch (_context.prev = _context.next) {
356
- case 0:
357
- if (!(providerType == null && this.defaultProvider == null)) {
358
- _context.next = 2;
359
- break;
360
- }
361
-
362
- throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_5__["_"])('No valid provider was found. Please add a provider'));
363
-
364
- case 2:
365
- provider = providerType ? this.findProvider(providerType) : this.defaultProvider;
366
- _context.next = 5;
367
- return provider.upload(dataURI, metaData);
368
-
369
- case 5:
370
- id = _context.sent;
371
- return _context.abrupt("return", "".concat(provider.getType(), "://").concat(id));
372
-
373
- case 7:
374
- case "end":
375
- return _context.stop();
376
- }
377
- }
378
- }, _callee, this);
379
- }));
380
-
381
- function upload(_x, _x2, _x3) {
382
- return _upload.apply(this, arguments);
383
- }
384
-
385
- return upload;
386
- }()
387
- /**
388
- * get object by url
389
- * @param {String} url 'kvstore://image123'
390
- * @returns {Object} obj e.g. an image object or icon
391
- */
392
-
393
- }, {
394
- key: "getByURL",
395
- value: function () {
396
- var _getByURL = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default()( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee2(url) {
397
- var _this$parseURL2, type, id, provider, obj;
398
-
399
- return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee2$(_context2) {
400
- while (1) {
401
- switch (_context2.prev = _context2.next) {
402
- case 0:
403
- _this$parseURL2 = this.parseURL(url), type = _this$parseURL2.type, id = _this$parseURL2.id;
404
- provider = this.findProvider(type);
405
- _context2.next = 4;
406
- return provider.getById(id);
407
-
408
- case 4:
409
- obj = _context2.sent;
410
- return _context2.abrupt("return", obj);
411
-
412
- case 6:
413
- case "end":
414
- return _context2.stop();
415
- }
416
- }
417
- }, _callee2, this);
418
- }));
419
-
420
- function getByURL(_x4) {
421
- return _getByURL.apply(this, arguments);
422
- }
423
-
424
- return getByURL;
425
- }()
426
- /**
427
- * delete object by url
428
- * @param {String} url 'kvstore://image123' || 'sui://icon123'
429
- * @returns {Object} obj e.g. an image object or icon
430
- */
431
-
432
- }, {
433
- key: "deleteByURL",
434
- value: function () {
435
- var _deleteByURL = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default()( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee3(url) {
436
- var _this$parseURL3, type, id, provider, obj;
437
-
438
- return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee3$(_context3) {
439
- while (1) {
440
- switch (_context3.prev = _context3.next) {
441
- case 0:
442
- _this$parseURL3 = this.parseURL(url), type = _this$parseURL3.type, id = _this$parseURL3.id;
443
- provider = this.findProvider(type);
444
- _context3.next = 4;
445
- return provider.deleteById(id);
446
-
447
- case 4:
448
- obj = _context3.sent;
449
- return _context3.abrupt("return", obj);
450
-
451
- case 6:
452
- case "end":
453
- return _context3.stop();
454
- }
455
- }
456
- }, _callee3, this);
457
- }));
458
-
459
- function deleteByURL(_x5) {
460
- return _deleteByURL.apply(this, arguments);
461
- }
462
-
463
- return deleteByURL;
464
- }()
465
- /**
466
- * list all object ids
467
- * @params {String} providerType e.g. 'kvstore' or 'sui'
468
- * @params {Object} options
469
- * @returns {Array} ids
470
- */
471
-
472
- }, {
473
- key: "listIds",
474
- value: function () {
475
- var _listIds = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default()( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee4(providerType) {
476
- var options,
477
- provider,
478
- ids,
479
- _args4 = arguments;
480
- return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee4$(_context4) {
481
- while (1) {
482
- switch (_context4.prev = _context4.next) {
483
- case 0:
484
- options = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : {
485
- offset: 0,
486
- count: 100
487
- };
488
- provider = this.findProvider(providerType);
489
- _context4.next = 4;
490
- return provider.listIds(options);
491
-
492
- case 4:
493
- ids = _context4.sent;
494
- return _context4.abrupt("return", ids);
495
-
496
- case 6:
497
- case "end":
498
- return _context4.stop();
499
- }
500
- }
501
- }, _callee4, this);
502
- }));
503
-
504
- function listIds(_x6) {
505
- return _listIds.apply(this, arguments);
181
+ throw new Error((0, i18n_exports._)("Invalid url"));
182
+ }
183
+ /**
184
+ * upload
185
+ * @param {DataURI} dataURI
186
+ * @param {Object} metaData
187
+ * @param {String} providerType e.g. 'kvstore' or 'sui' or 'local'
188
+ * @returns {String} id e.g. 'kvstore://image123'
189
+ */
190
+ upload(dataURI, metaData, providerType) {
191
+ return __async(this, null, function* () {
192
+ if (providerType == null && this.defaultProvider == null) {
193
+ throw new Error((0, i18n_exports._)("No valid provider was found. Please add a provider"));
506
194
  }
507
-
508
- return listIds;
509
- }()
510
- }], [{
511
- key: "create",
512
- value: function create() {
513
- return new BaseRegistry();
514
- }
515
- }]);
516
-
517
- return BaseRegistry;
518
- }();
519
-
520
- /* harmony default export */ __webpack_exports__["default"] = (BaseRegistry);
521
-
522
- /***/ }),
523
- /* 13 */,
524
- /* 14 */,
525
- /* 15 */,
526
- /* 16 */,
527
- /* 17 */,
528
- /* 18 */,
529
- /* 19 */,
530
- /* 20 */,
531
- /* 21 */,
532
- /* 22 */,
533
- /* 23 */
534
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
535
-
536
- "use strict";
537
- __webpack_require__.r(__webpack_exports__);
538
- /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11);
539
- /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__);
540
- /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
541
- /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__);
542
- /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3);
543
- /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__);
544
- /* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(8);
545
- /* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3__);
546
- /* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9);
547
- /* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__);
548
- /* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(5);
549
- /* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__);
550
- /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(0);
551
- /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_6__);
552
- /* harmony import */ var _BaseRegistry__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(12);
553
-
554
-
555
-
556
-
557
-
558
-
559
-
560
- function _createSuper(Derived) {
561
- var hasNativeReflectConstruct = _isNativeReflectConstruct();
562
-
563
- return function _createSuperInternal() {
564
- var Super = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5___default()(Derived),
565
- result;
566
-
567
- if (hasNativeReflectConstruct) {
568
- var NewTarget = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5___default()(this).constructor;
569
-
570
- result = Reflect.construct(Super, arguments, NewTarget);
571
- } else {
572
- result = Super.apply(this, arguments);
573
- }
574
-
575
- return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4___default()(this, result);
576
- };
577
- }
578
-
579
- function _isNativeReflectConstruct() {
580
- if (typeof Reflect === "undefined" || !Reflect.construct) return false;
581
- if (Reflect.construct.sham) return false;
582
- if (typeof Proxy === "function") return true;
583
-
584
- try {
585
- Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
586
- return true;
587
- } catch (e) {
588
- return false;
195
+ const provider = providerType ? this.findProvider(providerType) : this.defaultProvider;
196
+ const id = yield provider.upload(dataURI, metaData);
197
+ return `${provider.getType()}://${id}`;
198
+ });
589
199
  }
590
- }
591
- /* eslint-disable class-methods-use-this */
592
-
593
-
594
-
595
-
596
-
597
- var GeoRegistry = /*#__PURE__*/function (_BaseRegistry) {
598
- _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default()(GeoRegistry, _BaseRegistry);
599
-
600
- var _super = _createSuper(GeoRegistry);
601
-
602
- function GeoRegistry() {
603
- _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1___default()(this, GeoRegistry);
604
-
605
- return _super.apply(this, arguments);
200
+ /**
201
+ * get object by url
202
+ * @param {String} url 'kvstore://image123'
203
+ * @returns {Object} obj e.g. an image object or icon
204
+ */
205
+ getByURL(url) {
206
+ return __async(this, null, function* () {
207
+ const { type, id } = this.parseURL(url);
208
+ const provider = this.findProvider(type);
209
+ const obj = yield provider.getById(id);
210
+ return obj;
211
+ });
606
212
  }
607
-
608
- _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2___default()(GeoRegistry, [{
609
- key: "parseURL",
610
- value:
611
- /*
612
- * parse url
613
- * @params {String} url the valid url should be geo://default/us
614
- * @return {Object}
615
- * {String} providerType 'geo'
616
- * {String} storageType 'default' for now // todo: add more in the future if geojson are allowed to save in other storages such as 'kvstore'
617
- * {String} mapId 'us' or 'world' for now
618
- */
619
- function parseURL(url) {
620
- if (!/.+:\/\/.*\/.+/.test(url)) {
621
- throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_6__["_"])('Invalid url.'));
622
- }
623
-
624
- var _url$split = url.split('://'),
625
- _url$split2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_url$split, 2),
626
- providerType = _url$split2[0],
627
- geoId = _url$split2[1];
628
-
629
- var _geoId$split = geoId.split('/'),
630
- _geoId$split2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_geoId$split, 2),
631
- storageType = _geoId$split2[0],
632
- mapId = _geoId$split2[1];
633
-
634
- return {
635
- providerType: providerType,
636
- storageType: storageType,
637
- mapId: mapId
638
- };
639
- }
640
- /*
641
- * get geoJson by url
642
- * @params {String} url e.g. geo://default/us
643
- * @return {Json} geoJson
644
- */
645
-
646
- }, {
647
- key: "getByURL",
648
- value: function getByURL(url) {
649
- try {
650
- var _this$parseURL = this.parseURL(url),
651
- providerType = _this$parseURL.providerType,
652
- storageType = _this$parseURL.storageType,
653
- mapId = _this$parseURL.mapId;
654
-
655
- var provider = this.findProvider(providerType);
656
- var geoJson = provider.getById({
657
- storageType: storageType,
658
- mapId: mapId
659
- });
660
- return geoJson;
661
- } catch (error) {
662
- throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_6__["_"])('Cannot get geoJson data.'));
663
- }
664
- } // Todo: return map ids from storage
665
-
666
- /*
667
- * list all available geojson ids
668
- * @params {Object}
669
- * @params {String} providerType
670
- * @params {Object} options
671
- * @return {Array} ids [{id: "us", url: 'geo://default/us'}, {id: 'world', url: 'geo://default/world'}]
672
- */
673
-
674
- }, {
675
- key: "listIds",
676
- value: function listIds(_ref) {
677
- var _ref$providerType = _ref.providerType,
678
- providerType = _ref$providerType === void 0 ? 'geo' : _ref$providerType,
679
- _ref$options = _ref.options,
680
- options = _ref$options === void 0 ? {
681
- offset: 0,
682
- count: 100
683
- } : _ref$options;
684
- var provider = this.findProvider(providerType);
685
- var ids = provider.listIds(options);
213
+ /**
214
+ * delete object by url
215
+ * @param {String} url 'kvstore://image123' || 'sui://icon123'
216
+ * @returns {Object} obj e.g. an image object or icon
217
+ */
218
+ deleteByURL(url) {
219
+ return __async(this, null, function* () {
220
+ const { type, id } = this.parseURL(url);
221
+ const provider = this.findProvider(type);
222
+ const obj = yield provider.deleteById(id);
223
+ return obj;
224
+ });
225
+ }
226
+ /**
227
+ * list all object ids
228
+ * @params {String} providerType e.g. 'kvstore' or 'sui'
229
+ * @params {Object} options
230
+ * @returns {Array} ids
231
+ */
232
+ listIds(_0) {
233
+ return __async(this, arguments, function* (providerType, options = { offset: 0, count: 100 }) {
234
+ const provider = this.findProvider(providerType);
235
+ const ids = yield provider.listIds(options);
686
236
  return ids;
687
- } // Todo: be able to upload geoJson in the future
688
-
689
- }, {
690
- key: "upload",
691
- value: function upload() {} // Todo: be able to delete geoJson in the future
237
+ });
238
+ }
239
+ };
240
+ var BaseRegistry_default = BaseRegistry;
692
241
 
693
- }, {
694
- key: "deleteByURL",
695
- value: function deleteByURL() {}
696
- }], [{
697
- key: "create",
698
- value: function create() {
699
- return new GeoRegistry();
242
+ // src/GeoRegistry.js
243
+ var GeoRegistry = class _GeoRegistry extends BaseRegistry_default {
244
+ static create() {
245
+ return new _GeoRegistry();
246
+ }
247
+ /*
248
+ * parse url
249
+ * @params {String} url the valid url should be geo://default/us
250
+ * @return {Object}
251
+ * {String} providerType 'geo'
252
+ * {String} storageType 'default' for now // todo: add more in the future if geojson are allowed to save in other storages such as 'kvstore'
253
+ * {String} mapId 'us' or 'world' for now
254
+ */
255
+ parseURL(url) {
256
+ if (!/.+:\/\/.*\/.+/.test(url)) {
257
+ throw new Error((0, i18n_exports._)("Invalid url."));
700
258
  }
701
- }]);
702
-
703
- return GeoRegistry;
704
- }(_BaseRegistry__WEBPACK_IMPORTED_MODULE_7__["default"]);
705
-
706
- /* harmony default export */ __webpack_exports__["default"] = (GeoRegistry);
707
-
708
- /***/ })
709
- /******/ ]);
710
- //# sourceMappingURL=GeoRegistry.js.map
259
+ const [providerType, geoId] = url.split("://");
260
+ const [storageType, mapId] = geoId.split("/");
261
+ return { providerType, storageType, mapId };
262
+ }
263
+ /*
264
+ * get geoJson by url
265
+ * @params {String} url e.g. geo://default/us
266
+ * @return {Json} geoJson
267
+ */
268
+ getByURL(url) {
269
+ try {
270
+ const { providerType, storageType, mapId } = this.parseURL(url);
271
+ const provider = this.findProvider(providerType);
272
+ const geoJson = provider.getById({ storageType, mapId });
273
+ return geoJson;
274
+ } catch (error) {
275
+ throw new Error((0, i18n_exports._)("Cannot get geoJson data."));
276
+ }
277
+ }
278
+ // Todo: return map ids from storage
279
+ /*
280
+ * list all available geojson ids
281
+ * @params {Object}
282
+ * @params {String} providerType
283
+ * @params {Object} options
284
+ * @return {Array} ids [{id: "us", url: 'geo://default/us'}, {id: 'world', url: 'geo://default/world'}]
285
+ */
286
+ listIds({ providerType = "geo", options = { offset: 0, count: 100 } }) {
287
+ const provider = this.findProvider(providerType);
288
+ const ids = provider.listIds(options);
289
+ return ids;
290
+ }
291
+ // Todo: be able to upload geoJson in the future
292
+ upload() {
293
+ }
294
+ // Todo: be able to delete geoJson in the future
295
+ deleteByURL() {
296
+ }
297
+ };
298
+ var GeoRegistry_default = GeoRegistry;
299
+ //# sourceMappingURL=GeoRegistry.js.map