@deephaven/console 1.9.1-beta.2 → 1.9.1-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.
- package/dist/Console.d.ts +8 -1
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +13 -4
- package/dist/Console.js.map +1 -1
- package/dist/command-history/CommandHistoryItemTooltip.d.ts +0 -1
- package/dist/command-history/CommandHistoryItemTooltip.d.ts.map +1 -1
- package/dist/command-history/CommandHistoryItemTooltip.js +1 -9
- package/dist/command-history/CommandHistoryItemTooltip.js.map +1 -1
- package/dist/command-history/CommandHistoryStorage.d.ts +2 -0
- package/dist/command-history/CommandHistoryStorage.d.ts.map +1 -1
- package/dist/command-history/CommandHistoryStorage.js.map +1 -1
- package/dist/console-history/ConsoleHistory.css +8 -0
- package/dist/console-history/ConsoleHistory.css.map +1 -1
- package/dist/console-history/ConsoleHistory.d.ts +1 -0
- package/dist/console-history/ConsoleHistory.d.ts.map +1 -1
- package/dist/console-history/ConsoleHistory.js +4 -2
- package/dist/console-history/ConsoleHistory.js.map +1 -1
- package/dist/console-history/ConsoleHistoryItem.css +57 -0
- package/dist/console-history/ConsoleHistoryItem.css.map +1 -1
- package/dist/console-history/ConsoleHistoryItem.d.ts +5 -1
- package/dist/console-history/ConsoleHistoryItem.d.ts.map +1 -1
- package/dist/console-history/ConsoleHistoryItem.js +21 -5
- package/dist/console-history/ConsoleHistoryItem.js.map +1 -1
- package/dist/console-history/ConsoleHistoryItemActions.d.ts +14 -0
- package/dist/console-history/ConsoleHistoryItemActions.d.ts.map +1 -0
- package/dist/console-history/ConsoleHistoryItemActions.js +60 -0
- package/dist/console-history/ConsoleHistoryItemActions.js.map +1 -0
- package/dist/console-history/ConsoleHistoryItemTooltip.d.ts +8 -0
- package/dist/console-history/ConsoleHistoryItemTooltip.d.ts.map +1 -0
- package/dist/console-history/ConsoleHistoryItemTooltip.js +51 -0
- package/dist/console-history/ConsoleHistoryItemTooltip.js.map +1 -0
- package/dist/console-history/ConsoleHistoryTypes.d.ts +4 -0
- package/dist/console-history/ConsoleHistoryTypes.d.ts.map +1 -1
- package/dist/console-history/ConsoleHistoryTypes.js.map +1 -1
- package/package.json +14 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../../../node_modules/@deephaven/components/scss/custom.scss","../../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss","../../src/console-history/ConsoleHistory.scss","../../src/common/_ConsoleVariables.scss"],"names":[],"mappings":"AAAA;AC6LA;ACvLA;EACE;;;AAGF;AAAA;EAEE,aD+HsB;EC9HtB,WCbU;EDcV,aCbY;EDcZ;;AAEA;AAAA;AAAA;AAAA;EAEE;EACA;EACA,YAjBmB;EAkBnB;EACA;EACA,ODNO;ECOP;;AAGF;AAAA;EACE;EACA;EACA;;AAIA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA","file":"ConsoleHistory.css","sourcesContent":["/* stylelint-disable scss/at-import-no-partial-leading-underscore */\n// Consumers should be able to resolve bootstrap/ to node_modules/bootstrap\n\n//Make bootstrap functions available for use in overrides\n@import 'bootstrap/scss/_functions.scss';\n@import './bootstrap_overrides.scss';\n\n//_variable imports come after bootstrap default overrides,\n// makes all other variables and mixins from bootstrap available\n/// with just importing customer.scss\n@import 'bootstrap/scss/_variables.scss';\n@import 'bootstrap/scss/_mixins.scss';\n\n//New variables come after imports\n@import './new_variables.scss';\n@import './util.scss';\n","// Styling overrides for bootstrap\n@use 'sass:map';\n\n// Override / set color variables\n$red: var(--dh-color-visual-red);\n$orange: var(--dh-color-visual-orange);\n$yellow: var(--dh-color-visual-yellow);\n$green: var(--dh-color-visual-green);\n$blue: var(--dh-color-visual-blue);\n$purple: var(--dh-color-visual-purple);\n\n// Fallback colors are used if theme isn't loaded\n// this is required for error messages if the API doesn't load\n\n//Define our Gray scale\n$gray-100: var(--dh-color-gray-900, #fcfcfa);\n$gray-200: var(--dh-color-gray-800);\n$gray-300: var(--dh-color-gray-700);\n$gray-400: var(--dh-color-gray-600);\n$gray-500: var(--dh-color-gray-500);\n// intentional duplicate, scale doesn't line up otherwise\n// as we have gray-850 and spectrum doesn't and it is needed\n$gray-600: var(--dh-color-gray-500);\n$gray-700: var(--dh-color-gray-400);\n$gray-800: var(--dh-color-gray-300);\n$gray-850: var(--dh-color-gray-200);\n$gray-900: var(--dh-color-gray-75);\n$black: var(--dh-color-black, #1a171a);\n$white: var(--dh-color-white, #f0f0ee);\n\n//Define some UI colors\n$interfacegray: var(--dh-color-content-bg, #2d2a2e);\n$interfaceblue: var(--dh-color-accent-bg);\n$interfacewhite: $white;\n$interfaceblack: $black;\n$content-bg: var(--dh-color-content-bg, #2d2a2e);\n$background: var(--dh-color-bg, #1a171a);\n$foreground: var(--dh-color-fg, #f0f0ee);\n\n// Extend default Bootstrap $grays map\n$grays-custom: (\n '850': $gray-850,\n);\n$grays: () !default;\n$grays: map-merge($grays, $grays-custom);\n\n// Extend default Bootstrap $colors map\n$colors-custom: (\n 'black': $black,\n);\n$colors: () !default;\n$colors: map-merge($colors, $colors-custom);\n\n// Override default Bootstrap $theme-colors map by mapping each key to itself.\n// These will then be re-mapped inside of `button-outline-variant` and\n// `button-outline-variant` mixins in `bootstrap_override_mixins_buttons.scss`\n$theme-colors-self-map: ();\n@each $key\n in (\n 'primary',\n 'secondary',\n 'success',\n 'info',\n 'warning',\n 'danger',\n 'light',\n 'dark'\n )\n{\n $theme-colors-self-map: map.set($theme-colors-self-map, $key, $key);\n}\n$theme-colors: () !default;\n$theme-colors: map-merge($theme-colors, $theme-colors-self-map);\n\n// Used by bootstrap_override_mixins_buttons.scss to map Bootstrap colors to\n// DH semantic colors\n$bootstrap-dh-semantic-map: (\n 'primary': 'accent',\n 'secondary': 'neutral',\n 'success': 'positive',\n 'info': 'info',\n 'warning': 'notice',\n 'danger': 'negative',\n // We shouldn't be using these, but mapping so they work with our custom\n // `color-yiq` mixin. If we find a way to remove $light + $dark that are\n // defined in Bootstrap _variables.scss, we should remove these\n 'light': 'neutral',\n 'dark': 'neutral',\n);\n\n//Set default colors\n$body-bg: $black;\n$body-color: $interfacewhite;\n\n// Set brand colors\n$primary: var(--dh-color-accent-bg);\n$primary-hover: var(--dh-color-accent-hover-bg);\n$primary-dark: var(--dh-color-accent-down-bg);\n$secondary: var(--dh-color-neutral-bg);\n$secondary-hover: var(--dh-color-neutral-hover-bg);\n$success: $green;\n$info: $yellow;\n$warning: $orange;\n$danger: var(--dh-color-negative-bg);\n$danger-hover: var(--dh-color-negative-hover-bg);\n// We really don't want to use $light or $dark variables, but Bootstrap defines\n// them in _variables.scss. Explicitly setting them to ensure we are in control\n// of their values. If we can find a way to remove them, we should\n$light: var(--dh-color-gray-light);\n$dark: var(--dh-color-gray-dark);\n// Bootstrap doesn't define $mid, and we want to move away from this particular\n// semantic. Should be deleted by #1635\n$mid: var(--dh-color-gray-mid);\n\n$semantic-colors: (\n 'primary-hover': $primary-hover,\n 'primary-dark': $primary-dark,\n 'mid': $mid,\n 'content-bg': $interfacegray,\n 'background': $interfaceblack,\n 'foreground': $interfacewhite,\n 'secondary-hover': $secondary-hover,\n 'danger-hover': $danger-hover,\n);\n\n$component-active-bg: $primary;\n$theme-color-interval: 9%;\n$yiq-contrasted-threshold: 180;\n\n// Override fonts\n$font-family-sans-serif:\n 'Fira Sans',\n -apple-system,\n blinkmacsystemfont,\n 'Segoe UI',\n 'Roboto',\n 'Helvetica Neue',\n arial,\n sans-serif; //fira sans then native system ui fallbacks\n$font-family-monospace: 'Fira Mono', menlo, monaco, consolas, 'Liberation Mono',\n 'Courier New', monospace;\n$font-family-base: $font-family-sans-serif;\n\n$headings-font-weight: 400;\n\n//Text overides\n$text-muted: $gray-400;\n\n//Style Selection highlight color\n$text-select-color: var(--dh-color-text-highlight);\n\n//Grid variables, same value as default just making easily accessible\n$grid-gutter-width: 30px;\n\n//Visual Overrides\n$border-radius: 4px;\n$box-shadow: 0 0.1rem 1rem var(--dh-color-dropshadow);\n\n//Override Btn\n$btn-border-radius: 4rem;\n$btn-padding-x: 1.5rem;\n$btn-transition:\n color 0.12s ease-in-out,\n background-color 0.12s ease-in-out,\n border-color 0.12s ease-in-out,\n box-shadow 0.12s ease-in-out; //default 0.15 is too long\n$btn-border-width: 2px;\n$btn-font-weight: var(--spectrum-global-font-weight-bold);\n$btn-line-height: 1.3;\n\n//Override Inputs\n$input-bg: var(--dh-color-input-bg);\n$input-disabled-bg: var(--dh-color-input-disabled-bg);\n$input-color: var(--dh-color-input-fg);\n$input-border-color: var(--dh-color-input-border);\n$input-placeholder-color: var(--dh-color-input-placeholder);\n$input-focus-border-color: var(--dh-color-input-focus-border);\n\n$input-btn-focus-width: 0.2rem;\n$input-btn-focus-color: color-mix(\n in srgb,\n var(--dh-color-accent) 35%,\n transparent\n);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n$input-btn-line-height: 1.3;\n// Bootstrap uses a calc expression to determine the input height (calc(line-height + 2*padding-y + border)).\n// The padding-y value has to be in rem to match units as it is a SASS calc.\n// Using 0.42145rem with 1.3 line height gets us to spectrum's 32px.\n/* stylelint-disable-next-line number-max-precision */\n$input-btn-padding-y: 0.42145rem;\n\n//checkbox\n$custom-control-indicator-bg: var(--dh-color-input-bg);\n$custom-control-indicator-border-color: var(--dh-color-input-border);\n$custom-checkbox-indicator-border-radius: 2px;\n$custom-control-indicator-border-width: 2px;\n$custom-control-indicator-active-bg: var(--dh-color-input-bg);\n$custom-control-indicator-active-border-color: var(--dh-color-input-fg);\n$custom-control-indicator-checked-bg: var(--dh-color-input-fg);\n$custom-control-indicator-checked-color: black; // used as mask fill color\n$custom-checkbox-indicator-indeterminate-bg: var(--dh-color-input-fg);\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: var(--dh-color-input-disabled-bg);\n$custom-control-indicator-checked-disabled-bg: var(\n --dh-color-input-disabled-bg\n);\n$custom-control-label-disabled-color: var(--dh-color-input-disabled-fg);\n\n// The $custom-select-indicator variable is used by Bootstrap to provide the\n// icon for the select dropdown. Inline svgs can't use CSS variables, so we hard\n// code the color to #929192 (the default value of --dh-color-gray-600). PR #1651\n// overrides this icon altogether for known dropdowns, so technically we may not\n// need this, but it's here in case there are any remaining instances.\n$custom-select-indicator-color: #929192;\n$custom-select-bg: var(--dh-color-selector-bg);\n$custom-select-bg-size: 16px 16px;\n//dhSort icon encoded\n$custom-select-indicator: str-replace(\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M4 7l-.4-.8 4-3.7h.8l4 3.7-.4.8H4zm0 2l-.4.8 4 3.7h.8l4-3.7L12 9H4z'/%3E%3C/svg%3E\"),\n '#',\n '%23'\n);\n$custom-select-focus-box-shadow: $input-btn-focus-box-shadow;\n$custom-select-disabled-color: $gray-500;\n$custom-select-disabled-bg: $gray-800;\n\n//modal\n$modal-content-bg: $content-bg;\n$modal-content-border-width: 0;\n$modal-md: 550px;\n$close-color: var(--dh-color-text);\n$close-text-shadow: none;\n\n// Toast notification\n$toast-bg: var(--dh-color-accent-100);\n$toast-color: var(--dh-color-text);\n$toast-error-bg: var(--dh-color-negative-bg);\n$toast-error-color: var(--dh-color-text);\n\n//tooltips\n$tooltip-bg: var(--dh-color-tooltip-bg);\n$tooltip-color: var(--dh-color-tooltip-fg);\n$tooltip-box-shadow: 0 0.1rem 1.5rem 0.1rem var(--dh-color-tooltip-box-shadow);\n\n//drowdowns\n$dropdown-bg: $gray-600;\n$dropdown-link-color: $foreground;\n$dropdown-link-hover-color: $foreground;\n$dropdown-link-hover-bg: var(--dh-color-item-list-hover-bg);\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: var(--dh-color-popover-bg);\n$contextmenu-color: var(--dh-color-text);\n$contextmenu-disabled-color: var(--dh-color-text-disabled);\n$contextmenu-keyboard-selected-bg: var(--dh-color-keyboard-selected-bg);\n$contextmenu-selected-bg: var(--dh-color-item-list-hover-bg);\n$contextmenu-selected-color: var(--dh-color-item-list-selected-fg);\n\n//hr\n$hr-border-color: var(--dh-color-hr);\n\n//links\n$link-color: $gray-400;\n$link-hover-color: $foreground;\n\n//progress-bar\n$progress-bg: $gray-600;\n$progress-border-radius: 1rem;\n\n// Set global options\n$enable-shadows: false;\n$enable-gradients: false;\n$enable-print-styles: false; //I don't think anyone should expect to \"print\" this app.\n\n// Transition times\n$transition: 0.15s;\n$transition-mid: 0.2s;\n$transition-long: 0.3s;\n$transition-slow: 0.6s;\n\n//form-validation icon, uses vsWarning icon encoded here as svg\n$form-feedback-icon-invalid-color: $danger;\n$form-feedback-icon-invalid: str-replace(\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cg fill='none'%3E%3Cg fill='#{$form-feedback-icon-invalid-color}'%3E%3Cpath d='M7.56 1h.88l6.54 12.26-.44.74H1.44L1 13.26 7.56 1zM8 2.28 2.28 13H13.7L8 2.28zM8.625 12v-1h-1.25v1h1.25zm-1.25-2V6h1.25v4h-1.25z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E \"),\n '#',\n '%23'\n);\n\n// This section of variables is not consumed directly by DH, but they need to be\n// defined for sass to compile _variables\n$table-dark-bg: $gray-800;\n$table-dark-accent-bg: var(--dh-color-highlight-hover);\n$table-dark-hover-bg: var(--dh-color-highlight-active);\n$table-dark-border-color: $gray-700;\n$popover-bg: var(--dh-color-tooltip-bg);\n$popover-border-color: var(--dh-color-overlay-modal-bg);\n$popover-header-bg: #000;\n$popover-arrow-outer-color: var(--dh-color-dropshadow);\n$custom-range-thumb-active-bg: var(--dh-color-accent-1100);\n","@use '../common/ConsoleVariables';\n@import '@deephaven/components/scss/custom.scss';\n\n$console-history-gutter-color: $gray-400;\n$console-gutter-width: 30px;\n\n.console-history .console-command-result {\n padding: 0 0 $spacer-1 0;\n}\n\n.console-history,\n.console-history-footer {\n font-family: $font-family-monospace;\n font-size: ConsoleVariables.$font-size;\n line-height: ConsoleVariables.$line-height;\n padding: 0;\n\n .console-history-gutter,\n .error-gutter {\n flex-shrink: 0;\n flex-grow: 0;\n flex-basis: $console-gutter-width;\n text-align: right;\n padding-right: 8px;\n color: $console-history-gutter-color;\n user-select: none;\n }\n\n .console-history-content {\n min-width: 0;\n flex-grow: 1;\n overflow-wrap: break-word;\n }\n\n .console-history-content .error-message.expanded {\n .error-content {\n user-select: text;\n user-select: contain;\n white-space: pre-wrap;\n word-break: break-word;\n overflow: auto;\n text-overflow: clip;\n cursor: default;\n }\n }\n}\n","$font-size: 12px;\n$line-height: 18px;\n$button-height: 26px;\n$button-vert-margin: 4px;\n"]}
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../../../node_modules/@deephaven/components/scss/custom.scss","../../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss","../../src/console-history/ConsoleHistory.scss","../../src/common/_ConsoleVariables.scss","../../../../node_modules/@deephaven/components/scss/new_variables.scss"],"names":[],"mappings":"AAAA;AC6LA;ACvLA;EACE;;;AAGF;AAAA;EAEE,aD+HsB;EC9HtB,WCbU;EDcV,aCbY;EDcZ;;AAEA;AAAA;AAAA;AAAA;EAEE;EACA;EACA,YAjBmB;EAkBnB;EACA;EACA,ODNO;ECOP;;AAGF;AAAA;EACE;EACA;EACA;;AAIA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKN;EACE;EACA;EACA;EACA;EACA,eE/CS","file":"ConsoleHistory.css","sourcesContent":["/* stylelint-disable scss/at-import-no-partial-leading-underscore */\n// Consumers should be able to resolve bootstrap/ to node_modules/bootstrap\n\n//Make bootstrap functions available for use in overrides\n@import 'bootstrap/scss/_functions.scss';\n@import './bootstrap_overrides.scss';\n\n//_variable imports come after bootstrap default overrides,\n// makes all other variables and mixins from bootstrap available\n/// with just importing customer.scss\n@import 'bootstrap/scss/_variables.scss';\n@import 'bootstrap/scss/_mixins.scss';\n\n//New variables come after imports\n@import './new_variables.scss';\n@import './util.scss';\n","// Styling overrides for bootstrap\n@use 'sass:map';\n\n// Override / set color variables\n$red: var(--dh-color-visual-red);\n$orange: var(--dh-color-visual-orange);\n$yellow: var(--dh-color-visual-yellow);\n$green: var(--dh-color-visual-green);\n$blue: var(--dh-color-visual-blue);\n$purple: var(--dh-color-visual-purple);\n\n// Fallback colors are used if theme isn't loaded\n// this is required for error messages if the API doesn't load\n\n//Define our Gray scale\n$gray-100: var(--dh-color-gray-900, #fcfcfa);\n$gray-200: var(--dh-color-gray-800);\n$gray-300: var(--dh-color-gray-700);\n$gray-400: var(--dh-color-gray-600);\n$gray-500: var(--dh-color-gray-500);\n// intentional duplicate, scale doesn't line up otherwise\n// as we have gray-850 and spectrum doesn't and it is needed\n$gray-600: var(--dh-color-gray-500);\n$gray-700: var(--dh-color-gray-400);\n$gray-800: var(--dh-color-gray-300);\n$gray-850: var(--dh-color-gray-200);\n$gray-900: var(--dh-color-gray-75);\n$black: var(--dh-color-black, #1a171a);\n$white: var(--dh-color-white, #f0f0ee);\n\n//Define some UI colors\n$interfacegray: var(--dh-color-content-bg, #2d2a2e);\n$interfaceblue: var(--dh-color-accent-bg);\n$interfacewhite: $white;\n$interfaceblack: $black;\n$content-bg: var(--dh-color-content-bg, #2d2a2e);\n$background: var(--dh-color-bg, #1a171a);\n$foreground: var(--dh-color-fg, #f0f0ee);\n\n// Extend default Bootstrap $grays map\n$grays-custom: (\n '850': $gray-850,\n);\n$grays: () !default;\n$grays: map-merge($grays, $grays-custom);\n\n// Extend default Bootstrap $colors map\n$colors-custom: (\n 'black': $black,\n);\n$colors: () !default;\n$colors: map-merge($colors, $colors-custom);\n\n// Override default Bootstrap $theme-colors map by mapping each key to itself.\n// These will then be re-mapped inside of `button-outline-variant` and\n// `button-outline-variant` mixins in `bootstrap_override_mixins_buttons.scss`\n$theme-colors-self-map: ();\n@each $key\n in (\n 'primary',\n 'secondary',\n 'success',\n 'info',\n 'warning',\n 'danger',\n 'light',\n 'dark'\n )\n{\n $theme-colors-self-map: map.set($theme-colors-self-map, $key, $key);\n}\n$theme-colors: () !default;\n$theme-colors: map-merge($theme-colors, $theme-colors-self-map);\n\n// Used by bootstrap_override_mixins_buttons.scss to map Bootstrap colors to\n// DH semantic colors\n$bootstrap-dh-semantic-map: (\n 'primary': 'accent',\n 'secondary': 'neutral',\n 'success': 'positive',\n 'info': 'info',\n 'warning': 'notice',\n 'danger': 'negative',\n // We shouldn't be using these, but mapping so they work with our custom\n // `color-yiq` mixin. If we find a way to remove $light + $dark that are\n // defined in Bootstrap _variables.scss, we should remove these\n 'light': 'neutral',\n 'dark': 'neutral',\n);\n\n//Set default colors\n$body-bg: $black;\n$body-color: $interfacewhite;\n\n// Set brand colors\n$primary: var(--dh-color-accent-bg);\n$primary-hover: var(--dh-color-accent-hover-bg);\n$primary-dark: var(--dh-color-accent-down-bg);\n$secondary: var(--dh-color-neutral-bg);\n$secondary-hover: var(--dh-color-neutral-hover-bg);\n$success: $green;\n$info: $yellow;\n$warning: $orange;\n$danger: var(--dh-color-negative-bg);\n$danger-hover: var(--dh-color-negative-hover-bg);\n// We really don't want to use $light or $dark variables, but Bootstrap defines\n// them in _variables.scss. Explicitly setting them to ensure we are in control\n// of their values. If we can find a way to remove them, we should\n$light: var(--dh-color-gray-light);\n$dark: var(--dh-color-gray-dark);\n// Bootstrap doesn't define $mid, and we want to move away from this particular\n// semantic. Should be deleted by #1635\n$mid: var(--dh-color-gray-mid);\n\n$semantic-colors: (\n 'primary-hover': $primary-hover,\n 'primary-dark': $primary-dark,\n 'mid': $mid,\n 'content-bg': $interfacegray,\n 'background': $interfaceblack,\n 'foreground': $interfacewhite,\n 'secondary-hover': $secondary-hover,\n 'danger-hover': $danger-hover,\n);\n\n$component-active-bg: $primary;\n$theme-color-interval: 9%;\n$yiq-contrasted-threshold: 180;\n\n// Override fonts\n$font-family-sans-serif:\n 'Fira Sans',\n -apple-system,\n blinkmacsystemfont,\n 'Segoe UI',\n 'Roboto',\n 'Helvetica Neue',\n arial,\n sans-serif; //fira sans then native system ui fallbacks\n$font-family-monospace: 'Fira Mono', menlo, monaco, consolas, 'Liberation Mono',\n 'Courier New', monospace;\n$font-family-base: $font-family-sans-serif;\n\n$headings-font-weight: 400;\n\n//Text overides\n$text-muted: $gray-400;\n\n//Style Selection highlight color\n$text-select-color: var(--dh-color-text-highlight);\n\n//Grid variables, same value as default just making easily accessible\n$grid-gutter-width: 30px;\n\n//Visual Overrides\n$border-radius: 4px;\n$box-shadow: 0 0.1rem 1rem var(--dh-color-dropshadow);\n\n//Override Btn\n$btn-border-radius: 4rem;\n$btn-padding-x: 1.5rem;\n$btn-transition:\n color 0.12s ease-in-out,\n background-color 0.12s ease-in-out,\n border-color 0.12s ease-in-out,\n box-shadow 0.12s ease-in-out; //default 0.15 is too long\n$btn-border-width: 2px;\n$btn-font-weight: var(--spectrum-global-font-weight-bold);\n$btn-line-height: 1.3;\n\n//Override Inputs\n$input-bg: var(--dh-color-input-bg);\n$input-disabled-bg: var(--dh-color-input-disabled-bg);\n$input-color: var(--dh-color-input-fg);\n$input-border-color: var(--dh-color-input-border);\n$input-placeholder-color: var(--dh-color-input-placeholder);\n$input-focus-border-color: var(--dh-color-input-focus-border);\n\n$input-btn-focus-width: 0.2rem;\n$input-btn-focus-color: color-mix(\n in srgb,\n var(--dh-color-accent) 35%,\n transparent\n);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n$input-btn-line-height: 1.3;\n// Bootstrap uses a calc expression to determine the input height (calc(line-height + 2*padding-y + border)).\n// The padding-y value has to be in rem to match units as it is a SASS calc.\n// Using 0.42145rem with 1.3 line height gets us to spectrum's 32px.\n/* stylelint-disable-next-line number-max-precision */\n$input-btn-padding-y: 0.42145rem;\n\n//checkbox\n$custom-control-indicator-bg: var(--dh-color-input-bg);\n$custom-control-indicator-border-color: var(--dh-color-input-border);\n$custom-checkbox-indicator-border-radius: 2px;\n$custom-control-indicator-border-width: 2px;\n$custom-control-indicator-active-bg: var(--dh-color-input-bg);\n$custom-control-indicator-active-border-color: var(--dh-color-input-fg);\n$custom-control-indicator-checked-bg: var(--dh-color-input-fg);\n$custom-control-indicator-checked-color: black; // used as mask fill color\n$custom-checkbox-indicator-indeterminate-bg: var(--dh-color-input-fg);\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: var(--dh-color-input-disabled-bg);\n$custom-control-indicator-checked-disabled-bg: var(\n --dh-color-input-disabled-bg\n);\n$custom-control-label-disabled-color: var(--dh-color-input-disabled-fg);\n\n// The $custom-select-indicator variable is used by Bootstrap to provide the\n// icon for the select dropdown. Inline svgs can't use CSS variables, so we hard\n// code the color to #929192 (the default value of --dh-color-gray-600). PR #1651\n// overrides this icon altogether for known dropdowns, so technically we may not\n// need this, but it's here in case there are any remaining instances.\n$custom-select-indicator-color: #929192;\n$custom-select-bg: var(--dh-color-selector-bg);\n$custom-select-bg-size: 16px 16px;\n//dhSort icon encoded\n$custom-select-indicator: str-replace(\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M4 7l-.4-.8 4-3.7h.8l4 3.7-.4.8H4zm0 2l-.4.8 4 3.7h.8l4-3.7L12 9H4z'/%3E%3C/svg%3E\"),\n '#',\n '%23'\n);\n$custom-select-focus-box-shadow: $input-btn-focus-box-shadow;\n$custom-select-disabled-color: $gray-500;\n$custom-select-disabled-bg: $gray-800;\n\n//modal\n$modal-content-bg: $content-bg;\n$modal-content-border-width: 0;\n$modal-md: 550px;\n$close-color: var(--dh-color-text);\n$close-text-shadow: none;\n\n// Toast notification\n$toast-bg: var(--dh-color-accent-100);\n$toast-color: var(--dh-color-text);\n$toast-error-bg: var(--dh-color-negative-bg);\n$toast-error-color: var(--dh-color-text);\n\n//tooltips\n$tooltip-bg: var(--dh-color-tooltip-bg);\n$tooltip-color: var(--dh-color-tooltip-fg);\n$tooltip-box-shadow: 0 0.1rem 1.5rem 0.1rem var(--dh-color-tooltip-box-shadow);\n\n//drowdowns\n$dropdown-bg: $gray-600;\n$dropdown-link-color: $foreground;\n$dropdown-link-hover-color: $foreground;\n$dropdown-link-hover-bg: var(--dh-color-item-list-hover-bg);\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: var(--dh-color-popover-bg);\n$contextmenu-color: var(--dh-color-text);\n$contextmenu-disabled-color: var(--dh-color-text-disabled);\n$contextmenu-keyboard-selected-bg: var(--dh-color-keyboard-selected-bg);\n$contextmenu-selected-bg: var(--dh-color-item-list-hover-bg);\n$contextmenu-selected-color: var(--dh-color-item-list-selected-fg);\n\n//hr\n$hr-border-color: var(--dh-color-hr);\n\n//links\n$link-color: $gray-400;\n$link-hover-color: $foreground;\n\n//progress-bar\n$progress-bg: $gray-600;\n$progress-border-radius: 1rem;\n\n// Set global options\n$enable-shadows: false;\n$enable-gradients: false;\n$enable-print-styles: false; //I don't think anyone should expect to \"print\" this app.\n\n// Transition times\n$transition: 0.15s;\n$transition-mid: 0.2s;\n$transition-long: 0.3s;\n$transition-slow: 0.6s;\n\n//form-validation icon, uses vsWarning icon encoded here as svg\n$form-feedback-icon-invalid-color: $danger;\n$form-feedback-icon-invalid: str-replace(\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cg fill='none'%3E%3Cg fill='#{$form-feedback-icon-invalid-color}'%3E%3Cpath d='M7.56 1h.88l6.54 12.26-.44.74H1.44L1 13.26 7.56 1zM8 2.28 2.28 13H13.7L8 2.28zM8.625 12v-1h-1.25v1h1.25zm-1.25-2V6h1.25v4h-1.25z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E \"),\n '#',\n '%23'\n);\n\n// This section of variables is not consumed directly by DH, but they need to be\n// defined for sass to compile _variables\n$table-dark-bg: $gray-800;\n$table-dark-accent-bg: var(--dh-color-highlight-hover);\n$table-dark-hover-bg: var(--dh-color-highlight-active);\n$table-dark-border-color: $gray-700;\n$popover-bg: var(--dh-color-tooltip-bg);\n$popover-border-color: var(--dh-color-overlay-modal-bg);\n$popover-header-bg: #000;\n$popover-arrow-outer-color: var(--dh-color-dropshadow);\n$custom-range-thumb-active-bg: var(--dh-color-accent-1100);\n","@use '../common/ConsoleVariables';\n@import '@deephaven/components/scss/custom.scss';\n\n$console-history-gutter-color: $gray-400;\n$console-gutter-width: 30px;\n\n.console-history .console-command-result {\n padding: 0 0 $spacer-1 0;\n}\n\n.console-history,\n.console-history-footer {\n font-family: $font-family-monospace;\n font-size: ConsoleVariables.$font-size;\n line-height: ConsoleVariables.$line-height;\n padding: 0;\n\n .console-history-gutter,\n .error-gutter {\n flex-shrink: 0;\n flex-grow: 0;\n flex-basis: $console-gutter-width;\n text-align: right;\n padding-right: 8px;\n color: $console-history-gutter-color;\n user-select: none;\n }\n\n .console-history-content {\n min-width: 0;\n flex-grow: 1;\n overflow-wrap: break-word;\n }\n\n .console-history-content .error-message.expanded {\n .error-content {\n user-select: text;\n user-select: contain;\n white-space: pre-wrap;\n word-break: break-word;\n overflow: auto;\n text-overflow: clip;\n cursor: default;\n }\n }\n}\n\n.console-history-item-tooltip {\n display: grid;\n grid-template-columns: auto auto;\n gap: $spacer-1 $spacer-3;\n text-align: left;\n margin-bottom: $spacer-2;\n}\n","$font-size: 12px;\n$line-height: 18px;\n$button-height: 26px;\n$button-vert-margin: 4px;\n","@use 'sass:math';\n\n//Set of spacer variables from the spacer map\n$spacer-0: map-get($spacers, 0); //0\n$spacer-1: map-get($spacers, 1);\n$spacer-2: map-get($spacers, 2);\n$spacer-3: map-get($spacers, 3);\n$spacer-4: map-get($spacers, 4);\n$spacer-5: map-get($spacers, 5);\n\n//Marching Ants for golden layout dropzone and drag and drop\n//top bottom, left right.\n//create 4 background images that are 50% color 1, 50% color 2 using graidents, two veritical, two horizontal\n//size them to ant-size and thickness\n//position those images along the egdes and make top/bottom repeat-x and left/right repeat-y\n//then offest each of those background positions by ant-size in animation to make them march.\n$ant-size: 8px;\n$ant-thickness: 1px;\n\n@mixin ants-base($color-1: black, $color-2: white) {\n background-image: linear-gradient(to right, $color-2 50%, $color-1 50%),\n linear-gradient(to right, $color-2 50%, $color-1 50%),\n linear-gradient(to bottom, $color-2 50%, $color-1 50%),\n linear-gradient(to bottom, $color-2 50%, $color-1 50%);\n background-size:\n $ant-size $ant-thickness,\n $ant-size $ant-thickness,\n $ant-thickness $ant-size,\n $ant-thickness $ant-size;\n background-position:\n 0 top,\n 0 bottom,\n left 0,\n right 0;\n background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;\n animation: march 0.5s;\n animation-timing-function: linear;\n animation-iteration-count: infinite;\n}\n\n@mixin drag-stack($pseudo-element) {\n &::#{$pseudo-element} {\n content: ' ';\n background: $primary;\n box-shadow: $box-shadow;\n border-radius: $border-radius;\n position: absolute;\n height: 100%;\n width: 100%;\n @content;\n }\n}\n\n$focus-bg-transparency: 12%;\n$hover-bg-transparency: 14%;\n$active-bg-transparency: 28%;\n$exception-transparency: 28%;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConsoleHistory.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistory.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAGjD,OAAO,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,UAAU,mBAAmB;IAC3B,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,kBAAkB,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ConsoleHistory.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistory.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAGjD,OAAO,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,UAAU,mBAAmB;IAC3B,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,kBAAkB,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,YAAY,CAAC;IAC5C,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAQD;;GAEG;AACH,QAAA,MAAM,cAAc,4FAoClB,CAAC;AAEH,eAAe,cAAc,CAAC"}
|
|
@@ -19,7 +19,8 @@ var ConsoleHistory = /*#__PURE__*/React.forwardRef(function ConsoleHistory(props
|
|
|
19
19
|
language,
|
|
20
20
|
openObject,
|
|
21
21
|
supportsType,
|
|
22
|
-
iconForType
|
|
22
|
+
iconForType,
|
|
23
|
+
onCommandSubmit
|
|
23
24
|
} = props;
|
|
24
25
|
var historyElements = [];
|
|
25
26
|
for (var i = 0; i < items.length; i += 1) {
|
|
@@ -30,7 +31,8 @@ var ConsoleHistory = /*#__PURE__*/React.forwardRef(function ConsoleHistory(props
|
|
|
30
31
|
openObject: openObject,
|
|
31
32
|
language: language,
|
|
32
33
|
supportsType: supportsType,
|
|
33
|
-
iconForType: iconForType
|
|
34
|
+
iconForType: iconForType,
|
|
35
|
+
onCommandSubmit: onCommandSubmit
|
|
34
36
|
}, itemKey(i, item));
|
|
35
37
|
historyElements.push(historyElement);
|
|
36
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConsoleHistory.js","names":["React","ConsoleHistoryItem","jsx","_jsx","itemKey","i","item","concat","command","result","message","error","ConsoleHistory","forwardRef","props","ref","disabled","items","language","openObject","supportsType","iconForType","historyElements","length","historyElement","push","className","children"],"sources":["../../src/console-history/ConsoleHistory.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { type ReactElement } from 'react';\nimport type { dh } from '@deephaven/jsapi-types';\nimport ConsoleHistoryItem from './ConsoleHistoryItem';\n\nimport './ConsoleHistory.scss';\nimport { type ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\n\ninterface ConsoleHistoryProps {\n items: ConsoleHistoryActionItem[];\n language: string;\n openObject: (object: dh.ide.VariableDefinition) => void;\n disabled?: boolean;\n supportsType: (type: string) => boolean;\n iconForType: (type: string) => ReactElement;\n}\n\nfunction itemKey(i: number, item: ConsoleHistoryActionItem): string {\n return `${i}.${item.command}.${item.result && item.result.message}.${\n item.result && item.result.error\n }`;\n}\n\n/**\n * Display the console history.\n */\nconst ConsoleHistory = React.forwardRef(function ConsoleHistory(\n props: ConsoleHistoryProps,\n ref: React.Ref<HTMLDivElement>\n): ReactElement {\n const {\n disabled = false,\n items,\n language,\n openObject,\n supportsType,\n iconForType,\n } = props;\n const historyElements = [];\n for (let i = 0; i < items.length; i += 1) {\n const item = items[i];\n const historyElement = (\n <ConsoleHistoryItem\n key={itemKey(i, item)}\n disabled={disabled}\n item={item}\n openObject={openObject}\n language={language}\n supportsType={supportsType}\n iconForType={iconForType}\n />\n );\n historyElements.push(historyElement);\n }\n\n return (\n <div ref={ref} className=\"container-fluid console-history\">\n {historyElements}\n </div>\n );\n});\n\nexport default ConsoleHistory;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,KAAK,MAA6B,OAAO;AAAC,OAE1CC,kBAAkB;AAAA;AAAA,SAAAC,GAAA,IAAAC,IAAA;
|
|
1
|
+
{"version":3,"file":"ConsoleHistory.js","names":["React","ConsoleHistoryItem","jsx","_jsx","itemKey","i","item","concat","command","result","message","error","ConsoleHistory","forwardRef","props","ref","disabled","items","language","openObject","supportsType","iconForType","onCommandSubmit","historyElements","length","historyElement","push","className","children"],"sources":["../../src/console-history/ConsoleHistory.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { type ReactElement } from 'react';\nimport type { dh } from '@deephaven/jsapi-types';\nimport ConsoleHistoryItem from './ConsoleHistoryItem';\n\nimport './ConsoleHistory.scss';\nimport { type ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\n\ninterface ConsoleHistoryProps {\n items: ConsoleHistoryActionItem[];\n language: string;\n openObject: (object: dh.ide.VariableDefinition) => void;\n disabled?: boolean;\n supportsType: (type: string) => boolean;\n iconForType: (type: string) => ReactElement;\n onCommandSubmit: (command: string) => void;\n}\n\nfunction itemKey(i: number, item: ConsoleHistoryActionItem): string {\n return `${i}.${item.command}.${item.result && item.result.message}.${\n item.result && item.result.error\n }`;\n}\n\n/**\n * Display the console history.\n */\nconst ConsoleHistory = React.forwardRef(function ConsoleHistory(\n props: ConsoleHistoryProps,\n ref: React.Ref<HTMLDivElement>\n): ReactElement {\n const {\n disabled = false,\n items,\n language,\n openObject,\n supportsType,\n iconForType,\n onCommandSubmit,\n } = props;\n const historyElements = [];\n for (let i = 0; i < items.length; i += 1) {\n const item = items[i];\n const historyElement = (\n <ConsoleHistoryItem\n key={itemKey(i, item)}\n disabled={disabled}\n item={item}\n openObject={openObject}\n language={language}\n supportsType={supportsType}\n iconForType={iconForType}\n onCommandSubmit={onCommandSubmit}\n />\n );\n historyElements.push(historyElement);\n }\n\n return (\n <div ref={ref} className=\"container-fluid console-history\">\n {historyElements}\n </div>\n );\n});\n\nexport default ConsoleHistory;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,KAAK,MAA6B,OAAO;AAAC,OAE1CC,kBAAkB;AAAA;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAezB,SAASC,OAAOA,CAACC,CAAS,EAAEC,IAA8B,EAAU;EAClE,UAAAC,MAAA,CAAUF,CAAC,OAAAE,MAAA,CAAID,IAAI,CAACE,OAAO,OAAAD,MAAA,CAAID,IAAI,CAACG,MAAM,IAAIH,IAAI,CAACG,MAAM,CAACC,OAAO,OAAAH,MAAA,CAC/DD,IAAI,CAACG,MAAM,IAAIH,IAAI,CAACG,MAAM,CAACE,KAAK;AAEpC;;AAEA;AACA;AACA;AACA,IAAMC,cAAc,gBAAGZ,KAAK,CAACa,UAAU,CAAC,SAASD,cAAcA,CAC7DE,KAA0B,EAC1BC,GAA8B,EAChB;EACd,IAAM;IACJC,QAAQ,GAAG,KAAK;IAChBC,KAAK;IACLC,QAAQ;IACRC,UAAU;IACVC,YAAY;IACZC,WAAW;IACXC;EACF,CAAC,GAAGR,KAAK;EACT,IAAMS,eAAe,GAAG,EAAE;EAC1B,KAAK,IAAIlB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGY,KAAK,CAACO,MAAM,EAAEnB,CAAC,IAAI,CAAC,EAAE;IACxC,IAAMC,IAAI,GAAGW,KAAK,CAACZ,CAAC,CAAC;IACrB,IAAMoB,cAAc,gBAClBtB,IAAA,CAACF,kBAAkB;MAEjBe,QAAQ,EAAEA,QAAS;MACnBV,IAAI,EAAEA,IAAK;MACXa,UAAU,EAAEA,UAAW;MACvBD,QAAQ,EAAEA,QAAS;MACnBE,YAAY,EAAEA,YAAa;MAC3BC,WAAW,EAAEA,WAAY;MACzBC,eAAe,EAAEA;IAAgB,GAP5BlB,OAAO,CAACC,CAAC,EAAEC,IAAI,CAQrB,CACF;IACDiB,eAAe,CAACG,IAAI,CAACD,cAAc,CAAC;EACtC;EAEA,oBACEtB,IAAA;IAAKY,GAAG,EAAEA,GAAI;IAACY,SAAS,EAAC,iCAAiC;IAAAC,QAAA,EACvDL;EAAe,CACb,CAAC;AAEV,CAAC,CAAC;AAEF,eAAeX,cAAc","ignoreList":[]}
|
|
@@ -6,9 +6,36 @@
|
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
.console-history-item-command {
|
|
9
|
+
position: relative;
|
|
9
10
|
white-space: pre-line;
|
|
10
11
|
}
|
|
11
12
|
|
|
13
|
+
.console-history-actions {
|
|
14
|
+
position: absolute;
|
|
15
|
+
gap: 0.25rem;
|
|
16
|
+
top: 0;
|
|
17
|
+
right: 0.5rem;
|
|
18
|
+
display: none;
|
|
19
|
+
align-items: center;
|
|
20
|
+
background-color: var(--dh-color-neutral-hover-bg);
|
|
21
|
+
border-radius: 4px;
|
|
22
|
+
padding: 0.25rem;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.console-history-item-command-tooltip-active {
|
|
26
|
+
background-color: var(--dh-color-neutral-hover-bg);
|
|
27
|
+
}
|
|
28
|
+
.console-history-item-command-tooltip-active .console-history-actions {
|
|
29
|
+
display: flex;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.console-history-item-command:hover {
|
|
33
|
+
background-color: var(--dh-color-neutral-hover-bg);
|
|
34
|
+
}
|
|
35
|
+
.console-history-item-command:hover .console-history-actions {
|
|
36
|
+
display: flex;
|
|
37
|
+
}
|
|
38
|
+
|
|
12
39
|
.console-history-item-result .log-message {
|
|
13
40
|
white-space: pre-wrap;
|
|
14
41
|
word-wrap: break-word;
|
|
@@ -80,4 +107,34 @@
|
|
|
80
107
|
border: 1px solid color-mix(in srgb, var(--dh-color-negative) 50%, transparent);
|
|
81
108
|
}
|
|
82
109
|
|
|
110
|
+
.console-history-actions-1 {
|
|
111
|
+
top: -0.875rem;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.console-history-actions-2 {
|
|
115
|
+
top: -0.125rem;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.console-command-result:last-child .console-history-actions-1 {
|
|
119
|
+
top: -1.5rem;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.console-command-result:first-child .console-history-actions-1 {
|
|
123
|
+
top: 0;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.console-history-item-contextual-help-content {
|
|
127
|
+
display: grid;
|
|
128
|
+
grid-template-columns: auto auto;
|
|
129
|
+
gap: 0.25rem 1rem;
|
|
130
|
+
text-align: left;
|
|
131
|
+
margin-bottom: 0.5rem;
|
|
132
|
+
white-space: nowrap;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.console-history-item-contextual-help section[class*=spectrum-ContextualHelp-dialog] {
|
|
136
|
+
width: fit-content;
|
|
137
|
+
min-width: 150px;
|
|
138
|
+
}
|
|
139
|
+
|
|
83
140
|
/*# sourceMappingURL=ConsoleHistoryItem.css.map */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../../../node_modules/@deephaven/components/scss/custom.scss","../../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss","../../src/console-history/ConsoleHistoryItem.scss","../../../../node_modules/@deephaven/components/scss/new_variables.scss","../../src/common/_ConsoleVariables.scss"],"names":[],"mappings":"AAAA;AC6LA;ACrLA;AAAA;EAEE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;;;AAIA;EACE;EACA;EACA,KC9BO;ED+BP;EACA,WEpCQ;EFqCR,cC/BO;EDgCP;EACA,QErCY;EFsCZ,eEtCY;;AFyCd;EACE,OD2DK;EC1DL;EACA;EACA;;AAEA;EACE;EACA,YAhDe;;AAkDf;EACE,WAnDa;EAoDb;EACA;EACA;EACA;EACA;EACA;EACA,YDqGN;;AClGI;AAAA;EAEE,ODqCC;;ACjCL;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA,ODuBG;ECtBH;EACA,cC9EK;ED+EL;EACA,eDuEU;ECtEV;EACA;;AAEA;EACE;;AAEF;EACE","file":"ConsoleHistoryItem.css","sourcesContent":["/* stylelint-disable scss/at-import-no-partial-leading-underscore */\n// Consumers should be able to resolve bootstrap/ to node_modules/bootstrap\n\n//Make bootstrap functions available for use in overrides\n@import 'bootstrap/scss/_functions.scss';\n@import './bootstrap_overrides.scss';\n\n//_variable imports come after bootstrap default overrides,\n// makes all other variables and mixins from bootstrap available\n/// with just importing customer.scss\n@import 'bootstrap/scss/_variables.scss';\n@import 'bootstrap/scss/_mixins.scss';\n\n//New variables come after imports\n@import './new_variables.scss';\n@import './util.scss';\n","// Styling overrides for bootstrap\n@use 'sass:map';\n\n// Override / set color variables\n$red: var(--dh-color-visual-red);\n$orange: var(--dh-color-visual-orange);\n$yellow: var(--dh-color-visual-yellow);\n$green: var(--dh-color-visual-green);\n$blue: var(--dh-color-visual-blue);\n$purple: var(--dh-color-visual-purple);\n\n// Fallback colors are used if theme isn't loaded\n// this is required for error messages if the API doesn't load\n\n//Define our Gray scale\n$gray-100: var(--dh-color-gray-900, #fcfcfa);\n$gray-200: var(--dh-color-gray-800);\n$gray-300: var(--dh-color-gray-700);\n$gray-400: var(--dh-color-gray-600);\n$gray-500: var(--dh-color-gray-500);\n// intentional duplicate, scale doesn't line up otherwise\n// as we have gray-850 and spectrum doesn't and it is needed\n$gray-600: var(--dh-color-gray-500);\n$gray-700: var(--dh-color-gray-400);\n$gray-800: var(--dh-color-gray-300);\n$gray-850: var(--dh-color-gray-200);\n$gray-900: var(--dh-color-gray-75);\n$black: var(--dh-color-black, #1a171a);\n$white: var(--dh-color-white, #f0f0ee);\n\n//Define some UI colors\n$interfacegray: var(--dh-color-content-bg, #2d2a2e);\n$interfaceblue: var(--dh-color-accent-bg);\n$interfacewhite: $white;\n$interfaceblack: $black;\n$content-bg: var(--dh-color-content-bg, #2d2a2e);\n$background: var(--dh-color-bg, #1a171a);\n$foreground: var(--dh-color-fg, #f0f0ee);\n\n// Extend default Bootstrap $grays map\n$grays-custom: (\n '850': $gray-850,\n);\n$grays: () !default;\n$grays: map-merge($grays, $grays-custom);\n\n// Extend default Bootstrap $colors map\n$colors-custom: (\n 'black': $black,\n);\n$colors: () !default;\n$colors: map-merge($colors, $colors-custom);\n\n// Override default Bootstrap $theme-colors map by mapping each key to itself.\n// These will then be re-mapped inside of `button-outline-variant` and\n// `button-outline-variant` mixins in `bootstrap_override_mixins_buttons.scss`\n$theme-colors-self-map: ();\n@each $key\n in (\n 'primary',\n 'secondary',\n 'success',\n 'info',\n 'warning',\n 'danger',\n 'light',\n 'dark'\n )\n{\n $theme-colors-self-map: map.set($theme-colors-self-map, $key, $key);\n}\n$theme-colors: () !default;\n$theme-colors: map-merge($theme-colors, $theme-colors-self-map);\n\n// Used by bootstrap_override_mixins_buttons.scss to map Bootstrap colors to\n// DH semantic colors\n$bootstrap-dh-semantic-map: (\n 'primary': 'accent',\n 'secondary': 'neutral',\n 'success': 'positive',\n 'info': 'info',\n 'warning': 'notice',\n 'danger': 'negative',\n // We shouldn't be using these, but mapping so they work with our custom\n // `color-yiq` mixin. If we find a way to remove $light + $dark that are\n // defined in Bootstrap _variables.scss, we should remove these\n 'light': 'neutral',\n 'dark': 'neutral',\n);\n\n//Set default colors\n$body-bg: $black;\n$body-color: $interfacewhite;\n\n// Set brand colors\n$primary: var(--dh-color-accent-bg);\n$primary-hover: var(--dh-color-accent-hover-bg);\n$primary-dark: var(--dh-color-accent-down-bg);\n$secondary: var(--dh-color-neutral-bg);\n$secondary-hover: var(--dh-color-neutral-hover-bg);\n$success: $green;\n$info: $yellow;\n$warning: $orange;\n$danger: var(--dh-color-negative-bg);\n$danger-hover: var(--dh-color-negative-hover-bg);\n// We really don't want to use $light or $dark variables, but Bootstrap defines\n// them in _variables.scss. Explicitly setting them to ensure we are in control\n// of their values. If we can find a way to remove them, we should\n$light: var(--dh-color-gray-light);\n$dark: var(--dh-color-gray-dark);\n// Bootstrap doesn't define $mid, and we want to move away from this particular\n// semantic. Should be deleted by #1635\n$mid: var(--dh-color-gray-mid);\n\n$semantic-colors: (\n 'primary-hover': $primary-hover,\n 'primary-dark': $primary-dark,\n 'mid': $mid,\n 'content-bg': $interfacegray,\n 'background': $interfaceblack,\n 'foreground': $interfacewhite,\n 'secondary-hover': $secondary-hover,\n 'danger-hover': $danger-hover,\n);\n\n$component-active-bg: $primary;\n$theme-color-interval: 9%;\n$yiq-contrasted-threshold: 180;\n\n// Override fonts\n$font-family-sans-serif:\n 'Fira Sans',\n -apple-system,\n blinkmacsystemfont,\n 'Segoe UI',\n 'Roboto',\n 'Helvetica Neue',\n arial,\n sans-serif; //fira sans then native system ui fallbacks\n$font-family-monospace: 'Fira Mono', menlo, monaco, consolas, 'Liberation Mono',\n 'Courier New', monospace;\n$font-family-base: $font-family-sans-serif;\n\n$headings-font-weight: 400;\n\n//Text overides\n$text-muted: $gray-400;\n\n//Style Selection highlight color\n$text-select-color: var(--dh-color-text-highlight);\n\n//Grid variables, same value as default just making easily accessible\n$grid-gutter-width: 30px;\n\n//Visual Overrides\n$border-radius: 4px;\n$box-shadow: 0 0.1rem 1rem var(--dh-color-dropshadow);\n\n//Override Btn\n$btn-border-radius: 4rem;\n$btn-padding-x: 1.5rem;\n$btn-transition:\n color 0.12s ease-in-out,\n background-color 0.12s ease-in-out,\n border-color 0.12s ease-in-out,\n box-shadow 0.12s ease-in-out; //default 0.15 is too long\n$btn-border-width: 2px;\n$btn-font-weight: var(--spectrum-global-font-weight-bold);\n$btn-line-height: 1.3;\n\n//Override Inputs\n$input-bg: var(--dh-color-input-bg);\n$input-disabled-bg: var(--dh-color-input-disabled-bg);\n$input-color: var(--dh-color-input-fg);\n$input-border-color: var(--dh-color-input-border);\n$input-placeholder-color: var(--dh-color-input-placeholder);\n$input-focus-border-color: var(--dh-color-input-focus-border);\n\n$input-btn-focus-width: 0.2rem;\n$input-btn-focus-color: color-mix(\n in srgb,\n var(--dh-color-accent) 35%,\n transparent\n);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n$input-btn-line-height: 1.3;\n// Bootstrap uses a calc expression to determine the input height (calc(line-height + 2*padding-y + border)).\n// The padding-y value has to be in rem to match units as it is a SASS calc.\n// Using 0.42145rem with 1.3 line height gets us to spectrum's 32px.\n/* stylelint-disable-next-line number-max-precision */\n$input-btn-padding-y: 0.42145rem;\n\n//checkbox\n$custom-control-indicator-bg: var(--dh-color-input-bg);\n$custom-control-indicator-border-color: var(--dh-color-input-border);\n$custom-checkbox-indicator-border-radius: 2px;\n$custom-control-indicator-border-width: 2px;\n$custom-control-indicator-active-bg: var(--dh-color-input-bg);\n$custom-control-indicator-active-border-color: var(--dh-color-input-fg);\n$custom-control-indicator-checked-bg: var(--dh-color-input-fg);\n$custom-control-indicator-checked-color: black; // used as mask fill color\n$custom-checkbox-indicator-indeterminate-bg: var(--dh-color-input-fg);\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: var(--dh-color-input-disabled-bg);\n$custom-control-indicator-checked-disabled-bg: var(\n --dh-color-input-disabled-bg\n);\n$custom-control-label-disabled-color: var(--dh-color-input-disabled-fg);\n\n// The $custom-select-indicator variable is used by Bootstrap to provide the\n// icon for the select dropdown. Inline svgs can't use CSS variables, so we hard\n// code the color to #929192 (the default value of --dh-color-gray-600). PR #1651\n// overrides this icon altogether for known dropdowns, so technically we may not\n// need this, but it's here in case there are any remaining instances.\n$custom-select-indicator-color: #929192;\n$custom-select-bg: var(--dh-color-selector-bg);\n$custom-select-bg-size: 16px 16px;\n//dhSort icon encoded\n$custom-select-indicator: str-replace(\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M4 7l-.4-.8 4-3.7h.8l4 3.7-.4.8H4zm0 2l-.4.8 4 3.7h.8l4-3.7L12 9H4z'/%3E%3C/svg%3E\"),\n '#',\n '%23'\n);\n$custom-select-focus-box-shadow: $input-btn-focus-box-shadow;\n$custom-select-disabled-color: $gray-500;\n$custom-select-disabled-bg: $gray-800;\n\n//modal\n$modal-content-bg: $content-bg;\n$modal-content-border-width: 0;\n$modal-md: 550px;\n$close-color: var(--dh-color-text);\n$close-text-shadow: none;\n\n// Toast notification\n$toast-bg: var(--dh-color-accent-100);\n$toast-color: var(--dh-color-text);\n$toast-error-bg: var(--dh-color-negative-bg);\n$toast-error-color: var(--dh-color-text);\n\n//tooltips\n$tooltip-bg: var(--dh-color-tooltip-bg);\n$tooltip-color: var(--dh-color-tooltip-fg);\n$tooltip-box-shadow: 0 0.1rem 1.5rem 0.1rem var(--dh-color-tooltip-box-shadow);\n\n//drowdowns\n$dropdown-bg: $gray-600;\n$dropdown-link-color: $foreground;\n$dropdown-link-hover-color: $foreground;\n$dropdown-link-hover-bg: var(--dh-color-item-list-hover-bg);\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: var(--dh-color-popover-bg);\n$contextmenu-color: var(--dh-color-text);\n$contextmenu-disabled-color: var(--dh-color-text-disabled);\n$contextmenu-keyboard-selected-bg: var(--dh-color-keyboard-selected-bg);\n$contextmenu-selected-bg: var(--dh-color-item-list-hover-bg);\n$contextmenu-selected-color: var(--dh-color-item-list-selected-fg);\n\n//hr\n$hr-border-color: var(--dh-color-hr);\n\n//links\n$link-color: $gray-400;\n$link-hover-color: $foreground;\n\n//progress-bar\n$progress-bg: $gray-600;\n$progress-border-radius: 1rem;\n\n// Set global options\n$enable-shadows: false;\n$enable-gradients: false;\n$enable-print-styles: false; //I don't think anyone should expect to \"print\" this app.\n\n// Transition times\n$transition: 0.15s;\n$transition-mid: 0.2s;\n$transition-long: 0.3s;\n$transition-slow: 0.6s;\n\n//form-validation icon, uses vsWarning icon encoded here as svg\n$form-feedback-icon-invalid-color: $danger;\n$form-feedback-icon-invalid: str-replace(\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cg fill='none'%3E%3Cg fill='#{$form-feedback-icon-invalid-color}'%3E%3Cpath d='M7.56 1h.88l6.54 12.26-.44.74H1.44L1 13.26 7.56 1zM8 2.28 2.28 13H13.7L8 2.28zM8.625 12v-1h-1.25v1h1.25zm-1.25-2V6h1.25v4h-1.25z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E \"),\n '#',\n '%23'\n);\n\n// This section of variables is not consumed directly by DH, but they need to be\n// defined for sass to compile _variables\n$table-dark-bg: $gray-800;\n$table-dark-accent-bg: var(--dh-color-highlight-hover);\n$table-dark-hover-bg: var(--dh-color-highlight-active);\n$table-dark-border-color: $gray-700;\n$popover-bg: var(--dh-color-tooltip-bg);\n$popover-border-color: var(--dh-color-overlay-modal-bg);\n$popover-header-bg: #000;\n$popover-arrow-outer-color: var(--dh-color-dropshadow);\n$custom-range-thumb-active-bg: var(--dh-color-accent-1100);\n","@use '../common/ConsoleVariables';\n@import '@deephaven/components/scss/custom.scss';\n\n$error-gutter-width: 15px;\n$font-size: ConsoleVariables.$font-size;\n$button-height: ConsoleVariables.$button-height;\n$button-vert-margin: ConsoleVariables.$button-vert-margin;\n\n.console-history-item-command,\n.console-history-item-result {\n display: flex;\n}\n\n.console-history-item-command {\n white-space: pre-line;\n}\n\n.console-history-item-result .log-message {\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n\n// adjust gutter tick to align in the middle of button results\n.console-result-buttons .console-history-item-result .console-history-gutter {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n max-height: calc($button-height + $button-vert-margin + $button-vert-margin);\n}\n\n.console-history-item-result {\n .btn-console-object {\n display: inline-flex;\n align-items: center;\n gap: $spacer-1;\n text-align: left;\n font-size: $font-size;\n padding-left: $spacer-3;\n margin: $button-vert-margin $button-vert-margin $button-vert-margin 0;\n height: $button-height;\n border-radius: $button-height;\n }\n\n .error-message {\n color: $danger;\n display: flex;\n overflow: hidden;\n user-select: text;\n\n .error-gutter {\n padding: 0;\n flex-basis: $error-gutter-width;\n\n .error-btn-link {\n min-width: $error-gutter-width;\n background-color: transparent;\n border: 0;\n text-align: left;\n padding-left: 0;\n padding-right: 0;\n color: negative-opacity(50);\n transition: $btn-transition;\n }\n\n .error-btn-link:hover,\n .error-btn-link--active {\n color: $danger;\n }\n }\n\n .error-content {\n flex-grow: 1;\n white-space: normal;\n cursor: default;\n overflow: visible;\n text-overflow: ellipsis;\n }\n\n .console-error-text-trigger {\n cursor: pointer;\n color: $danger;\n display: inline-block;\n margin-right: $spacer-1;\n border: 1px solid transparent;\n border-radius: $border-radius;\n overflow: visible;\n white-space: pre-wrap;\n // keyboard navigation only focus state\n &:focus {\n outline: 0;\n }\n &:focus-visible {\n border: 1px solid negative-opacity(50);\n }\n }\n }\n}\n","@use 'sass:math';\n\n//Set of spacer variables from the spacer map\n$spacer-0: map-get($spacers, 0); //0\n$spacer-1: map-get($spacers, 1);\n$spacer-2: map-get($spacers, 2);\n$spacer-3: map-get($spacers, 3);\n$spacer-4: map-get($spacers, 4);\n$spacer-5: map-get($spacers, 5);\n\n//Marching Ants for golden layout dropzone and drag and drop\n//top bottom, left right.\n//create 4 background images that are 50% color 1, 50% color 2 using graidents, two veritical, two horizontal\n//size them to ant-size and thickness\n//position those images along the egdes and make top/bottom repeat-x and left/right repeat-y\n//then offest each of those background positions by ant-size in animation to make them march.\n$ant-size: 8px;\n$ant-thickness: 1px;\n\n@mixin ants-base($color-1: black, $color-2: white) {\n background-image: linear-gradient(to right, $color-2 50%, $color-1 50%),\n linear-gradient(to right, $color-2 50%, $color-1 50%),\n linear-gradient(to bottom, $color-2 50%, $color-1 50%),\n linear-gradient(to bottom, $color-2 50%, $color-1 50%);\n background-size:\n $ant-size $ant-thickness,\n $ant-size $ant-thickness,\n $ant-thickness $ant-size,\n $ant-thickness $ant-size;\n background-position:\n 0 top,\n 0 bottom,\n left 0,\n right 0;\n background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;\n animation: march 0.5s;\n animation-timing-function: linear;\n animation-iteration-count: infinite;\n}\n\n@mixin drag-stack($pseudo-element) {\n &::#{$pseudo-element} {\n content: ' ';\n background: $primary;\n box-shadow: $box-shadow;\n border-radius: $border-radius;\n position: absolute;\n height: 100%;\n width: 100%;\n @content;\n }\n}\n\n$focus-bg-transparency: 12%;\n$hover-bg-transparency: 14%;\n$active-bg-transparency: 28%;\n$exception-transparency: 28%;\n","$font-size: 12px;\n$line-height: 18px;\n$button-height: 26px;\n$button-vert-margin: 4px;\n"]}
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../../../node_modules/@deephaven/components/scss/custom.scss","../../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss","../../src/console-history/ConsoleHistoryItem.scss","../../../../node_modules/@deephaven/components/scss/new_variables.scss","../../src/common/_ConsoleVariables.scss"],"names":[],"mappings":"AAAA;AC6LA;ACrLA;AAAA;EAEE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA,KChBS;EDiBT;EACA,OCjBS;EDkBT;EACA;EACA;EACA,eDiIc;EChId,SCvBS;;;AD0BX;EACE;;AAEA;EACE;;;AAIJ;EACE;;AAEA;EACE;;;AAIJ;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;;;AAIA;EACE;EACA;EACA,KC3DO;ED4DP;EACA,WEjEQ;EFkER,cC5DO;ED6DP;EACA,QElEY;EFmEZ,eEnEY;;AFsEd;EACE,OD8BK;EC7BL;EACA;EACA;;AAEA;EACE;EACA,YA7Ee;;AA+Ef;EACE,WAhFa;EAiFb;EACA;EACA;EACA;EACA;EACA;EACA,YDwEN;;ACrEI;AAAA;EAEE,ODQC;;ACJL;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA,ODNG;ECOH;EACA,cC3GK;ED4GL;EACA,eD0CU;ECzCV;EACA;;AAEA;EACE;;AAEF;EACE;;;AAMR;EAGE;;;AAGF;EAEE;;;AAGF;EAEE;;;AAGF;EAEE,KC9IS;;;ADiJX;EACE;EACA;EACA;EACA;EACA,eCpJS;EDqJT;;;AAIA;EAGE;EACA","file":"ConsoleHistoryItem.css","sourcesContent":["/* stylelint-disable scss/at-import-no-partial-leading-underscore */\n// Consumers should be able to resolve bootstrap/ to node_modules/bootstrap\n\n//Make bootstrap functions available for use in overrides\n@import 'bootstrap/scss/_functions.scss';\n@import './bootstrap_overrides.scss';\n\n//_variable imports come after bootstrap default overrides,\n// makes all other variables and mixins from bootstrap available\n/// with just importing customer.scss\n@import 'bootstrap/scss/_variables.scss';\n@import 'bootstrap/scss/_mixins.scss';\n\n//New variables come after imports\n@import './new_variables.scss';\n@import './util.scss';\n","// Styling overrides for bootstrap\n@use 'sass:map';\n\n// Override / set color variables\n$red: var(--dh-color-visual-red);\n$orange: var(--dh-color-visual-orange);\n$yellow: var(--dh-color-visual-yellow);\n$green: var(--dh-color-visual-green);\n$blue: var(--dh-color-visual-blue);\n$purple: var(--dh-color-visual-purple);\n\n// Fallback colors are used if theme isn't loaded\n// this is required for error messages if the API doesn't load\n\n//Define our Gray scale\n$gray-100: var(--dh-color-gray-900, #fcfcfa);\n$gray-200: var(--dh-color-gray-800);\n$gray-300: var(--dh-color-gray-700);\n$gray-400: var(--dh-color-gray-600);\n$gray-500: var(--dh-color-gray-500);\n// intentional duplicate, scale doesn't line up otherwise\n// as we have gray-850 and spectrum doesn't and it is needed\n$gray-600: var(--dh-color-gray-500);\n$gray-700: var(--dh-color-gray-400);\n$gray-800: var(--dh-color-gray-300);\n$gray-850: var(--dh-color-gray-200);\n$gray-900: var(--dh-color-gray-75);\n$black: var(--dh-color-black, #1a171a);\n$white: var(--dh-color-white, #f0f0ee);\n\n//Define some UI colors\n$interfacegray: var(--dh-color-content-bg, #2d2a2e);\n$interfaceblue: var(--dh-color-accent-bg);\n$interfacewhite: $white;\n$interfaceblack: $black;\n$content-bg: var(--dh-color-content-bg, #2d2a2e);\n$background: var(--dh-color-bg, #1a171a);\n$foreground: var(--dh-color-fg, #f0f0ee);\n\n// Extend default Bootstrap $grays map\n$grays-custom: (\n '850': $gray-850,\n);\n$grays: () !default;\n$grays: map-merge($grays, $grays-custom);\n\n// Extend default Bootstrap $colors map\n$colors-custom: (\n 'black': $black,\n);\n$colors: () !default;\n$colors: map-merge($colors, $colors-custom);\n\n// Override default Bootstrap $theme-colors map by mapping each key to itself.\n// These will then be re-mapped inside of `button-outline-variant` and\n// `button-outline-variant` mixins in `bootstrap_override_mixins_buttons.scss`\n$theme-colors-self-map: ();\n@each $key\n in (\n 'primary',\n 'secondary',\n 'success',\n 'info',\n 'warning',\n 'danger',\n 'light',\n 'dark'\n )\n{\n $theme-colors-self-map: map.set($theme-colors-self-map, $key, $key);\n}\n$theme-colors: () !default;\n$theme-colors: map-merge($theme-colors, $theme-colors-self-map);\n\n// Used by bootstrap_override_mixins_buttons.scss to map Bootstrap colors to\n// DH semantic colors\n$bootstrap-dh-semantic-map: (\n 'primary': 'accent',\n 'secondary': 'neutral',\n 'success': 'positive',\n 'info': 'info',\n 'warning': 'notice',\n 'danger': 'negative',\n // We shouldn't be using these, but mapping so they work with our custom\n // `color-yiq` mixin. If we find a way to remove $light + $dark that are\n // defined in Bootstrap _variables.scss, we should remove these\n 'light': 'neutral',\n 'dark': 'neutral',\n);\n\n//Set default colors\n$body-bg: $black;\n$body-color: $interfacewhite;\n\n// Set brand colors\n$primary: var(--dh-color-accent-bg);\n$primary-hover: var(--dh-color-accent-hover-bg);\n$primary-dark: var(--dh-color-accent-down-bg);\n$secondary: var(--dh-color-neutral-bg);\n$secondary-hover: var(--dh-color-neutral-hover-bg);\n$success: $green;\n$info: $yellow;\n$warning: $orange;\n$danger: var(--dh-color-negative-bg);\n$danger-hover: var(--dh-color-negative-hover-bg);\n// We really don't want to use $light or $dark variables, but Bootstrap defines\n// them in _variables.scss. Explicitly setting them to ensure we are in control\n// of their values. If we can find a way to remove them, we should\n$light: var(--dh-color-gray-light);\n$dark: var(--dh-color-gray-dark);\n// Bootstrap doesn't define $mid, and we want to move away from this particular\n// semantic. Should be deleted by #1635\n$mid: var(--dh-color-gray-mid);\n\n$semantic-colors: (\n 'primary-hover': $primary-hover,\n 'primary-dark': $primary-dark,\n 'mid': $mid,\n 'content-bg': $interfacegray,\n 'background': $interfaceblack,\n 'foreground': $interfacewhite,\n 'secondary-hover': $secondary-hover,\n 'danger-hover': $danger-hover,\n);\n\n$component-active-bg: $primary;\n$theme-color-interval: 9%;\n$yiq-contrasted-threshold: 180;\n\n// Override fonts\n$font-family-sans-serif:\n 'Fira Sans',\n -apple-system,\n blinkmacsystemfont,\n 'Segoe UI',\n 'Roboto',\n 'Helvetica Neue',\n arial,\n sans-serif; //fira sans then native system ui fallbacks\n$font-family-monospace: 'Fira Mono', menlo, monaco, consolas, 'Liberation Mono',\n 'Courier New', monospace;\n$font-family-base: $font-family-sans-serif;\n\n$headings-font-weight: 400;\n\n//Text overides\n$text-muted: $gray-400;\n\n//Style Selection highlight color\n$text-select-color: var(--dh-color-text-highlight);\n\n//Grid variables, same value as default just making easily accessible\n$grid-gutter-width: 30px;\n\n//Visual Overrides\n$border-radius: 4px;\n$box-shadow: 0 0.1rem 1rem var(--dh-color-dropshadow);\n\n//Override Btn\n$btn-border-radius: 4rem;\n$btn-padding-x: 1.5rem;\n$btn-transition:\n color 0.12s ease-in-out,\n background-color 0.12s ease-in-out,\n border-color 0.12s ease-in-out,\n box-shadow 0.12s ease-in-out; //default 0.15 is too long\n$btn-border-width: 2px;\n$btn-font-weight: var(--spectrum-global-font-weight-bold);\n$btn-line-height: 1.3;\n\n//Override Inputs\n$input-bg: var(--dh-color-input-bg);\n$input-disabled-bg: var(--dh-color-input-disabled-bg);\n$input-color: var(--dh-color-input-fg);\n$input-border-color: var(--dh-color-input-border);\n$input-placeholder-color: var(--dh-color-input-placeholder);\n$input-focus-border-color: var(--dh-color-input-focus-border);\n\n$input-btn-focus-width: 0.2rem;\n$input-btn-focus-color: color-mix(\n in srgb,\n var(--dh-color-accent) 35%,\n transparent\n);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n$input-btn-line-height: 1.3;\n// Bootstrap uses a calc expression to determine the input height (calc(line-height + 2*padding-y + border)).\n// The padding-y value has to be in rem to match units as it is a SASS calc.\n// Using 0.42145rem with 1.3 line height gets us to spectrum's 32px.\n/* stylelint-disable-next-line number-max-precision */\n$input-btn-padding-y: 0.42145rem;\n\n//checkbox\n$custom-control-indicator-bg: var(--dh-color-input-bg);\n$custom-control-indicator-border-color: var(--dh-color-input-border);\n$custom-checkbox-indicator-border-radius: 2px;\n$custom-control-indicator-border-width: 2px;\n$custom-control-indicator-active-bg: var(--dh-color-input-bg);\n$custom-control-indicator-active-border-color: var(--dh-color-input-fg);\n$custom-control-indicator-checked-bg: var(--dh-color-input-fg);\n$custom-control-indicator-checked-color: black; // used as mask fill color\n$custom-checkbox-indicator-indeterminate-bg: var(--dh-color-input-fg);\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: var(--dh-color-input-disabled-bg);\n$custom-control-indicator-checked-disabled-bg: var(\n --dh-color-input-disabled-bg\n);\n$custom-control-label-disabled-color: var(--dh-color-input-disabled-fg);\n\n// The $custom-select-indicator variable is used by Bootstrap to provide the\n// icon for the select dropdown. Inline svgs can't use CSS variables, so we hard\n// code the color to #929192 (the default value of --dh-color-gray-600). PR #1651\n// overrides this icon altogether for known dropdowns, so technically we may not\n// need this, but it's here in case there are any remaining instances.\n$custom-select-indicator-color: #929192;\n$custom-select-bg: var(--dh-color-selector-bg);\n$custom-select-bg-size: 16px 16px;\n//dhSort icon encoded\n$custom-select-indicator: str-replace(\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M4 7l-.4-.8 4-3.7h.8l4 3.7-.4.8H4zm0 2l-.4.8 4 3.7h.8l4-3.7L12 9H4z'/%3E%3C/svg%3E\"),\n '#',\n '%23'\n);\n$custom-select-focus-box-shadow: $input-btn-focus-box-shadow;\n$custom-select-disabled-color: $gray-500;\n$custom-select-disabled-bg: $gray-800;\n\n//modal\n$modal-content-bg: $content-bg;\n$modal-content-border-width: 0;\n$modal-md: 550px;\n$close-color: var(--dh-color-text);\n$close-text-shadow: none;\n\n// Toast notification\n$toast-bg: var(--dh-color-accent-100);\n$toast-color: var(--dh-color-text);\n$toast-error-bg: var(--dh-color-negative-bg);\n$toast-error-color: var(--dh-color-text);\n\n//tooltips\n$tooltip-bg: var(--dh-color-tooltip-bg);\n$tooltip-color: var(--dh-color-tooltip-fg);\n$tooltip-box-shadow: 0 0.1rem 1.5rem 0.1rem var(--dh-color-tooltip-box-shadow);\n\n//drowdowns\n$dropdown-bg: $gray-600;\n$dropdown-link-color: $foreground;\n$dropdown-link-hover-color: $foreground;\n$dropdown-link-hover-bg: var(--dh-color-item-list-hover-bg);\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: var(--dh-color-popover-bg);\n$contextmenu-color: var(--dh-color-text);\n$contextmenu-disabled-color: var(--dh-color-text-disabled);\n$contextmenu-keyboard-selected-bg: var(--dh-color-keyboard-selected-bg);\n$contextmenu-selected-bg: var(--dh-color-item-list-hover-bg);\n$contextmenu-selected-color: var(--dh-color-item-list-selected-fg);\n\n//hr\n$hr-border-color: var(--dh-color-hr);\n\n//links\n$link-color: $gray-400;\n$link-hover-color: $foreground;\n\n//progress-bar\n$progress-bg: $gray-600;\n$progress-border-radius: 1rem;\n\n// Set global options\n$enable-shadows: false;\n$enable-gradients: false;\n$enable-print-styles: false; //I don't think anyone should expect to \"print\" this app.\n\n// Transition times\n$transition: 0.15s;\n$transition-mid: 0.2s;\n$transition-long: 0.3s;\n$transition-slow: 0.6s;\n\n//form-validation icon, uses vsWarning icon encoded here as svg\n$form-feedback-icon-invalid-color: $danger;\n$form-feedback-icon-invalid: str-replace(\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cg fill='none'%3E%3Cg fill='#{$form-feedback-icon-invalid-color}'%3E%3Cpath d='M7.56 1h.88l6.54 12.26-.44.74H1.44L1 13.26 7.56 1zM8 2.28 2.28 13H13.7L8 2.28zM8.625 12v-1h-1.25v1h1.25zm-1.25-2V6h1.25v4h-1.25z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E \"),\n '#',\n '%23'\n);\n\n// This section of variables is not consumed directly by DH, but they need to be\n// defined for sass to compile _variables\n$table-dark-bg: $gray-800;\n$table-dark-accent-bg: var(--dh-color-highlight-hover);\n$table-dark-hover-bg: var(--dh-color-highlight-active);\n$table-dark-border-color: $gray-700;\n$popover-bg: var(--dh-color-tooltip-bg);\n$popover-border-color: var(--dh-color-overlay-modal-bg);\n$popover-header-bg: #000;\n$popover-arrow-outer-color: var(--dh-color-dropshadow);\n$custom-range-thumb-active-bg: var(--dh-color-accent-1100);\n","@use '../common/ConsoleVariables';\n@import '@deephaven/components/scss/custom.scss';\n\n$error-gutter-width: 15px;\n$font-size: ConsoleVariables.$font-size;\n$button-height: ConsoleVariables.$button-height;\n$button-vert-margin: ConsoleVariables.$button-vert-margin;\n\n.console-history-item-command,\n.console-history-item-result {\n display: flex;\n}\n\n.console-history-item-command {\n position: relative;\n white-space: pre-line;\n}\n\n.console-history-actions {\n position: absolute;\n gap: $spacer-1;\n top: 0;\n right: $spacer-2;\n display: none;\n align-items: center;\n background-color: var(--dh-color-neutral-hover-bg);\n border-radius: $border-radius;\n padding: $spacer-1;\n}\n\n.console-history-item-command-tooltip-active {\n background-color: var(--dh-color-neutral-hover-bg);\n\n .console-history-actions {\n display: flex;\n }\n}\n\n.console-history-item-command:hover {\n background-color: var(--dh-color-neutral-hover-bg);\n\n .console-history-actions {\n display: flex;\n }\n}\n\n.console-history-item-result .log-message {\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n\n// adjust gutter tick to align in the middle of button results\n.console-result-buttons .console-history-item-result .console-history-gutter {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n max-height: calc($button-height + $button-vert-margin + $button-vert-margin);\n}\n\n.console-history-item-result {\n .btn-console-object {\n display: inline-flex;\n align-items: center;\n gap: $spacer-1;\n text-align: left;\n font-size: $font-size;\n padding-left: $spacer-3;\n margin: $button-vert-margin $button-vert-margin $button-vert-margin 0;\n height: $button-height;\n border-radius: $button-height;\n }\n\n .error-message {\n color: $danger;\n display: flex;\n overflow: hidden;\n user-select: text;\n\n .error-gutter {\n padding: 0;\n flex-basis: $error-gutter-width;\n\n .error-btn-link {\n min-width: $error-gutter-width;\n background-color: transparent;\n border: 0;\n text-align: left;\n padding-left: 0;\n padding-right: 0;\n color: negative-opacity(50);\n transition: $btn-transition;\n }\n\n .error-btn-link:hover,\n .error-btn-link--active {\n color: $danger;\n }\n }\n\n .error-content {\n flex-grow: 1;\n white-space: normal;\n cursor: default;\n overflow: visible;\n text-overflow: ellipsis;\n }\n\n .console-error-text-trigger {\n cursor: pointer;\n color: $danger;\n display: inline-block;\n margin-right: $spacer-1;\n border: 1px solid transparent;\n border-radius: $border-radius;\n overflow: visible;\n white-space: pre-wrap;\n // keyboard navigation only focus state\n &:focus {\n outline: 0;\n }\n &:focus-visible {\n border: 1px solid negative-opacity(50);\n }\n }\n }\n}\n\n.console-history-actions-1 {\n // actions are centered over the line\n // note that the actions are much wider than the line itself\n top: -($spacer-3 * 0.875);\n}\n\n.console-history-actions-2 {\n // actions are centered over the line\n top: -($spacer-1 * 0.5);\n}\n\n.console-command-result:last-child .console-history-actions-1 {\n // pushed down so that the actions are visible\n top: -$spacer-4;\n}\n\n.console-command-result:first-child .console-history-actions-1 {\n // pushed up to prevent layout shifts\n top: $spacer-0;\n}\n\n.console-history-item-contextual-help-content {\n display: grid;\n grid-template-columns: auto auto;\n gap: $spacer-1 $spacer-3;\n text-align: left;\n margin-bottom: $spacer-2;\n white-space: nowrap;\n}\n\n.console-history-item-contextual-help {\n section[class*='spectrum-ContextualHelp-dialog'] {\n // The default size of the contextual help is only 250px and is too small.\n // Just set a size automatically based on the content.\n width: fit-content;\n min-width: 150px;\n }\n}\n","@use 'sass:math';\n\n//Set of spacer variables from the spacer map\n$spacer-0: map-get($spacers, 0); //0\n$spacer-1: map-get($spacers, 1);\n$spacer-2: map-get($spacers, 2);\n$spacer-3: map-get($spacers, 3);\n$spacer-4: map-get($spacers, 4);\n$spacer-5: map-get($spacers, 5);\n\n//Marching Ants for golden layout dropzone and drag and drop\n//top bottom, left right.\n//create 4 background images that are 50% color 1, 50% color 2 using graidents, two veritical, two horizontal\n//size them to ant-size and thickness\n//position those images along the egdes and make top/bottom repeat-x and left/right repeat-y\n//then offest each of those background positions by ant-size in animation to make them march.\n$ant-size: 8px;\n$ant-thickness: 1px;\n\n@mixin ants-base($color-1: black, $color-2: white) {\n background-image: linear-gradient(to right, $color-2 50%, $color-1 50%),\n linear-gradient(to right, $color-2 50%, $color-1 50%),\n linear-gradient(to bottom, $color-2 50%, $color-1 50%),\n linear-gradient(to bottom, $color-2 50%, $color-1 50%);\n background-size:\n $ant-size $ant-thickness,\n $ant-size $ant-thickness,\n $ant-thickness $ant-size,\n $ant-thickness $ant-size;\n background-position:\n 0 top,\n 0 bottom,\n left 0,\n right 0;\n background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;\n animation: march 0.5s;\n animation-timing-function: linear;\n animation-iteration-count: infinite;\n}\n\n@mixin drag-stack($pseudo-element) {\n &::#{$pseudo-element} {\n content: ' ';\n background: $primary;\n box-shadow: $box-shadow;\n border-radius: $border-radius;\n position: absolute;\n height: 100%;\n width: 100%;\n @content;\n }\n}\n\n$focus-bg-transparency: 12%;\n$hover-bg-transparency: 14%;\n$active-bg-transparency: 28%;\n$exception-transparency: 28%;\n","$font-size: 12px;\n$line-height: 18px;\n$button-height: 26px;\n$button-vert-margin: 4px;\n"]}
|
|
@@ -12,8 +12,12 @@ interface ConsoleHistoryItemProps {
|
|
|
12
12
|
disabled?: boolean;
|
|
13
13
|
supportsType: (type: string) => boolean;
|
|
14
14
|
iconForType: (type: string) => ReactElement;
|
|
15
|
+
onCommandSubmit: (command: string) => void;
|
|
15
16
|
}
|
|
16
|
-
|
|
17
|
+
interface ConsoleHistoryItemState {
|
|
18
|
+
isTooltipVisible: boolean;
|
|
19
|
+
}
|
|
20
|
+
declare class ConsoleHistoryItem extends PureComponent<ConsoleHistoryItemProps, ConsoleHistoryItemState> {
|
|
17
21
|
static defaultProps: {
|
|
18
22
|
disabled: boolean;
|
|
19
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConsoleHistoryItem.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistoryItem.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAc,EAAE,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAGhE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAMjD,OAAO,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ConsoleHistoryItem.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistoryItem.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAc,EAAE,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAGhE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAMjD,OAAO,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAKtE,UAAU,uBAAuB;IAC/B,IAAI,EAAE,wBAAwB,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,kBAAkB,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,YAAY,CAAC;IAC5C,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAED,UAAU,uBAAuB;IAC/B,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,cAAM,kBAAmB,SAAQ,aAAa,CAC5C,uBAAuB,EACvB,uBAAuB,CACxB;IACC,MAAM,CAAC,YAAY;;MAEjB;gBAEU,KAAK,EAAE,uBAAuB;IAW1C,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,kBAAkB,GAAG,IAAI;IAO1D,iBAAiB,IAAI,IAAI;IAQzB,MAAM,IAAI,YAAY;CAqHvB;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -13,11 +13,15 @@ import ConsoleHistoryItemResult from "./ConsoleHistoryItemResult.js";
|
|
|
13
13
|
import ConsoleHistoryResultInProgress from "./ConsoleHistoryResultInProgress.js";
|
|
14
14
|
import ConsoleHistoryResultErrorMessage from "./ConsoleHistoryResultErrorMessage.js";
|
|
15
15
|
import "./ConsoleHistoryItem.css";
|
|
16
|
+
import ConsoleHistoryItemActions from "./ConsoleHistoryItemActions.js";
|
|
16
17
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
18
|
var log = Log.module('ConsoleHistoryItem');
|
|
18
19
|
class ConsoleHistoryItem extends PureComponent {
|
|
19
20
|
constructor(props) {
|
|
20
21
|
super(props);
|
|
22
|
+
this.state = {
|
|
23
|
+
isTooltipVisible: false
|
|
24
|
+
};
|
|
21
25
|
this.handleCancelClick = this.handleCancelClick.bind(this);
|
|
22
26
|
this.handleObjectClick = this.handleObjectClick.bind(this);
|
|
23
27
|
}
|
|
@@ -38,11 +42,15 @@ class ConsoleHistoryItem extends PureComponent {
|
|
|
38
42
|
}
|
|
39
43
|
}
|
|
40
44
|
render() {
|
|
45
|
+
var {
|
|
46
|
+
isTooltipVisible
|
|
47
|
+
} = this.state;
|
|
41
48
|
var {
|
|
42
49
|
disabled,
|
|
43
50
|
item,
|
|
44
51
|
language,
|
|
45
|
-
iconForType
|
|
52
|
+
iconForType,
|
|
53
|
+
onCommandSubmit
|
|
46
54
|
} = this.props;
|
|
47
55
|
var {
|
|
48
56
|
disabledObjects,
|
|
@@ -52,16 +60,24 @@ class ConsoleHistoryItem extends PureComponent {
|
|
|
52
60
|
var commandElement = null;
|
|
53
61
|
if (hasCommand) {
|
|
54
62
|
commandElement = /*#__PURE__*/_jsxs("div", {
|
|
55
|
-
className:
|
|
63
|
+
className: classNames('console-history-item-command', {
|
|
64
|
+
'console-history-item-command-tooltip-active': isTooltipVisible
|
|
65
|
+
}),
|
|
56
66
|
children: [/*#__PURE__*/_jsx("div", {
|
|
57
67
|
className: "console-history-gutter",
|
|
58
68
|
children: ">"
|
|
59
|
-
}), /*#__PURE__*/
|
|
69
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
60
70
|
className: "console-history-content",
|
|
61
|
-
children: /*#__PURE__*/_jsx(Code, {
|
|
71
|
+
children: [/*#__PURE__*/_jsx(Code, {
|
|
62
72
|
language: language,
|
|
63
73
|
children: item.command
|
|
64
|
-
})
|
|
74
|
+
}), /*#__PURE__*/_jsx(ConsoleHistoryItemActions, {
|
|
75
|
+
item: item,
|
|
76
|
+
onCommandSubmit: onCommandSubmit,
|
|
77
|
+
handleTooltipVisible: isVisible => this.setState({
|
|
78
|
+
isTooltipVisible: isVisible
|
|
79
|
+
})
|
|
80
|
+
})]
|
|
65
81
|
})]
|
|
66
82
|
});
|
|
67
83
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConsoleHistoryItem.js","names":["React","PureComponent","Button","Log","classNames","Code","ConsoleHistoryItemResult","ConsoleHistoryResultInProgress","ConsoleHistoryResultErrorMessage","jsx","_jsx","jsxs","_jsxs","log","module","ConsoleHistoryItem","constructor","props","handleCancelClick","bind","handleObjectClick","object","debug","openObject","item","cancelResult","concat","command","render","disabled","language","iconForType","disabledObjects","result","hasCommand","commandElement","className","children","resultElements","hasButtons","error","message","changes","created","updated","forEach","title","key","btnDisabled","undefined","indexOf","element","kind","onClick","icon","type","push","_message","errorMessage","onCancelClick","resultElement","length","_defineProperty"],"sources":["../../src/console-history/ConsoleHistoryItem.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { PureComponent, type ReactElement } from 'react';\nimport { Button } from '@deephaven/components';\nimport Log from '@deephaven/log';\nimport type { dh } from '@deephaven/jsapi-types';\nimport classNames from 'classnames';\nimport { Code } from '../common';\nimport ConsoleHistoryItemResult from './ConsoleHistoryItemResult';\nimport ConsoleHistoryResultInProgress from './ConsoleHistoryResultInProgress';\nimport ConsoleHistoryResultErrorMessage from './ConsoleHistoryResultErrorMessage';\nimport './ConsoleHistoryItem.scss';\nimport { type ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\n\nconst log = Log.module('ConsoleHistoryItem');\n\ninterface ConsoleHistoryItemProps {\n item: ConsoleHistoryActionItem;\n language: string;\n openObject: (object: dh.ide.VariableDefinition) => void;\n disabled?: boolean;\n // TODO: #1573 Remove this eslint disable\n // eslint-disable-next-line react/no-unused-prop-types\n supportsType: (type: string) => boolean;\n iconForType: (type: string) => ReactElement;\n}\n\nclass ConsoleHistoryItem extends PureComponent<\n ConsoleHistoryItemProps,\n Record<string, never>\n> {\n static defaultProps = {\n disabled: false,\n };\n\n constructor(props: ConsoleHistoryItemProps) {\n super(props);\n\n this.handleCancelClick = this.handleCancelClick.bind(this);\n this.handleObjectClick = this.handleObjectClick.bind(this);\n }\n\n handleObjectClick(object: dh.ide.VariableDefinition): void {\n log.debug('handleObjectClick', object);\n\n const { openObject } = this.props;\n openObject(object);\n }\n\n handleCancelClick(): void {\n const { item } = this.props;\n if (item != null && item.cancelResult) {\n log.debug(`Cancelling command: ${item.command}`);\n item.cancelResult();\n }\n }\n\n render(): ReactElement {\n const { disabled, item, language, iconForType } = this.props;\n const { disabledObjects, result } = item;\n const hasCommand = item.command != null && item.command !== '';\n\n let commandElement = null;\n if (hasCommand) {\n commandElement = (\n <div className=\"console-history-item-command\">\n <div className=\"console-history-gutter\">></div>\n <div className=\"console-history-content\">\n <Code language={language}>{item.command}</Code>\n </div>\n </div>\n );\n }\n\n const resultElements = [];\n let hasButtons = false;\n\n if (result) {\n const { error, message, changes } = result;\n\n if (changes) {\n const { created, updated } = changes;\n // TODO: #1573 filter for supported types or change button kind\n // based on if type is supported. Possibly a warn state for widgets\n // that the UI doesn't have anything registered to support.\n [...created, ...updated].forEach(object => {\n hasButtons = true;\n const { title } = object;\n const key = `${title}`;\n const btnDisabled =\n disabled === undefined ||\n disabled ||\n (disabledObjects ?? []).indexOf(key) >= 0;\n const element = (\n <Button\n key={key}\n kind=\"primary\"\n onClick={() => this.handleObjectClick(object)}\n className=\"btn-console-object\"\n disabled={btnDisabled}\n icon={iconForType(object.type)}\n >\n {title}\n </Button>\n );\n resultElements.push(element);\n });\n }\n\n // If the error has an associated command, we'll actually get a separate ERROR item printed out, so only print an error if there isn't an associated command\n if (error != null && !hasCommand) {\n let errorMessage = `${(error as { message: string }).message ?? error}`;\n if (!errorMessage) {\n errorMessage = error as string;\n }\n const element = (\n <ConsoleHistoryResultErrorMessage\n key=\"result-error\"\n message={errorMessage}\n />\n );\n resultElements.push(element);\n }\n\n if (message !== undefined && message !== '') {\n const element = (\n <div key=\"log-message\" className=\"log-message\">\n {message}\n </div>\n );\n resultElements.push(element);\n }\n } else {\n hasButtons = true;\n const element = (\n <ConsoleHistoryResultInProgress\n key=\"in_progress\"\n onCancelClick={this.handleCancelClick}\n disabled={disabled}\n />\n );\n resultElements.push(element);\n }\n\n let resultElement = null;\n if (resultElements.length > 0) {\n resultElement = (\n <ConsoleHistoryItemResult>{resultElements}</ConsoleHistoryItemResult>\n );\n }\n\n return (\n <div\n className={classNames('console-command-result', {\n 'console-result-buttons': hasButtons,\n })}\n >\n {commandElement}\n {resultElement}\n </div>\n );\n }\n}\n\nexport default ConsoleHistoryItem;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ConsoleHistoryItem.js","names":["React","PureComponent","Button","Log","classNames","Code","ConsoleHistoryItemResult","ConsoleHistoryResultInProgress","ConsoleHistoryResultErrorMessage","ConsoleHistoryItemActions","jsx","_jsx","jsxs","_jsxs","log","module","ConsoleHistoryItem","constructor","props","state","isTooltipVisible","handleCancelClick","bind","handleObjectClick","object","debug","openObject","item","cancelResult","concat","command","render","disabled","language","iconForType","onCommandSubmit","disabledObjects","result","hasCommand","commandElement","className","children","handleTooltipVisible","isVisible","setState","resultElements","hasButtons","error","message","changes","created","updated","forEach","title","key","btnDisabled","undefined","indexOf","element","kind","onClick","icon","type","push","_message","errorMessage","onCancelClick","resultElement","length","_defineProperty"],"sources":["../../src/console-history/ConsoleHistoryItem.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { PureComponent, type ReactElement } from 'react';\nimport { Button } from '@deephaven/components';\nimport Log from '@deephaven/log';\nimport type { dh } from '@deephaven/jsapi-types';\nimport classNames from 'classnames';\nimport { Code } from '../common';\nimport ConsoleHistoryItemResult from './ConsoleHistoryItemResult';\nimport ConsoleHistoryResultInProgress from './ConsoleHistoryResultInProgress';\nimport ConsoleHistoryResultErrorMessage from './ConsoleHistoryResultErrorMessage';\nimport './ConsoleHistoryItem.scss';\nimport { type ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\nimport ConsoleHistoryItemActions from './ConsoleHistoryItemActions';\n\nconst log = Log.module('ConsoleHistoryItem');\n\ninterface ConsoleHistoryItemProps {\n item: ConsoleHistoryActionItem;\n language: string;\n openObject: (object: dh.ide.VariableDefinition) => void;\n disabled?: boolean;\n // TODO: #1573 Remove this eslint disable\n // eslint-disable-next-line react/no-unused-prop-types\n supportsType: (type: string) => boolean;\n iconForType: (type: string) => ReactElement;\n onCommandSubmit: (command: string) => void;\n}\n\ninterface ConsoleHistoryItemState {\n isTooltipVisible: boolean;\n}\n\nclass ConsoleHistoryItem extends PureComponent<\n ConsoleHistoryItemProps,\n ConsoleHistoryItemState\n> {\n static defaultProps = {\n disabled: false,\n };\n\n constructor(props: ConsoleHistoryItemProps) {\n super(props);\n\n this.state = {\n isTooltipVisible: false,\n };\n\n this.handleCancelClick = this.handleCancelClick.bind(this);\n this.handleObjectClick = this.handleObjectClick.bind(this);\n }\n\n handleObjectClick(object: dh.ide.VariableDefinition): void {\n log.debug('handleObjectClick', object);\n\n const { openObject } = this.props;\n openObject(object);\n }\n\n handleCancelClick(): void {\n const { item } = this.props;\n if (item != null && item.cancelResult) {\n log.debug(`Cancelling command: ${item.command}`);\n item.cancelResult();\n }\n }\n\n render(): ReactElement {\n const { isTooltipVisible } = this.state;\n const { disabled, item, language, iconForType, onCommandSubmit } =\n this.props;\n const { disabledObjects, result } = item;\n const hasCommand = item.command != null && item.command !== '';\n let commandElement = null;\n if (hasCommand) {\n commandElement = (\n <div\n className={classNames('console-history-item-command', {\n 'console-history-item-command-tooltip-active': isTooltipVisible,\n })}\n >\n <div className=\"console-history-gutter\">></div>\n <div className=\"console-history-content\">\n <Code language={language}>{item.command}</Code>\n <ConsoleHistoryItemActions\n item={item}\n onCommandSubmit={onCommandSubmit}\n handleTooltipVisible={(isVisible: boolean) =>\n this.setState({ isTooltipVisible: isVisible })\n }\n />\n </div>\n </div>\n );\n }\n\n const resultElements = [];\n let hasButtons = false;\n\n if (result) {\n const { error, message, changes } = result;\n\n if (changes) {\n const { created, updated } = changes;\n // TODO: #1573 filter for supported types or change button kind\n // based on if type is supported. Possibly a warn state for widgets\n // that the UI doesn't have anything registered to support.\n [...created, ...updated].forEach(object => {\n hasButtons = true;\n const { title } = object;\n const key = `${title}`;\n const btnDisabled =\n disabled === undefined ||\n disabled ||\n (disabledObjects ?? []).indexOf(key) >= 0;\n const element = (\n <Button\n key={key}\n kind=\"primary\"\n onClick={() => this.handleObjectClick(object)}\n className=\"btn-console-object\"\n disabled={btnDisabled}\n icon={iconForType(object.type)}\n >\n {title}\n </Button>\n );\n resultElements.push(element);\n });\n }\n\n // If the error has an associated command, we'll actually get a separate ERROR item printed out, so only print an error if there isn't an associated command\n if (error != null && !hasCommand) {\n let errorMessage = `${(error as { message: string }).message ?? error}`;\n if (!errorMessage) {\n errorMessage = error as string;\n }\n const element = (\n <ConsoleHistoryResultErrorMessage\n key=\"result-error\"\n message={errorMessage}\n />\n );\n resultElements.push(element);\n }\n\n if (message !== undefined && message !== '') {\n const element = (\n <div key=\"log-message\" className=\"log-message\">\n {message}\n </div>\n );\n resultElements.push(element);\n }\n } else {\n hasButtons = true;\n const element = (\n <ConsoleHistoryResultInProgress\n key=\"in_progress\"\n onCancelClick={this.handleCancelClick}\n disabled={disabled}\n />\n );\n resultElements.push(element);\n }\n\n let resultElement = null;\n if (resultElements.length > 0) {\n resultElement = (\n <ConsoleHistoryItemResult>{resultElements}</ConsoleHistoryItemResult>\n );\n }\n\n return (\n <div\n className={classNames('console-command-result', {\n 'console-result-buttons': hasButtons,\n })}\n >\n {commandElement}\n {resultElement}\n </div>\n );\n }\n}\n\nexport default ConsoleHistoryItem;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Console display for use in the Iris environment.
|
|
3
|
+
*/
|
|
4
|
+
import React, { type ReactElement } from 'react';
|
|
5
|
+
import './ConsoleHistoryItem.scss';
|
|
6
|
+
import { type ConsoleHistoryActionItem } from './ConsoleHistoryTypes';
|
|
7
|
+
interface ConsoleHistoryItemProps {
|
|
8
|
+
item: ConsoleHistoryActionItem;
|
|
9
|
+
onCommandSubmit: (command: string) => void;
|
|
10
|
+
handleTooltipVisible: (isVisible: boolean) => void;
|
|
11
|
+
}
|
|
12
|
+
declare const ConsoleHistoryItemActions: React.MemoExoticComponent<(props: ConsoleHistoryItemProps) => ReactElement>;
|
|
13
|
+
export default ConsoleHistoryItemActions;
|
|
14
|
+
//# sourceMappingURL=ConsoleHistoryItemActions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsoleHistoryItemActions.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistoryItemActions.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,EAAQ,KAAK,YAAY,EAAW,MAAM,OAAO,CAAC;AAEhE,OAAO,2BAA2B,CAAC;AAGnC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAGtE,UAAU,uBAAuB;IAC/B,IAAI,EAAE,wBAAwB,CAAC;IAC/B,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,oBAAoB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CACpD;AAkBD,QAAA,MAAM,yBAAyB,oCACrB,uBAAuB,KAAG,YAAY,CA0B/C,CAAC;AAIF,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Console display for use in the Iris environment.
|
|
3
|
+
*/
|
|
4
|
+
import React, { memo, useMemo } from 'react';
|
|
5
|
+
import { Button, CopyButton, ContextualHelp } from '@deephaven/components';
|
|
6
|
+
import "./ConsoleHistoryItem.css";
|
|
7
|
+
import { vsDebugRerun } from '@deephaven/icons';
|
|
8
|
+
import classNames from 'classnames';
|
|
9
|
+
import ConsoleHistoryItemTooltip from "./ConsoleHistoryItemTooltip.js";
|
|
10
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
|
+
/**
|
|
12
|
+
* Get the action bar class for a console history item.
|
|
13
|
+
* @param lineCount The number of lines in the console history item.
|
|
14
|
+
* @returns The action bar class name or null if not applicable.
|
|
15
|
+
*/
|
|
16
|
+
var getActionBarClass = item => {
|
|
17
|
+
if ((item === null || item === void 0 ? void 0 : item.command) == null) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
var lineCount = item.command ? item.command.split('\n').length : 0;
|
|
21
|
+
if (lineCount > 2) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
return "console-history-actions-".concat(lineCount);
|
|
25
|
+
};
|
|
26
|
+
var ConsoleHistoryItemActions = /*#__PURE__*/memo(props => {
|
|
27
|
+
var _item$command;
|
|
28
|
+
var {
|
|
29
|
+
item,
|
|
30
|
+
onCommandSubmit,
|
|
31
|
+
handleTooltipVisible
|
|
32
|
+
} = props;
|
|
33
|
+
var actionBarClass = useMemo(() => getActionBarClass(item), [item]);
|
|
34
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
35
|
+
className: classNames('console-history-actions', actionBarClass),
|
|
36
|
+
children: [/*#__PURE__*/_jsx(CopyButton, {
|
|
37
|
+
copy: (_item$command = item.command) !== null && _item$command !== void 0 ? _item$command : '',
|
|
38
|
+
kind: "inline"
|
|
39
|
+
}), /*#__PURE__*/_jsx(Button, {
|
|
40
|
+
icon: vsDebugRerun,
|
|
41
|
+
kind: "inline",
|
|
42
|
+
onClick: () => {
|
|
43
|
+
var _item$command2;
|
|
44
|
+
return onCommandSubmit((_item$command2 = item.command) !== null && _item$command2 !== void 0 ? _item$command2 : '');
|
|
45
|
+
},
|
|
46
|
+
tooltip: "Rerun",
|
|
47
|
+
children: null
|
|
48
|
+
}), /*#__PURE__*/_jsx(ContextualHelp, {
|
|
49
|
+
variant: "info",
|
|
50
|
+
onOpenChange: handleTooltipVisible,
|
|
51
|
+
UNSAFE_className: "console-history-item-contextual-help",
|
|
52
|
+
children: /*#__PURE__*/_jsx(ConsoleHistoryItemTooltip, {
|
|
53
|
+
item: item
|
|
54
|
+
})
|
|
55
|
+
})]
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
ConsoleHistoryItemActions.displayName = 'ConsoleHistoryItemActions';
|
|
59
|
+
export default ConsoleHistoryItemActions;
|
|
60
|
+
//# sourceMappingURL=ConsoleHistoryItemActions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsoleHistoryItemActions.js","names":["React","memo","useMemo","Button","CopyButton","ContextualHelp","vsDebugRerun","classNames","ConsoleHistoryItemTooltip","jsx","_jsx","jsxs","_jsxs","getActionBarClass","item","command","lineCount","split","length","concat","ConsoleHistoryItemActions","props","_item$command","onCommandSubmit","handleTooltipVisible","actionBarClass","className","children","copy","kind","icon","onClick","_item$command2","tooltip","variant","onOpenChange","UNSAFE_className","displayName"],"sources":["../../src/console-history/ConsoleHistoryItemActions.tsx"],"sourcesContent":["/**\n * Console display for use in the Iris environment.\n */\nimport React, { memo, type ReactElement, useMemo } from 'react';\nimport { Button, CopyButton, ContextualHelp } from '@deephaven/components';\nimport './ConsoleHistoryItem.scss';\nimport { vsDebugRerun } from '@deephaven/icons';\nimport classNames from 'classnames';\nimport { type ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\nimport ConsoleHistoryItemTooltip from './ConsoleHistoryItemTooltip';\n\ninterface ConsoleHistoryItemProps {\n item: ConsoleHistoryActionItem;\n onCommandSubmit: (command: string) => void;\n handleTooltipVisible: (isVisible: boolean) => void;\n}\n\n/**\n * Get the action bar class for a console history item.\n * @param lineCount The number of lines in the console history item.\n * @returns The action bar class name or null if not applicable.\n */\nconst getActionBarClass = (item: ConsoleHistoryActionItem): string | null => {\n if (item?.command == null) {\n return null;\n }\n const lineCount = item.command ? item.command.split('\\n').length : 0;\n if (lineCount > 2) {\n return null;\n }\n return `console-history-actions-${lineCount}`;\n};\n\nconst ConsoleHistoryItemActions = memo(\n (props: ConsoleHistoryItemProps): ReactElement => {\n const { item, onCommandSubmit, handleTooltipVisible } = props;\n\n const actionBarClass = useMemo(() => getActionBarClass(item), [item]);\n\n return (\n <div className={classNames('console-history-actions', actionBarClass)}>\n <CopyButton copy={item.command ?? ''} kind=\"inline\" />\n <Button\n icon={vsDebugRerun}\n kind=\"inline\"\n onClick={() => onCommandSubmit(item.command ?? '')}\n tooltip=\"Rerun\"\n >\n {null}\n </Button>\n <ContextualHelp\n variant=\"info\"\n onOpenChange={handleTooltipVisible}\n UNSAFE_className=\"console-history-item-contextual-help\"\n >\n <ConsoleHistoryItemTooltip item={item} />\n </ContextualHelp>\n </div>\n );\n }\n);\n\nConsoleHistoryItemActions.displayName = 'ConsoleHistoryItemActions';\n\nexport default ConsoleHistoryItemActions;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,KAAK,IAAIC,IAAI,EAAqBC,OAAO,QAAQ,OAAO;AAC/D,SAASC,MAAM,EAAEC,UAAU,EAAEC,cAAc,QAAQ,uBAAuB;AAAC;AAE3E,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,OAAOC,UAAU,MAAM,YAAY;AAAC,OAE7BC,yBAAyB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAQhC;AACA;AACA;AACA;AACA;AACA,IAAMC,iBAAiB,GAAIC,IAA8B,IAAoB;EAC3E,IAAI,CAAAA,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEC,OAAO,KAAI,IAAI,EAAE;IACzB,OAAO,IAAI;EACb;EACA,IAAMC,SAAS,GAAGF,IAAI,CAACC,OAAO,GAAGD,IAAI,CAACC,OAAO,CAACE,KAAK,CAAC,IAAI,CAAC,CAACC,MAAM,GAAG,CAAC;EACpE,IAAIF,SAAS,GAAG,CAAC,EAAE;IACjB,OAAO,IAAI;EACb;EACA,kCAAAG,MAAA,CAAkCH,SAAS;AAC7C,CAAC;AAED,IAAMI,yBAAyB,gBAAGnB,IAAI,CACnCoB,KAA8B,IAAmB;EAAA,IAAAC,aAAA;EAChD,IAAM;IAAER,IAAI;IAAES,eAAe;IAAEC;EAAqB,CAAC,GAAGH,KAAK;EAE7D,IAAMI,cAAc,GAAGvB,OAAO,CAAC,MAAMW,iBAAiB,CAACC,IAAI,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAErE,oBACEF,KAAA;IAAKc,SAAS,EAAEnB,UAAU,CAAC,yBAAyB,EAAEkB,cAAc,CAAE;IAAAE,QAAA,gBACpEjB,IAAA,CAACN,UAAU;MAACwB,IAAI,GAAAN,aAAA,GAAER,IAAI,CAACC,OAAO,cAAAO,aAAA,cAAAA,aAAA,GAAI,EAAG;MAACO,IAAI,EAAC;IAAQ,CAAE,CAAC,eACtDnB,IAAA,CAACP,MAAM;MACL2B,IAAI,EAAExB,YAAa;MACnBuB,IAAI,EAAC,QAAQ;MACbE,OAAO,EAAEA,CAAA;QAAA,IAAAC,cAAA;QAAA,OAAMT,eAAe,EAAAS,cAAA,GAAClB,IAAI,CAACC,OAAO,cAAAiB,cAAA,cAAAA,cAAA,GAAI,EAAE,CAAC;MAAA,CAAC;MACnDC,OAAO,EAAC,OAAO;MAAAN,QAAA,EAEd;IAAI,CACC,CAAC,eACTjB,IAAA,CAACL,cAAc;MACb6B,OAAO,EAAC,MAAM;MACdC,YAAY,EAAEX,oBAAqB;MACnCY,gBAAgB,EAAC,sCAAsC;MAAAT,QAAA,eAEvDjB,IAAA,CAACF,yBAAyB;QAACM,IAAI,EAAEA;MAAK,CAAE;IAAC,CAC3B,CAAC;EAAA,CACd,CAAC;AAEV,CACF,CAAC;AAEDM,yBAAyB,CAACiB,WAAW,GAAG,2BAA2B;AAEnE,eAAejB,yBAAyB","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React, { type ReactElement } from 'react';
|
|
2
|
+
import { type ConsoleHistoryActionItem } from './ConsoleHistoryTypes';
|
|
3
|
+
interface ConsoleHistoryActionItemTooltipProps {
|
|
4
|
+
item: ConsoleHistoryActionItem;
|
|
5
|
+
}
|
|
6
|
+
declare const ConsoleHistoryItemTooltip: React.MemoExoticComponent<(props: ConsoleHistoryActionItemTooltipProps) => ReactElement>;
|
|
7
|
+
export default ConsoleHistoryItemTooltip;
|
|
8
|
+
//# sourceMappingURL=ConsoleHistoryItemTooltip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsoleHistoryItemTooltip.d.ts","sourceRoot":"","sources":["../../src/console-history/ConsoleHistoryItemTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,YAAY,EAAiB,MAAM,OAAO,CAAC;AAGhE,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,UAAU,oCAAoC;IAC5C,IAAI,EAAE,wBAAwB,CAAC;CAChC;AAED,QAAA,MAAM,yBAAyB,oCACrB,oCAAoC,KAAG,YAAY,CAyC5D,CAAC;AAIF,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import React, { useMemo, memo } from 'react';
|
|
2
|
+
import { Content, Heading } from '@deephaven/components';
|
|
3
|
+
import { TimeUtils } from '@deephaven/utils';
|
|
4
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
var ConsoleHistoryItemTooltip = /*#__PURE__*/memo(props => {
|
|
6
|
+
var {
|
|
7
|
+
item
|
|
8
|
+
} = props;
|
|
9
|
+
var {
|
|
10
|
+
startTime,
|
|
11
|
+
serverStartTime,
|
|
12
|
+
serverEndTime
|
|
13
|
+
} = item;
|
|
14
|
+
var endTime = useMemo(() => {
|
|
15
|
+
var _item$endTime;
|
|
16
|
+
return (_item$endTime = item.endTime) !== null && _item$endTime !== void 0 ? _item$endTime : Date.now();
|
|
17
|
+
}, [item.endTime]);
|
|
18
|
+
var timeString = TimeUtils.formatConvertedDuration(startTime, endTime);
|
|
19
|
+
var hasTimeString = Boolean(timeString);
|
|
20
|
+
var serverTimeString = null;
|
|
21
|
+
if (serverStartTime != null && serverEndTime != null) {
|
|
22
|
+
// server provided times are in nanoseconds
|
|
23
|
+
serverTimeString = TimeUtils.formatConvertedDuration(serverStartTime, serverEndTime, 'ns');
|
|
24
|
+
}
|
|
25
|
+
var hasServerTimeString = Boolean(serverTimeString);
|
|
26
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
27
|
+
children: [/*#__PURE__*/_jsx(Heading, {
|
|
28
|
+
children: "Execution Info"
|
|
29
|
+
}), /*#__PURE__*/_jsx(Content, {
|
|
30
|
+
children: /*#__PURE__*/_jsxs("div", {
|
|
31
|
+
className: "console-history-item-contextual-help-content",
|
|
32
|
+
children: [hasTimeString && /*#__PURE__*/_jsxs(_Fragment, {
|
|
33
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
34
|
+
children: "Elapsed time"
|
|
35
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
36
|
+
children: timeString
|
|
37
|
+
})]
|
|
38
|
+
}), hasServerTimeString && /*#__PURE__*/_jsxs(_Fragment, {
|
|
39
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
40
|
+
children: "Server query time"
|
|
41
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
42
|
+
children: serverTimeString
|
|
43
|
+
})]
|
|
44
|
+
})]
|
|
45
|
+
})
|
|
46
|
+
})]
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
ConsoleHistoryItemTooltip.displayName = 'ConsoleHistoryItemTooltip';
|
|
50
|
+
export default ConsoleHistoryItemTooltip;
|
|
51
|
+
//# sourceMappingURL=ConsoleHistoryItemTooltip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsoleHistoryItemTooltip.js","names":["React","useMemo","memo","Content","Heading","TimeUtils","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ConsoleHistoryItemTooltip","props","item","startTime","serverStartTime","serverEndTime","endTime","_item$endTime","Date","now","timeString","formatConvertedDuration","hasTimeString","Boolean","serverTimeString","hasServerTimeString","children","className","displayName"],"sources":["../../src/console-history/ConsoleHistoryItemTooltip.tsx"],"sourcesContent":["import React, { type ReactElement, useMemo, memo } from 'react';\nimport { Content, Heading } from '@deephaven/components';\nimport { TimeUtils } from '@deephaven/utils';\nimport { type ConsoleHistoryActionItem } from './ConsoleHistoryTypes';\n\ninterface ConsoleHistoryActionItemTooltipProps {\n item: ConsoleHistoryActionItem;\n}\n\nconst ConsoleHistoryItemTooltip = memo(\n (props: ConsoleHistoryActionItemTooltipProps): ReactElement => {\n const { item } = props;\n const { startTime, serverStartTime, serverEndTime } = item;\n const endTime = useMemo(() => item.endTime ?? Date.now(), [item.endTime]);\n\n const timeString = TimeUtils.formatConvertedDuration(startTime, endTime);\n\n const hasTimeString = Boolean(timeString);\n let serverTimeString = null;\n if (serverStartTime != null && serverEndTime != null) {\n // server provided times are in nanoseconds\n serverTimeString = TimeUtils.formatConvertedDuration(\n serverStartTime,\n serverEndTime,\n 'ns'\n );\n }\n const hasServerTimeString = Boolean(serverTimeString);\n\n return (\n <>\n <Heading>Execution Info</Heading>\n <Content>\n <div className=\"console-history-item-contextual-help-content\">\n {hasTimeString && (\n <>\n <div>Elapsed time</div>\n <div>{timeString}</div>\n </>\n )}\n {hasServerTimeString && (\n <>\n <div>Server query time</div>\n <div>{serverTimeString}</div>\n </>\n )}\n </div>\n </Content>\n </>\n );\n }\n);\n\nConsoleHistoryItemTooltip.displayName = 'ConsoleHistoryItemTooltip';\n\nexport default ConsoleHistoryItemTooltip;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAuBC,OAAO,EAAEC,IAAI,QAAQ,OAAO;AAC/D,SAASC,OAAO,EAAEC,OAAO,QAAQ,uBAAuB;AACxD,SAASC,SAAS,QAAQ,kBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAO7C,IAAMC,yBAAyB,gBAAGV,IAAI,CACnCW,KAA2C,IAAmB;EAC7D,IAAM;IAAEC;EAAK,CAAC,GAAGD,KAAK;EACtB,IAAM;IAAEE,SAAS;IAAEC,eAAe;IAAEC;EAAc,CAAC,GAAGH,IAAI;EAC1D,IAAMI,OAAO,GAAGjB,OAAO,CAAC;IAAA,IAAAkB,aAAA;IAAA,QAAAA,aAAA,GAAML,IAAI,CAACI,OAAO,cAAAC,aAAA,cAAAA,aAAA,GAAIC,IAAI,CAACC,GAAG,CAAC,CAAC;EAAA,GAAE,CAACP,IAAI,CAACI,OAAO,CAAC,CAAC;EAEzE,IAAMI,UAAU,GAAGjB,SAAS,CAACkB,uBAAuB,CAACR,SAAS,EAAEG,OAAO,CAAC;EAExE,IAAMM,aAAa,GAAGC,OAAO,CAACH,UAAU,CAAC;EACzC,IAAII,gBAAgB,GAAG,IAAI;EAC3B,IAAIV,eAAe,IAAI,IAAI,IAAIC,aAAa,IAAI,IAAI,EAAE;IACpD;IACAS,gBAAgB,GAAGrB,SAAS,CAACkB,uBAAuB,CAClDP,eAAe,EACfC,aAAa,EACb,IACF,CAAC;EACH;EACA,IAAMU,mBAAmB,GAAGF,OAAO,CAACC,gBAAgB,CAAC;EAErD,oBACEf,KAAA,CAAAF,SAAA;IAAAmB,QAAA,gBACErB,IAAA,CAACH,OAAO;MAAAwB,QAAA,EAAC;IAAc,CAAS,CAAC,eACjCrB,IAAA,CAACJ,OAAO;MAAAyB,QAAA,eACNjB,KAAA;QAAKkB,SAAS,EAAC,8CAA8C;QAAAD,QAAA,GAC1DJ,aAAa,iBACZb,KAAA,CAAAF,SAAA;UAAAmB,QAAA,gBACErB,IAAA;YAAAqB,QAAA,EAAK;UAAY,CAAK,CAAC,eACvBrB,IAAA;YAAAqB,QAAA,EAAMN;UAAU,CAAM,CAAC;QAAA,CACvB,CACH,EACAK,mBAAmB,iBAClBhB,KAAA,CAAAF,SAAA;UAAAmB,QAAA,gBACErB,IAAA;YAAAqB,QAAA,EAAK;UAAiB,CAAK,CAAC,eAC5BrB,IAAA;YAAAqB,QAAA,EAAMF;UAAgB,CAAM,CAAC;QAAA,CAC7B,CACH;MAAA,CACE;IAAC,CACC,CAAC;EAAA,CACV,CAAC;AAEP,CACF,CAAC;AAEDd,yBAAyB,CAACkB,WAAW,GAAG,2BAA2B;AAEnE,eAAelB,yBAAyB","ignoreList":[]}
|