slick-table 1.1.0 → 1.1.2
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/index.cjs.js +65 -65
- package/dist/index.es.js +1331 -1323
- package/dist/types/shared/lib/slickgrid/lib/sorting/ColumnSorter.d.ts +1 -0
- package/dist/types/shared/lib/slickgrid/lib/sorting/ColumnSorter.d.ts.map +1 -1
- package/dist/types/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.d.ts +1 -1
- package/dist/types/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.d.ts.map +1 -1
- package/dist/types/shared/lib/slickgrid/ui/SlickgridTable/model/types/Props.d.ts +2 -1
- package/dist/types/shared/lib/slickgrid/ui/SlickgridTable/model/types/Props.d.ts.map +1 -1
- package/dist/types/shared/lib/slickgrid/ui/SlickgridTable/ui/SlickgridTable.d.ts.map +1 -1
- package/dist/types/shared/lib/sorting/Sort.d.ts +1 -0
- package/dist/types/shared/lib/sorting/Sort.d.ts.map +1 -1
- package/dist/types/shared/model/enums/ESortType.d.ts +3 -1
- package/dist/types/shared/model/enums/ESortType.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/shared/lib/slickgrid/lib/sorting/ColumnSorter.ts +3 -0
- package/src/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.ts +5 -0
- package/src/shared/lib/slickgrid/ui/SlickgridTable/model/types/Props.ts +2 -0
- package/src/shared/lib/slickgrid/ui/SlickgridTable/ui/SlickgridTable.tsx +2 -0
- package/src/shared/lib/sorting/Sort.ts +6 -0
- package/src/shared/model/enums/ESortType.ts +2 -0
|
@@ -6,6 +6,7 @@ export declare class ColumnSorter implements IColumnSorter {
|
|
|
6
6
|
emptyValue: string;
|
|
7
7
|
dates(a: string, b: string): number;
|
|
8
8
|
numbers(a?: string | number | null, b?: string | number | null): number;
|
|
9
|
+
stringsNumeric(a?: string | null, b?: string | null): number;
|
|
9
10
|
strings(a?: string, b?: string): number;
|
|
10
11
|
numbersWithSymbols(a?: string, b?: string): number;
|
|
11
12
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnSorter.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/lib/slickgrid/lib/sorting/ColumnSorter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,eAAe,EACf,gBAAgB,EAEhB,cAAc,EAEd,MAAM,WAAW,CAAC;AAInB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAW,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE1D,qBAAa,YAAa,YAAW,aAAa;IACjD,SAAS,CAAC,IAAI
|
|
1
|
+
{"version":3,"file":"ColumnSorter.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/lib/slickgrid/lib/sorting/ColumnSorter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,eAAe,EACf,gBAAgB,EAEhB,cAAc,EAEd,MAAM,WAAW,CAAC;AAInB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAW,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE1D,qBAAa,YAAa,YAAW,aAAa;IACjD,SAAS,CAAC,IAAI;;;;;;;MAAQ;IACtB,OAAO,CAAC,aAAa,CAAgD;IAE9D,eAAe,CAAC,OAAO,EAAE,MAAM,IAMpC,IAAI,cAAc,CAAC,gBAAgB,GAAG,eAAe,CAAC,EACtD,MAAM,gBAAgB,GAAG,eAAe,KACtC,IAAI;IA0ER,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM;IAIrE,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IA6B/C,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM;CAoBjE;AAED,eAAO,MAAM,YAAY,cAAqB,CAAC;AAE/C,UAAU,aAAa;IACtB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;CACzC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Handler, OnAddNewRowEventArgs, OnCellChangeEventArgs } from 'slickgrid';
|
|
2
2
|
import { Props } from '../../model';
|
|
3
|
-
export declare function useGrid({ SlickDataView, applyCellCssStyles, assignIds, columnSorter, columns, getItemMetadata, groups, idPropertyName, items, onAddNewRow, onBeforeEditCell, onCellChange, onClick, onDblClick, onHeaderMenuCommand, onRowCountChanged, options, table, }: Props & {
|
|
3
|
+
export declare function useGrid({ SlickDataView, applyCellCssStyles, assignIds, columnSorter, columns, getItemMetadata, groups, idPropertyName, items, onAddNewRow, onBeforeEditCell, onCellChange, onClick, onDblClick, onHeaderMenuCommand, onRowCountChanged, onSelectedRowsChanged, options, table, }: Props & {
|
|
4
4
|
onAddNewRow: Handler<OnAddNewRowEventArgs>;
|
|
5
5
|
onCellChange: Handler<OnCellChangeEventArgs>;
|
|
6
6
|
}): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGrid.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.ts"],"names":[],"mappings":"AACA,OAAO,EACN,OAAO,EACP,oBAAoB,EACpB,qBAAqB,EAOrB,MAAM,WAAW,CAAC;AAWnB,OAAO,EAAE,KAAK,EAAkB,MAAM,aAAa,CAAC;AAEpD,wBAAgB,OAAO,CAAC,EACvB,aAAiC,EACjC,kBAAkB,EAClB,SAAiB,EACjB,YAAqB,EACrB,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAqB,EACrB,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,UAAU,EACV,mBAAmB,EACnB,iBAAkC,EAClC,OAAY,EACZ,KAAK,GACL,EAAE,KAAK,GAAG;IACV,WAAW,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC3C,YAAY,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAC7C,
|
|
1
|
+
{"version":3,"file":"useGrid.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.ts"],"names":[],"mappings":"AACA,OAAO,EACN,OAAO,EACP,oBAAoB,EACpB,qBAAqB,EAOrB,MAAM,WAAW,CAAC;AAWnB,OAAO,EAAE,KAAK,EAAkB,MAAM,aAAa,CAAC;AAEpD,wBAAgB,OAAO,CAAC,EACvB,aAAiC,EACjC,kBAAkB,EAClB,SAAiB,EACjB,YAAqB,EACrB,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAqB,EACrB,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,UAAU,EACV,mBAAmB,EACnB,iBAAkC,EAClC,qBAAqB,EACrB,OAAY,EACZ,KAAK,GACL,EAAE,KAAK,GAAG;IACV,WAAW,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC3C,YAAY,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAC7C,QAmGA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GridOption, Grouping, Handler, ItemMetadata, MenuCommandItemCallbackArgs, OnAddNewRowEventArgs, OnBeforeEditCellEventArgs, OnCellChangeEventArgs, OnClickEventArgs, OnDblClickEventArgs, OnRowCountChangedEventArgs, SlickDataView, SlickGrid } from 'slickgrid';
|
|
1
|
+
import { GridOption, Grouping, Handler, ItemMetadata, MenuCommandItemCallbackArgs, OnAddNewRowEventArgs, OnBeforeEditCellEventArgs, OnCellChangeEventArgs, OnClickEventArgs, OnDblClickEventArgs, OnRowCountChangedEventArgs, OnSelectedRowsChangedEventArgs, SlickDataView, SlickGrid } from 'slickgrid';
|
|
2
2
|
import { IColumn, ISlickTable } from '../../../../../../model/types';
|
|
3
3
|
import { ColumnSorter } from '../../../../lib';
|
|
4
4
|
export interface Props {
|
|
@@ -20,6 +20,7 @@ export interface Props {
|
|
|
20
20
|
onDblClick?: Handler<OnDblClickEventArgs>;
|
|
21
21
|
onHeaderMenuCommand?: Handler<MenuCommandItemCallbackArgs>;
|
|
22
22
|
onRowCountChanged?: (table: ISlickTable) => Handler<OnRowCountChangedEventArgs>;
|
|
23
|
+
onSelectedRowsChanged?: Handler<OnSelectedRowsChangedEventArgs>;
|
|
23
24
|
options?: GridOption;
|
|
24
25
|
table: ISlickTable;
|
|
25
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Props.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/shared/lib/slickgrid/ui/SlickgridTable/model/types/Props.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EACV,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,0BAA0B,EAC1B,aAAa,EACb,SAAS,EACT,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,WAAW,KAAK;IACrB,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IAC/C,yEAAyE;IACzE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,eAAe,CAAC,EAAE,CACjB,QAAQ,EAAE,aAAa,KACnB,CAAC,GAAG,EAAE,MAAM,KAAK,YAAY,GAAG,IAAI,CAAC;IAC1C,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;IACpB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC5C,gBAAgB,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC1C,mBAAmB,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC3D,iBAAiB,CAAC,EAAE,CACnB,KAAK,EAAE,WAAW,KACd,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,KAAK,EAAE,WAAW,CAAC;CACnB"}
|
|
1
|
+
{"version":3,"file":"Props.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/shared/lib/slickgrid/ui/SlickgridTable/model/types/Props.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EACV,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,0BAA0B,EAC1B,8BAA8B,EAC9B,aAAa,EACb,SAAS,EACT,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,WAAW,KAAK;IACrB,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IAC/C,yEAAyE;IACzE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,eAAe,CAAC,EAAE,CACjB,QAAQ,EAAE,aAAa,KACnB,CAAC,GAAG,EAAE,MAAM,KAAK,YAAY,GAAG,IAAI,CAAC;IAC1C,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;IACpB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC5C,gBAAgB,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC1C,mBAAmB,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC3D,iBAAiB,CAAC,EAAE,CACnB,KAAK,EAAE,WAAW,KACd,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACzC,qBAAqB,CAAC,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAChE,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,KAAK,EAAE,WAAW,CAAC;CACnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SlickgridTable.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shared/lib/slickgrid/ui/SlickgridTable/ui/SlickgridTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAS3B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"SlickgridTable.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shared/lib/slickgrid/ui/SlickgridTable/ui/SlickgridTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAS3B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,KAAK,CA+CpC,CAAC"}
|
|
@@ -2,6 +2,7 @@ declare class Sort implements ISort {
|
|
|
2
2
|
emptyValue: string;
|
|
3
3
|
dates(a: string, b: string): number;
|
|
4
4
|
numbers(a?: string | number | null, b?: string | number | null): number;
|
|
5
|
+
stringsNumeric(a?: string | null, b?: string | null): number;
|
|
5
6
|
strings(a?: string, b?: string): number;
|
|
6
7
|
numbersWithSymbols(a?: string, b?: string): number;
|
|
7
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sort.d.ts","sourceRoot":"","sources":["../../../../../src/shared/lib/sorting/Sort.ts"],"names":[],"mappings":"AAEA,cAAM,IAAK,YAAW,KAAK;IAC1B,UAAU,SAAc;IACxB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAKnC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM;IAGvE,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAKvC,kBAAkB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;CAKlD;AAED,eAAO,MAAM,IAAI,MAAa,CAAC;AAE/B,UAAU,KAAK;IACd,OAAO,IAAI,MAAM,CAAC;IAClB,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;IACxE,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC"}
|
|
1
|
+
{"version":3,"file":"Sort.d.ts","sourceRoot":"","sources":["../../../../../src/shared/lib/sorting/Sort.ts"],"names":[],"mappings":"AAEA,cAAM,IAAK,YAAW,KAAK;IAC1B,UAAU,SAAc;IACxB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAKnC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM;IAGvE,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM;IAM5D,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAKvC,kBAAkB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;CAKlD;AAED,eAAO,MAAM,IAAI,MAAa,CAAC;AAE/B,UAAU,KAAK;IACd,OAAO,IAAI,MAAM,CAAC;IAClB,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;IACxE,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC"}
|
|
@@ -10,7 +10,9 @@ export declare enum ESortType {
|
|
|
10
10
|
NUMBER = 2,
|
|
11
11
|
/** sort as number, take formatter into account */
|
|
12
12
|
NUMBER_FORMATTED = 3,
|
|
13
|
+
/** treats numeric substrings as actual numbers, rather than just characters */
|
|
14
|
+
TEXT_NUMERIC = 4,
|
|
13
15
|
/** sort as text */
|
|
14
|
-
TEXT =
|
|
16
|
+
TEXT = 5
|
|
15
17
|
}
|
|
16
18
|
//# sourceMappingURL=ESortType.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ESortType.d.ts","sourceRoot":"","sources":["../../../../../src/shared/model/enums/ESortType.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,oBAAY,SAAS;IACpB,mBAAmB;IACnB,IAAI,IAAI;IACR,yDAAyD;IACzD,MAAM,IAAA;IACN,kDAAkD;IAClD,gBAAgB,IAAA;IAChB,mBAAmB;IACnB,IAAI,IAAA;CACJ"}
|
|
1
|
+
{"version":3,"file":"ESortType.d.ts","sourceRoot":"","sources":["../../../../../src/shared/model/enums/ESortType.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,oBAAY,SAAS;IACpB,mBAAmB;IACnB,IAAI,IAAI;IACR,yDAAyD;IACzD,MAAM,IAAA;IACN,kDAAkD;IAClD,gBAAgB,IAAA;IAChB,+EAA+E;IAC/E,YAAY,IAAA;IACZ,mBAAmB;IACnB,IAAI,IAAA;CACJ"}
|
package/package.json
CHANGED
|
@@ -140,6 +140,9 @@ export class ColumnSorter implements IColumnSorter {
|
|
|
140
140
|
case ESortType.NUMBER_FORMATTED: {
|
|
141
141
|
return this.sort.numbers(a, b) * sign;
|
|
142
142
|
}
|
|
143
|
+
case ESortType.TEXT_NUMERIC: {
|
|
144
|
+
return this.sort.stringsNumeric(a, b) * sign;
|
|
145
|
+
}
|
|
143
146
|
case ESortType.TEXT: {
|
|
144
147
|
return this.sort.strings(a, b) * sign;
|
|
145
148
|
}
|
|
@@ -39,6 +39,7 @@ export function useGrid({
|
|
|
39
39
|
onDblClick,
|
|
40
40
|
onHeaderMenuCommand,
|
|
41
41
|
onRowCountChanged = updateRowCount,
|
|
42
|
+
onSelectedRowsChanged,
|
|
42
43
|
options = {},
|
|
43
44
|
table,
|
|
44
45
|
}: Props & {
|
|
@@ -73,6 +74,8 @@ export function useGrid({
|
|
|
73
74
|
dataView.onRowsChanged.subscribe(onRowsChanged(grid));
|
|
74
75
|
grid.onAddNewRow.subscribe(onAddNewRow);
|
|
75
76
|
grid.onCellChange.subscribe(onCellChange);
|
|
77
|
+
onSelectedRowsChanged &&
|
|
78
|
+
grid.onSelectedRowsChanged.subscribe(onSelectedRowsChanged);
|
|
76
79
|
onBeforeEditCell && grid.onBeforeEditCell.subscribe(onBeforeEditCell);
|
|
77
80
|
onClick && grid.onClick.subscribe(onClick);
|
|
78
81
|
onDblClick && grid.onDblClick.subscribe(onDblClick);
|
|
@@ -103,6 +106,8 @@ export function useGrid({
|
|
|
103
106
|
headerMenuPlugin.onCommand.unsubscribe(onHeaderMenuCommand);
|
|
104
107
|
grid.onAddNewRow.unsubscribe(onAddNewRow);
|
|
105
108
|
grid.onCellChange.unsubscribe(onCellChange);
|
|
109
|
+
onSelectedRowsChanged &&
|
|
110
|
+
grid.onSelectedRowsChanged.subscribe(onSelectedRowsChanged);
|
|
106
111
|
onBeforeEditCell && grid.onBeforeEditCell.unsubscribe(onBeforeEditCell);
|
|
107
112
|
onClick && grid.onClick.unsubscribe(onClick);
|
|
108
113
|
onDblClick && grid.onDblClick.unsubscribe(onDblClick);
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
OnClickEventArgs,
|
|
11
11
|
OnDblClickEventArgs,
|
|
12
12
|
OnRowCountChangedEventArgs,
|
|
13
|
+
OnSelectedRowsChangedEventArgs,
|
|
13
14
|
SlickDataView,
|
|
14
15
|
SlickGrid,
|
|
15
16
|
} from "slickgrid";
|
|
@@ -41,6 +42,7 @@ export interface Props {
|
|
|
41
42
|
onRowCountChanged?: (
|
|
42
43
|
table: ISlickTable,
|
|
43
44
|
) => Handler<OnRowCountChangedEventArgs>;
|
|
45
|
+
onSelectedRowsChanged?: Handler<OnSelectedRowsChangedEventArgs>;
|
|
44
46
|
options?: GridOption;
|
|
45
47
|
table: ISlickTable;
|
|
46
48
|
}
|
|
@@ -26,6 +26,7 @@ export const SlickgridTable: FC<Props> = ({
|
|
|
26
26
|
onDblClick,
|
|
27
27
|
onHeaderMenuCommand,
|
|
28
28
|
onRowCountChanged,
|
|
29
|
+
onSelectedRowsChanged,
|
|
29
30
|
options,
|
|
30
31
|
table,
|
|
31
32
|
}) => {
|
|
@@ -46,6 +47,7 @@ export const SlickgridTable: FC<Props> = ({
|
|
|
46
47
|
onDblClick,
|
|
47
48
|
onHeaderMenuCommand,
|
|
48
49
|
onRowCountChanged,
|
|
50
|
+
onSelectedRowsChanged,
|
|
49
51
|
options,
|
|
50
52
|
table,
|
|
51
53
|
});
|
|
@@ -10,6 +10,12 @@ class Sort implements ISort {
|
|
|
10
10
|
numbers(a?: string | number | null, b?: string | number | null): number {
|
|
11
11
|
return Number(a || 0) - Number(b || 0);
|
|
12
12
|
}
|
|
13
|
+
stringsNumeric(a?: string | null, b?: string | null): number {
|
|
14
|
+
if (!a && !b) return 0;
|
|
15
|
+
if (!a) return -1;
|
|
16
|
+
if (!b) return 1;
|
|
17
|
+
return a.localeCompare(b, undefined, { numeric: true });
|
|
18
|
+
}
|
|
13
19
|
strings(a?: string, b?: string): number {
|
|
14
20
|
if ((a || "").toLowerCase() > (b || "").toLowerCase()) return 1;
|
|
15
21
|
if ((a || "").toLowerCase() < (b || "").toLowerCase()) return -1;
|