@deephaven/iris-grid 0.54.1-ui.1 → 0.55.1-alpha-theming-bootstrap.77

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/AdvancedFilterCreator.css +11 -11
  2. package/dist/AdvancedFilterCreator.css.map +1 -1
  3. package/dist/AdvancedFilterCreatorFilterItem.css +2 -2
  4. package/dist/AdvancedFilterCreatorFilterItem.css.map +1 -1
  5. package/dist/AdvancedFilterCreatorFilterItem.d.ts +1 -1
  6. package/dist/AdvancedFilterCreatorFilterItem.d.ts.map +1 -1
  7. package/dist/AdvancedFilterCreatorFilterItem.js +5 -5
  8. package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
  9. package/dist/AdvancedFilterCreatorSelectValue.css +4 -4
  10. package/dist/AdvancedFilterCreatorSelectValue.css.map +1 -1
  11. package/dist/ColumnStatistics.css +4 -4
  12. package/dist/ColumnStatistics.css.map +1 -1
  13. package/dist/CrossColumnSearch.css +1 -1
  14. package/dist/CrossColumnSearch.css.map +1 -1
  15. package/dist/FilterInputField.css +40 -40
  16. package/dist/FilterInputField.css.map +1 -1
  17. package/dist/GotoRow.css +3 -3
  18. package/dist/GotoRow.css.map +1 -1
  19. package/dist/GotoRow.js +10 -10
  20. package/dist/GotoRow.js.map +1 -1
  21. package/dist/IrisGrid.css +31 -31
  22. package/dist/IrisGrid.css.map +1 -1
  23. package/dist/IrisGrid.d.ts +7 -2
  24. package/dist/IrisGrid.d.ts.map +1 -1
  25. package/dist/IrisGrid.js +83 -39
  26. package/dist/IrisGrid.js.map +1 -1
  27. package/dist/IrisGridBottomBar.css +3 -3
  28. package/dist/IrisGridBottomBar.css.map +1 -1
  29. package/dist/IrisGridCopyHandler.css +4 -4
  30. package/dist/IrisGridCopyHandler.css.map +1 -1
  31. package/dist/IrisGridPartitionSelector.css +3 -3
  32. package/dist/IrisGridPartitionSelector.css.map +1 -1
  33. package/dist/IrisGridTableModel.d.ts +1 -2
  34. package/dist/IrisGridTableModel.d.ts.map +1 -1
  35. package/dist/IrisGridTableModel.js +1 -32
  36. package/dist/IrisGridTableModel.js.map +1 -1
  37. package/dist/IrisGridTheme.module.css.map +1 -1
  38. package/dist/IrisGridThemeProvider.d.ts +9 -0
  39. package/dist/IrisGridThemeProvider.d.ts.map +1 -0
  40. package/dist/IrisGridThemeProvider.js +24 -0
  41. package/dist/IrisGridThemeProvider.js.map +1 -0
  42. package/dist/PartitionSelectorSearch.css +3 -3
  43. package/dist/PartitionSelectorSearch.css.map +1 -1
  44. package/dist/PendingDataBottomBar.css +4 -4
  45. package/dist/PendingDataBottomBar.css.map +1 -1
  46. package/dist/index.d.ts +1 -0
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +1 -0
  49. package/dist/index.js.map +1 -1
  50. package/dist/mousehandlers/IrisGridContextMenuHandler.css +1 -1
  51. package/dist/mousehandlers/IrisGridContextMenuHandler.css.map +1 -1
  52. package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts +1 -0
  53. package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
  54. package/dist/mousehandlers/IrisGridContextMenuHandler.js +12 -0
  55. package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
  56. package/dist/sidebar/ChartBuilder.css +3 -3
  57. package/dist/sidebar/ChartBuilder.css.map +1 -1
  58. package/dist/sidebar/ChartBuilder.d.ts +4 -4
  59. package/dist/sidebar/ChartBuilder.d.ts.map +1 -1
  60. package/dist/sidebar/ChartBuilder.js +19 -31
  61. package/dist/sidebar/ChartBuilder.js.map +1 -1
  62. package/dist/sidebar/CustomColumnBuilder.css +7 -7
  63. package/dist/sidebar/CustomColumnBuilder.css.map +1 -1
  64. package/dist/sidebar/InputEditor.css +8 -8
  65. package/dist/sidebar/InputEditor.css.map +1 -1
  66. package/dist/sidebar/RollupRows.css +8 -8
  67. package/dist/sidebar/RollupRows.css.map +1 -1
  68. package/dist/sidebar/SelectDistinctBuilder.css +3 -3
  69. package/dist/sidebar/SelectDistinctBuilder.css.map +1 -1
  70. package/dist/sidebar/SelectDistinctBuilder.d.ts +1 -1
  71. package/dist/sidebar/SelectDistinctBuilder.d.ts.map +1 -1
  72. package/dist/sidebar/SelectDistinctBuilder.js +5 -8
  73. package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
  74. package/dist/sidebar/TableCsvExporter.css +1 -1
  75. package/dist/sidebar/TableCsvExporter.css.map +1 -1
  76. package/dist/sidebar/TableCsvExporter.d.ts +1 -1
  77. package/dist/sidebar/TableCsvExporter.d.ts.map +1 -1
  78. package/dist/sidebar/TableCsvExporter.js +4 -4
  79. package/dist/sidebar/TableCsvExporter.js.map +1 -1
  80. package/dist/sidebar/aggregations/AggregationEdit.css +7 -7
  81. package/dist/sidebar/aggregations/AggregationEdit.css.map +1 -1
  82. package/dist/sidebar/aggregations/Aggregations.css +1 -1
  83. package/dist/sidebar/aggregations/Aggregations.css.map +1 -1
  84. package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts.map +1 -1
  85. package/dist/sidebar/conditional-formatting/ConditionEditor.js +3 -5
  86. package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
  87. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.css.map +1 -1
  88. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.css +3 -3
  89. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.css.map +1 -1
  90. package/dist/sidebar/conditional-formatting/StyleEditor.css +3 -3
  91. package/dist/sidebar/conditional-formatting/StyleEditor.css.map +1 -1
  92. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.css +4 -4
  93. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.css.map +1 -1
  94. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts +34 -4
  95. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts.map +1 -1
  96. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js +181 -40
  97. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js.map +1 -1
  98. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingGroup.css.map +1 -1
  99. package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.css +19 -19
  100. package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.css.map +1 -1
  101. package/package.json +15 -15
@@ -5,8 +5,8 @@
5
5
  left: 0;
6
6
  right: 0;
7
7
  height: calc(50px * 2);
8
- background-color: #343e5d;
9
- color: #f0f0ee;
8
+ background-color: var(--dh-color-accent-100);
9
+ color: var(--dh-color-text);
10
10
  display: flex;
11
11
  flex-direction: row;
12
12
  align-content: center;
@@ -38,7 +38,7 @@
38
38
  margin-right: 0.5rem;
39
39
  }
40
40
  .iris-grid-bottom-bar .error-message {
41
- color: #f95d84;
41
+ color: var(--dh-color-negative-bg);
42
42
  }
43
43
  .iris-grid-bottom-bar .buttons-container {
44
44
  flex-grow: 0;
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../../node_modules/@deephaven/components/scss/custom.scss","../src/IrisGridBottomBar.scss","../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACKA;EACE;EACA;EACA;EACA;EACA;EACA,kBC6Ca;ED5Cb,OCCe;EDAf;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;;AAEF;AAAA;EACE;;AAIJ;EACE,OCxCE;;AD2CJ;EACE;EACA;EACA;EACA;;AAEA;EACE;;AACA;AAAA;EAEE;;AAIJ;EACE;;;AAKN;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA,QA7EkB;EA8ElB;;;AAGF;EACE;;;AAGF;EACE;EACA","file":"IrisGridBottomBar.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 '@deephaven/components/scss/custom.scss';\n\n$bottom-bar-height: 50px;\n$ease-out-bounce-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);\n\n.iris-grid-bottom-bar {\n position: absolute;\n bottom: -$bottom-bar-height;\n left: 0;\n right: 0;\n height: calc(#{$bottom-bar-height} * 2);\n background-color: $toast-bg;\n color: $toast-color;\n display: flex;\n flex-direction: row;\n align-content: center;\n padding-left: 1em;\n padding-right: 1em;\n padding-bottom: 50px;\n\n .status-message,\n .error-message {\n flex-grow: 1;\n flex-shrink: 1;\n font-weight: 600;\n margin-right: 1em;\n overflow: hidden;\n display: flex;\n flex-direction: row;\n align-items: center;\n margin-top: -4px;\n user-select: none;\n span {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n }\n .svg-inline--fa {\n margin-right: 0.5rem;\n }\n }\n\n .error-message {\n color: $danger;\n }\n\n .buttons-container {\n flex-grow: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n\n .btn {\n min-width: 10rem;\n .svg-inline--fa,\n .loading-spinner {\n margin-right: 0.5rem;\n }\n }\n\n .btn:not(:last-child) {\n margin-right: 0.5em;\n }\n }\n}\n\n.iris-grid-bottom-bar-slide-up-enter {\n transform: translate3d(0, 100%, 0);\n}\n\n.iris-grid-bottom-bar-slide-up-enter-active {\n transform: initial;\n transition: transform $transition-long $ease-out-bounce-back;\n}\n\n.iris-grid-bottom-bar-slide-up-enter-done {\n position: relative;\n bottom: 0;\n padding-bottom: 0;\n height: $bottom-bar-height;\n transition: transform $transition-long $ease-out-bounce-back;\n}\n\n.iris-grid-bottom-bar-slide-up-exit {\n transform: initial;\n}\n\n.iris-grid-bottom-bar-slide-up-exit-active {\n transform: translate3d(0, 100%, 0);\n transition: transform $transition-long $ease-out-bounce-back;\n}\n","// Styling overrides for bootstrap\n\n// Override / set color variables\n$red: #f95d84;\n$orange: #f37e3f;\n$yellow: #fcd65b;\n$green: #9edc6f;\n$blue: #76d9e4;\n$purple: #aa9af4;\n\n//Define some UI colors\n$interfacegray: #2d2a2e;\n$interfaceblue: #4878ea;\n$interfacewhite: #f0f0ee; //same as gray-200\n$interfaceblack: #1a171a;\n\n//Define our Gray scale\n$white: $interfacewhite;\n$gray-100: #fcfcfa;\n$gray-200: $interfacewhite;\n$gray-300: #c0bfbf;\n$gray-400: #929192;\n$gray-500: #5b5a5c;\n$gray-600: #555356;\n$gray-700: #403e41;\n$gray-800: #373438;\n$gray-850: #322f33;\n$gray-900: #211f22;\n$black: $interfaceblack;\n$content-bg: $interfacegray;\n$background: $interfaceblack;\n$foreground: $interfacewhite;\n\n//Load colors into map\n$colors: ();\n$colors: map-merge(\n (\n 'red': $red,\n 'orange': $orange,\n 'yellow': $yellow,\n 'green': $green,\n 'blue': $blue,\n 'purple': $purple,\n 'white': $white,\n 'black': $black,\n ),\n $colors\n);\n\n//Set default colors\n$body-bg: $black;\n$body-color: $interfacewhite;\n\n// Set brand colors\n$primary: $interfaceblue;\n$primary-hover: darken($primary, 8%);\n$primary-dark: mix($primary, $content-bg, 25%);\n$primary-light: scale-color($primary, $lightness: -25%);\n$secondary: $gray-500;\n$secondary-hover: darken($secondary, 8%);\n$success: $green;\n$info: $yellow;\n$warning: $orange;\n$danger: $red;\n$danger-hover: darken($danger, 8%);\n$light: $gray-100;\n$mid: $gray-400; //Added a mid color, useful for input styling\n$dark: $gray-800;\n$green-dark: scale-color($green, $lightness: -45%, $saturation: -10%);\n\n$theme-colors: () !default;\n$theme-colors: map-merge(\n (\n 'primary': $primary,\n 'primary-hover': $primary-hover,\n 'primary-light': $primary-light,\n 'primary-dark': $primary-dark,\n 'secondary': $secondary,\n 'success': $success,\n 'info': $info,\n 'warning': $warning,\n 'danger': $danger,\n 'light': $light,\n 'dark': $dark,\n 'mid': $mid,\n 'content-bg': $interfacegray,\n 'background': $interfaceblack,\n 'foreground': $interfacewhite,\n ),\n $theme-colors\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//so browsers add alpha to your color by default, ignoring opacity 1\n//by setting rgba with 0.99 it tricks browser into thinking there is alpha applied\n$text-select-color: $primary-hover;\n$text-select-color-editor: lighten(\n $gray-700,\n 15%\n); //we lighten it abit to account for that 0.01 loss, and because it needs some anyways.\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 rgba($black, 45%); //because our UI is so dark, we need darker default shadows\n$box-shadow-900: 0 0.1rem 1rem rgba(0, 0, 0, 45%); //darkest shadow for $black popups over $black UI\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\n//Override Inputs\n$input-bg: $gray-600;\n$input-disabled-bg: $gray-800;\n$input-color: $foreground;\n$input-border-color: $gray-400;\n$input-placeholder-color: $gray-400;\n$input-focus-border-color: rgba($primary, 85%);\n\n$input-btn-focus-width: 0.2rem;\n$input-btn-focus-color: rgba($component-active-bg, 35%);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n\n//checkbox\n$custom-control-indicator-bg: $gray-600;\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: $gray-800;\n$custom-control-indicator-checked-disabled-bg: $gray-800;\n$custom-control-label-disabled-color: $gray-400;\n\n//Custom Select\n$custom-select-indicator-color: $gray-400;\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: darken($gray-400, 5%);\n$custom-select-disabled-bg: $gray-800;\n\n//modal\n$modal-content-bg: $gray-200;\n$modal-content-border-width: 0;\n$modal-md: 550px;\n\n// Toast notification\n$toast-bg: $primary-dark;\n$toast-color: $foreground;\n$toast-error-bg: mix($danger, $content-bg, 15%);\n$toast-error-color: $foreground;\n\n//tooltips\n$tooltip-bg: $gray-700;\n$tooltip-color: $foreground;\n$tooltip-box-shadow: 0 0.1rem 1.5rem 0.1rem rgba($black, 80%);\n\n//drowdowns\n$dropdown-bg: $gray-600;\n$dropdown-link-color: $foreground;\n$dropdown-link-hover-color: $foreground;\n$dropdown-link-hover-bg: $primary;\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: $gray-600;\n$contextmenu-color: $foreground;\n$contextmenu-disabled-color: $text-muted;\n$contextmenu-keyboard-selected-bg: rgba($primary, 50%);\n$contextmenu-selected-bg: $primary;\n$contextmenu-selected-color: $foreground;\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: theme-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"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../../node_modules/@deephaven/components/scss/custom.scss","../src/IrisGridBottomBar.scss","../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACKA;EACE;EACA;EACA;EACA;EACA;EACA,kBCwMS;EDvMT,OCwMY;EDvMZ;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;;AAEF;AAAA;EACE;;AAIJ;EACE,OC0DK;;ADvDP;EACE;EACA;EACA;EACA;;AAEA;EACE;;AACA;AAAA;EAEE;;AAIJ;EACE;;;AAKN;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA,QA7EkB;EA8ElB;;;AAGF;EACE;;;AAGF;EACE;EACA","file":"IrisGridBottomBar.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 '@deephaven/components/scss/custom.scss';\n\n$bottom-bar-height: 50px;\n$ease-out-bounce-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);\n\n.iris-grid-bottom-bar {\n position: absolute;\n bottom: -$bottom-bar-height;\n left: 0;\n right: 0;\n height: calc(#{$bottom-bar-height} * 2);\n background-color: $toast-bg;\n color: $toast-color;\n display: flex;\n flex-direction: row;\n align-content: center;\n padding-left: 1em;\n padding-right: 1em;\n padding-bottom: 50px;\n\n .status-message,\n .error-message {\n flex-grow: 1;\n flex-shrink: 1;\n font-weight: 600;\n margin-right: 1em;\n overflow: hidden;\n display: flex;\n flex-direction: row;\n align-items: center;\n margin-top: -4px;\n user-select: none;\n span {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n }\n .svg-inline--fa {\n margin-right: 0.5rem;\n }\n }\n\n .error-message {\n color: $danger;\n }\n\n .buttons-container {\n flex-grow: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n\n .btn {\n min-width: 10rem;\n .svg-inline--fa,\n .loading-spinner {\n margin-right: 0.5rem;\n }\n }\n\n .btn:not(:last-child) {\n margin-right: 0.5em;\n }\n }\n}\n\n.iris-grid-bottom-bar-slide-up-enter {\n transform: translate3d(0, 100%, 0);\n}\n\n.iris-grid-bottom-bar-slide-up-enter-active {\n transform: initial;\n transition: transform $transition-long $ease-out-bounce-back;\n}\n\n.iris-grid-bottom-bar-slide-up-enter-done {\n position: relative;\n bottom: 0;\n padding-bottom: 0;\n height: $bottom-bar-height;\n transition: transform $transition-long $ease-out-bounce-back;\n}\n\n.iris-grid-bottom-bar-slide-up-exit {\n transform: initial;\n}\n\n.iris-grid-bottom-bar-slide-up-exit-active {\n transform: translate3d(0, 100%, 0);\n transition: transform $transition-long $ease-out-bounce-back;\n}\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//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);\n$foreground: var(--dh-color-fg);\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$primary-light: var(--dh-color-accent-1100);\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-light': $primary-light,\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 hsla(var(--dh-color-black-hsl), 0.45); //because our UI is so dark, we need darker default shadows\n$box-shadow-900: 0 0.1rem 1rem hsla(var(--dh-color-true-black-hsl), 0.45); //darkest shadow for $black popups over $black UI\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\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: hsla(var(--dh-color-accent-hsl), 0.35);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n\n//checkbox\n$custom-control-indicator-bg: $gray-600;\n$custom-control-indicator-active-bg: var(--dh-color-accent-1100);\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: $gray-800;\n$custom-control-indicator-checked-disabled-bg: $gray-800;\n$custom-control-label-disabled-color: $gray-400;\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-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: $gray-200;\n$modal-content-border-width: 0;\n$modal-md: 550px;\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: $primary;\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: $gray-600;\n$contextmenu-color: $foreground;\n$contextmenu-disabled-color: $text-muted;\n$contextmenu-keyboard-selected-bg: hsla(var(--dh-color-accent-hsl), 0.5);\n$contextmenu-selected-bg: $primary;\n$contextmenu-selected-color: $foreground;\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"]}
@@ -5,8 +5,8 @@
5
5
  left: 0;
6
6
  right: 0;
7
7
  height: 100px;
8
- background-color: #343e5d;
9
- color: #f0f0ee;
8
+ background-color: var(--dh-color-accent-100);
9
+ color: var(--dh-color-text);
10
10
  display: flex;
11
11
  flex-direction: row;
12
12
  align-content: center;
@@ -35,8 +35,8 @@
35
35
  min-width: 10rem;
36
36
  }
37
37
  .iris-grid-copy-handler .buttons-container .btn-cancel {
38
- color: #fcfcfa;
39
- border-color: #fcfcfa;
38
+ color: var(--dh-color-gray-900, #fcfcfa);
39
+ border-color: var(--dh-color-gray-900, #fcfcfa);
40
40
  margin-right: 0.5em;
41
41
  }
42
42
  .iris-grid-copy-handler .buttons-container .btn-copy:disabled {
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../../node_modules/@deephaven/components/scss/custom.scss","../src/IrisGridCopyHandler.scss","../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACIA;EACE;EACA;EACA;EACA;EACA;EACA,kBC8Ca;ED7Cb,OCEe;EDDf;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE,OCxBK;EDyBL,cCzBK;ED0BL;;AAGF;EACE;;;AAKN;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA","file":"IrisGridCopyHandler.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 '@deephaven/components/scss/custom.scss';\n\n$ease-out-bounce-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);\n\n.iris-grid-copy-handler {\n position: absolute;\n bottom: -50px;\n left: 0;\n right: 0;\n height: 100px;\n background-color: $toast-bg;\n color: $toast-color;\n display: flex;\n flex-direction: row;\n align-content: center;\n padding-left: 1em;\n padding-right: 1em;\n padding-bottom: 50px;\n\n .status-message {\n flex-grow: 1;\n font-weight: 600;\n margin-right: 1em;\n text-overflow: ellipsis;\n display: flex;\n flex-direction: row;\n align-items: center;\n margin-top: -4px;\n user-select: none;\n }\n\n .buttons-container {\n flex-grow: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n\n .btn {\n min-width: 10rem;\n }\n\n .btn-cancel {\n color: $gray-100;\n border-color: $gray-100;\n margin-right: 0.5em;\n }\n\n .btn-copy:disabled {\n opacity: 1;\n }\n }\n}\n\n.copy-slide-up-enter {\n transform: translateY(50px);\n}\n\n.copy-slide-up-enter-active {\n transform: initial;\n transition: transform $transition-long $ease-out-bounce-back;\n}\n\n.copy-slide-up-exit {\n transform: initial;\n}\n\n.copy-slide-up-exit-active {\n transform: translateY(50px);\n transition: transform $transition-long $ease-out-bounce-back;\n}\n","// Styling overrides for bootstrap\n\n// Override / set color variables\n$red: #f95d84;\n$orange: #f37e3f;\n$yellow: #fcd65b;\n$green: #9edc6f;\n$blue: #76d9e4;\n$purple: #aa9af4;\n\n//Define some UI colors\n$interfacegray: #2d2a2e;\n$interfaceblue: #4878ea;\n$interfacewhite: #f0f0ee; //same as gray-200\n$interfaceblack: #1a171a;\n\n//Define our Gray scale\n$white: $interfacewhite;\n$gray-100: #fcfcfa;\n$gray-200: $interfacewhite;\n$gray-300: #c0bfbf;\n$gray-400: #929192;\n$gray-500: #5b5a5c;\n$gray-600: #555356;\n$gray-700: #403e41;\n$gray-800: #373438;\n$gray-850: #322f33;\n$gray-900: #211f22;\n$black: $interfaceblack;\n$content-bg: $interfacegray;\n$background: $interfaceblack;\n$foreground: $interfacewhite;\n\n//Load colors into map\n$colors: ();\n$colors: map-merge(\n (\n 'red': $red,\n 'orange': $orange,\n 'yellow': $yellow,\n 'green': $green,\n 'blue': $blue,\n 'purple': $purple,\n 'white': $white,\n 'black': $black,\n ),\n $colors\n);\n\n//Set default colors\n$body-bg: $black;\n$body-color: $interfacewhite;\n\n// Set brand colors\n$primary: $interfaceblue;\n$primary-hover: darken($primary, 8%);\n$primary-dark: mix($primary, $content-bg, 25%);\n$primary-light: scale-color($primary, $lightness: -25%);\n$secondary: $gray-500;\n$secondary-hover: darken($secondary, 8%);\n$success: $green;\n$info: $yellow;\n$warning: $orange;\n$danger: $red;\n$danger-hover: darken($danger, 8%);\n$light: $gray-100;\n$mid: $gray-400; //Added a mid color, useful for input styling\n$dark: $gray-800;\n$green-dark: scale-color($green, $lightness: -45%, $saturation: -10%);\n\n$theme-colors: () !default;\n$theme-colors: map-merge(\n (\n 'primary': $primary,\n 'primary-hover': $primary-hover,\n 'primary-light': $primary-light,\n 'primary-dark': $primary-dark,\n 'secondary': $secondary,\n 'success': $success,\n 'info': $info,\n 'warning': $warning,\n 'danger': $danger,\n 'light': $light,\n 'dark': $dark,\n 'mid': $mid,\n 'content-bg': $interfacegray,\n 'background': $interfaceblack,\n 'foreground': $interfacewhite,\n ),\n $theme-colors\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//so browsers add alpha to your color by default, ignoring opacity 1\n//by setting rgba with 0.99 it tricks browser into thinking there is alpha applied\n$text-select-color: $primary-hover;\n$text-select-color-editor: lighten(\n $gray-700,\n 15%\n); //we lighten it abit to account for that 0.01 loss, and because it needs some anyways.\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 rgba($black, 45%); //because our UI is so dark, we need darker default shadows\n$box-shadow-900: 0 0.1rem 1rem rgba(0, 0, 0, 45%); //darkest shadow for $black popups over $black UI\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\n//Override Inputs\n$input-bg: $gray-600;\n$input-disabled-bg: $gray-800;\n$input-color: $foreground;\n$input-border-color: $gray-400;\n$input-placeholder-color: $gray-400;\n$input-focus-border-color: rgba($primary, 85%);\n\n$input-btn-focus-width: 0.2rem;\n$input-btn-focus-color: rgba($component-active-bg, 35%);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n\n//checkbox\n$custom-control-indicator-bg: $gray-600;\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: $gray-800;\n$custom-control-indicator-checked-disabled-bg: $gray-800;\n$custom-control-label-disabled-color: $gray-400;\n\n//Custom Select\n$custom-select-indicator-color: $gray-400;\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: darken($gray-400, 5%);\n$custom-select-disabled-bg: $gray-800;\n\n//modal\n$modal-content-bg: $gray-200;\n$modal-content-border-width: 0;\n$modal-md: 550px;\n\n// Toast notification\n$toast-bg: $primary-dark;\n$toast-color: $foreground;\n$toast-error-bg: mix($danger, $content-bg, 15%);\n$toast-error-color: $foreground;\n\n//tooltips\n$tooltip-bg: $gray-700;\n$tooltip-color: $foreground;\n$tooltip-box-shadow: 0 0.1rem 1.5rem 0.1rem rgba($black, 80%);\n\n//drowdowns\n$dropdown-bg: $gray-600;\n$dropdown-link-color: $foreground;\n$dropdown-link-hover-color: $foreground;\n$dropdown-link-hover-bg: $primary;\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: $gray-600;\n$contextmenu-color: $foreground;\n$contextmenu-disabled-color: $text-muted;\n$contextmenu-keyboard-selected-bg: rgba($primary, 50%);\n$contextmenu-selected-bg: $primary;\n$contextmenu-selected-color: $foreground;\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: theme-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"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../../node_modules/@deephaven/components/scss/custom.scss","../src/IrisGridCopyHandler.scss","../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACIA;EACE;EACA;EACA;EACA;EACA;EACA,kBCyMS;EDxMT,OCyMY;EDxMZ;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE,OC9BK;ED+BL,cC/BK;EDgCL;;AAGF;EACE;;;AAKN;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA","file":"IrisGridCopyHandler.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 '@deephaven/components/scss/custom.scss';\n\n$ease-out-bounce-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);\n\n.iris-grid-copy-handler {\n position: absolute;\n bottom: -50px;\n left: 0;\n right: 0;\n height: 100px;\n background-color: $toast-bg;\n color: $toast-color;\n display: flex;\n flex-direction: row;\n align-content: center;\n padding-left: 1em;\n padding-right: 1em;\n padding-bottom: 50px;\n\n .status-message {\n flex-grow: 1;\n font-weight: 600;\n margin-right: 1em;\n text-overflow: ellipsis;\n display: flex;\n flex-direction: row;\n align-items: center;\n margin-top: -4px;\n user-select: none;\n }\n\n .buttons-container {\n flex-grow: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n\n .btn {\n min-width: 10rem;\n }\n\n .btn-cancel {\n color: $gray-100;\n border-color: $gray-100;\n margin-right: 0.5em;\n }\n\n .btn-copy:disabled {\n opacity: 1;\n }\n }\n}\n\n.copy-slide-up-enter {\n transform: translateY(50px);\n}\n\n.copy-slide-up-enter-active {\n transform: initial;\n transition: transform $transition-long $ease-out-bounce-back;\n}\n\n.copy-slide-up-exit {\n transform: initial;\n}\n\n.copy-slide-up-exit-active {\n transform: translateY(50px);\n transition: transform $transition-long $ease-out-bounce-back;\n}\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//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);\n$foreground: var(--dh-color-fg);\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$primary-light: var(--dh-color-accent-1100);\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-light': $primary-light,\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 hsla(var(--dh-color-black-hsl), 0.45); //because our UI is so dark, we need darker default shadows\n$box-shadow-900: 0 0.1rem 1rem hsla(var(--dh-color-true-black-hsl), 0.45); //darkest shadow for $black popups over $black UI\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\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: hsla(var(--dh-color-accent-hsl), 0.35);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n\n//checkbox\n$custom-control-indicator-bg: $gray-600;\n$custom-control-indicator-active-bg: var(--dh-color-accent-1100);\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: $gray-800;\n$custom-control-indicator-checked-disabled-bg: $gray-800;\n$custom-control-label-disabled-color: $gray-400;\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-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: $gray-200;\n$modal-content-border-width: 0;\n$modal-md: 550px;\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: $primary;\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: $gray-600;\n$contextmenu-color: $foreground;\n$contextmenu-disabled-color: $text-muted;\n$contextmenu-keyboard-selected-bg: hsla(var(--dh-color-accent-hsl), 0.5);\n$contextmenu-selected-bg: $primary;\n$contextmenu-selected-color: $foreground;\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"]}
@@ -22,7 +22,7 @@
22
22
  }
23
23
  .iris-grid-partition-selector .input-group .form-control {
24
24
  background-color: transparent;
25
- border: 2px solid #f0f0ee;
25
+ border: 2px solid var(--dh-color-white, #f0f0ee);
26
26
  border-right: none;
27
27
  height: 2.25em;
28
28
  }
@@ -34,8 +34,8 @@
34
34
  flex-grow: 1;
35
35
  }
36
36
  .iris-grid-partition-selector .btn-outline-primary {
37
- color: #f0f0ee;
38
- border-color: #f0f0ee;
37
+ color: var(--dh-color-white, #f0f0ee);
38
+ border-color: var(--dh-color-white, #f0f0ee);
39
39
  margin: 0.35em 0.3em;
40
40
  padding: 0.25em 0.5em;
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../../node_modules/@deephaven/components/scss/custom.scss","../src/IrisGridPartitionSelector.scss","../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACGA;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;EACA;;AACA;EACE;EACA;EACA;EACA,QAxB4B;;AA0B9B;EACE;EACA;;AAGJ;EACE;;AAEF;EACE,OCxBa;EDyBb,cCzBa;ED0Bb;EACA;;AAEF;EACE;EACA;EACA","file":"IrisGridPartitionSelector.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 '@deephaven/components/scss/custom.scss';\n$partition-selector-color: $white;\n$partition-selector-input-height: 2.25em;\n.iris-grid-partition-selector {\n display: flex;\n flex-wrap: wrap;\n background: transparent;\n vertical-align: middle;\n .status-message {\n text-overflow: ellipsis;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0.5em;\n white-space: nowrap;\n }\n div {\n flex-grow: 0;\n }\n .input-group {\n width: auto;\n align-items: center;\n .form-control {\n background-color: transparent;\n border: 2px solid $partition-selector-color;\n border-right: none;\n height: $partition-selector-input-height;\n }\n .btn {\n background-color: transparent;\n margin: 0;\n }\n }\n .iris-grid-partition-selector-spacer {\n flex-grow: 1;\n }\n .btn-outline-primary {\n color: $white;\n border-color: $white;\n margin: 0.35em 0.3em;\n padding: 0.25em 0.5em;\n }\n .btn-close {\n padding: 0 0.5em;\n margin: 0.25em 0.25em 0.25em 0;\n min-width: 0;\n }\n}\n","// Styling overrides for bootstrap\n\n// Override / set color variables\n$red: #f95d84;\n$orange: #f37e3f;\n$yellow: #fcd65b;\n$green: #9edc6f;\n$blue: #76d9e4;\n$purple: #aa9af4;\n\n//Define some UI colors\n$interfacegray: #2d2a2e;\n$interfaceblue: #4878ea;\n$interfacewhite: #f0f0ee; //same as gray-200\n$interfaceblack: #1a171a;\n\n//Define our Gray scale\n$white: $interfacewhite;\n$gray-100: #fcfcfa;\n$gray-200: $interfacewhite;\n$gray-300: #c0bfbf;\n$gray-400: #929192;\n$gray-500: #5b5a5c;\n$gray-600: #555356;\n$gray-700: #403e41;\n$gray-800: #373438;\n$gray-850: #322f33;\n$gray-900: #211f22;\n$black: $interfaceblack;\n$content-bg: $interfacegray;\n$background: $interfaceblack;\n$foreground: $interfacewhite;\n\n//Load colors into map\n$colors: ();\n$colors: map-merge(\n (\n 'red': $red,\n 'orange': $orange,\n 'yellow': $yellow,\n 'green': $green,\n 'blue': $blue,\n 'purple': $purple,\n 'white': $white,\n 'black': $black,\n ),\n $colors\n);\n\n//Set default colors\n$body-bg: $black;\n$body-color: $interfacewhite;\n\n// Set brand colors\n$primary: $interfaceblue;\n$primary-hover: darken($primary, 8%);\n$primary-dark: mix($primary, $content-bg, 25%);\n$primary-light: scale-color($primary, $lightness: -25%);\n$secondary: $gray-500;\n$secondary-hover: darken($secondary, 8%);\n$success: $green;\n$info: $yellow;\n$warning: $orange;\n$danger: $red;\n$danger-hover: darken($danger, 8%);\n$light: $gray-100;\n$mid: $gray-400; //Added a mid color, useful for input styling\n$dark: $gray-800;\n$green-dark: scale-color($green, $lightness: -45%, $saturation: -10%);\n\n$theme-colors: () !default;\n$theme-colors: map-merge(\n (\n 'primary': $primary,\n 'primary-hover': $primary-hover,\n 'primary-light': $primary-light,\n 'primary-dark': $primary-dark,\n 'secondary': $secondary,\n 'success': $success,\n 'info': $info,\n 'warning': $warning,\n 'danger': $danger,\n 'light': $light,\n 'dark': $dark,\n 'mid': $mid,\n 'content-bg': $interfacegray,\n 'background': $interfaceblack,\n 'foreground': $interfacewhite,\n ),\n $theme-colors\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//so browsers add alpha to your color by default, ignoring opacity 1\n//by setting rgba with 0.99 it tricks browser into thinking there is alpha applied\n$text-select-color: $primary-hover;\n$text-select-color-editor: lighten(\n $gray-700,\n 15%\n); //we lighten it abit to account for that 0.01 loss, and because it needs some anyways.\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 rgba($black, 45%); //because our UI is so dark, we need darker default shadows\n$box-shadow-900: 0 0.1rem 1rem rgba(0, 0, 0, 45%); //darkest shadow for $black popups over $black UI\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\n//Override Inputs\n$input-bg: $gray-600;\n$input-disabled-bg: $gray-800;\n$input-color: $foreground;\n$input-border-color: $gray-400;\n$input-placeholder-color: $gray-400;\n$input-focus-border-color: rgba($primary, 85%);\n\n$input-btn-focus-width: 0.2rem;\n$input-btn-focus-color: rgba($component-active-bg, 35%);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n\n//checkbox\n$custom-control-indicator-bg: $gray-600;\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: $gray-800;\n$custom-control-indicator-checked-disabled-bg: $gray-800;\n$custom-control-label-disabled-color: $gray-400;\n\n//Custom Select\n$custom-select-indicator-color: $gray-400;\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: darken($gray-400, 5%);\n$custom-select-disabled-bg: $gray-800;\n\n//modal\n$modal-content-bg: $gray-200;\n$modal-content-border-width: 0;\n$modal-md: 550px;\n\n// Toast notification\n$toast-bg: $primary-dark;\n$toast-color: $foreground;\n$toast-error-bg: mix($danger, $content-bg, 15%);\n$toast-error-color: $foreground;\n\n//tooltips\n$tooltip-bg: $gray-700;\n$tooltip-color: $foreground;\n$tooltip-box-shadow: 0 0.1rem 1.5rem 0.1rem rgba($black, 80%);\n\n//drowdowns\n$dropdown-bg: $gray-600;\n$dropdown-link-color: $foreground;\n$dropdown-link-hover-color: $foreground;\n$dropdown-link-hover-bg: $primary;\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: $gray-600;\n$contextmenu-color: $foreground;\n$contextmenu-disabled-color: $text-muted;\n$contextmenu-keyboard-selected-bg: rgba($primary, 50%);\n$contextmenu-selected-bg: $primary;\n$contextmenu-selected-color: $foreground;\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: theme-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"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../../node_modules/@deephaven/components/scss/custom.scss","../src/IrisGridPartitionSelector.scss","../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACGA;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;AAEF;EACE;;AAEF;EACE;EACA;;AACA;EACE;EACA;EACA;EACA,QAxB4B;;AA0B9B;EACE;EACA;;AAGJ;EACE;;AAEF;EACE,OCZI;EDaJ,cCbI;EDcJ;EACA;;AAEF;EACE;EACA;EACA","file":"IrisGridPartitionSelector.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 '@deephaven/components/scss/custom.scss';\n$partition-selector-color: $white;\n$partition-selector-input-height: 2.25em;\n.iris-grid-partition-selector {\n display: flex;\n flex-wrap: wrap;\n background: transparent;\n vertical-align: middle;\n .status-message {\n text-overflow: ellipsis;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0.5em;\n white-space: nowrap;\n }\n div {\n flex-grow: 0;\n }\n .input-group {\n width: auto;\n align-items: center;\n .form-control {\n background-color: transparent;\n border: 2px solid $partition-selector-color;\n border-right: none;\n height: $partition-selector-input-height;\n }\n .btn {\n background-color: transparent;\n margin: 0;\n }\n }\n .iris-grid-partition-selector-spacer {\n flex-grow: 1;\n }\n .btn-outline-primary {\n color: $white;\n border-color: $white;\n margin: 0.35em 0.3em;\n padding: 0.25em 0.5em;\n }\n .btn-close {\n padding: 0 0.5em;\n margin: 0.25em 0.25em 0.25em 0;\n min-width: 0;\n }\n}\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//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);\n$foreground: var(--dh-color-fg);\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$primary-light: var(--dh-color-accent-1100);\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-light': $primary-light,\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 hsla(var(--dh-color-black-hsl), 0.45); //because our UI is so dark, we need darker default shadows\n$box-shadow-900: 0 0.1rem 1rem hsla(var(--dh-color-true-black-hsl), 0.45); //darkest shadow for $black popups over $black UI\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\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: hsla(var(--dh-color-accent-hsl), 0.35);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n\n//checkbox\n$custom-control-indicator-bg: $gray-600;\n$custom-control-indicator-active-bg: var(--dh-color-accent-1100);\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: $gray-800;\n$custom-control-indicator-checked-disabled-bg: $gray-800;\n$custom-control-label-disabled-color: $gray-400;\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-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: $gray-200;\n$modal-content-border-width: 0;\n$modal-md: 550px;\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: $primary;\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: $gray-600;\n$contextmenu-color: $foreground;\n$contextmenu-disabled-color: $text-muted;\n$contextmenu-keyboard-selected-bg: hsla(var(--dh-color-accent-hsl), 0.5);\n$contextmenu-selected-bg: $primary;\n$contextmenu-selected-color: $foreground;\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"]}
@@ -1,7 +1,7 @@
1
1
  import { GridRange, ModelIndex } from '@deephaven/grid';
2
2
  import type { Column, ColumnStatistics, CustomColumn, dh as DhType, InputTable, LayoutHints, Table, ValueTypeUnion } from '@deephaven/jsapi-types';
3
3
  import { Formatter } from '@deephaven/jsapi-utils';
4
- import { ColumnName, UITotalsTableConfig, UIRow } from './CommonTypes';
4
+ import { ColumnName, UIRow } from './CommonTypes';
5
5
  import IrisGridTableModelTemplate from './IrisGridTableModelTemplate';
6
6
  /**
7
7
  * Model for a grid showing an iris data table
@@ -38,7 +38,6 @@ declare class IrisGridTableModel extends IrisGridTableModelTemplate<Table, UIRow
38
38
  get formatColumns(): CustomColumn[];
39
39
  set formatColumns(formatColumns: CustomColumn[]);
40
40
  updateFrozenColumns(columns: ColumnName[]): void;
41
- set totalsConfig(totalsConfig: UITotalsTableConfig | null);
42
41
  get isFilterRequired(): boolean;
43
42
  isFilterable(columnIndex: ModelIndex): boolean;
44
43
  export(): Promise<Table>;
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridTableModel.d.ts","sourceRoot":"","sources":["../src/IrisGridTableModel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,YAAY,EACZ,EAAE,IAAI,MAAM,EACZ,UAAU,EACV,WAAW,EACX,KAAK,EACL,cAAc,EACf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAOnD,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,0BAA0B,MAAM,8BAA8B,CAAC;AAItE;;GAEG;AAEH,cAAM,kBAAmB,SAAQ,0BAA0B,CAAC,KAAK,EAAE,KAAK,CAAC;IACvE,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC;IAEjC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,gBAAgB,EAAE,YAAY,EAAE,CAAC;IAEjC;;;;;OAKG;gBAED,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,KAAK,EACZ,SAAS,YAAoB,EAC7B,UAAU,GAAE,UAAU,GAAG,IAAW;IAOtC,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAED,IAAI,2BAA2B,IAAI,OAAO,CAEzC;IAED,IAAI,sBAAsB,IAAI,OAAO,CAEpC;IAED,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAED,IAAI,yBAAyB,IAAI,OAAO,CAEvC;IAED,IAAI,wBAAwB,IAAI,OAAO,CAEtC;IAED,IAAI,wBAAwB,IAAI,OAAO,CAEtC;IAED,uBAAuB,4BACK,UAAU,EAAE,GAAG,SAAS,cAElD;IAEF,IAAI,YAAY,IAAI,UAAU,EAAE,CAE/B;IAED,sBAAsB,2BACK,UAAU,EAAE,GAAG,SAAS,cAEjD;IAEF,IAAI,WAAW,IAAI,UAAU,EAAE,CAE9B;IAED,wBAAwB,8BAEO,UAAU,EAAE,sBACnB,UAAU,EAAE,KAC/B,UAAU,EAAE,CACf;IAEF,IAAI,aAAa,IAAI,UAAU,EAAE,CAKhC;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,uBAAuB,IAAI,MAAM,CAEpC;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,aAAa,IAAI,UAAU,EAAE,CAEhC;IAED,IAAI,aAAa,CAAC,aAAa,EAAE,UAAU,EAAE,EAoB5C;IAED,IAAI,aAAa,IAAI,YAAY,EAAE,CAElC;IAED,IAAI,aAAa,CAAC,aAAa,EAAE,YAAY,EAAE,EAoB9C;IAED,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI;IAShD,IAAI,YAAY,CAAC,YAAY,EAAE,mBAAmB,GAAG,IAAI,EA6CxD;IAED,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,YAAY,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO;IAIxC,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC;IAI9B,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI3D,4BAA4B,YAChB,MAAM,EAAE,iBAElB;IAEF,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAYhD,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAIzC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6F1C,OAAO,CACX,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,cAAc,EACzB,KAAK,EAAE,OAAO,EACd,WAAW,CAAC,EAAE,OAAO,EACrB,QAAQ,CAAC,EAAE,OAAO,EAClB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,MAAM,CAAC;IAYlB,IAAI,kBAAkB,IAAI,OAAO,CAEhC;CACF;AAED,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"IrisGridTableModel.d.ts","sourceRoot":"","sources":["../src/IrisGridTableModel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,YAAY,EACZ,EAAE,IAAI,MAAM,EACZ,UAAU,EACV,WAAW,EACX,KAAK,EACL,cAAc,EACf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,0BAA0B,MAAM,8BAA8B,CAAC;AAItE;;GAEG;AAEH,cAAM,kBAAmB,SAAQ,0BAA0B,CAAC,KAAK,EAAE,KAAK,CAAC;IACvE,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC;IAEjC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,gBAAgB,EAAE,YAAY,EAAE,CAAC;IAEjC;;;;;OAKG;gBAED,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,KAAK,EACZ,SAAS,YAAoB,EAC7B,UAAU,GAAE,UAAU,GAAG,IAAW;IAOtC,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAED,IAAI,2BAA2B,IAAI,OAAO,CAEzC;IAED,IAAI,sBAAsB,IAAI,OAAO,CAEpC;IAED,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAED,IAAI,yBAAyB,IAAI,OAAO,CAEvC;IAED,IAAI,wBAAwB,IAAI,OAAO,CAEtC;IAED,IAAI,wBAAwB,IAAI,OAAO,CAEtC;IAED,uBAAuB,4BACK,UAAU,EAAE,GAAG,SAAS,cAElD;IAEF,IAAI,YAAY,IAAI,UAAU,EAAE,CAE/B;IAED,sBAAsB,2BACK,UAAU,EAAE,GAAG,SAAS,cAEjD;IAEF,IAAI,WAAW,IAAI,UAAU,EAAE,CAE9B;IAED,wBAAwB,8BAEO,UAAU,EAAE,sBACnB,UAAU,EAAE,KAC/B,UAAU,EAAE,CACf;IAEF,IAAI,aAAa,IAAI,UAAU,EAAE,CAKhC;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,uBAAuB,IAAI,MAAM,CAEpC;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,aAAa,IAAI,UAAU,EAAE,CAEhC;IAED,IAAI,aAAa,CAAC,aAAa,EAAE,UAAU,EAAE,EAoB5C;IAED,IAAI,aAAa,IAAI,YAAY,EAAE,CAElC;IAED,IAAI,aAAa,CAAC,aAAa,EAAE,YAAY,EAAE,EAoB9C;IAED,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI;IAShD,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,YAAY,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO;IAIxC,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC;IAI9B,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI3D,4BAA4B,YAChB,MAAM,EAAE,iBAElB;IAEF,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAYhD,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAIzC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6F1C,OAAO,CACX,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,cAAc,EACzB,KAAK,EAAE,OAAO,EACd,WAAW,CAAC,EAAE,OAAO,EACrB,QAAQ,CAAC,EAAE,OAAO,EAClB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,MAAM,CAAC;IAYlB,IAAI,kBAAkB,IAAI,OAAO,CAEhC;CACF;AAED,eAAe,kBAAkB,CAAC"}
@@ -8,7 +8,7 @@ import memoize from 'memoize-one';
8
8
  import { GridRange } from '@deephaven/grid';
9
9
  import Log from '@deephaven/log';
10
10
  import { Formatter } from '@deephaven/jsapi-utils';
11
- import { EventShimCustomEvent, PromiseUtils, assertNotNull } from '@deephaven/utils';
11
+ import { EventShimCustomEvent, assertNotNull } from '@deephaven/utils';
12
12
  import IrisGridModel from "./IrisGridModel.js";
13
13
  import IrisGridTableModelTemplate from "./IrisGridTableModelTemplate.js";
14
14
  var log = Log.module('IrisGridTableModel');
@@ -127,37 +127,6 @@ class IrisGridTableModel extends IrisGridTableModelTemplate {
127
127
  detail: this.table
128
128
  }));
129
129
  }
130
- set totalsConfig(totalsConfig) {
131
- log.debug('set totalsConfig', totalsConfig);
132
- if (totalsConfig === this.totals) {
133
- // Totals already set, or it will be set when the next model actually gets set
134
- return;
135
- }
136
- this.totals = totalsConfig;
137
- this.formattedStringData = [];
138
- if (this.totalsTablePromise != null) {
139
- this.totalsTablePromise.cancel();
140
- }
141
- this.setTotalsTable(null);
142
- if (totalsConfig == null) {
143
- this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.UPDATED));
144
- return;
145
- }
146
- this.totalsTablePromise = PromiseUtils.makeCancelable(this.table.getTotalsTable(totalsConfig), table => table.close());
147
- this.totalsTablePromise.then(totalsTable => {
148
- this.totalsTablePromise = null;
149
- this.setTotalsTable(totalsTable);
150
- }).catch(err => {
151
- if (PromiseUtils.isCanceled(err)) {
152
- return;
153
- }
154
- log.error('Unable to set next totalsTable', err);
155
- this.totalsTablePromise = null;
156
- this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.REQUEST_FAILED, {
157
- detail: err
158
- }));
159
- });
160
- }
161
130
  get isFilterRequired() {
162
131
  return this.table.isUncoalesced;
163
132
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridTableModel.js","names":["memoize","GridRange","Log","Formatter","EventShimCustomEvent","PromiseUtils","assertNotNull","IrisGridModel","IrisGridTableModelTemplate","log","module","IrisGridTableModel","constructor","dh","table","formatter","arguments","length","undefined","inputTable","_defineProperty","layoutHintsFrontColumns","layoutHintsBackColumns","layoutHintsFrozenColumns","userFrozenColumns","_ref","columns","Set","map","_","index","customColumnList","formatColumnList","isExportAvailable","freeze","isColumnStatisticsAvailable","getColumnStatistics","isValuesTableAvailable","selectDistinct","copy","isRollupAvailable","rollup","isSelectDistinctAvailable","isCustomColumnsAvailable","applyCustomColumns","isFormatColumnsAvailable","frontColumns","_this$layoutHints","getMemoizedFrontColumns","layoutHints","backColumns","_this$layoutHints2","getMemoizedBackColumns","frozenColumns","_this$layoutHints3","getMemoizedFrozenColumns","floatingLeftColumnCount","description","customColumns","debug2","debug","closeSubscription","formatColumns","applyViewport","updateFrozenColumns","dispatchEvent","EVENT","TABLE_CHANGED","detail","totalsConfig","totals","formattedStringData","totalsTablePromise","cancel","setTotalsTable","UPDATED","makeCancelable","getTotalsTable","close","then","totalsTable","catch","err","isCanceled","error","REQUEST_FAILED","isFilterRequired","isUncoalesced","isFilterable","columnIndex","getCachedFilterableColumnSet","has","export","_this","_asyncToGenerator","columnStatistics","column","isColumnMovable","modelIndex","columnName","name","includes","isKeyColumn","isColumnFrozen","delete","ranges","_superprop_getPendingDataMap","pendingDataMap","_superprop_setPendingDataMap","_value","_this2","_this2$inputTable","isDeletableRanges","Error","concat","keyColumns","pendingAreaRange","getPendingAreaRange","pendingRanges","range","intersection","filter","offset","floatingTopRowCount","size","newDataMap","Map","i","pendingRange","startRow","endRow","r","PENDING_DATA_UPDATED","tableAreaRange","getTableAreaRange","tableRanges","data","deleteTable","Promise","all","snapshot","filters","row","columnFilters","c","value","filterValue","tableUtils","makeFilterRawValue","type","eq","push","reduce","agg","curr","_agg$and","and","_agg$or","or","applyFilter","seekRow","valueType","insensitive","contains","isBackwards","_this3","isSeekRowAvailable"],"sources":["../src/IrisGridTableModel.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\nimport memoize from 'memoize-one';\nimport { GridRange, ModelIndex } from '@deephaven/grid';\nimport type {\n Column,\n ColumnStatistics,\n CustomColumn,\n dh as DhType,\n InputTable,\n LayoutHints,\n Table,\n ValueTypeUnion,\n} from '@deephaven/jsapi-types';\nimport Log from '@deephaven/log';\nimport { Formatter } from '@deephaven/jsapi-utils';\nimport {\n EventShimCustomEvent,\n PromiseUtils,\n assertNotNull,\n} from '@deephaven/utils';\nimport IrisGridModel from './IrisGridModel';\nimport { ColumnName, UITotalsTableConfig, UIRow } from './CommonTypes';\nimport IrisGridTableModelTemplate from './IrisGridTableModelTemplate';\n\nconst log = Log.module('IrisGridTableModel');\n\n/**\n * Model for a grid showing an iris data table\n */\n\nclass IrisGridTableModel extends IrisGridTableModelTemplate<Table, UIRow> {\n userFrozenColumns?: ColumnName[];\n\n customColumnList: string[];\n\n formatColumnList: CustomColumn[];\n\n /**\n * @param dh JSAPI instance\n * @param table Iris data table to be used in the model\n * @param formatter The formatter to use when getting formats\n * @param inputTable Iris input table associated with this table\n */\n constructor(\n dh: DhType,\n table: Table,\n formatter = new Formatter(dh),\n inputTable: InputTable | null = null\n ) {\n super(dh, table, formatter, inputTable);\n this.customColumnList = [];\n this.formatColumnList = [];\n }\n\n get isExportAvailable(): boolean {\n return this.table.freeze != null;\n }\n\n get isColumnStatisticsAvailable(): boolean {\n return this.table.getColumnStatistics != null;\n }\n\n get isValuesTableAvailable(): boolean {\n return this.table.selectDistinct != null && this.table.copy != null;\n }\n\n get isRollupAvailable(): boolean {\n return this.table.rollup != null;\n }\n\n get isSelectDistinctAvailable(): boolean {\n return this.table.selectDistinct != null;\n }\n\n get isCustomColumnsAvailable(): boolean {\n return this.table.applyCustomColumns != null;\n }\n\n get isFormatColumnsAvailable(): boolean {\n return this.table.applyCustomColumns != null;\n }\n\n getMemoizedFrontColumns = memoize(\n (layoutHintsFrontColumns: ColumnName[] | undefined) =>\n layoutHintsFrontColumns ?? []\n );\n\n get frontColumns(): ColumnName[] {\n return this.getMemoizedFrontColumns(this.layoutHints?.frontColumns);\n }\n\n getMemoizedBackColumns = memoize(\n (layoutHintsBackColumns: ColumnName[] | undefined) =>\n layoutHintsBackColumns ?? []\n );\n\n get backColumns(): ColumnName[] {\n return this.getMemoizedBackColumns(this.layoutHints?.backColumns);\n }\n\n getMemoizedFrozenColumns = memoize(\n (\n layoutHintsFrozenColumns?: ColumnName[],\n userFrozenColumns?: ColumnName[]\n ): ColumnName[] => userFrozenColumns ?? layoutHintsFrozenColumns ?? []\n );\n\n get frozenColumns(): ColumnName[] {\n return this.getMemoizedFrozenColumns(\n this.layoutHints?.frozenColumns,\n this.userFrozenColumns\n );\n }\n\n get layoutHints(): LayoutHints {\n return this.table.layoutHints;\n }\n\n get floatingLeftColumnCount(): number {\n return this.frozenColumns.length;\n }\n\n get description(): string {\n return this.table.description;\n }\n\n get customColumns(): ColumnName[] {\n return this.customColumnList;\n }\n\n set customColumns(customColumns: ColumnName[]) {\n log.debug2(\n 'set customColumns',\n customColumns,\n this.customColumnList,\n customColumns === this.customColumnList\n );\n if (this.customColumnList.length === 0 && customColumns.length === 0) {\n log.debug('Ignore empty initial customColumns');\n this.customColumnList = customColumns;\n return;\n }\n if (this.customColumnList === customColumns) {\n log.debug('Ignore same customColumns');\n return;\n }\n this.closeSubscription();\n this.customColumnList = customColumns;\n this.table.applyCustomColumns([...customColumns, ...this.formatColumns]);\n this.applyViewport();\n }\n\n get formatColumns(): CustomColumn[] {\n return this.formatColumnList;\n }\n\n set formatColumns(formatColumns: CustomColumn[]) {\n log.debug2(\n 'set formatColumns',\n formatColumns,\n this.formatColumnList,\n formatColumns === this.formatColumnList\n );\n if (this.formatColumnList.length === 0 && formatColumns.length === 0) {\n log.debug('Ignore empty initial formatColumns');\n this.formatColumnList = formatColumns;\n return;\n }\n if (this.formatColumnList === formatColumns) {\n log.debug('Ignore same formatColumns');\n return;\n }\n this.closeSubscription();\n this.formatColumnList = formatColumns;\n this.table.applyCustomColumns([...this.customColumns, ...formatColumns]);\n this.applyViewport();\n }\n\n updateFrozenColumns(columns: ColumnName[]): void {\n this.userFrozenColumns = columns;\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.TABLE_CHANGED, {\n detail: this.table,\n })\n );\n }\n\n set totalsConfig(totalsConfig: UITotalsTableConfig | null) {\n log.debug('set totalsConfig', totalsConfig);\n\n if (totalsConfig === this.totals) {\n // Totals already set, or it will be set when the next model actually gets set\n return;\n }\n\n this.totals = totalsConfig;\n this.formattedStringData = [];\n\n if (this.totalsTablePromise != null) {\n this.totalsTablePromise.cancel();\n }\n\n this.setTotalsTable(null);\n\n if (totalsConfig == null) {\n this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.UPDATED));\n return;\n }\n\n this.totalsTablePromise = PromiseUtils.makeCancelable(\n this.table.getTotalsTable(totalsConfig),\n table => table.close()\n );\n this.totalsTablePromise\n .then(totalsTable => {\n this.totalsTablePromise = null;\n this.setTotalsTable(totalsTable);\n })\n .catch(err => {\n if (PromiseUtils.isCanceled(err)) {\n return;\n }\n\n log.error('Unable to set next totalsTable', err);\n this.totalsTablePromise = null;\n\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.REQUEST_FAILED, {\n detail: err,\n })\n );\n });\n }\n\n get isFilterRequired(): boolean {\n return this.table.isUncoalesced;\n }\n\n isFilterable(columnIndex: ModelIndex): boolean {\n return this.getCachedFilterableColumnSet(this.columns).has(columnIndex);\n }\n\n async export(): Promise<Table> {\n return this.table.freeze();\n }\n\n columnStatistics(column: Column): Promise<ColumnStatistics> {\n return this.table.getColumnStatistics(column);\n }\n\n getCachedFilterableColumnSet = memoize(\n (columns: Column[]) =>\n new Set(columns.map((_: Column, index: ModelIndex) => index))\n );\n\n isColumnMovable(modelIndex: ModelIndex): boolean {\n const columnName = this.columns[modelIndex].name;\n if (\n this.frontColumns.includes(columnName) ||\n this.backColumns.includes(columnName) ||\n this.frozenColumns.includes(columnName)\n ) {\n return false;\n }\n return !this.isKeyColumn(modelIndex);\n }\n\n isColumnFrozen(modelIndex: ModelIndex): boolean {\n return this.frozenColumns.includes(this.columns[modelIndex].name);\n }\n\n async delete(ranges: GridRange[]): Promise<void> {\n if (!this.isDeletableRanges(ranges)) {\n throw new Error(`Undeletable ranges ${ranges}`);\n }\n\n assertNotNull(this.inputTable);\n const { keyColumns } = this.inputTable;\n if (keyColumns.length === 0) {\n throw new Error('No key columns to allow deletion');\n }\n\n const pendingAreaRange = this.getPendingAreaRange();\n const pendingRanges = ranges\n .map(range => GridRange.intersection(pendingAreaRange, range))\n .filter(range => range != null)\n .map(range => {\n assertNotNull(range);\n\n return GridRange.offset(\n range,\n 0,\n -(this.floatingTopRowCount + this.table.size)\n );\n });\n\n if (pendingRanges.length > 0) {\n const newDataMap = new Map(super.pendingDataMap);\n for (let i = 0; i < pendingRanges.length; i += 1) {\n const pendingRange = pendingRanges[i];\n assertNotNull(pendingRange.startRow);\n assertNotNull(pendingRange.endRow);\n for (let r = pendingRange.startRow; r <= pendingRange.endRow; r += 1) {\n newDataMap.delete(r);\n }\n }\n super.pendingDataMap = newDataMap;\n\n this.formattedStringData = [];\n\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.PENDING_DATA_UPDATED)\n );\n\n this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.UPDATED));\n }\n\n const tableAreaRange = this.getTableAreaRange();\n const tableRanges = ranges\n .map(range => GridRange.intersection(tableAreaRange, range))\n .filter(range => range != null);\n if (tableRanges.length <= 0) {\n return;\n }\n const [data, deleteTable] = await Promise.all([\n // Need to get the key values of each row\n this.snapshot(\n tableRanges.map(range => {\n assertNotNull(range);\n return new GridRange(\n 0,\n range.startRow,\n keyColumns.length - 1,\n range.endRow\n );\n })\n ),\n this.table.copy(),\n ]);\n\n // Now copy the existing table and filter it on the values in the snapshot for the key columns in the input table\n const filters = data.map(row => {\n const columnFilters = [];\n for (let c = 0; c < keyColumns.length; c += 1) {\n const column = keyColumns[c];\n const value = row[c];\n const filterValue = this.tableUtils.makeFilterRawValue(\n column.type,\n value\n );\n const filter = column.filter().eq(filterValue);\n columnFilters.push(filter);\n }\n return columnFilters.reduce((agg, curr) => agg?.and(curr) ?? curr);\n });\n\n const filter = filters.reduce((agg, curr) => agg?.or(curr) ?? curr);\n\n deleteTable.applyFilter([filter]);\n\n await this.inputTable?.deleteTable(deleteTable);\n deleteTable.close();\n }\n\n async seekRow(\n startRow: number,\n column: Column,\n valueType: ValueTypeUnion,\n value: unknown,\n insensitive?: boolean,\n contains?: boolean,\n isBackwards?: boolean\n ): Promise<number> {\n return this.table.seekRow(\n startRow,\n column,\n valueType,\n value,\n insensitive,\n contains,\n isBackwards\n );\n }\n\n get isSeekRowAvailable(): boolean {\n return this.table.seekRow != null;\n }\n}\n\nexport default IrisGridTableModel;\n"],"mappings":"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"}
1
+ {"version":3,"file":"IrisGridTableModel.js","names":["memoize","GridRange","Log","Formatter","EventShimCustomEvent","assertNotNull","IrisGridModel","IrisGridTableModelTemplate","log","module","IrisGridTableModel","constructor","dh","table","formatter","arguments","length","undefined","inputTable","_defineProperty","layoutHintsFrontColumns","layoutHintsBackColumns","layoutHintsFrozenColumns","userFrozenColumns","_ref","columns","Set","map","_","index","customColumnList","formatColumnList","isExportAvailable","freeze","isColumnStatisticsAvailable","getColumnStatistics","isValuesTableAvailable","selectDistinct","copy","isRollupAvailable","rollup","isSelectDistinctAvailable","isCustomColumnsAvailable","applyCustomColumns","isFormatColumnsAvailable","frontColumns","_this$layoutHints","getMemoizedFrontColumns","layoutHints","backColumns","_this$layoutHints2","getMemoizedBackColumns","frozenColumns","_this$layoutHints3","getMemoizedFrozenColumns","floatingLeftColumnCount","description","customColumns","debug2","debug","closeSubscription","formatColumns","applyViewport","updateFrozenColumns","dispatchEvent","EVENT","TABLE_CHANGED","detail","isFilterRequired","isUncoalesced","isFilterable","columnIndex","getCachedFilterableColumnSet","has","export","_this","_asyncToGenerator","columnStatistics","column","isColumnMovable","modelIndex","columnName","name","includes","isKeyColumn","isColumnFrozen","delete","ranges","_superprop_getPendingDataMap","pendingDataMap","_superprop_setPendingDataMap","_value","_this2","_this2$inputTable","isDeletableRanges","Error","concat","keyColumns","pendingAreaRange","getPendingAreaRange","pendingRanges","range","intersection","filter","offset","floatingTopRowCount","size","newDataMap","Map","i","pendingRange","startRow","endRow","r","formattedStringData","PENDING_DATA_UPDATED","UPDATED","tableAreaRange","getTableAreaRange","tableRanges","data","deleteTable","Promise","all","snapshot","filters","row","columnFilters","c","value","filterValue","tableUtils","makeFilterRawValue","type","eq","push","reduce","agg","curr","_agg$and","and","_agg$or","or","applyFilter","close","seekRow","valueType","insensitive","contains","isBackwards","_this3","isSeekRowAvailable"],"sources":["../src/IrisGridTableModel.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\nimport memoize from 'memoize-one';\nimport { GridRange, ModelIndex } from '@deephaven/grid';\nimport type {\n Column,\n ColumnStatistics,\n CustomColumn,\n dh as DhType,\n InputTable,\n LayoutHints,\n Table,\n ValueTypeUnion,\n} from '@deephaven/jsapi-types';\nimport Log from '@deephaven/log';\nimport { Formatter } from '@deephaven/jsapi-utils';\nimport { EventShimCustomEvent, assertNotNull } from '@deephaven/utils';\nimport IrisGridModel from './IrisGridModel';\nimport { ColumnName, UIRow } from './CommonTypes';\nimport IrisGridTableModelTemplate from './IrisGridTableModelTemplate';\n\nconst log = Log.module('IrisGridTableModel');\n\n/**\n * Model for a grid showing an iris data table\n */\n\nclass IrisGridTableModel extends IrisGridTableModelTemplate<Table, UIRow> {\n userFrozenColumns?: ColumnName[];\n\n customColumnList: string[];\n\n formatColumnList: CustomColumn[];\n\n /**\n * @param dh JSAPI instance\n * @param table Iris data table to be used in the model\n * @param formatter The formatter to use when getting formats\n * @param inputTable Iris input table associated with this table\n */\n constructor(\n dh: DhType,\n table: Table,\n formatter = new Formatter(dh),\n inputTable: InputTable | null = null\n ) {\n super(dh, table, formatter, inputTable);\n this.customColumnList = [];\n this.formatColumnList = [];\n }\n\n get isExportAvailable(): boolean {\n return this.table.freeze != null;\n }\n\n get isColumnStatisticsAvailable(): boolean {\n return this.table.getColumnStatistics != null;\n }\n\n get isValuesTableAvailable(): boolean {\n return this.table.selectDistinct != null && this.table.copy != null;\n }\n\n get isRollupAvailable(): boolean {\n return this.table.rollup != null;\n }\n\n get isSelectDistinctAvailable(): boolean {\n return this.table.selectDistinct != null;\n }\n\n get isCustomColumnsAvailable(): boolean {\n return this.table.applyCustomColumns != null;\n }\n\n get isFormatColumnsAvailable(): boolean {\n return this.table.applyCustomColumns != null;\n }\n\n getMemoizedFrontColumns = memoize(\n (layoutHintsFrontColumns: ColumnName[] | undefined) =>\n layoutHintsFrontColumns ?? []\n );\n\n get frontColumns(): ColumnName[] {\n return this.getMemoizedFrontColumns(this.layoutHints?.frontColumns);\n }\n\n getMemoizedBackColumns = memoize(\n (layoutHintsBackColumns: ColumnName[] | undefined) =>\n layoutHintsBackColumns ?? []\n );\n\n get backColumns(): ColumnName[] {\n return this.getMemoizedBackColumns(this.layoutHints?.backColumns);\n }\n\n getMemoizedFrozenColumns = memoize(\n (\n layoutHintsFrozenColumns?: ColumnName[],\n userFrozenColumns?: ColumnName[]\n ): ColumnName[] => userFrozenColumns ?? layoutHintsFrozenColumns ?? []\n );\n\n get frozenColumns(): ColumnName[] {\n return this.getMemoizedFrozenColumns(\n this.layoutHints?.frozenColumns,\n this.userFrozenColumns\n );\n }\n\n get layoutHints(): LayoutHints {\n return this.table.layoutHints;\n }\n\n get floatingLeftColumnCount(): number {\n return this.frozenColumns.length;\n }\n\n get description(): string {\n return this.table.description;\n }\n\n get customColumns(): ColumnName[] {\n return this.customColumnList;\n }\n\n set customColumns(customColumns: ColumnName[]) {\n log.debug2(\n 'set customColumns',\n customColumns,\n this.customColumnList,\n customColumns === this.customColumnList\n );\n if (this.customColumnList.length === 0 && customColumns.length === 0) {\n log.debug('Ignore empty initial customColumns');\n this.customColumnList = customColumns;\n return;\n }\n if (this.customColumnList === customColumns) {\n log.debug('Ignore same customColumns');\n return;\n }\n this.closeSubscription();\n this.customColumnList = customColumns;\n this.table.applyCustomColumns([...customColumns, ...this.formatColumns]);\n this.applyViewport();\n }\n\n get formatColumns(): CustomColumn[] {\n return this.formatColumnList;\n }\n\n set formatColumns(formatColumns: CustomColumn[]) {\n log.debug2(\n 'set formatColumns',\n formatColumns,\n this.formatColumnList,\n formatColumns === this.formatColumnList\n );\n if (this.formatColumnList.length === 0 && formatColumns.length === 0) {\n log.debug('Ignore empty initial formatColumns');\n this.formatColumnList = formatColumns;\n return;\n }\n if (this.formatColumnList === formatColumns) {\n log.debug('Ignore same formatColumns');\n return;\n }\n this.closeSubscription();\n this.formatColumnList = formatColumns;\n this.table.applyCustomColumns([...this.customColumns, ...formatColumns]);\n this.applyViewport();\n }\n\n updateFrozenColumns(columns: ColumnName[]): void {\n this.userFrozenColumns = columns;\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.TABLE_CHANGED, {\n detail: this.table,\n })\n );\n }\n\n get isFilterRequired(): boolean {\n return this.table.isUncoalesced;\n }\n\n isFilterable(columnIndex: ModelIndex): boolean {\n return this.getCachedFilterableColumnSet(this.columns).has(columnIndex);\n }\n\n async export(): Promise<Table> {\n return this.table.freeze();\n }\n\n columnStatistics(column: Column): Promise<ColumnStatistics> {\n return this.table.getColumnStatistics(column);\n }\n\n getCachedFilterableColumnSet = memoize(\n (columns: Column[]) =>\n new Set(columns.map((_: Column, index: ModelIndex) => index))\n );\n\n isColumnMovable(modelIndex: ModelIndex): boolean {\n const columnName = this.columns[modelIndex].name;\n if (\n this.frontColumns.includes(columnName) ||\n this.backColumns.includes(columnName) ||\n this.frozenColumns.includes(columnName)\n ) {\n return false;\n }\n return !this.isKeyColumn(modelIndex);\n }\n\n isColumnFrozen(modelIndex: ModelIndex): boolean {\n return this.frozenColumns.includes(this.columns[modelIndex].name);\n }\n\n async delete(ranges: GridRange[]): Promise<void> {\n if (!this.isDeletableRanges(ranges)) {\n throw new Error(`Undeletable ranges ${ranges}`);\n }\n\n assertNotNull(this.inputTable);\n const { keyColumns } = this.inputTable;\n if (keyColumns.length === 0) {\n throw new Error('No key columns to allow deletion');\n }\n\n const pendingAreaRange = this.getPendingAreaRange();\n const pendingRanges = ranges\n .map(range => GridRange.intersection(pendingAreaRange, range))\n .filter(range => range != null)\n .map(range => {\n assertNotNull(range);\n\n return GridRange.offset(\n range,\n 0,\n -(this.floatingTopRowCount + this.table.size)\n );\n });\n\n if (pendingRanges.length > 0) {\n const newDataMap = new Map(super.pendingDataMap);\n for (let i = 0; i < pendingRanges.length; i += 1) {\n const pendingRange = pendingRanges[i];\n assertNotNull(pendingRange.startRow);\n assertNotNull(pendingRange.endRow);\n for (let r = pendingRange.startRow; r <= pendingRange.endRow; r += 1) {\n newDataMap.delete(r);\n }\n }\n super.pendingDataMap = newDataMap;\n\n this.formattedStringData = [];\n\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.PENDING_DATA_UPDATED)\n );\n\n this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.UPDATED));\n }\n\n const tableAreaRange = this.getTableAreaRange();\n const tableRanges = ranges\n .map(range => GridRange.intersection(tableAreaRange, range))\n .filter(range => range != null);\n if (tableRanges.length <= 0) {\n return;\n }\n const [data, deleteTable] = await Promise.all([\n // Need to get the key values of each row\n this.snapshot(\n tableRanges.map(range => {\n assertNotNull(range);\n return new GridRange(\n 0,\n range.startRow,\n keyColumns.length - 1,\n range.endRow\n );\n })\n ),\n this.table.copy(),\n ]);\n\n // Now copy the existing table and filter it on the values in the snapshot for the key columns in the input table\n const filters = data.map(row => {\n const columnFilters = [];\n for (let c = 0; c < keyColumns.length; c += 1) {\n const column = keyColumns[c];\n const value = row[c];\n const filterValue = this.tableUtils.makeFilterRawValue(\n column.type,\n value\n );\n const filter = column.filter().eq(filterValue);\n columnFilters.push(filter);\n }\n return columnFilters.reduce((agg, curr) => agg?.and(curr) ?? curr);\n });\n\n const filter = filters.reduce((agg, curr) => agg?.or(curr) ?? curr);\n\n deleteTable.applyFilter([filter]);\n\n await this.inputTable?.deleteTable(deleteTable);\n deleteTable.close();\n }\n\n async seekRow(\n startRow: number,\n column: Column,\n valueType: ValueTypeUnion,\n value: unknown,\n insensitive?: boolean,\n contains?: boolean,\n isBackwards?: boolean\n ): Promise<number> {\n return this.table.seekRow(\n startRow,\n column,\n valueType,\n value,\n insensitive,\n contains,\n isBackwards\n );\n }\n\n get isSeekRowAvailable(): boolean {\n return this.table.seekRow != null;\n }\n}\n\nexport default IrisGridTableModel;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../src/IrisGridTheme.module.scss","../../../node_modules/@deephaven/components/scss/custom.scss"],"names":[],"mappings":"AAAA;ACAA;ADUA;EACE;EACA,MACE;EAEF;EACA;EACA;EACA;EACA,eAXc;EAYd;EACA;EACA;EAGA;EACA;EACA;EACA,aACE;EAEF,YA1BW;EA2BX;EAEA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAGA;EAGA;EACA;EACA;EAEA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA","file":"IrisGridTheme.module.css","sourcesContent":["/* stylelint-disable */\n@import '@deephaven/components/scss/custom.scss';\n\n$selection-outline-color: $blue;\n$font-size: 12px;\n$row-height: 19px;\n$header-bg: $content-bg;\n$header-separator-color: $gray-900;\n$header-height: 30px;\n\n:export {\n grid-bg: var(--dh-color-grid-bg);\n font:\n $font-size Fira Sans,\n sans-serif; // must be preloaded\n white: var(--dh-color-white);\n black: var(--dh-color-black);\n header-bg: var(--dh-color-grid-header-bg);\n header-color: var(--dh-color-grid-header-text);\n header-height: $header-height;\n header-separator-color: var(--dh-color-grid-header-separator);\n header-separator-hover-color: var(--dh-color-grid-header-separator-hover);\n header-hidden-separator-hover-color: var(\n --dh-color-grid-header-separator-hidden-hover\n );\n header-sort-bar-color: var(--dh-color-grid-header-sort-bar);\n header-reverse-bar-color: var(--dh-color-grid-header-reverse-bar);\n header-bar-casing-color: var(--dh-color-grid-header-bar-casing);\n header-font:\n 600 $font-size Fira Sans,\n sans-serif; // must be preloaded\n row-height: $row-height;\n row-background-colors: var(--dh-color-grid-row-0-bg)\n var(--dh-color-grid-row-1-bg);\n selection-color: var(--dh-color-grid-selection);\n selection-outline-color: var(--dh-color-grid-selection-outline);\n selection-outline-casing-color: var(--dh-color-grid-selection-outline-casing);\n row-hover-bg: var(--dh-color-grid-row-hover-bg);\n selected-row-hover-bg: var(--dh-color-grid-row-hover-bg-selected);\n scroll-bar-active-selection-tick-color: var(\n --dh-color-grid-scroll-bar-active-selection-tick\n );\n\n scroll-bar-bg: var(--dh-color-grid-scroll-bar-bg);\n scroll-bar-hover-bg: var(--dh-color-grid-scroll-bar-hover-bg);\n scroll-bar-casing-color: var(--dh-color-grid-scroll-bar-casing);\n scroll-bar-corner-color: var(--dh-color-grid-scroll-bar-corner);\n scroll-bar-color: var(--dh-color-grid-scroll-bar);\n scroll-bar-hover-color: var(--dh-color-grid-scroll-bar-hover);\n scroll-bar-active-color: var(--dh-color-grid-scroll-bar-active);\n\n text-color: var(--dh-color-grid-text);\n hyperlink-color: var(--dh-color-grid-text-hyperlink);\n positive-number-color: var(--dh-color-grid-number-positive);\n negative-number-color: var(--dh-color-grid-number-negative);\n zero-number-color: var(--dh-color-grid-number-zero);\n date-color: var(--dh-color-grid-date);\n pending-text-color: var(--dh-color-grid-text-pending);\n error-text-color: var(--dh-color-grid-text-error);\n null-string-color: var(--dh-color-grid-string-null);\n\n filter-bar-active-bg: var(--dh-color-grid-filter-bar-active-bg);\n filter-bar-active-color: var(--dh-color-grid-filter-bar-active);\n filter-bar-expanded-bg: var(--dh-color-grid-filter-bar-expanded-bg);\n filter-bar-expanded-active-bg: var(\n --dh-color-grid-filter-bar-expanded-active-bg\n );\n filter-bar-expanded-active-cell-bg: var(\n --dh-color-grid-filter-bar-expanded-active-cell-bg\n );\n filter-bar-separator-color: var(--dh-color-grid-filter-bar-separator);\n filter-bar-error-color: var(--dh-color-grid-filter-bar-error);\n filter-icon-color: var(--dh-color-grid-filter-icon);\n\n scrim-color: var(--dh-color-grid-scrim);\n context-menu-sort-icon-color: var(--dh-color-grid-context-menu-sort-icon);\n context-menu-reverse-icon-color: var(\n --dh-color-grid-context-menu-reverse-icon\n );\n linker-column-hover-bg: var(--dh-color-grid-column-linker-hover-bg);\n tree-line-color: var(--dh-color-grid-tree-line);\n tree-marker-color: var(--dh-color-grid-tree-marker);\n tree-marker-hover-color: var(--dh-color-grid-tree-marker-hover);\n grouped-column-divider-color: var(--dh-color-grid-column-grouped-divider);\n\n floating-grid-row-color: var(--dh-color-grid-floating-row);\n floating-row-background-colors: var(--dh-color-grid-floating-row-bg);\n floating-divider-inner-color: var(--dh-color-grid-floating-divider-inner);\n floating-divider-outer-color: var(--dh-color-grid-floating-divider-outer);\n\n overflow-button-color: var(--dh-color-grid-overflow-button);\n overflow-button-hover-color: var(--dh-color-grid-overflow-button-hover);\n\n zero-line-color: var(--dh-color-grid-data-bar-zero-line);\n positive-bar-color: var(--dh-color-grid-data-bar-positive);\n negative-bar-color: var(--dh-color-grid-data-bar-negative);\n marker-bar-color: var(--dh-color-grid-data-bar-marker);\n}\n","/* 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"]}
1
+ {"version":3,"sourceRoot":"","sources":["../src/IrisGridTheme.module.scss","../../../node_modules/@deephaven/components/scss/custom.scss"],"names":[],"mappings":"AAAA;ACAA;ADSA;EACE;EACA,MACE;EAEF;EACA;EACA;EACA;EACA,eAXc;EAYd;EACA;EACA;EAGA;EACA;EACA;EACA,aACE;EAEF,YA1BW;EA2BX;EAEA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAGA;EAGA;EACA;EACA;EAEA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA","file":"IrisGridTheme.module.css","sourcesContent":["/* stylelint-disable */\n@import '@deephaven/components/scss/custom.scss';\n\n$font-size: 12px;\n$row-height: 19px;\n$header-bg: $content-bg;\n$header-separator-color: $gray-900;\n$header-height: 30px;\n\n:export {\n grid-bg: var(--dh-color-grid-bg);\n font:\n $font-size Fira Sans,\n sans-serif; // must be preloaded\n white: var(--dh-color-white);\n black: var(--dh-color-black);\n header-bg: var(--dh-color-grid-header-bg);\n header-color: var(--dh-color-grid-header-text);\n header-height: $header-height;\n header-separator-color: var(--dh-color-grid-header-separator);\n header-separator-hover-color: var(--dh-color-grid-header-separator-hover);\n header-hidden-separator-hover-color: var(\n --dh-color-grid-header-separator-hidden-hover\n );\n header-sort-bar-color: var(--dh-color-grid-header-sort-bar);\n header-reverse-bar-color: var(--dh-color-grid-header-reverse-bar);\n header-bar-casing-color: var(--dh-color-grid-header-bar-casing);\n header-font:\n 600 $font-size Fira Sans,\n sans-serif; // must be preloaded\n row-height: $row-height;\n row-background-colors: var(--dh-color-grid-row-0-bg)\n var(--dh-color-grid-row-1-bg);\n selection-color: var(--dh-color-grid-selection);\n selection-outline-color: var(--dh-color-grid-selection-outline);\n selection-outline-casing-color: var(--dh-color-grid-selection-outline-casing);\n row-hover-bg: var(--dh-color-grid-row-hover-bg);\n selected-row-hover-bg: var(--dh-color-grid-row-hover-bg-selected);\n scroll-bar-active-selection-tick-color: var(\n --dh-color-grid-scroll-bar-active-selection-tick\n );\n\n scroll-bar-bg: var(--dh-color-grid-scroll-bar-bg);\n scroll-bar-hover-bg: var(--dh-color-grid-scroll-bar-hover-bg);\n scroll-bar-casing-color: var(--dh-color-grid-scroll-bar-casing);\n scroll-bar-corner-color: var(--dh-color-grid-scroll-bar-corner);\n scroll-bar-color: var(--dh-color-grid-scroll-bar);\n scroll-bar-hover-color: var(--dh-color-grid-scroll-bar-hover);\n scroll-bar-active-color: var(--dh-color-grid-scroll-bar-active);\n\n text-color: var(--dh-color-grid-text);\n hyperlink-color: var(--dh-color-grid-text-hyperlink);\n positive-number-color: var(--dh-color-grid-number-positive);\n negative-number-color: var(--dh-color-grid-number-negative);\n zero-number-color: var(--dh-color-grid-number-zero);\n date-color: var(--dh-color-grid-date);\n pending-text-color: var(--dh-color-grid-text-pending);\n error-text-color: var(--dh-color-grid-text-error);\n null-string-color: var(--dh-color-grid-string-null);\n\n filter-bar-active-bg: var(--dh-color-grid-filter-bar-active-bg);\n filter-bar-active-color: var(--dh-color-grid-filter-bar-active);\n filter-bar-expanded-bg: var(--dh-color-grid-filter-bar-expanded-bg);\n filter-bar-expanded-active-bg: var(\n --dh-color-grid-filter-bar-expanded-active-bg\n );\n filter-bar-expanded-active-cell-bg: var(\n --dh-color-grid-filter-bar-expanded-active-cell-bg\n );\n filter-bar-separator-color: var(--dh-color-grid-filter-bar-separator);\n filter-bar-error-color: var(--dh-color-grid-filter-bar-error);\n filter-icon-color: var(--dh-color-grid-filter-icon);\n\n scrim-color: var(--dh-color-grid-scrim);\n context-menu-sort-icon-color: var(--dh-color-grid-context-menu-sort-icon);\n context-menu-reverse-icon-color: var(\n --dh-color-grid-context-menu-reverse-icon\n );\n linker-column-hover-bg: var(--dh-color-grid-column-linker-hover-bg);\n tree-line-color: var(--dh-color-grid-tree-line);\n tree-marker-color: var(--dh-color-grid-tree-marker);\n tree-marker-hover-color: var(--dh-color-grid-tree-marker-hover);\n grouped-column-divider-color: var(--dh-color-grid-column-grouped-divider);\n\n floating-grid-row-color: var(--dh-color-grid-floating-row);\n floating-row-background-colors: var(--dh-color-grid-floating-row-bg);\n floating-divider-inner-color: var(--dh-color-grid-floating-divider-inner);\n floating-divider-outer-color: var(--dh-color-grid-floating-divider-outer);\n\n overflow-button-color: var(--dh-color-grid-overflow-button);\n overflow-button-hover-color: var(--dh-color-grid-overflow-button-hover);\n\n zero-line-color: var(--dh-color-grid-data-bar-zero-line);\n positive-bar-color: var(--dh-color-grid-data-bar-positive);\n negative-bar-color: var(--dh-color-grid-data-bar-negative);\n marker-bar-color: var(--dh-color-grid-data-bar-marker);\n}\n","/* 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"]}
@@ -0,0 +1,9 @@
1
+ import { ReactNode } from 'react';
2
+ import { IrisGridThemeType } from './IrisGridTheme';
3
+ export type IrisGridThemeContextValue = Partial<IrisGridThemeType>;
4
+ export declare const IrisGridThemeContext: import("react").Context<Partial<IrisGridThemeType> | null>;
5
+ export interface IrisGridThemeProviderProps {
6
+ children: ReactNode;
7
+ }
8
+ export declare function IrisGridThemeProvider({ children, }: IrisGridThemeProviderProps): JSX.Element;
9
+ //# sourceMappingURL=IrisGridThemeProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IrisGridThemeProvider.d.ts","sourceRoot":"","sources":["../src/IrisGridThemeProvider.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,SAAS,EAAuB,MAAM,OAAO,CAAC;AACtE,OAAO,EAA8B,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEnE,eAAO,MAAM,oBAAoB,4DACsB,CAAC;AAExD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,GACT,EAAE,0BAA0B,GAAG,GAAG,CAAC,OAAO,CAmB1C"}
@@ -0,0 +1,24 @@
1
+ import { useTheme } from '@deephaven/components';
2
+ import { createContext, useEffect, useState } from 'react';
3
+ import { createDefaultIrisGridTheme } from "./IrisGridTheme.js";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ export var IrisGridThemeContext = /*#__PURE__*/createContext(null);
6
+ export function IrisGridThemeProvider(_ref) {
7
+ var {
8
+ children
9
+ } = _ref;
10
+ var {
11
+ activeThemes
12
+ } = useTheme();
13
+ var [gridTheme, setGridTheme] = useState({});
14
+ useEffect(function refreshIrisGridTheme() {
15
+ if (activeThemes != null) {
16
+ setGridTheme(createDefaultIrisGridTheme());
17
+ }
18
+ }, [activeThemes]);
19
+ return /*#__PURE__*/_jsx(IrisGridThemeContext.Provider, {
20
+ value: gridTheme,
21
+ children: children
22
+ });
23
+ }
24
+ //# sourceMappingURL=IrisGridThemeProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IrisGridThemeProvider.js","names":["useTheme","createContext","useEffect","useState","createDefaultIrisGridTheme","jsx","_jsx","IrisGridThemeContext","IrisGridThemeProvider","_ref","children","activeThemes","gridTheme","setGridTheme","refreshIrisGridTheme","Provider","value"],"sources":["../src/IrisGridThemeProvider.tsx"],"sourcesContent":["import { useTheme } from '@deephaven/components';\nimport { createContext, ReactNode, useEffect, useState } from 'react';\nimport { createDefaultIrisGridTheme, IrisGridThemeType } from './IrisGridTheme';\n\nexport type IrisGridThemeContextValue = Partial<IrisGridThemeType>;\n\nexport const IrisGridThemeContext =\n createContext<IrisGridThemeContextValue | null>(null);\n\nexport interface IrisGridThemeProviderProps {\n children: ReactNode;\n}\n\nexport function IrisGridThemeProvider({\n children,\n}: IrisGridThemeProviderProps): JSX.Element {\n const { activeThemes } = useTheme();\n\n const [gridTheme, setGridTheme] = useState<IrisGridThemeContextValue>({});\n\n useEffect(\n function refreshIrisGridTheme() {\n if (activeThemes != null) {\n setGridTheme(createDefaultIrisGridTheme());\n }\n },\n [activeThemes]\n );\n\n return (\n <IrisGridThemeContext.Provider value={gridTheme}>\n {children}\n </IrisGridThemeContext.Provider>\n );\n}\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,aAAa,EAAaC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAAC,SAC7DC,0BAA0B;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAInC,OAAO,IAAMC,oBAAoB,gBAC/BN,aAAa,CAAmC,IAAI,CAAC;AAMvD,OAAO,SAASO,qBAAqBA,CAAAC,IAAA,EAEO;EAAA,IAFN;IACpCC;EAC0B,CAAC,GAAAD,IAAA;EAC3B,IAAM;IAAEE;EAAa,CAAC,GAAGX,QAAQ,CAAC,CAAC;EAEnC,IAAM,CAACY,SAAS,EAAEC,YAAY,CAAC,GAAGV,QAAQ,CAA4B,CAAC,CAAC,CAAC;EAEzED,SAAS,CACP,SAASY,oBAAoBA,CAAA,EAAG;IAC9B,IAAIH,YAAY,IAAI,IAAI,EAAE;MACxBE,YAAY,CAACT,0BAA0B,CAAC,CAAC,CAAC;IAC5C;EACF,CAAC,EACD,CAACO,YAAY,CACf,CAAC;EAED,oBACEL,IAAA,CAACC,oBAAoB,CAACQ,QAAQ;IAACC,KAAK,EAAEJ,SAAU;IAAAF,QAAA,EAC7CA;EAAQ,CACoB,CAAC;AAEpC"}
@@ -3,12 +3,12 @@
3
3
  border: none;
4
4
  }
5
5
  .iris-grid-partition-selector-search .iris-grid-partition-selector-search-empty {
6
- color: #929192;
6
+ color: var(--dh-color-gray-600);
7
7
  padding: 0.375rem 0.75rem;
8
8
  text-align: center;
9
9
  }
10
10
  .iris-grid-partition-selector-search .iris-grid-partition-selector-loading {
11
- color: #929192;
11
+ color: var(--dh-color-gray-600);
12
12
  padding: 0.375rem 0.75rem;
13
13
  text-align: center;
14
14
  }
@@ -16,7 +16,7 @@
16
16
  padding: 0.25rem 0.5rem;
17
17
  }
18
18
  .iris-grid-partition-selector-search .search-container .form-control {
19
- background-color: #5b5a5c;
19
+ background-color: var(--dh-color-gray-500);
20
20
  }
21
21
 
22
22
  /*# sourceMappingURL=PartitionSelectorSearch.css.map */
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../../node_modules/@deephaven/components/scss/custom.scss","../src/PartitionSelectorSearch.scss","../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACII;EACE;;AAGJ;EACE,OCYO;EDXP;EACA;;AAEF;EACE,OCOO;EDNP;EACA;;AAEF;EACE;;AACA;EACE,kBCCK","file":"PartitionSelectorSearch.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 '@deephaven/components/scss/custom.scss';\n$partition-selector-search-input-bg: $gray-500;\n.iris-grid-partition-selector-search {\n .iris-grid-partition-selector-search-list {\n .item-list-scroll-pane {\n border: none;\n }\n }\n .iris-grid-partition-selector-search-empty {\n color: $text-muted;\n padding: $input-padding-y $input-btn-padding-x;\n text-align: center;\n }\n .iris-grid-partition-selector-loading {\n color: $text-muted;\n padding: $input-padding-y $input-btn-padding-x;\n text-align: center;\n }\n .search-container {\n padding: $tooltip-padding-y $tooltip-padding-x;\n .form-control {\n background-color: $partition-selector-search-input-bg;\n }\n }\n}\n","// Styling overrides for bootstrap\n\n// Override / set color variables\n$red: #f95d84;\n$orange: #f37e3f;\n$yellow: #fcd65b;\n$green: #9edc6f;\n$blue: #76d9e4;\n$purple: #aa9af4;\n\n//Define some UI colors\n$interfacegray: #2d2a2e;\n$interfaceblue: #4878ea;\n$interfacewhite: #f0f0ee; //same as gray-200\n$interfaceblack: #1a171a;\n\n//Define our Gray scale\n$white: $interfacewhite;\n$gray-100: #fcfcfa;\n$gray-200: $interfacewhite;\n$gray-300: #c0bfbf;\n$gray-400: #929192;\n$gray-500: #5b5a5c;\n$gray-600: #555356;\n$gray-700: #403e41;\n$gray-800: #373438;\n$gray-850: #322f33;\n$gray-900: #211f22;\n$black: $interfaceblack;\n$content-bg: $interfacegray;\n$background: $interfaceblack;\n$foreground: $interfacewhite;\n\n//Load colors into map\n$colors: ();\n$colors: map-merge(\n (\n 'red': $red,\n 'orange': $orange,\n 'yellow': $yellow,\n 'green': $green,\n 'blue': $blue,\n 'purple': $purple,\n 'white': $white,\n 'black': $black,\n ),\n $colors\n);\n\n//Set default colors\n$body-bg: $black;\n$body-color: $interfacewhite;\n\n// Set brand colors\n$primary: $interfaceblue;\n$primary-hover: darken($primary, 8%);\n$primary-dark: mix($primary, $content-bg, 25%);\n$primary-light: scale-color($primary, $lightness: -25%);\n$secondary: $gray-500;\n$secondary-hover: darken($secondary, 8%);\n$success: $green;\n$info: $yellow;\n$warning: $orange;\n$danger: $red;\n$danger-hover: darken($danger, 8%);\n$light: $gray-100;\n$mid: $gray-400; //Added a mid color, useful for input styling\n$dark: $gray-800;\n$green-dark: scale-color($green, $lightness: -45%, $saturation: -10%);\n\n$theme-colors: () !default;\n$theme-colors: map-merge(\n (\n 'primary': $primary,\n 'primary-hover': $primary-hover,\n 'primary-light': $primary-light,\n 'primary-dark': $primary-dark,\n 'secondary': $secondary,\n 'success': $success,\n 'info': $info,\n 'warning': $warning,\n 'danger': $danger,\n 'light': $light,\n 'dark': $dark,\n 'mid': $mid,\n 'content-bg': $interfacegray,\n 'background': $interfaceblack,\n 'foreground': $interfacewhite,\n ),\n $theme-colors\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//so browsers add alpha to your color by default, ignoring opacity 1\n//by setting rgba with 0.99 it tricks browser into thinking there is alpha applied\n$text-select-color: $primary-hover;\n$text-select-color-editor: lighten(\n $gray-700,\n 15%\n); //we lighten it abit to account for that 0.01 loss, and because it needs some anyways.\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 rgba($black, 45%); //because our UI is so dark, we need darker default shadows\n$box-shadow-900: 0 0.1rem 1rem rgba(0, 0, 0, 45%); //darkest shadow for $black popups over $black UI\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\n//Override Inputs\n$input-bg: $gray-600;\n$input-disabled-bg: $gray-800;\n$input-color: $foreground;\n$input-border-color: $gray-400;\n$input-placeholder-color: $gray-400;\n$input-focus-border-color: rgba($primary, 85%);\n\n$input-btn-focus-width: 0.2rem;\n$input-btn-focus-color: rgba($component-active-bg, 35%);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n\n//checkbox\n$custom-control-indicator-bg: $gray-600;\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: $gray-800;\n$custom-control-indicator-checked-disabled-bg: $gray-800;\n$custom-control-label-disabled-color: $gray-400;\n\n//Custom Select\n$custom-select-indicator-color: $gray-400;\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: darken($gray-400, 5%);\n$custom-select-disabled-bg: $gray-800;\n\n//modal\n$modal-content-bg: $gray-200;\n$modal-content-border-width: 0;\n$modal-md: 550px;\n\n// Toast notification\n$toast-bg: $primary-dark;\n$toast-color: $foreground;\n$toast-error-bg: mix($danger, $content-bg, 15%);\n$toast-error-color: $foreground;\n\n//tooltips\n$tooltip-bg: $gray-700;\n$tooltip-color: $foreground;\n$tooltip-box-shadow: 0 0.1rem 1.5rem 0.1rem rgba($black, 80%);\n\n//drowdowns\n$dropdown-bg: $gray-600;\n$dropdown-link-color: $foreground;\n$dropdown-link-hover-color: $foreground;\n$dropdown-link-hover-bg: $primary;\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: $gray-600;\n$contextmenu-color: $foreground;\n$contextmenu-disabled-color: $text-muted;\n$contextmenu-keyboard-selected-bg: rgba($primary, 50%);\n$contextmenu-selected-bg: $primary;\n$contextmenu-selected-color: $foreground;\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: theme-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"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../../node_modules/@deephaven/components/scss/custom.scss","../src/PartitionSelectorSearch.scss","../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACII;EACE;;AAGJ;EACE,OCMO;EDLP;EACA;;AAEF;EACE,OCCO;EDAP;EACA;;AAEF;EACE;;AACA;EACE,kBCLK","file":"PartitionSelectorSearch.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 '@deephaven/components/scss/custom.scss';\n$partition-selector-search-input-bg: $gray-500;\n.iris-grid-partition-selector-search {\n .iris-grid-partition-selector-search-list {\n .item-list-scroll-pane {\n border: none;\n }\n }\n .iris-grid-partition-selector-search-empty {\n color: $text-muted;\n padding: $input-padding-y $input-btn-padding-x;\n text-align: center;\n }\n .iris-grid-partition-selector-loading {\n color: $text-muted;\n padding: $input-padding-y $input-btn-padding-x;\n text-align: center;\n }\n .search-container {\n padding: $tooltip-padding-y $tooltip-padding-x;\n .form-control {\n background-color: $partition-selector-search-input-bg;\n }\n }\n}\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//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);\n$foreground: var(--dh-color-fg);\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$primary-light: var(--dh-color-accent-1100);\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-light': $primary-light,\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 hsla(var(--dh-color-black-hsl), 0.45); //because our UI is so dark, we need darker default shadows\n$box-shadow-900: 0 0.1rem 1rem hsla(var(--dh-color-true-black-hsl), 0.45); //darkest shadow for $black popups over $black UI\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\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: hsla(var(--dh-color-accent-hsl), 0.35);\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;\n\n//checkbox\n$custom-control-indicator-bg: $gray-600;\n$custom-control-indicator-active-bg: var(--dh-color-accent-1100);\n$custom-control-indicator-bg-size: 75% 75%;\n$custom-control-indicator-disabled-bg: $gray-800;\n$custom-control-indicator-checked-disabled-bg: $gray-800;\n$custom-control-label-disabled-color: $gray-400;\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-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: $gray-200;\n$modal-content-border-width: 0;\n$modal-md: 550px;\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: $primary;\n$dropdown-divider-bg: $gray-700;\n\n//context menus\n$contextmenu-bg: $gray-600;\n$contextmenu-color: $foreground;\n$contextmenu-disabled-color: $text-muted;\n$contextmenu-keyboard-selected-bg: hsla(var(--dh-color-accent-hsl), 0.5);\n$contextmenu-selected-bg: $primary;\n$contextmenu-selected-color: $foreground;\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"]}