Skip to content

Commit a907772

Browse files
committed
Merge branch 'master' into kimi/update/button-state
2 parents a249136 + 0d380db commit a907772

File tree

2 files changed

+40
-29
lines changed

2 files changed

+40
-29
lines changed

src/Lumi/Components/Table.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ exports.dataSize = function(data) {
1010
exports.getMouseEventPositionWithOffset = function(domNode, e) {
1111
var bounds = domNode.getBoundingClientRect();
1212
return {
13-
x: e.pageX + domNode.scrollLeft - bounds.left,
14-
y: e.pageY + domNode.scrollTop - bounds.top
13+
x: e.pageX - bounds.left,
14+
y: e.pageY - bounds.top
1515
};
1616
};
1717

src/Lumi/Components/Table.purs

Lines changed: 38 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -262,24 +262,8 @@ table = make component
262262
then self.state.columns
263263
else self.props.columns
264264
in
265-
renderLumiTable \tableRef ->
266-
[ if not self.state.showMenu
267-
then empty
268-
else guard (self.props.dropdownMenu) $ renderFilterDropdown
269-
{ close: closeMenu self
270-
, reorderItems: setColumnSort self <<< map \{ name, hidden } ->
271-
{ name: ColumnName name
272-
, hidden
273-
}
274-
, items: columns <#> \{ name, label, filterLabel, hidden } ->
275-
{ name: un ColumnName name
276-
, label
277-
, filterLabel
278-
, hidden
279-
}
280-
, style: R.css self.state.menuStyle
281-
}
282-
, element scrollObserver
265+
renderLumiTable self columns \tableRef ->
266+
[ element scrollObserver
283267
{ node: tableRef
284268
, render: \{ hasScrolledY, hasScrolledX } ->
285269
R.table
@@ -426,14 +410,34 @@ table = make component
426410
]
427411
}
428412

429-
renderLumiTable renderChildren =
430-
selectorRef (QuerySelector "lumi-table") \maybeTableRef ->
431-
element (R.unsafeCreateDOMComponent "lumi-table")
432-
{ children:
433-
case maybeTableRef of
434-
Nothing -> []
435-
Just tableRef -> renderChildren tableRef :: Array JSX
436-
}
413+
renderLumiTable self columns renderChildren =
414+
element (R.unsafeCreateDOMComponent "lumi-table")
415+
{ children:
416+
[ if not self.state.showMenu
417+
then empty
418+
else guard (self.props.dropdownMenu) $ renderFilterDropdown
419+
{ close: closeMenu self
420+
, reorderItems: setColumnSort self <<< map \{ name, hidden } ->
421+
{ name: ColumnName name
422+
, hidden
423+
}
424+
, items: columns <#> \{ name, label, filterLabel, hidden } ->
425+
{ name: un ColumnName name
426+
, label
427+
, filterLabel
428+
, hidden
429+
}
430+
, style: R.css self.state.menuStyle
431+
}
432+
, selectorRef (QuerySelector "lumi-table-inner") \maybeTableRef ->
433+
element (R.unsafeCreateDOMComponent "lumi-table-inner")
434+
{ children:
435+
case maybeTableRef of
436+
Nothing -> []
437+
Just tableRef -> renderChildren tableRef
438+
}
439+
]
440+
}
437441

438442
renderFilterDropdown { close, reorderItems, items, style } =
439443
selectorRef (QuerySelector "lumi-filter-dropdown") \maybeMenuRef ->
@@ -609,11 +613,18 @@ styles :: JSS
609613
styles = jss
610614
{ "@global":
611615
{ "lumi-table":
616+
{ width: "100%"
617+
, maxHeight: "100%"
618+
, display: "flex"
619+
, flexFlow: "column"
620+
, position: "relative"
621+
}
622+
623+
, "lumi-table-inner":
612624
{ width: "100%"
613625
, maxHeight: "100%"
614626
, overflow: "auto"
615627
, backgroundColor: cssStringHSLA colors.white
616-
, position: "relative"
617628
, display: "block"
618629
, whiteSpace: "nowrap"
619630

0 commit comments

Comments
 (0)