@splunk/visualization-context 26.0.0 → 26.1.1

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/regenerator\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@babel/runtime/helpers/asyncToGenerator\"","webpack:///external \"@babel/runtime/helpers/getPrototypeOf\"","webpack:///external \"@splunk/visualization-context/Provider\"","webpack:///external \"@babel/runtime/helpers/inherits\"","webpack:///external \"@babel/runtime/helpers/possibleConstructorReturn\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///external \"@babel/runtime/helpers/slicedToArray\"","webpack:///./src/BaseRegistry.js","webpack:///external \"@babel/runtime/helpers/get\"","webpack:///./src/ImageRegistry.js"],"names":["BaseRegistry","_classCallCheck","cachedProviders","defaultProvider","_createClass","key","value","isValidProvider","provider","Provider","Error","_","addDefaultProvider","addProvider","getType","console","warn","concat","deleteProvider","providerType","cachedProvider","findProvider","type","listProviders","_this","Object","keys","map","isDefault","isResourceURL","url","indexOf","_this$parseURL","parseURL","_url$split","split","_url$split2","_slicedToArray","id","_upload","_asyncToGenerator","_regeneratorRuntime","mark","_callee","dataURI","metaData","wrap","_callee$","_context","prev","next","upload","sent","abrupt","stop","_x","_x2","_x3","apply","arguments","_getByURL","_callee2","_this$parseURL2","obj","_callee2$","_context2","getById","getByURL","_x4","_deleteByURL","_callee3","_this$parseURL3","_callee3$","_context3","deleteById","deleteByURL","_x5","_listIds","_callee4","options","ids","_args4","_callee4$","_context4","length","undefined","offset","count","listIds","_x6","create","ImageRegistry","_BaseRegistry","_inherits","_super","_createSuper","isValidMediaType","validMediaType","VALID_MEDIA_TYPES","some","regex","RegExp","test","join","_get","_getPrototypeOf","prototype","call","_defineProperty"],"mappings":"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","file":"ImageRegistry.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 27);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/regenerator\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@babel/runtime/helpers/asyncToGenerator\");","module.exports = require(\"@babel/runtime/helpers/getPrototypeOf\");","module.exports = require(\"@splunk/visualization-context/Provider\");","module.exports = require(\"@babel/runtime/helpers/inherits\");","module.exports = require(\"@babel/runtime/helpers/possibleConstructorReturn\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"@babel/runtime/helpers/slicedToArray\");","/* eslint-disable class-methods-use-this */\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Provider from '@splunk/visualization-context/Provider';\n\n/**\n * Base Registry\n */\nclass BaseRegistry {\n constructor() {\n this.cachedProviders = {};\n this.defaultProvider = null;\n }\n\n static create() {\n return new BaseRegistry();\n }\n\n /**\n * check whether user defined provider extends the base provider\n * @param {Provider} provider\n * @returns {Boolean}\n */\n isValidProvider(provider) {\n if (provider instanceof Provider) {\n return true;\n }\n throw new Error(_('Invalid Provider'));\n }\n\n /**\n * add default provider to cache\n * @param {Provider} provider\n */\n addDefaultProvider(provider) {\n if (this.isValidProvider(provider)) {\n this.addProvider(provider);\n this.defaultProvider = provider;\n }\n }\n\n /**\n * add provider to cache\n * @param {Provider} provider\n */\n addProvider(provider) {\n if (this.isValidProvider(provider)) {\n if (this.cachedProviders[provider.getType()]) {\n // eslint-disable-next-line\n console.warn(`The provider \"${provider.getType()}\" existed already.`);\n }\n this.cachedProviders[provider.getType()] = provider;\n }\n }\n\n /**\n * delete provider\n * @param {String} providerType\n */\n deleteProvider(providerType) {\n const cachedProvider = this.cachedProviders[providerType];\n if (!cachedProvider) {\n // eslint-disable-next-line\n console.warn(`The provider \"${providerType}\" does not existed`);\n return;\n }\n\n if (this.defaultProvider && providerType === this.defaultProvider.getType()) {\n this.defaultProvider = null;\n }\n delete this.cachedProviders[providerType];\n }\n\n /**\n * find provider from cache\n * @param {String} type\n * @returns {Provider} provider\n */\n findProvider(type) {\n const provider = this.cachedProviders[type];\n if (provider) {\n return provider;\n }\n throw new Error(_('Provider not found'));\n }\n\n /**\n * list all providers\n * @return {Object} provider = { type: 'local', isDefault: true }\n */\n listProviders() {\n return Object.keys(this.cachedProviders).map(type => ({\n type,\n isDefault: type === this.defaultProvider.getType(),\n }));\n }\n\n /**\n * check whether src is a http url or a url used for icon/image-registry (e.g. 'kvstore://image123')\n */\n isResourceURL(url) {\n if (!url || url.indexOf('://') < 0) {\n return false;\n }\n\n const { type } = this.parseURL(url);\n return type !== 'http' && type !== 'https';\n }\n\n /**\n * parse provider type and id from the url\n * @params {String} url 'kvstore://image123'\n * @returns {Object} obj\n * @returns {String} obj.type 'kvstore'\n * @returns {String} obj.id 'image123'\n */\n parseURL(url) {\n if (url) {\n const [type, id] = url.split('://');\n\n if (type && id) {\n return { type, id };\n }\n }\n throw new Error(_('Invalid url'));\n }\n\n /**\n * upload\n * @param {DataURI} dataURI\n * @param {Object} metaData\n * @param {String} providerType e.g. 'kvstore' or 'sui' or 'local'\n * @returns {String} id e.g. 'kvstore://image123'\n */\n async upload(dataURI, metaData, providerType) {\n if (providerType == null && this.defaultProvider == null) {\n throw new Error(_('No valid provider was found. Please add a provider'));\n }\n const provider = providerType ? this.findProvider(providerType) : this.defaultProvider;\n const id = await provider.upload(dataURI, metaData);\n return `${provider.getType()}://${id}`;\n }\n\n /**\n * get object by url\n * @param {String} url 'kvstore://image123'\n * @returns {Object} obj e.g. an image object or icon\n */\n async getByURL(url) {\n const { type, id } = this.parseURL(url);\n const provider = this.findProvider(type);\n const obj = await provider.getById(id);\n return obj;\n }\n\n /**\n * delete object by url\n * @param {String} url 'kvstore://image123' || 'sui://icon123'\n * @returns {Object} obj e.g. an image object or icon\n */\n async deleteByURL(url) {\n const { type, id } = this.parseURL(url);\n const provider = this.findProvider(type);\n const obj = await provider.deleteById(id);\n return obj;\n }\n\n /**\n * list all object ids\n * @params {String} providerType e.g. 'kvstore' or 'sui'\n * @params {Object} options\n * @returns {Array} ids\n */\n async listIds(providerType, options = { offset: 0, count: 100 }) {\n const provider = this.findProvider(providerType);\n const ids = await provider.listIds(options);\n return ids;\n }\n}\n\nexport default BaseRegistry;\n","module.exports = require(\"@babel/runtime/helpers/get\");","/* eslint-disable class-methods-use-this */\nimport { _ } from '@splunk/ui-utils/i18n';\nimport BaseRegistry from './BaseRegistry';\n\n/**\n * Image Registry\n */\nclass ImageRegistry extends BaseRegistry {\n static create() {\n return new ImageRegistry();\n }\n\n static VALID_MEDIA_TYPES = ['png', 'jpeg', 'svg', 'gif', 'webp'];\n\n /**\n * check if the the media type from the dataURI belongs to the supported types\n * @param {DataURI} dataURI\n * @returns {Boolean}\n */\n isValidMediaType(dataURI, validMediaType = ImageRegistry.VALID_MEDIA_TYPES) {\n return validMediaType.some(type => {\n const regex = `^data:image\\\\/${type === 'svg' ? `${type}\\\\+xml` : type};base64,.*$`;\n return new RegExp(regex).test(dataURI);\n });\n }\n\n /**\n * upload image if the image format is supported\n * @param {DataURI} dataURI\n * @param {Object} metaData\n * @param {String} providerType e.g. 'kvstore', or 'sui'\n * @returns {String} id e.g. 'kvstore://image123'\n */\n upload(dataURI, metaData, providerType, validMediaType = ImageRegistry.VALID_MEDIA_TYPES) {\n if (!this.isValidMediaType(dataURI, validMediaType)) {\n throw new Error(\n _(\n `The format of the uploaded file is not supported. Please upload ${validMediaType.join(\n ', '\n )}.`\n )\n );\n }\n\n return super.upload(dataURI, metaData, providerType);\n }\n}\n\nexport default ImageRegistry;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/regenerator\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@babel/runtime/helpers/asyncToGenerator\"","webpack:///external \"@babel/runtime/helpers/getPrototypeOf\"","webpack:///external \"@splunk/visualization-context/Provider\"","webpack:///external \"@babel/runtime/helpers/inherits\"","webpack:///external \"@babel/runtime/helpers/possibleConstructorReturn\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///external \"@babel/runtime/helpers/slicedToArray\"","webpack:///./src/BaseRegistry.js","webpack:///external \"@babel/runtime/helpers/get\"","webpack:///./src/ImageRegistry.js"],"names":["BaseRegistry","provider","_","console","cachedProvider","providerType","type","isDefault","url","id","obj","options","offset","count","ids","ImageRegistry","validMediaType","VALID_MEDIA_TYPES","regex"],"mappings":"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","file":"ImageRegistry.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 27);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/regenerator\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@babel/runtime/helpers/asyncToGenerator\");","module.exports = require(\"@babel/runtime/helpers/getPrototypeOf\");","module.exports = require(\"@splunk/visualization-context/Provider\");","module.exports = require(\"@babel/runtime/helpers/inherits\");","module.exports = require(\"@babel/runtime/helpers/possibleConstructorReturn\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"@babel/runtime/helpers/slicedToArray\");","/* eslint-disable class-methods-use-this */\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Provider from '@splunk/visualization-context/Provider';\n\n/**\n * Base Registry\n */\nclass BaseRegistry {\n constructor() {\n this.cachedProviders = {};\n this.defaultProvider = null;\n }\n\n static create() {\n return new BaseRegistry();\n }\n\n /**\n * check whether user defined provider extends the base provider\n * @param {Provider} provider\n * @returns {Boolean}\n */\n isValidProvider(provider) {\n if (provider instanceof Provider) {\n return true;\n }\n throw new Error(_('Invalid Provider'));\n }\n\n /**\n * add default provider to cache\n * @param {Provider} provider\n */\n addDefaultProvider(provider) {\n if (this.isValidProvider(provider)) {\n this.addProvider(provider);\n this.defaultProvider = provider;\n }\n }\n\n /**\n * add provider to cache\n * @param {Provider} provider\n */\n addProvider(provider) {\n if (this.isValidProvider(provider)) {\n if (this.cachedProviders[provider.getType()]) {\n // eslint-disable-next-line\n console.warn(`The provider \"${provider.getType()}\" existed already.`);\n }\n this.cachedProviders[provider.getType()] = provider;\n }\n }\n\n /**\n * delete provider\n * @param {String} providerType\n */\n deleteProvider(providerType) {\n const cachedProvider = this.cachedProviders[providerType];\n if (!cachedProvider) {\n // eslint-disable-next-line\n console.warn(`The provider \"${providerType}\" does not existed`);\n return;\n }\n\n if (this.defaultProvider && providerType === this.defaultProvider.getType()) {\n this.defaultProvider = null;\n }\n delete this.cachedProviders[providerType];\n }\n\n /**\n * find provider from cache\n * @param {String} type\n * @returns {Provider} provider\n */\n findProvider(type) {\n const provider = this.cachedProviders[type];\n if (provider) {\n return provider;\n }\n throw new Error(_('Provider not found'));\n }\n\n /**\n * list all providers\n * @return {Object} provider = { type: 'local', isDefault: true }\n */\n listProviders() {\n return Object.keys(this.cachedProviders).map(type => ({\n type,\n isDefault: type === this.defaultProvider.getType(),\n }));\n }\n\n /**\n * check whether src is a http url or a url used for icon/image-registry (e.g. 'kvstore://image123')\n */\n isResourceURL(url) {\n if (!url || url.indexOf('://') < 0) {\n return false;\n }\n\n const { type } = this.parseURL(url);\n return type !== 'http' && type !== 'https';\n }\n\n /**\n * parse provider type and id from the url\n * @params {String} url 'kvstore://image123'\n * @returns {Object} obj\n * @returns {String} obj.type 'kvstore'\n * @returns {String} obj.id 'image123'\n */\n parseURL(url) {\n if (url) {\n const [type, id] = url.split('://');\n\n if (type && id) {\n return { type, id };\n }\n }\n throw new Error(_('Invalid url'));\n }\n\n /**\n * upload\n * @param {DataURI} dataURI\n * @param {Object} metaData\n * @param {String} providerType e.g. 'kvstore' or 'sui' or 'local'\n * @returns {String} id e.g. 'kvstore://image123'\n */\n async upload(dataURI, metaData, providerType) {\n if (providerType == null && this.defaultProvider == null) {\n throw new Error(_('No valid provider was found. Please add a provider'));\n }\n const provider = providerType ? this.findProvider(providerType) : this.defaultProvider;\n const id = await provider.upload(dataURI, metaData);\n return `${provider.getType()}://${id}`;\n }\n\n /**\n * get object by url\n * @param {String} url 'kvstore://image123'\n * @returns {Object} obj e.g. an image object or icon\n */\n async getByURL(url) {\n const { type, id } = this.parseURL(url);\n const provider = this.findProvider(type);\n const obj = await provider.getById(id);\n return obj;\n }\n\n /**\n * delete object by url\n * @param {String} url 'kvstore://image123' || 'sui://icon123'\n * @returns {Object} obj e.g. an image object or icon\n */\n async deleteByURL(url) {\n const { type, id } = this.parseURL(url);\n const provider = this.findProvider(type);\n const obj = await provider.deleteById(id);\n return obj;\n }\n\n /**\n * list all object ids\n * @params {String} providerType e.g. 'kvstore' or 'sui'\n * @params {Object} options\n * @returns {Array} ids\n */\n async listIds(providerType, options = { offset: 0, count: 100 }) {\n const provider = this.findProvider(providerType);\n const ids = await provider.listIds(options);\n return ids;\n }\n}\n\nexport default BaseRegistry;\n","module.exports = require(\"@babel/runtime/helpers/get\");","/* eslint-disable class-methods-use-this */\nimport { _ } from '@splunk/ui-utils/i18n';\nimport BaseRegistry from './BaseRegistry';\n\n/**\n * Image Registry\n */\nclass ImageRegistry extends BaseRegistry {\n static create() {\n return new ImageRegistry();\n }\n\n static VALID_MEDIA_TYPES = ['png', 'jpeg', 'svg', 'gif', 'webp'];\n\n /**\n * check if the the media type from the dataURI belongs to the supported types\n * @param {DataURI} dataURI\n * @returns {Boolean}\n */\n isValidMediaType(dataURI, validMediaType = ImageRegistry.VALID_MEDIA_TYPES) {\n return validMediaType.some(type => {\n const regex = `^data:image\\\\/${type === 'svg' ? `${type}\\\\+xml` : type};base64,.*$`;\n return new RegExp(regex).test(dataURI);\n });\n }\n\n /**\n * upload image if the image format is supported\n * @param {DataURI} dataURI\n * @param {Object} metaData\n * @param {String} providerType e.g. 'kvstore', or 'sui'\n * @returns {String} id e.g. 'kvstore://image123'\n */\n upload(dataURI, metaData, providerType, validMediaType = ImageRegistry.VALID_MEDIA_TYPES) {\n if (!this.isValidMediaType(dataURI, validMediaType)) {\n throw new Error(\n _(\n `The format of the uploaded file is not supported. Please upload ${validMediaType.join(\n ', '\n )}.`\n )\n );\n }\n\n return super.upload(dataURI, metaData, providerType);\n }\n}\n\nexport default ImageRegistry;\n"],"sourceRoot":""}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Copyright © 2018 Splunk Inc.
2
+ * Copyright © 2024 Splunk Inc.
3
3
  * SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
4
4
  * in part without a valid written license from Splunk Inc. is PROHIBITED.
5
5
  */
@@ -211,45 +211,65 @@ __webpack_require__.r(__webpack_exports__);
211
211
 
212
212
 
213
213
 
214
+
214
215
  function ownKeys(object, enumerableOnly) {
215
216
  var keys = Object.keys(object);
217
+
216
218
  if (Object.getOwnPropertySymbols) {
217
219
  var symbols = Object.getOwnPropertySymbols(object);
218
- enumerableOnly && (symbols = symbols.filter(function (sym) {
220
+ if (enumerableOnly) symbols = symbols.filter(function (sym) {
219
221
  return Object.getOwnPropertyDescriptor(object, sym).enumerable;
220
- })), keys.push.apply(keys, symbols);
222
+ });
223
+ keys.push.apply(keys, symbols);
221
224
  }
225
+
222
226
  return keys;
223
227
  }
228
+
224
229
  function _objectSpread(target) {
225
230
  for (var i = 1; i < arguments.length; i++) {
226
- var source = null != arguments[i] ? arguments[i] : {};
227
- i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
228
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]);
229
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
230
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
231
- });
231
+ var source = arguments[i] != null ? arguments[i] : {};
232
+
233
+ if (i % 2) {
234
+ ownKeys(Object(source), true).forEach(function (key) {
235
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]);
236
+ });
237
+ } else if (Object.getOwnPropertyDescriptors) {
238
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
239
+ } else {
240
+ ownKeys(Object(source)).forEach(function (key) {
241
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
242
+ });
243
+ }
232
244
  }
245
+
233
246
  return target;
234
247
  }
248
+
235
249
  function _createSuper(Derived) {
236
250
  var hasNativeReflectConstruct = _isNativeReflectConstruct();
251
+
237
252
  return function _createSuperInternal() {
238
253
  var Super = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6___default()(Derived),
239
- result;
254
+ result;
255
+
240
256
  if (hasNativeReflectConstruct) {
241
257
  var NewTarget = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6___default()(this).constructor;
258
+
242
259
  result = Reflect.construct(Super, arguments, NewTarget);
243
260
  } else {
244
261
  result = Super.apply(this, arguments);
245
262
  }
263
+
246
264
  return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_5___default()(this, result);
247
265
  };
248
266
  }
267
+
249
268
  function _isNativeReflectConstruct() {
250
269
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
251
270
  if (Reflect.construct.sham) return false;
252
271
  if (typeof Proxy === "function") return true;
272
+
253
273
  try {
254
274
  Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
255
275
  return true;
@@ -261,9 +281,10 @@ function _isNativeReflectConstruct() {
261
281
 
262
282
 
263
283
 
284
+
285
+
264
286
  var b64EncodeUnicode = function b64EncodeUnicode(str) {
265
- return (
266
- // first we use encodeURIComponent to get percent-encoded UTF-8,
287
+ return (// first we use encodeURIComponent to get percent-encoded UTF-8,
267
288
  // then we convert the percent encodings into raw bytes which
268
289
  // can be fed into btoa.
269
290
  btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, function (match, p1) {
@@ -272,31 +293,35 @@ var b64EncodeUnicode = function b64EncodeUnicode(str) {
272
293
  );
273
294
  };
274
295
  var KEY = '__icons__';
275
-
276
296
  /**
277
297
  * a local icon provider
278
298
  */
299
+
279
300
  var LocalIconProvider = /*#__PURE__*/function (_Provider) {
280
301
  _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(LocalIconProvider, _Provider);
302
+
281
303
  var _super = _createSuper(LocalIconProvider);
304
+
282
305
  function LocalIconProvider() {
283
306
  _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2___default()(this, LocalIconProvider);
307
+
284
308
  return _super.call(this);
285
309
  }
286
-
287
310
  /**
288
311
  * return provider type
289
312
  * @return {String} 'local'
290
313
  */
314
+
315
+
291
316
  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3___default()(LocalIconProvider, [{
292
317
  key: "getType",
293
318
  value: function getType() {
294
319
  return 'local';
295
320
  }
296
-
297
321
  /**
298
322
  * upload one new icon
299
323
  */
324
+
300
325
  }, {
301
326
  key: "upload",
302
327
  value: function () {
@@ -308,27 +333,33 @@ var LocalIconProvider = /*#__PURE__*/function (_Provider) {
308
333
  case 0:
309
334
  _context.next = 2;
310
335
  return fetch(dataURI);
336
+
311
337
  case 2:
312
338
  response = _context.sent;
313
339
  _context.next = 5;
314
340
  return response.text();
341
+
315
342
  case 5:
316
343
  text = _context.sent;
317
344
  parser = new DOMParser();
318
345
  xmlDoc = parser.parseFromString(text, 'text/xml');
319
346
  svg = xmlDoc.getElementsByTagName('svg')[0];
347
+
320
348
  if (svg.getAttribute('viewBox')) {
321
349
  _context.next = 11;
322
350
  break;
323
351
  }
352
+
324
353
  throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_9__["_"])('Please upload a valid svg with viewBox attribute.'));
354
+
325
355
  case 11:
326
356
  // reset svg attributes
327
- svg.setAttribute('preserveAspectRatio', 'none');
328
- // convert back to dataURI
357
+ svg.setAttribute('preserveAspectRatio', 'none'); // convert back to dataURI
358
+
329
359
  serializer = new XMLSerializer();
330
360
  svgStr = b64EncodeUnicode(serializer.serializeToString(svg));
331
361
  iconDataURI = "data:image/svg+xml;base64,".concat(svgStr); // save to localStorage
362
+
332
363
  _context.prev = 15;
333
364
  icon = {
334
365
  dataURI: iconDataURI,
@@ -339,10 +370,12 @@ var LocalIconProvider = /*#__PURE__*/function (_Provider) {
339
370
  icons = _objectSpread(_objectSpread({}, icons), {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()({}, id, icon));
340
371
  localStorage.setItem(KEY, JSON.stringify(icons));
341
372
  return _context.abrupt("return", id);
373
+
342
374
  case 24:
343
375
  _context.prev = 24;
344
376
  _context.t0 = _context["catch"](15);
345
377
  throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_9__["_"])('The icon cannot be uploaded. Please check whether your localStorage is full.'));
378
+
346
379
  case 27:
347
380
  case "end":
348
381
  return _context.stop();
@@ -350,41 +383,47 @@ var LocalIconProvider = /*#__PURE__*/function (_Provider) {
350
383
  }
351
384
  }, _callee, null, [[15, 24]]);
352
385
  }));
386
+
353
387
  function upload(_x, _x2) {
354
388
  return _upload.apply(this, arguments);
355
389
  }
390
+
356
391
  return upload;
357
392
  }()
358
393
  /**
359
394
  * get one icon by icon id
360
395
  */
396
+
361
397
  }, {
362
398
  key: "getById",
363
399
  value: function getById(id) {
364
400
  var icons = JSON.parse(localStorage.getItem(KEY) || '{}');
401
+
365
402
  if (icons[id]) {
366
403
  return icons[id];
367
404
  }
405
+
368
406
  throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_9__["_"])('The icon is not found.'));
369
407
  }
370
-
371
408
  /**
372
409
  * get all icon ids
373
410
  * @params options
374
411
  * @params options.meta a list of meta data attribute that would be returned with each id
375
412
  * @params options.search a search string to filter the returned icons
376
413
  */
414
+
377
415
  }, {
378
416
  key: "listIds",
379
417
  value: function listIds(_ref) {
380
418
  var _ref$offset = _ref.offset,
381
- offset = _ref$offset === void 0 ? 0 : _ref$offset,
382
- _ref$count = _ref.count,
383
- count = _ref$count === void 0 ? 100 : _ref$count,
384
- _ref$meta = _ref.meta,
385
- meta = _ref$meta === void 0 ? [] : _ref$meta,
386
- _ref$search = _ref.search,
387
- search = _ref$search === void 0 ? null : _ref$search;
419
+ offset = _ref$offset === void 0 ? 0 : _ref$offset,
420
+ _ref$count = _ref.count,
421
+ count = _ref$count === void 0 ? 100 : _ref$count,
422
+ _ref$meta = _ref.meta,
423
+ meta = _ref$meta === void 0 ? [] : _ref$meta,
424
+ _ref$search = _ref.search,
425
+ search = _ref$search === void 0 ? null : _ref$search;
426
+
388
427
  try {
389
428
  var icons = JSON.parse(localStorage.getItem(KEY) || '{}');
390
429
  var results = [];
@@ -392,12 +431,13 @@ var LocalIconProvider = /*#__PURE__*/function (_Provider) {
392
431
  var icon = {
393
432
  id: id
394
433
  };
395
- var iconMeta = icons[id].metaData || {};
396
- // If search is a valid string, return the icon with matched meta data
434
+ var iconMeta = icons[id].metaData || {}; // If search is a valid string, return the icon with matched meta data
435
+
397
436
  var isSearchedIcon = search != null && Object.keys(iconMeta).some(function (attr) {
398
437
  var iconMetaValue = iconMeta[attr].toLowerCase();
399
438
  return iconMetaValue.indexOf(search.toLowerCase()) > -1;
400
439
  });
440
+
401
441
  if (search == null || isSearchedIcon) {
402
442
  if (meta && meta.length) {
403
443
  icon.metaData = {};
@@ -407,6 +447,7 @@ var LocalIconProvider = /*#__PURE__*/function (_Provider) {
407
447
  }
408
448
  });
409
449
  }
450
+
410
451
  results.push(icon);
411
452
  }
412
453
  });
@@ -415,10 +456,10 @@ var LocalIconProvider = /*#__PURE__*/function (_Provider) {
415
456
  throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_9__["_"])('The icon ids cannot be listed.'));
416
457
  }
417
458
  }
418
-
419
459
  /**
420
460
  * delete an icon by icon id
421
461
  */
462
+
422
463
  }, {
423
464
  key: "deleteById",
424
465
  value: function deleteById(id) {
@@ -433,8 +474,10 @@ var LocalIconProvider = /*#__PURE__*/function (_Provider) {
433
474
  }
434
475
  }
435
476
  }]);
477
+
436
478
  return LocalIconProvider;
437
479
  }(_splunk_visualization_context_Provider__WEBPACK_IMPORTED_MODULE_10___default.a);
480
+
438
481
  /* harmony default export */ __webpack_exports__["default"] = (LocalIconProvider);
439
482
 
440
483
  /***/ })
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/regenerator\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@babel/runtime/helpers/asyncToGenerator\"","webpack:///external \"@babel/runtime/helpers/getPrototypeOf\"","webpack:///external \"@splunk/visualization-context/Provider\"","webpack:///external \"@babel/runtime/helpers/inherits\"","webpack:///external \"@babel/runtime/helpers/possibleConstructorReturn\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///external \"uuid-v4\"","webpack:///./src/LocalIconProvider.js"],"names":["b64EncodeUnicode","str","btoa","encodeURIComponent","replace","match","p1","String","fromCharCode","parseInt","concat","KEY","LocalIconProvider","_Provider","_inherits","_super","_createSuper","_classCallCheck","call","_createClass","key","value","getType","_upload","_asyncToGenerator","_regeneratorRuntime","mark","_callee","dataURI","metaData","response","text","parser","xmlDoc","svg","serializer","svgStr","iconDataURI","icon","id","icons","wrap","_callee$","_context","prev","next","fetch","sent","DOMParser","parseFromString","getElementsByTagName","getAttribute","Error","_","setAttribute","XMLSerializer","serializeToString","uuid","JSON","parse","localStorage","getItem","_objectSpread","_defineProperty","setItem","stringify","abrupt","t0","stop","upload","_x","_x2","apply","arguments","getById","listIds","_ref","_ref$offset","offset","_ref$count","count","_ref$meta","meta","_ref$search","search","results","Object","keys","slice","forEach","iconMeta","isSearchedIcon","some","attr","iconMetaValue","toLowerCase","indexOf","length","push","error","deleteById","Provider"],"mappings":"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","file":"LocalIconProvider.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 28);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/regenerator\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@babel/runtime/helpers/asyncToGenerator\");","module.exports = require(\"@babel/runtime/helpers/getPrototypeOf\");","module.exports = require(\"@splunk/visualization-context/Provider\");","module.exports = require(\"@babel/runtime/helpers/inherits\");","module.exports = require(\"@babel/runtime/helpers/possibleConstructorReturn\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"uuid-v4\");","/* eslint-disable class-methods-use-this,no-useless-constructor */\nimport uuid from 'uuid-v4';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Provider from '@splunk/visualization-context/Provider';\n\nexport const b64EncodeUnicode = str =>\n // first we use encodeURIComponent to get percent-encoded UTF-8,\n // then we convert the percent encodings into raw bytes which\n // can be fed into btoa.\n btoa(\n encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, (match, p1) =>\n String.fromCharCode(parseInt(`0x${p1}`, 16))\n )\n );\n\nexport const KEY = '__icons__';\n\n/**\n * a local icon provider\n */\nclass LocalIconProvider extends Provider {\n constructor() {\n super();\n }\n\n /**\n * return provider type\n * @return {String} 'local'\n */\n getType() {\n return 'local';\n }\n\n /**\n * upload one new icon\n */\n async upload(dataURI, metaData) {\n // get svg from dataURI\n const response = await fetch(dataURI);\n const text = await response.text();\n const parser = new DOMParser();\n const xmlDoc = parser.parseFromString(text, 'text/xml');\n const svg = xmlDoc.getElementsByTagName('svg')[0];\n\n if (!svg.getAttribute('viewBox')) {\n throw new Error(_('Please upload a valid svg with viewBox attribute.'));\n }\n\n // reset svg attributes\n svg.setAttribute('preserveAspectRatio', 'none');\n // convert back to dataURI\n const serializer = new XMLSerializer();\n const svgStr = b64EncodeUnicode(serializer.serializeToString(svg));\n const iconDataURI = `data:image/svg+xml;base64,${svgStr}`;\n\n // save to localStorage\n try {\n const icon = { dataURI: iconDataURI, metaData };\n const id = uuid();\n let icons = JSON.parse(localStorage.getItem(KEY) || '{}');\n icons = { ...icons, [id]: icon };\n localStorage.setItem(KEY, JSON.stringify(icons));\n return id;\n } catch (error) {\n throw new Error(\n _('The icon cannot be uploaded. Please check whether your localStorage is full.')\n );\n }\n }\n\n /**\n * get one icon by icon id\n */\n getById(id) {\n const icons = JSON.parse(localStorage.getItem(KEY) || '{}');\n if (icons[id]) {\n return icons[id];\n }\n throw new Error(_('The icon is not found.'));\n }\n\n /**\n * get all icon ids\n * @params options\n * @params options.meta a list of meta data attribute that would be returned with each id\n * @params options.search a search string to filter the returned icons\n */\n listIds({ offset = 0, count = 100, meta = [], search = null }) {\n try {\n const icons = JSON.parse(localStorage.getItem(KEY) || '{}');\n const results = [];\n\n Object.keys(icons)\n .slice(offset, count)\n .forEach(id => {\n const icon = { id };\n const iconMeta = icons[id].metaData || {};\n // If search is a valid string, return the icon with matched meta data\n const isSearchedIcon =\n search != null &&\n Object.keys(iconMeta).some(attr => {\n const iconMetaValue = iconMeta[attr].toLowerCase();\n return iconMetaValue.indexOf(search.toLowerCase()) > -1;\n });\n\n if (search == null || isSearchedIcon) {\n if (meta && meta.length) {\n icon.metaData = {};\n meta.forEach(attr => {\n if (iconMeta[attr] != null) {\n icon.metaData[attr] = iconMeta[attr];\n }\n });\n }\n\n results.push(icon);\n }\n });\n\n return results;\n } catch (error) {\n throw new Error(_('The icon ids cannot be listed.'));\n }\n }\n\n /**\n * delete an icon by icon id\n */\n deleteById(id) {\n try {\n const icon = this.getById(id);\n const icons = JSON.parse(localStorage.getItem(KEY));\n delete icons[id];\n localStorage.setItem(KEY, JSON.stringify(icons));\n return icon;\n } catch (error) {\n throw new Error(_('The icon cannot be deleted.'));\n }\n }\n}\n\nexport default LocalIconProvider;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/regenerator\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@babel/runtime/helpers/asyncToGenerator\"","webpack:///external \"@babel/runtime/helpers/getPrototypeOf\"","webpack:///external \"@splunk/visualization-context/Provider\"","webpack:///external \"@babel/runtime/helpers/inherits\"","webpack:///external \"@babel/runtime/helpers/possibleConstructorReturn\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///external \"uuid-v4\"","webpack:///./src/LocalIconProvider.js"],"names":["b64EncodeUnicode","btoa","String","parseInt","KEY","LocalIconProvider","fetch","response","text","parser","xmlDoc","svg","_","serializer","svgStr","iconDataURI","icon","dataURI","metaData","id","uuid","icons","JSON","localStorage","offset","count","meta","search","results","Object","iconMeta","isSearchedIcon","iconMetaValue","Provider"],"mappings":"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","file":"LocalIconProvider.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 28);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/regenerator\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@babel/runtime/helpers/asyncToGenerator\");","module.exports = require(\"@babel/runtime/helpers/getPrototypeOf\");","module.exports = require(\"@splunk/visualization-context/Provider\");","module.exports = require(\"@babel/runtime/helpers/inherits\");","module.exports = require(\"@babel/runtime/helpers/possibleConstructorReturn\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"uuid-v4\");","/* eslint-disable class-methods-use-this,no-useless-constructor */\nimport uuid from 'uuid-v4';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Provider from '@splunk/visualization-context/Provider';\n\nexport const b64EncodeUnicode = str =>\n // first we use encodeURIComponent to get percent-encoded UTF-8,\n // then we convert the percent encodings into raw bytes which\n // can be fed into btoa.\n btoa(\n encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, (match, p1) =>\n String.fromCharCode(parseInt(`0x${p1}`, 16))\n )\n );\n\nexport const KEY = '__icons__';\n\n/**\n * a local icon provider\n */\nclass LocalIconProvider extends Provider {\n constructor() {\n super();\n }\n\n /**\n * return provider type\n * @return {String} 'local'\n */\n getType() {\n return 'local';\n }\n\n /**\n * upload one new icon\n */\n async upload(dataURI, metaData) {\n // get svg from dataURI\n const response = await fetch(dataURI);\n const text = await response.text();\n const parser = new DOMParser();\n const xmlDoc = parser.parseFromString(text, 'text/xml');\n const svg = xmlDoc.getElementsByTagName('svg')[0];\n\n if (!svg.getAttribute('viewBox')) {\n throw new Error(_('Please upload a valid svg with viewBox attribute.'));\n }\n\n // reset svg attributes\n svg.setAttribute('preserveAspectRatio', 'none');\n // convert back to dataURI\n const serializer = new XMLSerializer();\n const svgStr = b64EncodeUnicode(serializer.serializeToString(svg));\n const iconDataURI = `data:image/svg+xml;base64,${svgStr}`;\n\n // save to localStorage\n try {\n const icon = { dataURI: iconDataURI, metaData };\n const id = uuid();\n let icons = JSON.parse(localStorage.getItem(KEY) || '{}');\n icons = { ...icons, [id]: icon };\n localStorage.setItem(KEY, JSON.stringify(icons));\n return id;\n } catch (error) {\n throw new Error(\n _('The icon cannot be uploaded. Please check whether your localStorage is full.')\n );\n }\n }\n\n /**\n * get one icon by icon id\n */\n getById(id) {\n const icons = JSON.parse(localStorage.getItem(KEY) || '{}');\n if (icons[id]) {\n return icons[id];\n }\n throw new Error(_('The icon is not found.'));\n }\n\n /**\n * get all icon ids\n * @params options\n * @params options.meta a list of meta data attribute that would be returned with each id\n * @params options.search a search string to filter the returned icons\n */\n listIds({ offset = 0, count = 100, meta = [], search = null }) {\n try {\n const icons = JSON.parse(localStorage.getItem(KEY) || '{}');\n const results = [];\n\n Object.keys(icons)\n .slice(offset, count)\n .forEach(id => {\n const icon = { id };\n const iconMeta = icons[id].metaData || {};\n // If search is a valid string, return the icon with matched meta data\n const isSearchedIcon =\n search != null &&\n Object.keys(iconMeta).some(attr => {\n const iconMetaValue = iconMeta[attr].toLowerCase();\n return iconMetaValue.indexOf(search.toLowerCase()) > -1;\n });\n\n if (search == null || isSearchedIcon) {\n if (meta && meta.length) {\n icon.metaData = {};\n meta.forEach(attr => {\n if (iconMeta[attr] != null) {\n icon.metaData[attr] = iconMeta[attr];\n }\n });\n }\n\n results.push(icon);\n }\n });\n\n return results;\n } catch (error) {\n throw new Error(_('The icon ids cannot be listed.'));\n }\n }\n\n /**\n * delete an icon by icon id\n */\n deleteById(id) {\n try {\n const icon = this.getById(id);\n const icons = JSON.parse(localStorage.getItem(KEY));\n delete icons[id];\n localStorage.setItem(KEY, JSON.stringify(icons));\n return icon;\n } catch (error) {\n throw new Error(_('The icon cannot be deleted.'));\n }\n }\n}\n\nexport default LocalIconProvider;\n"],"sourceRoot":""}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Copyright © 2018 Splunk Inc.
2
+ * Copyright © 2024 Splunk Inc.
3
3
  * SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
4
4
  * in part without a valid written license from Splunk Inc. is PROHIBITED.
5
5
  */
@@ -195,45 +195,65 @@ __webpack_require__.r(__webpack_exports__);
195
195
 
196
196
 
197
197
 
198
+
198
199
  function ownKeys(object, enumerableOnly) {
199
200
  var keys = Object.keys(object);
201
+
200
202
  if (Object.getOwnPropertySymbols) {
201
203
  var symbols = Object.getOwnPropertySymbols(object);
202
- enumerableOnly && (symbols = symbols.filter(function (sym) {
204
+ if (enumerableOnly) symbols = symbols.filter(function (sym) {
203
205
  return Object.getOwnPropertyDescriptor(object, sym).enumerable;
204
- })), keys.push.apply(keys, symbols);
206
+ });
207
+ keys.push.apply(keys, symbols);
205
208
  }
209
+
206
210
  return keys;
207
211
  }
212
+
208
213
  function _objectSpread(target) {
209
214
  for (var i = 1; i < arguments.length; i++) {
210
- var source = null != arguments[i] ? arguments[i] : {};
211
- i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
212
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]);
213
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
214
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
215
- });
215
+ var source = arguments[i] != null ? arguments[i] : {};
216
+
217
+ if (i % 2) {
218
+ ownKeys(Object(source), true).forEach(function (key) {
219
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]);
220
+ });
221
+ } else if (Object.getOwnPropertyDescriptors) {
222
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
223
+ } else {
224
+ ownKeys(Object(source)).forEach(function (key) {
225
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
226
+ });
227
+ }
216
228
  }
229
+
217
230
  return target;
218
231
  }
232
+
219
233
  function _createSuper(Derived) {
220
234
  var hasNativeReflectConstruct = _isNativeReflectConstruct();
235
+
221
236
  return function _createSuperInternal() {
222
237
  var Super = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5___default()(Derived),
223
- result;
238
+ result;
239
+
224
240
  if (hasNativeReflectConstruct) {
225
241
  var NewTarget = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5___default()(this).constructor;
242
+
226
243
  result = Reflect.construct(Super, arguments, NewTarget);
227
244
  } else {
228
245
  result = Super.apply(this, arguments);
229
246
  }
247
+
230
248
  return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4___default()(this, result);
231
249
  };
232
250
  }
251
+
233
252
  function _isNativeReflectConstruct() {
234
253
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
235
254
  if (Reflect.construct.sham) return false;
236
255
  if (typeof Proxy === "function") return true;
256
+
237
257
  try {
238
258
  Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
239
259
  return true;
@@ -245,31 +265,37 @@ function _isNativeReflectConstruct() {
245
265
 
246
266
 
247
267
 
248
- var KEY = '__images__';
249
268
 
269
+
270
+ var KEY = '__images__';
250
271
  /**
251
272
  * a pure frontend local image provider
252
273
  */
274
+
253
275
  var LocalImageProvider = /*#__PURE__*/function (_Provider) {
254
276
  _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_3___default()(LocalImageProvider, _Provider);
277
+
255
278
  var _super = _createSuper(LocalImageProvider);
279
+
256
280
  function LocalImageProvider() {
257
281
  _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1___default()(this, LocalImageProvider);
282
+
258
283
  return _super.call(this);
259
284
  }
260
-
261
285
  /**
262
286
  * return provider type
263
287
  */
288
+
289
+
264
290
  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2___default()(LocalImageProvider, [{
265
291
  key: "getType",
266
292
  value: function getType() {
267
293
  return 'local';
268
294
  }
269
-
270
295
  /**
271
296
  * add a new image
272
297
  */
298
+
273
299
  }, {
274
300
  key: "upload",
275
301
  value: function upload(dataURI, metaData) {
@@ -287,29 +313,32 @@ var LocalImageProvider = /*#__PURE__*/function (_Provider) {
287
313
  throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_7__["_"])('The image cannot be uploaded. Please check whether your localStorage is full.'));
288
314
  }
289
315
  }
290
-
291
316
  /**
292
317
  * get image by imageID
293
318
  */
319
+
294
320
  }, {
295
321
  key: "getById",
296
322
  value: function getById(imageID) {
297
323
  var images = JSON.parse(localStorage.getItem(KEY) || '{}');
298
324
  var imageObject = images[imageID];
325
+
299
326
  if (imageObject) {
300
327
  return imageObject;
301
328
  }
329
+
302
330
  throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_7__["_"])('The image is not found.'));
303
331
  }
304
-
305
332
  /**
306
333
  * get all imageIDs
307
334
  */
335
+
308
336
  }, {
309
337
  key: "listIds",
310
338
  value: function listIds(_ref) {
311
339
  var offset = _ref.offset,
312
- count = _ref.count;
340
+ count = _ref.count;
341
+
313
342
  try {
314
343
  var images = JSON.parse(localStorage.getItem(KEY) || '{}');
315
344
  var imageIDS = Object.keys(images);
@@ -318,10 +347,10 @@ var LocalImageProvider = /*#__PURE__*/function (_Provider) {
318
347
  throw new Error(Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_7__["_"])('The image ids cannot be listed.'));
319
348
  }
320
349
  }
321
-
322
350
  /**
323
351
  * delete an image by dataID
324
352
  */
353
+
325
354
  }, {
326
355
  key: "deleteById",
327
356
  value: function deleteById(imageID) {
@@ -336,8 +365,10 @@ var LocalImageProvider = /*#__PURE__*/function (_Provider) {
336
365
  }
337
366
  }
338
367
  }]);
368
+
339
369
  return LocalImageProvider;
340
370
  }(_splunk_visualization_context_Provider__WEBPACK_IMPORTED_MODULE_8___default.a);
371
+
341
372
  /* harmony default export */ __webpack_exports__["default"] = (LocalImageProvider);
342
373
 
343
374
  /***/ })