All Downloads are FREE. Search and download functionalities are using the official Maven repository.

web-interface.assets.325e2d4b-346.9e5778fb2f3aac6aa608.js Maven / Gradle / Ivy

There is a newer version: 6.0.1
Show newest version
"use strict";(self.webpackChunkgraylog_web_interface=self.webpackChunkgraylog_web_interface||[]).push([["325e2d4b-346"],{"J+NuCkAk":(e,t,n)=>{n.d(t,{Z:()=>d});var i=n("Z7aTuO5B"),a=n("ii0bleBb"),r=n.n(a),l=n("J6y4/h8P"),s=n("0SqM1XtW");const o=l.default.div.withConfig({displayName:"SupportLink__IconStack",componentId:"sc-1ftkw9e-0"})((e=>{let{small:t,theme:n}=e;return(0,l.css)(["position:relative;min-width:2.5em;font-size:",";.fa-stack-1x{color:",";}.fa-stack-2x{color:",";}"],t?n.fonts.size.body:n.fonts.size.large,n.colors.global.textAlt,n.colors.global.textDefault)})),c=e=>{let{small:t,children:n}=e;return i.createElement("table",{className:"description-tooltips",style:{marginBottom:"10px",display:"inline"}},i.createElement("tbody",null,i.createElement("tr",null,i.createElement("td",{style:{width:"40px"}},i.createElement(o,{className:"fa-stack "+(t?"":"fa-lg"),small:t},i.createElement(s.Z,{name:"circle",className:"fa-stack-2x"}),i.createElement(s.Z,{name:"lightbulb",className:"fa-stack-1x",inverse:!0}))),i.createElement("td",null,i.createElement("strong",null,n)))))};c.propTypes={small:r().bool,children:r().node.isRequired},c.defaultProps={small:!1};const d=c},x4SMQPiy:(e,t,n)=>{n.d(t,{eb:()=>a.Z,sD:()=>p});var i=n("Z7aTuO5B");n("F9olzlTR"),n("C1/p5D5Z");var a=n("G9VqAO1I"),r=n("ii0bleBb"),l=n.n(r),s=n("J6y4/h8P"),o=n("0zTRKSqx");const c=s.default.div.withConfig({displayName:"SmallSupportLink__Description",componentId:"sc-1otjh3-0"})(["display:inline-flex;justify-content:center;align-items:center;"]),d=s.default.div.withConfig({displayName:"SmallSupportLink__IconStack",componentId:"sc-1otjh3-1"})((e=>{let{theme:t}=e;return(0,s.css)(["position:relative;min-width:2.5em;.fa-stack-1x{color:",";}.fa-stack-2x{color:",";}"],t.colors.global.textAlt,t.colors.global.textDefault)})),u=s.default.p.withConfig({displayName:"SmallSupportLink__Content",componentId:"sc-1otjh3-2"})(["font-weight:bold;margin:0;"]),m=e=>{let{children:t,className:n}=e;return i.createElement(c,{className:`${n} description-tooltips`},i.createElement(d,{className:"fa-stack"},i.createElement(o.JO,{name:"circle",className:"fa-stack-2x"}),i.createElement(o.JO,{name:"lightbulb",className:"fa-stack-1x",type:"regular"})),i.createElement(u,null,t))};m.propTypes={children:l().node.isRequired,className:l().string},m.defaultProps={className:void 0};const p=m;n("J+NuCkAk")},WpaXA2ES:(e,t,n)=>{n.r(t),n.d(t,{default:()=>We});var i=n("Z7aTuO5B"),a=n("F9olzlTR"),r=n("0zTRKSqx"),l=n("b/6pmtOr"),s=n("EUJYvlA3"),o=n("ii0bleBb"),c=n.n(o),d=n("9oVghaOd"),u=n.n(d),m=n("+g3JwX3k"),p=(n("gtXNkEXl"),n("qFDBKGgh"));function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class g extends i.Component{constructor(){super(...arguments),h(this,"_update",(e=>{this.props.update(e)})),h(this,"_onAdd",(()=>{const e=m.Z.clone(this.props.options);e&&(e.push({period:"",description:""}),this._update(e))})),h(this,"_onRemove",(e=>()=>{const t=m.Z.clone(this.props.options);t.splice(e,1),this._update(t)})),h(this,"_onChange",((e,t)=>n=>{const i=m.Z.clone(this.props.options);i.forEach(((a,r)=>{if(r===e){let{value:e}=n.target;"period"===t&&(e=e.toUpperCase(),e.startsWith("P")||(e=`P${e}`)),i[r][t]=e}})),this._update(i)})),h(this,"_buildTimeRangeOptions",(()=>this.props.options.map(((e,t)=>{const{period:n}=e,{description:l}=e,s=p.Z.durationStyle(n,this.props.validator,"has-error");return i.createElement("div",{key:`timerange-option-${t}`},i.createElement(a.X2,null,i.createElement(a.JX,{xs:4},i.createElement("div",{className:`input-group ${s}`},i.createElement("input",{type:"text",className:"form-control",value:n,onChange:this._onChange(t,"period")}),i.createElement("span",{className:"input-group-addon"},p.Z.formatDuration(n,this.props.validator)))),i.createElement(a.JX,{xs:8},i.createElement("div",{className:"input-group"},i.createElement("input",{type:"text",className:"form-control",placeholder:"Add description...",value:l,onChange:this._onChange(t,"description")}),i.createElement("span",{className:"input-group-addon"},i.createElement(r.JO,{name:"trash-alt",style:{cursor:"pointer"},onClick:this._onRemove(t)}))))))}))))}render(){return i.createElement("div",{className:"form-group"},i.createElement("label",{className:"control-label"},this.props.title),i.createElement("span",{className:"help-block"},this.props.help),i.createElement("div",{className:"wrapper"},this._buildTimeRangeOptions()),i.createElement(a.zx,{bsSize:"xs",onClick:this._onAdd},this.props.addButtonTitle))}}h(g,"propTypes",{options:c().array,title:c().string.isRequired,help:c().any.isRequired,addButtonTitle:c().string,update:c().func.isRequired,validator:c().func}),h(g,"defaultProps",{options:[],addButtonTitle:"Add option",validator:()=>!0});const f=g;class _ extends i.Component{render(){let e=null;return this.props.options&&(e=Object.keys(this.props.options).map(((e,t)=>i.createElement("span",{key:`timerange-options-summary-${t}`},i.createElement("dt",null,e),i.createElement("dd",null,this.props.options[e]))))),i.createElement("dl",{className:"deflist"},e)}}var E,b,v;E=_,b="propTypes",v={options:c().object.isRequired},b in E?Object.defineProperty(E,b,{value:v,enumerable:!0,configurable:!0,writable:!0}):E[b]=v;const y=_;function C(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S(e){return e>=1}function x(e,t){return e>=1||"PT0S"===t}function w(e){return e>=1}function k(e){return e.split(",").map((e=>e.trim())).filter((e=>e.length>0))}class T extends i.Component{constructor(e){super(e),C(this,"_onUpdate",(e=>t=>{const{config:n}=this.state,i=m.Z.clone(n);i[e]=t,this.setState({config:i})})),C(this,"_onRelativeTimeRangeOptionsUpdate",(e=>{this.setState({relativeTimeRangeOptionsUpdate:e})})),C(this,"_onSurroundingTimeRangeOptionsUpdate",(e=>{this.setState({surroundingTimeRangeOptionsUpdate:e})})),C(this,"_onFilterFieldsUpdate",(e=>{this.setState({surroundingFilterFields:e.target.value})})),C(this,"_onAnalysisDisabledFieldsUpdate",(e=>{this.setState({analysisDisabledFields:e.target.value})})),C(this,"_onChecked",(()=>{const{config:e,limitEnabled:t}=this.state,n=m.Z.clone(e);n.query_time_range_limit=t?"PT0S":"P30D",this.setState({config:n,limitEnabled:!t})})),C(this,"_saveConfig",(()=>{const{updateConfig:e}=this.props,{analysisDisabledFields:t,config:n,relativeTimeRangeOptionsUpdate:i,surroundingTimeRangeOptionsUpdate:a,surroundingFilterFields:r}=this.state,l=m.Z.clone(n);i&&(l.relative_timerange_options={},i.forEach((e=>{l.relative_timerange_options[e.period]=e.description})),this.setState({relativeTimeRangeOptionsUpdate:void 0})),a&&(l.surrounding_timerange_options={},a.forEach((e=>{l.surrounding_timerange_options[e.period]=e.description})),this.setState({surroundingTimeRangeOptionsUpdate:void 0})),r&&(l.surrounding_filter_fields=k(r),this.setState({surroundingFilterFields:void 0})),t&&(l.analysis_disabled_fields=k(t),this.setState({analysisDisabledFields:void 0})),e(l).then((()=>{this._closeModal()}))})),C(this,"_resetConfig",(()=>{this.setState(this.defaultState)})),C(this,"_openModal",(()=>{this.searchesConfigModal.current.open()})),C(this,"_closeModal",(()=>{this.searchesConfigModal.current.close()})),this.searchesConfigModal=(0,i.createRef)();const{config:t}=e,n=null==t?void 0:t.query_time_range_limit,a=null==t?void 0:t.relative_timerange_options,r=null==t?void 0:t.surrounding_timerange_options,l=null==t?void 0:t.surrounding_filter_fields,s=null==t?void 0:t.analysis_disabled_fields;this.state={config:{query_time_range_limit:n,relative_timerange_options:a,surrounding_timerange_options:r,surrounding_filter_fields:l,analysis_disabled_fields:s},limitEnabled:u().duration(n).asMilliseconds()>0,relativeTimeRangeOptionsUpdate:void 0,surroundingTimeRangeOptionsUpdate:void 0},this.defaultState={...this.state}}render(){const e=e=>Object.keys(e).map((t=>({period:t,description:e[t]}))),{config:t,limitEnabled:n,surroundingTimeRangeOptionsUpdate:l,surroundingFilterFields:s,relativeTimeRangeOptionsUpdate:o,analysisDisabledFields:c}=this.state,d=u().duration(t.query_time_range_limit),m=n?`${t.query_time_range_limit} (${d.humanize()})`:"disabled";let p,h,g,_;return t.surrounding_filter_fields&&(p=t.surrounding_filter_fields.map((e=>i.createElement("li",{key:e},e))),h=t.surrounding_filter_fields.join(", ")),t.analysis_disabled_fields&&(g=t.analysis_disabled_fields.map((e=>i.createElement("li",{key:e},e))),_=t.analysis_disabled_fields.join(", ")),i.createElement("div",null,i.createElement("h2",null,"Search Configuration"),i.createElement("dl",{className:"deflist"},i.createElement("dt",null,"Query time range limit"),i.createElement("dd",null,m),i.createElement("dd",null,"The maximum time users can query data in the past. This prevents users from accidentally creating queries which span a lot of data and would need a long time and many resources to complete (if at all).")),i.createElement(a.X2,null,i.createElement(a.JX,{md:6},i.createElement("strong",null,"Relative time range options"),i.createElement(y,{options:t.relative_timerange_options})),i.createElement(a.JX,{md:6},i.createElement("strong",null,"Surrounding time range options"),i.createElement(y,{options:t.surrounding_timerange_options})),i.createElement(a.JX,{md:6},i.createElement("strong",null,"Surrounding search filter fields"),i.createElement("ul",null,p),i.createElement("strong",null,"UI analysis disabled for fields"),i.createElement("ul",null,g))),i.createElement(r.AE,{permissions:"clusterconfigentry:edit"},i.createElement(a.zx,{bsStyle:"info",bsSize:"xs",onClick:this._openModal},"Edit configuration")),i.createElement(a.K$,{ref:this.searchesConfigModal,title:"Update Search Configuration",onSubmitForm:this._saveConfig,onModalClose:this._resetConfig,submitButtonText:"Update configuration"},i.createElement("fieldset",null,i.createElement("label",{htmlFor:"query-limit-checkbox"},"Relative Timerange Options"),i.createElement(a.II,{id:"query-limit-checkbox",type:"checkbox",label:"Enable query limit",name:"enabled",checked:n,onChange:this._onChecked}),n&&i.createElement(r.$1,{id:"query-timerange-limit-field",duration:t.query_time_range_limit,update:this._onUpdate("query_time_range_limit"),label:"Query time range limit (ISO8601 Duration)",help:'The maximum time range for searches. (i.e. "P30D" for 30 days, "PT24H" for 24 hours)',validator:S,required:!0}),i.createElement(f,{options:o||e(t.relative_timerange_options),update:this._onRelativeTimeRangeOptionsUpdate,validator:x,title:"Relative Timerange Options",help:i.createElement("span",null,"Configure the available options for the ",i.createElement("strong",null,"relative")," time range selector as ",i.createElement("strong",null,"ISO8601 duration"))}),i.createElement(f,{options:l||e(t.surrounding_timerange_options),update:this._onSurroundingTimeRangeOptionsUpdate,validator:w,title:"Surrounding Timerange Options",help:i.createElement("span",null,"Configure the available options for the ",i.createElement("strong",null,"surrounding")," time range selector as ",i.createElement("strong",null,"ISO8601 duration"))}),i.createElement(a.II,{id:"filter-fields-input",type:"text",label:"Surrounding search filter fields",onChange:this._onFilterFieldsUpdate,value:s||h,help:"A ',' separated list of message fields that will be used as filter for the surrounding messages query.",required:!0}),i.createElement(a.II,{id:"disabled-fields-input",type:"text",label:"Disabled analysis fields",onChange:this._onAnalysisDisabledFieldsUpdate,value:c||_,help:"A ',' separated list of message fields for which analysis features like QuickValues will be disabled in the web UI.",required:!0}))))}}C(T,"propTypes",{config:c().shape({query_time_range_limit:c().string,relative_timerange_options:c().objectOf(c().string),surrounding_timerange_options:c().objectOf(c().string),surrounding_filter_fields:c().arrayOf(c().string),analysis_disabled_fields:c().arrayOf(c().string)}).isRequired,updateConfig:c().func.isRequired});const U=T;var M=n("D4SbLiE/"),P=n.n(M),N=n("6n4dw8v3"),I=n("MmvwRkvx");const R=P()({displayName:"MessageProcessorsConfig",propTypes:{config:c().object,updateConfig:c().func.isRequired},getDefaultProps:()=>({config:{disabled_processors:[],processor_order:[]}}),getInitialState(){const{config:e}=this.props;return{config:{disabled_processors:e.disabled_processors,processor_order:e.processor_order}}},inputs:{},_openModal(){this.configModal.open()},_closeModal(){this.configModal.close()},_saveConfig(){const{updateConfig:e}=this.props,{config:t}=this.state;this._hasNoActiveProcessor()||e(t).then((()=>{this._closeModal()}))},_resetConfig(){this.setState(this.getInitialState())},_updateSorting(e){const{config:t}=this.state,n=m.Z.clone(t);n.processor_order=e.map((e=>({class_name:e.id,name:e.title}))),this.setState({config:n})},_toggleStatus(e){return()=>{const{config:t}=this.state,n=t.disabled_processors,i=m.Z.clone(t),{checked:a}=this.inputs[e];a?i.disabled_processors=n.filter((t=>t!==e)):-1===n.indexOf(e)&&i.disabled_processors.push(e),this.setState({config:i})}},_hasNoActiveProcessor(){const{config:e}=this.state;return e.disabled_processors.length>=e.processor_order.length},_summary(){const{config:e}=this.state;return e.processor_order.map(((t,n)=>{const a=e.disabled_processors.filter((e=>e===t.class_name)).length>0?"disabled":"active";return i.createElement("tr",{key:n},i.createElement("td",null,n+1),i.createElement("td",null,t.name),i.createElement("td",null,a))}))},_sortableItems(){const{config:e}=this.state;return e.processor_order.map((e=>({id:e.class_name,title:e.name})))},_statusForm(){const{config:e}=this.state;return m.Z.clone(e.processor_order).sort(((e,t)=>(0,N.S)(e.name,t.name))).map(((t,n)=>{const a=e.disabled_processors.filter((e=>e===t.class_name)).length<1;return i.createElement("tr",{key:n},i.createElement("td",null,t.name),i.createElement("td",null,i.createElement("input",{ref:e=>{this.inputs[t.class_name]=e},type:"checkbox",checked:a,onChange:this._toggleStatus(t.class_name)})))}))},render(){return i.createElement("div",null,i.createElement("h2",null,"Message Processors Configuration"),i.createElement("p",null,"The following message processors are executed in order. Disabled processors will be skipped."),i.createElement(a.iA,{striped:!0,bordered:!0,condensed:!0,className:"top-margin"},i.createElement("thead",null,i.createElement("tr",null,i.createElement("th",null,"#"),i.createElement("th",null,"Processor"),i.createElement("th",null,"Status"))),i.createElement("tbody",null,this._summary())),i.createElement(r.AE,{permissions:"clusterconfigentry:edit"},i.createElement(a.zx,{bsStyle:"info",bsSize:"xs",onClick:this._openModal},"Edit configuration")),i.createElement(I.Z,{ref:e=>{this.configModal=e},title:"Update Message Processors Configuration",onSubmitForm:this._saveConfig,onModalClose:this._resetConfig,submitButtonText:"Update configuration"},i.createElement("h3",null,"Order"),i.createElement("p",null,"Use drag and drop to change the execution order of the message processors."),i.createElement(r.cm,{items:this._sortableItems(),onMoveItem:this._updateSorting,displayOverlayInPortal:!0}),i.createElement("h3",null,"Status"),i.createElement("p",null,"Change the checkboxes to change the status of a message processor."),i.createElement(a.iA,{striped:!0,bordered:!0,condensed:!0,className:"top-margin"},i.createElement("thead",null,i.createElement("tr",null,i.createElement("th",null,"Processor"),i.createElement("th",null,"Enabled"))),i.createElement("tbody",null,this._statusForm())),this._hasNoActiveProcessor()&&i.createElement(a.bZ,{bsStyle:"danger"},i.createElement("strong",null,"ERROR:")," No active message processor!")))}});var O=n("YyiN4DLW"),D=n("L040zqI6");const q=P()({displayName:"SidecarConfig",propTypes:{config:c().shape({sidecar_expiration_threshold:c().string,sidecar_inactive_threshold:c().string,sidecar_update_interval:c().string,sidecar_send_status:c().bool,sidecar_configuration_override:c().bool}),updateConfig:c().func.isRequired},getDefaultProps:()=>({config:{sidecar_expiration_threshold:"P14D",sidecar_inactive_threshold:"PT1M",sidecar_update_interval:"PT30S",sidecar_send_status:!0,sidecar_configuration_override:!1}}),getInitialState(){return{config:m.Z.clone(this.props.config)}},UNSAFE_componentWillReceiveProps(e){this.setState({config:m.Z.clone(e.config)})},_openModal(){this.refs.configModal.open()},_closeModal(){this.refs.configModal.close()},_resetConfig(){this.setState(this.getInitialState())},_saveConfig(){this.props.updateConfig(this.state.config).then((()=>{this._closeModal()}))},_onUpdate(e){return t=>{const n="object"==typeof t?(0,O.n6)(t.target):t;this.setState((t=>{let{config:i}=t;const a=m.Z.clone(i);return a[e]=n,{config:a}}))}},_inactiveThresholdValidator:e=>e>=1e3,_expirationThresholdValidator:e=>e>=6e4,_updateIntervalValidator(e){const t=this._durationMilliseconds(this.state.config.sidecar_inactive_threshold),n=this._durationMilliseconds(this.state.config.sidecar_expiration_threshold);return e>=1e3&&ep.Z.isValidDuration(e,(e=>e)),render(){return i.createElement("div",null,i.createElement("h2",null,"Sidecars System"),i.createElement("dl",{className:"deflist"},i.createElement("dt",null,"Inactive threshold:"),i.createElement("dd",null,this.state.config.sidecar_inactive_threshold),i.createElement("dt",null,"Expiration threshold:"),i.createElement("dd",null,this.state.config.sidecar_expiration_threshold),i.createElement("dt",null,"Update interval:"),i.createElement("dd",null,this.state.config.sidecar_update_interval),i.createElement("dt",null,"Send status:"),i.createElement("dd",null,D.Z.capitalizeFirstLetter(this.state.config.sidecar_send_status.toString())),i.createElement("dt",null,"Override configuration:"),i.createElement("dd",null,D.Z.capitalizeFirstLetter(this.state.config.sidecar_configuration_override.toString()))),i.createElement(r.AE,{permissions:"clusterconfigentry:edit"},i.createElement(a.zx,{bsStyle:"info",bsSize:"xs",onClick:this._openModal},"Edit configuration")),i.createElement(a.K$,{ref:"configModal",title:"Update Sidecars System Configuration",onSubmitForm:this._saveConfig,onModalClose:this._resetConfig,submitButtonText:"Update configuration"},i.createElement("fieldset",null,i.createElement(r.$1,{id:"inactive-threshold-field",duration:this.state.config.sidecar_inactive_threshold,update:this._onUpdate("sidecar_inactive_threshold"),label:"Inactive threshold (as ISO8601 Duration)",help:"Amount of time of inactivity after which Sidecars are flagged as inactive.",validator:this._inactiveThresholdValidator,errorText:"invalid (min: 1 second)",required:!0}),i.createElement(r.$1,{id:"sidecar-expiration-field",duration:this.state.config.sidecar_expiration_threshold,update:this._onUpdate("sidecar_expiration_threshold"),label:"Expiration threshold (as ISO8601 Duration)",help:"Amount of time after which inactive Sidecars are purged from the database.",validator:this._expirationThresholdValidator,errorText:"invalid (min: 1 minute)",required:!0}),i.createElement(r.$1,{id:"sidecar-update-field",duration:this.state.config.sidecar_update_interval,update:this._onUpdate("sidecar_update_interval"),label:"Update interval (as ISO8601 Duration)",help:"Time between Sidecar update requests.",validator:this._updateIntervalValidator,errorText:"invalid (min: 1 second, lower: inactive/expiration threshold)",required:!0})),i.createElement(a.II,{type:"checkbox",id:"send-status-updates-checkbox",label:"Send status updates",checked:this.state.config.sidecar_send_status,onChange:this._onUpdate("sidecar_send_status"),help:"Send Sidecar status and host metrics from each client"}),i.createElement(a.II,{type:"checkbox",id:"override-sidecar-config-checkbox",label:"Override Sidecar configuration",checked:this.state.config.sidecar_configuration_override,onChange:this._onUpdate("sidecar_configuration_override"),help:"Override configuration file settings for all Sidecars"})))}}),A=q;var F=n("nHcjWeCO"),Z=n.n(F),z=n("XVMoojyl"),B=n("V/MyycIc");const X=["HOURS","MINUTES","SECONDS"],L=36e5,j=P()({displayName:"EventsConfig",propTypes:{config:c().shape({events_search_timeout:c().number,events_notification_retry_period:c().number,events_notification_default_backlog:c().number,events_catchup_window:c().number,events_notification_tcp_keepalive:c().bool}),updateConfig:c().func.isRequired},getDefaultProps:()=>({config:{events_search_timeout:6e4,events_notification_retry_period:3e5,events_notification_default_backlog:50,events_catchup_window:L,events_notification_tcp_keepalive:!1}}),getInitialState(){const{config:e}=this.props;return{config:e}},UNSAFE_componentWillReceiveProps(e){this.setState({config:e.config})},_openModal(){this.modal.open()},_closeModal(){this.modal.close()},_resetConfig(){this.setState(this.getInitialState())},_saveConfig(){const{updateConfig:e}=this.props,{config:t}=this.state;e(t).then((()=>{this._closeModal()}))},_propagateChanges(e,t){const{config:n}=this.state,i=Z().cloneDeep(n);i[e]=t,this.setState({config:i})},_onSearchTimeoutUpdate(e,t,n){const i=n?u().duration(e,t).asMilliseconds():0;this._searchTimeoutValidator(i)&&this._propagateChanges("events_search_timeout",i)},_onRetryPeriodUpdate(e,t,n){const i=n?u().duration(e,t).asMilliseconds():0;this._notificationsRetryValidator(i)&&this._propagateChanges("events_notification_retry_period",i)},_searchTimeoutValidator:e=>e>=1e3,_notificationsRetryValidator:e=>e>=0,_onBacklogUpdate(e){const t=(0,O.n6)(e.target);this._propagateChanges("events_notification_default_backlog",t)},_onCatchUpWindowUpdate(e,t,n){const{config:i}=this.state;if(0===i.events_catchup_window&&n)return void this._propagateChanges("events_catchup_window",L);const a=n?u().duration(e,t).asMilliseconds():0;this._propagateChanges("events_catchup_window",a)},_onNotificationTcpKeepAliveUpdate(e){const t=(0,O.n6)(e.target);this._propagateChanges("events_notification_tcp_keepalive",t)},_titleCase:e=>Z().capitalize(e),render(){const{config:e}=this.state,t=(0,B.l)(e.events_search_timeout,X),n=(0,B.l)(e.events_notification_retry_period,X),l=(0,B.l)(e.events_catchup_window,X),s=e.events_notification_default_backlog,o=e.events_notification_tcp_keepalive;return i.createElement("div",null,i.createElement("h2",null,"Events System"),i.createElement("dl",{className:"deflist"},i.createElement("dt",null,"Search Timeout:"),i.createElement("dd",null,t.duration," ",this._titleCase(t.unit)),i.createElement("dt",null,"Notification Retry:"),i.createElement("dd",null,n.duration," ",this._titleCase(n.unit)),i.createElement("dt",null,"Notification Backlog:"),i.createElement("dd",null,s),i.createElement("dt",null,"Catch Up Window:"),i.createElement("dd",null,l.duration>0?l.duration:"disabled"," ",l.duration>0?this._titleCase(l.unit):""),i.createElement("dt",null,"TCP keep-alive probes:"),i.createElement("dd",null,o?"enabled":"disabled")),i.createElement(r.AE,{permissions:"clusterconfigentry:edit"},i.createElement(a.zx,{bsStyle:"info",bsSize:"xs",onClick:this._openModal},"Edit configuration")),i.createElement(a.K$,{ref:e=>{this.modal=e},title:"Update Events System Configuration",onSubmitForm:this._saveConfig,onModalClose:this._resetConfig,submitButtonText:"Update configuration"},i.createElement("fieldset",null,i.createElement(a.cw,{controlId:"search-timeout-field"},i.createElement(r.AX,{label:"Search Timeout",update:this._onSearchTimeoutUpdate,value:t.duration,unit:t.unit,units:X,required:!0}),i.createElement(a.Qb,null,"Amount of time after which an Elasticsearch query is interrupted. (Minimum timeout is 1s)")),i.createElement(a.cw,{controlId:"notifications-retry-field"},i.createElement(r.AX,{label:"Notifications retry period",update:this._onRetryPeriodUpdate,value:n.duration,unit:n.unit,units:X,required:!0}),i.createElement(a.Qb,null,"Amount of time after which a failed notification is resend. (Minimum is 0 or immediate retry)")),i.createElement(z.Z,{id:"notification-backlog-field",type:"number",onChange:this._onBacklogUpdate,label:"Default notifications backlog size",help:"Amount of log messages included in a notification by default.",value:s,min:"0",required:!0}),i.createElement(a.cw,{controlId:"catch-up-window"},i.createElement(r.AX,{label:"Catch up window size",update:this._onCatchUpWindowUpdate,value:l.duration,unit:l.unit,enabled:l.duration>0,units:X}),i.createElement(a.Qb,null,'If Event processor execution is behind schedule, queries on older data will be run with this window size to speed up processing. (If the "search within the last" setting of an event definition is greater, this setting will be ignored)')),i.createElement(a.cw,{controlId:"notification-tcp-keepalive-field"},i.createElement(z.Z,{id:"notification-tcp-keepalive-field",label:"Send TCP keep-alive probes for notification connections",type:"checkbox",onChange:this._onNotificationTcpKeepAliveUpdate,checked:o}),i.createElement(a.Qb,null,"If enabled, http connections for notifications will send TCP keep-alive probes")))))}}),J=j;var V=n("xuAwTH+n");function W(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class G extends i.Component{constructor(e){super(e),W(this,"_summary",(()=>{const{config:{entries:e}}=this.props;return e.map(((e,t)=>i.createElement("tr",{key:e.id},i.createElement("td",null,t+1),i.createElement("td",null,e.title),i.createElement("td",null,e.value),i.createElement("td",null,"literal"===e.type?"Exact match":"Regex"))))})),W(this,"_openModal",(()=>{this.configModal&&this.configModal.open()})),W(this,"_closeModal",(()=>{this.configModal&&this.configModal.close()})),W(this,"_saveConfig",(()=>{const{config:e,isValid:t}=this.state,{updateConfig:n}=this.props;t&&n(e).then((()=>{this._closeModal()}))})),W(this,"_update",((e,t)=>{const n={config:e,isValid:t};this.setState(n)})),W(this,"_resetConfig",(()=>{const{config:e}=this.props,t={...this.state,config:e};this.setState(t)}));const{config:t}=this.props;this.state={config:t,isValid:!1}}render(){const{config:{entries:e,disabled:t}}=this.props,{isValid:n}=this.state;return i.createElement("div",null,i.createElement("h2",null,"URL Whitelist Configuration  ",t?i.createElement("small",null,"(Disabled)"):i.createElement("small",null,"(Enabled)")),i.createElement("p",null,"When enabled, outgoing HTTP requests from Graylog servers, such as event notifications or HTTP-based data adapter requests, are validated against the whitelists configured here. Because the HTTP requests are made from the Graylog servers, they might be able to reach more sensitive systems than an external user would have access to, including AWS EC2 metadata, which can contain keys and other secrets, Elasticsearch and others. Whitelist administrative access is separate from data adapters and event notification configuration."),i.createElement(a.iA,{striped:!0,bordered:!0,condensed:!0,className:"top-margin"},i.createElement("thead",null,i.createElement("tr",null,i.createElement("th",null,"#"),i.createElement("th",null,"Title"),i.createElement("th",null,"URL"),i.createElement("th",null,"Type"))),i.createElement("tbody",null,this._summary())),i.createElement(r.AE,{permissions:"urlwhitelist:write"},i.createElement(a.zx,{bsStyle:"info",bsSize:"xs",onClick:this._openModal},"Edit configuration")),i.createElement(I.Z,{ref:e=>{this.configModal=e},bsSize:"lg",title:"Update Whitelist Configuration",onSubmitForm:this._saveConfig,onModalClose:this._resetConfig,submitButtonDisabled:!n,submitButtonText:"Update configuration"},i.createElement("h3",null,"Whitelist URLs"),i.createElement(V.Z,{urls:e,disabled:t,onUpdate:this._update})))}}W(G,"propTypes",{config:c().object.isRequired,updateConfig:c().func.isRequired});const H=G;var Q=n("J6y4/h8P"),K=n("UiXZqrDE"),Y=n("G3lok2DH"),ee=n("8pZttqbT");const te=Q.default.dl.attrs({className:"deflist"}).withConfig({displayName:"PermissionsConfig__StyledDefList",componentId:"sc-9pidpt-0"})((e=>{let{theme:t}=e;return(0,Q.css)(["&&.deflist{dd{padding-left:",";margin-left:200px;}}"],t.spacings.md)})),ne=Q.default.span.withConfig({displayName:"PermissionsConfig__LabelSpan",componentId:"sc-9pidpt-1"})((e=>{let{theme:t}=e;return(0,Q.css)(["margin-left:",";font-weight:bold;"],t.spacings.sm)})),ie=e=>{let{config:t,updateConfig:n}=e;const[l,s]=(0,i.useState)(!1),o=()=>{s(!1)};return i.createElement("div",null,i.createElement("h2",null,"Permissions Config"),i.createElement("p",null,"These settings can be used to control which entity sharing options are available."),t?i.createElement(i.Fragment,null,i.createElement(te,null,i.createElement("dt",null,"Share with everyone:"),i.createElement("dd",null,t.allow_sharing_with_everyone?"Enabled":"Disabled"),i.createElement("dt",null,"Share with users:"),i.createElement("dd",null,t.allow_sharing_with_users?"Enabled":"Disabled")),i.createElement(r.AE,{permissions:"clusterconfigentry:edit"},i.createElement("p",null,i.createElement(a.zx,{type:"button",bsSize:"xs",bsStyle:"info",onClick:()=>{s(!0)}},"Edit configuration"))),i.createElement(a.u_,{show:l,onHide:o,"aria-modal":"true","aria-labelledby":"dialog_label"},i.createElement(K.Formik,{onSubmit:e=>{n(e).then((()=>{s(!1)}))},initialValues:t},(e=>{let{isSubmitting:t}=e;return i.createElement(K.Form,null,i.createElement(a.u_.Header,{closeButton:!0},i.createElement(a.u_.Title,{id:"dialog_label"},"Configure Permissions")),i.createElement(a.u_.Body,null,i.createElement("div",null,i.createElement(a.X2,null,i.createElement(a.JX,{sm:12},i.createElement(Y.Z,{type:"checkbox",name:"allow_sharing_with_everyone",id:"shareWithEveryone",label:i.createElement(ne,null,"Share with everyone")}),i.createElement(r.d2,{help:"Control whether it is possible to share with everyone."})),i.createElement(a.JX,{sm:12},i.createElement(Y.Z,{type:"checkbox",name:"allow_sharing_with_users",id:"shareWithUsers",label:i.createElement(ne,null,"Share with users")}),i.createElement(r.d2,{help:"Control whether it is possible to share with single users."}))))),i.createElement(a.u_.Footer,null,i.createElement(r.os,{onCancel:o,isSubmitting:t,isAsyncSubmit:!0,submitLoadingText:"Update configuration",submitButtonText:"Update configuration"})))})))):i.createElement(ee.Z,null))};var ae=n("AztyBNMT"),re=n("x4SMQPiy");const le={enabled:!1,enforce_graylog_schema:!0,db_vendor_type:"MAXMIND",city_db_path:"/etc/graylog/server/GeoLite2-City.mmdb",asn_db_path:"/etc/graylog/server/GeoLite2-ASN.mmdb",refresh_interval_unit:"MINUTES",refresh_interval:10,use_s3:!1},se=e=>{let{config:t=le,updateConfig:n}=e;const[l,s]=(0,i.useState)(!1),[o,c]=(0,i.useState)((()=>({...le})));(0,i.useEffect)((()=>{c({...t})}),[t]);const d=()=>{c(t),s(!1)};return i.createElement("div",null,i.createElement("h3",null,"Geo-Location Processor"),i.createElement("p",null,"The Geo-Location Processor plugin scans all messages for fields containing ",i.createElement("strong",null,"exclusively")," an IP address, and puts their geo-location information (coordinates, ISO country code, and city name) into different fields. Read more in the ",i.createElement(re.eb,{page:"geolocation",text:"Graylog documentation"}),"."),i.createElement("dl",{className:"deflist"},i.createElement("dt",null,"Enabled:"),i.createElement("dd",null,!0===t.enabled?"Yes":"No"),t.enabled&&i.createElement(i.Fragment,null,i.createElement("dt",null,"Enforce default Graylog schema:"),i.createElement("dd",null,!0===t.enforce_graylog_schema?"Yes":"No"),i.createElement("dt",null,"Database vendor type:"),i.createElement("dd",null,(u=t.db_vendor_type,[{value:"MAXMIND",label:"MaxMind GeoIP"},{value:"IPINFO",label:"IPInfo Standard Location"}].filter((e=>e.value===u))[0].label)),i.createElement("dt",null,"City database path:"),i.createElement("dd",null,t.city_db_path),i.createElement("dt",null,"ASN database path:"),i.createElement("dd",null,""===t.asn_db_path?"-":t.asn_db_path),i.createElement("dt",null,"Database refresh interval:"),i.createElement("dd",null,t.refresh_interval," ",t.refresh_interval_unit),i.createElement("dt",null,"Pull files from S3 bucket:"),i.createElement("dd",null,!0===t.use_s3?"Yes":"No"))),i.createElement(r.AE,{permissions:"clusterconfigentry:edit"},i.createElement(a.zx,{bsStyle:"info",bsSize:"xs",onClick:()=>{s(!0)}},"Edit configuration")),i.createElement(a.u_,{show:l,onHide:d,"aria-modal":"true","aria-labelledby":"dialog_label"},i.createElement(K.Formik,{onSubmit:e=>n(e).then((e=>{"enabled"in e&&s(!1)})),initialValues:o},(e=>{let{values:t,setFieldValue:n,isSubmitting:l}=e;return i.createElement(K.Form,null,i.createElement(a.u_.Header,null,i.createElement(a.u_.Title,{id:"dialog_label"},"Update Geo-Location Processor Configuration")),i.createElement(a.u_.Body,null,i.createElement(a.X2,null,i.createElement(a.JX,{sm:6},i.createElement(Y.Z,{id:"enabled",type:"checkbox",label:"Enable Geo-Location processor",name:"enabled"})),i.createElement(a.JX,{sm:6},i.createElement(Y.Z,{id:"enforce_graylog_schema",type:"checkbox",disabled:!t.enabled,label:"Enforce default Graylog schema",name:"enforce_graylog_schema"}))),i.createElement(K.Field,{id:"db_vendor_type_select",name:"db_vendor_type_field"},(()=>i.createElement(a.II,{id:"db_vendor_type_input",label:"Select the GeoIP database vendor"},i.createElement(r.Ph,{id:"db_vendor_type",name:"db_vendor_type",clearable:!1,placeholder:"Select the GeoIP database vendor",required:!0,disabled:!t.enabled,options:[{value:"MAXMIND",label:"MaxMind GeoIP"},{value:"IPINFO",label:"IPInfo Standard Location"}],matchProp:"label",value:t.db_vendor_type,onChange:e=>{n("db_vendor_type",e)}})))),i.createElement(Y.Z,{id:"city_db_path",type:"text",disabled:!t.enabled,label:"Path to the city database",name:"city_db_path",required:!0}),i.createElement(Y.Z,{id:"asn_db_path",type:"text",disabled:!t.enabled,label:"Path to the ASN database",name:"asn_db_path"}),i.createElement(r.AX,{label:"Database refresh interval",update:(e,t)=>{n("refresh_interval",e),n("refresh_interval_unit",t)},help:"Interval at which the database files are checked for modifications and refreshed changes are detected on disk.",value:t.refresh_interval,unit:t.refresh_interval_unit||"MINUTES",defaultEnabled:t.enabled,enabled:t.enabled,hideCheckbox:!0,units:["SECONDS","MINUTES","HOURS","DAYS"]}),i.createElement(a.X2,null,i.createElement(a.JX,{sm:6},i.createElement(Y.Z,{id:"use_s3",type:"checkbox",disabled:!t.enabled,label:"Pull files from S3 bucket",name:"use_s3"})))),i.createElement(a.u_.Footer,null,i.createElement(r.os,{onCancel:d,isSubmitting:l,isAsyncSubmit:!0,submitButtonText:"Update configuration",submitLoadingText:"Updating configuration..."})))}))));var u};ae.PluginStore.register(new ae.PluginManifest({},{systemConfigurations:[{component:se,configType:"org.graylog.plugins.map.config.GeoIpResolverConfig"}]}));var oe=n("RwbKyha4");const ce=(0,Q.default)(a.X2).withConfig({displayName:"ConfigletRow",componentId:"sc-1t3h2eu-0"})([".deflist{margin-top:10px;}.deflist dt{float:left;clear:left;}.deflist dd{margin-left:180px;}.top-margin{margin-top:10px;}hr.separator{margin-top:10px;margin-bottom:5px;}> div{margin-bottom:30px;}"]);var de=n("5LMarVJQ"),ue=n("j7/yTk5n"),me=n("GMFq2nBB");function pe(){return pe=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{error:t,title:n}=e;return i.createElement(i.Fragment,null,i.createElement("h2",null,n),i.createElement("p",null,"Something went wrong:"),i.createElement("pre",null,t.message))},ge=e=>{let{children:t,title:n}=e;return i.createElement(me.ErrorBoundary,{FallbackComponent:e=>i.createElement(he,pe({title:n},e))},t)},fe=e=>{let{children:t,title:n}=e;return i.createElement(a.JX,{md:6},i.createElement(ge,{title:n},t))},_e=e=>t=>de.h.update(e,t),Ee=(e,t)=>{var n;return null!==(n=null==t?void 0:t[e])&&void 0!==n?n:null},be=e=>{let{configuration:t,systemConfigs:n}=e;const a=(0,i.useMemo)((()=>((e,t)=>e.map((e=>{var n;let{component:a,configType:r}=e;return i.createElement(fe,{title:r},i.createElement(a,{key:`system-configuration-${r}`,config:null!==(n=Ee(r,t))&&void 0!==n?n:void 0,updateConfig:_e(r)}))})))(n,t)),[t,n]),r=(0,F.chunk)(a,2).map(((e,t)=>i.createElement(ce,{key:`plugin-config-row-${t}`},e[0],e[1])));return i.createElement(i.Fragment,null,r)};var ve=n("xbdHKyOC"),ye=n("xxwliabF"),Ce=n("4af3+9mh"),Se=n("UIMBlbA/"),xe=n("UQF3Dyqs"),we=n("m1rU1JpT"),ke=n("NxQnyiWl");const Te="000000000000000000000001",Ue="DEFAULT_SEARCH",Me=Q.default.div.withConfig({displayName:"StreamSelect__SelectContainer",componentId:"sc-517i3d-0"})(["margin-bottom:10px;"]),Pe=e=>{let{onChange:t,value:n,streams:a}=e;const r=[{label:"Default Search",value:Ue},...a.sort(((e,t)=>{let{title:n}=e,{title:i}=t;return(0,N.S)(n,i)})).map((e=>{let{title:t,id:n}=e;return{label:t,value:n}}))];return i.createElement(Me,null,i.createElement(ke.Z,{inputId:"streams-filter",onChange:t,options:r,clearable:!1,placeholder:"There are no decorators configured for any stream.",value:n}))};Pe.propTypes={onChange:c().func.isRequired,value:c().string.isRequired,streams:c().array.isRequired};const Ne=Pe;var Ie=n("nP11WxrP");const Re=(e,t,n,a)=>{const r=n[e.type]||{requested_configuration:{},name:`Unknown type: ${e.type}`},l=a?(e,n)=>a(t.map((t=>t.id===e?n:t))):()=>{},s=a?e=>a(t.filter((t=>{let{id:n}=t;return n!==e}))):()=>{},{id:o,order:c}=e;return{id:o,order:c,title:i.createElement(Ie.Z,{key:`decorator-${o||"new"}`,decorator:e,decoratorTypes:n,disableMenu:void 0===a,onUpdate:l,onDelete:s,typeDefinition:r})}},Oe=(e,t)=>{let{streams:n,decorators:l,types:s,show:o=!1,onCancel:c,onSave:d}=e;const[u,m]=(0,i.useState)(Te),[p,h]=(0,i.useState)(l),g=(0,i.useCallback)((e=>{let{stream:t,...n}=e;return h([...p,{...n,stream:t===Ue?null:t}])}),[p,h]),f=(0,i.useCallback)((e=>((e,t,n)=>{const i=(0,F.cloneDeep)(t);e.forEach(((e,t)=>{const n=i.find((t=>t.id===e.id));n&&(n.order=t)})),n(i)})(e,p,h)),[p,h]),_=(0,i.useCallback)((()=>d(p)),[d,p]),E=p.filter((e=>(e.stream||Ue)===u)),b=E.sort(((e,t)=>e.order-t.order)).map((e=>Re(e,p,s,h))),v=E.reduce(((e,t)=>Math.max(e,t.order)),0)+1,y=(0,i.useCallback)((()=>{h(l),c()}),[l,c]);return i.createElement(xe.Z,{ref:t,showModal:o,onHide:y},i.createElement(a.u_.Header,{closeButton:!0},i.createElement(a.u_.Title,null,"Update Default Decorators Configuration")),i.createElement(a.u_.Body,null,i.createElement("p",null,"Select the stream for which you want to change the set of default decorators."),i.createElement(Ne,{onChange:m,value:u,streams:n}),i.createElement(r.AE,{permissions:"decorators:create"},i.createElement("p",null,"Select the type to create a new decorator for this stream:"),i.createElement(we.Z,{stream:u,nextOrder:v,decoratorTypes:s,onCreate:g,showHelp:!1})),i.createElement("p",null,"Use drag and drop to change the execution order of the decorators."),i.createElement(Se.Z,{decorators:b,onReorder:f})),i.createElement(a.u_.Footer,null,i.createElement(r.os,{onSubmit:_,onCancel:y,submitButtonText:"Update configuration"})))},De=i.forwardRef(Oe),qe=(e,t)=>{const n=e.filter((e=>{let{id:t}=e;return void 0!==t})).map((e=>{let{id:t}=e;return t})).sort(),i=t.map((e=>{let{id:t}=e;return t})).sort(),a=t.reduce(((e,t)=>t.id?{...e,[t.id]:t}:e),{}),r=e.reduce(((e,t)=>t.id?{...e,[t.id]:t}:e),{}),l=(0,F.difference)(n,i).map((e=>r[e])),s=e.filter((e=>{let{id:t}=e;return t})).filter((e=>e.id&&a[e.id]&&!(0,F.isEqual)(e,a[e.id]))),o=(0,F.difference)(i,n);return[...l.map((e=>{let{id:t,...n}=e;return()=>ve.D.create(n)})),...s.map((e=>()=>ve.D.update(e.id,e))),...o.map((e=>()=>ve.D.remove(e)))].reduce(((e,t)=>e.then((()=>t()))),Promise.resolve())},Ae=()=>{const[e,t]=(0,i.useState)(),[n,l]=(0,i.useState)(Te),[s,o]=(0,i.useState)(),[c,d]=(0,i.useState)(),u=(0,i.useRef)();(0,i.useEffect)((()=>{ye.s3.listStreams().then(t)}),[t]),(0,i.useEffect)((()=>{ve.D.available().then(d)}),[d]),(0,i.useEffect)((()=>{ve.D.list().then(o)}),[o]);const m=(0,i.useCallback)((()=>u.current&&u.current.open()),[u]),p=(0,i.useCallback)((()=>u.current&&u.current.close()),[u]);if(!e||!s||!c)return i.createElement(ee.Z,null);const h=(0,F.groupBy)(s,(e=>e.stream||Ue)),g=h[n]||[],f=g.sort(((e,t)=>e.order-t.order)).map((e=>Re(e,g,c))),_=e.filter((e=>{let{id:t}=e;return Object.keys(h).includes(t)}));return i.createElement("div",null,i.createElement("h2",null,"Decorators Configuration"),i.createElement("p",null,"Select the stream for which you want to see the set of default decorators."),i.createElement(Ne,{streams:_,onChange:l,value:n}),i.createElement(Se.Z,{decorators:f,disableDragging:!0}),i.createElement(r.AE,{permissions:"decorators:edit"},i.createElement(a.zx,{bsStyle:"info",bsSize:"xs",onClick:m},"Edit configuration")),i.createElement(De,{ref:u,streams:e,decorators:s,onCancel:p,onSave:e=>qe(e,s).then((()=>Ce.Z.success("Updated decorators configuration.","Success!")),(e=>Ce.Z.error(`Unable to save new decorators: ${e}`,"Saving decorators failed"))).then(ve.D.list).then(o).then(p),types:c}))};Ae.propTypes={};const Fe=Ae,Ze="org.graylog2.indexer.searches.SearchesClusterConfig",ze="org.graylog2.messageprocessors.MessageProcessorsConfig",Be="org.graylog.plugins.sidecar.system.SidecarConfiguration",Xe="org.graylog.events.configuration.EventsConfiguration",Le="org.graylog2.system.urlwhitelist.UrlWhitelist",je="org.graylog2.users.UserAndTeamsConfig",Je=(e,t)=>{var n;return null!==(n=null==t?void 0:t[e])&&void 0!==n?n:null},Ve=e=>t=>{switch(e){case ze:return de.h.updateMessageProcessorsConfig(e,t);case Le:return de.h.updateWhitelist(e,t);default:return de.h.update(e,t)}},We=()=>{const[e,t]=(0,i.useState)(!1),n=(0,oe.Z)("systemConfigurations"),o=(0,l.o)(de.i,(e=>null==e?void 0:e.configuration)),c=(0,ue.Z)();(0,i.useEffect)((()=>{const e=[de.h.list(Ze),de.h.listMessageProcessorsConfig(ze),de.h.list(Be),de.h.list(Xe),de.h.listPermissionsConfig(je)];(0,s.rq)(c.permissions,["urlwhitelist:read"])&&e.push(de.h.listWhiteListConfig(Le));const i=n.map((e=>de.h.list(e.configType)));Promise.allSettled([...e,...i]).then((()=>t(!0)))}),[c.permissions,n]);let d=i.createElement(a.JX,{md:12},i.createElement(r.$j,{text:"Loading Configuration Panel..."}));if(e){const e=Je(Ze,o),t=Je(ze,o),n=Je(Be,o),a=Je(Xe,o),r=Je(Le,o),l=Je(je,o);d=i.createElement(i.Fragment,null,e&&i.createElement(fe,{title:"Search Configuration"},i.createElement(U,{config:e,updateConfig:Ve(Ze)})),t&&i.createElement(fe,{title:"Message Processor Configuration"},i.createElement(R,{config:t,updateConfig:Ve(ze)})),n&&i.createElement(fe,{title:"Sidecar Configuration"},i.createElement(A,{config:n,updateConfig:Ve(Be)})),a&&i.createElement(fe,{title:"Events Configuration"},i.createElement(J,{config:a,updateConfig:Ve(Xe)})),(0,s.rq)(c.permissions,["urlwhitelist:read"])&&r&&i.createElement(fe,{title:"URL Whitelist Configuration"},i.createElement(H,{config:r,updateConfig:Ve(Le)})),i.createElement(fe,{title:"Decorators Configuration"},i.createElement(Fe,null)),l&&i.createElement(fe,{title:"Permissions Configuration"},i.createElement(ie,{config:l,updateConfig:Ve(je)})))}return i.createElement(r.$4,{title:"Configurations"},i.createElement("span",null,i.createElement(r.mr,{title:"Configurations"},i.createElement("span",null,"You can configure system settings for different sub systems on this page.")),i.createElement(ce,{className:"content"},d),n.length>0&&i.createElement(a.X2,{className:"content"},i.createElement(a.JX,{md:12},i.createElement("h2",null,"Plugins"),i.createElement("p",{className:"description"},"Configuration for installed plugins."),i.createElement("hr",{className:"separator"}),i.createElement("div",{className:"top-margin"},i.createElement(be,{configuration:o,systemConfigs:n}))))))}}}]);
//# sourceMappingURL=325e2d4b-346.9e5778fb2f3aac6aa608.js.map




© 2015 - 2024 Weber Informatics LLC | Privacy Policy