@deephaven/iris-grid 0.57.2-beta.0 → 0.58.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AdvancedFilterCreator.css.map +1 -1
- package/dist/AdvancedFilterCreatorFilterItem.css.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValue.css.map +1 -1
- package/dist/ColumnStatistics.css.map +1 -1
- package/dist/ColumnStatistics.d.ts +4 -4
- package/dist/ColumnStatistics.d.ts.map +1 -1
- package/dist/ColumnStatistics.js +4 -2
- package/dist/ColumnStatistics.js.map +1 -1
- package/dist/CrossColumnSearch.d.ts +2 -1
- package/dist/CrossColumnSearch.d.ts.map +1 -1
- package/dist/CrossColumnSearch.js +11 -8
- package/dist/CrossColumnSearch.js.map +1 -1
- package/dist/FilterInputField.css +11 -8
- package/dist/FilterInputField.css.map +1 -1
- package/dist/GotoRow.css.map +1 -1
- package/dist/IrisGrid.css +9 -6
- package/dist/IrisGrid.css.map +1 -1
- package/dist/IrisGrid.d.ts +6 -2
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +45 -8
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridBottomBar.css +2 -3
- package/dist/IrisGridBottomBar.css.map +1 -1
- package/dist/IrisGridCellOverflowModal.js +1 -1
- package/dist/IrisGridCellOverflowModal.js.map +1 -1
- package/dist/IrisGridCopyHandler.css +1 -2
- package/dist/IrisGridCopyHandler.css.map +1 -1
- package/dist/IrisGridCopyHandler.d.ts +12 -4
- package/dist/IrisGridCopyHandler.d.ts.map +1 -1
- package/dist/IrisGridCopyHandler.js +72 -32
- package/dist/IrisGridCopyHandler.js.map +1 -1
- package/dist/IrisGridModel.d.ts +41 -13
- package/dist/IrisGridModel.d.ts.map +1 -1
- package/dist/IrisGridModel.js +47 -7
- package/dist/IrisGridModel.js.map +1 -1
- package/dist/IrisGridPartitionSelector.css.map +1 -1
- package/dist/IrisGridProxyModel.d.ts +2 -0
- package/dist/IrisGridProxyModel.d.ts.map +1 -1
- package/dist/IrisGridProxyModel.js +6 -0
- package/dist/IrisGridProxyModel.js.map +1 -1
- package/dist/IrisGridRenderer.js +1 -1
- package/dist/IrisGridRenderer.js.map +1 -1
- package/dist/IrisGridTableModelTemplate.d.ts +10 -12
- package/dist/IrisGridTableModelTemplate.d.ts.map +1 -1
- package/dist/IrisGridTableModelTemplate.js +35 -34
- package/dist/IrisGridTableModelTemplate.js.map +1 -1
- package/dist/IrisGridTheme.d.ts.map +1 -1
- package/dist/IrisGridTheme.js +1 -0
- package/dist/IrisGridTheme.js.map +1 -1
- package/dist/IrisGridTheme.module.css +1 -0
- package/dist/IrisGridTheme.module.css.map +1 -1
- package/dist/IrisGridTreeTableModel.d.ts +14 -4
- package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
- package/dist/IrisGridTreeTableModel.js +89 -10
- package/dist/IrisGridTreeTableModel.js.map +1 -1
- package/dist/PartitionSelectorSearch.css +2 -2
- package/dist/PartitionSelectorSearch.css.map +1 -1
- package/dist/PendingDataBottomBar.css +1 -8
- package/dist/PendingDataBottomBar.css.map +1 -1
- package/dist/format-context-menus/CustomFormatAction.css +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.css +2 -2
- package/dist/mousehandlers/IrisGridContextMenuHandler.css.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.js +57 -43
- package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridCopyCellMouseHandler.d.ts +10 -0
- package/dist/mousehandlers/IrisGridCopyCellMouseHandler.d.ts.map +1 -0
- package/dist/mousehandlers/IrisGridCopyCellMouseHandler.js +34 -0
- package/dist/mousehandlers/IrisGridCopyCellMouseHandler.js.map +1 -0
- package/dist/mousehandlers/index.d.ts +1 -0
- package/dist/mousehandlers/index.d.ts.map +1 -1
- package/dist/mousehandlers/index.js +1 -0
- package/dist/mousehandlers/index.js.map +1 -1
- package/dist/sidebar/ChartBuilder.css.map +1 -1
- package/dist/sidebar/CustomColumnBuilder.css +3 -3
- package/dist/sidebar/CustomColumnBuilder.css.map +1 -1
- package/dist/sidebar/CustomColumnBuilder.d.ts.map +1 -1
- package/dist/sidebar/CustomColumnBuilder.js +2 -5
- package/dist/sidebar/CustomColumnBuilder.js.map +1 -1
- package/dist/sidebar/InputEditor.css.map +1 -1
- package/dist/sidebar/RollupRows.css +3 -2
- package/dist/sidebar/RollupRows.css.map +1 -1
- package/dist/sidebar/SelectDistinctBuilder.css.map +1 -1
- package/dist/sidebar/TableCsvExporter.css.map +1 -1
- package/dist/sidebar/aggregations/AggregationEdit.css.map +1 -1
- package/dist/sidebar/aggregations/AggregationEdit.d.ts +2 -2
- package/dist/sidebar/aggregations/AggregationEdit.d.ts.map +1 -1
- package/dist/sidebar/aggregations/AggregationEdit.js.map +1 -1
- package/dist/sidebar/aggregations/AggregationUtils.d.ts +5 -5
- package/dist/sidebar/aggregations/AggregationUtils.d.ts.map +1 -1
- package/dist/sidebar/aggregations/AggregationUtils.js +1 -1
- package/dist/sidebar/aggregations/AggregationUtils.js.map +1 -1
- package/dist/sidebar/aggregations/Aggregations.css.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.css +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.css.map +1 -1
- package/dist/sidebar/conditional-formatting/StyleEditor.css +1 -1
- package/dist/sidebar/conditional-formatting/StyleEditor.css.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.css +4 -2
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.css.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts +3 -2
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js +13 -3
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.css +4 -4
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.css.map +1 -1
- package/package.json +15 -15
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/* stylelint-disable scss/at-import-no-partial-leading-underscore */
|
|
2
2
|
.iris-grid-filter-menu-item-value {
|
|
3
3
|
user-select: none;
|
|
4
|
-
background: var(--dh-color-
|
|
4
|
+
background: var(--dh-color-surface-bg);
|
|
5
5
|
border-radius: 4px 4px 0 0;
|
|
6
|
-
padding: 0.
|
|
6
|
+
padding: 0.4214rem 2rem;
|
|
7
7
|
text-overflow: ellipsis;
|
|
8
8
|
overflow: hidden;
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../../../node_modules/@deephaven/components/scss/custom.scss","../../src/mousehandlers/IrisGridContextMenuHandler.scss","../../../../node_modules/@deephaven/components/scss/bootstrap_overrides.scss"],"names":[],"mappings":"AAAA;ACIA;EACE;EACA,YC0BW;EDzBX;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE","file":"IrisGridContextMenuHandler.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$padding-x: 2rem;\n\n.iris-grid-filter-menu-item-value {\n user-select: none;\n background: $content-bg;\n border-radius: $border-radius $border-radius 0 0;\n padding: $input-btn-padding-y $padding-x;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.advanced-filter-button-container {\n transition: $transition opacity;\n}\n\n.advanced-filter-button-container.hidden {\n opacity: 0;\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$btn-font-weight: var(--spectrum-global-font-weight-bold);\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
|
+
{"version":3,"sourceRoot":"","sources":["../../../../node_modules/@deephaven/components/scss/custom.scss","../../src/mousehandlers/IrisGridContextMenuHandler.scss"],"names":[],"mappings":"AAAA;ACIA;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE","file":"IrisGridContextMenuHandler.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$padding-x: 2rem;\n\n.iris-grid-filter-menu-item-value {\n user-select: none;\n background: var(--dh-color-surface-bg);\n border-radius: $border-radius $border-radius 0 0;\n padding: $input-btn-padding-y $padding-x;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.advanced-filter-button-container {\n transition: $transition opacity;\n}\n\n.advanced-filter-button-container.hidden {\n opacity: 0;\n}\n"]}
|
|
@@ -51,7 +51,7 @@ declare class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
51
51
|
componentWillUnmount(): void;
|
|
52
52
|
dh: DhType;
|
|
53
53
|
getHeaderActions(modelIndex: ModelIndex, gridPoint: GridPoint): ContextAction[];
|
|
54
|
-
getCellActions(modelColumn:
|
|
54
|
+
getCellActions(modelColumn: ModelIndex, grid: Grid, gridPoint: GridPoint): ContextAction[];
|
|
55
55
|
/**
|
|
56
56
|
* Gets an equality filter for the provided numeric value
|
|
57
57
|
* @param column The column to make the filter for
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridContextMenuHandler.d.ts","sourceRoot":"","sources":["../../src/mousehandlers/IrisGridContextMenuHandler.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,OAAO,EACL,aAAa,EAKd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,EAClB,IAAI,EACJ,gBAAgB,EAChB,SAAS,EAIT,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EACV,MAAM,EACN,EAAE,IAAI,MAAM,EACZ,eAAe,EACf,WAAW,EACX,IAAI,EACL,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAIL,iBAAiB,EAEjB,aAAa,EACd,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAO5C,OAAO,mCAAmC,CAAC;AAE3C,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAO7C;;GAEG;AACH,cAAM,0BAA2B,SAAQ,gBAAgB;IACvD,MAAM,CAAC,UAAU,SAAmC;IAEpD,MAAM,CAAC,kBAAkB,SAAmC;IAE5D,MAAM,CAAC,YAAY,SAAmC;IAEtD,MAAM,CAAC,qBAAqB,SAAmC;IAE/D,MAAM,CAAC,UAAU,SAAmC;IAEpD,MAAM,CAAC,UAAU,SAAmC;IAEpD,MAAM,CAAC,UAAU,SAAoC;IAErD,MAAM,CAAC,YAAY,SAAoC;IAEvD,MAAM,CAAC,mBAAmB,SAAoC;IAE9D,MAAM,CAAC,qBAAqB;;;;MAIjB;IAEX;;;;;;OAMG;IACH,MAAM,CAAC,uBAAuB,CAC5B,YAAY,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAChD,eAAe,EAAE,eAAe,EAChC,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAC5B,eAAe;IAUlB;;;;;OAKG;IACH,MAAM,CAAC,kBAAkB,CACvB,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACrC,aAAa,EAAE,MAAM,EACrB,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAC5B,MAAM;IAMT;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI;IAI7D,MAAM,CAAC,qBAAqB,CAC1B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,GAAG,SAAK,GACP,MAAM;IAOT,QAAQ,EAAE,QAAQ,CAAC;IAEnB,2BAA2B,EAAE,aAAa,CACxC,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI,CACvE,CAAC;gBAEU,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM;IAY1C,oBAAoB,IAAI,IAAI;IAI5B,EAAE,EAAE,MAAM,CAAC;IAEX,gBAAgB,CACd,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,GACnB,aAAa,EAAE;
|
|
1
|
+
{"version":3,"file":"IrisGridContextMenuHandler.d.ts","sourceRoot":"","sources":["../../src/mousehandlers/IrisGridContextMenuHandler.tsx"],"names":[],"mappings":"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"}
|
|
@@ -231,6 +231,7 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
231
231
|
actions.push({
|
|
232
232
|
title: 'Copy Column Name',
|
|
233
233
|
group: IrisGridContextMenuHandler.GROUP_COPY,
|
|
234
|
+
shortcutText: ContextActionUtils.isMacPlatform() ? '⌥Click' : 'Alt+Click',
|
|
234
235
|
action: () => {
|
|
235
236
|
var _model$textForColumnH;
|
|
236
237
|
copyToClipboard((_model$textForColumnH = model.textForColumnHeader(modelIndex)) !== null && _model$textForColumnH !== void 0 ? _model$textForColumnH : '').catch(e => log.error('Unable to copy header', e));
|
|
@@ -253,7 +254,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
253
254
|
return actions;
|
|
254
255
|
}
|
|
255
256
|
getCellActions(modelColumn, grid, gridPoint) {
|
|
256
|
-
assertNotNull(modelColumn);
|
|
257
257
|
var {
|
|
258
258
|
dh,
|
|
259
259
|
irisGrid
|
|
@@ -271,9 +271,14 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
271
271
|
} = model;
|
|
272
272
|
var modelRow = irisGrid.getModelRow(rowIndex);
|
|
273
273
|
assertNotNull(modelRow);
|
|
274
|
-
var
|
|
275
|
-
var
|
|
276
|
-
|
|
274
|
+
var sourceCell = model.sourceForCell(modelColumn, modelRow);
|
|
275
|
+
var {
|
|
276
|
+
column: sourceColumn,
|
|
277
|
+
row: sourceRow
|
|
278
|
+
} = sourceCell;
|
|
279
|
+
var value = model.valueForCell(sourceColumn, sourceRow);
|
|
280
|
+
var valueText = model.textForCell(sourceColumn, sourceRow);
|
|
281
|
+
var column = columns[sourceColumn];
|
|
277
282
|
var actions = [];
|
|
278
283
|
var {
|
|
279
284
|
quickFilters
|
|
@@ -300,7 +305,7 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
300
305
|
if (column == null || rowIndex == null) return actions;
|
|
301
306
|
|
|
302
307
|
// grid data area context menu options
|
|
303
|
-
if (model.isFilterable(
|
|
308
|
+
if (model.isFilterable(sourceColumn)) {
|
|
304
309
|
// cell data area contextmenu options
|
|
305
310
|
var filterMenu = {
|
|
306
311
|
title: 'Filter by Value',
|
|
@@ -312,10 +317,10 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
312
317
|
};
|
|
313
318
|
if (value == null) {
|
|
314
319
|
// null gets a special menu
|
|
315
|
-
if (quickFilters.get(
|
|
320
|
+
if (quickFilters.get(sourceColumn)) {
|
|
316
321
|
filterMenu.actions.push({
|
|
317
322
|
title: 'And',
|
|
318
|
-
actions: this.nullFilterActions(column, quickFilters.get(
|
|
323
|
+
actions: this.nullFilterActions(column, quickFilters.get(sourceColumn), '&&'),
|
|
319
324
|
order: 2,
|
|
320
325
|
group: ContextActions.groups.high
|
|
321
326
|
});
|
|
@@ -323,10 +328,10 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
323
328
|
filterMenu.actions.push(...this.nullFilterActions(column));
|
|
324
329
|
} else if (value === '') {
|
|
325
330
|
// empty string gets a special menu
|
|
326
|
-
if (quickFilters.get(
|
|
331
|
+
if (quickFilters.get(sourceColumn)) {
|
|
327
332
|
filterMenu.actions.push({
|
|
328
333
|
title: 'And',
|
|
329
|
-
actions: this.emptyStringFilterActions(column, quickFilters.get(
|
|
334
|
+
actions: this.emptyStringFilterActions(column, quickFilters.get(sourceColumn), '&&'),
|
|
330
335
|
order: 2,
|
|
331
336
|
group: ContextActions.groups.high
|
|
332
337
|
});
|
|
@@ -334,10 +339,10 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
334
339
|
filterMenu.actions.push(...this.emptyStringFilterActions(column));
|
|
335
340
|
} else if (TableUtils.isBooleanType(column.type)) {
|
|
336
341
|
// boolean should have OR condition, and handles it's own null menu options
|
|
337
|
-
if (quickFilters.get(
|
|
342
|
+
if (quickFilters.get(sourceColumn)) {
|
|
338
343
|
filterMenu.actions.push({
|
|
339
344
|
title: 'Or',
|
|
340
|
-
actions: this.booleanFilterActions(column, valueText, quickFilters.get(
|
|
345
|
+
actions: this.booleanFilterActions(column, valueText, quickFilters.get(sourceColumn), '||'),
|
|
341
346
|
order: 2,
|
|
342
347
|
group: ContextActions.groups.high
|
|
343
348
|
});
|
|
@@ -345,36 +350,36 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
345
350
|
filterMenu.actions.push(...this.booleanFilterActions(column, valueText));
|
|
346
351
|
} else if (TableUtils.isNumberType(column.type) || TableUtils.isCharType(column.type)) {
|
|
347
352
|
// Chars get treated like numbers in terms of which filters are available
|
|
348
|
-
assertNotNull(
|
|
353
|
+
assertNotNull(sourceColumn);
|
|
349
354
|
// We want to show the full unformatted value if it's a number, so user knows which value they are matching
|
|
350
355
|
// If it's a Char we just show the char
|
|
351
356
|
var numberValueText = TableUtils.isCharType(column.type) ? String.fromCharCode(value) : "".concat(value);
|
|
352
|
-
if (quickFilters.get(
|
|
357
|
+
if (quickFilters.get(sourceColumn)) {
|
|
353
358
|
filterMenu.actions.push({
|
|
354
359
|
title: 'And',
|
|
355
|
-
actions: this.numberFilterActions(column, numberValueText, value, quickFilters.get(
|
|
360
|
+
actions: this.numberFilterActions(column, numberValueText, value, quickFilters.get(sourceColumn), '&&'),
|
|
356
361
|
order: 2,
|
|
357
362
|
group: ContextActions.groups.high
|
|
358
363
|
});
|
|
359
364
|
}
|
|
360
|
-
filterMenu.actions.push(...this.numberFilterActions(column, numberValueText, value, quickFilters.get(
|
|
365
|
+
filterMenu.actions.push(...this.numberFilterActions(column, numberValueText, value, quickFilters.get(sourceColumn)));
|
|
361
366
|
} else if (TableUtils.isDateType(column.type)) {
|
|
362
367
|
var dateValueText = dateFilterFormatter.format(value);
|
|
363
368
|
var previewValue = previewFilterFormatter.format(value);
|
|
364
|
-
if (quickFilters.get(
|
|
369
|
+
if (quickFilters.get(sourceColumn)) {
|
|
365
370
|
filterMenu.actions.push({
|
|
366
371
|
title: 'And',
|
|
367
|
-
actions: this.dateFilterActions(column, dateValueText, previewValue, value, quickFilters.get(
|
|
372
|
+
actions: this.dateFilterActions(column, dateValueText, previewValue, value, quickFilters.get(sourceColumn), '&&'),
|
|
368
373
|
order: 2,
|
|
369
374
|
group: ContextActions.groups.high
|
|
370
375
|
});
|
|
371
376
|
}
|
|
372
|
-
filterMenu.actions.push(...this.dateFilterActions(column, dateValueText, previewValue, value, quickFilters.get(
|
|
377
|
+
filterMenu.actions.push(...this.dateFilterActions(column, dateValueText, previewValue, value, quickFilters.get(sourceColumn)));
|
|
373
378
|
} else {
|
|
374
|
-
if (quickFilters.get(
|
|
379
|
+
if (quickFilters.get(sourceColumn)) {
|
|
375
380
|
filterMenu.actions.push({
|
|
376
381
|
title: 'And',
|
|
377
|
-
actions: this.stringFilterActions(column, valueText, value, quickFilters.get(
|
|
382
|
+
actions: this.stringFilterActions(column, valueText, value, quickFilters.get(sourceColumn), '&&'),
|
|
378
383
|
order: 2,
|
|
379
384
|
group: ContextActions.groups.high
|
|
380
385
|
});
|
|
@@ -387,18 +392,18 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
387
392
|
}
|
|
388
393
|
|
|
389
394
|
// Expand/Collapse options
|
|
390
|
-
if (isExpandableGridModel(model) && model.isRowExpandable(
|
|
395
|
+
if (isExpandableGridModel(model) && model.isRowExpandable(sourceRow)) {
|
|
391
396
|
// If there are grouped columns, then it is a rollup
|
|
392
|
-
//
|
|
393
|
-
var expandingColumn =
|
|
394
|
-
var cellValue = model.valueForCell(expandingColumn,
|
|
395
|
-
var cellText = cellValue == null ? 'null' : model.textForCell(expandingColumn,
|
|
397
|
+
// The first column will be the "group" column with the value that should be expanded
|
|
398
|
+
var expandingColumn = 0;
|
|
399
|
+
var cellValue = model.valueForCell(expandingColumn, sourceRow);
|
|
400
|
+
var cellText = cellValue == null ? 'null' : model.textForCell(expandingColumn, sourceRow);
|
|
396
401
|
actions.push({
|
|
397
|
-
title: IrisGridContextMenuHandler.getRowOptionFormatted(model.isRowExpanded(
|
|
402
|
+
title: IrisGridContextMenuHandler.getRowOptionFormatted(model.isRowExpanded(sourceRow) ? 'Collapse' : 'Expand', cellText),
|
|
398
403
|
group: IrisGridContextMenuHandler.GROUP_EXPAND_COLLAPSE,
|
|
399
404
|
order: 10,
|
|
400
405
|
action: () => {
|
|
401
|
-
model.setRowExpanded(
|
|
406
|
+
model.setRowExpanded(sourceRow, !model.isRowExpanded(sourceRow));
|
|
402
407
|
}
|
|
403
408
|
});
|
|
404
409
|
if (model.isExpandAllAvailable === true) {
|
|
@@ -407,7 +412,7 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
407
412
|
group: IrisGridContextMenuHandler.GROUP_EXPAND_COLLAPSE,
|
|
408
413
|
order: 20,
|
|
409
414
|
action: () => {
|
|
410
|
-
model.setRowExpanded(
|
|
415
|
+
model.setRowExpanded(sourceRow, true, true);
|
|
411
416
|
}
|
|
412
417
|
});
|
|
413
418
|
}
|
|
@@ -443,6 +448,7 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
443
448
|
actions.push({
|
|
444
449
|
title: 'Copy Cell',
|
|
445
450
|
group: IrisGridContextMenuHandler.GROUP_COPY,
|
|
451
|
+
shortcutText: ContextActionUtils.isMacPlatform() ? '⌥Click' : 'Alt+Click',
|
|
446
452
|
order: 10,
|
|
447
453
|
action: () => {
|
|
448
454
|
irisGrid.copyCell(columnIndex, rowIndex);
|
|
@@ -533,9 +539,14 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
533
539
|
} = metrics;
|
|
534
540
|
var actions = [];
|
|
535
541
|
if (modelColumn != null && modelRow != null) {
|
|
536
|
-
var
|
|
537
|
-
var
|
|
538
|
-
|
|
542
|
+
var sourceCell = model.sourceForCell(modelColumn, modelRow !== null && modelRow !== void 0 ? modelRow : 0);
|
|
543
|
+
var {
|
|
544
|
+
column: sourceColumn,
|
|
545
|
+
row: sourceRow
|
|
546
|
+
} = sourceCell;
|
|
547
|
+
var value = model.valueForCell(sourceColumn, sourceRow);
|
|
548
|
+
var valueText = model.textForCell(sourceColumn, sourceRow);
|
|
549
|
+
var column = columns[sourceColumn];
|
|
539
550
|
var {
|
|
540
551
|
onContextMenu
|
|
541
552
|
} = irisGrid.props;
|
|
@@ -552,18 +563,21 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
|
|
|
552
563
|
}));
|
|
553
564
|
}
|
|
554
565
|
}
|
|
555
|
-
if (modelColumn != null
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
566
|
+
if (modelColumn != null) {
|
|
567
|
+
var clearFilterRange = model.getClearFilterRange(modelColumn);
|
|
568
|
+
if (clearFilterRange != null && clearFilterRange.length > 0) {
|
|
569
|
+
// Clear column filter should still be available after last row
|
|
570
|
+
// And should be available in both header and body context menus
|
|
571
|
+
actions.push({
|
|
572
|
+
title: clearFilterRange[1] - clearFilterRange[0] > 0 ? 'Clear Group Filter' : 'Clear Column Filter',
|
|
573
|
+
group: IrisGridContextMenuHandler.GROUP_FILTER,
|
|
574
|
+
order: 30,
|
|
575
|
+
action: () => {
|
|
576
|
+
this.irisGrid.removeColumnFilter(clearFilterRange);
|
|
577
|
+
},
|
|
578
|
+
disabled: !Array.from(quickFilters.keys()).some(col => col >= clearFilterRange[0] && col <= clearFilterRange[1]) && !Array.from(advancedFilters.keys()).some(col => col >= clearFilterRange[0] && col <= clearFilterRange[1])
|
|
579
|
+
});
|
|
580
|
+
}
|
|
567
581
|
}
|
|
568
582
|
if (isFilterBarShown ? y <= gridY : y <= columnHeaderHeight * columnHeaderMaxDepth && columnHeaderDepth === 0) {
|
|
569
583
|
// grid header context menu options
|