@splunk/dynamic-editors 0.37.3 → 0.37.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/DynamicEditor.js +88 -88
  3. package/DynamicEditor.js.map +1 -1
  4. package/containers/EditorItem.js +56 -56
  5. package/containers/EditorItem.js.map +1 -1
  6. package/containers/EditorLayout.js +112 -112
  7. package/containers/EditorLayout.js.map +1 -1
  8. package/containers/EditorLayoutItem.js +108 -108
  9. package/containers/EditorLayoutItem.js.map +1 -1
  10. package/containers/EncodingItem.js +1 -1
  11. package/containers/EncodingItem.js.map +1 -1
  12. package/editors/AdvancedConfigCard.js +4 -4
  13. package/editors/AdvancedConfigCard.js.map +1 -1
  14. package/editors/ArrayOfStringsEditor.js +2 -2
  15. package/editors/ArrayOfStringsEditor.js.map +1 -1
  16. package/editors/CheckboxEditor.js +7 -7
  17. package/editors/CheckboxEditor.js.map +1 -1
  18. package/editors/ColorEditor.js +8 -8
  19. package/editors/ColorEditor.js.map +1 -1
  20. package/editors/ColumnMultiSelectionByFieldNameEditor.js +2 -2
  21. package/editors/ColumnMultiSelectionByFieldNameEditor.js.map +1 -1
  22. package/editors/ColumnMultiSelectionEditor.js +1 -1
  23. package/editors/ColumnMultiSelectionEditor.js.map +1 -1
  24. package/editors/ColumnSelectionEditor.js +2 -2
  25. package/editors/ColumnSelectionEditor.js.map +1 -1
  26. package/editors/DynamicColorEditor.js +3 -3
  27. package/editors/DynamicColorEditor.js.map +1 -1
  28. package/editors/DynamicColorEditorWithPrecedence.js +5 -5
  29. package/editors/DynamicColorEditorWithPrecedence.js.map +1 -1
  30. package/editors/DynamicItemEditor.js +4 -4
  31. package/editors/DynamicItemEditor.js.map +1 -1
  32. package/editors/ImageEditor.js +5 -5
  33. package/editors/ImageEditor.js.map +1 -1
  34. package/editors/MarkdownEditor.js +1 -1
  35. package/editors/MarkdownEditor.js.map +1 -1
  36. package/editors/MultiColorPickerEditor.js +13 -13
  37. package/editors/MultiColorPickerEditor.js.map +1 -1
  38. package/editors/NumberEditor.js +1 -1
  39. package/editors/NumberEditor.js.map +1 -1
  40. package/editors/PercentEditor.js +3 -3
  41. package/editors/PercentEditor.js.map +1 -1
  42. package/editors/PresetSelectorEditor.js +1 -1
  43. package/editors/PresetSelectorEditor.js.map +1 -1
  44. package/editors/RadioBarEditor.js +2 -2
  45. package/editors/RadioBarEditor.js.map +1 -1
  46. package/editors/SelectEditor.js +4 -4
  47. package/editors/SelectEditor.js.map +1 -1
  48. package/editors/SeriesColorsByFieldEditor.js +13 -13
  49. package/editors/SeriesColorsByFieldEditor.js.map +1 -1
  50. package/editors/SeriesColorsEditor.js +16 -16
  51. package/editors/SeriesColorsEditor.js.map +1 -1
  52. package/editors/SliderEditor.js +1 -1
  53. package/editors/SliderEditor.js.map +1 -1
  54. package/editors/StaticItemEditor.js +6 -6
  55. package/editors/StaticItemEditor.js.map +1 -1
  56. package/editors/TableColumnFormatterEditor.js +54 -54
  57. package/editors/TableColumnFormatterEditor.js.map +1 -1
  58. package/editors/TextAreaEditor.js +1 -1
  59. package/editors/TextAreaEditor.js.map +1 -1
  60. package/editors/TextEditor.js +4 -4
  61. package/editors/TextEditor.js.map +1 -1
  62. package/editors/ThresholdEditor.js +22 -22
  63. package/editors/ThresholdEditor.js.map +1 -1
  64. package/editors/ToggleEditor.js +1 -1
  65. package/editors/ToggleEditor.js.map +1 -1
  66. package/package.json +2 -2
  67. package/shared/AdvancedControlGroup.js +2 -2
  68. package/shared/AdvancedControlGroup.js.map +1 -1
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2018 Splunk Inc.
3
3
  * SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
4
4
  * in part without a valid written license from Splunk Inc. is PROHIBITED.
5
- */(()=>{"use strict";var e={5731:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnSelectionEditor=void 0;const a=n(o(9497)),s=n(o(23)),u=l(o(2373)),d=o(1413),c=o(9033),f=o(6801),p=o(1385),b=o(1256),v=l(o(4008)),g=o(5862),_=o(8999),m=Object.assign(Object.assign({},f.BaseEditorPropTypes),{dataSourceKey:s.string.isRequired,prepareValue:s.func,filterByTypes:s.arrayOf(s.string),tooltip:s.string});t.ColumnSelectionEditor=({name:e,value:t,label:o="",labelPosition:r="top",dataSourceKey:i="primary",dataSourceBindings:n,prepareValue:l=(e=>e),onChange:s,isAdvanced:f,isDisabled:m,filterByTypes:h,tooltip:y})=>{const O=(0,p.useDataSource)({dataSourceBindings:n,dataSourceKey:i}),{columns:S,fields:M}=(null==O?void 0:O.data)||{columns:[],fields:[]},P=(0,b.getAvailableFieldsWithTypes)(S,M),j=null==t?t:(0,d.getFieldsFromDSL)(t,{[i]:O})[0]||"",[D,C]=(0,a.useState)(j);a.default.useEffect((()=>{C(j)}),[j]);const[F,x]=(0,a.useState)(""),E=P.filter((e=>-1!==e.name.indexOf(F))),A=(0,_.useColumnSelectorFooterMessage)({availableFields:P,selectedFields:[D],filteredFields:E,filter:F}),T=(0,a.useCallback)(((t,{value:o})=>{C(o);const r=l({options:{[e]:`> ${i} | seriesByName('${o}')`}});s(t,r)}),[i,e,s,l]),k=(0,a.useCallback)(((e,{keyword:t})=>{x(t)}),[]),{hasError:w,isMissing:B,isLoading:L}=(0,c.getDataSourceStateInfo)(O),I=B||w||m,q=(0,b.getPlaceholderMessage)({isMissing:B,isLoading:L,hasError:w});return a.default.createElement(v.default,{label:o,labelPosition:r,tooltip:y,isAdvanced:f},a.default.createElement(u.default,{"data-test":"ColumnSelectionEditor",value:D,onFilterChange:k,onChange:T,footerMessage:A,disabled:I,placeholder:q,isLoadingOptions:L,error:w,style:g.editorStyle,filter:!0},E.map((e=>a.default.createElement(u.default.Option,{key:e.name,label:`${e.name} (${e.type})`,value:e.name,disabled:!!(null==h?void 0:h.length)&&!h.find((t=>t===e.type))})))))},t.ColumnSelectionEditor.propTypes=m,t.default=t.ColumnSelectionEditor},8999:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.useColumnSelectorFooterMessage=void 0;const l=n(o(9497)),a=o(3620);t.useColumnSelectorFooterMessage=({filter:e,availableFields:t,selectedFields:o,filteredFields:r,noSelectedFieldsInfo:i=!1})=>{const n=(0,l.useMemo)((()=>{if(!o||!r)return[];const e=new Set(o.filter((e=>""!==e&&void 0!==e)));return r.filter((t=>e.has(t.name)))}),[o,r]);return e&&!r.length?null:l.default.createElement(a.ColumnSelectorFooterMessage,{noSelectedFieldsInfo:i,numSelected:null==n?void 0:n.length,numFiltered:r.length,numAvailable:t.length,filter:e})}},1385:function(e,t,o){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.useDataSource=void 0;const i=o(9497),n=r(o(4853)),l=o(4793);t.useDataSource=({dataSourceBindings:e,dataSourceKey:t})=>{const o=(0,i.useContext)(n.default),[r,a]=(0,i.useState)();return(0,i.useEffect)((()=>{if(!(0,l.get)(e,t))return a(null),()=>{};const r=(0,l.isFunction)(o.subscribe)&&o.subscribe(t,(e=>a(e)));return()=>{r&&r()}}),[e]),r}},6801:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.BaseEditorPropTypes=void 0;const l=n(o(23));t.BaseEditorPropTypes={name:l.string.isRequired,value:l.oneOfType([l.string,l.object,l.arrayOf(l.string)]),context:l.object,label:l.string,labelPosition:l.oneOf(["top","left"]),labelWidth:l.number,onChange:l.func,isAdvanced:l.bool,isDisabled:l.bool,dataSourceBindings:l.object,options:l.object,optionsSchema:l.object}},4008:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedConfigButton=void 0;const a=n(o(9497)),s=n(o(23)),u=l(o(232)),d=o(6649),c=l(o(6643)),f=o(3563),p=l(o(6379)),b=l(o(7020)),v=l(o(9250)),g=(0,u.default)(v.default)`
5
+ */(()=>{"use strict";var e={5731:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnSelectionEditor=void 0;const a=n(o(9497)),s=n(o(23)),u=l(o(2373)),d=o(1413),c=o(9033),f=o(6801),p=o(1385),b=o(1256),g=l(o(4008)),v=o(5862),_=o(8999),m=Object.assign(Object.assign({},f.BaseEditorPropTypes),{dataSourceKey:s.string.isRequired,prepareValue:s.func,filterByTypes:s.arrayOf(s.string),tooltip:s.string});t.ColumnSelectionEditor=({name:e,value:t,label:o="",labelPosition:r="top",dataSourceKey:i="primary",dataSourceBindings:n,prepareValue:l=(e=>e),onChange:s,isAdvanced:f,isDisabled:m,filterByTypes:h,tooltip:y})=>{const O=(0,p.useDataSource)({dataSourceBindings:n,dataSourceKey:i}),{columns:S,fields:M}=(null==O?void 0:O.data)||{columns:[],fields:[]},P=(0,b.getAvailableFieldsWithTypes)(S,M),j=null==t?t:(0,d.getFieldsFromDSL)(t,{[i]:O})[0]||"",[D,C]=(0,a.useState)(j);a.default.useEffect((()=>{C(j)}),[j]);const[F,x]=(0,a.useState)(""),E=P.filter((e=>-1!==e.name.indexOf(F))),T=(0,_.useColumnSelectorFooterMessage)({availableFields:P,selectedFields:[D],filteredFields:E,filter:F}),A=(0,a.useCallback)(((t,{value:o})=>{C(o);const r=l({options:{[e]:`> ${i} | seriesByName('${o}')`}});s(t,r)}),[i,e,s,l]),k=(0,a.useCallback)(((e,{keyword:t})=>{x(t)}),[]),{hasError:w,isMissing:B,isLoading:L}=(0,c.getDataSourceStateInfo)(O),I=B||w||m,q=(0,b.getPlaceholderMessage)({isMissing:B,isLoading:L,hasError:w});return a.default.createElement(g.default,{label:o,labelPosition:r,tooltip:y,isAdvanced:f},a.default.createElement(u.default,{"data-test":"ColumnSelectionEditor",value:D,onFilterChange:k,onChange:A,footerMessage:T,disabled:I,placeholder:q,isLoadingOptions:L,error:w,style:v.editorStyle,filter:!0},E.map((e=>a.default.createElement(u.default.Option,{key:e.name,label:`${e.name} (${e.type})`,value:e.name,disabled:!!(null==h?void 0:h.length)&&!h.find((t=>t===e.type))})))))},t.ColumnSelectionEditor.propTypes=m,t.default=t.ColumnSelectionEditor},8999:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.useColumnSelectorFooterMessage=void 0;const l=n(o(9497)),a=o(3620);t.useColumnSelectorFooterMessage=({filter:e,availableFields:t,selectedFields:o,filteredFields:r,noSelectedFieldsInfo:i=!1})=>{const n=(0,l.useMemo)((()=>{if(!o||!r)return[];const e=new Set(o.filter((e=>""!==e&&void 0!==e)));return r.filter((t=>e.has(t.name)))}),[o,r]);return e&&!r.length?null:l.default.createElement(a.ColumnSelectorFooterMessage,{noSelectedFieldsInfo:i,numSelected:null==n?void 0:n.length,numFiltered:r.length,numAvailable:t.length,filter:e})}},1385:function(e,t,o){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.useDataSource=void 0;const i=o(9497),n=r(o(4853)),l=o(4793);t.useDataSource=({dataSourceBindings:e,dataSourceKey:t})=>{const o=(0,i.useContext)(n.default),[r,a]=(0,i.useState)();return(0,i.useEffect)((()=>{if(!(0,l.get)(e,t))return a(null),()=>{};const r=(0,l.isFunction)(o.subscribe)&&o.subscribe(t,(e=>a(e)));return()=>{r&&r()}}),[e]),r}},6801:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.BaseEditorPropTypes=void 0;const l=n(o(23));t.BaseEditorPropTypes={name:l.string.isRequired,value:l.oneOfType([l.string,l.object,l.arrayOf(l.string)]),context:l.object,label:l.string,labelPosition:l.oneOf(["top","left"]),labelWidth:l.number,onChange:l.func,isAdvanced:l.bool,isDisabled:l.bool,dataSourceBindings:l.object,options:l.object,optionsSchema:l.object}},4008:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedConfigButton=void 0;const a=n(o(9497)),s=n(o(23)),u=l(o(232)),d=o(6649),c=l(o(6643)),f=o(3563),p=l(o(6379)),b=l(o(7020)),g=l(o(9250)),v=(0,u.default)(g.default)`
6
6
  margin-top: 0;
7
7
  padding: 0;
8
8
  // adjust bottom margin according to theme
@@ -33,5 +33,5 @@
33
33
  &:hover {
34
34
  background-color: ${f.variables.interactiveColorOverlayDrag} !important;
35
35
  }
36
- `;t.AdvancedConfigButton=({label:e="",onClick:t})=>a.default.createElement(_,{"data-test":`${e}-advanced-config-button-tooltip`,content:(0,d._)("Advanced configurations")},a.default.createElement(m,{"data-test":`${e}-advanced-config-button`,icon:a.default.createElement(c.default,{"data-test":`${e}-advanced-config-button-icon`}),appearance:"subtle",onClick:t}));const h=({"data-test":e,children:o,isAdvanced:r,label:i,hideLabel:n,labelPosition:l,labelWidth:s,tooltip:u,help:d,style:c,error:f,controlsLayout:p,onClick:b,onAdvancedConfigButtonClick:v})=>a.default.createElement(g,{"data-test":null!=e?e:"control-group",label:i,hideLabel:n,labelPosition:l,labelWidth:s,tooltip:u,help:d,error:f,style:c,onClick:b,controlsLayout:p},r?a.Children.toArray(o).filter(Boolean).map((e=>(0,a.cloneElement)(e,{style:{flex:1}}))):o,r?a.default.createElement(t.AdvancedConfigButton,{label:i,onClick:v}):null);h.propTypes={style:s.object,isAdvanced:s.bool,onClick:s.func,onAdvancedConfigButtonClick:s.func},h.defaultProps={isAdvanced:!1},t.default=h},3620:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnSelectorFooterMessage=void 0;const l=n(o(9497)),a=o(3773),s=o(6649),u=o(9497);t.ColumnSelectorFooterMessage=({numSelected:e,numFiltered:t,numAvailable:o,filter:r,noSelectedFieldsInfo:i})=>{const n=(0,u.useMemo)((()=>r?i?(0,a.sprintf)((0,s._)("%(filtered)d filtered from %(available)d fields"),{filtered:t,available:o}):(0,a.sprintf)((0,s._)("%(selected)d selected from %(filtered)d filtered"),{selected:e,filtered:t}):i?(0,a.sprintf)((0,s._)("%(shown)d of %(available)d fields"),{shown:t,available:o}):(0,a.sprintf)((0,s._)("%(selected)d selected from %(available)d"),{selected:e,available:o})),[r,i,t,o,e]);return l.createElement("span",{"data-test":"footer-message","aria-live":"polite","aria-atomic":"true"},n)}},5862:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.editorStyle=t.DROPDOWN_MENU_WIDTH=t.VERTICAL_EDITOR_SPACING=t.FLYOUT_WIDTH=t.COLUMN_FLYOUT_PADDING=t.FLYOUT_PADDING=void 0,t.FLYOUT_PADDING=21,t.COLUMN_FLYOUT_PADDING=16,t.FLYOUT_WIDTH=344,t.VERTICAL_EDITOR_SPACING=16,t.DROPDOWN_MENU_WIDTH=327,t.editorStyle={width:"100%"}},1256:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getPlaceholderMessage=t.sanitizeFieldNames=t.getFilteredFields=t.getAvailableFieldsWithTypes=void 0;const r=o(6649),i=o(2588);t.getAvailableFieldsWithTypes=(e,t)=>t.map(((t,o)=>{const{name:r}=t;return{name:r,type:(0,i.canInferTypeFromMeta)(t)?(0,i.getDataTypeForMeta)(t):(0,i.inferDataTypeFromData)(e[o])}}));t.getFilteredFields=(e,t)=>e.filter((e=>-1!==e.name.indexOf(t)));t.sanitizeFieldNames=(e,t)=>"string"==typeof e&&t.includes(e)?[e]:Array.isArray(e)?e.filter((e=>t.includes(e))):[];t.getPlaceholderMessage=({hasError:e,isLoading:t,isMissing:o,defaultMessage:i="Select a field from data source"})=>o?(0,r._)("Set up data source to select"):e?(0,r._)("Please set up valid data source to select"):t?(0,r._)("Loading data source..."):(0,r._)(i)},6643:e=>{e.exports=require("@splunk/react-icons/SlidersDoubleHorizontal")},7020:e=>{e.exports=require("@splunk/react-ui/Button")},9250:e=>{e.exports=require("@splunk/react-ui/ControlGroup")},2373:e=>{e.exports=require("@splunk/react-ui/Select")},6379:e=>{e.exports=require("@splunk/react-ui/Tooltip")},3563:e=>{e.exports=require("@splunk/themes")},3773:e=>{e.exports=require("@splunk/ui-utils/format")},6649:e=>{e.exports=require("@splunk/ui-utils/i18n")},4853:e=>{e.exports=require("@splunk/visualization-context/DataSourceContext")},1413:e=>{e.exports=require("@splunk/visualization-encoding/utils/dsl")},2588:e=>{e.exports=require("@splunk/visualization-encoding/utils/types")},9033:e=>{e.exports=require("@splunk/visualizations-shared/dataSourceUtils")},4793:e=>{e.exports=require("lodash")},23:e=>{e.exports=require("prop-types")},9497:e=>{e.exports=require("react")},232:e=>{e.exports=require("styled-components")}},t={};var o=function o(r){var i=t[r];if(void 0!==i)return i.exports;var n=t[r]={exports:{}};return e[r].call(n.exports,n,n.exports,o),n.exports}(5731);module.exports=o})();
36
+ `;t.AdvancedConfigButton=({label:e="",onClick:t})=>a.default.createElement(_,{"data-test":`${e}-advanced-config-button-tooltip`,content:(0,d._)("Advanced configurations")},a.default.createElement(m,{"data-test":`${e}-advanced-config-button`,icon:a.default.createElement(c.default,{"data-test":`${e}-advanced-config-button-icon`}),appearance:"subtle",onClick:t}));const h=({"data-test":e,children:o,isAdvanced:r=!1,label:i,hideLabel:n,labelPosition:l,labelWidth:s,tooltip:u,help:d,style:c,error:f,controlsLayout:p,onClick:b,onAdvancedConfigButtonClick:g})=>a.default.createElement(v,{"data-test":null!=e?e:"control-group",label:i,hideLabel:n,labelPosition:l,labelWidth:s,tooltip:u,help:d,error:f,style:c,onClick:b,controlsLayout:p},r?a.Children.toArray(o).filter(Boolean).map((e=>(0,a.cloneElement)(e,{style:{flex:1}}))):o,r?a.default.createElement(t.AdvancedConfigButton,{label:i,onClick:g}):null);h.propTypes={style:s.object,isAdvanced:s.bool,onClick:s.func,onAdvancedConfigButtonClick:s.func},t.default=h},3620:function(e,t,o){var r=this&&this.__createBinding||(Object.create?function(e,t,o,r){void 0===r&&(r=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,r,i)}:function(e,t,o,r){void 0===r&&(r=o),e[r]=t[o]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.prototype.hasOwnProperty.call(e,o)&&r(t,e,o);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnSelectorFooterMessage=void 0;const l=n(o(9497)),a=o(3773),s=o(6649),u=o(9497);t.ColumnSelectorFooterMessage=({numSelected:e,numFiltered:t,numAvailable:o,filter:r,noSelectedFieldsInfo:i})=>{const n=(0,u.useMemo)((()=>r?i?(0,a.sprintf)((0,s._)("%(filtered)d filtered from %(available)d fields"),{filtered:t,available:o}):(0,a.sprintf)((0,s._)("%(selected)d selected from %(filtered)d filtered"),{selected:e,filtered:t}):i?(0,a.sprintf)((0,s._)("%(shown)d of %(available)d fields"),{shown:t,available:o}):(0,a.sprintf)((0,s._)("%(selected)d selected from %(available)d"),{selected:e,available:o})),[r,i,t,o,e]);return l.createElement("span",{"data-test":"footer-message","aria-live":"polite","aria-atomic":"true"},n)}},5862:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.editorStyle=t.DROPDOWN_MENU_WIDTH=t.VERTICAL_EDITOR_SPACING=t.FLYOUT_WIDTH=t.COLUMN_FLYOUT_PADDING=t.FLYOUT_PADDING=void 0,t.FLYOUT_PADDING=21,t.COLUMN_FLYOUT_PADDING=16,t.FLYOUT_WIDTH=344,t.VERTICAL_EDITOR_SPACING=16,t.DROPDOWN_MENU_WIDTH=327,t.editorStyle={width:"100%"}},1256:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getPlaceholderMessage=t.sanitizeFieldNames=t.getFilteredFields=t.getAvailableFieldsWithTypes=void 0;const r=o(6649),i=o(2588);t.getAvailableFieldsWithTypes=(e,t)=>t.map(((t,o)=>{const{name:r}=t;return{name:r,type:(0,i.canInferTypeFromMeta)(t)?(0,i.getDataTypeForMeta)(t):(0,i.inferDataTypeFromData)(e[o])}}));t.getFilteredFields=(e,t)=>e.filter((e=>-1!==e.name.indexOf(t)));t.sanitizeFieldNames=(e,t)=>"string"==typeof e&&t.includes(e)?[e]:Array.isArray(e)?e.filter((e=>t.includes(e))):[];t.getPlaceholderMessage=({hasError:e,isLoading:t,isMissing:o,defaultMessage:i="Select a field from data source"})=>o?(0,r._)("Set up data source to select"):e?(0,r._)("Please set up valid data source to select"):t?(0,r._)("Loading data source..."):(0,r._)(i)},6643:e=>{e.exports=require("@splunk/react-icons/SlidersDoubleHorizontal")},7020:e=>{e.exports=require("@splunk/react-ui/Button")},9250:e=>{e.exports=require("@splunk/react-ui/ControlGroup")},2373:e=>{e.exports=require("@splunk/react-ui/Select")},6379:e=>{e.exports=require("@splunk/react-ui/Tooltip")},3563:e=>{e.exports=require("@splunk/themes")},3773:e=>{e.exports=require("@splunk/ui-utils/format")},6649:e=>{e.exports=require("@splunk/ui-utils/i18n")},4853:e=>{e.exports=require("@splunk/visualization-context/DataSourceContext")},1413:e=>{e.exports=require("@splunk/visualization-encoding/utils/dsl")},2588:e=>{e.exports=require("@splunk/visualization-encoding/utils/types")},9033:e=>{e.exports=require("@splunk/visualizations-shared/dataSourceUtils")},4793:e=>{e.exports=require("lodash")},23:e=>{e.exports=require("prop-types")},9497:e=>{e.exports=require("react")},232:e=>{e.exports=require("styled-components")}},t={};var o=function o(r){var i=t[r];if(void 0!==i)return i.exports;var n=t[r]={exports:{}};return e[r].call(n.exports,n,n.exports,o),n.exports}(5731);module.exports=o})();
37
37
  //# sourceMappingURL=ColumnSelectionEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSelectionEditor.js","mappings":"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","sources":["webpack://@splunk/dynamic-editors/./src/editors/ColumnSelectionEditor.tsx","webpack://@splunk/dynamic-editors/./src/editors/useColumnSelectorFooterMessage.tsx","webpack://@splunk/dynamic-editors/./src/hooks/useDataSource.tsx","webpack://@splunk/dynamic-editors/./src/interfaces/BaseEditorProps.ts","webpack://@splunk/dynamic-editors/./src/shared/AdvancedControlGroup.tsx","webpack://@splunk/dynamic-editors/./src/shared/ColumnSelectorFooterMessage.tsx","webpack://@splunk/dynamic-editors/./src/shared/dimensionConstants.ts","webpack://@splunk/dynamic-editors/./src/utils/columnSelectionUtils.ts","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-icons/SlidersDoubleHorizontal\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-ui/Button\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-ui/ControlGroup\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-ui/Select\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-ui/Tooltip\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/themes\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/ui-utils/format\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/ui-utils/i18n\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/visualization-context/DataSourceContext\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/visualization-encoding/utils/dsl\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/visualization-encoding/utils/types\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/visualizations-shared/dataSourceUtils\"","webpack://@splunk/dynamic-editors/external commonjs2 \"lodash\"","webpack://@splunk/dynamic-editors/external commonjs2 \"prop-types\"","webpack://@splunk/dynamic-editors/external commonjs2 \"react\"","webpack://@splunk/dynamic-editors/external commonjs2 \"styled-components\"","webpack://@splunk/dynamic-editors/webpack/bootstrap","webpack://@splunk/dynamic-editors/webpack/startup"],"sourcesContent":["import React, { useState, useCallback } from 'react';\nimport * as T from 'prop-types';\nimport Select from '@splunk/react-ui/Select';\nimport { getFieldsFromDSL } from '@splunk/visualization-encoding/utils/dsl';\nimport { getDataSourceStateInfo } from '@splunk/visualizations-shared/dataSourceUtils';\nimport { DataType } from '@splunk/visualization-encoding/DataPrimitive';\nimport { BaseEditorProps, BaseEditorPropTypes } from '../interfaces/BaseEditorProps';\nimport { useDataSource } from '../hooks/useDataSource';\nimport { getAvailableFieldsWithTypes, getPlaceholderMessage } from '../utils/columnSelectionUtils';\nimport ControlGroup from '../shared/AdvancedControlGroup';\nimport { editorStyle } from '../shared/dimensionConstants';\nimport { useColumnSelectorFooterMessage } from './useColumnSelectorFooterMessage';\n\ninterface ColumnSelectionEditorProps extends BaseEditorProps {\n dataSourceKey: string;\n prepareValue?: (id: Record<string, any>) => Record<string, any>;\n filterByTypes?: DataType[];\n tooltip?: string;\n}\nconst propTypes: Record<keyof ColumnSelectionEditorProps, T.Validator<any>> = {\n ...BaseEditorPropTypes,\n dataSourceKey: T.string.isRequired,\n prepareValue: T.func,\n filterByTypes: T.arrayOf(T.string),\n tooltip: T.string,\n};\nexport const ColumnSelectionEditor: React.FunctionComponent<ColumnSelectionEditorProps> = ({\n name,\n value,\n label = '',\n labelPosition = 'top',\n dataSourceKey = 'primary',\n dataSourceBindings,\n prepareValue = (id: Record<string, unknown>): Record<string, unknown> => id,\n onChange,\n isAdvanced,\n isDisabled,\n filterByTypes,\n tooltip,\n}) => {\n const dataSource = useDataSource({ dataSourceBindings, dataSourceKey });\n const { columns, fields } = dataSource?.data || { columns: [], fields: [] };\n const availableFieldsWithTypes = getAvailableFieldsWithTypes(columns, fields);\n // return `value` if `value` is undefined or null so editor shows placeholder message\n const fieldName =\n value == null\n ? value\n : getFieldsFromDSL(value, {\n [dataSourceKey]: dataSource,\n })[0] || '';\n const [selectedField, setSelectedField] = useState(fieldName);\n React.useEffect((): void => {\n setSelectedField(fieldName);\n }, [fieldName]);\n const [filter, setFilter] = useState('');\n const filteredFields = availableFieldsWithTypes.filter(\n (field): boolean => field.name.indexOf(filter) !== -1\n );\n const footerMessage = useColumnSelectorFooterMessage({\n availableFields: availableFieldsWithTypes,\n selectedFields: [selectedField],\n filteredFields,\n filter,\n });\n\n const handleValueChange = useCallback(\n (event, { value: selectedValue }): void => {\n setSelectedField(selectedValue);\n const update = prepareValue({\n options: {\n [name]: `> ${dataSourceKey} | seriesByName('${selectedValue}')`,\n },\n });\n onChange(event, update);\n },\n [dataSourceKey, name, onChange, prepareValue]\n );\n\n const handleFilterChange = useCallback((e, { keyword }): void => {\n setFilter(keyword);\n }, []);\n const { hasError, isMissing, isLoading } = getDataSourceStateInfo(dataSource);\n const disabled = isMissing || hasError || isDisabled;\n const placeholderMessage = getPlaceholderMessage({ isMissing, isLoading, hasError });\n\n return (\n <ControlGroup label={label} labelPosition={labelPosition} tooltip={tooltip} isAdvanced={isAdvanced}>\n <Select\n data-test=\"ColumnSelectionEditor\"\n value={selectedField}\n onFilterChange={handleFilterChange}\n onChange={handleValueChange}\n footerMessage={footerMessage}\n disabled={disabled}\n placeholder={placeholderMessage}\n isLoadingOptions={isLoading}\n error={hasError}\n style={editorStyle}\n filter\n >\n {filteredFields.map(field => (\n <Select.Option\n key={field.name}\n label={`${field.name} (${field.type})`}\n value={field.name}\n disabled={!!filterByTypes?.length && !filterByTypes.find(f => f === field.type)}\n />\n ))}\n </Select>\n </ControlGroup>\n );\n};\nColumnSelectionEditor.propTypes = propTypes;\n\nexport default ColumnSelectionEditor;\n","import React, { useMemo } from 'react';\nimport { ColumnSelectorFooterMessage } from '../shared/ColumnSelectorFooterMessage';\nimport { FieldTuple } from '../utils/columnSelectionUtils';\n\ntype ObjectWithName = {\n name: string;\n [key: string]: string;\n};\n\ntype Fields = FieldTuple[] | ObjectWithName[];\n\ninterface FooterMessageProps {\n noSelectedFieldsInfo?: boolean;\n filter: string;\n availableFields: Fields;\n selectedFields?: string[];\n filteredFields: Fields;\n}\n\nexport const useColumnSelectorFooterMessage = ({\n filter,\n availableFields,\n selectedFields,\n filteredFields,\n noSelectedFieldsInfo = false,\n}: FooterMessageProps) => {\n const selectedFilteredFields = useMemo(() => {\n if (!selectedFields || !filteredFields) return [];\n\n const validSelectedFields = new Set(\n selectedFields.filter(field => field !== '' && field !== undefined)\n );\n\n return filteredFields.filter(item => validSelectedFields.has(item.name));\n }, [selectedFields, filteredFields]);\n\n // make sure to display only 'No matches' text when there is no result of filtering\n if (filter && !filteredFields.length) {\n return null;\n }\n\n return (\n <ColumnSelectorFooterMessage\n noSelectedFieldsInfo={noSelectedFieldsInfo}\n numSelected={selectedFilteredFields?.length} // if no filter is applied filteredFields equal availableFields\n numFiltered={filteredFields.length}\n numAvailable={availableFields.length}\n filter={filter}\n />\n );\n};\n","import { useState, useEffect, useContext } from 'react';\nimport DataSourceContext, {\n type BindingsSnapshot,\n type DataSourceApi,\n} from '@splunk/visualization-context/DataSourceContext';\nimport { get, isFunction } from 'lodash';\n\ninterface UseDataSourceParams {\n dataSourceBindings: BindingsSnapshot;\n dataSourceKey: string;\n}\n// @TODO(pwied): use DataSource interface in return type (w/o dependency on @splunk/visualizations)\nexport const useDataSource = ({\n dataSourceBindings,\n dataSourceKey,\n}: UseDataSourceParams): BindingsSnapshot => {\n const dataSourceApi = useContext<DataSourceApi>(DataSourceContext);\n const [dataSource, setDataSource] = useState<BindingsSnapshot>();\n useEffect((): (() => void) => {\n if (!get(dataSourceBindings, dataSourceKey)) {\n setDataSource(null);\n return () => undefined;\n }\n const unsubscribe =\n isFunction(dataSourceApi.subscribe) &&\n dataSourceApi.subscribe(dataSourceKey, (snapshot): void => setDataSource(snapshot));\n return () => {\n if (unsubscribe) {\n unsubscribe();\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSourceBindings]);\n return dataSource;\n};\n","import * as T from 'prop-types';\nimport type { JSONSchema7 } from 'json-schema';\n\nexport interface BaseEditorProps {\n name: string;\n value: any;\n onChange?: (...args: any[]) => void;\n label?: string; // @TODO(pwied): this should not live in editor props\n labelPosition?: 'top' | 'left'; // ^^^\n context?: Record<string, any>;\n labelWidth?: number;\n isAdvanced?: boolean;\n isDisabled?: boolean;\n dataSourceBindings?: Record<string, any>;\n options?: { [k: string]: any };\n optionsSchema?: {\n [key: string]: JSONSchema7;\n };\n}\n\nexport const BaseEditorPropTypes: Record<keyof BaseEditorProps, T.Validator<any>> = {\n name: T.string.isRequired,\n value: T.oneOfType([T.string, T.object, T.arrayOf(T.string)]),\n context: T.object,\n label: T.string,\n labelPosition: T.oneOf(['top', 'left']),\n labelWidth: T.number,\n onChange: T.func,\n isAdvanced: T.bool,\n isDisabled: T.bool,\n dataSourceBindings: T.object,\n options: T.object,\n optionsSchema: T.object,\n};\n","import React, { Children, cloneElement, ReactElement } from 'react';\nimport * as T from 'prop-types';\nimport styled from 'styled-components';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport AdvancedConfigIcon from '@splunk/react-icons/SlidersDoubleHorizontal';\nimport { variables } from '@splunk/themes';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport Button, { ButtonClickHandler, ButtonProps } from '@splunk/react-ui/Button';\nimport SUIControlGroup, { ControlGroupPropsBase } from '@splunk/react-ui/ControlGroup';\n\ninterface AdvancedControlGroupProps extends Omit<ControlGroupPropsBase, 'splunkTheme'> {\n 'data-test'?: string;\n style?: Record<string, string | number>;\n isAdvanced?: boolean;\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n onAdvancedConfigButtonClick?: ButtonClickHandler;\n}\n\ninterface AdvancedConfigButtonProps {\n label?: string;\n onClick?: ButtonClickHandler;\n}\n\n// remove all surrounding margins. let parent add padding\nconst ControlGroupContainer = styled(SUIControlGroup)`\n margin-top: 0;\n padding: 0;\n // adjust bottom margin according to theme\n margin-bottom: ${variables.spacingMedium};\n width: 100%;\n\n // remove top margin of the first component in control group\n &:first-child {\n margin-top: 0;\n }\n\n // remove bottom margin of the last component in control group\n &:last-child {\n margin-bottom: 0;\n }\n // remove top padding on label of the first control group\n [data-test='label']:first-of-type {\n padding-top: 0;\n }\n`;\n\n// override tooltip to set desired config button style\nconst StyledToolTip = styled(Tooltip)`\n display: flex;\n > span {\n display: flex;\n width: 35px;\n }\n`;\n\nconst StyledAdvancedConfigButton = styled(Button)<ButtonProps>`\n color: ${variables.contentColorActive} !important;\n &:hover {\n background-color: ${variables.interactiveColorOverlayDrag} !important;\n }\n`;\n\nexport const AdvancedConfigButton = ({\n label = '',\n onClick,\n}: AdvancedConfigButtonProps): React.ReactElement => {\n return (\n <StyledToolTip\n data-test={`${label}-advanced-config-button-tooltip`}\n content={_('Advanced configurations')}\n >\n <StyledAdvancedConfigButton\n data-test={`${label}-advanced-config-button`}\n icon={<AdvancedConfigIcon data-test={`${label}-advanced-config-button-icon`} />}\n appearance=\"subtle\"\n onClick={onClick}\n />\n </StyledToolTip>\n );\n};\n\nconst AdvancedControlGroup = ({\n 'data-test': dataTest,\n children,\n isAdvanced,\n label,\n hideLabel,\n labelPosition,\n labelWidth,\n tooltip,\n help,\n style,\n error,\n controlsLayout,\n onClick,\n onAdvancedConfigButtonClick,\n}: AdvancedControlGroupProps): React.ReactElement => (\n <ControlGroupContainer\n data-test={dataTest ?? 'control-group'}\n label={label}\n hideLabel={hideLabel}\n labelPosition={labelPosition}\n labelWidth={labelWidth}\n tooltip={tooltip}\n help={help}\n error={error}\n style={style}\n onClick={onClick}\n controlsLayout={controlsLayout}\n >\n {isAdvanced\n ? Children.toArray(children)\n .filter(Boolean)\n .map(child =>\n cloneElement(child as ReactElement, {\n style: { flex: 1 },\n })\n )\n : children}\n {isAdvanced ? <AdvancedConfigButton label={label} onClick={onAdvancedConfigButtonClick} /> : null}\n </ControlGroupContainer>\n);\n\nAdvancedControlGroup.propTypes = {\n /**\n * Style overriding SUI ControlGroup\n */\n style: T.object,\n /**\n * Whether the current editor is enabled with advanced configurations\n */\n isAdvanced: T.bool,\n /**\n * Callback for editor click\n */\n onClick: T.func,\n /**\n * Callback for advanced config button click\n */\n onAdvancedConfigButtonClick: T.func,\n};\n\nAdvancedControlGroup.defaultProps = {\n isAdvanced: false,\n};\n\nexport default AdvancedControlGroup;\n","import * as React from 'react';\nimport { sprintf } from '@splunk/ui-utils/format';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { useMemo } from 'react';\n\ninterface FooterProps {\n filter: string;\n numSelected?: number;\n numFiltered: number;\n numAvailable: number;\n noSelectedFieldsInfo?: boolean; // it is needed for AddColumn component which has different logic than other selection editors\n}\n\nexport const ColumnSelectorFooterMessage = ({\n numSelected,\n numFiltered,\n numAvailable,\n filter,\n noSelectedFieldsInfo,\n}: FooterProps) => {\n const footerMessageText = useMemo(() => {\n if (filter) {\n if (noSelectedFieldsInfo) {\n return sprintf(_('%(filtered)d filtered from %(available)d fields'), {\n filtered: numFiltered,\n available: numAvailable,\n });\n }\n return sprintf(_('%(selected)d selected from %(filtered)d filtered'), {\n selected: numSelected,\n filtered: numFiltered,\n });\n }\n return noSelectedFieldsInfo\n ? sprintf(_('%(shown)d of %(available)d fields'), {\n shown: numFiltered,\n available: numAvailable,\n })\n : sprintf(_('%(selected)d selected from %(available)d'), {\n selected: numSelected,\n available: numAvailable,\n });\n }, [filter, noSelectedFieldsInfo, numFiltered, numAvailable, numSelected]);\n\n return (\n <span data-test=\"footer-message\" aria-live=\"polite\" aria-atomic=\"true\">\n {footerMessageText}\n </span>\n );\n};\n","export const FLYOUT_PADDING = 21;\nexport const COLUMN_FLYOUT_PADDING = 16;\nexport const FLYOUT_WIDTH = 344;\n\nexport const VERTICAL_EDITOR_SPACING = 16;\n\nexport const DROPDOWN_MENU_WIDTH = 327;\n\nexport const editorStyle = { width: '100%' };\n","import { _ } from '@splunk/ui-utils/i18n';\nimport {\n inferDataTypeFromData,\n canInferTypeFromMeta,\n getDataTypeForMeta,\n} from '@splunk/visualization-encoding/utils/types';\n\nexport interface FieldTuple {\n name: string;\n type: string;\n}\n\nexport const getAvailableFieldsWithTypes = (\n columns: unknown[][],\n fields: { name: string; type?: string }[]\n): FieldTuple[] => {\n const fieldsWithType = fields.map((field, index) => {\n const { name } = field;\n const inferredType = canInferTypeFromMeta(field)\n ? getDataTypeForMeta(field)\n : inferDataTypeFromData(columns[index]);\n return {\n name,\n type: inferredType,\n };\n });\n return fieldsWithType;\n};\n\nexport const getFilteredFields = (availableFieldsWithTypes: FieldTuple[], filter: string): FieldTuple[] => {\n return availableFieldsWithTypes.filter((field): boolean => field.name.indexOf(filter) !== -1);\n};\n\nexport const sanitizeFieldNames = (value: unknown, fieldNames: string[]): string[] => {\n if (typeof value === 'string' && fieldNames.includes(value)) {\n return [value];\n }\n if (Array.isArray(value)) {\n return value.filter(name => fieldNames.includes(name));\n }\n return [];\n};\n\nexport const getPlaceholderMessage = ({\n hasError,\n isLoading,\n isMissing,\n defaultMessage = 'Select a field from data source',\n}: {\n hasError: boolean;\n isLoading: boolean;\n isMissing: boolean;\n defaultMessage?: string;\n}): string => {\n if (isMissing) {\n return _('Set up data source to select');\n }\n if (hasError) {\n return _('Please set up valid data source to select');\n }\n if (isLoading) {\n return _('Loading data source...');\n }\n return _(defaultMessage);\n};\n","module.exports = require(\"@splunk/react-icons/SlidersDoubleHorizontal\");","module.exports = require(\"@splunk/react-ui/Button\");","module.exports = require(\"@splunk/react-ui/ControlGroup\");","module.exports = require(\"@splunk/react-ui/Select\");","module.exports = require(\"@splunk/react-ui/Tooltip\");","module.exports = require(\"@splunk/themes\");","module.exports = require(\"@splunk/ui-utils/format\");","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@splunk/visualization-context/DataSourceContext\");","module.exports = require(\"@splunk/visualization-encoding/utils/dsl\");","module.exports = require(\"@splunk/visualization-encoding/utils/types\");","module.exports = require(\"@splunk/visualizations-shared/dataSourceUtils\");","module.exports = require(\"lodash\");","module.exports = require(\"prop-types\");","module.exports = require(\"react\");","module.exports = require(\"styled-components\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(5731);\n"],"names":["propTypes","BaseEditorPropTypes","dataSourceKey","T","string","isRequired","prepareValue","func","filterByTypes","arrayOf","tooltip","ColumnSelectionEditor","name","value","label","labelPosition","dataSourceBindings","id","onChange","isAdvanced","isDisabled","dataSource","useDataSource","columns","fields","data","availableFieldsWithTypes","getAvailableFieldsWithTypes","fieldName","getFieldsFromDSL","selectedField","setSelectedField","useState","useEffect","filter","setFilter","filteredFields","field","indexOf","footerMessage","useColumnSelectorFooterMessage","availableFields","selectedFields","handleValueChange","useCallback","event","selectedValue","update","options","handleFilterChange","e","keyword","hasError","isMissing","isLoading","getDataSourceStateInfo","disabled","placeholderMessage","getPlaceholderMessage","onFilterChange","placeholder","isLoadingOptions","error","style","editorStyle","map","Option","key","type","length","find","f","noSelectedFieldsInfo","selectedFilteredFields","useMemo","validSelectedFields","Set","undefined","item","has","ColumnSelectorFooterMessage","numSelected","numFiltered","numAvailable","dataSourceApi","useContext","setDataSource","get","unsubscribe","isFunction","subscribe","snapshot","oneOfType","object","context","oneOf","labelWidth","number","bool","optionsSchema","ControlGroupContainer","variables","spacingMedium","StyledToolTip","StyledAdvancedConfigButton","contentColorActive","interactiveColorOverlayDrag","AdvancedConfigButton","onClick","content","_","icon","appearance","AdvancedControlGroup","dataTest","children","hideLabel","help","controlsLayout","onAdvancedConfigButtonClick","Children","toArray","Boolean","child","cloneElement","flex","defaultProps","footerMessageText","sprintf","filtered","available","selected","shown","FLYOUT_PADDING","COLUMN_FLYOUT_PADDING","FLYOUT_WIDTH","VERTICAL_EDITOR_SPACING","DROPDOWN_MENU_WIDTH","width","index","canInferTypeFromMeta","getDataTypeForMeta","inferDataTypeFromData","getFilteredFields","sanitizeFieldNames","fieldNames","includes","Array","isArray","defaultMessage","module","exports","require","__webpack_module_cache__","__webpack_exports__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","call"],"sourceRoot":""}
1
+ {"version":3,"file":"ColumnSelectionEditor.js","mappings":"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","sources":["webpack://@splunk/dynamic-editors/./src/editors/ColumnSelectionEditor.tsx","webpack://@splunk/dynamic-editors/./src/editors/useColumnSelectorFooterMessage.tsx","webpack://@splunk/dynamic-editors/./src/hooks/useDataSource.tsx","webpack://@splunk/dynamic-editors/./src/interfaces/BaseEditorProps.ts","webpack://@splunk/dynamic-editors/./src/shared/AdvancedControlGroup.tsx","webpack://@splunk/dynamic-editors/./src/shared/ColumnSelectorFooterMessage.tsx","webpack://@splunk/dynamic-editors/./src/shared/dimensionConstants.ts","webpack://@splunk/dynamic-editors/./src/utils/columnSelectionUtils.ts","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-icons/SlidersDoubleHorizontal\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-ui/Button\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-ui/ControlGroup\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-ui/Select\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/react-ui/Tooltip\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/themes\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/ui-utils/format\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/ui-utils/i18n\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/visualization-context/DataSourceContext\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/visualization-encoding/utils/dsl\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/visualization-encoding/utils/types\"","webpack://@splunk/dynamic-editors/external commonjs2 \"@splunk/visualizations-shared/dataSourceUtils\"","webpack://@splunk/dynamic-editors/external commonjs2 \"lodash\"","webpack://@splunk/dynamic-editors/external commonjs2 \"prop-types\"","webpack://@splunk/dynamic-editors/external commonjs2 \"react\"","webpack://@splunk/dynamic-editors/external commonjs2 \"styled-components\"","webpack://@splunk/dynamic-editors/webpack/bootstrap","webpack://@splunk/dynamic-editors/webpack/startup"],"sourcesContent":["import React, { useState, useCallback } from 'react';\nimport * as T from 'prop-types';\nimport Select from '@splunk/react-ui/Select';\nimport { getFieldsFromDSL } from '@splunk/visualization-encoding/utils/dsl';\nimport { getDataSourceStateInfo } from '@splunk/visualizations-shared/dataSourceUtils';\nimport { DataType } from '@splunk/visualization-encoding/DataPrimitive';\nimport { BaseEditorProps, BaseEditorPropTypes } from '../interfaces/BaseEditorProps';\nimport { useDataSource } from '../hooks/useDataSource';\nimport { getAvailableFieldsWithTypes, getPlaceholderMessage } from '../utils/columnSelectionUtils';\nimport ControlGroup from '../shared/AdvancedControlGroup';\nimport { editorStyle } from '../shared/dimensionConstants';\nimport { useColumnSelectorFooterMessage } from './useColumnSelectorFooterMessage';\n\ninterface ColumnSelectionEditorProps extends BaseEditorProps {\n dataSourceKey: string;\n prepareValue?: (id: Record<string, any>) => Record<string, any>;\n filterByTypes?: DataType[];\n tooltip?: string;\n}\nconst propTypes: Record<keyof ColumnSelectionEditorProps, T.Validator<any>> = {\n ...BaseEditorPropTypes,\n dataSourceKey: T.string.isRequired,\n prepareValue: T.func,\n filterByTypes: T.arrayOf(T.string),\n tooltip: T.string,\n};\nexport const ColumnSelectionEditor: React.FunctionComponent<ColumnSelectionEditorProps> = ({\n name,\n value,\n label = '',\n labelPosition = 'top',\n dataSourceKey = 'primary',\n dataSourceBindings,\n prepareValue = (id: Record<string, unknown>): Record<string, unknown> => id,\n onChange,\n isAdvanced,\n isDisabled,\n filterByTypes,\n tooltip,\n}) => {\n const dataSource = useDataSource({ dataSourceBindings, dataSourceKey });\n const { columns, fields } = dataSource?.data || { columns: [], fields: [] };\n const availableFieldsWithTypes = getAvailableFieldsWithTypes(columns, fields);\n // return `value` if `value` is undefined or null so editor shows placeholder message\n const fieldName =\n value == null\n ? value\n : getFieldsFromDSL(value, {\n [dataSourceKey]: dataSource,\n })[0] || '';\n const [selectedField, setSelectedField] = useState(fieldName);\n React.useEffect((): void => {\n setSelectedField(fieldName);\n }, [fieldName]);\n const [filter, setFilter] = useState('');\n const filteredFields = availableFieldsWithTypes.filter(\n (field): boolean => field.name.indexOf(filter) !== -1\n );\n const footerMessage = useColumnSelectorFooterMessage({\n availableFields: availableFieldsWithTypes,\n selectedFields: [selectedField],\n filteredFields,\n filter,\n });\n\n const handleValueChange = useCallback(\n (event, { value: selectedValue }): void => {\n setSelectedField(selectedValue);\n const update = prepareValue({\n options: {\n [name]: `> ${dataSourceKey} | seriesByName('${selectedValue}')`,\n },\n });\n onChange(event, update);\n },\n [dataSourceKey, name, onChange, prepareValue]\n );\n\n const handleFilterChange = useCallback((e, { keyword }): void => {\n setFilter(keyword);\n }, []);\n const { hasError, isMissing, isLoading } = getDataSourceStateInfo(dataSource);\n const disabled = isMissing || hasError || isDisabled;\n const placeholderMessage = getPlaceholderMessage({ isMissing, isLoading, hasError });\n\n return (\n <ControlGroup label={label} labelPosition={labelPosition} tooltip={tooltip} isAdvanced={isAdvanced}>\n <Select\n data-test=\"ColumnSelectionEditor\"\n value={selectedField}\n onFilterChange={handleFilterChange}\n onChange={handleValueChange}\n footerMessage={footerMessage}\n disabled={disabled}\n placeholder={placeholderMessage}\n isLoadingOptions={isLoading}\n error={hasError}\n style={editorStyle}\n filter\n >\n {filteredFields.map(field => (\n <Select.Option\n key={field.name}\n label={`${field.name} (${field.type})`}\n value={field.name}\n disabled={!!filterByTypes?.length && !filterByTypes.find(f => f === field.type)}\n />\n ))}\n </Select>\n </ControlGroup>\n );\n};\nColumnSelectionEditor.propTypes = propTypes;\n\nexport default ColumnSelectionEditor;\n","import React, { useMemo } from 'react';\nimport { ColumnSelectorFooterMessage } from '../shared/ColumnSelectorFooterMessage';\nimport { FieldTuple } from '../utils/columnSelectionUtils';\n\ntype ObjectWithName = {\n name: string;\n [key: string]: string;\n};\n\ntype Fields = FieldTuple[] | ObjectWithName[];\n\ninterface FooterMessageProps {\n noSelectedFieldsInfo?: boolean;\n filter: string;\n availableFields: Fields;\n selectedFields?: string[];\n filteredFields: Fields;\n}\n\nexport const useColumnSelectorFooterMessage = ({\n filter,\n availableFields,\n selectedFields,\n filteredFields,\n noSelectedFieldsInfo = false,\n}: FooterMessageProps) => {\n const selectedFilteredFields = useMemo(() => {\n if (!selectedFields || !filteredFields) return [];\n\n const validSelectedFields = new Set(\n selectedFields.filter(field => field !== '' && field !== undefined)\n );\n\n return filteredFields.filter(item => validSelectedFields.has(item.name));\n }, [selectedFields, filteredFields]);\n\n // make sure to display only 'No matches' text when there is no result of filtering\n if (filter && !filteredFields.length) {\n return null;\n }\n\n return (\n <ColumnSelectorFooterMessage\n noSelectedFieldsInfo={noSelectedFieldsInfo}\n numSelected={selectedFilteredFields?.length} // if no filter is applied filteredFields equal availableFields\n numFiltered={filteredFields.length}\n numAvailable={availableFields.length}\n filter={filter}\n />\n );\n};\n","import { useState, useEffect, useContext } from 'react';\nimport DataSourceContext, {\n type BindingsSnapshot,\n type DataSourceApi,\n} from '@splunk/visualization-context/DataSourceContext';\nimport { get, isFunction } from 'lodash';\n\ninterface UseDataSourceParams {\n dataSourceBindings: BindingsSnapshot;\n dataSourceKey: string;\n}\n// @TODO(pwied): use DataSource interface in return type (w/o dependency on @splunk/visualizations)\nexport const useDataSource = ({\n dataSourceBindings,\n dataSourceKey,\n}: UseDataSourceParams): BindingsSnapshot => {\n const dataSourceApi = useContext<DataSourceApi>(DataSourceContext);\n const [dataSource, setDataSource] = useState<BindingsSnapshot>();\n useEffect((): (() => void) => {\n if (!get(dataSourceBindings, dataSourceKey)) {\n setDataSource(null);\n return () => undefined;\n }\n const unsubscribe =\n isFunction(dataSourceApi.subscribe) &&\n dataSourceApi.subscribe(dataSourceKey, (snapshot): void => setDataSource(snapshot));\n return () => {\n if (unsubscribe) {\n unsubscribe();\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSourceBindings]);\n return dataSource;\n};\n","import * as T from 'prop-types';\nimport type { JSONSchema7 } from 'json-schema';\n\nexport interface BaseEditorProps {\n name: string;\n value: any;\n onChange?: (...args: any[]) => void;\n label?: string; // @TODO(pwied): this should not live in editor props\n labelPosition?: 'top' | 'left'; // ^^^\n context?: Record<string, any>;\n labelWidth?: number;\n isAdvanced?: boolean;\n isDisabled?: boolean;\n dataSourceBindings?: Record<string, any>;\n options?: { [k: string]: any };\n optionsSchema?: {\n [key: string]: JSONSchema7;\n };\n}\n\nexport const BaseEditorPropTypes: Record<keyof BaseEditorProps, T.Validator<any>> = {\n name: T.string.isRequired,\n value: T.oneOfType([T.string, T.object, T.arrayOf(T.string)]),\n context: T.object,\n label: T.string,\n labelPosition: T.oneOf(['top', 'left']),\n labelWidth: T.number,\n onChange: T.func,\n isAdvanced: T.bool,\n isDisabled: T.bool,\n dataSourceBindings: T.object,\n options: T.object,\n optionsSchema: T.object,\n};\n","import React, { Children, cloneElement, ReactElement } from 'react';\nimport * as T from 'prop-types';\nimport styled from 'styled-components';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport AdvancedConfigIcon from '@splunk/react-icons/SlidersDoubleHorizontal';\nimport { variables } from '@splunk/themes';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport Button, { ButtonClickHandler, ButtonProps } from '@splunk/react-ui/Button';\nimport SUIControlGroup, { ControlGroupPropsBase } from '@splunk/react-ui/ControlGroup';\n\ninterface AdvancedControlGroupProps extends Omit<ControlGroupPropsBase, 'splunkTheme'> {\n 'data-test'?: string;\n style?: Record<string, string | number>;\n isAdvanced?: boolean;\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n onAdvancedConfigButtonClick?: ButtonClickHandler;\n}\n\ninterface AdvancedConfigButtonProps {\n label?: string;\n onClick?: ButtonClickHandler;\n}\n\n// remove all surrounding margins. let parent add padding\nconst ControlGroupContainer = styled(SUIControlGroup)`\n margin-top: 0;\n padding: 0;\n // adjust bottom margin according to theme\n margin-bottom: ${variables.spacingMedium};\n width: 100%;\n\n // remove top margin of the first component in control group\n &:first-child {\n margin-top: 0;\n }\n\n // remove bottom margin of the last component in control group\n &:last-child {\n margin-bottom: 0;\n }\n // remove top padding on label of the first control group\n [data-test='label']:first-of-type {\n padding-top: 0;\n }\n`;\n\n// override tooltip to set desired config button style\nconst StyledToolTip = styled(Tooltip)`\n display: flex;\n > span {\n display: flex;\n width: 35px;\n }\n`;\n\nconst StyledAdvancedConfigButton = styled(Button)<ButtonProps>`\n color: ${variables.contentColorActive} !important;\n &:hover {\n background-color: ${variables.interactiveColorOverlayDrag} !important;\n }\n`;\n\nexport const AdvancedConfigButton = ({\n label = '',\n onClick,\n}: AdvancedConfigButtonProps): React.ReactElement => {\n return (\n <StyledToolTip\n data-test={`${label}-advanced-config-button-tooltip`}\n content={_('Advanced configurations')}\n >\n <StyledAdvancedConfigButton\n data-test={`${label}-advanced-config-button`}\n icon={<AdvancedConfigIcon data-test={`${label}-advanced-config-button-icon`} />}\n appearance=\"subtle\"\n onClick={onClick}\n />\n </StyledToolTip>\n );\n};\n\nconst AdvancedControlGroup = ({\n 'data-test': dataTest,\n children,\n isAdvanced = false,\n label,\n hideLabel,\n labelPosition,\n labelWidth,\n tooltip,\n help,\n style,\n error,\n controlsLayout,\n onClick,\n onAdvancedConfigButtonClick,\n}: AdvancedControlGroupProps): React.ReactElement => (\n <ControlGroupContainer\n data-test={dataTest ?? 'control-group'}\n label={label}\n hideLabel={hideLabel}\n labelPosition={labelPosition}\n labelWidth={labelWidth}\n tooltip={tooltip}\n help={help}\n error={error}\n style={style}\n onClick={onClick}\n controlsLayout={controlsLayout}\n >\n {isAdvanced\n ? Children.toArray(children)\n .filter(Boolean)\n .map(child =>\n cloneElement(child as ReactElement, {\n style: { flex: 1 },\n })\n )\n : children}\n {isAdvanced ? <AdvancedConfigButton label={label} onClick={onAdvancedConfigButtonClick} /> : null}\n </ControlGroupContainer>\n);\n\nAdvancedControlGroup.propTypes = {\n /**\n * Style overriding SUI ControlGroup\n */\n style: T.object,\n /**\n * Whether the current editor is enabled with advanced configurations\n */\n isAdvanced: T.bool,\n /**\n * Callback for editor click\n */\n onClick: T.func,\n /**\n * Callback for advanced config button click\n */\n onAdvancedConfigButtonClick: T.func,\n};\n\nexport default AdvancedControlGroup;\n","import * as React from 'react';\nimport { sprintf } from '@splunk/ui-utils/format';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { useMemo } from 'react';\n\ninterface FooterProps {\n filter: string;\n numSelected?: number;\n numFiltered: number;\n numAvailable: number;\n noSelectedFieldsInfo?: boolean; // it is needed for AddColumn component which has different logic than other selection editors\n}\n\nexport const ColumnSelectorFooterMessage = ({\n numSelected,\n numFiltered,\n numAvailable,\n filter,\n noSelectedFieldsInfo,\n}: FooterProps) => {\n const footerMessageText = useMemo(() => {\n if (filter) {\n if (noSelectedFieldsInfo) {\n return sprintf(_('%(filtered)d filtered from %(available)d fields'), {\n filtered: numFiltered,\n available: numAvailable,\n });\n }\n return sprintf(_('%(selected)d selected from %(filtered)d filtered'), {\n selected: numSelected,\n filtered: numFiltered,\n });\n }\n return noSelectedFieldsInfo\n ? sprintf(_('%(shown)d of %(available)d fields'), {\n shown: numFiltered,\n available: numAvailable,\n })\n : sprintf(_('%(selected)d selected from %(available)d'), {\n selected: numSelected,\n available: numAvailable,\n });\n }, [filter, noSelectedFieldsInfo, numFiltered, numAvailable, numSelected]);\n\n return (\n <span data-test=\"footer-message\" aria-live=\"polite\" aria-atomic=\"true\">\n {footerMessageText}\n </span>\n );\n};\n","export const FLYOUT_PADDING = 21;\nexport const COLUMN_FLYOUT_PADDING = 16;\nexport const FLYOUT_WIDTH = 344;\n\nexport const VERTICAL_EDITOR_SPACING = 16;\n\nexport const DROPDOWN_MENU_WIDTH = 327;\n\nexport const editorStyle = { width: '100%' };\n","import { _ } from '@splunk/ui-utils/i18n';\nimport {\n inferDataTypeFromData,\n canInferTypeFromMeta,\n getDataTypeForMeta,\n} from '@splunk/visualization-encoding/utils/types';\n\nexport interface FieldTuple {\n name: string;\n type: string;\n}\n\nexport const getAvailableFieldsWithTypes = (\n columns: unknown[][],\n fields: { name: string; type?: string }[]\n): FieldTuple[] => {\n const fieldsWithType = fields.map((field, index) => {\n const { name } = field;\n const inferredType = canInferTypeFromMeta(field)\n ? getDataTypeForMeta(field)\n : inferDataTypeFromData(columns[index]);\n return {\n name,\n type: inferredType,\n };\n });\n return fieldsWithType;\n};\n\nexport const getFilteredFields = (availableFieldsWithTypes: FieldTuple[], filter: string): FieldTuple[] => {\n return availableFieldsWithTypes.filter((field): boolean => field.name.indexOf(filter) !== -1);\n};\n\nexport const sanitizeFieldNames = (value: unknown, fieldNames: string[]): string[] => {\n if (typeof value === 'string' && fieldNames.includes(value)) {\n return [value];\n }\n if (Array.isArray(value)) {\n return value.filter(name => fieldNames.includes(name));\n }\n return [];\n};\n\nexport const getPlaceholderMessage = ({\n hasError,\n isLoading,\n isMissing,\n defaultMessage = 'Select a field from data source',\n}: {\n hasError: boolean;\n isLoading: boolean;\n isMissing: boolean;\n defaultMessage?: string;\n}): string => {\n if (isMissing) {\n return _('Set up data source to select');\n }\n if (hasError) {\n return _('Please set up valid data source to select');\n }\n if (isLoading) {\n return _('Loading data source...');\n }\n return _(defaultMessage);\n};\n","module.exports = require(\"@splunk/react-icons/SlidersDoubleHorizontal\");","module.exports = require(\"@splunk/react-ui/Button\");","module.exports = require(\"@splunk/react-ui/ControlGroup\");","module.exports = require(\"@splunk/react-ui/Select\");","module.exports = require(\"@splunk/react-ui/Tooltip\");","module.exports = require(\"@splunk/themes\");","module.exports = require(\"@splunk/ui-utils/format\");","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@splunk/visualization-context/DataSourceContext\");","module.exports = require(\"@splunk/visualization-encoding/utils/dsl\");","module.exports = require(\"@splunk/visualization-encoding/utils/types\");","module.exports = require(\"@splunk/visualizations-shared/dataSourceUtils\");","module.exports = require(\"lodash\");","module.exports = require(\"prop-types\");","module.exports = require(\"react\");","module.exports = require(\"styled-components\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(5731);\n"],"names":["propTypes","BaseEditorPropTypes","dataSourceKey","T","string","isRequired","prepareValue","func","filterByTypes","arrayOf","tooltip","ColumnSelectionEditor","name","value","label","labelPosition","dataSourceBindings","id","onChange","isAdvanced","isDisabled","dataSource","useDataSource","columns","fields","data","availableFieldsWithTypes","getAvailableFieldsWithTypes","fieldName","getFieldsFromDSL","selectedField","setSelectedField","useState","useEffect","filter","setFilter","filteredFields","field","indexOf","footerMessage","useColumnSelectorFooterMessage","availableFields","selectedFields","handleValueChange","useCallback","event","selectedValue","update","options","handleFilterChange","e","keyword","hasError","isMissing","isLoading","getDataSourceStateInfo","disabled","placeholderMessage","getPlaceholderMessage","onFilterChange","placeholder","isLoadingOptions","error","style","editorStyle","map","Option","key","type","length","find","f","noSelectedFieldsInfo","selectedFilteredFields","useMemo","validSelectedFields","Set","undefined","item","has","ColumnSelectorFooterMessage","numSelected","numFiltered","numAvailable","dataSourceApi","useContext","setDataSource","get","unsubscribe","isFunction","subscribe","snapshot","oneOfType","object","context","oneOf","labelWidth","number","bool","optionsSchema","ControlGroupContainer","variables","spacingMedium","StyledToolTip","StyledAdvancedConfigButton","contentColorActive","interactiveColorOverlayDrag","AdvancedConfigButton","onClick","content","_","icon","appearance","AdvancedControlGroup","dataTest","children","hideLabel","help","controlsLayout","onAdvancedConfigButtonClick","Children","toArray","Boolean","child","cloneElement","flex","footerMessageText","sprintf","filtered","available","selected","shown","FLYOUT_PADDING","COLUMN_FLYOUT_PADDING","FLYOUT_WIDTH","VERTICAL_EDITOR_SPACING","DROPDOWN_MENU_WIDTH","width","index","canInferTypeFromMeta","getDataTypeForMeta","inferDataTypeFromData","getFilteredFields","sanitizeFieldNames","fieldNames","includes","Array","isArray","defaultMessage","module","exports","require","__webpack_module_cache__","__webpack_exports__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","call"],"sourceRoot":""}
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2018 Splunk Inc.
3
3
  * SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
4
4
  * in part without a valid written license from Splunk Inc. is PROHIBITED.
5
- */(()=>{"use strict";var e={3263:(e,t,r)=>{r.r(t),r.d(t,{default:()=>_});var a=r(2649),n=r.n(a),o=r(9497),l=r.n(o),i=r(23),s=r.n(i),u=r(5411),c=r.n(u),d=r(6379),f=r.n(d),p=r(2166),h=r(18),g=r(5862),m=r(4008),b=r.n(m);const v=({onChange:e,name:t,itemSchema:r,values:a,value:i,labelPosition:s,labelWidth:u,label:d,isDisabled:m})=>{const v=(0,h.getOptions)(r,a),_=(0,p.hasTokens)(i)||m,y=(0,o.useCallback)(((r,{value:a})=>e(r,t,a)),[e,t]),C=d&&""!==d?void 0:{marginTop:"-8px"};return l().createElement(b(),{label:d,labelPosition:s,labelWidth:u,style:C},l().createElement(c(),{"data-test":t,onChange:y,value:i,style:g.editorStyle,disabled:_},v.map((e=>{const t=e.label||e.value,r={};return e.icon?r.startAdornment=l().createElement(f(),{content:t},l().createElement(e.icon,{hideDefaultTooltip:!0})):r.label=t,l().createElement(c().Option,n()({key:e.value,value:e.value,disabled:_},r))}))))};v.propTypes={onChange:s().func.isRequired,name:s().string.isRequired,itemSchema:s().object,values:s().arrayOf(s().shape({label:s().string,value:s().oneOfType([s().string,s().bool]).isRequired})),value:s().oneOfType([s().string,s().bool]),label:s().string.isRequired,labelPosition:s().oneOf(["left","top"]),labelWidth:s().number,isDisabled:s().bool},v.defaultProps={labelPosition:"top",isDisabled:!1};const _=v},18:(e,t,r)=>{r.r(t),r.d(t,{convertEmptyDataColorsForChoropleth:()=>T,getFilteredRowsByShowEditor:()=>E,getFormatterConfig:()=>x,getOptions:()=>v,getStaticItemSchema:()=>P,getToggleOffValueForDataColors:()=>D,handleOptionsChange:()=>_,isDynamicOptionSchema:()=>C,isMultipleRulesSchema:()=>y,isNestedOption:()=>O,isSupportedDataSelector:()=>w,isSupportedFormatter:()=>j,setOption:()=>S});var a=r(6195),n=r.n(a),o=r(4868),l=r.n(o);const i=require("lodash/forIn");var s=r.n(i);const u=require("lodash/clone");var c=r.n(u);const d=require("lodash/isPlainObject");var f=r.n(d);const p=require("lodash/set");var h=r.n(p);const g=require("@splunk/visualizations-shared/schemaUtils");function m(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function b(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?m(Object(r),!0).forEach((function(t){n()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):m(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const v=(e,t)=>{if(Array.isArray(t))return t;if(e&&Array.isArray(e.enum))return e.enum.map((e=>({value:e})));throw Error(`No valid values provided to editor: ${JSON.stringify(e)}`)};function _(e,t,r={debounce:!1}){const{visualization:a}=this.props;null==t?this.props.onVisualizationChange(b(b({},a),{},{options:l()(a.options,[e])}),r):this.props.onVisualizationChange(b(b({},a),{},{options:b(b({},a.options),{},{[e]:t})}),r)}const y=e=>!!e.anyOf&&e.anyOf.length>0,C=e=>"string"===e.type&&e.pattern===g.DYNAMIC_OPTIONS_DSL_PATTERN,O=e=>null!==/^\w+\[\d+\]\.(.+)$/.exec(e),P=e=>{if(!y(e))return e;const t=e.anyOf.find((e=>!C(e)));return b(b({},l()(e,"anyOf")),t)},x=({contextConfig:e,formatters:t,formatterFromDSL:r,selectedDataSelector:a})=>{var n;if(!e){var o;const e=null==t?void 0:t.find((e=>e.value===r));return(null==e||null===(o=e.defaults)||void 0===o?void 0:o[a])||[]}if(!r)return e;if(((e,t)=>!(!e||!t)&&("gradient"===t?"object"==typeof e&&!Array.isArray(e)&&"colors"in e:"rangeValue"!==t&&"matchValue"!==t||Array.isArray(e)))(e,r))return e;const l=null==t?void 0:t.find((e=>e.value===r));return(null==l||null===(n=l.defaults)||void 0===n?void 0:n[a])||[]},w=({selectedDataSelector:e,dataSelectors:t})=>!(!e||null==t||!t.length)&&t.some((t=>t.value===e)),j=({selectedFormatterType:e,formattersFromEditor:t,supportedFormatters:r})=>!!(e&&null!=r&&r[e]&&null!=t&&t.length)&&t.some((t=>t.value===e)),E=({row:e,options:t,encoding:r,featureFlags:a})=>{if(!e||!Array.isArray(e))return[];return e.filter((e=>void 0===e.showEditor||"function"==typeof e.showEditor&&e.showEditor({options:t,encoding:r,featureFlags:a})))},M=e=>{const t=c()(e);return s()(t,((e,r)=>{(null!=e&&Array.isArray(e)||f()(e))&&(t[r]=M(t[r])),Array.isArray(e)&&(t[r]=e.map((e=>null===e?void 0:e))),null==e&&delete t[r]})),t},D=({name:e,options:t,dataSelectors:r=[]})=>{if(null==e||!e.includes("dataColors"))return"";const a=r.includes("areaValues");return(()=>{if("dataColors"===e)return"choropleth"===(null==t?void 0:t.type)||"choropleth"===(null==t?void 0:t.layerType);const r=/^layers\[(\d+)\]\.dataColors$/.exec(e);if(r){var a;const e=parseInt(r[1],10),n=null==t||null===(a=t.layers)||void 0===a?void 0:a[e];return"choropleth"===(null==n?void 0:n.type)||"choropleth"===(null==n?void 0:n.layerType)}return!1})()&&a?"> areaValues | gradient()":""},T=({option:e,value:t,options:r,dataSelectors:a=[]})=>null!=e&&e.includes("dataColors")?""!==t?t:D({name:e,options:r,dataSelectors:a}):t,S=(e,t,r,a,n,o)=>{var i,s,u,d;const p=b({},r);let g=e,m=t;if(""===m&&null!==(i=g)&&void 0!==i&&i.includes("dataColors")&&(m=T({option:g,value:m,options:r.options,dataSelectors:o})),null==m&&a[g])return p.options=l()(r.options,g),p;const v=null!==(s=null==n?void 0:n[g])&&void 0!==s?s:null===(u=a[g])||void 0===u?void 0:u.default;return void 0!==v&&m===v?(p.options=l()(r.options,g),p):(p.options=c()(r.options),null!==(d=p.options)&&void 0!==d||(p.options={}),null==t&&f()(e)&&f()(e.options)&&([g]=Object.keys(e.options),[m]=Object.values(e.options)),a[g]&&"array"!==a[g].type?(p.options[g]=m,p):(null===m&&(m=void 0),h()(p.options,g,m),p.options=M(p.options),p))}},2166:(e,t,r)=>{r.d(t,{hasTokens:()=>n});const a=new RegExp(/\$/.source+/(\w+:)?/.source+/([^$|:]+?)(\|[|\w]+)?/.source+/\$/.source),n=e=>"string"==typeof e&&a.test(e)},2468:function(e,t,r){var a=this&&this.__createBinding||(Object.create?function(e,t,r,a){void 0===a&&(a=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,a,n)}:function(e,t,r,a){void 0===a&&(a=r),e[a]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&a(t,e,r);return n(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(9497)),s=o(r(23)),u=r(6649),c=l(r(9250)),d=l(r(7020)),f=l(r(1551)),p=l(r(1151)),{useRef:h,useState:g,useCallback:m}=i,b={label:s.string,labelPosition:s.oneOf(["top","left"]),labelWidth:s.number,onResetToDefault:s.func},v=({label:e,labelPosition:t="left",labelWidth:r,onResetToDefault:a})=>{const[n,o]=g(!1),l=h(null),s=m((()=>o(!0)),[]),b=m((()=>o(!1)),[]);return i.createElement(c.default,{label:(0,u._)(e),labelPosition:t,labelWidth:r},i.createElement(d.default,{"data-test":"customized-in-source-button",onClick:s,appearance:"default",ref:l,label:(0,u._)("Customized in source")}),i.createElement(f.default,{"data-test":"customized-in-source-popover",open:n,anchor:l.current,onRequestClose:b,defaultPlacement:"horizontal"},i.createElement(p.default,{onResetToDefault:a})))};v.propTypes=b,t.default=v},152:function(e,t,r){var a=this&&this.__createBinding||(Object.create?function(e,t,r,a){void 0===a&&(a=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,a,n)}:function(e,t,r,a){void 0===a&&(a=r),e[a]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&a(t,e,r);return n(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DynamicColorEditor=t.prepareUpdate=void 0;const i=o(r(9497)),s=o(r(23)),u=r(7124),c=l(r(9250)),d=l(r(7020)),f=l(r(1551)),p=l(r(232)),h=l(r(4566)),g=r(6649),m=r(5089),b=r(4793),v=r(1413),_=r(2369),y=l(r(2468)),C=r(5862),O=r(6801),P=r(18),{useRef:x,useState:w,useEffect:j}=i,E=p.default.div`
5
+ */(()=>{"use strict";var e={3263:(e,t,r)=>{r.r(t),r.d(t,{default:()=>_});var a=r(2649),n=r.n(a),o=r(9497),l=r.n(o),i=r(23),s=r.n(i),u=r(5411),c=r.n(u),d=r(6379),f=r.n(d),p=r(2166),h=r(1027),g=r(5862),m=r(4008),b=r.n(m);const v=({onChange:e,name:t,itemSchema:r,values:a,value:i,labelPosition:s="top",labelWidth:u,label:d,isDisabled:m=!1})=>{const v=(0,h.getOptions)(r,a),_=(0,p.hasTokens)(i)||m,y=(0,o.useCallback)(((r,{value:a})=>e(r,t,a)),[e,t]),C=d&&""!==d?void 0:{marginTop:"-8px"};return l().createElement(b(),{label:d,labelPosition:s,labelWidth:u,style:C},l().createElement(c(),{"data-test":t,onChange:y,value:i,style:g.editorStyle,disabled:_},v.map((e=>{const t=e.label||e.value,r={};return e.icon?r.startAdornment=l().createElement(f(),{content:t},l().createElement(e.icon,{hideDefaultTooltip:!0})):r.label=t,l().createElement(c().Option,n()({key:e.value,value:e.value,disabled:_},r))}))))};v.propTypes={onChange:s().func.isRequired,name:s().string.isRequired,itemSchema:s().object,values:s().arrayOf(s().shape({label:s().string,value:s().oneOfType([s().string,s().bool]).isRequired})),value:s().oneOfType([s().string,s().bool]),label:s().string.isRequired,labelPosition:s().oneOf(["left","top"]),labelWidth:s().number,isDisabled:s().bool};const _=v},1027:(e,t,r)=>{r.r(t),r.d(t,{convertEmptyDataColorsForChoropleth:()=>C,getFilteredRowsByShowEditor:()=>v,getFormatterConfig:()=>g,getOptions:()=>u,getStaticItemSchema:()=>h,getToggleOffValueForDataColors:()=>y,handleOptionsChange:()=>c,isDynamicOptionSchema:()=>f,isMultipleRulesSchema:()=>d,isNestedOption:()=>p,isSupportedDataSelector:()=>m,isSupportedFormatter:()=>b,setOption:()=>O});var a=r(6195),n=r.n(a),o=r(4793);const l=require("@splunk/visualizations-shared/schemaUtils");function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){n()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const u=(e,t)=>{if(Array.isArray(t))return t;if(e&&Array.isArray(e.enum))return e.enum.map((e=>({value:e})));throw Error(`No valid values provided to editor: ${JSON.stringify(e)}`)};function c(e,t,r={debounce:!1}){const{visualization:a}=this.props;null==t?this.props.onVisualizationChange(s(s({},a),{},{options:(0,o.omit)(a.options,[e])}),r):this.props.onVisualizationChange(s(s({},a),{},{options:s(s({},a.options),{},{[e]:t})}),r)}const d=e=>!!e.anyOf&&e.anyOf.length>0,f=e=>"string"===e.type&&e.pattern===l.DYNAMIC_OPTIONS_DSL_PATTERN,p=e=>null!==/^\w+\[\d+\]\.(.+)$/.exec(e),h=e=>{if(!d(e))return e;const t=e.anyOf.find((e=>!f(e)));return s(s({},(0,o.omit)(e,"anyOf")),t)},g=({contextConfig:e,formatters:t,formatterFromDSL:r,selectedDataSelector:a})=>{var n;if(!e){var o;const e=null==t?void 0:t.find((e=>e.value===r));return(null==e||null===(o=e.defaults)||void 0===o?void 0:o[a])||[]}if(!r)return e;if(((e,t)=>!(!e||!t)&&("gradient"===t?"object"==typeof e&&!Array.isArray(e)&&"colors"in e:"rangeValue"!==t&&"matchValue"!==t||Array.isArray(e)))(e,r))return e;const l=null==t?void 0:t.find((e=>e.value===r));return(null==l||null===(n=l.defaults)||void 0===n?void 0:n[a])||[]},m=({selectedDataSelector:e,dataSelectors:t})=>!(!e||null==t||!t.length)&&t.some((t=>t.value===e)),b=({selectedFormatterType:e,formattersFromEditor:t,supportedFormatters:r})=>!!(e&&null!=r&&r[e]&&null!=t&&t.length)&&t.some((t=>t.value===e)),v=({row:e,options:t,encoding:r,featureFlags:a})=>{if(!e||!Array.isArray(e))return[];return e.filter((e=>void 0===e.showEditor||"function"==typeof e.showEditor&&e.showEditor({options:t,encoding:r,featureFlags:a})))},_=e=>{const t=(0,o.cloneDeep)(e);return(0,o.forIn)(t,((e,r)=>{(null!=e&&Array.isArray(e)||(0,o.isPlainObject)(e))&&(t[r]=_(t[r])),Array.isArray(e)&&(t[r]=e.map((e=>null===e?void 0:e))),null==e&&delete t[r]})),t},y=({name:e,options:t,dataSelectors:r=[]})=>{if(null==e||!e.includes("dataColors"))return"";const a=r.includes("areaValues");return(()=>{if("dataColors"===e)return"choropleth"===(null==t?void 0:t.type)||"choropleth"===(null==t?void 0:t.layerType);const r=/^layers\[(\d+)\]\.dataColors$/.exec(e);if(r){var a;const e=parseInt(r[1],10),n=null==t||null===(a=t.layers)||void 0===a?void 0:a[e];return"choropleth"===(null==n?void 0:n.type)||"choropleth"===(null==n?void 0:n.layerType)}return!1})()&&a?"> areaValues | gradient()":""},C=({option:e,value:t,options:r,dataSelectors:a=[]})=>null!=e&&e.includes("dataColors")?""!==t?t:y({name:e,options:r,dataSelectors:a}):t,O=(e,t,r,a,n,l)=>{var i,u,c,d;const f=s({},r);let p=e,h=t;if(""===h&&null!==(i=p)&&void 0!==i&&i.includes("dataColors")&&(h=C({option:p,value:h,options:r.options,dataSelectors:l})),null==h&&a[p])return f.options=(0,o.omit)(r.options,p),f;const g=null!==(u=null==n?void 0:n[p])&&void 0!==u?u:null===(c=a[p])||void 0===c?void 0:c.default;return void 0!==g&&h===g?(f.options=(0,o.omit)(r.options,p),f):(f.options=(0,o.cloneDeep)(r.options),null!==(d=f.options)&&void 0!==d||(f.options={}),null==t&&(0,o.isPlainObject)(e)&&(0,o.isPlainObject)(e.options)&&([p]=Object.keys(e.options),[h]=Object.values(e.options)),a[p]&&"array"!==a[p].type?(f.options[p]=h,f):(null===h&&(h=void 0),(0,o.set)(f.options,p,h),f.options=_(f.options),f))}},2166:(e,t,r)=>{r.d(t,{hasTokens:()=>n});const a=new RegExp(/\$/.source+/(\w+:)?/.source+/([^$|:]+?)(\|[|\w]+)?/.source+/\$/.source),n=e=>"string"==typeof e&&a.test(e)},2468:function(e,t,r){var a=this&&this.__createBinding||(Object.create?function(e,t,r,a){void 0===a&&(a=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,a,n)}:function(e,t,r,a){void 0===a&&(a=r),e[a]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&a(t,e,r);return n(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(9497)),s=o(r(23)),u=r(6649),c=l(r(9250)),d=l(r(7020)),f=l(r(1551)),p=l(r(1151)),{useRef:h,useState:g,useCallback:m}=i,b={label:s.string,labelPosition:s.oneOf(["top","left"]),labelWidth:s.number,onResetToDefault:s.func},v=({label:e,labelPosition:t="left",labelWidth:r,onResetToDefault:a})=>{const[n,o]=g(!1),l=h(null),s=m((()=>o(!0)),[]),b=m((()=>o(!1)),[]);return i.createElement(c.default,{label:(0,u._)(e),labelPosition:t,labelWidth:r},i.createElement(d.default,{"data-test":"customized-in-source-button",onClick:s,appearance:"default",ref:l,label:(0,u._)("Customized in source")}),i.createElement(f.default,{"data-test":"customized-in-source-popover",open:n,anchor:l.current,onRequestClose:b,defaultPlacement:"horizontal"},i.createElement(p.default,{onResetToDefault:a})))};v.propTypes=b,t.default=v},152:function(e,t,r){var a=this&&this.__createBinding||(Object.create?function(e,t,r,a){void 0===a&&(a=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,a,n)}:function(e,t,r,a){void 0===a&&(a=r),e[a]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&a(t,e,r);return n(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DynamicColorEditor=t.prepareUpdate=void 0;const i=o(r(9497)),s=o(r(23)),u=r(7124),c=l(r(9250)),d=l(r(7020)),f=l(r(1551)),p=l(r(232)),h=l(r(4566)),g=r(6649),m=r(5089),b=r(4793),v=r(1413),_=r(2369),y=l(r(2468)),C=r(5862),O=r(6801),P=r(1027),{useRef:x,useState:w,useEffect:j}=i,E=p.default.div`
6
6
  font-weight: 600;
7
7
  font-size: 14px;
8
8
  line-height: 20px;
@@ -290,7 +290,7 @@
290
290
  &:hover {
291
291
  background-color: ${f.variables.interactiveColorOverlayDrag} !important;
292
292
  }
293
- `;t.AdvancedConfigButton=({label:e="",onClick:t})=>i.default.createElement(b,{"data-test":`${e}-advanced-config-button-tooltip`,content:(0,c._)("Advanced configurations")},i.default.createElement(v,{"data-test":`${e}-advanced-config-button`,icon:i.default.createElement(d.default,{"data-test":`${e}-advanced-config-button-icon`}),appearance:"subtle",onClick:t}));const _=({"data-test":e,children:r,isAdvanced:a,label:n,hideLabel:o,labelPosition:l,labelWidth:s,tooltip:u,help:c,style:d,error:f,controlsLayout:p,onClick:h,onAdvancedConfigButtonClick:g})=>i.default.createElement(m,{"data-test":null!=e?e:"control-group",label:n,hideLabel:o,labelPosition:l,labelWidth:s,tooltip:u,help:c,error:f,style:d,onClick:h,controlsLayout:p},a?i.Children.toArray(r).filter(Boolean).map((e=>(0,i.cloneElement)(e,{style:{flex:1}}))):r,a?i.default.createElement(t.AdvancedConfigButton,{label:n,onClick:g}):null);_.propTypes={style:s.object,isAdvanced:s.bool,onClick:s.func,onAdvancedConfigButtonClick:s.func},_.defaultProps={isAdvanced:!1},t.default=_},6212:function(e,t,r){var a=this&&this.__createBinding||(Object.create?function(e,t,r,a){void 0===a&&(a=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,a,n)}:function(e,t,r,a){void 0===a&&(a=r),e[a]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&a(t,e,r);return n(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(9497)),s=l(r(232)),u=r(6649),c=l(r(9597)),d=l(r(2267)),f=s.default.div`
293
+ `;t.AdvancedConfigButton=({label:e="",onClick:t})=>i.default.createElement(b,{"data-test":`${e}-advanced-config-button-tooltip`,content:(0,c._)("Advanced configurations")},i.default.createElement(v,{"data-test":`${e}-advanced-config-button`,icon:i.default.createElement(d.default,{"data-test":`${e}-advanced-config-button-icon`}),appearance:"subtle",onClick:t}));const _=({"data-test":e,children:r,isAdvanced:a=!1,label:n,hideLabel:o,labelPosition:l,labelWidth:s,tooltip:u,help:c,style:d,error:f,controlsLayout:p,onClick:h,onAdvancedConfigButtonClick:g})=>i.default.createElement(m,{"data-test":null!=e?e:"control-group",label:n,hideLabel:o,labelPosition:l,labelWidth:s,tooltip:u,help:c,error:f,style:d,onClick:h,controlsLayout:p},a?i.Children.toArray(r).filter(Boolean).map((e=>(0,i.cloneElement)(e,{style:{flex:1}}))):r,a?i.default.createElement(t.AdvancedConfigButton,{label:n,onClick:g}):null);_.propTypes={style:s.object,isAdvanced:s.bool,onClick:s.func,onAdvancedConfigButtonClick:s.func},t.default=_},6212:function(e,t,r){var a=this&&this.__createBinding||(Object.create?function(e,t,r,a){void 0===a&&(a=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,a,n)}:function(e,t,r,a){void 0===a&&(a=r),e[a]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&a(t,e,r);return n(t,e),t},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(9497)),s=l(r(232)),u=r(6649),c=l(r(9597)),d=l(r(2267)),f=s.default.div`
294
294
  position: absolute;
295
295
  left: 0;
296
296
  right: 0;
@@ -321,5 +321,5 @@
321
321
  position: relative;
322
322
  width: 100%;
323
323
  height: 20px;
324
- `},5862:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.editorStyle=t.DROPDOWN_MENU_WIDTH=t.VERTICAL_EDITOR_SPACING=t.FLYOUT_WIDTH=t.COLUMN_FLYOUT_PADDING=t.FLYOUT_PADDING=void 0,t.FLYOUT_PADDING=21,t.COLUMN_FLYOUT_PADDING=16,t.FLYOUT_WIDTH=344,t.VERTICAL_EDITOR_SPACING=16,t.DROPDOWN_MENU_WIDTH=327,t.editorStyle={width:"100%"}},6195:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},2649:e=>{e.exports=require("@babel/runtime/helpers/extends")},9597:e=>{e.exports=require("@splunk/react-icons/ArrowDown")},2267:e=>{e.exports=require("@splunk/react-icons/ArrowUp")},6062:e=>{e.exports=require("@splunk/react-icons/ArrowsRectangularDouble")},8855:e=>{e.exports=require("@splunk/react-icons/Cross")},6643:e=>{e.exports=require("@splunk/react-icons/SlidersDoubleHorizontal")},7020:e=>{e.exports=require("@splunk/react-ui/Button")},7408:e=>{e.exports=require("@splunk/react-ui/Color")},9250:e=>{e.exports=require("@splunk/react-ui/ControlGroup")},6214:e=>{e.exports=require("@splunk/react-ui/Dropdown")},4233:e=>{e.exports=require("@splunk/react-ui/Menu")},6447:e=>{e.exports=require("@splunk/react-ui/Message")},2782:e=>{e.exports=require("@splunk/react-ui/Number")},1551:e=>{e.exports=require("@splunk/react-ui/Popover")},5411:e=>{e.exports=require("@splunk/react-ui/RadioBar")},4082:e=>{e.exports=require("@splunk/react-ui/Text")},6379:e=>{e.exports=require("@splunk/react-ui/Tooltip")},3563:e=>{e.exports=require("@splunk/themes")},4566:e=>{e.exports=require("@splunk/themes/variables")},6649:e=>{e.exports=require("@splunk/ui-utils/i18n")},8987:e=>{e.exports=require("@splunk/ui-utils/id")},5089:e=>{e.exports=require("@splunk/visualization-color-palettes/editors/PresetPalettes")},1413:e=>{e.exports=require("@splunk/visualization-encoding/utils/dsl")},3283:e=>{e.exports=require("@splunk/visualizations-shared/colorUtils")},7124:e=>{e.exports=require("@splunk/visualizations-shared/style")},4793:e=>{e.exports=require("lodash")},4868:e=>{e.exports=require("lodash/omit")},23:e=>{e.exports=require("prop-types")},9497:e=>{e.exports=require("react")},232:e=>{e.exports=require("styled-components")}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a].call(o.exports,o,o.exports,r),o.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a=r(152);module.exports=a})();
324
+ `},5862:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.editorStyle=t.DROPDOWN_MENU_WIDTH=t.VERTICAL_EDITOR_SPACING=t.FLYOUT_WIDTH=t.COLUMN_FLYOUT_PADDING=t.FLYOUT_PADDING=void 0,t.FLYOUT_PADDING=21,t.COLUMN_FLYOUT_PADDING=16,t.FLYOUT_WIDTH=344,t.VERTICAL_EDITOR_SPACING=16,t.DROPDOWN_MENU_WIDTH=327,t.editorStyle={width:"100%"}},6195:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},2649:e=>{e.exports=require("@babel/runtime/helpers/extends")},9597:e=>{e.exports=require("@splunk/react-icons/ArrowDown")},2267:e=>{e.exports=require("@splunk/react-icons/ArrowUp")},6062:e=>{e.exports=require("@splunk/react-icons/ArrowsRectangularDouble")},8855:e=>{e.exports=require("@splunk/react-icons/Cross")},6643:e=>{e.exports=require("@splunk/react-icons/SlidersDoubleHorizontal")},7020:e=>{e.exports=require("@splunk/react-ui/Button")},7408:e=>{e.exports=require("@splunk/react-ui/Color")},9250:e=>{e.exports=require("@splunk/react-ui/ControlGroup")},6214:e=>{e.exports=require("@splunk/react-ui/Dropdown")},4233:e=>{e.exports=require("@splunk/react-ui/Menu")},6447:e=>{e.exports=require("@splunk/react-ui/Message")},2782:e=>{e.exports=require("@splunk/react-ui/Number")},1551:e=>{e.exports=require("@splunk/react-ui/Popover")},5411:e=>{e.exports=require("@splunk/react-ui/RadioBar")},4082:e=>{e.exports=require("@splunk/react-ui/Text")},6379:e=>{e.exports=require("@splunk/react-ui/Tooltip")},3563:e=>{e.exports=require("@splunk/themes")},4566:e=>{e.exports=require("@splunk/themes/variables")},6649:e=>{e.exports=require("@splunk/ui-utils/i18n")},8987:e=>{e.exports=require("@splunk/ui-utils/id")},5089:e=>{e.exports=require("@splunk/visualization-color-palettes/editors/PresetPalettes")},1413:e=>{e.exports=require("@splunk/visualization-encoding/utils/dsl")},3283:e=>{e.exports=require("@splunk/visualizations-shared/colorUtils")},7124:e=>{e.exports=require("@splunk/visualizations-shared/style")},4793:e=>{e.exports=require("lodash")},23:e=>{e.exports=require("prop-types")},9497:e=>{e.exports=require("react")},232:e=>{e.exports=require("styled-components")}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a].call(o.exports,o,o.exports,r),o.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a=r(152);module.exports=a})();
325
325
  //# sourceMappingURL=DynamicColorEditor.js.map