@deephaven/dashboard-core-plugins 0.26.1 → 0.26.2-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ConsolePlugin.js +3 -1
- package/dist/ConsolePlugin.js.map +1 -1
- package/dist/controls/ControlType.js +3 -1
- package/dist/controls/ControlType.js.map +1 -1
- package/dist/controls/dropdown-filter/DropdownFilter.js +3 -1
- package/dist/controls/dropdown-filter/DropdownFilter.js.map +1 -1
- package/dist/controls/input-filter/InputFilter.js +3 -1
- package/dist/controls/input-filter/InputFilter.js.map +1 -1
- package/dist/controls/markdown/MarkdownContainer.js +3 -1
- package/dist/controls/markdown/MarkdownContainer.js.map +1 -1
- package/dist/controls/markdown/MarkdownEditor.js +3 -1
- package/dist/controls/markdown/MarkdownEditor.js.map +1 -1
- package/dist/controls/markdown/MarkdownStartPage.js +3 -1
- package/dist/controls/markdown/MarkdownStartPage.js.map +1 -1
- package/dist/controls/markdown/MarkdownUtils.js +3 -1
- package/dist/controls/markdown/MarkdownUtils.js.map +1 -1
- package/dist/events/ChartEvent.js +3 -1
- package/dist/events/ChartEvent.js.map +1 -1
- package/dist/events/ConsoleEvent.js +3 -1
- package/dist/events/ConsoleEvent.js.map +1 -1
- package/dist/events/InputFilterEvent.js +3 -1
- package/dist/events/InputFilterEvent.js.map +1 -1
- package/dist/events/IrisGridEvent.js +3 -1
- package/dist/events/IrisGridEvent.js.map +1 -1
- package/dist/events/NotebookEvent.js +3 -1
- package/dist/events/NotebookEvent.js.map +1 -1
- package/dist/events/PQEvent.js +3 -1
- package/dist/events/PQEvent.js.map +1 -1
- package/dist/events/PandasEvent.js +3 -1
- package/dist/events/PandasEvent.js.map +1 -1
- package/dist/events/TabEvent.js +3 -1
- package/dist/events/TabEvent.js.map +1 -1
- package/dist/linker/Linker.js +3 -1
- package/dist/linker/Linker.js.map +1 -1
- package/dist/linker/LinkerLink.js +3 -1
- package/dist/linker/LinkerLink.js.map +1 -1
- package/dist/linker/LinkerOverlayContent.js +3 -1
- package/dist/linker/LinkerOverlayContent.js.map +1 -1
- package/dist/linker/LinkerUtils.js +3 -1
- package/dist/linker/LinkerUtils.js.map +1 -1
- package/dist/panels/ChartColumnSelectorOverlay.js.map +1 -1
- package/dist/panels/ChartFilterOverlay.js.map +1 -1
- package/dist/panels/ChartPanel.js +3 -1
- package/dist/panels/ChartPanel.js.map +1 -1
- package/dist/panels/CommandHistoryPanel.js +3 -1
- package/dist/panels/CommandHistoryPanel.js.map +1 -1
- package/dist/panels/ConsolePanel.js +3 -1
- package/dist/panels/ConsolePanel.js.map +1 -1
- package/dist/panels/DropdownFilterPanel.js +3 -1
- package/dist/panels/DropdownFilterPanel.js.map +1 -1
- package/dist/panels/FileExplorerPanel.js +3 -1
- package/dist/panels/FileExplorerPanel.js.map +1 -1
- package/dist/panels/FilterSetManager.js +3 -1
- package/dist/panels/FilterSetManager.js.map +1 -1
- package/dist/panels/FilterSetManagerPanel.js +3 -1
- package/dist/panels/FilterSetManagerPanel.js.map +1 -1
- package/dist/panels/InputFilterPanel.js +3 -1
- package/dist/panels/InputFilterPanel.js.map +1 -1
- package/dist/panels/IrisGridPanel.js +3 -1
- package/dist/panels/IrisGridPanel.js.map +1 -1
- package/dist/panels/IrisGridPanelTooltip.js.map +1 -1
- package/dist/panels/LogPanel.js +3 -1
- package/dist/panels/LogPanel.js.map +1 -1
- package/dist/panels/MarkdownNotebook.js +3 -1
- package/dist/panels/MarkdownNotebook.js.map +1 -1
- package/dist/panels/MarkdownPanel.js +3 -1
- package/dist/panels/MarkdownPanel.js.map +1 -1
- package/dist/panels/MockFileStorage.js +3 -1
- package/dist/panels/MockFileStorage.js.map +1 -1
- package/dist/panels/MockFileStorageTable.js +3 -1
- package/dist/panels/MockFileStorageTable.js.map +1 -1
- package/dist/panels/NotebookPanel.js +3 -1
- package/dist/panels/NotebookPanel.js.map +1 -1
- package/dist/panels/PandasPanel.js +5 -2
- package/dist/panels/PandasPanel.js.map +1 -1
- package/dist/panels/Panel.js +3 -1
- package/dist/panels/Panel.js.map +1 -1
- package/dist/panels/PanelContextMenu.js +3 -1
- package/dist/panels/PanelContextMenu.js.map +1 -1
- package/dist/panels/RenameDialog.js +3 -1
- package/dist/panels/RenameDialog.js.map +1 -1
- package/dist/panels/WidgetPanel.js +3 -1
- package/dist/panels/WidgetPanel.js.map +1 -1
- package/dist/panels/WidgetPanelTooltip.js.map +1 -1
- package/package.json +21 -21
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
1
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
2
4
|
import React, { PureComponent } from 'react';
|
|
3
5
|
import classNames from 'classnames';
|
|
4
6
|
import { Button, Popper } from '@deephaven/components';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenameDialog.js","names":["React","PureComponent","classNames","Button","Popper","RenameDialog","constructor","props","handleRenameDialogOpened","bind","handleRenameInputChange","handleRenameCancel","handleRenameSubmit","renameInputRef","createRef","value","state","valueWasValidated","componentDidUpdate","prevProps","isShown","prevIsShown","resetState","setState","current","focus","event","target","onCancel","stopPropagation","preventDefault","newTitle","trim","undefined","onSubmit","renderRenameDialog","isShared","isOwner","itemType","render","placement"],"sources":["../../src/panels/RenameDialog.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n FormEvent,\n PureComponent,\n ReactElement,\n RefObject,\n} from 'react';\nimport classNames from 'classnames';\nimport { Button, Popper } from '@deephaven/components';\n\ninterface RenameDialogProps {\n isShared: boolean;\n isOwner: boolean;\n isShown: boolean;\n itemType: string;\n onSubmit: (title: string) => void;\n onCancel: () => void;\n value?: string | null;\n}\n\ninterface RenameDialogState {\n value?: string | null;\n valueWasValidated: boolean;\n}\n\nexport default class RenameDialog extends PureComponent<\n RenameDialogProps,\n RenameDialogState\n> {\n static defaultProps = {\n isShared: false,\n isOwner: true,\n itemType: 'Item',\n value: '',\n };\n\n constructor(props: RenameDialogProps) {\n super(props);\n\n this.handleRenameDialogOpened = this.handleRenameDialogOpened.bind(this);\n this.handleRenameInputChange = this.handleRenameInputChange.bind(this);\n this.handleRenameCancel = this.handleRenameCancel.bind(this);\n this.handleRenameSubmit = this.handleRenameSubmit.bind(this);\n\n this.renameInputRef = React.createRef();\n\n const { value } = props;\n\n this.state = {\n value,\n valueWasValidated: false,\n };\n }\n\n componentDidUpdate(prevProps: RenameDialogProps): void {\n const { isShown: prevIsShown } = prevProps;\n const { isShown } = this.props;\n // Reset the state on dialog shown and not on the `value` prop change\n // so the input keeps the internal value while the dialog is open.\n // Useful in case the `value` prop update is triggered externally\n // i.e. by someone else renaming the same shared dashboard\n if (isShown && !prevIsShown) {\n this.resetState();\n }\n }\n\n renameInputRef: RefObject<HTMLInputElement>;\n\n resetState(): void {\n const { value } = this.props;\n this.setState({ value, valueWasValidated: false });\n }\n\n handleRenameDialogOpened(): void {\n this.renameInputRef?.current?.focus();\n }\n\n handleRenameInputChange(event: ChangeEvent<HTMLInputElement>): void {\n this.setState({ value: event.target.value });\n }\n\n handleRenameCancel(): void {\n const { onCancel } = this.props;\n onCancel();\n }\n\n handleRenameSubmit(event: FormEvent<HTMLFormElement>): void {\n event.stopPropagation();\n event.preventDefault();\n const { value } = this.state;\n const newTitle = value?.trim();\n if (newTitle !== undefined && newTitle !== '') {\n const { onSubmit } = this.props;\n onSubmit(newTitle);\n } else {\n this.setState({ value: newTitle, valueWasValidated: true });\n }\n }\n\n renderRenameDialog(): ReactElement {\n const { isShared, isOwner, itemType } = this.props;\n const { value, valueWasValidated } = this.state;\n\n return (\n <form\n className={classNames('p-3', { 'was-validated': valueWasValidated })}\n onSubmit={this.handleRenameSubmit}\n noValidate\n role=\"presentation\"\n onMouseDown={event => {\n // block events in the NewTabScreen ItemList\n event.stopPropagation();\n }}\n onMouseUp={event => {\n event.stopPropagation();\n }}\n >\n <div className=\"form-group\">\n <label htmlFor={`rename-dialog-${itemType}-input`}>\n Rename {itemType}\n </label>\n <input\n type=\"text\"\n className=\"form-control\"\n id={`rename-dialog-${itemType}-input`}\n value={value ?? undefined}\n ref={this.renameInputRef}\n onChange={this.handleRenameInputChange}\n required\n />\n <div className=\"invalid-feedback\">\n {itemType} name cannot be empty\n </div>\n {(isShared || !isOwner) && (\n <div className=\"pt-2\">\n Renaming this {itemType} will rename for all users.\n </div>\n )}\n </div>\n\n <div className=\"text-right\">\n <Button\n kind=\"secondary\"\n className=\"mr-2\"\n onClick={this.handleRenameCancel}\n >\n Cancel\n </Button>\n <Button kind=\"primary\" type=\"submit\">\n Rename\n </Button>\n </div>\n </form>\n );\n }\n\n render(): ReactElement {\n const { isShown, onCancel } = this.props;\n return (\n <Popper\n isShown={isShown}\n onEntered={this.handleRenameDialogOpened}\n onExited={onCancel}\n options={{\n placement: 'bottom',\n }}\n interactive\n closeOnBlur\n >\n {this.renderRenameDialog()}\n </Popper>\n );\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"RenameDialog.js","names":["React","PureComponent","classNames","Button","Popper","RenameDialog","constructor","props","handleRenameDialogOpened","bind","handleRenameInputChange","handleRenameCancel","handleRenameSubmit","renameInputRef","createRef","value","state","valueWasValidated","componentDidUpdate","prevProps","isShown","prevIsShown","resetState","setState","current","focus","event","target","onCancel","stopPropagation","preventDefault","newTitle","trim","undefined","onSubmit","renderRenameDialog","isShared","isOwner","itemType","render","placement"],"sources":["../../src/panels/RenameDialog.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n FormEvent,\n PureComponent,\n ReactElement,\n RefObject,\n} from 'react';\nimport classNames from 'classnames';\nimport { Button, Popper } from '@deephaven/components';\n\ninterface RenameDialogProps {\n isShared: boolean;\n isOwner: boolean;\n isShown: boolean;\n itemType: string;\n onSubmit: (title: string) => void;\n onCancel: () => void;\n value?: string | null;\n}\n\ninterface RenameDialogState {\n value?: string | null;\n valueWasValidated: boolean;\n}\n\nexport default class RenameDialog extends PureComponent<\n RenameDialogProps,\n RenameDialogState\n> {\n static defaultProps = {\n isShared: false,\n isOwner: true,\n itemType: 'Item',\n value: '',\n };\n\n constructor(props: RenameDialogProps) {\n super(props);\n\n this.handleRenameDialogOpened = this.handleRenameDialogOpened.bind(this);\n this.handleRenameInputChange = this.handleRenameInputChange.bind(this);\n this.handleRenameCancel = this.handleRenameCancel.bind(this);\n this.handleRenameSubmit = this.handleRenameSubmit.bind(this);\n\n this.renameInputRef = React.createRef();\n\n const { value } = props;\n\n this.state = {\n value,\n valueWasValidated: false,\n };\n }\n\n componentDidUpdate(prevProps: RenameDialogProps): void {\n const { isShown: prevIsShown } = prevProps;\n const { isShown } = this.props;\n // Reset the state on dialog shown and not on the `value` prop change\n // so the input keeps the internal value while the dialog is open.\n // Useful in case the `value` prop update is triggered externally\n // i.e. by someone else renaming the same shared dashboard\n if (isShown && !prevIsShown) {\n this.resetState();\n }\n }\n\n renameInputRef: RefObject<HTMLInputElement>;\n\n resetState(): void {\n const { value } = this.props;\n this.setState({ value, valueWasValidated: false });\n }\n\n handleRenameDialogOpened(): void {\n this.renameInputRef?.current?.focus();\n }\n\n handleRenameInputChange(event: ChangeEvent<HTMLInputElement>): void {\n this.setState({ value: event.target.value });\n }\n\n handleRenameCancel(): void {\n const { onCancel } = this.props;\n onCancel();\n }\n\n handleRenameSubmit(event: FormEvent<HTMLFormElement>): void {\n event.stopPropagation();\n event.preventDefault();\n const { value } = this.state;\n const newTitle = value?.trim();\n if (newTitle !== undefined && newTitle !== '') {\n const { onSubmit } = this.props;\n onSubmit(newTitle);\n } else {\n this.setState({ value: newTitle, valueWasValidated: true });\n }\n }\n\n renderRenameDialog(): ReactElement {\n const { isShared, isOwner, itemType } = this.props;\n const { value, valueWasValidated } = this.state;\n\n return (\n <form\n className={classNames('p-3', { 'was-validated': valueWasValidated })}\n onSubmit={this.handleRenameSubmit}\n noValidate\n role=\"presentation\"\n onMouseDown={event => {\n // block events in the NewTabScreen ItemList\n event.stopPropagation();\n }}\n onMouseUp={event => {\n event.stopPropagation();\n }}\n >\n <div className=\"form-group\">\n <label htmlFor={`rename-dialog-${itemType}-input`}>\n Rename {itemType}\n </label>\n <input\n type=\"text\"\n className=\"form-control\"\n id={`rename-dialog-${itemType}-input`}\n value={value ?? undefined}\n ref={this.renameInputRef}\n onChange={this.handleRenameInputChange}\n required\n />\n <div className=\"invalid-feedback\">\n {itemType} name cannot be empty\n </div>\n {(isShared || !isOwner) && (\n <div className=\"pt-2\">\n Renaming this {itemType} will rename for all users.\n </div>\n )}\n </div>\n\n <div className=\"text-right\">\n <Button\n kind=\"secondary\"\n className=\"mr-2\"\n onClick={this.handleRenameCancel}\n >\n Cancel\n </Button>\n <Button kind=\"primary\" type=\"submit\">\n Rename\n </Button>\n </div>\n </form>\n );\n }\n\n render(): ReactElement {\n const { isShown, onCancel } = this.props;\n return (\n <Popper\n isShown={isShown}\n onEntered={this.handleRenameDialogOpened}\n onExited={onCancel}\n options={{\n placement: 'bottom',\n }}\n interactive\n closeOnBlur\n >\n {this.renderRenameDialog()}\n </Popper>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
1
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
2
4
|
import React, { PureComponent } from 'react';
|
|
3
5
|
import classNames from 'classnames';
|
|
4
6
|
import memoize from 'memoize-one';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetPanel.js","names":["React","PureComponent","classNames","memoize","ContextActions","copyToClipboard","Panel","WidgetPanelTooltip","WidgetPanel","constructor","props","showTabTooltip","glContainer","widgetType","widgetName","description","handleSessionClosed","bind","handleSessionOpened","handleCopyName","state","isClientDisconnected","isPanelDisconnected","isWidgetDisconnected","isWaitingForReconnect","isPanelInactive","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 type { Container, EventEmitter } from '@deephaven/golden-layout';\nimport { ContextActions } from '@deephaven/components';\nimport { copyToClipboard } from '@deephaven/utils';\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 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,"file":"WidgetPanel.js","names":["React","PureComponent","classNames","memoize","ContextActions","copyToClipboard","Panel","WidgetPanelTooltip","WidgetPanel","constructor","props","showTabTooltip","glContainer","widgetType","widgetName","description","handleSessionClosed","bind","handleSessionOpened","handleCopyName","state","isClientDisconnected","isPanelDisconnected","isWidgetDisconnected","isWaitingForReconnect","isPanelInactive","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 type { Container, EventEmitter } from '@deephaven/golden-layout';\nimport { ContextActions } from '@deephaven/components';\nimport { copyToClipboard } from '@deephaven/utils';\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 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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetPanelTooltip.js","names":["React","PropTypes","CopyButton","GLPropTypes","LayoutUtils","WidgetPanelTooltip","props","widgetType","widgetName","glContainer","description","children","panelTitle","getTitleFromContainer","propTypes","Container","isRequired","string","node","defaultProps"],"sources":["../../src/panels/WidgetPanelTooltip.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\nimport { CopyButton } from '@deephaven/components';\nimport { GLPropTypes, LayoutUtils } from '@deephaven/dashboard';\nimport './WidgetPanelTooltip.scss';\nimport { ReactElement } from 'react-markdown';\nimport type { Container } from '@deephaven/golden-layout';\n\ninterface WidgetPanelTooltipProps {\n glContainer: Container;\n widgetType: string;\n widgetName: string;\n description: string;\n children: ReactNode;\n}\nfunction WidgetPanelTooltip(props: WidgetPanelTooltipProps): ReactElement {\n const { widgetType, widgetName, glContainer, description, children } = props;\n const panelTitle = LayoutUtils.getTitleFromContainer(glContainer);\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 <CopyButton\n className=\"tab-tooltip-copy\"\n tooltip=\"Copy name\"\n copy={widgetName}\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,KAAK,MAAqB,OAAO;AACxC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,UAAU,QAAQ,uBAAuB;AAClD,SAASC,WAAW,EAAEC,WAAW,QAAQ,sBAAsB;AAAC;AAYhE,SAASC,kBAAkB,CAACC,KAA8B,EAAgB;EACxE,IAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC,WAAW;IAAEC,WAAW;IAAEC;EAAS,CAAC,GAAGL,KAAK;EAC5E,IAAMM,UAAU,GAAGR,WAAW,CAACS,qBAAqB,CAACJ,WAAW,CAAC;EAEjE,oBACE;IAAK,SAAS,EAAC;EAAuB,gBACpC;IAAK,SAAS,EAAC;EAAmC,gBAChD;IAAM,SAAS,EAAC;EAAmB,gBACjC,+BAAIF,UAAU,
|
|
1
|
+
{"version":3,"file":"WidgetPanelTooltip.js","names":["React","PropTypes","CopyButton","GLPropTypes","LayoutUtils","WidgetPanelTooltip","props","widgetType","widgetName","glContainer","description","children","panelTitle","getTitleFromContainer","propTypes","Container","isRequired","string","node","defaultProps"],"sources":["../../src/panels/WidgetPanelTooltip.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\nimport { CopyButton } from '@deephaven/components';\nimport { GLPropTypes, LayoutUtils } from '@deephaven/dashboard';\nimport './WidgetPanelTooltip.scss';\nimport { ReactElement } from 'react-markdown';\nimport type { Container } from '@deephaven/golden-layout';\n\ninterface WidgetPanelTooltipProps {\n glContainer: Container;\n widgetType: string;\n widgetName: string;\n description: string;\n children: ReactNode;\n}\nfunction WidgetPanelTooltip(props: WidgetPanelTooltipProps): ReactElement {\n const { widgetType, widgetName, glContainer, description, children } = props;\n const panelTitle = LayoutUtils.getTitleFromContainer(glContainer);\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 <CopyButton\n className=\"tab-tooltip-copy\"\n tooltip=\"Copy name\"\n copy={widgetName}\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,KAAK,MAAqB,OAAO;AACxC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,UAAU,QAAQ,uBAAuB;AAClD,SAASC,WAAW,EAAEC,WAAW,QAAQ,sBAAsB;AAAC;AAYhE,SAASC,kBAAkB,CAACC,KAA8B,EAAgB;EACxE,IAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC,WAAW;IAAEC,WAAW;IAAEC;EAAS,CAAC,GAAGL,KAAK;EAC5E,IAAMM,UAAU,GAAGR,WAAW,CAACS,qBAAqB,CAACJ,WAAW,CAAC;EAEjE,oBACE;IAAK,SAAS,EAAC;EAAuB,gBACpC;IAAK,SAAS,EAAC;EAAmC,gBAChD;IAAM,SAAS,EAAC;EAAmB,gBACjC,+BAAIF,UAAU,EAAC,QAAM,CAAI,CACpB,eACP;IAAM,SAAS,EAAC;EAAkB,GAAEC,UAAU,CAAQ,eACtD,oBAAC,UAAU;IACT,SAAS,EAAC,kBAAkB;IAC5B,OAAO,EAAC,WAAW;IACnB,IAAI,EAAEA;EAAW,EACjB,CACE,EACLA,UAAU,KAAKI,UAAU,iBACxB;IAAK,SAAS,EAAC;EAAK,gBAClB;IAAM,SAAS,EAAC;EAAmB,gBACjC,+BAAG,cAAY,CAAI,CACd,eACP;IAAM,SAAS,EAAC;EAAkB,GAAEA,UAAU,CAAQ,CAEzD,EACAF,WAAW,iBACV;IAAK,SAAS,EAAC;EAAK,gBAClB;IAAM,SAAS,EAAC;EAAyB,GAAEA,WAAW,CAAQ,CAEjE,EACAC,QAAQ,CACL;AAEV;AAEAN,kBAAkB,CAACS,SAAS,GAAG;EAC7BL,WAAW,EAAEN,WAAW,CAACY,SAAS,CAACC,UAAU;EAC7CT,UAAU,EAAEN,SAAS,CAACgB,MAAM;EAC5BT,UAAU,EAAEP,SAAS,CAACgB,MAAM;EAC5BP,WAAW,EAAET,SAAS,CAACgB,MAAM;EAC7BN,QAAQ,EAAEV,SAAS,CAACiB;AACtB,CAAC;AAEDb,kBAAkB,CAACc,YAAY,GAAG;EAChCZ,UAAU,EAAE,EAAE;EACdC,UAAU,EAAE,EAAE;EACdE,WAAW,EAAE,IAAI;EACjBC,QAAQ,EAAE;AACZ,CAAC;AAED,eAAeN,kBAAkB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deephaven/dashboard-core-plugins",
|
|
3
|
-
"version": "0.26.1",
|
|
3
|
+
"version": "0.26.2-beta.1+2bf1a88",
|
|
4
4
|
"description": "Deephaven Dashboard Core Plugins",
|
|
5
5
|
"author": "Deephaven Data Labs LLC",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -22,23 +22,23 @@
|
|
|
22
22
|
"build:sass": "sass --embed-sources --load-path=../../node_modules ./src:./dist"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@deephaven/chart": "^0.26.
|
|
26
|
-
"@deephaven/components": "^0.26.1",
|
|
27
|
-
"@deephaven/console": "^0.26.1",
|
|
28
|
-
"@deephaven/dashboard": "^0.26.1",
|
|
29
|
-
"@deephaven/file-explorer": "^0.26.1",
|
|
30
|
-
"@deephaven/filters": "^0.26.
|
|
31
|
-
"@deephaven/golden-layout": "^0.26.1",
|
|
32
|
-
"@deephaven/grid": "^0.26.1",
|
|
33
|
-
"@deephaven/icons": "^0.26.
|
|
34
|
-
"@deephaven/iris-grid": "^0.26.1",
|
|
35
|
-
"@deephaven/jsapi-shim": "^0.26.
|
|
36
|
-
"@deephaven/jsapi-utils": "^0.26.
|
|
37
|
-
"@deephaven/log": "^0.26.
|
|
38
|
-
"@deephaven/react-hooks": "^0.26.
|
|
39
|
-
"@deephaven/redux": "^0.26.
|
|
40
|
-
"@deephaven/storage": "^0.26.
|
|
41
|
-
"@deephaven/utils": "^0.26.
|
|
25
|
+
"@deephaven/chart": "^0.26.2-beta.1+2bf1a88",
|
|
26
|
+
"@deephaven/components": "^0.26.2-beta.1+2bf1a88",
|
|
27
|
+
"@deephaven/console": "^0.26.2-beta.1+2bf1a88",
|
|
28
|
+
"@deephaven/dashboard": "^0.26.2-beta.1+2bf1a88",
|
|
29
|
+
"@deephaven/file-explorer": "^0.26.2-beta.1+2bf1a88",
|
|
30
|
+
"@deephaven/filters": "^0.26.2-beta.1+2bf1a88",
|
|
31
|
+
"@deephaven/golden-layout": "^0.26.2-beta.1+2bf1a88",
|
|
32
|
+
"@deephaven/grid": "^0.26.2-beta.1+2bf1a88",
|
|
33
|
+
"@deephaven/icons": "^0.26.2-beta.1+2bf1a88",
|
|
34
|
+
"@deephaven/iris-grid": "^0.26.2-beta.1+2bf1a88",
|
|
35
|
+
"@deephaven/jsapi-shim": "^0.26.2-beta.1+2bf1a88",
|
|
36
|
+
"@deephaven/jsapi-utils": "^0.26.2-beta.1+2bf1a88",
|
|
37
|
+
"@deephaven/log": "^0.26.2-beta.1+2bf1a88",
|
|
38
|
+
"@deephaven/react-hooks": "^0.26.2-beta.1+2bf1a88",
|
|
39
|
+
"@deephaven/redux": "^0.26.2-beta.1+2bf1a88",
|
|
40
|
+
"@deephaven/storage": "^0.26.2-beta.1+2bf1a88",
|
|
41
|
+
"@deephaven/utils": "^0.26.2-beta.1+2bf1a88",
|
|
42
42
|
"@fortawesome/react-fontawesome": "^0.2.0",
|
|
43
43
|
"classnames": "^2.3.1",
|
|
44
44
|
"deep-equal": "^2.0.5",
|
|
@@ -61,8 +61,8 @@
|
|
|
61
61
|
"react-redux": "^7.2.4"
|
|
62
62
|
},
|
|
63
63
|
"devDependencies": {
|
|
64
|
-
"@deephaven/mocks": "^0.26.
|
|
65
|
-
"@deephaven/tsconfig": "^0.26.
|
|
64
|
+
"@deephaven/mocks": "^0.26.2-beta.1+2bf1a88",
|
|
65
|
+
"@deephaven/tsconfig": "^0.26.2-beta.1+2bf1a88"
|
|
66
66
|
},
|
|
67
67
|
"files": [
|
|
68
68
|
"dist"
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"publishConfig": {
|
|
71
71
|
"access": "public"
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "2bf1a885feb422ebf6ce3d7752d289e374df2233"
|
|
74
74
|
}
|