m2mui-datasheet 3.0.0 → 3.0.1-alpha-1ede6dc.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.
Files changed (123) hide show
  1. package/.npmrc +1 -0
  2. package/{dist/types/Cell.d.ts → Cell.d.ts} +1 -1
  3. package/Cell.js +83 -0
  4. package/Cell.js.map +1 -0
  5. package/{dist/types/Controller.d.ts → Controller.d.ts} +0 -0
  6. package/Controller.js +50 -0
  7. package/Controller.js.map +1 -0
  8. package/{dist/types/CustomCell.d.ts → CustomCell.d.ts} +0 -0
  9. package/{dist/esm/CustomCell.js → CustomCell.js} +12 -7
  10. package/CustomCell.js.map +1 -0
  11. package/DataSheet.d.ts +31 -0
  12. package/{dist/esm/DataSheet.js → DataSheet.js} +11 -41
  13. package/DataSheet.js.map +1 -0
  14. package/{dist/types/DataSheetCheckbox.d.ts → DataSheetCheckbox.d.ts} +0 -0
  15. package/DataSheetCheckbox.js +40 -0
  16. package/DataSheetCheckbox.js.map +1 -0
  17. package/{dist/types/DataSheetInput.d.ts → DataSheetInput.d.ts} +0 -0
  18. package/DataSheetInput.js +23 -0
  19. package/DataSheetInput.js.map +1 -0
  20. package/{dist/types/DataSheetSelect.d.ts → DataSheetSelect.d.ts} +0 -0
  21. package/DataSheetSelect.js +20 -0
  22. package/DataSheetSelect.js.map +1 -0
  23. package/InnerElement.d.ts +16 -0
  24. package/InnerElement.js +99 -0
  25. package/InnerElement.js.map +1 -0
  26. package/README.md +1 -80
  27. package/cjs/Cell.js +92 -0
  28. package/cjs/Cell.js.map +1 -0
  29. package/cjs/Controller.js +57 -0
  30. package/cjs/Controller.js.map +1 -0
  31. package/{dist/cjs → cjs}/CustomCell.js +12 -18
  32. package/cjs/CustomCell.js.map +1 -0
  33. package/{dist/cjs → cjs}/DataSheet.js +45 -58
  34. package/cjs/DataSheet.js.map +1 -0
  35. package/cjs/DataSheetCheckbox.js +42 -0
  36. package/cjs/DataSheetCheckbox.js.map +1 -0
  37. package/cjs/DataSheetInput.js +28 -0
  38. package/cjs/DataSheetInput.js.map +1 -0
  39. package/cjs/DataSheetSelect.js +25 -0
  40. package/cjs/DataSheetSelect.js.map +1 -0
  41. package/cjs/InnerElement.js +101 -0
  42. package/cjs/InnerElement.js.map +1 -0
  43. package/{dist/cjs → cjs}/index.js +0 -6
  44. package/cjs/index.js.map +1 -0
  45. package/{dist/cjs → cjs}/useOnClickOutside.js +3 -11
  46. package/cjs/useOnClickOutside.js.map +1 -0
  47. package/esm/Cell.js +83 -0
  48. package/esm/Cell.js.map +1 -0
  49. package/esm/Controller.js +50 -0
  50. package/esm/Controller.js.map +1 -0
  51. package/esm/CustomCell.js +119 -0
  52. package/esm/CustomCell.js.map +1 -0
  53. package/esm/DataSheet.js +587 -0
  54. package/esm/DataSheet.js.map +1 -0
  55. package/esm/DataSheetCheckbox.js +40 -0
  56. package/esm/DataSheetCheckbox.js.map +1 -0
  57. package/esm/DataSheetInput.js +23 -0
  58. package/esm/DataSheetInput.js.map +1 -0
  59. package/esm/DataSheetSelect.js +20 -0
  60. package/esm/DataSheetSelect.js.map +1 -0
  61. package/esm/InnerElement.js +99 -0
  62. package/esm/InnerElement.js.map +1 -0
  63. package/{dist/esm → esm}/index.js +0 -0
  64. package/esm/index.js.map +1 -0
  65. package/{dist/esm → esm}/useOnClickOutside.js +3 -8
  66. package/esm/useOnClickOutside.js.map +1 -0
  67. package/{dist/types/index.d.ts → index.d.ts} +0 -0
  68. package/index.js +4 -0
  69. package/index.js.map +1 -0
  70. package/package.json +80 -111
  71. package/types/Cell.d.ts +10 -0
  72. package/types/Controller.d.ts +3 -0
  73. package/types/CustomCell.d.ts +3 -0
  74. package/types/DataSheet.d.ts +31 -0
  75. package/types/DataSheetCheckbox.d.ts +2 -0
  76. package/types/DataSheetInput.d.ts +2 -0
  77. package/types/DataSheetSelect.d.ts +2 -0
  78. package/types/InnerElement.d.ts +16 -0
  79. package/types/index.d.ts +3 -0
  80. package/{dist/types → types}/useOnClickOutside.d.ts +0 -0
  81. package/useOnClickOutside.d.ts +1 -0
  82. package/useOnClickOutside.js +21 -0
  83. package/useOnClickOutside.js.map +1 -0
  84. package/CHANGELOG.md +0 -91
  85. package/dist/cjs/Cell.js +0 -105
  86. package/dist/cjs/Cell.js.map +0 -1
  87. package/dist/cjs/Controller.js +0 -68
  88. package/dist/cjs/Controller.js.map +0 -1
  89. package/dist/cjs/CustomCell.js.map +0 -1
  90. package/dist/cjs/DataSheet.js.map +0 -1
  91. package/dist/cjs/DataSheetCheckbox.js +0 -49
  92. package/dist/cjs/DataSheetCheckbox.js.map +0 -1
  93. package/dist/cjs/DataSheetInput.js +0 -33
  94. package/dist/cjs/DataSheetInput.js.map +0 -1
  95. package/dist/cjs/DataSheetSelect.js +0 -33
  96. package/dist/cjs/DataSheetSelect.js.map +0 -1
  97. package/dist/cjs/DataSheetText.js +0 -34
  98. package/dist/cjs/DataSheetText.js.map +0 -1
  99. package/dist/cjs/InnerElement.js +0 -114
  100. package/dist/cjs/InnerElement.js.map +0 -1
  101. package/dist/cjs/index.js.map +0 -1
  102. package/dist/cjs/useOnClickOutside.js.map +0 -1
  103. package/dist/esm/Cell.js +0 -93
  104. package/dist/esm/Cell.js.map +0 -1
  105. package/dist/esm/Controller.js +0 -56
  106. package/dist/esm/Controller.js.map +0 -1
  107. package/dist/esm/CustomCell.js.map +0 -1
  108. package/dist/esm/DataSheet.js.map +0 -1
  109. package/dist/esm/DataSheetCheckbox.js +0 -40
  110. package/dist/esm/DataSheetCheckbox.js.map +0 -1
  111. package/dist/esm/DataSheetInput.js +0 -24
  112. package/dist/esm/DataSheetInput.js.map +0 -1
  113. package/dist/esm/DataSheetSelect.js +0 -24
  114. package/dist/esm/DataSheetSelect.js.map +0 -1
  115. package/dist/esm/DataSheetText.js +0 -25
  116. package/dist/esm/DataSheetText.js.map +0 -1
  117. package/dist/esm/InnerElement.js +0 -106
  118. package/dist/esm/InnerElement.js.map +0 -1
  119. package/dist/esm/index.js.map +0 -1
  120. package/dist/esm/useOnClickOutside.js.map +0 -1
  121. package/dist/types/DataSheet.d.ts +0 -30
  122. package/dist/types/DataSheetText.d.ts +0 -4
  123. package/dist/types/InnerElement.d.ts +0 -8
package/.npmrc ADDED
@@ -0,0 +1 @@
1
+ //registry.npmjs.org/:_authToken=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
@@ -3,7 +3,7 @@ export interface CellProps extends React.DetailedHTMLProps<React.TdHTMLAttribute
3
3
  readonly?: boolean;
4
4
  selected?: boolean;
5
5
  invalid?: boolean | string;
6
- value?: any;
6
+ value?: unknown;
7
7
  }
8
8
  export declare const Cell: React.FC<CellProps>;
9
9
  export declare const ColumnHeadCell: React.FC<CellProps>;
package/Cell.js ADDED
@@ -0,0 +1,83 @@
1
+ var _excluded = ["readonly", "selected", "invalid", "title", "value", "style"];
2
+ function _objectDestructuringEmpty(obj) { if (obj == null) throw new TypeError("Cannot destructure " + obj); }
3
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
6
+ import { css } from "@emotion/react";
7
+ import React from "react";
8
+ import { jsx as ___EmotionJSX } from "@emotion/react";
9
+ var _ref4 = process.env.NODE_ENV === "production" ? {
10
+ name: "twi5ir",
11
+ styles: "position:relative;box-sizing:border-box;height:24px;padding:0px;overflow:scroll;text-align:right;white-space:nowrap;vertical-align:middle;user-select:none;background-color:unset;background-color:white;border:1px solid #e1e3e3;-ms-overflow-style:none;scrollbar-width:none;&::-webkit-scrollbar{display:none;}"
12
+ } : {
13
+ name: "pvoqgl-Cell",
14
+ styles: "position:relative;box-sizing:border-box;height:24px;padding:0px;overflow:scroll;text-align:right;white-space:nowrap;vertical-align:middle;user-select:none;background-color:unset;background-color:white;border:1px solid #e1e3e3;-ms-overflow-style:none;scrollbar-width:none;&::-webkit-scrollbar{display:none;};label:Cell;",
15
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9DZWxsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpRGdCIiwiZmlsZSI6Ii4uLy4uL3NyYy9DZWxsLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuZXhwb3J0IGludGVyZmFjZSBDZWxsUHJvcHNcbiAgZXh0ZW5kcyBSZWFjdC5EZXRhaWxlZEhUTUxQcm9wczxcbiAgICBSZWFjdC5UZEhUTUxBdHRyaWJ1dGVzPEhUTUxUYWJsZURhdGFDZWxsRWxlbWVudD4sXG4gICAgSFRNTFRhYmxlRGF0YUNlbGxFbGVtZW50XG4gID4ge1xuICByZWFkb25seT86IGJvb2xlYW47XG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbiAgaW52YWxpZD86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIHZhbHVlPzogdW5rbm93bjtcbn1cblxuZXhwb3J0IGNvbnN0IENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAoe1xuICAgIHJlYWRvbmx5ID0gZmFsc2UsXG4gICAgc2VsZWN0ZWQgPSBmYWxzZSxcbiAgICBpbnZhbGlkID0gZmFsc2UsXG4gICAgdGl0bGUsXG4gICAgdmFsdWU6IF92YWx1ZSxcbiAgICBzdHlsZSA9IHt9LFxuICAgIC4uLnByb3BzXG4gIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGRhdGEtZWxlbWVudD1cImNlbGxcIlxuICAgICAgICB0aXRsZT17dHlwZW9mIGludmFsaWQgPT09IFwic3RyaW5nXCIgPyBpbnZhbGlkIDogdGl0bGV9XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgLi4uc3R5bGUsXG4gICAgICAgICAgY3Vyc29yOiB0eXBlb2YgaW52YWxpZCA9PT0gXCJzdHJpbmdcIiA/IFwiaGVscFwiIDogXCJjdXJzb3JcIixcbiAgICAgICAgICAuLi4oc2VsZWN0ZWRcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogYDFweCBkb3VibGUgIzIxODVkMGAsXG4gICAgICAgICAgICAgICAgYm94U2hhZG93OiBgaW5zZXQgMCAtMTAwcHggMCByZ2JhKDMzLCAxMzMsIDIwOCwgMC4xNSlgLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAuLi4oaW52YWxpZCAhPT0gZmFsc2VcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGByZ2JhKDIwOCwgMzMsIDMzLCAwLjMpYCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgICAgLi4uKHJlYWRvbmx5XG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBgI2Y4ZjlmYWAsXG4gICAgICAgICAgICAgICAgY29sb3I6IGAjNWY2MzY4YCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgIH19XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTNlMztcbiAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICBgfVxuICAgICAgLz5cbiAgICApO1xuICB9LFxuICAocHJldiwgbmV4dCkgPT5cbiAgICBwcmV2LnNlbGVjdGVkID09PSBuZXh0LnNlbGVjdGVkICYmXG4gICAgcHJldi52YWx1ZSA9PT0gbmV4dC52YWx1ZSAmJlxuICAgIG5leHQub25DbGljayA9PT0gcHJldi5vbkNsaWNrXG4pO1xuXG5leHBvcnQgY29uc3QgQ29sdW1uSGVhZENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAocHJvcHMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPENlbGxcbiAgICAgICAgey4uLnByb3BzfVxuICAgICAgICBkYXRhLXNlbGVjdGVkPXtwcm9wcy5zZWxlY3RlZH1cbiAgICAgICAgY3NzPXtbXG4gICAgICAgICAgY3NzYFxuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNWY2MzY4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuMnM7XG4gICAgICAgICAgYCxcbiAgICAgICAgICBwcm9wcy5zZWxlY3RlZFxuICAgICAgICAgICAgPyBjc3NgXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVmNjM2ODtcbiAgICAgICAgICAgICAgYFxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICBdfVxuICAgICAgLz5cbiAgICApO1xuICB9LFxuICAocHJldiwgbmV4dCkgPT5cbiAgICBwcmV2LnNlbGVjdGVkID09PSBuZXh0LnNlbGVjdGVkICYmXG4gICAgcHJldi52YWx1ZSA9PT0gbmV4dC52YWx1ZSAmJlxuICAgIG5leHQub25DbGljayA9PT0gcHJldi5vbkNsaWNrXG4pO1xuXG5leHBvcnQgY29uc3QgUm93SGVhZENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAoeyAuLi5wcm9wcyB9KSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxDb2x1bW5IZWFkQ2VsbFxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UgIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgYH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfSxcbiAgKHByZXYsIG5leHQpID0+XG4gICAgcHJldi5zZWxlY3RlZCA9PT0gbmV4dC5zZWxlY3RlZCAmJlxuICAgIHByZXYudmFsdWUgPT09IG5leHQudmFsdWUgJiZcbiAgICBuZXh0Lm9uQ2xpY2sgPT09IHByZXYub25DbGlja1xuKTtcbiJdfQ== */",
16
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
17
+ };
18
+ export var Cell = /*#__PURE__*/React.memo(_ref5 => {
19
+ var {
20
+ readonly = false,
21
+ selected = false,
22
+ invalid = false,
23
+ title,
24
+ style = {}
25
+ } = _ref5,
26
+ props = _objectWithoutPropertiesLoose(_ref5, _excluded);
27
+ return ___EmotionJSX("div", _extends({}, props, {
28
+ "data-element": "cell",
29
+ title: typeof invalid === "string" ? invalid : title,
30
+ style: _extends({}, style, {
31
+ cursor: typeof invalid === "string" ? "help" : "cursor"
32
+ }, selected ? {
33
+ border: "1px double #2185d0",
34
+ boxShadow: "inset 0 -100px 0 rgba(33, 133, 208, 0.15)"
35
+ } : {}, invalid !== false ? {
36
+ background: "rgba(208, 33, 33, 0.3)"
37
+ } : {}, readonly ? {
38
+ background: "#f8f9fa",
39
+ color: "#5f6368"
40
+ } : {}),
41
+ css: _ref4
42
+ }));
43
+ }, (prev, next) => prev.selected === next.selected && prev.value === next.value && next.onClick === prev.onClick);
44
+ var _ref2 = process.env.NODE_ENV === "production" ? {
45
+ name: "1ebetfj",
46
+ styles: "color:#f8f9fa;background-color:#5f6368"
47
+ } : {
48
+ name: "9j9bqx-ColumnHeadCell",
49
+ styles: "color:#f8f9fa;background-color:#5f6368;label:ColumnHeadCell;",
50
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9DZWxsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErRmlCIiwiZmlsZSI6Ii4uLy4uL3NyYy9DZWxsLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuZXhwb3J0IGludGVyZmFjZSBDZWxsUHJvcHNcbiAgZXh0ZW5kcyBSZWFjdC5EZXRhaWxlZEhUTUxQcm9wczxcbiAgICBSZWFjdC5UZEhUTUxBdHRyaWJ1dGVzPEhUTUxUYWJsZURhdGFDZWxsRWxlbWVudD4sXG4gICAgSFRNTFRhYmxlRGF0YUNlbGxFbGVtZW50XG4gID4ge1xuICByZWFkb25seT86IGJvb2xlYW47XG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbiAgaW52YWxpZD86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIHZhbHVlPzogdW5rbm93bjtcbn1cblxuZXhwb3J0IGNvbnN0IENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAoe1xuICAgIHJlYWRvbmx5ID0gZmFsc2UsXG4gICAgc2VsZWN0ZWQgPSBmYWxzZSxcbiAgICBpbnZhbGlkID0gZmFsc2UsXG4gICAgdGl0bGUsXG4gICAgdmFsdWU6IF92YWx1ZSxcbiAgICBzdHlsZSA9IHt9LFxuICAgIC4uLnByb3BzXG4gIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGRhdGEtZWxlbWVudD1cImNlbGxcIlxuICAgICAgICB0aXRsZT17dHlwZW9mIGludmFsaWQgPT09IFwic3RyaW5nXCIgPyBpbnZhbGlkIDogdGl0bGV9XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgLi4uc3R5bGUsXG4gICAgICAgICAgY3Vyc29yOiB0eXBlb2YgaW52YWxpZCA9PT0gXCJzdHJpbmdcIiA/IFwiaGVscFwiIDogXCJjdXJzb3JcIixcbiAgICAgICAgICAuLi4oc2VsZWN0ZWRcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogYDFweCBkb3VibGUgIzIxODVkMGAsXG4gICAgICAgICAgICAgICAgYm94U2hhZG93OiBgaW5zZXQgMCAtMTAwcHggMCByZ2JhKDMzLCAxMzMsIDIwOCwgMC4xNSlgLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAuLi4oaW52YWxpZCAhPT0gZmFsc2VcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGByZ2JhKDIwOCwgMzMsIDMzLCAwLjMpYCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgICAgLi4uKHJlYWRvbmx5XG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBgI2Y4ZjlmYWAsXG4gICAgICAgICAgICAgICAgY29sb3I6IGAjNWY2MzY4YCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgIH19XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTNlMztcbiAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICBgfVxuICAgICAgLz5cbiAgICApO1xuICB9LFxuICAocHJldiwgbmV4dCkgPT5cbiAgICBwcmV2LnNlbGVjdGVkID09PSBuZXh0LnNlbGVjdGVkICYmXG4gICAgcHJldi52YWx1ZSA9PT0gbmV4dC52YWx1ZSAmJlxuICAgIG5leHQub25DbGljayA9PT0gcHJldi5vbkNsaWNrXG4pO1xuXG5leHBvcnQgY29uc3QgQ29sdW1uSGVhZENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAocHJvcHMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPENlbGxcbiAgICAgICAgey4uLnByb3BzfVxuICAgICAgICBkYXRhLXNlbGVjdGVkPXtwcm9wcy5zZWxlY3RlZH1cbiAgICAgICAgY3NzPXtbXG4gICAgICAgICAgY3NzYFxuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNWY2MzY4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuMnM7XG4gICAgICAgICAgYCxcbiAgICAgICAgICBwcm9wcy5zZWxlY3RlZFxuICAgICAgICAgICAgPyBjc3NgXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVmNjM2ODtcbiAgICAgICAgICAgICAgYFxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICBdfVxuICAgICAgLz5cbiAgICApO1xuICB9LFxuICAocHJldiwgbmV4dCkgPT5cbiAgICBwcmV2LnNlbGVjdGVkID09PSBuZXh0LnNlbGVjdGVkICYmXG4gICAgcHJldi52YWx1ZSA9PT0gbmV4dC52YWx1ZSAmJlxuICAgIG5leHQub25DbGljayA9PT0gcHJldi5vbkNsaWNrXG4pO1xuXG5leHBvcnQgY29uc3QgUm93SGVhZENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAoeyAuLi5wcm9wcyB9KSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxDb2x1bW5IZWFkQ2VsbFxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UgIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgYH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfSxcbiAgKHByZXYsIG5leHQpID0+XG4gICAgcHJldi5zZWxlY3RlZCA9PT0gbmV4dC5zZWxlY3RlZCAmJlxuICAgIHByZXYudmFsdWUgPT09IG5leHQudmFsdWUgJiZcbiAgICBuZXh0Lm9uQ2xpY2sgPT09IHByZXYub25DbGlja1xuKTtcbiJdfQ== */",
51
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
52
+ };
53
+ var _ref3 = process.env.NODE_ENV === "production" ? {
54
+ name: "kkvqm1",
55
+ styles: "flex-shrink:0;font-size:10px;line-height:24px;color:#5f6368;text-align:center;cursor:pointer;background-color:#f8f9fa;transition:0.2s"
56
+ } : {
57
+ name: "17c7s5x-ColumnHeadCell",
58
+ styles: "flex-shrink:0;font-size:10px;line-height:24px;color:#5f6368;text-align:center;cursor:pointer;background-color:#f8f9fa;transition:0.2s;label:ColumnHeadCell;",
59
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9DZWxsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvRmEiLCJmaWxlIjoiLi4vLi4vc3JjL0NlbGwudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5leHBvcnQgaW50ZXJmYWNlIENlbGxQcm9wc1xuICBleHRlbmRzIFJlYWN0LkRldGFpbGVkSFRNTFByb3BzPFxuICAgIFJlYWN0LlRkSFRNTEF0dHJpYnV0ZXM8SFRNTFRhYmxlRGF0YUNlbGxFbGVtZW50PixcbiAgICBIVE1MVGFibGVEYXRhQ2VsbEVsZW1lbnRcbiAgPiB7XG4gIHJlYWRvbmx5PzogYm9vbGVhbjtcbiAgc2VsZWN0ZWQ/OiBib29sZWFuO1xuICBpbnZhbGlkPzogYm9vbGVhbiB8IHN0cmluZztcbiAgdmFsdWU/OiB1bmtub3duO1xufVxuXG5leHBvcnQgY29uc3QgQ2VsbDogUmVhY3QuRkM8Q2VsbFByb3BzPiA9IFJlYWN0Lm1lbW8oXG4gICh7XG4gICAgcmVhZG9ubHkgPSBmYWxzZSxcbiAgICBzZWxlY3RlZCA9IGZhbHNlLFxuICAgIGludmFsaWQgPSBmYWxzZSxcbiAgICB0aXRsZSxcbiAgICB2YWx1ZTogX3ZhbHVlLFxuICAgIHN0eWxlID0ge30sXG4gICAgLi4ucHJvcHNcbiAgfSkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIHsuLi5wcm9wc31cbiAgICAgICAgZGF0YS1lbGVtZW50PVwiY2VsbFwiXG4gICAgICAgIHRpdGxlPXt0eXBlb2YgaW52YWxpZCA9PT0gXCJzdHJpbmdcIiA/IGludmFsaWQgOiB0aXRsZX1cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAuLi5zdHlsZSxcbiAgICAgICAgICBjdXJzb3I6IHR5cGVvZiBpbnZhbGlkID09PSBcInN0cmluZ1wiID8gXCJoZWxwXCIgOiBcImN1cnNvclwiLFxuICAgICAgICAgIC4uLihzZWxlY3RlZFxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBgMXB4IGRvdWJsZSAjMjE4NWQwYCxcbiAgICAgICAgICAgICAgICBib3hTaGFkb3c6IGBpbnNldCAwIC0xMDBweCAwIHJnYmEoMzMsIDEzMywgMjA4LCAwLjE1KWAsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDoge30pLFxuICAgICAgICAgIC4uLihpbnZhbGlkICE9PSBmYWxzZVxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogYHJnYmEoMjA4LCAzMywgMzMsIDAuMylgLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAuLi4ocmVhZG9ubHlcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGAjZjhmOWZhYCxcbiAgICAgICAgICAgICAgICBjb2xvcjogYCM1ZjYzNjhgLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgfX1cbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFlM2UzO1xuICAgICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIGB9XG4gICAgICAvPlxuICAgICk7XG4gIH0sXG4gIChwcmV2LCBuZXh0KSA9PlxuICAgIHByZXYuc2VsZWN0ZWQgPT09IG5leHQuc2VsZWN0ZWQgJiZcbiAgICBwcmV2LnZhbHVlID09PSBuZXh0LnZhbHVlICYmXG4gICAgbmV4dC5vbkNsaWNrID09PSBwcmV2Lm9uQ2xpY2tcbik7XG5cbmV4cG9ydCBjb25zdCBDb2x1bW5IZWFkQ2VsbDogUmVhY3QuRkM8Q2VsbFByb3BzPiA9IFJlYWN0Lm1lbW8oXG4gIChwcm9wcykgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8Q2VsbFxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGRhdGEtc2VsZWN0ZWQ9e3Byb3BzLnNlbGVjdGVkfVxuICAgICAgICBjc3M9e1tcbiAgICAgICAgICBjc3NgXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgY29sb3I6ICM1ZjYzNjg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICAgICAgICBgLFxuICAgICAgICAgIHByb3BzLnNlbGVjdGVkXG4gICAgICAgICAgICA/IGNzc2BcbiAgICAgICAgICAgICAgICBjb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWY2MzY4O1xuICAgICAgICAgICAgICBgXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICAgIF19XG4gICAgICAvPlxuICAgICk7XG4gIH0sXG4gIChwcmV2LCBuZXh0KSA9PlxuICAgIHByZXYuc2VsZWN0ZWQgPT09IG5leHQuc2VsZWN0ZWQgJiZcbiAgICBwcmV2LnZhbHVlID09PSBuZXh0LnZhbHVlICYmXG4gICAgbmV4dC5vbkNsaWNrID09PSBwcmV2Lm9uQ2xpY2tcbik7XG5cbmV4cG9ydCBjb25zdCBSb3dIZWFkQ2VsbDogUmVhY3QuRkM8Q2VsbFByb3BzPiA9IFJlYWN0Lm1lbW8oXG4gICh7IC4uLnByb3BzIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPENvbHVtbkhlYWRDZWxsXG4gICAgICAgIHsuLi5wcm9wc31cbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBgfVxuICAgICAgLz5cbiAgICApO1xuICB9LFxuICAocHJldiwgbmV4dCkgPT5cbiAgICBwcmV2LnNlbGVjdGVkID09PSBuZXh0LnNlbGVjdGVkICYmXG4gICAgcHJldi52YWx1ZSA9PT0gbmV4dC52YWx1ZSAmJlxuICAgIG5leHQub25DbGljayA9PT0gcHJldi5vbkNsaWNrXG4pO1xuIl19 */",
60
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
61
+ };
62
+ export var ColumnHeadCell = /*#__PURE__*/React.memo(props => {
63
+ return ___EmotionJSX(Cell, _extends({}, props, {
64
+ "data-selected": props.selected,
65
+ css: [_ref3, props.selected ? _ref2 : null, process.env.NODE_ENV === "production" ? "" : ";label:ColumnHeadCell;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9DZWxsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtRlEiLCJmaWxlIjoiLi4vLi4vc3JjL0NlbGwudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5leHBvcnQgaW50ZXJmYWNlIENlbGxQcm9wc1xuICBleHRlbmRzIFJlYWN0LkRldGFpbGVkSFRNTFByb3BzPFxuICAgIFJlYWN0LlRkSFRNTEF0dHJpYnV0ZXM8SFRNTFRhYmxlRGF0YUNlbGxFbGVtZW50PixcbiAgICBIVE1MVGFibGVEYXRhQ2VsbEVsZW1lbnRcbiAgPiB7XG4gIHJlYWRvbmx5PzogYm9vbGVhbjtcbiAgc2VsZWN0ZWQ/OiBib29sZWFuO1xuICBpbnZhbGlkPzogYm9vbGVhbiB8IHN0cmluZztcbiAgdmFsdWU/OiB1bmtub3duO1xufVxuXG5leHBvcnQgY29uc3QgQ2VsbDogUmVhY3QuRkM8Q2VsbFByb3BzPiA9IFJlYWN0Lm1lbW8oXG4gICh7XG4gICAgcmVhZG9ubHkgPSBmYWxzZSxcbiAgICBzZWxlY3RlZCA9IGZhbHNlLFxuICAgIGludmFsaWQgPSBmYWxzZSxcbiAgICB0aXRsZSxcbiAgICB2YWx1ZTogX3ZhbHVlLFxuICAgIHN0eWxlID0ge30sXG4gICAgLi4ucHJvcHNcbiAgfSkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIHsuLi5wcm9wc31cbiAgICAgICAgZGF0YS1lbGVtZW50PVwiY2VsbFwiXG4gICAgICAgIHRpdGxlPXt0eXBlb2YgaW52YWxpZCA9PT0gXCJzdHJpbmdcIiA/IGludmFsaWQgOiB0aXRsZX1cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAuLi5zdHlsZSxcbiAgICAgICAgICBjdXJzb3I6IHR5cGVvZiBpbnZhbGlkID09PSBcInN0cmluZ1wiID8gXCJoZWxwXCIgOiBcImN1cnNvclwiLFxuICAgICAgICAgIC4uLihzZWxlY3RlZFxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBgMXB4IGRvdWJsZSAjMjE4NWQwYCxcbiAgICAgICAgICAgICAgICBib3hTaGFkb3c6IGBpbnNldCAwIC0xMDBweCAwIHJnYmEoMzMsIDEzMywgMjA4LCAwLjE1KWAsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDoge30pLFxuICAgICAgICAgIC4uLihpbnZhbGlkICE9PSBmYWxzZVxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogYHJnYmEoMjA4LCAzMywgMzMsIDAuMylgLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAuLi4ocmVhZG9ubHlcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGAjZjhmOWZhYCxcbiAgICAgICAgICAgICAgICBjb2xvcjogYCM1ZjYzNjhgLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgfX1cbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFlM2UzO1xuICAgICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIGB9XG4gICAgICAvPlxuICAgICk7XG4gIH0sXG4gIChwcmV2LCBuZXh0KSA9PlxuICAgIHByZXYuc2VsZWN0ZWQgPT09IG5leHQuc2VsZWN0ZWQgJiZcbiAgICBwcmV2LnZhbHVlID09PSBuZXh0LnZhbHVlICYmXG4gICAgbmV4dC5vbkNsaWNrID09PSBwcmV2Lm9uQ2xpY2tcbik7XG5cbmV4cG9ydCBjb25zdCBDb2x1bW5IZWFkQ2VsbDogUmVhY3QuRkM8Q2VsbFByb3BzPiA9IFJlYWN0Lm1lbW8oXG4gIChwcm9wcykgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8Q2VsbFxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGRhdGEtc2VsZWN0ZWQ9e3Byb3BzLnNlbGVjdGVkfVxuICAgICAgICBjc3M9e1tcbiAgICAgICAgICBjc3NgXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgY29sb3I6ICM1ZjYzNjg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICAgICAgICBgLFxuICAgICAgICAgIHByb3BzLnNlbGVjdGVkXG4gICAgICAgICAgICA/IGNzc2BcbiAgICAgICAgICAgICAgICBjb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWY2MzY4O1xuICAgICAgICAgICAgICBgXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICAgIF19XG4gICAgICAvPlxuICAgICk7XG4gIH0sXG4gIChwcmV2LCBuZXh0KSA9PlxuICAgIHByZXYuc2VsZWN0ZWQgPT09IG5leHQuc2VsZWN0ZWQgJiZcbiAgICBwcmV2LnZhbHVlID09PSBuZXh0LnZhbHVlICYmXG4gICAgbmV4dC5vbkNsaWNrID09PSBwcmV2Lm9uQ2xpY2tcbik7XG5cbmV4cG9ydCBjb25zdCBSb3dIZWFkQ2VsbDogUmVhY3QuRkM8Q2VsbFByb3BzPiA9IFJlYWN0Lm1lbW8oXG4gICh7IC4uLnByb3BzIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPENvbHVtbkhlYWRDZWxsXG4gICAgICAgIHsuLi5wcm9wc31cbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBgfVxuICAgICAgLz5cbiAgICApO1xuICB9LFxuICAocHJldiwgbmV4dCkgPT5cbiAgICBwcmV2LnNlbGVjdGVkID09PSBuZXh0LnNlbGVjdGVkICYmXG4gICAgcHJldi52YWx1ZSA9PT0gbmV4dC52YWx1ZSAmJlxuICAgIG5leHQub25DbGljayA9PT0gcHJldi5vbkNsaWNrXG4pO1xuIl19 */"]
66
+ }));
67
+ }, (prev, next) => prev.selected === next.selected && prev.value === next.value && next.onClick === prev.onClick);
68
+ var _ref = process.env.NODE_ENV === "production" ? {
69
+ name: "9srl69",
70
+ styles: "width:24px;font-family:monospace!important;line-height:24px"
71
+ } : {
72
+ name: "3ngs3v-RowHeadCell",
73
+ styles: "width:24px;font-family:monospace!important;line-height:24px;label:RowHeadCell;",
74
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9DZWxsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtSGdCIiwiZmlsZSI6Ii4uLy4uL3NyYy9DZWxsLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuZXhwb3J0IGludGVyZmFjZSBDZWxsUHJvcHNcbiAgZXh0ZW5kcyBSZWFjdC5EZXRhaWxlZEhUTUxQcm9wczxcbiAgICBSZWFjdC5UZEhUTUxBdHRyaWJ1dGVzPEhUTUxUYWJsZURhdGFDZWxsRWxlbWVudD4sXG4gICAgSFRNTFRhYmxlRGF0YUNlbGxFbGVtZW50XG4gID4ge1xuICByZWFkb25seT86IGJvb2xlYW47XG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbiAgaW52YWxpZD86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIHZhbHVlPzogdW5rbm93bjtcbn1cblxuZXhwb3J0IGNvbnN0IENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAoe1xuICAgIHJlYWRvbmx5ID0gZmFsc2UsXG4gICAgc2VsZWN0ZWQgPSBmYWxzZSxcbiAgICBpbnZhbGlkID0gZmFsc2UsXG4gICAgdGl0bGUsXG4gICAgdmFsdWU6IF92YWx1ZSxcbiAgICBzdHlsZSA9IHt9LFxuICAgIC4uLnByb3BzXG4gIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGRhdGEtZWxlbWVudD1cImNlbGxcIlxuICAgICAgICB0aXRsZT17dHlwZW9mIGludmFsaWQgPT09IFwic3RyaW5nXCIgPyBpbnZhbGlkIDogdGl0bGV9XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgLi4uc3R5bGUsXG4gICAgICAgICAgY3Vyc29yOiB0eXBlb2YgaW52YWxpZCA9PT0gXCJzdHJpbmdcIiA/IFwiaGVscFwiIDogXCJjdXJzb3JcIixcbiAgICAgICAgICAuLi4oc2VsZWN0ZWRcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogYDFweCBkb3VibGUgIzIxODVkMGAsXG4gICAgICAgICAgICAgICAgYm94U2hhZG93OiBgaW5zZXQgMCAtMTAwcHggMCByZ2JhKDMzLCAxMzMsIDIwOCwgMC4xNSlgLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAuLi4oaW52YWxpZCAhPT0gZmFsc2VcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGByZ2JhKDIwOCwgMzMsIDMzLCAwLjMpYCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgICAgLi4uKHJlYWRvbmx5XG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBgI2Y4ZjlmYWAsXG4gICAgICAgICAgICAgICAgY29sb3I6IGAjNWY2MzY4YCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgIH19XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTNlMztcbiAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICBgfVxuICAgICAgLz5cbiAgICApO1xuICB9LFxuICAocHJldiwgbmV4dCkgPT5cbiAgICBwcmV2LnNlbGVjdGVkID09PSBuZXh0LnNlbGVjdGVkICYmXG4gICAgcHJldi52YWx1ZSA9PT0gbmV4dC52YWx1ZSAmJlxuICAgIG5leHQub25DbGljayA9PT0gcHJldi5vbkNsaWNrXG4pO1xuXG5leHBvcnQgY29uc3QgQ29sdW1uSGVhZENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAocHJvcHMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPENlbGxcbiAgICAgICAgey4uLnByb3BzfVxuICAgICAgICBkYXRhLXNlbGVjdGVkPXtwcm9wcy5zZWxlY3RlZH1cbiAgICAgICAgY3NzPXtbXG4gICAgICAgICAgY3NzYFxuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNWY2MzY4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuMnM7XG4gICAgICAgICAgYCxcbiAgICAgICAgICBwcm9wcy5zZWxlY3RlZFxuICAgICAgICAgICAgPyBjc3NgXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVmNjM2ODtcbiAgICAgICAgICAgICAgYFxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICBdfVxuICAgICAgLz5cbiAgICApO1xuICB9LFxuICAocHJldiwgbmV4dCkgPT5cbiAgICBwcmV2LnNlbGVjdGVkID09PSBuZXh0LnNlbGVjdGVkICYmXG4gICAgcHJldi52YWx1ZSA9PT0gbmV4dC52YWx1ZSAmJlxuICAgIG5leHQub25DbGljayA9PT0gcHJldi5vbkNsaWNrXG4pO1xuXG5leHBvcnQgY29uc3QgUm93SGVhZENlbGw6IFJlYWN0LkZDPENlbGxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAoeyAuLi5wcm9wcyB9KSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxDb2x1bW5IZWFkQ2VsbFxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UgIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgYH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfSxcbiAgKHByZXYsIG5leHQpID0+XG4gICAgcHJldi5zZWxlY3RlZCA9PT0gbmV4dC5zZWxlY3RlZCAmJlxuICAgIHByZXYudmFsdWUgPT09IG5leHQudmFsdWUgJiZcbiAgICBuZXh0Lm9uQ2xpY2sgPT09IHByZXYub25DbGlja1xuKTtcbiJdfQ== */",
75
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
76
+ };
77
+ export var RowHeadCell = /*#__PURE__*/React.memo(_ref6 => {
78
+ var props = _extends({}, (_objectDestructuringEmpty(_ref6), _ref6));
79
+ return ___EmotionJSX(ColumnHeadCell, _extends({}, props, {
80
+ css: _ref
81
+ }));
82
+ }, (prev, next) => prev.selected === next.selected && prev.value === next.value && next.onClick === prev.onClick);
83
+ //# sourceMappingURL=Cell.js.map
package/Cell.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cell.js","names":["css","React","Cell","memo","readonly","selected","invalid","title","style","props","cursor","border","boxShadow","background","color","prev","next","value","onClick","ColumnHeadCell","RowHeadCell"],"sources":["../../src/Cell.tsx"],"sourcesContent":["import { css } from \"@emotion/react\";\nimport React from \"react\";\nexport interface CellProps\n extends React.DetailedHTMLProps<\n React.TdHTMLAttributes<HTMLTableDataCellElement>,\n HTMLTableDataCellElement\n > {\n readonly?: boolean;\n selected?: boolean;\n invalid?: boolean | string;\n value?: unknown;\n}\n\nexport const Cell: React.FC<CellProps> = React.memo(\n ({\n readonly = false,\n selected = false,\n invalid = false,\n title,\n value: _value,\n style = {},\n ...props\n }) => {\n return (\n <div\n {...props}\n data-element=\"cell\"\n title={typeof invalid === \"string\" ? invalid : title}\n style={{\n ...style,\n cursor: typeof invalid === \"string\" ? \"help\" : \"cursor\",\n ...(selected\n ? {\n border: `1px double #2185d0`,\n boxShadow: `inset 0 -100px 0 rgba(33, 133, 208, 0.15)`,\n }\n : {}),\n ...(invalid !== false\n ? {\n background: `rgba(208, 33, 33, 0.3)`,\n }\n : {}),\n ...(readonly\n ? {\n background: `#f8f9fa`,\n color: `#5f6368`,\n }\n : {}),\n }}\n css={css`\n position: relative;\n box-sizing: border-box;\n height: 24px;\n padding: 0px;\n overflow: scroll;\n text-align: right;\n white-space: nowrap;\n vertical-align: middle;\n user-select: none;\n background-color: unset;\n background-color: white;\n border: 1px solid #e1e3e3;\n -ms-overflow-style: none;\n scrollbar-width: none;\n &::-webkit-scrollbar {\n display: none;\n }\n `}\n />\n );\n },\n (prev, next) =>\n prev.selected === next.selected &&\n prev.value === next.value &&\n next.onClick === prev.onClick\n);\n\nexport const ColumnHeadCell: React.FC<CellProps> = React.memo(\n (props) => {\n return (\n <Cell\n {...props}\n data-selected={props.selected}\n css={[\n css`\n flex-shrink: 0;\n font-size: 10px;\n line-height: 24px;\n color: #5f6368;\n text-align: center;\n cursor: pointer;\n background-color: #f8f9fa;\n transition: 0.2s;\n `,\n props.selected\n ? css`\n color: #f8f9fa;\n background-color: #5f6368;\n `\n : null,\n ]}\n />\n );\n },\n (prev, next) =>\n prev.selected === next.selected &&\n prev.value === next.value &&\n next.onClick === prev.onClick\n);\n\nexport const RowHeadCell: React.FC<CellProps> = React.memo(\n ({ ...props }) => {\n return (\n <ColumnHeadCell\n {...props}\n css={css`\n width: 24px;\n font-family: monospace !important;\n line-height: 24px;\n `}\n />\n );\n },\n (prev, next) =>\n prev.selected === next.selected &&\n prev.value === next.value &&\n next.onClick === prev.onClick\n);\n"],"mappings":";;;;;AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAOC,KAAK,MAAM,OAAO;AAAC;AAAA;EAAA;EAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAY1B,OAAO,IAAMC,IAAyB,gBAAGD,KAAK,CAACE,IAAI,CACjD,SAQM;EAAA,IARL;MACCC,QAAQ,GAAG,KAAK;MAChBC,QAAQ,GAAG,KAAK;MAChBC,OAAO,GAAG,KAAK;MACfC,KAAK;MAELC,KAAK,GAAG,CAAC;IAEX,CAAC;IADIC,KAAK;EAER,OACE,kCACMA,KAAK;IACT,gBAAa,MAAM;IACnB,KAAK,EAAE,OAAOH,OAAO,KAAK,QAAQ,GAAGA,OAAO,GAAGC,KAAM;IACrD,KAAK,eACAC,KAAK;MACRE,MAAM,EAAE,OAAOJ,OAAO,KAAK,QAAQ,GAAG,MAAM,GAAG;IAAQ,GACnDD,QAAQ,GACR;MACEM,MAAM,sBAAsB;MAC5BC,SAAS;IACX,CAAC,GACD,CAAC,CAAC,EACFN,OAAO,KAAK,KAAK,GACjB;MACEO,UAAU;IACZ,CAAC,GACD,CAAC,CAAC,EACFT,QAAQ,GACR;MACES,UAAU,WAAW;MACrBC,KAAK;IACP,CAAC,GACD,CAAC,CAAC,CACN;IACF,GAAG;EAkBD,GACF;AAEN,CAAC,EACD,CAACC,IAAI,EAAEC,IAAI,KACTD,IAAI,CAACV,QAAQ,KAAKW,IAAI,CAACX,QAAQ,IAC/BU,IAAI,CAACE,KAAK,KAAKD,IAAI,CAACC,KAAK,IACzBD,IAAI,CAACE,OAAO,KAAKH,IAAI,CAACG,OAAO,CAChC;AAAC;EAAA;EAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAAA;EAAA;EAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAEF,OAAO,IAAMC,cAAmC,gBAAGlB,KAAK,CAACE,IAAI,CAC1DM,KAAK,IAAK;EACT,OACE,cAAC,IAAI,eACCA,KAAK;IACT,iBAAeA,KAAK,CAACJ,QAAS;IAC9B,GAAG,UAWDI,KAAK,CAACJ,QAAQ,WAKV,IAAI;EACR,GACF;AAEN,CAAC,EACD,CAACU,IAAI,EAAEC,IAAI,KACTD,IAAI,CAACV,QAAQ,KAAKW,IAAI,CAACX,QAAQ,IAC/BU,IAAI,CAACE,KAAK,KAAKD,IAAI,CAACC,KAAK,IACzBD,IAAI,CAACE,OAAO,KAAKH,IAAI,CAACG,OAAO,CAChC;AAAC;EAAA;EAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAEF,OAAO,IAAME,WAAgC,gBAAGnB,KAAK,CAACE,IAAI,CACxD,SAAkB;EAAA,IAAZM,KAAK;EACT,OACE,cAAC,cAAc,eACTA,KAAK;IACT,GAAG;EAID,GACF;AAEN,CAAC,EACD,CAACM,IAAI,EAAEC,IAAI,KACTD,IAAI,CAACV,QAAQ,KAAKW,IAAI,CAACX,QAAQ,IAC/BU,IAAI,CAACE,KAAK,KAAKD,IAAI,CAACC,KAAK,IACzBD,IAAI,CAACE,OAAO,KAAKH,IAAI,CAACG,OAAO,CAChC"}
File without changes
package/Controller.js ADDED
@@ -0,0 +1,50 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
3
+ import { css } from "@emotion/react";
4
+ import React from "react";
5
+ import { jsx as ___EmotionJSX } from "@emotion/react";
6
+ var _ref2 = process.env.NODE_ENV === "production" ? {
7
+ name: "17ncf2e",
8
+ styles: "box-sizing:border-box;display:flex;justify-content:flex-end;background-color:#f8f9fa;border-top:1px solid #e1e3e3;border-right:1px solid #e1e3e3;border-left:1px solid #e1e3e3"
9
+ } : {
10
+ name: "1h7ldop-Controller",
11
+ styles: "box-sizing:border-box;display:flex;justify-content:flex-end;background-color:#f8f9fa;border-top:1px solid #e1e3e3;border-right:1px solid #e1e3e3;border-left:1px solid #e1e3e3;label:Controller;",
12
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Db250cm9sbGVyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRYyIsImZpbGUiOiIuLi8uLi9zcmMvQ29udHJvbGxlci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcblxuZXhwb3J0IGNvbnN0IENvbnRyb2xsZXI6IFJlYWN0LkZDPFJlYWN0LkhUTUxQcm9wczxIVE1MRGl2RWxlbWVudD4+ID0gKFxuICBwcm9wc1xuKSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgY3NzPXtjc3NgXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTFlM2UzO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTFlM2UzO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlMWUzZTM7XG4gICAgICBgfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgRG93bmxvYWRCdXR0b24gPSAoXG4gIHByb3BzOiBSZWFjdC5EZXRhaWxlZEhUTUxQcm9wczxcbiAgICBSZWFjdC5CdXR0b25IVE1MQXR0cmlidXRlczxIVE1MQnV0dG9uRWxlbWVudD4sXG4gICAgSFRNTEJ1dHRvbkVsZW1lbnRcbiAgPlxuKSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAgdGl0bGU9e2BDU1blvaLlvI/jgafjg4fjg7zjgr/jgpLjg4Djgqbjg7Pjg63jg7zjg4njgZfjgb7jgZnjgIJcbkN0cmzjgb7jgZ/jga9Db21tYW5k44KS5oq844GX44Gq44GM44KJ44Kv44Oq44OD44Kv44GZ44KL44GT44Go44Gn5ZCN5YmN44KS5LuY44GR44Gm44OA44Km44Oz44Ot44O844OJ44Gn44GN44G+44GZ44CCYH1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgY3NzPXtjc3NgXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UxZTNlMztcbiAgICAgICAgfVxuICAgICAgYH1cbiAgICA+XG4gICAgICA8c3ZnXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICBlbmFibGVCYWNrZ3JvdW5kPVwibmV3IDAgMCAyNCAyNFwiXG4gICAgICAgIGhlaWdodD1cIjI0cHhcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICAgd2lkdGg9XCIyNHB4XCJcbiAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgPlxuICAgICAgICA8Zz5cbiAgICAgICAgICA8cmVjdCBmaWxsPVwibm9uZVwiIGhlaWdodD1cIjI0XCIgd2lkdGg9XCIyNFwiIC8+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGc+XG4gICAgICAgICAgPHBhdGggZD1cIk01LDIwaDE0di0ySDVWMjB6IE0xOSw5aC00VjNIOXY2SDVsNyw3TDE5LDl6XCIgLz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9zdmc+XG4gICAgPC9idXR0b24+XG4gICk7XG59O1xuIl19 */",
13
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
14
+ };
15
+ export var Controller = props => {
16
+ return ___EmotionJSX("div", _extends({
17
+ css: _ref2
18
+ }, props));
19
+ };
20
+ var _ref = process.env.NODE_ENV === "production" ? {
21
+ name: "1nlr1g4",
22
+ styles: "box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0px;margin:0px;cursor:pointer;background-color:#f8f9fa;border:none;outline:none;transition:0.2s;appearance:none;&:hover{background-color:#e1e3e3;}"
23
+ } : {
24
+ name: "1xvqni3-DownloadButton",
25
+ styles: "box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0px;margin:0px;cursor:pointer;background-color:#f8f9fa;border:none;outline:none;transition:0.2s;appearance:none;&:hover{background-color:#e1e3e3;};label:DownloadButton;",
26
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Db250cm9sbGVyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQ2MiLCJmaWxlIjoiLi4vLi4vc3JjL0NvbnRyb2xsZXIudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5cbmV4cG9ydCBjb25zdCBDb250cm9sbGVyOiBSZWFjdC5GQzxSZWFjdC5IVE1MUHJvcHM8SFRNTERpdkVsZW1lbnQ+PiA9IChcbiAgcHJvcHNcbikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2UxZTNlMztcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UxZTNlMztcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTFlM2UzO1xuICAgICAgYH1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IERvd25sb2FkQnV0dG9uID0gKFxuICBwcm9wczogUmVhY3QuRGV0YWlsZWRIVE1MUHJvcHM8XG4gICAgUmVhY3QuQnV0dG9uSFRNTEF0dHJpYnV0ZXM8SFRNTEJ1dHRvbkVsZW1lbnQ+LFxuICAgIEhUTUxCdXR0b25FbGVtZW50XG4gID5cbikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxidXR0b25cbiAgICAgIHRpdGxlPXtgQ1NW5b2i5byP44Gn44OH44O844K/44KS44OA44Km44Oz44Ot44O844OJ44GX44G+44GZ44CCXG5DdHJs44G+44Gf44GvQ29tbWFuZOOCkuaKvOOBl+OBquOBjOOCieOCr+ODquODg+OCr+OBmeOCi+OBk+OBqOOBp+WQjeWJjeOCkuS7mOOBkeOBpuODgOOCpuODs+ODreODvOODieOBp+OBjeOBvuOBmeOAgmB9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IDAuMnM7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWUzZTM7XG4gICAgICAgIH1cbiAgICAgIGB9XG4gICAgPlxuICAgICAgPHN2Z1xuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgZW5hYmxlQmFja2dyb3VuZD1cIm5ldyAwIDAgMjQgMjRcIlxuICAgICAgICBoZWlnaHQ9XCIyNHB4XCJcbiAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgIHdpZHRoPVwiMjRweFwiXG4gICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgID5cbiAgICAgICAgPGc+XG4gICAgICAgICAgPHJlY3QgZmlsbD1cIm5vbmVcIiBoZWlnaHQ9XCIyNFwiIHdpZHRoPVwiMjRcIiAvPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnPlxuICAgICAgICAgIDxwYXRoIGQ9XCJNNSwyMGgxNHYtMkg1VjIweiBNMTksOWgtNFYzSDl2Nkg1bDcsN0wxOSw5elwiIC8+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICApO1xufTtcbiJdfQ== */",
27
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
28
+ };
29
+ export var DownloadButton = props => {
30
+ return ___EmotionJSX("button", _extends({
31
+ title: "CSV\u5F62\u5F0F\u3067\u30C7\u30FC\u30BF\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u307E\u3059\u3002\nCtrl\u307E\u305F\u306FCommand\u3092\u62BC\u3057\u306A\u304C\u3089\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u3053\u3068\u3067\u540D\u524D\u3092\u4ED8\u3051\u3066\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3067\u304D\u307E\u3059\u3002"
32
+ }, props, {
33
+ type: "button",
34
+ css: _ref
35
+ }), ___EmotionJSX("svg", {
36
+ xmlns: "http://www.w3.org/2000/svg",
37
+ enableBackground: "new 0 0 24 24",
38
+ height: "24px",
39
+ viewBox: "0 0 24 24",
40
+ width: "24px",
41
+ fill: "#000000"
42
+ }, ___EmotionJSX("g", null, ___EmotionJSX("rect", {
43
+ fill: "none",
44
+ height: "24",
45
+ width: "24"
46
+ })), ___EmotionJSX("g", null, ___EmotionJSX("path", {
47
+ d: "M5,20h14v-2H5V20z M19,9h-4V3H9v6H5l7,7L19,9z"
48
+ }))));
49
+ };
50
+ //# sourceMappingURL=Controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Controller.js","names":["css","React","Controller","props","DownloadButton"],"sources":["../../src/Controller.tsx"],"sourcesContent":["import { css } from \"@emotion/react\";\nimport React from \"react\";\n\nexport const Controller: React.FC<React.HTMLProps<HTMLDivElement>> = (\n props\n) => {\n return (\n <div\n css={css`\n box-sizing: border-box;\n display: flex;\n justify-content: flex-end;\n background-color: #f8f9fa;\n border-top: 1px solid #e1e3e3;\n border-right: 1px solid #e1e3e3;\n border-left: 1px solid #e1e3e3;\n `}\n {...props}\n />\n );\n};\n\nexport const DownloadButton = (\n props: React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n >\n) => {\n return (\n <button\n title={`CSV形式でデータをダウンロードします。\nCtrlまたはCommandを押しながらクリックすることで名前を付けてダウンロードできます。`}\n {...props}\n type=\"button\"\n css={css`\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n padding: 0px;\n margin: 0px;\n cursor: pointer;\n background-color: #f8f9fa;\n border: none;\n outline: none;\n transition: 0.2s;\n appearance: none;\n &:hover {\n background-color: #e1e3e3;\n }\n `}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n enableBackground=\"new 0 0 24 24\"\n height=\"24px\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n fill=\"#000000\"\n >\n <g>\n <rect fill=\"none\" height=\"24\" width=\"24\" />\n </g>\n <g>\n <path d=\"M5,20h14v-2H5V20z M19,9h-4V3H9v6H5l7,7L19,9z\" />\n </g>\n </svg>\n </button>\n );\n};\n"],"mappings":";;AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAOC,KAAK,MAAM,OAAO;AAAC;AAAA;EAAA;EAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAE1B,OAAO,IAAMC,UAAqD,GAChEC,KAAK,IACF;EACH,OACE;IACE,GAAG;EAQD,GACEA,KAAK,EACT;AAEN,CAAC;AAAC;EAAA;EAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAEF,OAAO,IAAMC,cAAc,GACzBD,KAGC,IACE;EACH,OACE;IACE,KAAK;EACqC,GACtCA,KAAK;IACT,IAAI,EAAC,QAAQ;IACb,GAAG;EAkBD,IAEF;IACE,KAAK,EAAC,4BAA4B;IAClC,gBAAgB,EAAC,eAAe;IAChC,MAAM,EAAC,MAAM;IACb,OAAO,EAAC,WAAW;IACnB,KAAK,EAAC,MAAM;IACZ,IAAI,EAAC;EAAS,GAEd,yBACE;IAAM,IAAI,EAAC,MAAM;IAAC,MAAM,EAAC,IAAI;IAAC,KAAK,EAAC;EAAI,EAAG,CACzC,EACJ,yBACE;IAAM,CAAC,EAAC;EAA8C,EAAG,CACvD,CACA,CACC;AAEb,CAAC"}
File without changes
@@ -2,7 +2,6 @@ import { Cell, RowHeadCell } from "./Cell";
2
2
  import { DataSheetCheckbox } from "./DataSheetCheckbox";
3
3
  import { DataSheetInput } from "./DataSheetInput";
4
4
  import { DataSheetSelect } from "./DataSheetSelect";
5
- import { DataSheetText } from "./DataSheetText";
6
5
  import { areEqual } from "react-window";
7
6
  import React from "react";
8
7
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -29,7 +28,6 @@ export var CustomCell = /*#__PURE__*/React.memo(_ref => {
29
28
  } = _ref;
30
29
  var x = rowIndex;
31
30
  var y = columnIndex - 1;
32
-
33
31
  if (y === -1) {
34
32
  return ___EmotionJSX(RowHeadCell, {
35
33
  title: x + "\u884C\u76EE\u3092\u9078\u629E",
@@ -43,7 +41,6 @@ export var CustomCell = /*#__PURE__*/React.memo(_ref => {
43
41
  style: style
44
42
  }, x);
45
43
  }
46
-
47
44
  var row = rows[x];
48
45
  var cell = row[y];
49
46
  var {
@@ -58,7 +55,6 @@ export var CustomCell = /*#__PURE__*/React.memo(_ref => {
58
55
  x: x,
59
56
  y: y
60
57
  });
61
-
62
58
  var makeOptions = () => list ? typeof list === "function" ? list({
63
59
  row: data[x]
64
60
  }).map((option, i) => ___EmotionJSX("option", {
@@ -68,7 +64,6 @@ export var CustomCell = /*#__PURE__*/React.memo(_ref => {
68
64
  value: option,
69
65
  key: option + "-" + i
70
66
  }, option)) : null;
71
-
72
67
  var displayValue = cell === undefined ? "" : formatter ? formatter(cell, {
73
68
  row: data[y]
74
69
  }) : "" + cell;
@@ -86,7 +81,16 @@ export var CustomCell = /*#__PURE__*/React.memo(_ref => {
86
81
  key: "row-" + x + "-cell-" + y,
87
82
  onMouseDown: handleMouseDown,
88
83
  onMouseOver: handleMouseOver
89
- }, readonly || type === undefined ? ___EmotionJSX(DataSheetText, null, displayValue) : type === "checkbox" ? ___EmotionJSX(DataSheetCheckbox, {
84
+ }, readonly || type === undefined ? ___EmotionJSX(DataSheetInput, {
85
+ type: type,
86
+ defaultValue: displayValue,
87
+ list: "" + key,
88
+ key: x + "-" + y + "-" + cell,
89
+ "data-row": x,
90
+ "data-column": y,
91
+ onChange: handleChangeDataEditor,
92
+ readOnly: readonly
93
+ }) : type === "checkbox" ? ___EmotionJSX(DataSheetCheckbox, {
90
94
  type: type,
91
95
  "data-row": x,
92
96
  "data-column": y,
@@ -106,7 +110,8 @@ export var CustomCell = /*#__PURE__*/React.memo(_ref => {
106
110
  key: x + "-" + y + "-" + cell,
107
111
  "data-row": x,
108
112
  "data-column": y,
109
- onChange: handleChangeDataEditor
113
+ onChange: handleChangeDataEditor,
114
+ readOnly: readonly
110
115
  }), list ? ___EmotionJSX("datalist", {
111
116
  id: key
112
117
  }, makeOptions()) : null));
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomCell.js","names":["Cell","RowHeadCell","DataSheetCheckbox","DataSheetInput","DataSheetSelect","areEqual","React","CustomCell","memo","columnIndex","rowIndex","style","data","columns","handleSelectRow","handleMouseDownRow","handleMouseOverRow","handleMouseUpRow","isSelectRow","rows","handleChangeDataEditor","isSelection","handleMouseDown","handleMouseOver","handleChangeCheckbox","x","y","row","cell","readonly","type","list","key","validator","formatter","selected","makeOptions","map","option","i","displayValue","undefined"],"sources":["../../src/CustomCell.tsx"],"sourcesContent":["import { Cell, RowHeadCell } from \"./Cell\";\nimport { ComponentType } from \"react\";\nimport { DataSheetCheckbox } from \"./DataSheetCheckbox\";\nimport { DataSheetInput } from \"./DataSheetInput\";\nimport { DataSheetSelect } from \"./DataSheetSelect\";\nimport { GridChildComponentProps, areEqual } from \"react-window\";\nimport React from \"react\";\n\nexport const CustomCell: ComponentType<GridChildComponentProps> = React.memo(\n ({\n columnIndex,\n rowIndex,\n style,\n data: {\n columns,\n handleSelectRow,\n handleMouseDownRow,\n handleMouseOverRow,\n handleMouseUpRow,\n isSelectRow,\n rows,\n handleChangeDataEditor,\n isSelection,\n data,\n handleMouseDown,\n handleMouseOver,\n handleChangeCheckbox,\n },\n }) => {\n const x = rowIndex;\n const y = columnIndex - 1;\n if (y === -1) {\n return (\n <RowHeadCell\n title={`${x}行目を選択`}\n data-row={x}\n data-column={0}\n onClick={handleSelectRow}\n onMouseDown={handleMouseDownRow}\n onMouseOver={handleMouseOverRow}\n onMouseUp={handleMouseUpRow}\n selected={isSelectRow(x)}\n style={style}\n >\n {x}\n </RowHeadCell>\n );\n }\n const row = rows[x];\n const cell = row[y];\n\n const {\n readonly = false,\n type,\n list,\n key,\n validator,\n formatter,\n } = columns[y];\n\n const selected = isSelection({\n x: x,\n y: y,\n });\n const makeOptions = () =>\n list\n ? typeof list === \"function\"\n ? list({\n row: data[x],\n }).map((option: string, i: number) => (\n <option value={option} key={`${option}-${i}`}>\n {option}\n </option>\n ))\n : list.map((option: string, i: number) => (\n <option value={option} key={`${option}-${i}`}>\n {option}\n </option>\n ))\n : null;\n\n const displayValue =\n cell === undefined\n ? \"\"\n : formatter\n ? formatter(cell, {\n row: data[y],\n })\n : `${cell}`;\n return (\n <Cell\n style={style}\n title={displayValue}\n invalid={\n cell !== undefined && validator\n ? validator({\n row: data[x],\n })\n : false\n }\n readonly={readonly}\n selected={selected}\n data-row={x}\n data-column={y}\n value={cell}\n key={`row-${x}-cell-${y}`}\n onMouseDown={handleMouseDown}\n onMouseOver={handleMouseOver}\n >\n {readonly || type === undefined ? (\n <DataSheetInput\n type={type}\n defaultValue={displayValue}\n list={`${key}`}\n key={`${x}-${y}-${cell}`}\n data-row={x}\n data-column={y}\n onChange={handleChangeDataEditor}\n readOnly={readonly}\n />\n ) : type === \"checkbox\" ? (\n <DataSheetCheckbox\n type={type}\n data-row={x}\n data-column={y}\n onChange={handleChangeCheckbox}\n key={`${x}-${y}-${cell}`}\n defaultChecked={typeof cell === \"boolean\" ? cell : undefined}\n />\n ) : type === \"select\" ? (\n <DataSheetSelect\n data-row={x}\n data-column={y}\n defaultValue={cell as string}\n key={`${x}-${y}-${cell}`}\n onChange={handleChangeDataEditor}\n >\n {makeOptions()}\n </DataSheetSelect>\n ) : (\n <React.Fragment>\n <DataSheetInput\n type={type}\n defaultValue={cell}\n list={`${key}`}\n key={`${x}-${y}-${cell}`}\n data-row={x}\n data-column={y}\n onChange={handleChangeDataEditor}\n readOnly={readonly}\n />\n {list ? (\n <datalist id={key as string}>{makeOptions()}</datalist>\n ) : null}\n </React.Fragment>\n )}\n </Cell>\n );\n },\n areEqual\n);\n"],"mappings":"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"}
package/DataSheet.d.ts ADDED
@@ -0,0 +1,31 @@
1
+ import React from "react";
2
+ export type DataRow = {
3
+ [key: string]: string | undefined | boolean | number;
4
+ };
5
+ export type DataColumn<R extends DataRow> = {
6
+ [S in keyof R]: {
7
+ key: S;
8
+ title: string;
9
+ Header?: (props: {
10
+ title: string;
11
+ }) => React.ReactElement | null;
12
+ type?: "number" | "date" | "text" | "select" | "checkbox";
13
+ readonly?: boolean;
14
+ validator?: (props: {
15
+ row: R;
16
+ }) => boolean | string;
17
+ list?: string[] | ((props: {
18
+ row: R;
19
+ }) => string[]);
20
+ width: number;
21
+ };
22
+ }[keyof R];
23
+ export interface DataSheetProps<R extends DataRow = DataRow> {
24
+ width: number;
25
+ height: number;
26
+ readonly columns: DataColumn<R>[];
27
+ readonly data: R[];
28
+ readonly onSave?: (data: R[]) => void;
29
+ readonly onDownload?: (data: string[][]) => void;
30
+ }
31
+ export declare const DataSheet: <R extends DataRow>({ data, columns, width, height, onSave, onDownload, }: DataSheetProps<R>) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -1,9 +1,6 @@
1
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
2
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
4
-
5
3
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
6
-
7
4
  import { Controller, DownloadButton } from "./Controller";
8
5
  import { CustomCell } from "./CustomCell";
9
6
  import { VariableSizeGrid as Grid } from "react-window";
@@ -11,28 +8,23 @@ import { InnerElement, InnerElementContext } from "./InnerElement";
11
8
  import { useOnClickOutside } from "./useOnClickOutside";
12
9
  import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
13
10
  import { jsx as ___EmotionJSX } from "@emotion/react";
14
-
15
11
  var paste = /*#__PURE__*/function () {
16
12
  var _ref = _asyncToGenerator(function* () {
17
13
  var text = yield navigator.clipboard.readText();
18
14
  return text;
19
15
  });
20
-
21
16
  return function paste() {
22
17
  return _ref.apply(this, arguments);
23
18
  };
24
19
  }();
25
-
26
20
  var copy = /*#__PURE__*/function () {
27
21
  var _ref2 = _asyncToGenerator(function* (text) {
28
22
  yield navigator.clipboard.writeText(text);
29
23
  });
30
-
31
24
  return function copy(_x) {
32
25
  return _ref2.apply(this, arguments);
33
26
  };
34
27
  }();
35
-
36
28
  export var DataSheet = _ref3 => {
37
29
  var {
38
30
  data,
@@ -97,10 +89,10 @@ export var DataSheet = _ref3 => {
97
89
  });
98
90
  history.current.push(copy);
99
91
  }, [columns, data]);
92
+
100
93
  /**
101
94
  * Select
102
95
  */
103
-
104
96
  var {
105
97
  current: initialSelection
106
98
  } = useRef({
@@ -141,11 +133,8 @@ export var DataSheet = _ref3 => {
141
133
  row: _row,
142
134
  column: _column
143
135
  } = event.currentTarget.dataset;
144
-
145
136
  var _x2 = parseInt(_row, 10);
146
-
147
137
  var _y = parseInt(_column, 10);
148
-
149
138
  setSelection(prev => {
150
139
  if (prev.active === true) return prev;
151
140
  return {
@@ -172,7 +161,6 @@ export var DataSheet = _ref3 => {
172
161
  var y = parseInt(column, 10);
173
162
  setSelection(prev => {
174
163
  if (prev.active === false) return prev;
175
-
176
164
  if (prev.type === "cell") {
177
165
  return _extends({}, prev, {
178
166
  end: {
@@ -181,7 +169,6 @@ export var DataSheet = _ref3 => {
181
169
  }
182
170
  });
183
171
  }
184
-
185
172
  if (prev.type === "column") {
186
173
  return _extends({}, prev, {
187
174
  end: {
@@ -190,7 +177,6 @@ export var DataSheet = _ref3 => {
190
177
  }
191
178
  });
192
179
  }
193
-
194
180
  if (prev.type === "row") {
195
181
  return _extends({}, prev, {
196
182
  end: {
@@ -199,11 +185,10 @@ export var DataSheet = _ref3 => {
199
185
  }
200
186
  });
201
187
  }
202
-
203
188
  return prev;
204
189
  });
205
190
  }, []);
206
- var handleShiftKeyUp = useCallback(event => {
191
+ var handleShiftKeyUp = useCallback(() => {
207
192
  setSelection(prev => _extends({}, prev, {
208
193
  active: false
209
194
  }));
@@ -227,8 +212,8 @@ export var DataSheet = _ref3 => {
227
212
  });
228
213
  }
229
214
  }, [handleShiftKeyUp]);
230
- /** Column */
231
215
 
216
+ /** Column */
232
217
  var handleSelectColumn = useCallback(event => {
233
218
  var {
234
219
  column
@@ -287,8 +272,8 @@ export var DataSheet = _ref3 => {
287
272
  });
288
273
  });
289
274
  }, []);
290
- /** Row */
291
275
 
276
+ /** Row */
292
277
  var handleSelectRow = useCallback(event => {
293
278
  var {
294
279
  row
@@ -347,6 +332,7 @@ export var DataSheet = _ref3 => {
347
332
  });
348
333
  });
349
334
  }, []);
335
+
350
336
  /** All */
351
337
 
352
338
  var handleSelectAll = useCallback(() => {
@@ -383,10 +369,10 @@ export var DataSheet = _ref3 => {
383
369
  var negY = current.x <= start.x && current.x >= end.x;
384
370
  return posX && posY || negX && posY || negX && negY || posX && negY;
385
371
  }, [selection]);
372
+
386
373
  /**
387
374
  * Keycode
388
375
  */
389
-
390
376
  var handleKeyDown = useCallback(event => {
391
377
  switch (event.key) {
392
378
  case "ArrowUp":
@@ -406,7 +392,6 @@ export var DataSheet = _ref3 => {
406
392
  });
407
393
  break;
408
394
  }
409
-
410
395
  case "ArrowRight":
411
396
  setSelection(prev => {
412
397
  if (prev.start.y === columns.length - 1) return prev;
@@ -422,7 +407,6 @@ export var DataSheet = _ref3 => {
422
407
  });
423
408
  });
424
409
  break;
425
-
426
410
  case "ArrowDown":
427
411
  setSelection(prev => {
428
412
  if (prev.start.x === data.length - 1) return prev;
@@ -438,7 +422,6 @@ export var DataSheet = _ref3 => {
438
422
  });
439
423
  });
440
424
  break;
441
-
442
425
  case "ArrowLeft":
443
426
  setSelection(prev => {
444
427
  if (prev.start.y === 0) return prev;
@@ -454,7 +437,6 @@ export var DataSheet = _ref3 => {
454
437
  });
455
438
  });
456
439
  break;
457
-
458
440
  default:
459
441
  break;
460
442
  }
@@ -464,7 +446,6 @@ export var DataSheet = _ref3 => {
464
446
  var _ref5 = _asyncToGenerator(function* () {
465
447
  if (selection.start.x > -1 && selection.start.y > -1) {
466
448
  var text = yield paste();
467
-
468
449
  if (text) {
469
450
  var minX = Math.min(selection.start.x, selection.end.x);
470
451
  var minY = Math.min(selection.start.y, selection.end.y);
@@ -472,7 +453,6 @@ export var DataSheet = _ref3 => {
472
453
  var rowLength = dataToInsert.length;
473
454
  var columnLength = dataToInsert[0].length;
474
455
  var _copy = [...data];
475
-
476
456
  for (var i = 0; i < rowLength; i++) {
477
457
  for (var j = 0; j < columnLength; j++) {
478
458
  var column = columns[minY + j];
@@ -482,33 +462,26 @@ export var DataSheet = _ref3 => {
482
462
  readonly,
483
463
  type
484
464
  } = column;
485
-
486
- if (_key && _copy[minX + i] && !readonly) {
465
+ if (_key !== undefined && _copy[minX + i] !== undefined && !readonly) {
487
466
  var value = dataToInsert[i][j];
488
-
489
467
  if (type === "checkbox") {
490
- // @ts-ignore
491
468
  _copy[minX + i][_key] = value === "false" ? false : value === "true" ? true : value;
492
469
  } else {
493
- // @ts-ignore
494
470
  _copy[minX + i][_key] = value;
495
471
  }
496
472
  }
497
473
  }
498
474
  }
499
-
500
475
  if (onSave) {
501
476
  onSave(_copy);
502
477
  }
503
478
  }
504
479
  }
505
480
  });
506
-
507
481
  return function getClipBoardText() {
508
482
  return _ref5.apply(this, arguments);
509
483
  };
510
484
  }();
511
-
512
485
  document.addEventListener("paste", getClipBoardText, {
513
486
  capture: true
514
487
  });
@@ -531,18 +504,15 @@ export var DataSheet = _ref3 => {
531
504
  return row[key];
532
505
  }).join("\t");
533
506
  }).join("\n");
534
-
535
507
  if (result) {
536
508
  yield copy(result);
537
509
  }
538
510
  }
539
511
  });
540
-
541
512
  return function handleCopy() {
542
513
  return _ref6.apply(this, arguments);
543
514
  };
544
515
  }();
545
-
546
516
  document.addEventListener("copy", handleCopy, {
547
517
  capture: true
548
518
  });
@@ -562,7 +532,7 @@ export var DataSheet = _ref3 => {
562
532
  style: {
563
533
  maxWidth: width
564
534
  }
565
- }, onDownload ? ___EmotionJSX(DownloadButton, {
535
+ }, ___EmotionJSX(DownloadButton, {
566
536
  onClick: () => {
567
537
  var result = [columns.map(column => column.title)].concat(data.map(row => {
568
538
  return columns.map(_ref7 => {
@@ -574,7 +544,7 @@ export var DataSheet = _ref3 => {
574
544
  }));
575
545
  onDownload(result);
576
546
  }
577
- }) : null) : null, ___EmotionJSX(InnerElementContext.Provider, {
547
+ })) : null, ___EmotionJSX(InnerElementContext.Provider, {
578
548
  value: {
579
549
  handleSelectAll,
580
550
  handleSelectColumn,
@@ -583,7 +553,7 @@ export var DataSheet = _ref3 => {
583
553
  handleMouseUpColumn,
584
554
  isSelectColumn,
585
555
  handleKeyDown,
586
- columns
556
+ columns: columns
587
557
  }
588
558
  }, ___EmotionJSX(Grid, {
589
559
  style: {