@deephaven/iris-grid 0.7.0 → 0.7.1-beta.13
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/CrossColumnSearch.d.ts.map +1 -1
- package/dist/CrossColumnSearch.js +1 -1
- package/dist/CrossColumnSearch.js.map +1 -1
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +2 -2
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridRenderer.js +4 -1
- package/dist/IrisGridRenderer.js.map +1 -1
- package/dist/IrisGridTableModel.d.ts +7 -0
- package/dist/IrisGridTableModel.d.ts.map +1 -1
- package/dist/IrisGridTableModel.js +32 -9
- package/dist/IrisGridTableModel.js.map +1 -1
- package/dist/TableUtils.d.ts.map +1 -1
- package/dist/TableUtils.js +2 -0
- package/dist/TableUtils.js.map +1 -1
- package/dist/sidebar/aggregations/AggregationUtils.d.ts.map +1 -1
- package/dist/sidebar/aggregations/AggregationUtils.js +1 -3
- package/dist/sidebar/aggregations/AggregationUtils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CrossColumnSearch.d.ts","sourceRoot":"","sources":["../src/CrossColumnSearch.jsx"],"names":[],"mappings":";AAgBA;IACE,
|
|
1
|
+
{"version":3,"file":"CrossColumnSearch.d.ts","sourceRoot":"","sources":["../src/CrossColumnSearch.jsx"],"names":[],"mappings":";AAgBA;IACE,2GAyBC;IAED,wBAaC;IAMD,0CAGC;IAYD,8BAYC;IAED,kBAEC;IAED,cAEC;IAED,sBAQC;IAxDC,kCAAoC;IAOtC,cAEC;IAOD,mEAGC;IAED,+CAGC;CAuLF"}
|
|
@@ -9,7 +9,7 @@ import "./CrossColumnSearch.css";
|
|
|
9
9
|
|
|
10
10
|
class CrossColumnSearch extends PureComponent {
|
|
11
11
|
static createSearchFilter(searchValue, selectedColumns, columns, invertSelection) {
|
|
12
|
-
var filterColumns = invertSelection ? columns.filter(column => !selectedColumns.includes(column.name)) : selectedColumns;
|
|
12
|
+
var filterColumns = invertSelection ? columns.filter(column => !selectedColumns.includes(column.name)).map(column => column.name) : selectedColumns;
|
|
13
13
|
|
|
14
14
|
if (searchValue && filterColumns.length > 0) {
|
|
15
15
|
var filterValue = dh.FilterValue.ofString(searchValue);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/CrossColumnSearch.jsx"],"names":["React","PureComponent","PropTypes","FontAwesomeIcon","Checkbox","Popper","SearchInput","Tooltip","dhGearFilled","dhCheckSquare","dhSquareFilled","dhRemoveSquareFilled","dhWarningCircleFilled","vsCircleLargeFilled","dh","TableUtils","CrossColumnSearch","createSearchFilter","searchValue","selectedColumns","columns","invertSelection","filterColumns","filter","column","includes","name","length","filterValue","FilterValue","ofString","searchFilter","FilterCondition","search","map","constructor","props","handleSearchValueChange","bind","toggleColumn","selectAll","clear","selectNumbers","searchField","createRef","state","isConfigureColumnsShown","focus","current","event","onChange","target","value","sendColumnChange","setInvertSelection","c","update","slice","push","isNumberType","type","render","hasAllColumnsSelected","hasNoColumnsSelected","icon","setState","substring","lastIndexOf","propTypes","string","isRequired","arrayOf","bool","func","shape"],"mappings":"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","sourcesContent":["import React, { PureComponent } from 'react';\nimport PropTypes from 'prop-types';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { Checkbox, Popper, SearchInput, Tooltip } from '@deephaven/components';\nimport {\n dhGearFilled,\n dhCheckSquare,\n dhSquareFilled,\n dhRemoveSquareFilled,\n dhWarningCircleFilled,\n vsCircleLargeFilled,\n} from '@deephaven/icons';\nimport dh from '@deephaven/jsapi-shim';\nimport TableUtils from './TableUtils';\nimport './CrossColumnSearch.scss';\n\nclass CrossColumnSearch extends PureComponent {\n static createSearchFilter(\n searchValue,\n selectedColumns,\n columns,\n invertSelection\n ) {\n const filterColumns = invertSelection\n ? columns.filter(column => !selectedColumns.includes(column.name))\n : selectedColumns;\n if (searchValue && filterColumns.length > 0) {\n const filterValue = dh.FilterValue.ofString(searchValue);\n const searchFilter =\n filterColumns.length === columns.length\n ? dh.FilterCondition.search(filterValue)\n : dh.FilterCondition.search(\n filterValue,\n columns\n .filter(column => filterColumns.includes(column.name))\n .map(column => column.filter())\n );\n return searchFilter;\n }\n return null;\n }\n\n constructor(props) {\n super(props);\n this.handleSearchValueChange = this.handleSearchValueChange.bind(this);\n this.toggleColumn = this.toggleColumn.bind(this);\n this.selectAll = this.selectAll.bind(this);\n this.clear = this.clear.bind(this);\n this.selectNumbers = this.selectNumbers.bind(this);\n\n this.searchField = React.createRef();\n\n this.state = {\n isConfigureColumnsShown: false,\n };\n }\n\n focus() {\n this.searchField.current.focus();\n }\n\n handleSearchValueChange(event) {\n const { onChange, selectedColumns, invertSelection } = this.props;\n onChange(event.target.value, selectedColumns, invertSelection);\n }\n\n sendColumnChange(selectedColumns, invertSelection) {\n const { onChange, value } = this.props;\n onChange(value, selectedColumns, invertSelection);\n }\n\n setInvertSelection(invertSelection) {\n const { onChange, value } = this.props;\n onChange(value, [], invertSelection);\n }\n\n toggleColumn(name) {\n const { selectedColumns, invertSelection } = this.props;\n if (selectedColumns.includes(name)) {\n this.sendColumnChange(\n selectedColumns.filter(c => c !== name),\n invertSelection\n );\n } else {\n const update = selectedColumns.slice();\n update.push(name);\n this.sendColumnChange(update, invertSelection);\n }\n }\n\n selectAll() {\n this.setInvertSelection(true);\n }\n\n clear() {\n this.setInvertSelection(false);\n }\n\n selectNumbers() {\n const { columns } = this.props;\n this.sendColumnChange(\n columns\n .filter(c => TableUtils.isNumberType(c.type))\n .map(column => column.name),\n false\n );\n }\n\n render() {\n const { value, selectedColumns, invertSelection, columns } = this.props;\n const { isConfigureColumnsShown } = this.state;\n const hasAllColumnsSelected =\n (selectedColumns.length === 0 && invertSelection === true) ||\n (selectedColumns.length === columns.length && invertSelection === false);\n const hasNoColumnsSelected =\n (selectedColumns.length === 0 && invertSelection === false) ||\n (selectedColumns.length === columns.length && invertSelection === true);\n\n // set icon layers\n let icon;\n if (hasAllColumnsSelected) {\n // icon if all columns selected for search\n icon = (\n <>\n <FontAwesomeIcon\n icon={dhSquareFilled}\n mask={dhGearFilled}\n transform=\"shrink-2 down-5 right-7\"\n />\n <FontAwesomeIcon\n icon={dhCheckSquare}\n className=\"text-primary\"\n transform=\"shrink-4 down-5 right-7\"\n />\n </>\n );\n } else if (hasNoColumnsSelected) {\n // icon error, no columns selected for searching\n icon = (\n <>\n <FontAwesomeIcon\n icon={vsCircleLargeFilled}\n mask={dhGearFilled}\n transform=\"shrink-1 down-5 right-7\"\n />\n <FontAwesomeIcon\n icon={dhWarningCircleFilled}\n className=\"text-danger\"\n transform=\"shrink-4 down-5 right-7\"\n />\n </>\n );\n } else {\n // icon if some columns selected, but not all\n icon = (\n <>\n <FontAwesomeIcon\n icon={dhSquareFilled}\n mask={dhGearFilled}\n transform=\"shrink-2 down-5 right-7\"\n />\n <FontAwesomeIcon\n icon={dhRemoveSquareFilled}\n className=\"text-primary\"\n transform=\"shrink-4 down-5 right-7\"\n />\n </>\n );\n }\n\n return (\n <div className=\"cross-column-container\">\n <SearchInput\n className=\"cross-column-search\"\n placeholder=\"Search Data...\"\n value={value}\n onChange={this.handleSearchValueChange}\n ref={this.searchField}\n />\n <button\n type=\"button\"\n className=\"btn btn-link btn-link-icon px-2\"\n onClick={() => {\n if (isConfigureColumnsShown) {\n this.setState({ isConfigureColumnsShown: false });\n } else {\n this.setState({ isConfigureColumnsShown: true });\n }\n }}\n >\n <div className=\"fa-layers\">{icon}</div>\n <Tooltip>Configure Columns</Tooltip>\n <Popper\n isShown={isConfigureColumnsShown}\n className=\"cross-column-popper\"\n onExited={() => {\n this.setState({ isConfigureColumnsShown: false });\n }}\n closeOnBlur\n interactive\n >\n <div className=\"cross-column-popup\">\n Searched Columns\n <div className=\"cross-column-scroll\">\n {columns.map(column => (\n <React.Fragment key={column.name}>\n <Checkbox\n className=\"cross-column-checkbox\"\n checked={\n invertSelection\n ? !selectedColumns.includes(column.name)\n : selectedColumns.includes(column.name)\n }\n onChange={() => this.toggleColumn(column.name)}\n >\n {column.name}\n </Checkbox>\n\n {column.type.substring(column.type.lastIndexOf('.') + 1)}\n </React.Fragment>\n ))}\n </div>\n <div className=\"cross-column-button-bar\">\n <button\n type=\"button\"\n className=\"btn btn-link\"\n onClick={this.selectAll}\n >\n Select All\n </button>\n <button\n type=\"button\"\n className=\"btn btn-link\"\n onClick={this.clear}\n >\n Clear\n </button>\n <button\n type=\"button\"\n className=\"btn btn-link\"\n onClick={this.selectNumbers}\n >\n Numbers Only\n </button>\n </div>\n {hasNoColumnsSelected && (\n <p className=\"text-danger\">\n <FontAwesomeIcon icon={dhWarningCircleFilled} /> Select at\n least one column to search.\n </p>\n )}\n </div>\n </Popper>\n </button>\n </div>\n );\n }\n}\n\nCrossColumnSearch.propTypes = {\n value: PropTypes.string.isRequired,\n selectedColumns: PropTypes.arrayOf(PropTypes.string).isRequired,\n invertSelection: PropTypes.bool.isRequired,\n onChange: PropTypes.func.isRequired,\n columns: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n })\n ).isRequired,\n};\n\nexport default CrossColumnSearch;\n"],"file":"CrossColumnSearch.js"}
|
|
1
|
+
{"version":3,"sources":["../src/CrossColumnSearch.jsx"],"names":["React","PureComponent","PropTypes","FontAwesomeIcon","Checkbox","Popper","SearchInput","Tooltip","dhGearFilled","dhCheckSquare","dhSquareFilled","dhRemoveSquareFilled","dhWarningCircleFilled","vsCircleLargeFilled","dh","TableUtils","CrossColumnSearch","createSearchFilter","searchValue","selectedColumns","columns","invertSelection","filterColumns","filter","column","includes","name","map","length","filterValue","FilterValue","ofString","searchFilter","FilterCondition","search","constructor","props","handleSearchValueChange","bind","toggleColumn","selectAll","clear","selectNumbers","searchField","createRef","state","isConfigureColumnsShown","focus","current","event","onChange","target","value","sendColumnChange","setInvertSelection","c","update","slice","push","isNumberType","type","render","hasAllColumnsSelected","hasNoColumnsSelected","icon","setState","substring","lastIndexOf","propTypes","string","isRequired","arrayOf","bool","func","shape"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,aAAhB,QAAqC,OAArC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,eAAT,QAAgC,gCAAhC;AACA,SAASC,QAAT,EAAmBC,MAAnB,EAA2BC,WAA3B,EAAwCC,OAAxC,QAAuD,uBAAvD;AACA,SACEC,YADF,EAEEC,aAFF,EAGEC,cAHF,EAIEC,oBAJF,EAKEC,qBALF,EAMEC,mBANF,QAOO,kBAPP;AAQA,OAAOC,EAAP,MAAe,uBAAf;OACOC,U;;;AAGP,MAAMC,iBAAN,SAAgCf,aAAhC,CAA8C;AACnB,SAAlBgB,kBAAkB,CACvBC,WADuB,EAEvBC,eAFuB,EAGvBC,OAHuB,EAIvBC,eAJuB,EAKvB;AACA,QAAMC,aAAa,GAAGD,eAAe,GACjCD,OAAO,CACJG,MADH,CACUC,MAAM,IAAI,CAACL,eAAe,CAACM,QAAhB,CAAyBD,MAAM,CAACE,IAAhC,CADrB,EAEGC,GAFH,CAEOH,MAAM,IAAIA,MAAM,CAACE,IAFxB,CADiC,GAIjCP,eAJJ;;AAKA,QAAID,WAAW,IAAII,aAAa,CAACM,MAAd,GAAuB,CAA1C,EAA6C;AAC3C,UAAMC,WAAW,GAAGf,EAAE,CAACgB,WAAH,CAAeC,QAAf,CAAwBb,WAAxB,CAApB;AACA,UAAMc,YAAY,GAChBV,aAAa,CAACM,MAAd,KAAyBR,OAAO,CAACQ,MAAjC,GACId,EAAE,CAACmB,eAAH,CAAmBC,MAAnB,CAA0BL,WAA1B,CADJ,GAEIf,EAAE,CAACmB,eAAH,CAAmBC,MAAnB,CACEL,WADF,EAEET,OAAO,CACJG,MADH,CACUC,MAAM,IAAIF,aAAa,CAACG,QAAd,CAAuBD,MAAM,CAACE,IAA9B,CADpB,EAEGC,GAFH,CAEOH,MAAM,IAAIA,MAAM,CAACD,MAAP,EAFjB,CAFF,CAHN;AASA,aAAOS,YAAP;AACD;;AACD,WAAO,IAAP;AACD;;AAEDG,EAAAA,WAAW,CAACC,KAAD,EAAQ;AACjB,UAAMA,KAAN;AACA,SAAKC,uBAAL,GAA+B,KAAKA,uBAAL,CAA6BC,IAA7B,CAAkC,IAAlC,CAA/B;AACA,SAAKC,YAAL,GAAoB,KAAKA,YAAL,CAAkBD,IAAlB,CAAuB,IAAvB,CAApB;AACA,SAAKE,SAAL,GAAiB,KAAKA,SAAL,CAAeF,IAAf,CAAoB,IAApB,CAAjB;AACA,SAAKG,KAAL,GAAa,KAAKA,KAAL,CAAWH,IAAX,CAAgB,IAAhB,CAAb;AACA,SAAKI,aAAL,GAAqB,KAAKA,aAAL,CAAmBJ,IAAnB,CAAwB,IAAxB,CAArB;AAEA,SAAKK,WAAL,gBAAmB3C,KAAK,CAAC4C,SAAN,EAAnB;AAEA,SAAKC,KAAL,GAAa;AACXC,MAAAA,uBAAuB,EAAE;AADd,KAAb;AAGD;;AAEDC,EAAAA,KAAK,GAAG;AACN,SAAKJ,WAAL,CAAiBK,OAAjB,CAAyBD,KAAzB;AACD;;AAEDV,EAAAA,uBAAuB,CAACY,KAAD,EAAQ;AAC7B,QAAM;AAAEC,MAAAA,QAAF;AAAY/B,MAAAA,eAAZ;AAA6BE,MAAAA;AAA7B,QAAiD,KAAKe,KAA5D;AACAc,IAAAA,QAAQ,CAACD,KAAK,CAACE,MAAN,CAAaC,KAAd,EAAqBjC,eAArB,EAAsCE,eAAtC,CAAR;AACD;;AAEDgC,EAAAA,gBAAgB,CAAClC,eAAD,EAAkBE,eAAlB,EAAmC;AACjD,QAAM;AAAE6B,MAAAA,QAAF;AAAYE,MAAAA;AAAZ,QAAsB,KAAKhB,KAAjC;AACAc,IAAAA,QAAQ,CAACE,KAAD,EAAQjC,eAAR,EAAyBE,eAAzB,CAAR;AACD;;AAEDiC,EAAAA,kBAAkB,CAACjC,eAAD,EAAkB;AAClC,QAAM;AAAE6B,MAAAA,QAAF;AAAYE,MAAAA;AAAZ,QAAsB,KAAKhB,KAAjC;AACAc,IAAAA,QAAQ,CAACE,KAAD,EAAQ,EAAR,EAAY/B,eAAZ,CAAR;AACD;;AAEDkB,EAAAA,YAAY,CAACb,IAAD,EAAO;AACjB,QAAM;AAAEP,MAAAA,eAAF;AAAmBE,MAAAA;AAAnB,QAAuC,KAAKe,KAAlD;;AACA,QAAIjB,eAAe,CAACM,QAAhB,CAAyBC,IAAzB,CAAJ,EAAoC;AAClC,WAAK2B,gBAAL,CACElC,eAAe,CAACI,MAAhB,CAAuBgC,CAAC,IAAIA,CAAC,KAAK7B,IAAlC,CADF,EAEEL,eAFF;AAID,KALD,MAKO;AACL,UAAMmC,MAAM,GAAGrC,eAAe,CAACsC,KAAhB,EAAf;AACAD,MAAAA,MAAM,CAACE,IAAP,CAAYhC,IAAZ;AACA,WAAK2B,gBAAL,CAAsBG,MAAtB,EAA8BnC,eAA9B;AACD;AACF;;AAEDmB,EAAAA,SAAS,GAAG;AACV,SAAKc,kBAAL,CAAwB,IAAxB;AACD;;AAEDb,EAAAA,KAAK,GAAG;AACN,SAAKa,kBAAL,CAAwB,KAAxB;AACD;;AAEDZ,EAAAA,aAAa,GAAG;AACd,QAAM;AAAEtB,MAAAA;AAAF,QAAc,KAAKgB,KAAzB;AACA,SAAKiB,gBAAL,CACEjC,OAAO,CACJG,MADH,CACUgC,CAAC,IAAIxC,UAAU,CAAC4C,YAAX,CAAwBJ,CAAC,CAACK,IAA1B,CADf,EAEGjC,GAFH,CAEOH,MAAM,IAAIA,MAAM,CAACE,IAFxB,CADF,EAIE,KAJF;AAMD;;AAEDmC,EAAAA,MAAM,GAAG;AACP,QAAM;AAAET,MAAAA,KAAF;AAASjC,MAAAA,eAAT;AAA0BE,MAAAA,eAA1B;AAA2CD,MAAAA;AAA3C,QAAuD,KAAKgB,KAAlE;AACA,QAAM;AAAEU,MAAAA;AAAF,QAA8B,KAAKD,KAAzC;AACA,QAAMiB,qBAAqB,GACxB3C,eAAe,CAACS,MAAhB,KAA2B,CAA3B,IAAgCP,eAAe,KAAK,IAArD,IACCF,eAAe,CAACS,MAAhB,KAA2BR,OAAO,CAACQ,MAAnC,IAA6CP,eAAe,KAAK,KAFpE;AAGA,QAAM0C,oBAAoB,GACvB5C,eAAe,CAACS,MAAhB,KAA2B,CAA3B,IAAgCP,eAAe,KAAK,KAArD,IACCF,eAAe,CAACS,MAAhB,KAA2BR,OAAO,CAACQ,MAAnC,IAA6CP,eAAe,KAAK,IAFpE,CANO,CAUP;;AACA,QAAI2C,IAAJ;;AACA,QAAIF,qBAAJ,EAA2B;AACzB;AACAE,MAAAA,IAAI,gBACF,uDACE,oBAAC,eAAD;AACE,QAAA,IAAI,EAAEtD,cADR;AAEE,QAAA,IAAI,EAAEF,YAFR;AAGE,QAAA,SAAS,EAAC;AAHZ,QADF,eAME,oBAAC,eAAD;AACE,QAAA,IAAI,EAAEC,aADR;AAEE,QAAA,SAAS,EAAC,cAFZ;AAGE,QAAA,SAAS,EAAC;AAHZ,QANF,CADF;AAcD,KAhBD,MAgBO,IAAIsD,oBAAJ,EAA0B;AAC/B;AACAC,MAAAA,IAAI,gBACF,uDACE,oBAAC,eAAD;AACE,QAAA,IAAI,EAAEnD,mBADR;AAEE,QAAA,IAAI,EAAEL,YAFR;AAGE,QAAA,SAAS,EAAC;AAHZ,QADF,eAME,oBAAC,eAAD;AACE,QAAA,IAAI,EAAEI,qBADR;AAEE,QAAA,SAAS,EAAC,aAFZ;AAGE,QAAA,SAAS,EAAC;AAHZ,QANF,CADF;AAcD,KAhBM,MAgBA;AACL;AACAoD,MAAAA,IAAI,gBACF,uDACE,oBAAC,eAAD;AACE,QAAA,IAAI,EAAEtD,cADR;AAEE,QAAA,IAAI,EAAEF,YAFR;AAGE,QAAA,SAAS,EAAC;AAHZ,QADF,eAME,oBAAC,eAAD;AACE,QAAA,IAAI,EAAEG,oBADR;AAEE,QAAA,SAAS,EAAC,cAFZ;AAGE,QAAA,SAAS,EAAC;AAHZ,QANF,CADF;AAcD;;AAED,wBACE;AAAK,MAAA,SAAS,EAAC;AAAf,oBACE,oBAAC,WAAD;AACE,MAAA,SAAS,EAAC,qBADZ;AAEE,MAAA,WAAW,EAAC,gBAFd;AAGE,MAAA,KAAK,EAAEyC,KAHT;AAIE,MAAA,QAAQ,EAAE,KAAKf,uBAJjB;AAKE,MAAA,GAAG,EAAE,KAAKM;AALZ,MADF,eAQE;AACE,MAAA,IAAI,EAAC,QADP;AAEE,MAAA,SAAS,EAAC,iCAFZ;AAGE,MAAA,OAAO,EAAE,MAAM;AACb,YAAIG,uBAAJ,EAA6B;AAC3B,eAAKmB,QAAL,CAAc;AAAEnB,YAAAA,uBAAuB,EAAE;AAA3B,WAAd;AACD,SAFD,MAEO;AACL,eAAKmB,QAAL,CAAc;AAAEnB,YAAAA,uBAAuB,EAAE;AAA3B,WAAd;AACD;AACF;AATH,oBAWE;AAAK,MAAA,SAAS,EAAC;AAAf,OAA4BkB,IAA5B,CAXF,eAYE,oBAAC,OAAD,4BAZF,eAaE,oBAAC,MAAD;AACE,MAAA,OAAO,EAAElB,uBADX;AAEE,MAAA,SAAS,EAAC,qBAFZ;AAGE,MAAA,QAAQ,EAAE,MAAM;AACd,aAAKmB,QAAL,CAAc;AAAEnB,UAAAA,uBAAuB,EAAE;AAA3B,SAAd;AACD,OALH;AAME,MAAA,WAAW,MANb;AAOE,MAAA,WAAW;AAPb,oBASE;AAAK,MAAA,SAAS,EAAC;AAAf,wCAEE;AAAK,MAAA,SAAS,EAAC;AAAf,OACG1B,OAAO,CAACO,GAAR,CAAYH,MAAM,iBACjB,oBAAC,KAAD,CAAO,QAAP;AAAgB,MAAA,GAAG,EAAEA,MAAM,CAACE;AAA5B,oBACE,oBAAC,QAAD;AACE,MAAA,SAAS,EAAC,uBADZ;AAEE,MAAA,OAAO,EACLL,eAAe,GACX,CAACF,eAAe,CAACM,QAAhB,CAAyBD,MAAM,CAACE,IAAhC,CADU,GAEXP,eAAe,CAACM,QAAhB,CAAyBD,MAAM,CAACE,IAAhC,CALR;AAOE,MAAA,QAAQ,EAAE,MAAM,KAAKa,YAAL,CAAkBf,MAAM,CAACE,IAAzB;AAPlB,OASGF,MAAM,CAACE,IATV,CADF,EAaGF,MAAM,CAACoC,IAAP,CAAYM,SAAZ,CAAsB1C,MAAM,CAACoC,IAAP,CAAYO,WAAZ,CAAwB,GAAxB,IAA+B,CAArD,CAbH,CADD,CADH,CAFF,eAqBE;AAAK,MAAA,SAAS,EAAC;AAAf,oBACE;AACE,MAAA,IAAI,EAAC,QADP;AAEE,MAAA,SAAS,EAAC,cAFZ;AAGE,MAAA,OAAO,EAAE,KAAK3B;AAHhB,oBADF,eAQE;AACE,MAAA,IAAI,EAAC,QADP;AAEE,MAAA,SAAS,EAAC,cAFZ;AAGE,MAAA,OAAO,EAAE,KAAKC;AAHhB,eARF,eAeE;AACE,MAAA,IAAI,EAAC,QADP;AAEE,MAAA,SAAS,EAAC,cAFZ;AAGE,MAAA,OAAO,EAAE,KAAKC;AAHhB,sBAfF,CArBF,EA4CGqB,oBAAoB,iBACnB;AAAG,MAAA,SAAS,EAAC;AAAb,oBACE,oBAAC,eAAD;AAAiB,MAAA,IAAI,EAAEnD;AAAvB,MADF,2CA7CJ,CATF,CAbF,CARF,CADF;AAsFD;;AAlP2C;;AAqP9CI,iBAAiB,CAACoD,SAAlB,GAA8B;AAC5BhB,EAAAA,KAAK,EAAElD,SAAS,CAACmE,MAAV,CAAiBC,UADI;AAE5BnD,EAAAA,eAAe,EAAEjB,SAAS,CAACqE,OAAV,CAAkBrE,SAAS,CAACmE,MAA5B,EAAoCC,UAFzB;AAG5BjD,EAAAA,eAAe,EAAEnB,SAAS,CAACsE,IAAV,CAAeF,UAHJ;AAI5BpB,EAAAA,QAAQ,EAAEhD,SAAS,CAACuE,IAAV,CAAeH,UAJG;AAK5BlD,EAAAA,OAAO,EAAElB,SAAS,CAACqE,OAAV,CACPrE,SAAS,CAACwE,KAAV,CAAgB;AACdhD,IAAAA,IAAI,EAAExB,SAAS,CAACmE,MAAV,CAAiBC,UADT;AAEdV,IAAAA,IAAI,EAAE1D,SAAS,CAACmE,MAAV,CAAiBC;AAFT,GAAhB,CADO,EAKPA;AAV0B,CAA9B;AAaA,eAAetD,iBAAf","sourcesContent":["import React, { PureComponent } from 'react';\nimport PropTypes from 'prop-types';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { Checkbox, Popper, SearchInput, Tooltip } from '@deephaven/components';\nimport {\n dhGearFilled,\n dhCheckSquare,\n dhSquareFilled,\n dhRemoveSquareFilled,\n dhWarningCircleFilled,\n vsCircleLargeFilled,\n} from '@deephaven/icons';\nimport dh from '@deephaven/jsapi-shim';\nimport TableUtils from './TableUtils';\nimport './CrossColumnSearch.scss';\n\nclass CrossColumnSearch extends PureComponent {\n static createSearchFilter(\n searchValue,\n selectedColumns,\n columns,\n invertSelection\n ) {\n const filterColumns = invertSelection\n ? columns\n .filter(column => !selectedColumns.includes(column.name))\n .map(column => column.name)\n : selectedColumns;\n if (searchValue && filterColumns.length > 0) {\n const filterValue = dh.FilterValue.ofString(searchValue);\n const searchFilter =\n filterColumns.length === columns.length\n ? dh.FilterCondition.search(filterValue)\n : dh.FilterCondition.search(\n filterValue,\n columns\n .filter(column => filterColumns.includes(column.name))\n .map(column => column.filter())\n );\n return searchFilter;\n }\n return null;\n }\n\n constructor(props) {\n super(props);\n this.handleSearchValueChange = this.handleSearchValueChange.bind(this);\n this.toggleColumn = this.toggleColumn.bind(this);\n this.selectAll = this.selectAll.bind(this);\n this.clear = this.clear.bind(this);\n this.selectNumbers = this.selectNumbers.bind(this);\n\n this.searchField = React.createRef();\n\n this.state = {\n isConfigureColumnsShown: false,\n };\n }\n\n focus() {\n this.searchField.current.focus();\n }\n\n handleSearchValueChange(event) {\n const { onChange, selectedColumns, invertSelection } = this.props;\n onChange(event.target.value, selectedColumns, invertSelection);\n }\n\n sendColumnChange(selectedColumns, invertSelection) {\n const { onChange, value } = this.props;\n onChange(value, selectedColumns, invertSelection);\n }\n\n setInvertSelection(invertSelection) {\n const { onChange, value } = this.props;\n onChange(value, [], invertSelection);\n }\n\n toggleColumn(name) {\n const { selectedColumns, invertSelection } = this.props;\n if (selectedColumns.includes(name)) {\n this.sendColumnChange(\n selectedColumns.filter(c => c !== name),\n invertSelection\n );\n } else {\n const update = selectedColumns.slice();\n update.push(name);\n this.sendColumnChange(update, invertSelection);\n }\n }\n\n selectAll() {\n this.setInvertSelection(true);\n }\n\n clear() {\n this.setInvertSelection(false);\n }\n\n selectNumbers() {\n const { columns } = this.props;\n this.sendColumnChange(\n columns\n .filter(c => TableUtils.isNumberType(c.type))\n .map(column => column.name),\n false\n );\n }\n\n render() {\n const { value, selectedColumns, invertSelection, columns } = this.props;\n const { isConfigureColumnsShown } = this.state;\n const hasAllColumnsSelected =\n (selectedColumns.length === 0 && invertSelection === true) ||\n (selectedColumns.length === columns.length && invertSelection === false);\n const hasNoColumnsSelected =\n (selectedColumns.length === 0 && invertSelection === false) ||\n (selectedColumns.length === columns.length && invertSelection === true);\n\n // set icon layers\n let icon;\n if (hasAllColumnsSelected) {\n // icon if all columns selected for search\n icon = (\n <>\n <FontAwesomeIcon\n icon={dhSquareFilled}\n mask={dhGearFilled}\n transform=\"shrink-2 down-5 right-7\"\n />\n <FontAwesomeIcon\n icon={dhCheckSquare}\n className=\"text-primary\"\n transform=\"shrink-4 down-5 right-7\"\n />\n </>\n );\n } else if (hasNoColumnsSelected) {\n // icon error, no columns selected for searching\n icon = (\n <>\n <FontAwesomeIcon\n icon={vsCircleLargeFilled}\n mask={dhGearFilled}\n transform=\"shrink-1 down-5 right-7\"\n />\n <FontAwesomeIcon\n icon={dhWarningCircleFilled}\n className=\"text-danger\"\n transform=\"shrink-4 down-5 right-7\"\n />\n </>\n );\n } else {\n // icon if some columns selected, but not all\n icon = (\n <>\n <FontAwesomeIcon\n icon={dhSquareFilled}\n mask={dhGearFilled}\n transform=\"shrink-2 down-5 right-7\"\n />\n <FontAwesomeIcon\n icon={dhRemoveSquareFilled}\n className=\"text-primary\"\n transform=\"shrink-4 down-5 right-7\"\n />\n </>\n );\n }\n\n return (\n <div className=\"cross-column-container\">\n <SearchInput\n className=\"cross-column-search\"\n placeholder=\"Search Data...\"\n value={value}\n onChange={this.handleSearchValueChange}\n ref={this.searchField}\n />\n <button\n type=\"button\"\n className=\"btn btn-link btn-link-icon px-2\"\n onClick={() => {\n if (isConfigureColumnsShown) {\n this.setState({ isConfigureColumnsShown: false });\n } else {\n this.setState({ isConfigureColumnsShown: true });\n }\n }}\n >\n <div className=\"fa-layers\">{icon}</div>\n <Tooltip>Configure Columns</Tooltip>\n <Popper\n isShown={isConfigureColumnsShown}\n className=\"cross-column-popper\"\n onExited={() => {\n this.setState({ isConfigureColumnsShown: false });\n }}\n closeOnBlur\n interactive\n >\n <div className=\"cross-column-popup\">\n Searched Columns\n <div className=\"cross-column-scroll\">\n {columns.map(column => (\n <React.Fragment key={column.name}>\n <Checkbox\n className=\"cross-column-checkbox\"\n checked={\n invertSelection\n ? !selectedColumns.includes(column.name)\n : selectedColumns.includes(column.name)\n }\n onChange={() => this.toggleColumn(column.name)}\n >\n {column.name}\n </Checkbox>\n\n {column.type.substring(column.type.lastIndexOf('.') + 1)}\n </React.Fragment>\n ))}\n </div>\n <div className=\"cross-column-button-bar\">\n <button\n type=\"button\"\n className=\"btn btn-link\"\n onClick={this.selectAll}\n >\n Select All\n </button>\n <button\n type=\"button\"\n className=\"btn btn-link\"\n onClick={this.clear}\n >\n Clear\n </button>\n <button\n type=\"button\"\n className=\"btn btn-link\"\n onClick={this.selectNumbers}\n >\n Numbers Only\n </button>\n </div>\n {hasNoColumnsSelected && (\n <p className=\"text-danger\">\n <FontAwesomeIcon icon={dhWarningCircleFilled} /> Select at\n least one column to search.\n </p>\n )}\n </div>\n </Popper>\n </button>\n </div>\n );\n }\n}\n\nCrossColumnSearch.propTypes = {\n value: PropTypes.string.isRequired,\n selectedColumns: PropTypes.arrayOf(PropTypes.string).isRequired,\n invertSelection: PropTypes.bool.isRequired,\n onChange: PropTypes.func.isRequired,\n columns: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n })\n ).isRequired,\n};\n\nexport default CrossColumnSearch;\n"],"file":"CrossColumnSearch.js"}
|
package/dist/IrisGrid.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGrid.d.ts","sourceRoot":"","sources":["../src/IrisGrid.jsx"],"names":[],"mappings":"AAiHA;IACE,2BAAyB;IAEzB,2BAAyB;IAEzB,mCAAiC;IAEjC,mEAOC;IAED,wBAiQC;IA0vCD,yEAOC;IAED,2FA0BC;IAED,iCAEC;IAED,4CAEC;IAED,iDAeC;
|
|
1
|
+
{"version":3,"file":"IrisGrid.d.ts","sourceRoot":"","sources":["../src/IrisGrid.jsx"],"names":[],"mappings":"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"}
|
package/dist/IrisGrid.js
CHANGED
|
@@ -1956,9 +1956,9 @@ export class IrisGrid extends Component {
|
|
|
1956
1956
|
selectDistinctColumns
|
|
1957
1957
|
} = this.state;
|
|
1958
1958
|
var {
|
|
1959
|
-
columns
|
|
1960
|
-
customColumns: oldCustomColumns
|
|
1959
|
+
columns
|
|
1961
1960
|
} = model;
|
|
1961
|
+
var oldCustomColumns = model.customColumns.map(customColumn => "".concat(customColumn));
|
|
1962
1962
|
var removedColumnNames = IrisGridUtils.getRemovedCustomColumnNames(oldCustomColumns, customColumns);
|
|
1963
1963
|
|
|
1964
1964
|
if (removedColumnNames.length > 0) {
|