@deephaven/dashboard-core-plugins 0.15.6-vite.21 → 0.15.7-beta.3

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 (75) hide show
  1. package/dist/ChartBuilderPlugin.js.map +1 -1
  2. package/dist/ChartPlugin.js.map +1 -1
  3. package/dist/ConsolePlugin.js.map +1 -1
  4. package/dist/FilterPlugin.js.map +1 -1
  5. package/dist/GridPlugin.js.map +1 -1
  6. package/dist/LinkerPlugin.js.map +1 -1
  7. package/dist/MarkdownPlugin.js.map +1 -1
  8. package/dist/PandasPlugin.js.map +1 -1
  9. package/dist/controls/ControlType.js.map +1 -1
  10. package/dist/controls/dropdown-filter/DropdownFilter.js.map +1 -1
  11. package/dist/controls/input-filter/InputFilter.js.map +1 -1
  12. package/dist/controls/markdown/MarkdownContainer.js.map +1 -1
  13. package/dist/controls/markdown/MarkdownEditor.js.map +1 -1
  14. package/dist/controls/markdown/MarkdownStartPage.js.map +1 -1
  15. package/dist/controls/markdown/MarkdownUtils.js.map +1 -1
  16. package/dist/events/ChartEvent.js.map +1 -1
  17. package/dist/events/ConsoleEvent.js.map +1 -1
  18. package/dist/events/InputFilterEvent.js.map +1 -1
  19. package/dist/events/IrisGridEvent.js.map +1 -1
  20. package/dist/events/MarkdownEvent.js.map +1 -1
  21. package/dist/events/NotebookEvent.js.map +1 -1
  22. package/dist/events/PQEvent.js.map +1 -1
  23. package/dist/events/PandasEvent.js.map +1 -1
  24. package/dist/events/TabEvent.js.map +1 -1
  25. package/dist/events/index.js.map +1 -1
  26. package/dist/index.js.map +1 -1
  27. package/dist/linker/ColumnSelectionValidator.js.map +1 -1
  28. package/dist/linker/Linker.js.map +1 -1
  29. package/dist/linker/LinkerLink.js.map +1 -1
  30. package/dist/linker/LinkerOverlayContent.js.map +1 -1
  31. package/dist/linker/LinkerUtils.js.map +1 -1
  32. package/dist/linker/ToolType.js.map +1 -1
  33. package/dist/linker/index.js.map +1 -1
  34. package/dist/panels/ChartColumnSelectorOverlay.js.map +1 -1
  35. package/dist/panels/ChartFilterOverlay.js.map +1 -1
  36. package/dist/panels/ChartPanel.js.map +1 -1
  37. package/dist/panels/CommandHistoryPanel.js.map +1 -1
  38. package/dist/panels/ConsolePanel.d.ts.map +1 -1
  39. package/dist/panels/ConsolePanel.js +9 -3
  40. package/dist/panels/ConsolePanel.js.map +1 -1
  41. package/dist/panels/DropdownFilterPanel.js.map +1 -1
  42. package/dist/panels/FileExplorerPanel.js.map +1 -1
  43. package/dist/panels/FilterSetManager.js.map +1 -1
  44. package/dist/panels/FilterSetManagerPanel.js.map +1 -1
  45. package/dist/panels/InputFilterPanel.js.map +1 -1
  46. package/dist/panels/IrisGridPanel.d.ts +1 -1
  47. package/dist/panels/IrisGridPanel.d.ts.map +1 -1
  48. package/dist/panels/IrisGridPanel.js +5 -5
  49. package/dist/panels/IrisGridPanel.js.map +1 -1
  50. package/dist/panels/LogPanel.js.map +1 -1
  51. package/dist/panels/MarkdownNotebook.js.map +1 -1
  52. package/dist/panels/MarkdownPanel.js.map +1 -1
  53. package/dist/panels/NotebookPanel.d.ts +3 -1
  54. package/dist/panels/NotebookPanel.d.ts.map +1 -1
  55. package/dist/panels/NotebookPanel.js +2 -1
  56. package/dist/panels/NotebookPanel.js.map +1 -1
  57. package/dist/panels/PandasPanel.d.ts.map +1 -1
  58. package/dist/panels/PandasPanel.js +3 -3
  59. package/dist/panels/PandasPanel.js.map +1 -1
  60. package/dist/panels/Panel.js.map +1 -1
  61. package/dist/panels/PanelContextMenu.js.map +1 -1
  62. package/dist/panels/RenameDialog.js.map +1 -1
  63. package/dist/panels/WidgetPanel.js.map +1 -1
  64. package/dist/panels/WidgetPanelTooltip.js.map +1 -1
  65. package/dist/panels/index.js.map +1 -1
  66. package/dist/prop-types/CommonPropTypes.js.map +1 -1
  67. package/dist/prop-types/UIPropTypes.js.map +1 -1
  68. package/dist/prop-types/index.js.map +1 -1
  69. package/dist/redux/actionTypes.js.map +1 -1
  70. package/dist/redux/actions.js.map +1 -1
  71. package/dist/redux/index.js.map +1 -1
  72. package/dist/redux/reducers/index.js.map +1 -1
  73. package/dist/redux/reducers/sessionWrapper.js.map +1 -1
  74. package/dist/redux/selectors.js.map +1 -1
  75. package/package.json +19 -18
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetPanel.js","names":["React","PureComponent","classNames","memoize","ContextActions","ContextActionUtils","Panel","WidgetPanelTooltip","WidgetPanel","constructor","props","showTabTooltip","glContainer","widgetType","widgetName","description","handleSessionClosed","bind","handleSessionOpened","handleCopyName","state","isClientDisconnected","isPanelDisconnected","isWidgetDisconnected","isWaitingForReconnect","isPanelInactive","copyToClipboard","getErrorMessage","errorMessage","undefined","onSessionClose","setState","onSessionOpen","render","children","className","componentPanel","isLoaded","isLoading","glEventHub","isDisconnected","isClonable","isRenamable","renderTabTooltip","onClearAllFilters","onHide","onFocus","onBlur","onResize","onShow","onTabBlur","onTabFocus","onTabClicked","doRenderTabTooltip","getCachedRenderTabTooltip","additionalActions","title","group","groups","medium","order","action","disconnected","inactive"],"sources":["../../src/panels/WidgetPanel.tsx"],"sourcesContent":["import React, {\n Component,\n PureComponent,\n ReactElement,\n ReactNode,\n} from 'react';\nimport classNames from 'classnames';\nimport memoize from 'memoize-one';\nimport { Container, EventEmitter } from '@deephaven/golden-layout';\nimport { ContextActions, ContextActionUtils } from '@deephaven/components';\nimport Panel from './Panel';\nimport WidgetPanelTooltip from './WidgetPanelTooltip';\nimport './WidgetPanel.scss';\n\ninterface WidgetPanelProps {\n children: ReactNode;\n componentPanel: Component;\n\n glContainer: Container;\n glEventHub: EventEmitter;\n\n className: string;\n errorMessage: string;\n isClonable: boolean;\n isDisconnected: boolean;\n isLoading: boolean;\n isLoaded: boolean;\n isRenamable: boolean;\n showTabTooltip: boolean;\n widgetName: string;\n widgetType: string;\n renderTabTooltip: () => ReactNode;\n description: string;\n\n onFocus: () => void;\n onBlur: () => void;\n onHide: () => void;\n onClearAllFilters: () => void;\n onResize: () => void;\n onSessionClose: (...args: unknown[]) => void;\n onSessionOpen: (...args: unknown[]) => void;\n onShow: () => void;\n onTabBlur: () => void;\n onTabFocus: () => void;\n onTabClicked: () => void;\n}\n\ninterface WidgetPanelState {\n isClientDisconnected: boolean;\n isPanelDisconnected: boolean;\n isWidgetDisconnected: boolean;\n isWaitingForReconnect: boolean;\n isPanelInactive: boolean;\n}\n/**\n * Widget panel component that has a loading spinner and displays an error message when set\n */\nclass WidgetPanel extends PureComponent<WidgetPanelProps, WidgetPanelState> {\n static defaultProps = {\n className: '',\n errorMessage: null,\n isClonable: true,\n isDisconnected: false,\n isLoading: false,\n isLoaded: true,\n isRenamable: true,\n showTabTooltip: true,\n widgetName: 'Widget',\n widgetType: 'Widget',\n renderTabTooltip: null,\n description: '',\n\n onFocus: (): void => undefined,\n onBlur: (): void => undefined,\n onHide: (): void => undefined,\n onClearAllFilters: (): void => undefined,\n onResize: (): void => undefined,\n onSessionClose: (): void => undefined,\n onSessionOpen: (): void => undefined,\n onShow: (): void => undefined,\n onTabBlur: (): void => undefined,\n onTabFocus: (): void => undefined,\n onTabClicked: (): void => undefined,\n };\n\n constructor(props: WidgetPanelProps) {\n super(props);\n\n this.handleSessionClosed = this.handleSessionClosed.bind(this);\n this.handleSessionOpened = this.handleSessionOpened.bind(this);\n this.handleCopyName = this.handleCopyName.bind(this);\n\n this.state = {\n isClientDisconnected: false,\n isPanelDisconnected: false,\n isWidgetDisconnected: false,\n isWaitingForReconnect: false,\n isPanelInactive: false,\n };\n }\n\n handleCopyName(): void {\n const { widgetName } = this.props;\n ContextActionUtils.copyToClipboard(widgetName);\n }\n\n getErrorMessage(): string | undefined {\n const { errorMessage } = this.props;\n const {\n isClientDisconnected,\n isPanelDisconnected,\n isWidgetDisconnected,\n isWaitingForReconnect,\n } = this.state;\n if (errorMessage) {\n return `${errorMessage}`;\n }\n if (isClientDisconnected && isPanelDisconnected && isWaitingForReconnect) {\n return 'Disconnected from server.\\nCheck your internet connection.';\n }\n if (isClientDisconnected && isPanelDisconnected) {\n return 'Disconnected from server.';\n }\n if (isPanelDisconnected) {\n const { widgetName, widgetType } = this.props;\n return `Variable \"${widgetName}\" not set.\\n${widgetType} does not exist yet.`;\n }\n if (isWidgetDisconnected) {\n const { widgetName } = this.props;\n return `${widgetName} is unavailable.`;\n }\n return undefined;\n }\n\n getCachedRenderTabTooltip = memoize(\n (\n showTabTooltip: boolean,\n glContainer: Container,\n widgetType: string,\n widgetName: string,\n description: string\n ) =>\n showTabTooltip\n ? () => (\n <WidgetPanelTooltip\n glContainer={glContainer}\n widgetType={widgetType}\n widgetName={widgetName}\n description={description}\n />\n )\n : null\n );\n\n handleSessionClosed(...args: unknown[]): void {\n const { onSessionClose } = this.props;\n // The session has closed and we won't be able to reconnect, as this widget isn't persisted\n this.setState({\n isPanelDisconnected: true,\n isWaitingForReconnect: false,\n });\n onSessionClose(...args);\n }\n\n handleSessionOpened(...args: unknown[]): void {\n const { onSessionOpen } = this.props;\n onSessionOpen(...args);\n }\n\n render(): ReactElement {\n const {\n children,\n className,\n componentPanel,\n isLoaded,\n isLoading,\n glContainer,\n glEventHub,\n isDisconnected,\n isClonable,\n isRenamable,\n showTabTooltip,\n renderTabTooltip,\n widgetType,\n widgetName,\n description,\n\n onClearAllFilters,\n onHide,\n onFocus,\n onBlur,\n onResize,\n onShow,\n onTabBlur,\n onTabFocus,\n onTabClicked,\n } = this.props;\n\n const {\n isPanelDisconnected,\n isWidgetDisconnected,\n isPanelInactive,\n } = this.state;\n const errorMessage = this.getErrorMessage();\n const doRenderTabTooltip =\n renderTabTooltip ??\n this.getCachedRenderTabTooltip(\n showTabTooltip,\n glContainer,\n widgetType,\n widgetName,\n description\n );\n\n const additionalActions = [\n {\n title: `Copy ${widgetType} Name`,\n group: ContextActions.groups.medium,\n order: 20,\n action: this.handleCopyName,\n },\n ];\n\n return (\n <Panel\n className={classNames(className, {\n disconnected:\n isPanelDisconnected || isWidgetDisconnected || isDisconnected,\n inactive: isPanelInactive,\n })}\n componentPanel={componentPanel}\n glContainer={glContainer}\n glEventHub={glEventHub}\n onClearAllFilters={onClearAllFilters}\n onHide={onHide}\n onFocus={onFocus}\n onBlur={onBlur}\n onResize={onResize}\n onShow={onShow}\n onSessionClose={this.handleSessionClosed}\n onSessionOpen={this.handleSessionOpened}\n onTabBlur={onTabBlur}\n onTabFocus={onTabFocus}\n onTabClicked={onTabClicked}\n renderTabTooltip={doRenderTabTooltip}\n errorMessage={errorMessage}\n isLoaded={isLoaded}\n isLoading={isLoading}\n isClonable={isClonable}\n isRenamable={isRenamable}\n additionalActions={additionalActions}\n >\n {children}\n {isPanelInactive && <div className=\"fill-parent-absolute\" />}\n </Panel>\n );\n }\n}\n\nexport default WidgetPanel;\n"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/panels/WidgetPanel.tsx"],"names":["React","PureComponent","classNames","memoize","ContextActions","ContextActionUtils","Panel","WidgetPanelTooltip","WidgetPanel","constructor","props","showTabTooltip","glContainer","widgetType","widgetName","description","handleSessionClosed","bind","handleSessionOpened","handleCopyName","state","isClientDisconnected","isPanelDisconnected","isWidgetDisconnected","isWaitingForReconnect","isPanelInactive","copyToClipboard","getErrorMessage","errorMessage","undefined","onSessionClose","setState","onSessionOpen","render","children","className","componentPanel","isLoaded","isLoading","glEventHub","isDisconnected","isClonable","isRenamable","renderTabTooltip","onClearAllFilters","onHide","onFocus","onBlur","onResize","onShow","onTabBlur","onTabFocus","onTabClicked","doRenderTabTooltip","getCachedRenderTabTooltip","additionalActions","title","group","groups","medium","order","action","disconnected","inactive"],"mappings":"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","sourcesContent":["import React, {\n Component,\n PureComponent,\n ReactElement,\n ReactNode,\n} from 'react';\nimport classNames from 'classnames';\nimport memoize from 'memoize-one';\nimport { Container, EventEmitter } from '@deephaven/golden-layout';\nimport { ContextActions, ContextActionUtils } from '@deephaven/components';\nimport Panel from './Panel';\nimport WidgetPanelTooltip from './WidgetPanelTooltip';\nimport './WidgetPanel.scss';\n\ninterface WidgetPanelProps {\n children: ReactNode;\n componentPanel: Component;\n\n glContainer: Container;\n glEventHub: EventEmitter;\n\n className: string;\n errorMessage: string;\n isClonable: boolean;\n isDisconnected: boolean;\n isLoading: boolean;\n isLoaded: boolean;\n isRenamable: boolean;\n showTabTooltip: boolean;\n widgetName: string;\n widgetType: string;\n renderTabTooltip: () => ReactNode;\n description: string;\n\n onFocus: () => void;\n onBlur: () => void;\n onHide: () => void;\n onClearAllFilters: () => void;\n onResize: () => void;\n onSessionClose: (...args: unknown[]) => void;\n onSessionOpen: (...args: unknown[]) => void;\n onShow: () => void;\n onTabBlur: () => void;\n onTabFocus: () => void;\n onTabClicked: () => void;\n}\n\ninterface WidgetPanelState {\n isClientDisconnected: boolean;\n isPanelDisconnected: boolean;\n isWidgetDisconnected: boolean;\n isWaitingForReconnect: boolean;\n isPanelInactive: boolean;\n}\n/**\n * Widget panel component that has a loading spinner and displays an error message when set\n */\nclass WidgetPanel extends PureComponent<WidgetPanelProps, WidgetPanelState> {\n static defaultProps = {\n className: '',\n errorMessage: null,\n isClonable: true,\n isDisconnected: false,\n isLoading: false,\n isLoaded: true,\n isRenamable: true,\n showTabTooltip: true,\n widgetName: 'Widget',\n widgetType: 'Widget',\n renderTabTooltip: null,\n description: '',\n\n onFocus: (): void => undefined,\n onBlur: (): void => undefined,\n onHide: (): void => undefined,\n onClearAllFilters: (): void => undefined,\n onResize: (): void => undefined,\n onSessionClose: (): void => undefined,\n onSessionOpen: (): void => undefined,\n onShow: (): void => undefined,\n onTabBlur: (): void => undefined,\n onTabFocus: (): void => undefined,\n onTabClicked: (): void => undefined,\n };\n\n constructor(props: WidgetPanelProps) {\n super(props);\n\n this.handleSessionClosed = this.handleSessionClosed.bind(this);\n this.handleSessionOpened = this.handleSessionOpened.bind(this);\n this.handleCopyName = this.handleCopyName.bind(this);\n\n this.state = {\n isClientDisconnected: false,\n isPanelDisconnected: false,\n isWidgetDisconnected: false,\n isWaitingForReconnect: false,\n isPanelInactive: false,\n };\n }\n\n handleCopyName(): void {\n const { widgetName } = this.props;\n ContextActionUtils.copyToClipboard(widgetName);\n }\n\n getErrorMessage(): string | undefined {\n const { errorMessage } = this.props;\n const {\n isClientDisconnected,\n isPanelDisconnected,\n isWidgetDisconnected,\n isWaitingForReconnect,\n } = this.state;\n if (errorMessage) {\n return `${errorMessage}`;\n }\n if (isClientDisconnected && isPanelDisconnected && isWaitingForReconnect) {\n return 'Disconnected from server.\\nCheck your internet connection.';\n }\n if (isClientDisconnected && isPanelDisconnected) {\n return 'Disconnected from server.';\n }\n if (isPanelDisconnected) {\n const { widgetName, widgetType } = this.props;\n return `Variable \"${widgetName}\" not set.\\n${widgetType} does not exist yet.`;\n }\n if (isWidgetDisconnected) {\n const { widgetName } = this.props;\n return `${widgetName} is unavailable.`;\n }\n return undefined;\n }\n\n getCachedRenderTabTooltip = memoize(\n (\n showTabTooltip: boolean,\n glContainer: Container,\n widgetType: string,\n widgetName: string,\n description: string\n ) =>\n showTabTooltip\n ? () => (\n <WidgetPanelTooltip\n glContainer={glContainer}\n widgetType={widgetType}\n widgetName={widgetName}\n description={description}\n />\n )\n : null\n );\n\n handleSessionClosed(...args: unknown[]): void {\n const { onSessionClose } = this.props;\n // The session has closed and we won't be able to reconnect, as this widget isn't persisted\n this.setState({\n isPanelDisconnected: true,\n isWaitingForReconnect: false,\n });\n onSessionClose(...args);\n }\n\n handleSessionOpened(...args: unknown[]): void {\n const { onSessionOpen } = this.props;\n onSessionOpen(...args);\n }\n\n render(): ReactElement {\n const {\n children,\n className,\n componentPanel,\n isLoaded,\n isLoading,\n glContainer,\n glEventHub,\n isDisconnected,\n isClonable,\n isRenamable,\n showTabTooltip,\n renderTabTooltip,\n widgetType,\n widgetName,\n description,\n\n onClearAllFilters,\n onHide,\n onFocus,\n onBlur,\n onResize,\n onShow,\n onTabBlur,\n onTabFocus,\n onTabClicked,\n } = this.props;\n\n const {\n isPanelDisconnected,\n isWidgetDisconnected,\n isPanelInactive,\n } = this.state;\n const errorMessage = this.getErrorMessage();\n const doRenderTabTooltip =\n renderTabTooltip ??\n this.getCachedRenderTabTooltip(\n showTabTooltip,\n glContainer,\n widgetType,\n widgetName,\n description\n );\n\n const additionalActions = [\n {\n title: `Copy ${widgetType} Name`,\n group: ContextActions.groups.medium,\n order: 20,\n action: this.handleCopyName,\n },\n ];\n\n return (\n <Panel\n className={classNames(className, {\n disconnected:\n isPanelDisconnected || isWidgetDisconnected || isDisconnected,\n inactive: isPanelInactive,\n })}\n componentPanel={componentPanel}\n glContainer={glContainer}\n glEventHub={glEventHub}\n onClearAllFilters={onClearAllFilters}\n onHide={onHide}\n onFocus={onFocus}\n onBlur={onBlur}\n onResize={onResize}\n onShow={onShow}\n onSessionClose={this.handleSessionClosed}\n onSessionOpen={this.handleSessionOpened}\n onTabBlur={onTabBlur}\n onTabFocus={onTabFocus}\n onTabClicked={onTabClicked}\n renderTabTooltip={doRenderTabTooltip}\n errorMessage={errorMessage}\n isLoaded={isLoaded}\n isLoading={isLoading}\n isClonable={isClonable}\n isRenamable={isRenamable}\n additionalActions={additionalActions}\n >\n {children}\n {isPanelInactive && <div className=\"fill-parent-absolute\" />}\n </Panel>\n );\n }\n}\n\nexport default WidgetPanel;\n"],"file":"WidgetPanel.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetPanelTooltip.js","names":["React","useState","PropTypes","Button","ContextActionUtils","vsCopy","vsPassFilled","GLPropTypes","LayoutUtils","Log","log","module","WidgetPanelTooltip","props","widgetType","widgetName","glContainer","description","children","panelTitle","getTitleFromContainer","copied","setCopied","copyToClipboard","then","catch","e","error","propTypes","Container","isRequired","string","node","defaultProps"],"sources":["../../src/panels/WidgetPanelTooltip.tsx"],"sourcesContent":["import React, { ReactNode, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Button, ContextActionUtils } from '@deephaven/components';\nimport { vsCopy, vsPassFilled } from '@deephaven/icons';\nimport { GLPropTypes, LayoutUtils } from '@deephaven/dashboard';\nimport Log from '@deephaven/log';\nimport './WidgetPanelTooltip.scss';\nimport { ReactElement } from 'react-markdown';\nimport GoldenLayout from '@deephaven/golden-layout';\n\nconst log = Log.module('WidgetPanelTooltip');\n\ninterface WidgetPanelTooltipProps {\n glContainer: GoldenLayout.Container;\n widgetType: string;\n widgetName: string;\n description: string;\n children: ReactNode;\n}\nconst WidgetPanelTooltip = (props: WidgetPanelTooltipProps): ReactElement => {\n const { widgetType, widgetName, glContainer, description, children } = props;\n const panelTitle = LayoutUtils.getTitleFromContainer(glContainer);\n const [copied, setCopied] = useState(false);\n\n return (\n <div className=\"tab-tooltip-container\">\n <div className=\"row flex-nowrap align-items-start\">\n <span className=\"tab-tooltip-title\">\n <b>{widgetType} Name </b>\n </span>\n <span className=\"tab-tooltip-name\">{widgetName}</span>\n\n <Button\n kind=\"ghost\"\n className=\"tab-tooltip-copy\"\n icon={copied ? vsPassFilled : vsCopy}\n onClick={() => {\n ContextActionUtils.copyToClipboard(widgetName)\n .then(() => setCopied(true))\n .catch(e => log.error('Unable to column name', e));\n }}\n tooltip={copied ? 'Copied text' : 'Copy name'}\n />\n </div>\n {widgetName !== panelTitle && (\n <div className=\"row\">\n <span className=\"tab-tooltip-title\">\n <b>Display Name</b>\n </span>\n <span className=\"tab-tooltip-name\">{panelTitle}</span>\n </div>\n )}\n {description && (\n <div className=\"row\">\n <span className=\"tab-tooltip-description\">{description}</span>\n </div>\n )}\n {children}\n </div>\n );\n};\n\nWidgetPanelTooltip.propTypes = {\n glContainer: GLPropTypes.Container.isRequired,\n widgetType: PropTypes.string,\n widgetName: PropTypes.string,\n description: PropTypes.string,\n children: PropTypes.node,\n};\n\nWidgetPanelTooltip.defaultProps = {\n widgetType: '',\n widgetName: '',\n description: null,\n children: null,\n};\n\nexport default WidgetPanelTooltip;\n"],"mappings":"AAAA,OAAOA,KAAP,IAA2BC,QAA3B,QAA2C,OAA3C;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,MAAT,EAAiBC,kBAAjB,QAA2C,uBAA3C;AACA,SAASC,MAAT,EAAiBC,YAAjB,QAAqC,kBAArC;AACA,SAASC,WAAT,EAAsBC,WAAtB,QAAyC,sBAAzC;AACA,OAAOC,GAAP,MAAgB,gBAAhB;;AAKA,IAAMC,GAAG,GAAGD,GAAG,CAACE,MAAJ,CAAW,oBAAX,CAAZ;;AASA,IAAMC,kBAAkB,GAAIC,KAAD,IAAkD;EAC3E,IAAM;IAAEC,UAAF;IAAcC,UAAd;IAA0BC,WAA1B;IAAuCC,WAAvC;IAAoDC;EAApD,IAAiEL,KAAvE;EACA,IAAMM,UAAU,GAAGX,WAAW,CAACY,qBAAZ,CAAkCJ,WAAlC,CAAnB;EACA,IAAM,CAACK,MAAD,EAASC,SAAT,IAAsBrB,QAAQ,CAAC,KAAD,CAApC;EAEA,oBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAM,SAAS,EAAC;EAAhB,gBACE,+BAAIa,UAAJ,WADF,CADF,eAIE;IAAM,SAAS,EAAC;EAAhB,GAAoCC,UAApC,CAJF,eAME,oBAAC,MAAD;IACE,IAAI,EAAC,OADP;IAEE,SAAS,EAAC,kBAFZ;IAGE,IAAI,EAAEM,MAAM,GAAGf,YAAH,GAAkBD,MAHhC;IAIE,OAAO,EAAE,MAAM;MACbD,kBAAkB,CAACmB,eAAnB,CAAmCR,UAAnC,EACGS,IADH,CACQ,MAAMF,SAAS,CAAC,IAAD,CADvB,EAEGG,KAFH,CAESC,CAAC,IAAIhB,GAAG,CAACiB,KAAJ,CAAU,uBAAV,EAAmCD,CAAnC,CAFd;IAGD,CARH;IASE,OAAO,EAAEL,MAAM,GAAG,aAAH,GAAmB;EATpC,EANF,CADF,EAmBGN,UAAU,KAAKI,UAAf,iBACC;IAAK,SAAS,EAAC;EAAf,gBACE;IAAM,SAAS,EAAC;EAAhB,gBACE,8CADF,CADF,eAIE;IAAM,SAAS,EAAC;EAAhB,GAAoCA,UAApC,CAJF,CApBJ,EA2BGF,WAAW,iBACV;IAAK,SAAS,EAAC;EAAf,gBACE;IAAM,SAAS,EAAC;EAAhB,GAA2CA,WAA3C,CADF,CA5BJ,EAgCGC,QAhCH,CADF;AAoCD,CAzCD;;AA2CAN,kBAAkB,CAACgB,SAAnB,GAA+B;EAC7BZ,WAAW,EAAET,WAAW,CAACsB,SAAZ,CAAsBC,UADN;EAE7BhB,UAAU,EAAEZ,SAAS,CAAC6B,MAFO;EAG7BhB,UAAU,EAAEb,SAAS,CAAC6B,MAHO;EAI7Bd,WAAW,EAAEf,SAAS,CAAC6B,MAJM;EAK7Bb,QAAQ,EAAEhB,SAAS,CAAC8B;AALS,CAA/B;AAQApB,kBAAkB,CAACqB,YAAnB,GAAkC;EAChCnB,UAAU,EAAE,EADoB;EAEhCC,UAAU,EAAE,EAFoB;EAGhCE,WAAW,EAAE,IAHmB;EAIhCC,QAAQ,EAAE;AAJsB,CAAlC;AAOA,eAAeN,kBAAf"}
1
+ {"version":3,"sources":["../../src/panels/WidgetPanelTooltip.tsx"],"names":["React","useState","PropTypes","Button","ContextActionUtils","vsCopy","vsPassFilled","GLPropTypes","LayoutUtils","Log","log","module","WidgetPanelTooltip","props","widgetType","widgetName","glContainer","description","children","panelTitle","getTitleFromContainer","copied","setCopied","copyToClipboard","then","catch","e","error","propTypes","Container","isRequired","string","node","defaultProps"],"mappings":"AAAA,OAAOA,KAAP,IAA2BC,QAA3B,QAA2C,OAA3C;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,MAAT,EAAiBC,kBAAjB,QAA2C,uBAA3C;AACA,SAASC,MAAT,EAAiBC,YAAjB,QAAqC,kBAArC;AACA,SAASC,WAAT,EAAsBC,WAAtB,QAAyC,sBAAzC;AACA,OAAOC,GAAP,MAAgB,gBAAhB;;AAKA,IAAMC,GAAG,GAAGD,GAAG,CAACE,MAAJ,CAAW,oBAAX,CAAZ;;AASA,IAAMC,kBAAkB,GAAIC,KAAD,IAAkD;AAC3E,MAAM;AAAEC,IAAAA,UAAF;AAAcC,IAAAA,UAAd;AAA0BC,IAAAA,WAA1B;AAAuCC,IAAAA,WAAvC;AAAoDC,IAAAA;AAApD,MAAiEL,KAAvE;AACA,MAAMM,UAAU,GAAGX,WAAW,CAACY,qBAAZ,CAAkCJ,WAAlC,CAAnB;AACA,MAAM,CAACK,MAAD,EAASC,SAAT,IAAsBrB,QAAQ,CAAC,KAAD,CAApC;AAEA,sBACE;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAM,IAAA,SAAS,EAAC;AAAhB,kBACE,+BAAIa,UAAJ,WADF,CADF,eAIE;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAoCC,UAApC,CAJF,eAME,oBAAC,MAAD;AACE,IAAA,IAAI,EAAC,OADP;AAEE,IAAA,SAAS,EAAC,kBAFZ;AAGE,IAAA,IAAI,EAAEM,MAAM,GAAGf,YAAH,GAAkBD,MAHhC;AAIE,IAAA,OAAO,EAAE,MAAM;AACbD,MAAAA,kBAAkB,CAACmB,eAAnB,CAAmCR,UAAnC,EACGS,IADH,CACQ,MAAMF,SAAS,CAAC,IAAD,CADvB,EAEGG,KAFH,CAESC,CAAC,IAAIhB,GAAG,CAACiB,KAAJ,CAAU,uBAAV,EAAmCD,CAAnC,CAFd;AAGD,KARH;AASE,IAAA,OAAO,EAAEL,MAAM,GAAG,aAAH,GAAmB;AATpC,IANF,CADF,EAmBGN,UAAU,KAAKI,UAAf,iBACC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAM,IAAA,SAAS,EAAC;AAAhB,kBACE,8CADF,CADF,eAIE;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAoCA,UAApC,CAJF,CApBJ,EA2BGF,WAAW,iBACV;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAM,IAAA,SAAS,EAAC;AAAhB,KAA2CA,WAA3C,CADF,CA5BJ,EAgCGC,QAhCH,CADF;AAoCD,CAzCD;;AA2CAN,kBAAkB,CAACgB,SAAnB,GAA+B;AAC7BZ,EAAAA,WAAW,EAAET,WAAW,CAACsB,SAAZ,CAAsBC,UADN;AAE7BhB,EAAAA,UAAU,EAAEZ,SAAS,CAAC6B,MAFO;AAG7BhB,EAAAA,UAAU,EAAEb,SAAS,CAAC6B,MAHO;AAI7Bd,EAAAA,WAAW,EAAEf,SAAS,CAAC6B,MAJM;AAK7Bb,EAAAA,QAAQ,EAAEhB,SAAS,CAAC8B;AALS,CAA/B;AAQApB,kBAAkB,CAACqB,YAAnB,GAAkC;AAChCnB,EAAAA,UAAU,EAAE,EADoB;AAEhCC,EAAAA,UAAU,EAAE,EAFoB;AAGhCE,EAAAA,WAAW,EAAE,IAHmB;AAIhCC,EAAAA,QAAQ,EAAE;AAJsB,CAAlC;AAOA,eAAeN,kBAAf","sourcesContent":["import React, { ReactNode, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Button, ContextActionUtils } from '@deephaven/components';\nimport { vsCopy, vsPassFilled } from '@deephaven/icons';\nimport { GLPropTypes, LayoutUtils } from '@deephaven/dashboard';\nimport Log from '@deephaven/log';\nimport './WidgetPanelTooltip.scss';\nimport { ReactElement } from 'react-markdown';\nimport GoldenLayout from '@deephaven/golden-layout';\n\nconst log = Log.module('WidgetPanelTooltip');\n\ninterface WidgetPanelTooltipProps {\n glContainer: GoldenLayout.Container;\n widgetType: string;\n widgetName: string;\n description: string;\n children: ReactNode;\n}\nconst WidgetPanelTooltip = (props: WidgetPanelTooltipProps): ReactElement => {\n const { widgetType, widgetName, glContainer, description, children } = props;\n const panelTitle = LayoutUtils.getTitleFromContainer(glContainer);\n const [copied, setCopied] = useState(false);\n\n return (\n <div className=\"tab-tooltip-container\">\n <div className=\"row flex-nowrap align-items-start\">\n <span className=\"tab-tooltip-title\">\n <b>{widgetType} Name </b>\n </span>\n <span className=\"tab-tooltip-name\">{widgetName}</span>\n\n <Button\n kind=\"ghost\"\n className=\"tab-tooltip-copy\"\n icon={copied ? vsPassFilled : vsCopy}\n onClick={() => {\n ContextActionUtils.copyToClipboard(widgetName)\n .then(() => setCopied(true))\n .catch(e => log.error('Unable to column name', e));\n }}\n tooltip={copied ? 'Copied text' : 'Copy name'}\n />\n </div>\n {widgetName !== panelTitle && (\n <div className=\"row\">\n <span className=\"tab-tooltip-title\">\n <b>Display Name</b>\n </span>\n <span className=\"tab-tooltip-name\">{panelTitle}</span>\n </div>\n )}\n {description && (\n <div className=\"row\">\n <span className=\"tab-tooltip-description\">{description}</span>\n </div>\n )}\n {children}\n </div>\n );\n};\n\nWidgetPanelTooltip.propTypes = {\n glContainer: GLPropTypes.Container.isRequired,\n widgetType: PropTypes.string,\n widgetName: PropTypes.string,\n description: PropTypes.string,\n children: PropTypes.node,\n};\n\nWidgetPanelTooltip.defaultProps = {\n widgetType: '',\n widgetName: '',\n description: null,\n children: null,\n};\n\nexport default WidgetPanelTooltip;\n"],"file":"WidgetPanelTooltip.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","ChartPanel","CommandHistoryPanel","ConsolePanel","DropdownFilterPanel","FileExplorerPanel","FilterSetManager","FilterSetManagerPanel","InputFilterPanel","IrisGridPanel","LogPanel","MarkdownPanel","NotebookPanel","PandasPanel","Panel","WidgetPanel","WidgetPanelTooltip"],"sources":["../../src/panels/index.ts"],"sourcesContent":["export { default as ChartPanel } from './ChartPanel';\nexport * from './ChartPanel';\nexport { default as CommandHistoryPanel } from './CommandHistoryPanel';\nexport { default as ConsolePanel } from './ConsolePanel';\nexport { default as DropdownFilterPanel } from './DropdownFilterPanel';\nexport { default as FileExplorerPanel } from './FileExplorerPanel';\nexport { default as FilterSetManager } from './FilterSetManager';\nexport type { FilterSet } from './FilterSetManager';\nexport { default as FilterSetManagerPanel } from './FilterSetManagerPanel';\nexport { default as InputFilterPanel } from './InputFilterPanel';\nexport { default as IrisGridPanel } from './IrisGridPanel';\nexport * from './IrisGridPanel';\nexport { default as LogPanel } from './LogPanel';\nexport { default as MarkdownPanel } from './MarkdownPanel';\nexport { default as NotebookPanel } from './NotebookPanel';\nexport { default as PandasPanel } from './PandasPanel';\nexport * from './PandasPanel';\nexport { default as Panel } from './Panel';\nexport { default as WidgetPanel } from './WidgetPanel';\nexport { default as WidgetPanelTooltip } from './WidgetPanelTooltip';\n"],"mappings":"SAASA,OAAO,IAAIC,U;;SAEXD,OAAO,IAAIE,mB;SACXF,OAAO,IAAIG,Y;SACXH,OAAO,IAAII,mB;SACXJ,OAAO,IAAIK,iB;SACXL,OAAO,IAAIM,gB;SAEXN,OAAO,IAAIO,qB;SACXP,OAAO,IAAIQ,gB;SACXR,OAAO,IAAIS,a;;SAEXT,OAAO,IAAIU,Q;SACXV,OAAO,IAAIW,a;SACXX,OAAO,IAAIY,a;SACXZ,OAAO,IAAIa,W;;SAEXb,OAAO,IAAIc,K;SACXd,OAAO,IAAIe,W;SACXf,OAAO,IAAIgB,kB"}
1
+ {"version":3,"sources":["../../src/panels/index.ts"],"names":["default","ChartPanel","CommandHistoryPanel","ConsolePanel","DropdownFilterPanel","FileExplorerPanel","FilterSetManager","FilterSetManagerPanel","InputFilterPanel","IrisGridPanel","LogPanel","MarkdownPanel","NotebookPanel","PandasPanel","Panel","WidgetPanel","WidgetPanelTooltip"],"mappings":"SAASA,OAAO,IAAIC,U;;SAEXD,OAAO,IAAIE,mB;SACXF,OAAO,IAAIG,Y;SACXH,OAAO,IAAII,mB;SACXJ,OAAO,IAAIK,iB;SACXL,OAAO,IAAIM,gB;SAEXN,OAAO,IAAIO,qB;SACXP,OAAO,IAAIQ,gB;SACXR,OAAO,IAAIS,a;;SAEXT,OAAO,IAAIU,Q;SACXV,OAAO,IAAIW,a;SACXX,OAAO,IAAIY,a;SACXZ,OAAO,IAAIa,W;;SAEXb,OAAO,IAAIc,K;SACXd,OAAO,IAAIe,W;SACXf,OAAO,IAAIgB,kB","sourcesContent":["export { default as ChartPanel } from './ChartPanel';\nexport * from './ChartPanel';\nexport { default as CommandHistoryPanel } from './CommandHistoryPanel';\nexport { default as ConsolePanel } from './ConsolePanel';\nexport { default as DropdownFilterPanel } from './DropdownFilterPanel';\nexport { default as FileExplorerPanel } from './FileExplorerPanel';\nexport { default as FilterSetManager } from './FilterSetManager';\nexport type { FilterSet } from './FilterSetManager';\nexport { default as FilterSetManagerPanel } from './FilterSetManagerPanel';\nexport { default as InputFilterPanel } from './InputFilterPanel';\nexport { default as IrisGridPanel } from './IrisGridPanel';\nexport * from './IrisGridPanel';\nexport { default as LogPanel } from './LogPanel';\nexport { default as MarkdownPanel } from './MarkdownPanel';\nexport { default as NotebookPanel } from './NotebookPanel';\nexport { default as PandasPanel } from './PandasPanel';\nexport * from './PandasPanel';\nexport { default as Panel } from './Panel';\nexport { default as WidgetPanel } from './WidgetPanel';\nexport { default as WidgetPanelTooltip } from './WidgetPanelTooltip';\n"],"file":"index.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"CommonPropTypes.js","names":["PropTypes","nullableBoolean","props","propName","bool","nullableString","string","CommonPropTypes","Object","freeze"],"sources":["../../src/prop-types/CommonPropTypes.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\nconst nullableBoolean = (props: Record<string, unknown>, propName: string) =>\n props[propName] === null ? null : PropTypes.bool;\n\nconst nullableString = (props: Record<string, unknown>, propName: string) =>\n props[propName] === null ? null : PropTypes.string;\n\nconst CommonPropTypes = Object.freeze({ nullableBoolean, nullableString });\n\nexport default CommonPropTypes;\n"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;;AAEA,IAAMC,eAAe,GAAG,CAACC,KAAD,EAAiCC,QAAjC,KACtBD,KAAK,CAACC,QAAD,CAAL,KAAoB,IAApB,GAA2B,IAA3B,GAAkCH,SAAS,CAACI,IAD9C;;AAGA,IAAMC,cAAc,GAAG,CAACH,KAAD,EAAiCC,QAAjC,KACrBD,KAAK,CAACC,QAAD,CAAL,KAAoB,IAApB,GAA2B,IAA3B,GAAkCH,SAAS,CAACM,MAD9C;;AAGA,IAAMC,eAAe,GAAGC,MAAM,CAACC,MAAP,CAAc;EAAER,eAAF;EAAmBI;AAAnB,CAAd,CAAxB;AAEA,eAAeE,eAAf"}
1
+ {"version":3,"sources":["../../src/prop-types/CommonPropTypes.ts"],"names":["PropTypes","nullableBoolean","props","propName","bool","nullableString","string","CommonPropTypes","Object","freeze"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;;AAEA,IAAMC,eAAe,GAAG,CAACC,KAAD,EAAiCC,QAAjC,KACtBD,KAAK,CAACC,QAAD,CAAL,KAAoB,IAApB,GAA2B,IAA3B,GAAkCH,SAAS,CAACI,IAD9C;;AAGA,IAAMC,cAAc,GAAG,CAACH,KAAD,EAAiCC,QAAjC,KACrBD,KAAK,CAACC,QAAD,CAAL,KAAoB,IAApB,GAA2B,IAA3B,GAAkCH,SAAS,CAACM,MAD9C;;AAGA,IAAMC,eAAe,GAAGC,MAAM,CAACC,MAAP,CAAc;AAAER,EAAAA,eAAF;AAAmBI,EAAAA;AAAnB,CAAd,CAAxB;AAEA,eAAeE,eAAf","sourcesContent":["import PropTypes from 'prop-types';\n\nconst nullableBoolean = (props: Record<string, unknown>, propName: string) =>\n props[propName] === null ? null : PropTypes.bool;\n\nconst nullableString = (props: Record<string, unknown>, propName: string) =>\n props[propName] === null ? null : PropTypes.string;\n\nconst CommonPropTypes = Object.freeze({ nullableBoolean, nullableString });\n\nexport default CommonPropTypes;\n"],"file":"CommonPropTypes.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"UIPropTypes.js","names":["PropTypes","Panel","shape","state","panelState","LinkPoint","panelId","string","isRequired","columnName","columnType","LinkPointUntyped","Link","start","end","id","isReversed","bool","Links","arrayOf","User","name","operateAs","groups","permissions","isSuperUser","isQueryViewOnly","isNonInteractive","canUsePanels","canCreateDashboard","canCreateCodeStudio","canCreateQueryMonitor","canCopy","canDownloadCsv","UIPropTypes","Object","freeze"],"sources":["../../src/prop-types/UIPropTypes.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\nconst Panel = PropTypes.shape({\n state: PropTypes.shape({\n panelState: PropTypes.shape({}),\n }),\n});\n\nconst LinkPoint = PropTypes.shape({\n panelId: PropTypes.string.isRequired,\n columnName: PropTypes.string.isRequired,\n columnType: PropTypes.string.isRequired,\n});\n\nconst LinkPointUntyped = PropTypes.shape({\n panelId: PropTypes.string.isRequired,\n columnName: PropTypes.string.isRequired,\n});\n\nconst Link = PropTypes.shape({\n start: LinkPointUntyped,\n end: LinkPointUntyped,\n id: PropTypes.string,\n isReversed: PropTypes.bool,\n});\n\nconst Links = PropTypes.arrayOf(Link);\n\nconst User = PropTypes.shape({\n name: PropTypes.string.isRequired,\n operateAs: PropTypes.string.isRequired,\n groups: PropTypes.arrayOf(PropTypes.string).isRequired,\n permissions: PropTypes.shape({\n isSuperUser: PropTypes.bool.isRequired,\n isQueryViewOnly: PropTypes.bool.isRequired,\n isNonInteractive: PropTypes.bool.isRequired,\n canUsePanels: PropTypes.bool.isRequired,\n canCreateDashboard: PropTypes.bool.isRequired,\n canCreateCodeStudio: PropTypes.bool.isRequired,\n canCreateQueryMonitor: PropTypes.bool.isRequired,\n canCopy: PropTypes.bool.isRequired,\n canDownloadCsv: PropTypes.bool.isRequired,\n }).isRequired,\n});\n\nconst UIPropTypes = Object.freeze({\n LinkPoint,\n Link,\n Links,\n Panel,\n User,\n});\n\nexport default UIPropTypes;\n"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,IAAMC,KAAK,GAAGD,SAAS,CAACE,KAAV,CAAgB;EAC5BC,KAAK,EAAEH,SAAS,CAACE,KAAV,CAAgB;IACrBE,UAAU,EAAEJ,SAAS,CAACE,KAAV,CAAgB,EAAhB;EADS,CAAhB;AADqB,CAAhB,CAAd;AAMA,IAAMG,SAAS,GAAGL,SAAS,CAACE,KAAV,CAAgB;EAChCI,OAAO,EAAEN,SAAS,CAACO,MAAV,CAAiBC,UADM;EAEhCC,UAAU,EAAET,SAAS,CAACO,MAAV,CAAiBC,UAFG;EAGhCE,UAAU,EAAEV,SAAS,CAACO,MAAV,CAAiBC;AAHG,CAAhB,CAAlB;AAMA,IAAMG,gBAAgB,GAAGX,SAAS,CAACE,KAAV,CAAgB;EACvCI,OAAO,EAAEN,SAAS,CAACO,MAAV,CAAiBC,UADa;EAEvCC,UAAU,EAAET,SAAS,CAACO,MAAV,CAAiBC;AAFU,CAAhB,CAAzB;AAKA,IAAMI,IAAI,GAAGZ,SAAS,CAACE,KAAV,CAAgB;EAC3BW,KAAK,EAAEF,gBADoB;EAE3BG,GAAG,EAAEH,gBAFsB;EAG3BI,EAAE,EAAEf,SAAS,CAACO,MAHa;EAI3BS,UAAU,EAAEhB,SAAS,CAACiB;AAJK,CAAhB,CAAb;AAOA,IAAMC,KAAK,GAAGlB,SAAS,CAACmB,OAAV,CAAkBP,IAAlB,CAAd;AAEA,IAAMQ,IAAI,GAAGpB,SAAS,CAACE,KAAV,CAAgB;EAC3BmB,IAAI,EAAErB,SAAS,CAACO,MAAV,CAAiBC,UADI;EAE3Bc,SAAS,EAAEtB,SAAS,CAACO,MAAV,CAAiBC,UAFD;EAG3Be,MAAM,EAAEvB,SAAS,CAACmB,OAAV,CAAkBnB,SAAS,CAACO,MAA5B,EAAoCC,UAHjB;EAI3BgB,WAAW,EAAExB,SAAS,CAACE,KAAV,CAAgB;IAC3BuB,WAAW,EAAEzB,SAAS,CAACiB,IAAV,CAAeT,UADD;IAE3BkB,eAAe,EAAE1B,SAAS,CAACiB,IAAV,CAAeT,UAFL;IAG3BmB,gBAAgB,EAAE3B,SAAS,CAACiB,IAAV,CAAeT,UAHN;IAI3BoB,YAAY,EAAE5B,SAAS,CAACiB,IAAV,CAAeT,UAJF;IAK3BqB,kBAAkB,EAAE7B,SAAS,CAACiB,IAAV,CAAeT,UALR;IAM3BsB,mBAAmB,EAAE9B,SAAS,CAACiB,IAAV,CAAeT,UANT;IAO3BuB,qBAAqB,EAAE/B,SAAS,CAACiB,IAAV,CAAeT,UAPX;IAQ3BwB,OAAO,EAAEhC,SAAS,CAACiB,IAAV,CAAeT,UARG;IAS3ByB,cAAc,EAAEjC,SAAS,CAACiB,IAAV,CAAeT;EATJ,CAAhB,EAUVA;AAdwB,CAAhB,CAAb;AAiBA,IAAM0B,WAAW,GAAGC,MAAM,CAACC,MAAP,CAAc;EAChC/B,SADgC;EAEhCO,IAFgC;EAGhCM,KAHgC;EAIhCjB,KAJgC;EAKhCmB;AALgC,CAAd,CAApB;AAQA,eAAec,WAAf"}
1
+ {"version":3,"sources":["../../src/prop-types/UIPropTypes.ts"],"names":["PropTypes","Panel","shape","state","panelState","LinkPoint","panelId","string","isRequired","columnName","columnType","LinkPointUntyped","Link","start","end","id","isReversed","bool","Links","arrayOf","User","name","operateAs","groups","permissions","isSuperUser","isQueryViewOnly","isNonInteractive","canUsePanels","canCreateDashboard","canCreateCodeStudio","canCreateQueryMonitor","canCopy","canDownloadCsv","UIPropTypes","Object","freeze"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,IAAMC,KAAK,GAAGD,SAAS,CAACE,KAAV,CAAgB;AAC5BC,EAAAA,KAAK,EAAEH,SAAS,CAACE,KAAV,CAAgB;AACrBE,IAAAA,UAAU,EAAEJ,SAAS,CAACE,KAAV,CAAgB,EAAhB;AADS,GAAhB;AADqB,CAAhB,CAAd;AAMA,IAAMG,SAAS,GAAGL,SAAS,CAACE,KAAV,CAAgB;AAChCI,EAAAA,OAAO,EAAEN,SAAS,CAACO,MAAV,CAAiBC,UADM;AAEhCC,EAAAA,UAAU,EAAET,SAAS,CAACO,MAAV,CAAiBC,UAFG;AAGhCE,EAAAA,UAAU,EAAEV,SAAS,CAACO,MAAV,CAAiBC;AAHG,CAAhB,CAAlB;AAMA,IAAMG,gBAAgB,GAAGX,SAAS,CAACE,KAAV,CAAgB;AACvCI,EAAAA,OAAO,EAAEN,SAAS,CAACO,MAAV,CAAiBC,UADa;AAEvCC,EAAAA,UAAU,EAAET,SAAS,CAACO,MAAV,CAAiBC;AAFU,CAAhB,CAAzB;AAKA,IAAMI,IAAI,GAAGZ,SAAS,CAACE,KAAV,CAAgB;AAC3BW,EAAAA,KAAK,EAAEF,gBADoB;AAE3BG,EAAAA,GAAG,EAAEH,gBAFsB;AAG3BI,EAAAA,EAAE,EAAEf,SAAS,CAACO,MAHa;AAI3BS,EAAAA,UAAU,EAAEhB,SAAS,CAACiB;AAJK,CAAhB,CAAb;AAOA,IAAMC,KAAK,GAAGlB,SAAS,CAACmB,OAAV,CAAkBP,IAAlB,CAAd;AAEA,IAAMQ,IAAI,GAAGpB,SAAS,CAACE,KAAV,CAAgB;AAC3BmB,EAAAA,IAAI,EAAErB,SAAS,CAACO,MAAV,CAAiBC,UADI;AAE3Bc,EAAAA,SAAS,EAAEtB,SAAS,CAACO,MAAV,CAAiBC,UAFD;AAG3Be,EAAAA,MAAM,EAAEvB,SAAS,CAACmB,OAAV,CAAkBnB,SAAS,CAACO,MAA5B,EAAoCC,UAHjB;AAI3BgB,EAAAA,WAAW,EAAExB,SAAS,CAACE,KAAV,CAAgB;AAC3BuB,IAAAA,WAAW,EAAEzB,SAAS,CAACiB,IAAV,CAAeT,UADD;AAE3BkB,IAAAA,eAAe,EAAE1B,SAAS,CAACiB,IAAV,CAAeT,UAFL;AAG3BmB,IAAAA,gBAAgB,EAAE3B,SAAS,CAACiB,IAAV,CAAeT,UAHN;AAI3BoB,IAAAA,YAAY,EAAE5B,SAAS,CAACiB,IAAV,CAAeT,UAJF;AAK3BqB,IAAAA,kBAAkB,EAAE7B,SAAS,CAACiB,IAAV,CAAeT,UALR;AAM3BsB,IAAAA,mBAAmB,EAAE9B,SAAS,CAACiB,IAAV,CAAeT,UANT;AAO3BuB,IAAAA,qBAAqB,EAAE/B,SAAS,CAACiB,IAAV,CAAeT,UAPX;AAQ3BwB,IAAAA,OAAO,EAAEhC,SAAS,CAACiB,IAAV,CAAeT,UARG;AAS3ByB,IAAAA,cAAc,EAAEjC,SAAS,CAACiB,IAAV,CAAeT;AATJ,GAAhB,EAUVA;AAdwB,CAAhB,CAAb;AAiBA,IAAM0B,WAAW,GAAGC,MAAM,CAACC,MAAP,CAAc;AAChC/B,EAAAA,SADgC;AAEhCO,EAAAA,IAFgC;AAGhCM,EAAAA,KAHgC;AAIhCjB,EAAAA,KAJgC;AAKhCmB,EAAAA;AALgC,CAAd,CAApB;AAQA,eAAec,WAAf","sourcesContent":["import PropTypes from 'prop-types';\n\nconst Panel = PropTypes.shape({\n state: PropTypes.shape({\n panelState: PropTypes.shape({}),\n }),\n});\n\nconst LinkPoint = PropTypes.shape({\n panelId: PropTypes.string.isRequired,\n columnName: PropTypes.string.isRequired,\n columnType: PropTypes.string.isRequired,\n});\n\nconst LinkPointUntyped = PropTypes.shape({\n panelId: PropTypes.string.isRequired,\n columnName: PropTypes.string.isRequired,\n});\n\nconst Link = PropTypes.shape({\n start: LinkPointUntyped,\n end: LinkPointUntyped,\n id: PropTypes.string,\n isReversed: PropTypes.bool,\n});\n\nconst Links = PropTypes.arrayOf(Link);\n\nconst User = PropTypes.shape({\n name: PropTypes.string.isRequired,\n operateAs: PropTypes.string.isRequired,\n groups: PropTypes.arrayOf(PropTypes.string).isRequired,\n permissions: PropTypes.shape({\n isSuperUser: PropTypes.bool.isRequired,\n isQueryViewOnly: PropTypes.bool.isRequired,\n isNonInteractive: PropTypes.bool.isRequired,\n canUsePanels: PropTypes.bool.isRequired,\n canCreateDashboard: PropTypes.bool.isRequired,\n canCreateCodeStudio: PropTypes.bool.isRequired,\n canCreateQueryMonitor: PropTypes.bool.isRequired,\n canCopy: PropTypes.bool.isRequired,\n canDownloadCsv: PropTypes.bool.isRequired,\n }).isRequired,\n});\n\nconst UIPropTypes = Object.freeze({\n LinkPoint,\n Link,\n Links,\n Panel,\n User,\n});\n\nexport default UIPropTypes;\n"],"file":"UIPropTypes.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","UIPropTypes","CommonPropTypes"],"sources":["../../src/prop-types/index.ts"],"sourcesContent":["export { default as UIPropTypes } from './UIPropTypes';\nexport { default as CommonPropTypes } from './CommonPropTypes';\n"],"mappings":"SAASA,OAAO,IAAIC,W;SACXD,OAAO,IAAIE,e"}
1
+ {"version":3,"sources":["../../src/prop-types/index.ts"],"names":["default","UIPropTypes","CommonPropTypes"],"mappings":"SAASA,OAAO,IAAIC,W;SACXD,OAAO,IAAIE,e","sourcesContent":["export { default as UIPropTypes } from './UIPropTypes';\nexport { default as CommonPropTypes } from './CommonPropTypes';\n"],"file":"index.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"actionTypes.js","names":["SET_SESSION_WRAPPER"],"sources":["../../src/redux/actionTypes.ts"],"sourcesContent":["// eslint-disable-next-line import/prefer-default-export\nexport const SET_SESSION_WRAPPER = 'SET_SESSION_WRAPPER';\n"],"mappings":"AAAA;AACA,OAAO,IAAMA,mBAAmB,GAAG,qBAA5B"}
1
+ {"version":3,"sources":["../../src/redux/actionTypes.ts"],"names":["SET_SESSION_WRAPPER"],"mappings":"AAAA;AACA,OAAO,IAAMA,mBAAmB,GAAG,qBAA5B","sourcesContent":["// eslint-disable-next-line import/prefer-default-export\nexport const SET_SESSION_WRAPPER = 'SET_SESSION_WRAPPER';\n"],"file":"actionTypes.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","names":["deepEqual","updateDashboardData","getLinksForDashboard","setDashboardSessionWrapper","id","sessionWrapper","dispatch","setDashboardLinks","links","addDashboardLinks","newLinks","getState","filtered","filter","newLink","findIndex","link","start","end","concat","deleteDashboardLinks","linkIds","includes","setDashboardIsolatedLinkerPanelId","isolatedLinkerPanelId","setDashboardColumnSelectionValidator","columnSelectionValidator","setDashboardConsoleSettings","consoleSettings","setDashboardFilterSets","filterSets"],"sources":["../../src/redux/actions.ts"],"sourcesContent":["import deepEqual from 'deep-equal';\nimport { updateDashboardData } from '@deephaven/dashboard';\nimport { ThunkAction } from 'redux-thunk';\nimport { RootState } from '@deephaven/redux';\nimport { Action } from 'redux';\nimport { IdeConnection, IdeSession } from '@deephaven/jsapi-shim';\nimport { getLinksForDashboard } from './selectors';\nimport { FilterSet } from '../panels';\nimport { Link } from '../linker/LinkerUtils';\nimport { ColumnSelectionValidator } from '../linker/ColumnSelectionValidator';\n\nexport interface SessionWrapper {\n session: IdeSession;\n connection: IdeConnection;\n config: {\n type: string;\n id: string;\n };\n}\n/**\n * Set the session wrapper for the dashboard specified\n * @param id The ID of the dashboard to set the session for\n * @param sessionWrapper The session wrapper object to set for the dashboard\n */\nexport const setDashboardSessionWrapper = (\n id: string,\n sessionWrapper: SessionWrapper\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { sessionWrapper }));\n\n/**\n * Set the links for a given dashboard\n * @param id The ID of the dashboard to set the links for\n * @param links The links to set\n */\nexport const setDashboardLinks = (\n id: string,\n links: Link[]\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { links }));\n\n/**\n * Add links to the existing links in a dashboard. Filters out any duplicate links.\n * @param id The ID of the dashboard to add links to\n * @param newLinks The new links to add\n */\nexport const addDashboardLinks = (\n id: string,\n newLinks: Link[]\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => (\n dispatch,\n getState\n) => {\n const links = getLinksForDashboard(getState(), id);\n const filtered = newLinks.filter(\n newLink =>\n links.findIndex(\n link =>\n deepEqual(link.start, newLink.start) &&\n deepEqual(link.end, newLink.end)\n ) < 0\n );\n return dispatch(setDashboardLinks(id, links.concat(filtered)));\n};\n\n/**\n * Delete links from a dashboard\n * @param id The ID of the dashboard to delete links from\n * @param linkIds The link IDs to delete\n */\nexport const deleteDashboardLinks = (\n id: string,\n linkIds: string[]\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => (\n dispatch,\n getState\n) => {\n const links = getLinksForDashboard(getState(), id);\n const newLinks = links.filter(link => !linkIds.includes(link.id));\n return dispatch(setDashboardLinks(id, newLinks));\n};\n\n/**\n * Set the isolated linker panel ID for a dashboard\n * @param id The ID of the dashboard to set the isolated linker panel ID in\n * @param isolatedLinkerPanelId The isolated panel ID, or undefined to unset\n */\nexport const setDashboardIsolatedLinkerPanelId = (\n id: string,\n isolatedLinkerPanelId: string | string[] | undefined\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { isolatedLinkerPanelId }));\n\n/**\n * Set the column selection validator for a dashboard\n * @param id The ID of the dashboard to set the column selection validator on\n * @param columnSelectionValidator The column selection validator to set\n */\nexport const setDashboardColumnSelectionValidator = (\n id: string,\n columnSelectionValidator: ColumnSelectionValidator | undefined\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { columnSelectionValidator }));\n\n/**\n * Set the console settings for a dashboard\n * @param id The ID of the dashboard to set the console settings on\n * @param consoleSettings The console settings to set for the dashboard\n */\nexport const setDashboardConsoleSettings = (\n id: string,\n consoleSettings: Record<string, unknown>\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { consoleSettings }));\n\n/**\n * Set the filter sets for a specific dashboard\n * @param id The ID of the dashboard to set the filter sets for\n * @param filterSets The filter sets to set\n */\nexport const setDashboardFilterSets = (\n id: string,\n filterSets: FilterSet[]\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { filterSets }));\n"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AACA,SAASC,mBAAT,QAAoC,sBAApC;SAKSC,oB;;AAaT;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMC,0BAA0B,GAAG,CACxCC,EADwC,EAExCC,cAFwC,KAGwBC,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;EAAEC;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAME,iBAAiB,GAAG,CAC/BH,EAD+B,EAE/BI,KAF+B,KAGiCF,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;EAAEI;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,iBAAiB,GAAG,CAC/BL,EAD+B,EAE/BM,QAF+B,KAGiC,CAChEJ,QADgE,EAEhEK,QAFgE,KAG7D;EACH,IAAMH,KAAK,GAAGN,oBAAoB,CAACS,QAAQ,EAAT,EAAaP,EAAb,CAAlC;EACA,IAAMQ,QAAQ,GAAGF,QAAQ,CAACG,MAAT,CACfC,OAAO,IACLN,KAAK,CAACO,SAAN,CACEC,IAAI,IACFhB,SAAS,CAACgB,IAAI,CAACC,KAAN,EAAaH,OAAO,CAACG,KAArB,CAAT,IACAjB,SAAS,CAACgB,IAAI,CAACE,GAAN,EAAWJ,OAAO,CAACI,GAAnB,CAHb,IAII,CANS,CAAjB;EAQA,OAAOZ,QAAQ,CAACC,iBAAiB,CAACH,EAAD,EAAKI,KAAK,CAACW,MAAN,CAAaP,QAAb,CAAL,CAAlB,CAAf;AACD,CAjBM;AAmBP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMQ,oBAAoB,GAAG,CAClChB,EADkC,EAElCiB,OAFkC,KAG8B,CAChEf,QADgE,EAEhEK,QAFgE,KAG7D;EACH,IAAMH,KAAK,GAAGN,oBAAoB,CAACS,QAAQ,EAAT,EAAaP,EAAb,CAAlC;EACA,IAAMM,QAAQ,GAAGF,KAAK,CAACK,MAAN,CAAaG,IAAI,IAAI,CAACK,OAAO,CAACC,QAAR,CAAiBN,IAAI,CAACZ,EAAtB,CAAtB,CAAjB;EACA,OAAOE,QAAQ,CAACC,iBAAiB,CAACH,EAAD,EAAKM,QAAL,CAAlB,CAAf;AACD,CAVM;AAYP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMa,iCAAiC,GAAG,CAC/CnB,EAD+C,EAE/CoB,qBAF+C,KAGiBlB,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;EAAEoB;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,oCAAoC,GAAG,CAClDrB,EADkD,EAElDsB,wBAFkD,KAGcpB,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;EAAEsB;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,2BAA2B,GAAG,CACzCvB,EADyC,EAEzCwB,eAFyC,KAGuBtB,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;EAAEwB;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,sBAAsB,GAAG,CACpCzB,EADoC,EAEpC0B,UAFoC,KAG4BxB,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;EAAE0B;AAAF,CAAL,CAApB,CAJH"}
1
+ {"version":3,"sources":["../../src/redux/actions.ts"],"names":["deepEqual","updateDashboardData","getLinksForDashboard","setDashboardSessionWrapper","id","sessionWrapper","dispatch","setDashboardLinks","links","addDashboardLinks","newLinks","getState","filtered","filter","newLink","findIndex","link","start","end","concat","deleteDashboardLinks","linkIds","includes","setDashboardIsolatedLinkerPanelId","isolatedLinkerPanelId","setDashboardColumnSelectionValidator","columnSelectionValidator","setDashboardConsoleSettings","consoleSettings","setDashboardFilterSets","filterSets"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AACA,SAASC,mBAAT,QAAoC,sBAApC;SAKSC,oB;;AAaT;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMC,0BAA0B,GAAG,CACxCC,EADwC,EAExCC,cAFwC,KAGwBC,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;AAAEC,EAAAA;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAME,iBAAiB,GAAG,CAC/BH,EAD+B,EAE/BI,KAF+B,KAGiCF,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;AAAEI,EAAAA;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,iBAAiB,GAAG,CAC/BL,EAD+B,EAE/BM,QAF+B,KAGiC,CAChEJ,QADgE,EAEhEK,QAFgE,KAG7D;AACH,MAAMH,KAAK,GAAGN,oBAAoB,CAACS,QAAQ,EAAT,EAAaP,EAAb,CAAlC;AACA,MAAMQ,QAAQ,GAAGF,QAAQ,CAACG,MAAT,CACfC,OAAO,IACLN,KAAK,CAACO,SAAN,CACEC,IAAI,IACFhB,SAAS,CAACgB,IAAI,CAACC,KAAN,EAAaH,OAAO,CAACG,KAArB,CAAT,IACAjB,SAAS,CAACgB,IAAI,CAACE,GAAN,EAAWJ,OAAO,CAACI,GAAnB,CAHb,IAII,CANS,CAAjB;AAQA,SAAOZ,QAAQ,CAACC,iBAAiB,CAACH,EAAD,EAAKI,KAAK,CAACW,MAAN,CAAaP,QAAb,CAAL,CAAlB,CAAf;AACD,CAjBM;AAmBP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMQ,oBAAoB,GAAG,CAClChB,EADkC,EAElCiB,OAFkC,KAG8B,CAChEf,QADgE,EAEhEK,QAFgE,KAG7D;AACH,MAAMH,KAAK,GAAGN,oBAAoB,CAACS,QAAQ,EAAT,EAAaP,EAAb,CAAlC;AACA,MAAMM,QAAQ,GAAGF,KAAK,CAACK,MAAN,CAAaG,IAAI,IAAI,CAACK,OAAO,CAACC,QAAR,CAAiBN,IAAI,CAACZ,EAAtB,CAAtB,CAAjB;AACA,SAAOE,QAAQ,CAACC,iBAAiB,CAACH,EAAD,EAAKM,QAAL,CAAlB,CAAf;AACD,CAVM;AAYP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMa,iCAAiC,GAAG,CAC/CnB,EAD+C,EAE/CoB,qBAF+C,KAGiBlB,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;AAAEoB,EAAAA;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,oCAAoC,GAAG,CAClDrB,EADkD,EAElDsB,wBAFkD,KAGcpB,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;AAAEsB,EAAAA;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,2BAA2B,GAAG,CACzCvB,EADyC,EAEzCwB,eAFyC,KAGuBtB,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;AAAEwB,EAAAA;AAAF,CAAL,CAApB,CAJH;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,sBAAsB,GAAG,CACpCzB,EADoC,EAEpC0B,UAFoC,KAG4BxB,QAAQ,IACxEA,QAAQ,CAACL,mBAAmB,CAACG,EAAD,EAAK;AAAE0B,EAAAA;AAAF,CAAL,CAApB,CAJH","sourcesContent":["import deepEqual from 'deep-equal';\nimport { updateDashboardData } from '@deephaven/dashboard';\nimport { ThunkAction } from 'redux-thunk';\nimport { RootState } from '@deephaven/redux';\nimport { Action } from 'redux';\nimport { IdeConnection, IdeSession } from '@deephaven/jsapi-shim';\nimport { getLinksForDashboard } from './selectors';\nimport { FilterSet } from '../panels';\nimport { Link } from '../linker/LinkerUtils';\nimport { ColumnSelectionValidator } from '../linker/ColumnSelectionValidator';\n\nexport interface SessionWrapper {\n session: IdeSession;\n connection: IdeConnection;\n config: {\n type: string;\n id: string;\n };\n}\n/**\n * Set the session wrapper for the dashboard specified\n * @param id The ID of the dashboard to set the session for\n * @param sessionWrapper The session wrapper object to set for the dashboard\n */\nexport const setDashboardSessionWrapper = (\n id: string,\n sessionWrapper: SessionWrapper\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { sessionWrapper }));\n\n/**\n * Set the links for a given dashboard\n * @param id The ID of the dashboard to set the links for\n * @param links The links to set\n */\nexport const setDashboardLinks = (\n id: string,\n links: Link[]\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { links }));\n\n/**\n * Add links to the existing links in a dashboard. Filters out any duplicate links.\n * @param id The ID of the dashboard to add links to\n * @param newLinks The new links to add\n */\nexport const addDashboardLinks = (\n id: string,\n newLinks: Link[]\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => (\n dispatch,\n getState\n) => {\n const links = getLinksForDashboard(getState(), id);\n const filtered = newLinks.filter(\n newLink =>\n links.findIndex(\n link =>\n deepEqual(link.start, newLink.start) &&\n deepEqual(link.end, newLink.end)\n ) < 0\n );\n return dispatch(setDashboardLinks(id, links.concat(filtered)));\n};\n\n/**\n * Delete links from a dashboard\n * @param id The ID of the dashboard to delete links from\n * @param linkIds The link IDs to delete\n */\nexport const deleteDashboardLinks = (\n id: string,\n linkIds: string[]\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => (\n dispatch,\n getState\n) => {\n const links = getLinksForDashboard(getState(), id);\n const newLinks = links.filter(link => !linkIds.includes(link.id));\n return dispatch(setDashboardLinks(id, newLinks));\n};\n\n/**\n * Set the isolated linker panel ID for a dashboard\n * @param id The ID of the dashboard to set the isolated linker panel ID in\n * @param isolatedLinkerPanelId The isolated panel ID, or undefined to unset\n */\nexport const setDashboardIsolatedLinkerPanelId = (\n id: string,\n isolatedLinkerPanelId: string | string[] | undefined\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { isolatedLinkerPanelId }));\n\n/**\n * Set the column selection validator for a dashboard\n * @param id The ID of the dashboard to set the column selection validator on\n * @param columnSelectionValidator The column selection validator to set\n */\nexport const setDashboardColumnSelectionValidator = (\n id: string,\n columnSelectionValidator: ColumnSelectionValidator | undefined\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { columnSelectionValidator }));\n\n/**\n * Set the console settings for a dashboard\n * @param id The ID of the dashboard to set the console settings on\n * @param consoleSettings The console settings to set for the dashboard\n */\nexport const setDashboardConsoleSettings = (\n id: string,\n consoleSettings: Record<string, unknown>\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { consoleSettings }));\n\n/**\n * Set the filter sets for a specific dashboard\n * @param id The ID of the dashboard to set the filter sets for\n * @param filterSets The filter sets to set\n */\nexport const setDashboardFilterSets = (\n id: string,\n filterSets: FilterSet[]\n): ThunkAction<unknown, RootState, undefined, Action<unknown>> => dispatch =>\n dispatch(updateDashboardData(id, { filterSets }));\n"],"file":"actions.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["reducerRegistry","reducers","Object","entries","map","name","reducer","register"],"sources":["../../src/redux/index.ts"],"sourcesContent":["import { reducerRegistry } from '@deephaven/redux';\nimport reducers from './reducers';\n\nObject.entries(reducers).map(([name, reducer]) =>\n reducerRegistry.register(name, reducer)\n);\n\nexport * from './actions';\nexport * from './actionTypes';\nexport * from './selectors';\n"],"mappings":"AAAA,SAASA,eAAT,QAAgC,kBAAhC;OACOC,Q;AAEPC,MAAM,CAACC,OAAP,CAAeF,QAAf,EAAyBG,GAAzB,CAA6B;EAAA,IAAC,CAACC,IAAD,EAAOC,OAAP,CAAD;EAAA,OAC3BN,eAAe,CAACO,QAAhB,CAAyBF,IAAzB,EAA+BC,OAA/B,CAD2B;AAAA,CAA7B"}
1
+ {"version":3,"sources":["../../src/redux/index.ts"],"names":["reducerRegistry","reducers","Object","entries","map","name","reducer","register"],"mappings":"AAAA,SAASA,eAAT,QAAgC,kBAAhC;OACOC,Q;AAEPC,MAAM,CAACC,OAAP,CAAeF,QAAf,EAAyBG,GAAzB,CAA6B;AAAA,MAAC,CAACC,IAAD,EAAOC,OAAP,CAAD;AAAA,SAC3BN,eAAe,CAACO,QAAhB,CAAyBF,IAAzB,EAA+BC,OAA/B,CAD2B;AAAA,CAA7B","sourcesContent":["import { reducerRegistry } from '@deephaven/redux';\nimport reducers from './reducers';\n\nObject.entries(reducers).map(([name, reducer]) =>\n reducerRegistry.register(name, reducer)\n);\n\nexport * from './actions';\nexport * from './actionTypes';\nexport * from './selectors';\n"],"file":"index.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["sessionWrapper"],"sources":["../../../src/redux/reducers/index.ts"],"sourcesContent":["import sessionWrapper from './sessionWrapper';\n\nexport default { sessionWrapper };\n"],"mappings":"OAAOA,c;AAEP,eAAe;EAAEA;AAAF,CAAf"}
1
+ {"version":3,"sources":["../../../src/redux/reducers/index.ts"],"names":["sessionWrapper"],"mappings":"OAAOA,c;AAEP,eAAe;AAAEA,EAAAA;AAAF,CAAf","sourcesContent":["import sessionWrapper from './sessionWrapper';\n\nexport default { sessionWrapper };\n"],"file":"index.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"sessionWrapper.js","names":["replaceReducer","SET_SESSION_WRAPPER"],"sources":["../../../src/redux/reducers/sessionWrapper.ts"],"sourcesContent":["/**\n * Set the active session being used to communicate with the server.\n */\nimport { replaceReducer } from '@deephaven/redux';\nimport { SET_SESSION_WRAPPER } from '../actionTypes';\n\nexport default replaceReducer(SET_SESSION_WRAPPER, null);\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,cAAT,QAA+B,kBAA/B;SACSC,mB;AAET,eAAeD,cAAc,CAACC,mBAAD,EAAsB,IAAtB,CAA7B"}
1
+ {"version":3,"sources":["../../../src/redux/reducers/sessionWrapper.ts"],"names":["replaceReducer","SET_SESSION_WRAPPER"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,cAAT,QAA+B,kBAA/B;SACSC,mB;AAET,eAAeD,cAAc,CAACC,mBAAD,EAAsB,IAAtB,CAA7B","sourcesContent":["/**\n * Set the active session being used to communicate with the server.\n */\nimport { replaceReducer } from '@deephaven/redux';\nimport { SET_SESSION_WRAPPER } from '../actionTypes';\n\nexport default replaceReducer(SET_SESSION_WRAPPER, null);\n"],"file":"sessionWrapper.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectors.js","names":["getDashboardData","EMPTY_MAP","Map","EMPTY_ARRAY","Object","freeze","getColumnsForDashboard","store","dashboardId","columns","getFilterSetsForDashboard","filterSets","getInputFiltersForDashboard","filters","getTableMapForDashboard","tableMap","getIsolatedLinkerPanelIdForDashboard","isolatedLinkerPanelId","getLinksForDashboard","links","getColumnSelectionValidatorForDashboard","columnSelectionValidator","getDashboardConsoleSettings","consoleSettings","getDashboardSessionWrapper","sessionWrapper"],"sources":["../../src/redux/selectors.ts"],"sourcesContent":["import { getDashboardData } from '@deephaven/dashboard';\nimport { Column, Table } from '@deephaven/jsapi-shim';\nimport { RootState } from '@deephaven/redux';\nimport { FilterChangeEvent } from '../FilterPlugin';\nimport { Link } from '../linker/LinkerUtils';\nimport { FilterSet } from '../panels';\nimport { ColumnSelectionValidator } from '../linker/ColumnSelectionValidator';\nimport { SessionWrapper } from './actions';\n\nconst EMPTY_MAP = new Map();\n\nconst EMPTY_ARRAY = Object.freeze([]);\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get data for\n * @returns All column objects found in all panels in this dashboard\n */\nexport const getColumnsForDashboard = (\n store: RootState,\n dashboardId: string\n): Column[] =>\n (getDashboardData(store, dashboardId).columns ?? EMPTY_ARRAY) as Column[];\n\n/**\n * Get the known filter sets for the dashboard.\n * @param store The redux store\n * @param dashboardId The dashboard ID to get data for\n * @returns The filter sets set on this dashboard\n */\nexport const getFilterSetsForDashboard = (\n store: RootState,\n dashboardId: string\n): FilterSet[] =>\n (getDashboardData(store, dashboardId).filterSets ??\n EMPTY_ARRAY) as FilterSet[];\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get data for\n * @returns The filters set on this dashboard\n */\nexport const getInputFiltersForDashboard = (\n store: RootState,\n dashboardId: string\n): FilterChangeEvent[] =>\n (getDashboardData(store, dashboardId).filters ??\n EMPTY_ARRAY) as FilterChangeEvent[];\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get data for\n * @returns Map from panel ID to the table used in that panel\n */\nexport const getTableMapForDashboard = (\n store: RootState,\n dashboardId: string\n): Map<string, Table> =>\n (getDashboardData(store, dashboardId).tableMap ?? EMPTY_MAP) as Map<\n string,\n Table\n >;\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the data for\n * @returns The panel ID that is isolated, undefined if none is isolated\n */\nexport const getIsolatedLinkerPanelIdForDashboard = (\n store: RootState,\n dashboardId: string\n): string | undefined =>\n getDashboardData(store, dashboardId).isolatedLinkerPanelId as\n | string\n | undefined;\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the data from\n * @returns The links for the dashboard\n */\nexport const getLinksForDashboard = (\n store: RootState,\n dashboardId: string\n): Link[] =>\n (getDashboardData(store, dashboardId).links ?? EMPTY_ARRAY) as Link[];\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the column selection validators for\n * @returns Column selection validator active on a dashboard\n */\nexport const getColumnSelectionValidatorForDashboard = (\n store: RootState,\n dashboardId: string\n): ColumnSelectionValidator | undefined =>\n getDashboardData(store, dashboardId).columnSelectionValidator as\n | ColumnSelectionValidator\n | undefined;\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the console settings for\n * @returns Console settings for this dashboard\n */\nexport const getDashboardConsoleSettings = (\n store: RootState,\n dashboardId: string\n): Record<string, unknown> =>\n getDashboardData(store, dashboardId).consoleSettings as Record<\n string,\n unknown\n >;\n\n/**\n *\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the SessionWrapper for\n * @returns The session wrapper for the dashboard\n */\nexport const getDashboardSessionWrapper = (\n store: RootState,\n dashboardId: string\n): SessionWrapper =>\n getDashboardData(store, dashboardId).sessionWrapper as SessionWrapper;\n"],"mappings":"AAAA,SAASA,gBAAT,QAAiC,sBAAjC;AASA,IAAMC,SAAS,GAAG,IAAIC,GAAJ,EAAlB;AAEA,IAAMC,WAAW,GAAGC,MAAM,CAACC,MAAP,CAAc,EAAd,CAApB;AAEA;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,sBAAsB,GAAG,CACpCC,KADoC,EAEpCC,WAFoC;EAAA;;EAAA,gCAInCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCC,OAJF,yEAIaN,WAJb;AAAA,CAA/B;AAMP;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMO,yBAAyB,GAAG,CACvCH,KADuC,EAEvCC,WAFuC;EAAA;;EAAA,gCAItCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCG,UAJC,yEAKrCR,WALqC;AAAA,CAAlC;AAOP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMS,2BAA2B,GAAG,CACzCL,KADyC,EAEzCC,WAFyC;EAAA;;EAAA,iCAIxCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCK,OAJG,2EAKvCV,WALuC;AAAA,CAApC;AAOP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMW,uBAAuB,GAAG,CACrCP,KADqC,EAErCC,WAFqC;EAAA;;EAAA,gCAIpCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCO,QAJD,yEAIad,SAJb;AAAA,CAAhC;AASP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMe,oCAAoC,GAAG,CAClDT,KADkD,EAElDC,WAFkD,KAIlDR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCS,qBAJhC;AAQP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,oBAAoB,GAAG,CAClCX,KADkC,EAElCC,WAFkC;EAAA;;EAAA,gCAIjCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCW,KAJJ,yEAIahB,WAJb;AAAA,CAA7B;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMiB,uCAAuC,GAAG,CACrDb,KADqD,EAErDC,WAFqD,KAIrDR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCa,wBAJhC;AAQP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,2BAA2B,GAAG,CACzCf,KADyC,EAEzCC,WAFyC,KAIzCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCe,eAJhC;AASP;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,0BAA0B,GAAG,CACxCjB,KADwC,EAExCC,WAFwC,KAIxCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCiB,cAJhC"}
1
+ {"version":3,"sources":["../../src/redux/selectors.ts"],"names":["getDashboardData","EMPTY_MAP","Map","EMPTY_ARRAY","Object","freeze","getColumnsForDashboard","store","dashboardId","columns","getFilterSetsForDashboard","filterSets","getInputFiltersForDashboard","filters","getTableMapForDashboard","tableMap","getIsolatedLinkerPanelIdForDashboard","isolatedLinkerPanelId","getLinksForDashboard","links","getColumnSelectionValidatorForDashboard","columnSelectionValidator","getDashboardConsoleSettings","consoleSettings","getDashboardSessionWrapper","sessionWrapper"],"mappings":"AAAA,SAASA,gBAAT,QAAiC,sBAAjC;AASA,IAAMC,SAAS,GAAG,IAAIC,GAAJ,EAAlB;AAEA,IAAMC,WAAW,GAAGC,MAAM,CAACC,MAAP,CAAc,EAAd,CAApB;AAEA;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,sBAAsB,GAAG,CACpCC,KADoC,EAEpCC,WAFoC;AAAA;;AAAA,kCAInCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCC,OAJF,yEAIaN,WAJb;AAAA,CAA/B;AAMP;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMO,yBAAyB,GAAG,CACvCH,KADuC,EAEvCC,WAFuC;AAAA;;AAAA,kCAItCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCG,UAJC,yEAKrCR,WALqC;AAAA,CAAlC;AAOP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMS,2BAA2B,GAAG,CACzCL,KADyC,EAEzCC,WAFyC;AAAA;;AAAA,mCAIxCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCK,OAJG,2EAKvCV,WALuC;AAAA,CAApC;AAOP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMW,uBAAuB,GAAG,CACrCP,KADqC,EAErCC,WAFqC;AAAA;;AAAA,kCAIpCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCO,QAJD,yEAIad,SAJb;AAAA,CAAhC;AASP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMe,oCAAoC,GAAG,CAClDT,KADkD,EAElDC,WAFkD,KAIlDR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCS,qBAJhC;AAQP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,oBAAoB,GAAG,CAClCX,KADkC,EAElCC,WAFkC;AAAA;;AAAA,kCAIjCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCW,KAJJ,yEAIahB,WAJb;AAAA,CAA7B;AAMP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMiB,uCAAuC,GAAG,CACrDb,KADqD,EAErDC,WAFqD,KAIrDR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCa,wBAJhC;AAQP;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,2BAA2B,GAAG,CACzCf,KADyC,EAEzCC,WAFyC,KAIzCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCe,eAJhC;AASP;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,IAAMC,0BAA0B,GAAG,CACxCjB,KADwC,EAExCC,WAFwC,KAIxCR,gBAAgB,CAACO,KAAD,EAAQC,WAAR,CAAhB,CAAqCiB,cAJhC","sourcesContent":["import { getDashboardData } from '@deephaven/dashboard';\nimport { Column, Table } from '@deephaven/jsapi-shim';\nimport { RootState } from '@deephaven/redux';\nimport { FilterChangeEvent } from '../FilterPlugin';\nimport { Link } from '../linker/LinkerUtils';\nimport { FilterSet } from '../panels';\nimport { ColumnSelectionValidator } from '../linker/ColumnSelectionValidator';\nimport { SessionWrapper } from './actions';\n\nconst EMPTY_MAP = new Map();\n\nconst EMPTY_ARRAY = Object.freeze([]);\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get data for\n * @returns All column objects found in all panels in this dashboard\n */\nexport const getColumnsForDashboard = (\n store: RootState,\n dashboardId: string\n): Column[] =>\n (getDashboardData(store, dashboardId).columns ?? EMPTY_ARRAY) as Column[];\n\n/**\n * Get the known filter sets for the dashboard.\n * @param store The redux store\n * @param dashboardId The dashboard ID to get data for\n * @returns The filter sets set on this dashboard\n */\nexport const getFilterSetsForDashboard = (\n store: RootState,\n dashboardId: string\n): FilterSet[] =>\n (getDashboardData(store, dashboardId).filterSets ??\n EMPTY_ARRAY) as FilterSet[];\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get data for\n * @returns The filters set on this dashboard\n */\nexport const getInputFiltersForDashboard = (\n store: RootState,\n dashboardId: string\n): FilterChangeEvent[] =>\n (getDashboardData(store, dashboardId).filters ??\n EMPTY_ARRAY) as FilterChangeEvent[];\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get data for\n * @returns Map from panel ID to the table used in that panel\n */\nexport const getTableMapForDashboard = (\n store: RootState,\n dashboardId: string\n): Map<string, Table> =>\n (getDashboardData(store, dashboardId).tableMap ?? EMPTY_MAP) as Map<\n string,\n Table\n >;\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the data for\n * @returns The panel ID that is isolated, undefined if none is isolated\n */\nexport const getIsolatedLinkerPanelIdForDashboard = (\n store: RootState,\n dashboardId: string\n): string | undefined =>\n getDashboardData(store, dashboardId).isolatedLinkerPanelId as\n | string\n | undefined;\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the data from\n * @returns The links for the dashboard\n */\nexport const getLinksForDashboard = (\n store: RootState,\n dashboardId: string\n): Link[] =>\n (getDashboardData(store, dashboardId).links ?? EMPTY_ARRAY) as Link[];\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the column selection validators for\n * @returns Column selection validator active on a dashboard\n */\nexport const getColumnSelectionValidatorForDashboard = (\n store: RootState,\n dashboardId: string\n): ColumnSelectionValidator | undefined =>\n getDashboardData(store, dashboardId).columnSelectionValidator as\n | ColumnSelectionValidator\n | undefined;\n\n/**\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the console settings for\n * @returns Console settings for this dashboard\n */\nexport const getDashboardConsoleSettings = (\n store: RootState,\n dashboardId: string\n): Record<string, unknown> =>\n getDashboardData(store, dashboardId).consoleSettings as Record<\n string,\n unknown\n >;\n\n/**\n *\n * @param store The redux store\n * @param dashboardId The dashboard ID to get the SessionWrapper for\n * @returns The session wrapper for the dashboard\n */\nexport const getDashboardSessionWrapper = (\n store: RootState,\n dashboardId: string\n): SessionWrapper =>\n getDashboardData(store, dashboardId).sessionWrapper as SessionWrapper;\n"],"file":"selectors.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deephaven/dashboard-core-plugins",
3
- "version": "0.15.6-vite.21+822fd63",
3
+ "version": "0.15.7-beta.3+3214155",
4
4
  "description": "Deephaven Dashboard Core Plugins",
5
5
  "author": "Deephaven Data Labs LLC",
6
6
  "license": "Apache-2.0",
@@ -30,20 +30,20 @@
30
30
  "start": "cross-env NODE_ENV=development npm run watch"
31
31
  },
32
32
  "dependencies": {
33
- "@deephaven/chart": "^0.15.6-vite.21+822fd63",
34
- "@deephaven/components": "^0.15.6-vite.21+822fd63",
35
- "@deephaven/console": "^0.15.6-vite.21+822fd63",
36
- "@deephaven/dashboard": "^0.15.6-vite.21+822fd63",
37
- "@deephaven/file-explorer": "^0.15.6-vite.21+822fd63",
38
- "@deephaven/golden-layout": "^0.15.6-vite.21+822fd63",
39
- "@deephaven/grid": "^0.15.6-vite.21+822fd63",
40
- "@deephaven/icons": "^0.15.6-vite.21+822fd63",
41
- "@deephaven/iris-grid": "^0.15.6-vite.21+822fd63",
42
- "@deephaven/jsapi-shim": "^0.15.6-vite.21+822fd63",
43
- "@deephaven/jsapi-utils": "^0.15.6-vite.21+822fd63",
44
- "@deephaven/log": "^0.15.6-vite.21+822fd63",
45
- "@deephaven/redux": "^0.15.6-vite.21+822fd63",
46
- "@deephaven/utils": "^0.15.6-vite.21+822fd63",
33
+ "@deephaven/chart": "^0.15.7-beta.3+3214155",
34
+ "@deephaven/components": "^0.15.7-beta.3+3214155",
35
+ "@deephaven/console": "^0.15.7-beta.3+3214155",
36
+ "@deephaven/dashboard": "^0.15.7-beta.3+3214155",
37
+ "@deephaven/file-explorer": "^0.15.7-beta.3+3214155",
38
+ "@deephaven/golden-layout": "^0.15.7-beta.3+3214155",
39
+ "@deephaven/grid": "^0.15.7-beta.3+3214155",
40
+ "@deephaven/icons": "^0.15.7-beta.3+3214155",
41
+ "@deephaven/iris-grid": "^0.15.7-beta.3+3214155",
42
+ "@deephaven/jsapi-shim": "^0.15.7-beta.3+3214155",
43
+ "@deephaven/jsapi-utils": "^0.15.7-beta.3+3214155",
44
+ "@deephaven/log": "^0.15.7-beta.3+3214155",
45
+ "@deephaven/redux": "^0.15.7-beta.3+3214155",
46
+ "@deephaven/utils": "^0.15.7-beta.3+3214155",
47
47
  "@fortawesome/react-fontawesome": "^0.1.18",
48
48
  "classnames": "^2.3.1",
49
49
  "deep-equal": "^2.0.5",
@@ -54,6 +54,7 @@
54
54
  "prop-types": "^15.7.2",
55
55
  "react-markdown": "^6.0.2",
56
56
  "react-transition-group": "^4.4.2",
57
+ "reactstrap": "^8.10.0",
57
58
  "redux": "^4.2.0",
58
59
  "redux-thunk": "^2.4.1",
59
60
  "remark-gfm": "1.0.0",
@@ -65,8 +66,8 @@
65
66
  "react-redux": "^7.2.4"
66
67
  },
67
68
  "devDependencies": {
68
- "@deephaven/mocks": "^0.15.6-vite.21+822fd63",
69
- "@deephaven/tsconfig": "^0.15.6-vite.21+822fd63"
69
+ "@deephaven/mocks": "^0.15.7-beta.3+3214155",
70
+ "@deephaven/tsconfig": "^0.15.7-beta.3+3214155"
70
71
  },
71
72
  "files": [
72
73
  "dist"
@@ -74,5 +75,5 @@
74
75
  "publishConfig": {
75
76
  "access": "public"
76
77
  },
77
- "gitHead": "822fd633ddb5c62b896547cf90b1cad01799a346"
78
+ "gitHead": "32141554dfc8a60ff2629fd7aa4e65d79dd35c07"
78
79
  }