web-interface.assets.1255d548-5673.b4781774fc5dd72f5293.js.map Maven / Gradle / Ivy
{"version":3,"file":"1255d548-5673.b4781774fc5dd72f5293.js","mappings":"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","sources":["webpack://graylog-web-interface/./src/components/content-packs/ContentPackApplyParameter.css","webpack://graylog-web-interface/./src/components/content-packs/ContentPackEntitiesList.css","webpack://graylog-web-interface/./src/components/content-packs/ContentPackApplyParameter.css?21e1","webpack://graylog-web-interface/./src/components/content-packs/ContentPackApplyParameter.jsx","webpack://graylog-web-interface/./src/components/content-packs/ContentPackEntityConfig.jsx","webpack://graylog-web-interface/./src/components/content-packs/ContentPackEntitiesList.css?3dda","webpack://graylog-web-interface/./src/components/content-packs/ContentPackEntitiesList.jsx","webpack://graylog-web-interface/./src/components/content-packs/ContentPackStatus.jsx","webpack://graylog-web-interface/./src/components/content-packs/ContentPackUtils.js","webpack://graylog-web-interface/./src/logic/content-packs/ContentPack.js","webpack://graylog-web-interface/./src/logic/content-packs/Constraint.js","webpack://graylog-web-interface/./src/logic/content-packs/Entity.js","webpack://graylog-web-interface/./src/logic/content-packs/ContentPackRevisions.js","webpack://graylog-web-interface/./src/stores/content-packs/ContentPacksStore.js","webpack://graylog-web-interface/./src/util/ValueRefHelper.js","webpack://graylog-web-interface/./src/util/ValueReferenceData.js","webpack://graylog-web-interface/./node_modules/lodash/_baseExtremum.js","webpack://graylog-web-interface/./node_modules/lodash/_baseGt.js","webpack://graylog-web-interface/./node_modules/lodash/_basePullAt.js","webpack://graylog-web-interface/./node_modules/lodash/max.js","webpack://graylog-web-interface/./node_modules/lodash/remove.js"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.YlgzIDxuVXzWGUeQ6wZ8 {\n margin-top: 8px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/content-packs/ContentPackApplyParameter.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,eAAe;AACnB\",\"sourcesContent\":[\":local(.applyParameter) {\\n margin-top: 8px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"applyParameter\": `YlgzIDxuVXzWGUeQ6wZ8`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.uld5gLTpygpD0RWINILd tbody {\n max-height: 300px;\n overflow: hidden;\n overflow-y: auto;\n display:block;\n}\n\n.uld5gLTpygpD0RWINILd thead, .uld5gLTpygpD0RWINILd tbody tr {\n display:table;\n width:100%;\n table-layout:fixed;\n}\n\n.gr8Pw8P44d_POVcuv1Pr {\n word-wrap: break-word;\n}\n\n.TiPrBe6U6mlJyjsINNY8 {\n color: rgba(158, 31, 99, 0.43);\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/content-packs/ContentPackEntitiesList.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,iBAAiB;IACjB,gBAAgB;IAChB,gBAAgB;IAChB,aAAa;AACjB;;AAEA;IACI,aAAa;IACb,UAAU;IACV,kBAAkB;AACtB;;AAEA;IACI,qBAAqB;AACzB;;AAEA;IACI,8BAA8B;AAClC\",\"sourcesContent\":[\":local(.scrollable) tbody {\\n max-height: 300px;\\n overflow: hidden;\\n overflow-y: auto;\\n display:block;\\n}\\n\\n:local(.scrollable) thead, :local(.scrollable) tbody tr {\\n display:table;\\n width:100%;\\n table-layout:fixed;\\n}\\n\\n:local(.bigColumns) {\\n word-wrap: break-word;\\n}\\n\\n:local(.contentPackEntity) {\\n color: rgba(158, 31, 99, 0.43);\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"scrollable\": `uld5gLTpygpD0RWINILd`,\n\t\"bigColumns\": `gr8Pw8P44d_POVcuv1Pr`,\n\t\"contentPackEntity\": `TiPrBe6U6mlJyjsINNY8`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./ContentPackApplyParameter.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./ContentPackApplyParameter.css\";\n export default content && content.locals ? content.locals : undefined;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport findIndex from 'lodash/findIndex';\n\nimport { defaultCompare as naturalSort } from 'logic/DefaultCompare';\nimport { Row, Col, Button, Input } from 'components/bootstrap';\nimport DataTable from 'components/common/DataTable';\nimport ValueReferenceData from 'util/ValueReferenceData';\n\nimport Style from './ContentPackApplyParameter.css';\n\nclass ContentPackApplyParameter extends React.Component {\n static propTypes = {\n onParameterApply: PropTypes.func,\n onParameterClear: PropTypes.func,\n entity: PropTypes.object.isRequired,\n parameters: PropTypes.array,\n appliedParameter: PropTypes.array,\n };\n\n static defaultProps = {\n onParameterApply: () => {},\n onParameterClear: () => {},\n parameters: [],\n appliedParameter: [],\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n config_key: '',\n parameter: '',\n };\n }\n\n _configKeyRowFormatter = (paramMap) => {\n const enableClear = findIndex(this.props.appliedParameter,\n { paramName: paramMap.paramName, configKey: paramMap.configKey, readOnly: true }) < 0;\n const lastCol = enableClear\n ? \n : ;\n\n return (\n \n {paramMap.configKey} \n {paramMap.paramName} \n {lastCol}\n \n );\n };\n\n _bindValue = (event) => {\n const newValue = {};\n\n newValue[event.target.name] = event.target.value;\n this.setState(newValue);\n };\n\n _valuesSelected = () => this.state.parameter.length > 0 && this.state.config_key.length > 0;\n\n _applyParameter = (e) => {\n e.preventDefault();\n\n if (!this._valuesSelected()) {\n return;\n }\n\n const configKeyIndex = this.props.appliedParameter.findIndex((appliedParameter) => appliedParameter.configKey === this.state.config_key);\n\n if (configKeyIndex >= 0) {\n return;\n }\n\n this.props.onParameterApply(this.state.config_key, this.state.parameter);\n this.setState({ config_key: '', parameter: '' });\n };\n\n _parameterClear = (configKey) => {\n this.props.onParameterClear(configKey);\n };\n\n render() {\n const vRefData = new ValueReferenceData(this.props.entity.data);\n const configPaths = vRefData.getPaths();\n\n const configKeys = Object.keys(configPaths)\n .sort(naturalSort)\n .filter((configKey) => configPaths[configKey].isValueRef()) // Only allow value-refs as parameters\n .filter((configKey) => this.props.appliedParameter.findIndex((paramMap) => configKey === paramMap.configKey) < 0);\n const emptyOption = (name) => ();\n const configOptions = [emptyOption('Choose Config Key')].concat(configKeys.map((key) => ));\n let { parameters } = this.props;\n let emptyName = parameters.length <= 0 ? 'Create a parameter first' : 'Choose...';\n\n if (this.state.config_key !== '' && parameters.length > 0) {\n const configKeyType = configPaths[this.state.config_key].getValueType();\n\n if (['string', 'integer', 'boolean', 'double'].findIndex((type) => type === configKeyType) >= 0) {\n parameters = parameters.filter((parameter) => parameter.type === configKeyType);\n }\n\n emptyName = parameters.length <= 0 ? `No parameter from type ${configKeyType}` : 'Choose...';\n }\n\n const parameterOptions = [emptyOption(emptyName)]\n .concat(parameters.map((key) => ));\n\n return (\n \n \n \n \n \n \n
\n \n );\n }\n}\n\nexport default ContentPackApplyParameter;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { defaultCompare as naturalSort } from 'logic/DefaultCompare';\nimport DataTable from 'components/common/DataTable';\nimport ValueReferenceData from 'util/ValueReferenceData';\n\nclass ContentPackEntityConfig extends React.Component {\n static propTypes = {\n entity: PropTypes.object.isRequired,\n appliedParameter: PropTypes.array,\n parameters: PropTypes.array,\n };\n\n static defaultProps = {\n appliedParameter: [],\n parameters: [],\n };\n\n _getParameterForConfigKey = (configKey) => {\n const paramMapIndex = this.props.appliedParameter.findIndex((paramMap) => paramMap.configKey === configKey);\n\n if (paramMapIndex < 0) {\n return undefined;\n }\n\n const paramMap = this.props.appliedParameter[paramMapIndex];\n const paramIndex = this.props.parameters.findIndex((parameter) => parameter.name === paramMap.paramName);\n\n return this.props.parameters[paramIndex];\n };\n\n _configKeyRowFormatter = (paths) => (configKey) => {\n const path = paths[configKey];\n const parameter = this._getParameterForConfigKey(configKey);\n const type = parameter ? ({`parameter (${parameter.type})`}) : path.getValueType();\n const value = parameter ? ({parameter.name}) : path.getValue();\n\n return (\n \n {configKey} \n {type} \n {value} \n \n );\n };\n\n render() {\n const entityData = new ValueReferenceData(this.props.entity.data);\n const configPaths = entityData.getPaths();\n const configKeys = Object.keys(configPaths).sort(naturalSort);\n\n return (\n \n \n \n );\n }\n}\n\nexport default ContentPackEntityConfig;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./ContentPackEntitiesList.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./ContentPackEntitiesList.css\";\n export default content && content.locals ? content.locals : undefined;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Button, Modal, ButtonToolbar } from 'components/bootstrap';\nimport { SearchForm, DataTable, Icon } from 'components/common';\nimport BootstrapModalWrapper from 'components/bootstrap/BootstrapModalWrapper';\n\nimport ContentPackApplyParameter from './ContentPackApplyParameter';\nimport ContentPackEntityConfig from './ContentPackEntityConfig';\nimport ContentPackEntitiesListStyle from './ContentPackEntitiesList.css';\n\nconst EntityIcon = ({ entity }) => {\n if (!entity.fromServer) {\n return ;\n }\n\n return ;\n};\n\nEntityIcon.propTypes = {\n entity: PropTypes.object.isRequired,\n};\n\nclass ContentPackEntitiesList extends React.Component {\n static propTypes = {\n contentPack: PropTypes.object.isRequired,\n appliedParameter: PropTypes.object,\n onParameterApply: PropTypes.func,\n onParameterClear: PropTypes.func,\n readOnly: PropTypes.bool,\n };\n\n static defaultProps = {\n appliedParameter: {},\n onParameterClear: () => {\n },\n onParameterApply: () => {\n },\n readOnly: false,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n showApplyConfigModal: false,\n showConfigModalId: undefined,\n filteredEntities: props.contentPack.entities || [],\n filter: undefined,\n };\n }\n\n UNSAFE_componentWillReceiveProps(newProps) {\n const { filter } = this.state;\n\n this._filterEntities(filter, newProps.contentPack.entities);\n }\n\n _filterEntities = (filter, entitiesArg) => {\n const { contentPack } = this.props;\n\n const entities = entitiesArg || contentPack.entities;\n\n if (!filter || filter.length <= 0) {\n this.setState({ filteredEntities: entities, filter: undefined });\n\n return;\n }\n\n const regexp = RegExp(filter, 'i');\n const filteredEntities = entities.filter((entity) => regexp.test(entity.title) || regexp.test(entity.description));\n\n this.setState({ filteredEntities: filteredEntities, filter: filter });\n };\n\n _entityRowFormatter = (entity) => {\n const {\n contentPack,\n appliedParameter,\n onParameterApply,\n onParameterClear,\n readOnly,\n } = this.props;\n\n const applyParamComponent = (\n {\n onParameterApply(entity.id, key, value);\n }}\n onParameterClear={(key) => {\n onParameterClear(entity.id, key);\n }} />\n );\n\n const closeModal = () => {\n this.setState({ showApplyConfigModal: false });\n };\n\n const open = () => {\n this.setState({ showApplyConfigModal: true });\n };\n\n const applyModal = (\n \n \n Edit \n \n \n {applyParamComponent}\n \n \n \n \n \n );\n\n const entityComponent = (\n \n );\n\n const closeShowModal = () => {\n this.setState({ showConfigModalId: undefined });\n };\n\n const openShowModal = (entityId) => {\n this.setState({ showConfigModalId: entityId });\n };\n\n const showModal = this.state.showConfigModalId && (\n \n \n Entity Config \n \n \n {entityComponent}\n \n \n \n \n \n );\n\n const disableBtn = contentPack.parameters.length <= 0;\n const appliedParameterCount = (appliedParameter[entity.id] || []).length;\n\n return (\n \n {entity.title} \n {entity.type.name} \n {entity.description} \n {!readOnly && }\n {!readOnly && {appliedParameterCount} }\n \n \n {!readOnly\n && (\n \n )}\n \n \n \n {!readOnly && applyModal}\n {showModal}\n \n );\n };\n\n render() {\n const { readOnly } = this.props;\n const { filteredEntities } = this.state;\n\n const headers = readOnly\n ? ['Title', 'Type', 'Description', 'Action']\n : ['Title', 'Type', 'Description', 'Origin', 'Used Parameters', 'Action'];\n\n return (\n \n Entity list
\n
\n {\n this._filterEntities('');\n }} />\n entity.type.name}\n filterKeys={[]}\n rows={filteredEntities}\n dataRowFormatter={this._entityRowFormatter} />\n \n );\n }\n}\n\nexport default ContentPackEntitiesList;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { StyledBadge } from 'components/bootstrap/Badge';\nimport { Link } from 'components/common/router';\nimport Routes from 'routing/Routes';\n\nconst StatusBadge = styled(StyledBadge)(({ status, theme }) => {\n const { success, info, warning, danger } = theme.colors.variant.dark;\n const statuses = {\n installed: success,\n updatable: info,\n edited: warning,\n error: danger,\n };\n\n return css`\n margin-left: 4px;\n background-color: ${statuses[status]};\n color: ${theme.utils.readableColor(statuses[status])};\n`;\n});\n\nconst ContentPackStatus = ({ contentPackId, states }) => {\n const badges = states.map((state) => (\n \n {state} \n \n ));\n\n return (\n \n {badges}\n \n );\n};\n\nContentPackStatus.propTypes = {\n states: PropTypes.arrayOf(PropTypes.string),\n contentPackId: PropTypes.string.isRequired,\n};\n\nContentPackStatus.defaultProps = {\n states: [],\n};\n\nexport default ContentPackStatus;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nconst ContentPackUtils = {\n convertToString(parameter) {\n switch (parameter.type) {\n case 'integer':\n case 'double':\n return parameter.default_value.toString();\n case 'boolean':\n return parameter.default_value ? 'true' : 'false';\n default:\n return parameter.default_value;\n }\n },\n\n convertValue(type, value) {\n switch (type) {\n case 'integer':\n return parseInt(value, 10);\n case 'double':\n return parseFloat(value);\n case 'boolean':\n return value === 'true';\n default:\n return value;\n }\n },\n};\n\nexport default ContentPackUtils;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport { Map, Set } from 'immutable';\nimport concat from 'lodash/concat';\nimport remove from 'lodash/remove';\n\nimport generateId from 'logic/generateId';\n\nimport Entity from './Entity';\n\nexport default class ContentPack {\n constructor(v, id, rev, name, summary, description, vendor, url, parameters, entitieValues) {\n const entities = entitieValues.map((e) => {\n if (e instanceof Entity) {\n return e;\n }\n\n return Entity.fromJSON(e, false, parameters);\n });\n\n this._value = {\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities,\n };\n }\n\n get v() {\n return this._value.v;\n }\n\n get id() {\n return this._value.id;\n }\n\n get rev() {\n return this._value.rev;\n }\n\n get name() {\n return this._value.name;\n }\n\n get summary() {\n return this._value.summary;\n }\n\n get description() {\n return this._value.description;\n }\n\n get vendor() {\n return this._value.vendor;\n }\n\n get url() {\n return this._value.url;\n }\n\n get constraints() {\n return this._value.entities.reduce((acc, entity) => entity.constraints.reduce((result, constraint) => result.add(constraint), acc), Set());\n }\n\n get parameters() {\n return this._value.parameters;\n }\n\n get entities() {\n return this._value.entities;\n }\n\n toBuilder() {\n const {\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities,\n } = this._value;\n\n // eslint-disable-next-line no-use-before-define\n return new Builder(Map({\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities,\n }));\n }\n\n toJSON() {\n const {\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities,\n } = this._value;\n\n const entitiesJSON = entities.map((e) => e.toJSON());\n\n return {\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities: entitiesJSON,\n };\n }\n\n static fromJSON(value) {\n const {\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities,\n } = value;\n\n return new ContentPack(\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities,\n );\n }\n\n static builder() {\n // eslint-disable-next-line no-use-before-define\n return new Builder()\n .v(1)\n .id(generateId())\n .rev(1)\n .name('')\n .summary('')\n .description('')\n .vendor('')\n .url('')\n .parameters([])\n .entities([]);\n }\n}\n\nclass Builder {\n constructor(value = Map()) {\n this.value = value;\n }\n\n v(value) {\n this.value = this.value.set('v', value);\n\n return this;\n }\n\n id(value) {\n this.value = this.value.set('id', value);\n\n return this;\n }\n\n rev(value) {\n this.value = this.value.set('rev', value);\n\n return this;\n }\n\n name(value) {\n this.value = this.value.set('name', value);\n\n return this;\n }\n\n summary(value) {\n this.value = this.value.set('summary', value);\n\n return this;\n }\n\n description(value) {\n this.value = this.value.set('description', value);\n\n return this;\n }\n\n vendor(value) {\n this.value = this.value.set('vendor', value);\n\n return this;\n }\n\n url(value) {\n this.value = this.value.set('url', value);\n\n return this;\n }\n\n parameters(value) {\n this.value = this.value.set('parameters', value);\n\n return this;\n }\n\n removeParameter(value) {\n const parameters = this.value.get('parameters').slice(0);\n\n remove(parameters, (parameter) => parameter.name === value.name);\n this.value = this.value.set('parameters', parameters);\n\n return this;\n }\n\n addParameter(value) {\n const parameters = this.value.get('parameters');\n const newParameters = concat(parameters, value);\n\n this.value = this.value.set('parameters', newParameters);\n\n return this;\n }\n\n entities(value) {\n this.value = this.value.set('entities', value);\n\n return this;\n }\n\n build() {\n const {\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities,\n } = this.value.toObject();\n\n return new ContentPack(\n v,\n id,\n rev,\n name,\n summary,\n description,\n vendor,\n url,\n parameters,\n entities,\n );\n }\n}\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport Immutable from 'immutable';\n\nexport default class Constraint {\n constructor(type, version, plugin = 'server') {\n this._value = { type, plugin, version };\n }\n\n get type() {\n return this._value.type;\n }\n\n get plugin() {\n return this._value.plugin;\n }\n\n get version() {\n return this._value.version;\n }\n\n toBuilder() {\n const { type, plugin, version } = this._value;\n\n // eslint-disable-next-line no-use-before-define\n return new Builder(Immutable.Map({ type, plugin, version }));\n }\n\n static create(type, version, plugin = 'server') {\n return new Constraint(type, version, plugin);\n }\n\n toJSON() {\n const { type, plugin, version } = this._value;\n\n if (plugin === 'server') {\n return {\n type,\n version,\n };\n }\n\n return {\n type,\n plugin,\n version,\n };\n }\n\n equals(other) {\n if (!other.version || !other.plugin || !other.type) {\n return false;\n }\n\n return other.version === this.version\n && other.type === this.type\n && other.plugin === this.plugin;\n }\n\n static fromJSON(value) {\n const { type, version, plugin } = value;\n\n return Constraint.create(type, version, plugin);\n }\n\n static builder() {\n // eslint-disable-next-line no-use-before-define\n return new Builder()\n .plugin('server');\n }\n}\n\nclass Builder {\n constructor(value = Immutable.Map()) {\n this.value = value;\n }\n\n type(value) {\n return new Builder(this.value.set('type', value));\n }\n\n plugin(value) {\n return new Builder(this.value.set('plugin', value));\n }\n\n version(value) {\n return new Builder(this.value.set('version', value));\n }\n\n build() {\n const { type, plugin, version } = this.value.toObject();\n\n return new Constraint(type, version, plugin);\n }\n}\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport { Map } from 'immutable';\nimport findIndex from 'lodash/findIndex';\n\nimport ValueRefHelper from 'util/ValueRefHelper';\n\nimport Constraint from './Constraint';\n\nexport default class Entity {\n constructor(v, type, id, data, fromServer = false, constraintValues = [], parameters = []) {\n const constraints = constraintValues.map((c) => {\n if (c instanceof Constraint) {\n return c;\n }\n\n return Constraint.fromJSON(c);\n });\n\n this._value = {\n v,\n type,\n id,\n data,\n constraints,\n fromServer,\n parameters,\n };\n }\n\n static fromJSON(value, fromServer = true, parameters = []) {\n const { v, type, id, data, constraints } = value;\n\n return new Entity(v, type, id, data, fromServer, constraints, parameters);\n }\n\n get v() {\n return this._value.v;\n }\n\n get type() {\n return this._value.type;\n }\n\n get id() {\n return this._value.id;\n }\n\n get data() {\n return this._value.data;\n }\n\n get fromServer() {\n return this._value.fromServer;\n }\n\n get constraints() {\n return this._value.constraints;\n }\n\n get title() {\n let value = this.getValueFromData('title');\n\n if (!value) {\n value = this.getValueFromData('name');\n }\n\n return value || '';\n }\n\n get description() {\n return this.getValueFromData('description') || '';\n }\n\n /* eslint-disable-next-line class-methods-use-this */\n get isEntity() {\n return true;\n }\n\n /* implement custom instanceof */\n static [Symbol.hasInstance](obj) {\n if (obj.isEntity) {\n return true;\n }\n\n return false;\n }\n\n getValueFromData(key) {\n const { data } = this._value;\n\n if (!data || !data[key]) {\n return undefined;\n }\n\n if (ValueRefHelper.dataIsValueRef(data[key])) {\n const value = (data[key] || {})[ValueRefHelper.VALUE_REF_VALUE_FIELD];\n\n if (ValueRefHelper.dataValueIsParameter(data[key])) {\n const index = findIndex(this._value.parameters, { name: value });\n\n if (index >= 0 && this._value.parameters[index].default_value) {\n return this._value.parameters[index].default_value;\n }\n }\n\n return value;\n }\n\n return data[key];\n }\n\n toBuilder() {\n const {\n v,\n type,\n id,\n data,\n constraints,\n fromServer,\n parameters,\n } = this._value;\n\n /* eslint-disable-next-line no-use-before-define */\n return new Builder(Map({\n v,\n type,\n id,\n data,\n constraints,\n fromServer,\n parameters,\n }));\n }\n\n static builder() {\n /* eslint-disable-next-line no-use-before-define */\n return new Builder();\n }\n\n toJSON() {\n const {\n v,\n type,\n id,\n data,\n constraints,\n } = this._value;\n\n return {\n v,\n type,\n id,\n data,\n constraints,\n };\n }\n}\n\nclass Builder {\n constructor(value = Map()) {\n this.value = value;\n }\n\n v(value) {\n this.value = this.value.set('v', value);\n\n return this;\n }\n\n type(value) {\n this.value = this.value.set('type', value);\n\n return this;\n }\n\n id(value) {\n this.value = this.value.set('id', value);\n\n return this;\n }\n\n data(value) {\n this.value = this.value.set('data', value);\n\n return this;\n }\n\n fromServer(value) {\n this.value = this.value.set('fromServer', value);\n\n return this;\n }\n\n constraints(value) {\n this.value = this.value.set('constraints', value);\n\n return this;\n }\n\n parameters(value) {\n this.value = this.value.set('parameters', value);\n\n return this;\n }\n\n build() {\n const {\n v,\n type,\n id,\n data,\n constraints,\n fromServer,\n parameters,\n } = this.value.toObject();\n\n return new Entity(v, type, id, data, fromServer, constraints, parameters);\n }\n}\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport max from 'lodash/max';\n\nimport ContentPack from 'logic/content-packs/ContentPack';\n\nexport default class ContentPackRevisions {\n constructor(contentPackRevision) {\n this._value = Object.keys(contentPackRevision).reduce((acc, rev) => {\n const contentPack = contentPackRevision[rev];\n\n acc[parseInt(rev, 10)] = ContentPack.fromJSON(contentPack);\n\n return acc;\n }, {});\n }\n\n get latestRevision() {\n return max(this.revisions);\n }\n\n get revisions() {\n return Object.keys(this._value).map((rev) => parseInt(rev, 10));\n }\n\n get latest() {\n return this._value[this.latestRevision];\n }\n\n get contentPacks() {\n return Object.values(this._value);\n }\n\n createNewVersionFromRev(rev) {\n return this.contentPack(parseInt(rev, 10)).toBuilder()\n .rev(this.latestRevision + 1)\n .build();\n }\n\n contentPack(revision) {\n return this._value[revision];\n }\n}\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport Reflux from 'reflux';\n\nimport * as URLUtils from 'util/URLUtils';\nimport ApiRoutes from 'routing/ApiRoutes';\nimport fetch from 'logic/rest/FetchProvider';\nimport ContentPackRevisions from 'logic/content-packs/ContentPackRevisions';\nimport { singletonStore, singletonActions } from 'logic/singleton';\n\nexport const ContentPacksActions = singletonActions(\n 'core.ContentPacks',\n () => Reflux.createActions({\n create: { asyncResult: true },\n list: { asyncResult: true },\n get: { asyncResult: true },\n getRev: { asyncResult: true },\n delete: { asyncResult: true },\n deleteRev: { asyncResult: true },\n install: { asyncResult: true },\n installList: { asyncResult: true },\n uninstall: { asyncResult: true },\n uninstallDetails: { asyncResult: true },\n }),\n);\n\nexport const ContentPacksStore = singletonStore(\n 'core.ContentPacks',\n () => Reflux.createStore({\n listenables: [ContentPacksActions],\n\n getInitialState() {\n return ({\n contentPack: undefined,\n contentPackMetadata: undefined,\n contentPacks: undefined,\n installations: undefined,\n uninstallEntities: undefined,\n });\n },\n\n get(contentPackId) {\n const url = URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.get(contentPackId).url);\n const promise = fetch('GET', url)\n .then((response) => {\n const contentPackRevision = new ContentPackRevisions(response.content_pack_revisions);\n const constraints = response.constraints_result;\n const result = {\n contentPackRevisions: contentPackRevision,\n selectedVersion: contentPackRevision.latestRevision,\n constraints: constraints,\n };\n\n this.trigger(result);\n\n return result;\n });\n\n ContentPacksActions.get.promise(promise);\n },\n\n getRev(contentPackId, contentPackRev) {\n const url = URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.getRev(contentPackId, contentPackRev).url);\n const promise = fetch('GET', url)\n .then((result) => {\n this.trigger({ contentPack: result.content_pack });\n\n return result;\n });\n\n ContentPacksActions.getRev.promise(promise);\n },\n\n list() {\n const url = URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.list().url);\n const promise = fetch('GET', url)\n .then((result) => {\n this.trigger({ contentPacks: result.content_packs, contentPackMetadata: result.content_packs_metadata });\n\n return result;\n });\n\n ContentPacksActions.list.promise(promise);\n },\n\n create(request) {\n const promise = fetch('POST', URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.create().url), request);\n\n ContentPacksActions.create.promise(promise);\n },\n\n delete(contentPackId) {\n const promise = fetch('DELETE', URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.delete(contentPackId).url));\n\n ContentPacksActions.delete.promise(promise);\n },\n\n deleteRev(contentPackId, revision) {\n const promise = fetch('DELETE', URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.deleteRev(contentPackId, revision).url));\n\n ContentPacksActions.deleteRev.promise(promise);\n },\n\n install(contentPackId, revision, parameters) {\n const promise = fetch('POST', URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.install(contentPackId, revision).url), parameters);\n\n ContentPacksActions.install.promise(promise);\n },\n installList(contentPackId) {\n const url = URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.installList(contentPackId).url);\n const promise = fetch('GET', url)\n .then((result) => {\n this.trigger({ installations: result.installations });\n\n return result;\n });\n\n ContentPacksActions.installList.promise(promise);\n },\n uninstall(contentPackId, installId) {\n const promise = fetch('DELETE', URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.uninstall(contentPackId, installId).url));\n\n ContentPacksActions.uninstall.promise(promise);\n },\n uninstallDetails(contentPackId, installId) {\n const url = URLUtils.qualifyUrl(ApiRoutes.ContentPacksController.uninstallDetails(contentPackId, installId).url);\n const promise = fetch('GET', url)\n .then((result) => {\n this.trigger({ uninstallEntities: result.entities });\n\n return result;\n });\n\n ContentPacksActions.uninstallDetails.promise(promise);\n },\n }),\n);\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nexport default class ValueRefHelper {\n static VALUE_REF_VALUE_FIELD = '@value';\n\n static VALUE_REF_TYPE_FIELD = '@type';\n\n static VALUE_REF_PARAMETER_VALUE = 'parameter';\n\n static dataIsValueRef(data) {\n if (!data) {\n return false;\n }\n\n if (typeof data.has === 'function') {\n return data.size === 2 && data.has(ValueRefHelper.VALUE_REF_TYPE_FIELD) && data.has(ValueRefHelper.VALUE_REF_VALUE_FIELD);\n }\n\n const keys = Object.keys(data);\n\n return keys.length === 2 && keys.includes(ValueRefHelper.VALUE_REF_TYPE_FIELD)\n && keys.includes(ValueRefHelper.VALUE_REF_VALUE_FIELD);\n }\n\n static dataValueIsParameter(data) {\n if (!data) {\n return false;\n }\n\n if (typeof data.get === 'function') {\n return ValueRefHelper.dataIsValueRef(data) && data.get(ValueRefHelper.VALUE_REF_TYPE_FIELD) === ValueRefHelper.VALUE_REF_PARAMETER_VALUE;\n }\n\n return ValueRefHelper.dataIsValueRef(data) && data[ValueRefHelper.VALUE_REF_TYPE_FIELD] === ValueRefHelper.VALUE_REF_PARAMETER_VALUE;\n }\n\n static createValueRef(type, value) {\n return { [this.VALUE_REF_TYPE_FIELD]: type, [this.VALUE_REF_VALUE_FIELD]: value };\n }\n}\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport Immutable, { Map, List } from 'immutable';\n\nimport ValueRefHelper from './ValueRefHelper';\n\n/**\n * A path object that can be used to obtain information about the data at a path and also modify it.\n */\nclass Path {\n constructor(path, valueIsReference, valueIsParameter, getter, setter, parameterSetter, valueTypeGetter) {\n this.path = path;\n this.valueIsReference = valueIsReference;\n this.valueIsParameter = valueIsParameter;\n this.getter = getter;\n this.setter = setter;\n this.parameterSetter = parameterSetter;\n this.valueTypeGetter = valueTypeGetter;\n }\n\n /**\n * Get the concatenated value path as a string. (e.g. \"stream_rules.0.title\")\n * @returns the path as string\n */\n getPath() {\n return this.path;\n }\n\n /**\n * Get the value for the path.\n * @returns the value\n */\n getValue() {\n return this.getter();\n }\n\n /**\n * Sets the value for the path.\n * @param the value to set\n */\n setValue(value) {\n this.setter(value);\n }\n\n /**\n * Set the value for the path to a parameter with the given name.\n * This will throw an Error if the value at the path is not a value-reference! Consumers should use #isValueParameter\n * before trying to use this.\n * @param name the parameter name\n */\n setParameter(name) {\n this.parameterSetter(name);\n }\n\n /**\n * Gets the type of the value.\n * @returns the type string\n */\n getValueType() {\n return this.valueTypeGetter();\n }\n\n /**\n * Returns true if the path value is a value-reference.\n * @returns true if value is value-reference, false otherwise\n */\n isValueRef() {\n return this.valueIsReference;\n }\n\n /**\n * Returns true if the path value is a parameter.\n * @returns true if value is a parameter, false otherwise\n */\n isValueParameter() {\n return this.valueIsParameter;\n }\n}\n\n/**\n * Wraps content pack entity data and generates paths into the nested data so we can show a flat list of values for\n * content pack entities.\n */\nexport default class ValueReferenceData {\n constructor(data) {\n this.data = Map(Immutable.fromJS(data));\n this.paths = Map();\n this.walkPaths();\n }\n\n /**\n * Get the path object which contains the flat paths into the nested data. The value of each path key is a Path\n * object that can be used to obtain information about the value for the path and also modify it.\n * @returns the paths object\n */\n getPaths() {\n return this.paths.toJS();\n }\n\n /**\n * Get the actual data back. This can be used to get the updated data after modifying it.\n * @returns the data\n */\n getData() {\n return this.data.toJS();\n }\n\n /**\n * @private\n */\n walkPaths(parentPath = []) {\n const data = parentPath.length > 0 ? this.data.getIn(parentPath) : this.data;\n\n if (Map.isMap(data)) {\n if (ValueRefHelper.dataIsValueRef(data)) {\n // We handle ValueReference data objects as leaf nodes\n this.addPath(parentPath);\n } else {\n data.keySeq().toJS().forEach((key) => {\n this.walkPaths(parentPath.concat([key]));\n });\n }\n } else if (List.isList(data)) {\n data.toArray().forEach((value, idx) => {\n this.walkPaths(parentPath.concat([idx]));\n });\n } else {\n // We arrived at the leaf of the tree so create a Path object for the current path\n this.addPath(parentPath);\n }\n }\n\n /**\n * @private\n */\n addPath(path) {\n const stringPath = path.join('.');\n const leaf = new Path(\n stringPath,\n ValueRefHelper.dataIsValueRef(this.data.getIn(path)),\n ValueRefHelper.dataValueIsParameter(this.data.getIn(path)),\n this.pathGetter(path),\n this.pathSetter(path),\n this.pathParameterSetter(path),\n this.pathType(path),\n );\n\n this.paths = this.paths.set(stringPath, leaf);\n }\n\n /**\n * Data getter that knows about value-reference and regular data.\n * @private\n */\n pathGetter(path) {\n return () => {\n if (ValueRefHelper.dataIsValueRef(this.data.getIn(path))) {\n return this.data.getIn(path.concat(ValueRefHelper.VALUE_REF_VALUE_FIELD));\n }\n\n return this.data.getIn(path);\n };\n }\n\n /**\n * Data setter that knows about value-reference and regular data.\n * @private\n */\n pathSetter(path) {\n return (value) => {\n if (ValueRefHelper.dataIsValueRef(this.data.getIn(path))) {\n this.data = this.data.setIn(path.concat(ValueRefHelper.VALUE_REF_VALUE_FIELD), value);\n } else {\n this.data = this.data.setIn(path, value);\n }\n };\n }\n\n /**\n * Converts the value for the path to a parameter. If the value for the path isn't a value-reference, it throws\n * and error.\n * @private\n */\n pathParameterSetter(path) {\n return (name) => {\n if (ValueRefHelper.dataIsValueRef(this.data.getIn(path))) {\n this.data = this.data.setIn(path, Map({\n [ValueRefHelper.VALUE_REF_VALUE_FIELD]: name,\n [ValueRefHelper.VALUE_REF_TYPE_FIELD]: ValueRefHelper.VALUE_REF_PARAMETER_VALUE,\n }));\n } else {\n throw new Error(`Cannot set parameter on non-value-reference field: ${path.join('.')}`);\n }\n };\n }\n\n /**\n * Gets the data type for a path value. It can handle value-reference and regular data values.\n * @private\n */\n pathType(path) {\n return () => {\n const data = this.data.getIn(path);\n\n if (ValueRefHelper.dataIsValueRef(data)) {\n return this.data.getIn(path.concat(ValueRefHelper.VALUE_REF_TYPE_FIELD));\n }\n\n return (typeof data);\n };\n }\n}\n","var isSymbol = require('./isSymbol');\n\n/**\n * The base implementation of methods like `_.max` and `_.min` which accepts a\n * `comparator` to determine the extremum value.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The iteratee invoked per iteration.\n * @param {Function} comparator The comparator used to compare values.\n * @returns {*} Returns the extremum value.\n */\nfunction baseExtremum(array, iteratee, comparator) {\n var index = -1,\n length = array.length;\n\n while (++index < length) {\n var value = array[index],\n current = iteratee(value);\n\n if (current != null && (computed === undefined\n ? (current === current && !isSymbol(current))\n : comparator(current, computed)\n )) {\n var computed = current,\n result = value;\n }\n }\n return result;\n}\n\nmodule.exports = baseExtremum;\n","/**\n * The base implementation of `_.gt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n */\nfunction baseGt(value, other) {\n return value > other;\n}\n\nmodule.exports = baseGt;\n","var baseUnset = require('./_baseUnset'),\n isIndex = require('./_isIndex');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * The base implementation of `_.pullAt` without support for individual\n * indexes or capturing the removed elements.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {number[]} indexes The indexes of elements to remove.\n * @returns {Array} Returns `array`.\n */\nfunction basePullAt(array, indexes) {\n var length = array ? indexes.length : 0,\n lastIndex = length - 1;\n\n while (length--) {\n var index = indexes[length];\n if (length == lastIndex || index !== previous) {\n var previous = index;\n if (isIndex(index)) {\n splice.call(array, index, 1);\n } else {\n baseUnset(array, index);\n }\n }\n }\n return array;\n}\n\nmodule.exports = basePullAt;\n","var baseExtremum = require('./_baseExtremum'),\n baseGt = require('./_baseGt'),\n identity = require('./identity');\n\n/**\n * Computes the maximum value of `array`. If `array` is empty or falsey,\n * `undefined` is returned.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Math\n * @param {Array} array The array to iterate over.\n * @returns {*} Returns the maximum value.\n * @example\n *\n * _.max([4, 2, 8, 6]);\n * // => 8\n *\n * _.max([]);\n * // => undefined\n */\nfunction max(array) {\n return (array && array.length)\n ? baseExtremum(array, identity, baseGt)\n : undefined;\n}\n\nmodule.exports = max;\n","var baseIteratee = require('./_baseIteratee'),\n basePullAt = require('./_basePullAt');\n\n/**\n * Removes all elements from `array` that `predicate` returns truthy for\n * and returns an array of the removed elements. The predicate is invoked\n * with three arguments: (value, index, array).\n *\n * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`\n * to pull elements from an array by value.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = [1, 2, 3, 4];\n * var evens = _.remove(array, function(n) {\n * return n % 2 == 0;\n * });\n *\n * console.log(array);\n * // => [1, 3]\n *\n * console.log(evens);\n * // => [2, 4]\n */\nfunction remove(array, predicate) {\n var result = [];\n if (!(array && array.length)) {\n return result;\n }\n var index = -1,\n indexes = [],\n length = array.length;\n\n predicate = baseIteratee(predicate, 3);\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result.push(value);\n indexes.push(index);\n }\n }\n basePullAt(array, indexes);\n return result;\n}\n\nmodule.exports = remove;\n"],"names":["___CSS_LOADER_EXPORT___","module","options","update","props","paramMap","lastCol","event","newValue","e","appliedParameter","configKey","configPaths","ValueReferenceData","configKeys","emptyOption","name","configOptions","key","parameters","emptyName","configKeyType","type","parameter","parameterOptions","DataTable","ContentPackEntityConfig","paramMapIndex","paramIndex","paths","path","value","EntityIcon","entity","filter","entitiesArg","contentPack","entities","regexp","filteredEntities","onParameterApply","onParameterClear","readOnly","applyParamComponent","closeModal","open","applyModal","BootstrapModalWrapper","entityComponent","closeShowModal","openShowModal","entityId","showModal","disableBtn","appliedParameterCount","newProps","headers","StatusBadge","status","theme","success","info","warning","danger","statuses","ContentPackStatus","contentPackId","states","badges","state","ContentPack","v","id","rev","summary","description","vendor","url","entitieValues","acc","result","constraint","Builder","entitiesJSON","newParameters","Constraint","version","plugin","other","Entity","data","fromServer","constraintValues","constraints","c","obj","ValueRefHelper","index","ContentPackRevisions","contentPackRevision","revision","ContentPacksActions","singleton","ContentPacksStore","URLUtils","ApiRoutes","promise","response","contentPackRev","request","installId","keys","Path","valueIsReference","valueIsParameter","getter","setter","parameterSetter","valueTypeGetter","parentPath","idx","stringPath","leaf","isSymbol","baseExtremum","array","iteratee","comparator","length","current","computed","baseGt","baseUnset","isIndex","arrayProto","splice","basePullAt","indexes","lastIndex","previous","identity","max","baseIteratee","remove","predicate"],"sourceRoot":""}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy