tntd 3.0.41 → 3.0.42-beta.1

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 (163) hide show
  1. package/es/form/style/index.less +5 -5
  2. package/es/index.js +7 -0
  3. package/es/index.js.map +1 -1
  4. package/es/query-form/Field/Checkbox.js +1 -1
  5. package/es/query-form/Field/Checkbox.js.map +1 -1
  6. package/es/query-form/Field/Composition/FieldPopover.js +361 -0
  7. package/es/query-form/Field/Composition/FieldPopover.js.map +1 -0
  8. package/es/query-form/Field/Composition/FieldPopover.less +35 -0
  9. package/es/query-form/Field/Composition/Select.js +157 -0
  10. package/es/query-form/Field/Composition/Select.js.map +1 -0
  11. package/es/query-form/Field/Composition/SelectInput.js +34 -0
  12. package/es/query-form/Field/Composition/SelectInput.js.map +1 -0
  13. package/es/query-form/Field/Composition/ValueTag.js +162 -0
  14. package/es/query-form/Field/Composition/ValueTag.js.map +1 -0
  15. package/es/query-form/Field/Composition/index.js +337 -0
  16. package/es/query-form/Field/Composition/index.js.map +1 -0
  17. package/es/query-form/Field/Composition/index.less +145 -0
  18. package/es/query-form/Field/Composition/utils.js +169 -0
  19. package/es/query-form/Field/Composition/utils.js.map +1 -0
  20. package/es/query-form/Field/SelectInput.js +21 -6
  21. package/es/query-form/Field/SelectInput.js.map +1 -1
  22. package/es/query-form/Field/fieldsMap.js +2 -2
  23. package/es/query-form/Field/fieldsMap.js.map +1 -1
  24. package/es/query-form/Field/index.js +3 -1
  25. package/es/query-form/Field/index.js.map +1 -1
  26. package/es/query-form/index.js +226 -357
  27. package/es/query-form/index.js.map +1 -1
  28. package/es/query-form/index.less +26 -60
  29. package/es/query-form-v2/index.less +133 -0
  30. package/es/query-list-scene/List.js +16 -3
  31. package/es/query-list-scene/List.js.map +1 -1
  32. package/es/query-list-scene/QueryForm.js +35 -13
  33. package/es/query-list-scene/QueryForm.js.map +1 -1
  34. package/es/query-list-scene/index.js +2 -1
  35. package/es/query-list-scene/index.js.map +1 -1
  36. package/es/scroll-bar/Bar.js +91 -0
  37. package/es/scroll-bar/Bar.js.map +1 -0
  38. package/es/scroll-bar/Context.js +13 -0
  39. package/es/scroll-bar/Context.js.map +1 -0
  40. package/es/scroll-bar/ScrollBar.js +97 -0
  41. package/es/scroll-bar/ScrollBar.js.map +1 -0
  42. package/es/scroll-bar/Thumb.js +125 -0
  43. package/es/scroll-bar/Thumb.js.map +1 -0
  44. package/es/scroll-bar/index.js +10 -0
  45. package/es/scroll-bar/index.js.map +1 -0
  46. package/es/scroll-bar/scrollBar.less +59 -0
  47. package/es/scroll-bar/util.js +39 -0
  48. package/es/scroll-bar/util.js.map +1 -0
  49. package/es/table/hooks/use-column-setting.js.map +1 -1
  50. package/es/table/resizableTable/index.js +34 -5
  51. package/es/table/resizableTable/index.js.map +1 -1
  52. package/es/table/resizableTable/index.less +9 -1
  53. package/es/table/table.js +8 -2
  54. package/es/table/table.js.map +1 -1
  55. package/es/tntd-cascader/rc-cascader/OptionList/Column.js +4 -4
  56. package/es/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -1
  57. package/es/tntd-select/index.js.map +1 -1
  58. package/es/tntd-virtual-tree/index.js +0 -3
  59. package/es/tntd-virtual-tree/index.js.map +1 -1
  60. package/lib/form/style/index.less +5 -5
  61. package/lib/index.d.ts +1 -0
  62. package/lib/index.d.ts.map +1 -1
  63. package/lib/index.js +7 -0
  64. package/lib/index.js.map +1 -1
  65. package/lib/query-form/Field/Checkbox.js +1 -1
  66. package/lib/query-form/Field/Checkbox.js.map +1 -1
  67. package/lib/query-form/Field/Composition/FieldPopover.d.ts +19 -0
  68. package/lib/query-form/Field/Composition/FieldPopover.d.ts.map +1 -0
  69. package/lib/query-form/Field/Composition/FieldPopover.js +457 -0
  70. package/lib/query-form/Field/Composition/FieldPopover.js.map +1 -0
  71. package/lib/query-form/Field/Composition/FieldPopover.less +35 -0
  72. package/lib/query-form/Field/Composition/Select.d.ts +4 -0
  73. package/lib/query-form/Field/Composition/Select.d.ts.map +1 -0
  74. package/lib/query-form/Field/Composition/Select.js +253 -0
  75. package/lib/query-form/Field/Composition/Select.js.map +1 -0
  76. package/lib/query-form/Field/Composition/SelectInput.d.ts +3 -0
  77. package/lib/query-form/Field/Composition/SelectInput.d.ts.map +1 -0
  78. package/lib/query-form/Field/Composition/SelectInput.js +111 -0
  79. package/lib/query-form/Field/Composition/SelectInput.js.map +1 -0
  80. package/lib/query-form/Field/Composition/ValueTag.d.ts +13 -0
  81. package/lib/query-form/Field/Composition/ValueTag.d.ts.map +1 -0
  82. package/lib/query-form/Field/Composition/ValueTag.js +239 -0
  83. package/lib/query-form/Field/Composition/ValueTag.js.map +1 -0
  84. package/lib/query-form/Field/Composition/index.d.ts +15 -0
  85. package/lib/query-form/Field/Composition/index.d.ts.map +1 -0
  86. package/lib/query-form/Field/Composition/index.js +441 -0
  87. package/lib/query-form/Field/Composition/index.js.map +1 -0
  88. package/lib/query-form/Field/Composition/index.less +145 -0
  89. package/lib/query-form/Field/Composition/utils.d.ts +21 -0
  90. package/lib/query-form/Field/Composition/utils.d.ts.map +1 -0
  91. package/lib/query-form/Field/Composition/utils.js +173 -0
  92. package/lib/query-form/Field/Composition/utils.js.map +1 -0
  93. package/lib/query-form/Field/SelectInput.d.ts.map +1 -1
  94. package/lib/query-form/Field/SelectInput.js +21 -6
  95. package/lib/query-form/Field/SelectInput.js.map +1 -1
  96. package/lib/query-form/Field/fieldsMap.d.ts +6 -3
  97. package/lib/query-form/Field/fieldsMap.d.ts.map +1 -1
  98. package/lib/query-form/Field/fieldsMap.js +2 -2
  99. package/lib/query-form/Field/fieldsMap.js.map +1 -1
  100. package/lib/query-form/Field/index.d.ts.map +1 -1
  101. package/lib/query-form/Field/index.js +3 -1
  102. package/lib/query-form/Field/index.js.map +1 -1
  103. package/lib/query-form/index.d.ts +1 -36
  104. package/lib/query-form/index.d.ts.map +1 -1
  105. package/lib/query-form/index.js +262 -397
  106. package/lib/query-form/index.js.map +1 -1
  107. package/lib/query-form/index.less +26 -60
  108. package/lib/query-form-v2/index.less +133 -0
  109. package/lib/query-list-scene/List.d.ts.map +1 -1
  110. package/lib/query-list-scene/List.js +16 -3
  111. package/lib/query-list-scene/List.js.map +1 -1
  112. package/lib/query-list-scene/QueryForm.d.ts +5 -4
  113. package/lib/query-list-scene/QueryForm.d.ts.map +1 -1
  114. package/lib/query-list-scene/QueryForm.js +35 -13
  115. package/lib/query-list-scene/QueryForm.js.map +1 -1
  116. package/lib/query-list-scene/index.d.ts.map +1 -1
  117. package/lib/query-list-scene/index.js +2 -1
  118. package/lib/query-list-scene/index.js.map +1 -1
  119. package/lib/scroll-bar/Bar.d.ts +4 -0
  120. package/lib/scroll-bar/Bar.d.ts.map +1 -0
  121. package/lib/scroll-bar/Bar.js +168 -0
  122. package/lib/scroll-bar/Bar.js.map +1 -0
  123. package/lib/scroll-bar/Context.d.ts +7 -0
  124. package/lib/scroll-bar/Context.d.ts.map +1 -0
  125. package/lib/scroll-bar/Context.js +17 -0
  126. package/lib/scroll-bar/Context.js.map +1 -0
  127. package/lib/scroll-bar/ScrollBar.d.ts +4 -0
  128. package/lib/scroll-bar/ScrollBar.d.ts.map +1 -0
  129. package/lib/scroll-bar/ScrollBar.js +132 -0
  130. package/lib/scroll-bar/ScrollBar.js.map +1 -0
  131. package/lib/scroll-bar/Thumb.d.ts +3 -0
  132. package/lib/scroll-bar/Thumb.d.ts.map +1 -0
  133. package/lib/scroll-bar/Thumb.js +202 -0
  134. package/lib/scroll-bar/Thumb.js.map +1 -0
  135. package/lib/scroll-bar/index.d.ts +3 -0
  136. package/lib/scroll-bar/index.d.ts.map +1 -0
  137. package/lib/scroll-bar/index.js +14 -0
  138. package/lib/scroll-bar/index.js.map +1 -0
  139. package/lib/scroll-bar/scrollBar.less +59 -0
  140. package/lib/scroll-bar/util.d.ts +40 -0
  141. package/lib/scroll-bar/util.d.ts.map +1 -0
  142. package/lib/scroll-bar/util.js +66 -0
  143. package/lib/scroll-bar/util.js.map +1 -0
  144. package/lib/segmented/index.d.ts +1 -1
  145. package/lib/table/hooks/use-column-setting.d.ts +1 -0
  146. package/lib/table/hooks/use-column-setting.d.ts.map +1 -1
  147. package/lib/table/hooks/use-column-setting.js.map +1 -1
  148. package/lib/table/resizableTable/index.d.ts +3 -0
  149. package/lib/table/resizableTable/index.d.ts.map +1 -1
  150. package/lib/table/resizableTable/index.js +34 -5
  151. package/lib/table/resizableTable/index.js.map +1 -1
  152. package/lib/table/resizableTable/index.less +9 -1
  153. package/lib/table/table.d.ts.map +1 -1
  154. package/lib/table/table.js +8 -2
  155. package/lib/table/table.js.map +1 -1
  156. package/lib/tntd-cascader/rc-cascader/OptionList/Column.d.ts.map +1 -1
  157. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js +4 -4
  158. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -1
  159. package/lib/tntd-select/index.d.ts.map +1 -1
  160. package/lib/tntd-select/index.js.map +1 -1
  161. package/lib/tntd-virtual-tree/index.js +0 -3
  162. package/lib/tntd-virtual-tree/index.js.map +1 -1
  163. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"QueryForm.js","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Form from '../query-form'\n\nconst clsPrefix = 'tnt-querylistscene-queryform'\n\nexport default class QueryForm extends React.PureComponent {\n constructor(props) {\n super(props)\n const { actions, form } = props\n\n this.form = form || Form.createForm()\n\n actions.on('setFormData', this.setFormData)\n actions.on('resetFormData', this.resetFormData)\n }\n\n render() {\n const { className, actions, extraActions, extralActions, qlsProps, ...props } = this.props\n\n return (\n <Form\n {...props}\n form={this.form}\n className={classnames(clsPrefix, className)}\n // 前期拼写错误,导致需要兼容错误的api\n extraActions={extraActions || extralActions}\n onChange={this.onChange}\n onSearch={this.onSearch}\n onReset={this.onReset}\n />\n )\n }\n\n componentDidMount() {\n const { initialValues = {}, actions, qlsProps, memory } = this.props\n\n if (qlsProps.memory || memory) {\n actions.setFormData(\n {\n ...initialValues,\n ...actions.getFormData(),\n },\n false\n )\n } else {\n actions.setData('formData', initialValues)\n }\n }\n\n onSearch = (searchObj) => {\n const { onSearch, actions } = this.props\n const values = actions.getFormData()\n const params = { ...values, ...(searchObj || {}), current: 1 }\n\n // memory 与 url解析setForm时 监听事件异步\n actions.setData('formData', values)\n Promise.resolve().then(() => {\n onSearch && onSearch(params)\n actions.emit('search', params)\n })\n }\n\n onReset = () => {\n const { initialValues, onReset, actions } = this.props\n\n actions.setFormData(initialValues, false)\n\n onReset?.(initialValues)\n this.onSearch()\n }\n\n onChange = (newValues, changedInfo, ...rest) => {\n const { onChange, actions } = this.props\n\n actions.setFormData(newValues, false)\n onChange?.(newValues, changedInfo, ...rest)\n }\n\n setFormData = (data, needSearch) => {\n const { actions } = this.props\n actions.setData('formData', data)\n this.form.setValues(data)\n needSearch && this.onSearch()\n }\n\n resetFormData = (needSearch) => {\n const { initialValues, actions } = this.props\n\n actions.setFormData(initialValues, needSearch)\n this.form.resetValues()\n }\n\n componentWillUnmount() {\n const { actions } = this.props\n\n actions.removeListener('setFormData', this.setFormData)\n actions.removeListener('resetFormData', this.resetFormData)\n }\n}\n\nQueryForm.Field = Form.Field\n"]}
1
+ {"version":3,"file":"QueryForm.js","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":"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","sourcesContent":["import classnames from 'classnames'\nimport React from 'react'\n// import Form from '../query-form'\nimport Form from '../query-form'\nimport Field from '../query-form/Field'\n\nconst clsPrefix = 'tnt-querylistscene-queryform'\n\nclass QueryForm extends React.PureComponent {\n constructor(props) {\n super(props)\n const { actions, form } = props\n\n this.form = form || Form.createForm()\n\n actions.on('setFormData', this.setFormData)\n actions.on('resetFormData', this.resetFormData)\n }\n\n render() {\n const { className, actions, extraActions, extralActions, qlsProps, onChange, ...props } =\n this.props\n\n return (\n <Form\n {...props}\n form={this.form}\n className={classnames(clsPrefix, className)}\n // 前期拼写错误,导致需要兼容错误的api\n extraActions={extraActions || extralActions}\n hasOnChange={!!onChange}\n onChange={this.onChange}\n onSearch={this.onSearch}\n onReset={this.onReset}\n />\n )\n }\n\n componentDidMount() {\n const { initialValues = {}, actions, qlsProps, memory } = this.props\n\n if (qlsProps.memory || memory) {\n const formData = {\n ...initialValues,\n ...actions.getFormData(),\n }\n actions.setData('formData', formData)\n if (Object.keys(formData).length > 0) {\n // setTimeout(() => {\n // 回写Composition\n this.form.setValues(formData)\n // }, 100)\n }\n } else {\n actions.setData('formData', initialValues)\n }\n }\n\n onSearch = (searchObj, isDelete) => {\n const { onSearch, actions } = this.props\n if (isDelete) {\n // 如果是删除-》直接搜索\n actions.setFormData({ ...searchObj, current: 1 })\n return\n }\n const values = actions.getFormData()\n const params = { ...values, ...(searchObj || {}), current: 1 }\n\n // memory 与 url解析setForm时 监听事件异步\n actions.setData('formData', { ...values, ...(searchObj || {}) }) // 可能有错误,应该是合并的数据\n Promise.resolve().then(() => {\n onSearch && onSearch(params)\n actions.emit('search', params)\n })\n }\n\n onReset = () => {\n const { initialValues = {}, onReset, actions } = this.props\n\n const resetValues = {\n ...initialValues,\n pageSize: initialValues.pageSize || 10, // Set default pageSize if not provided\n }\n\n actions.setFormData(resetValues, false)\n\n onReset?.(initialValues)\n this.onSearch()\n }\n\n onChange = (newValues, changedInfo) => {\n const { onChange, actions } = this.props\n\n actions.setFormData(newValues, false)\n onChange?.(newValues, changedInfo)\n }\n\n setFormData = (data, needSearch) => {\n const { actions } = this.props\n actions.setData('formData', data)\n this.form.setValues(data)\n needSearch && this.onSearch()\n }\n\n resetFormData = (needSearch) => {\n const { initialValues, actions } = this.props\n\n actions.setFormData(initialValues, needSearch)\n this.form.resetValues()\n }\n\n componentWillUnmount() {\n const { actions } = this.props\n\n actions.removeListener('setFormData', this.setFormData)\n actions.removeListener('resetFormData', this.resetFormData)\n }\n}\n\nQueryForm.Field = Field\n\nexport default QueryForm\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/query-list-scene/index.js"],"names":[],"mappings":"AASA,oCAA6B;AAC7B,oCAA6B;AAC7B;;;;;;;;;;;;;;;;EAAoC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/query-list-scene/index.js"],"names":[],"mappings":"AAUA,oCAA6B;AAC7B,oCAA6B;AAC7B;;;;;;;;;;;;;;;;EAAoC"}
@@ -11,6 +11,7 @@ var _Toolbar = _interopRequireDefault(require("./Toolbar"));
11
11
  var _List = _interopRequireDefault(require("./List"));
12
12
  var _createActions = _interopRequireDefault(require("./createActions"));
13
13
  var _useActions = _interopRequireDefault(require("./useActions"));
14
+ var _Field = _interopRequireDefault(require("../query-form/Field"));
14
15
  require("./index.less");
15
16
  function _interopRequireDefault(e) {
16
17
  return e && e.__esModule ? e : {
@@ -24,7 +25,7 @@ _QueryListScene["default"].Title = _Title["default"];
24
25
  _QueryListScene["default"].QueryForm = _QueryForm["default"];
25
26
  _QueryListScene["default"].Toolbar = _Toolbar["default"];
26
27
  _QueryListScene["default"].QueryList = _List["default"];
27
- _QueryListScene["default"].Field = _QueryForm["default"].Field;
28
+ _QueryListScene["default"].Field = _Field["default"];
28
29
  _QueryListScene["default"].useActions = _useActions["default"];
29
30
  _QueryListScene["default"].createActions = createActions;
30
31
  var _default = exports["default"] = _QueryListScene["default"];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query-list-scene/index.js"],"names":[],"mappings":";;;;;;AAAA,sEAA6C;AAC7C,oDAA2B;AAC3B,4DAA8B;AAC9B,wDAA+B;AAC/B,kDAAyB;AACzB,oEAAqC;AACrC,8DAAqC;AACrC,wBAAqB;AAER,QAAA,SAAS,GAAG,mBAAI,CAAA;AAChB,QAAA,SAAS,GAAG,cAAI,CAAA;AAChB,QAAA,aAAa,GAAG,uBAAO,CAAA;AAEpC,wBAAc,CAAC,KAAK,GAAG,eAAK,CAAA;AAC5B,wBAAc,CAAC,SAAS,GAAG,mBAAI,CAAA;AAC/B,wBAAc,CAAC,OAAO,GAAG,iBAAO,CAAA;AAChC,wBAAc,CAAC,SAAS,GAAG,cAAI,CAAA;AAC/B,wBAAc,CAAC,KAAK,GAAG,mBAAI,CAAC,KAAK,CAAA;AAEjC,wBAAc,CAAC,UAAU,GAAG,oBAAU,CAAA;AACtC,wBAAc,CAAC,aAAa,GAAG,qBAAa,CAAA;AAE5C,kBAAe,wBAAc,CAAA","sourcesContent":["import QueryListScene from './QueryListScene'\nimport Title from './Title'\nimport Form from './QueryForm'\nimport Toolbar from './Toolbar'\nimport List from './List'\nimport Actions from './createActions'\nimport useActions from './useActions'\nimport './index.less'\n\nexport const QueryForm = Form\nexport const QueryList = List\nexport const createActions = Actions\n\nQueryListScene.Title = Title\nQueryListScene.QueryForm = Form\nQueryListScene.Toolbar = Toolbar\nQueryListScene.QueryList = List\nQueryListScene.Field = Form.Field\n\nQueryListScene.useActions = useActions\nQueryListScene.createActions = createActions\n\nexport default QueryListScene\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query-list-scene/index.js"],"names":[],"mappings":";;;;;;AAAA,sEAA6C;AAC7C,oDAA2B;AAC3B,4DAA8B;AAC9B,wDAA+B;AAC/B,kDAAyB;AACzB,oEAAqC;AACrC,8DAAqC;AACrC,gEAAwC;AACxC,wBAAqB;AAER,QAAA,SAAS,GAAG,mBAAI,CAAA;AAChB,QAAA,SAAS,GAAG,cAAI,CAAA;AAChB,QAAA,aAAa,GAAG,uBAAO,CAAA;AAEpC,wBAAc,CAAC,KAAK,GAAG,eAAK,CAAA;AAC5B,wBAAc,CAAC,SAAS,GAAG,mBAAI,CAAA;AAC/B,wBAAc,CAAC,OAAO,GAAG,iBAAO,CAAA;AAChC,wBAAc,CAAC,SAAS,GAAG,cAAI,CAAA;AAC/B,wBAAc,CAAC,KAAK,GAAG,eAAK,CAAA;AAE5B,wBAAc,CAAC,UAAU,GAAG,oBAAU,CAAA;AACtC,wBAAc,CAAC,aAAa,GAAG,qBAAa,CAAA;AAE5C,kBAAe,wBAAc,CAAA","sourcesContent":["import QueryListScene from './QueryListScene'\nimport Title from './Title'\nimport Form from './QueryForm'\nimport Toolbar from './Toolbar'\nimport List from './List'\nimport Actions from './createActions'\nimport useActions from './useActions'\nimport Field from '../query-form/Field';\nimport './index.less'\n\nexport const QueryForm = Form\nexport const QueryList = List\nexport const createActions = Actions\n\nQueryListScene.Title = Title\nQueryListScene.QueryForm = Form\nQueryListScene.Toolbar = Toolbar\nQueryListScene.QueryList = List\nQueryListScene.Field = Field\n\nQueryListScene.useActions = useActions\nQueryListScene.createActions = createActions\n\nexport default QueryListScene\n"]}
@@ -0,0 +1,4 @@
1
+ declare var _default: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
2
+ export default _default;
3
+ import React from "react";
4
+ //# sourceMappingURL=Bar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Bar.d.ts","sourceRoot":"","sources":["../../src/scroll-bar/Bar.js"],"names":[],"mappings":""}
@@ -0,0 +1,168 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) {
4
+ "@babel/helpers - typeof";
5
+
6
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
7
+ return typeof o;
8
+ } : function (o) {
9
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
10
+ }, _typeof(o);
11
+ }
12
+ Object.defineProperty(exports, "__esModule", {
13
+ value: true
14
+ });
15
+ exports["default"] = void 0;
16
+ var _react = _interopRequireWildcard(require("react"));
17
+ var _Context = _interopRequireDefault(require("./Context"));
18
+ var _Thumb = _interopRequireDefault(require("./Thumb"));
19
+ var _util = require("./util");
20
+ function _interopRequireDefault(e) {
21
+ return e && e.__esModule ? e : {
22
+ "default": e
23
+ };
24
+ }
25
+ function _getRequireWildcardCache(e) {
26
+ if ("function" != typeof WeakMap) return null;
27
+ var r = new WeakMap(),
28
+ t = new WeakMap();
29
+ return (_getRequireWildcardCache = function _getRequireWildcardCache(e) {
30
+ return e ? t : r;
31
+ })(e);
32
+ }
33
+ function _interopRequireWildcard(e, r) {
34
+ if (!r && e && e.__esModule) return e;
35
+ if (null === e || "object" != _typeof(e) && "function" != typeof e) return {
36
+ "default": e
37
+ };
38
+ var t = _getRequireWildcardCache(r);
39
+ if (t && t.has(e)) return t.get(e);
40
+ var n = {
41
+ __proto__: null
42
+ },
43
+ a = Object.defineProperty && Object.getOwnPropertyDescriptor;
44
+ for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) {
45
+ var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
46
+ i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
47
+ }
48
+ return n["default"] = e, t && t.set(e, n), n;
49
+ }
50
+ function _slicedToArray(r, e) {
51
+ return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
52
+ }
53
+ function _nonIterableRest() {
54
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
55
+ }
56
+ function _unsupportedIterableToArray(r, a) {
57
+ if (r) {
58
+ if ("string" == typeof r) return _arrayLikeToArray(r, a);
59
+ var t = {}.toString.call(r).slice(8, -1);
60
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
61
+ }
62
+ }
63
+ function _arrayLikeToArray(r, a) {
64
+ (null == a || a > r.length) && (a = r.length);
65
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
66
+ return n;
67
+ }
68
+ function _iterableToArrayLimit(r, l) {
69
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
70
+ if (null != t) {
71
+ var e,
72
+ n,
73
+ i,
74
+ u,
75
+ a = [],
76
+ f = !0,
77
+ o = !1;
78
+ try {
79
+ if (i = (t = t.call(r)).next, 0 === l) {
80
+ if (Object(t) !== t) return;
81
+ f = !1;
82
+ } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
83
+ } catch (r) {
84
+ o = !0, n = r;
85
+ } finally {
86
+ try {
87
+ if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
88
+ } finally {
89
+ if (o) throw n;
90
+ }
91
+ }
92
+ return a;
93
+ }
94
+ }
95
+ function _arrayWithHoles(r) {
96
+ if (Array.isArray(r)) return r;
97
+ }
98
+ var _default = exports["default"] = (0, _react.forwardRef)(function (props, ref) {
99
+ var _useContext = (0, _react.useContext)(_Context["default"]),
100
+ wrapElement = _useContext.wrapElement;
101
+ var _useState = (0, _react.useState)(0),
102
+ _useState2 = _slicedToArray(_useState, 2),
103
+ moveX = _useState2[0],
104
+ setMoveX = _useState2[1];
105
+ var _useState3 = (0, _react.useState)(0),
106
+ _useState4 = _slicedToArray(_useState3, 2),
107
+ moveY = _useState4[0],
108
+ setMoveY = _useState4[1];
109
+ var _useState5 = (0, _react.useState)(0),
110
+ _useState6 = _slicedToArray(_useState5, 2),
111
+ sizeWidth = _useState6[0],
112
+ setSizeWidth = _useState6[1];
113
+ var _useState7 = (0, _react.useState)(0),
114
+ _useState8 = _slicedToArray(_useState7, 2),
115
+ sizeHeight = _useState8[0],
116
+ setSizeHeight = _useState8[1];
117
+ var _useState9 = (0, _react.useState)(1),
118
+ _useState10 = _slicedToArray(_useState9, 2),
119
+ ratioX = _useState10[0],
120
+ setRatioX = _useState10[1];
121
+ var _useState11 = (0, _react.useState)(1),
122
+ _useState12 = _slicedToArray(_useState11, 2),
123
+ ratioY = _useState12[0],
124
+ setRatioY = _useState12[1];
125
+ (0, _react.useImperativeHandle)(ref, function () {
126
+ return {
127
+ update: update,
128
+ handleScroll: handleScroll
129
+ };
130
+ });
131
+ function handleScroll() {
132
+ var wrap = wrapElement.current;
133
+ if (!wrap) return;
134
+ var offsetHeight = wrap.offsetHeight - _util.GAP;
135
+ var offsetWidth = wrap.offsetWidth - _util.GAP;
136
+ setMoveY(wrap.scrollTop * 100 / offsetHeight * ratioY);
137
+ setMoveX(wrap.scrollLeft * 100 / offsetWidth * ratioX);
138
+ }
139
+ function update() {
140
+ var wrap = wrapElement.current;
141
+ if (!wrap) return;
142
+ // 滚动窗口的高度
143
+ var offsetHeight = wrap.offsetHeight - _util.GAP;
144
+ var offsetWidth = wrap.offsetWidth - _util.GAP;
145
+ // 滚动条的逻辑高度
146
+ var originalHeight = Math.pow(offsetHeight, 2) / wrap.scrollHeight;
147
+ var originalWidth = Math.pow(offsetWidth, 2) / wrap.scrollWidth;
148
+ // 滚动条的实际高度,因为如果内容太长会导致滚动条非常短,可能难以点击拖拽,所以设置了最小高度
149
+ var height = Math.max(originalHeight, props.minSize);
150
+ var width = Math.max(originalWidth, props.minSize);
151
+ setRatioY(originalHeight / (offsetHeight - originalHeight) / (height / (offsetHeight - height)));
152
+ setRatioX(originalWidth / (offsetWidth - originalWidth) / (width / (offsetWidth - width)));
153
+ setSizeHeight(height + _util.GAP < offsetHeight ? height : 0);
154
+ setSizeWidth(width + _util.GAP < offsetWidth ? width : 0);
155
+ }
156
+ return _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_Thumb["default"], {
157
+ always: props.always,
158
+ move: moveX,
159
+ size: sizeWidth,
160
+ ratio: ratioX
161
+ }), _react["default"].createElement(_Thumb["default"], {
162
+ always: props.always,
163
+ move: moveY,
164
+ size: sizeHeight,
165
+ ratio: ratioY,
166
+ vertical: true
167
+ }));
168
+ });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Bar.js","sourceRoot":"","sources":["../../src/scroll-bar/Bar.js"],"names":[],"mappings":"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","sourcesContent":["import React, { forwardRef, useContext, useImperativeHandle, useState } from 'react'\nimport Context from './Context'\nimport Thumb from './Thumb'\nimport { GAP } from './util'\n\nexport default forwardRef((props, ref) => {\n const { wrapElement } = useContext(Context)\n\n const [moveX, setMoveX] = useState(0)\n const [moveY, setMoveY] = useState(0)\n const [sizeWidth, setSizeWidth] = useState(0)\n const [sizeHeight, setSizeHeight] = useState(0)\n const [ratioX, setRatioX] = useState(1)\n const [ratioY, setRatioY] = useState(1)\n\n useImperativeHandle(ref, () => ({\n update,\n handleScroll,\n }))\n\n function handleScroll() {\n const wrap = wrapElement.current\n if (!wrap) return\n const offsetHeight = wrap.offsetHeight - GAP\n const offsetWidth = wrap.offsetWidth - GAP\n setMoveY(((wrap.scrollTop * 100) / offsetHeight) * ratioY)\n setMoveX(((wrap.scrollLeft * 100) / offsetWidth) * ratioX)\n }\n\n function update() {\n const wrap = wrapElement.current\n if (!wrap) return\n // 滚动窗口的高度\n const offsetHeight = wrap.offsetHeight - GAP\n const offsetWidth = wrap.offsetWidth - GAP\n // 滚动条的逻辑高度\n const originalHeight = offsetHeight ** 2 / wrap.scrollHeight\n const originalWidth = offsetWidth ** 2 / wrap.scrollWidth\n // 滚动条的实际高度,因为如果内容太长会导致滚动条非常短,可能难以点击拖拽,所以设置了最小高度\n const height = Math.max(originalHeight, props.minSize)\n const width = Math.max(originalWidth, props.minSize)\n\n setRatioY(originalHeight / (offsetHeight - originalHeight) / (height / (offsetHeight - height)))\n setRatioX(originalWidth / (offsetWidth - originalWidth) / (width / (offsetWidth - width)))\n setSizeHeight(height + GAP < offsetHeight ? height : 0)\n setSizeWidth(width + GAP < offsetWidth ? width : 0)\n }\n\n return (\n <>\n <Thumb always={props.always} move={moveX} size={sizeWidth} ratio={ratioX} />\n <Thumb always={props.always} move={moveY} size={sizeHeight} ratio={ratioY} vertical />\n </>\n )\n})\n"]}
@@ -0,0 +1,7 @@
1
+ export default Context;
2
+ declare const Context: React.Context<{
3
+ scrollbarElement: null;
4
+ wrapElement: null;
5
+ }>;
6
+ import React from "react";
7
+ //# sourceMappingURL=Context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../src/scroll-bar/Context.js"],"names":[],"mappings":";AAEA;;;GAGE"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ function _interopRequireDefault(e) {
9
+ return e && e.__esModule ? e : {
10
+ "default": e
11
+ };
12
+ }
13
+ var Context = _react["default"].createContext({
14
+ scrollbarElement: null,
15
+ wrapElement: null
16
+ });
17
+ var _default = exports["default"] = Context;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../src/scroll-bar/Context.js"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AAEzB,MAAM,OAAO,GAAG,eAAK,CAAC,aAAa,CAAC;IAClC,gBAAgB,EAAE,IAAI;IACtB,WAAW,EAAE,IAAI;CAClB,CAAC,CAAA;AAEF,kBAAe,OAAO,CAAA","sourcesContent":["import React from 'react'\n\nconst Context = React.createContext({\n scrollbarElement: null,\n wrapElement: null,\n})\n\nexport default Context\n"]}
@@ -0,0 +1,4 @@
1
+ declare var _default: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
2
+ export default _default;
3
+ import React from "react";
4
+ //# sourceMappingURL=ScrollBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScrollBar.d.ts","sourceRoot":"","sources":["../../src/scroll-bar/ScrollBar.js"],"names":[],"mappings":""}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) {
4
+ "@babel/helpers - typeof";
5
+
6
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
7
+ return typeof o;
8
+ } : function (o) {
9
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
10
+ }, _typeof(o);
11
+ }
12
+ Object.defineProperty(exports, "__esModule", {
13
+ value: true
14
+ });
15
+ exports["default"] = void 0;
16
+ var _classnames = _interopRequireDefault(require("classnames"));
17
+ var _react = _interopRequireWildcard(require("react"));
18
+ var _Bar = _interopRequireDefault(require("./Bar"));
19
+ var _Context = _interopRequireDefault(require("./Context"));
20
+ function _getRequireWildcardCache(e) {
21
+ if ("function" != typeof WeakMap) return null;
22
+ var r = new WeakMap(),
23
+ t = new WeakMap();
24
+ return (_getRequireWildcardCache = function _getRequireWildcardCache(e) {
25
+ return e ? t : r;
26
+ })(e);
27
+ }
28
+ function _interopRequireWildcard(e, r) {
29
+ if (!r && e && e.__esModule) return e;
30
+ if (null === e || "object" != _typeof(e) && "function" != typeof e) return {
31
+ "default": e
32
+ };
33
+ var t = _getRequireWildcardCache(r);
34
+ if (t && t.has(e)) return t.get(e);
35
+ var n = {
36
+ __proto__: null
37
+ },
38
+ a = Object.defineProperty && Object.getOwnPropertyDescriptor;
39
+ for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) {
40
+ var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
41
+ i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
42
+ }
43
+ return n["default"] = e, t && t.set(e, n), n;
44
+ }
45
+ function _interopRequireDefault(e) {
46
+ return e && e.__esModule ? e : {
47
+ "default": e
48
+ };
49
+ }
50
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
51
+ var t = {};
52
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
53
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
55
+ }
56
+ return t;
57
+ };
58
+ var _default = exports["default"] = (0, _react.forwardRef)(function (_a, ref) {
59
+ var children = _a.children,
60
+ _a$minSize = _a.minSize,
61
+ minSize = _a$minSize === void 0 ? 20 : _a$minSize,
62
+ props = __rest(_a, ["children", "minSize"]);
63
+ var scrollbarElement = (0, _react.useRef)();
64
+ var wrapElement = (0, _react.useRef)();
65
+ wrapElement = ref || wrapElement;
66
+ var resizeRef = (0, _react.useRef)();
67
+ var barRef = (0, _react.useRef)();
68
+ (0, _react.useEffect)(function () {
69
+ var wrapDom = wrapElement.current;
70
+ var resizeDom = resizeRef.current;
71
+ // 监听容器尺寸变化,因为尺寸可以设置类似height:100vh之类样式,高度并不是固定的
72
+ var observerCallback = function observerCallback() {
73
+ return requestAnimationFrame(function () {
74
+ var _a;
75
+ update();
76
+ (_a = barRef.current) === null || _a === void 0 ? void 0 : _a.handleScroll();
77
+ });
78
+ };
79
+ var observer = new ResizeObserver(observerCallback);
80
+ observer.observe(wrapDom);
81
+ observer.observe(resizeDom);
82
+ return function () {
83
+ observer.unobserve(wrapDom);
84
+ observer.unobserve(resizeDom);
85
+ };
86
+ }, []);
87
+ (0, _react.useEffect)(function () {
88
+ var _a;
89
+ if (!props["native"]) {
90
+ update();
91
+ (_a = barRef.current) === null || _a === void 0 ? void 0 : _a.handleScroll();
92
+ }
93
+ }, [props["native"]]);
94
+ function update() {
95
+ var _a;
96
+ (_a = barRef.current) === null || _a === void 0 ? void 0 : _a.update();
97
+ }
98
+ function handleScroll(e) {
99
+ var _a, _b;
100
+ (_a = barRef.current) === null || _a === void 0 ? void 0 : _a.handleScroll();
101
+ (_b = props.onScroll) === null || _b === void 0 ? void 0 : _b.call(props, e);
102
+ }
103
+ var wrapStyle = {
104
+ height: props.height,
105
+ maxHeight: props.maxHeight
106
+ };
107
+ var wrapClassName = (0, _classnames["default"])('tntd-scroll-bar-wrap', {
108
+ 'tntd-scroll-bar-wrap-hidden-default': !props["native"]
109
+ });
110
+ return _react["default"].createElement(_Context["default"].Provider, {
111
+ value: {
112
+ scrollbarElement: scrollbarElement,
113
+ wrapElement: wrapElement
114
+ }
115
+ }, _react["default"].createElement("div", {
116
+ style: props.style,
117
+ className: (0, _classnames["default"])('tntd-scroll-bar', props.className),
118
+ ref: scrollbarElement
119
+ }, _react["default"].createElement("div", {
120
+ style: wrapStyle,
121
+ className: wrapClassName,
122
+ ref: wrapElement,
123
+ onScroll: handleScroll
124
+ }, _react["default"].createElement("div", {
125
+ className: "tntd-scroll-bar-view",
126
+ ref: resizeRef
127
+ }, children)), !props["native"] && _react["default"].createElement(_Bar["default"], {
128
+ ref: barRef,
129
+ always: props.always,
130
+ minSize: minSize
131
+ })));
132
+ });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScrollBar.js","sourceRoot":"","sources":["../../src/scroll-bar/ScrollBar.js"],"names":[],"mappings":"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","sourcesContent":["import clsx from 'classnames'\nimport React, { forwardRef, useEffect, useRef } from 'react'\nimport Bar from './Bar'\nimport Context from './Context'\n\nexport default forwardRef(({ children, minSize = 20, ...props }, ref) => {\n const scrollbarElement = useRef()\n let wrapElement = useRef()\n wrapElement = ref || wrapElement\n const resizeRef = useRef()\n const barRef = useRef()\n\n useEffect(() => {\n const wrapDom = wrapElement.current\n const resizeDom = resizeRef.current\n // 监听容器尺寸变化,因为尺寸可以设置类似height:100vh之类样式,高度并不是固定的\n const observerCallback = () =>\n requestAnimationFrame(() => {\n update()\n barRef.current?.handleScroll()\n })\n const observer = new ResizeObserver(observerCallback)\n observer.observe(wrapDom)\n observer.observe(resizeDom)\n return () => {\n observer.unobserve(wrapDom)\n observer.unobserve(resizeDom)\n }\n }, [])\n useEffect(() => {\n if (!props.native) {\n update()\n barRef.current?.handleScroll()\n }\n }, [props.native])\n\n function update() {\n barRef.current?.update()\n }\n\n function handleScroll(e) {\n barRef.current?.handleScroll()\n props.onScroll?.(e)\n }\n\n const wrapStyle = { height: props.height, maxHeight: props.maxHeight }\n const wrapClassName = clsx('tntd-scroll-bar-wrap', {\n 'tntd-scroll-bar-wrap-hidden-default': !props.native,\n })\n\n return (\n <Context.Provider value={{ scrollbarElement, wrapElement }}>\n <div\n style={props.style}\n className={clsx('tntd-scroll-bar', props.className)}\n ref={scrollbarElement}\n >\n <div style={wrapStyle} className={wrapClassName} ref={wrapElement} onScroll={handleScroll}>\n <div className=\"tntd-scroll-bar-view\" ref={resizeRef}>\n {children}\n </div>\n </div>\n {!props.native && <Bar ref={barRef} always={props.always} minSize={minSize} />}\n </div>\n </Context.Provider>\n )\n})\n"]}
@@ -0,0 +1,3 @@
1
+ export default function Thumb(props: any): React.JSX.Element;
2
+ import React from "react";
3
+ //# sourceMappingURL=Thumb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Thumb.d.ts","sourceRoot":"","sources":["../../src/scroll-bar/Thumb.js"],"names":[],"mappings":"AAKA,6DA6HC"}
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) {
4
+ "@babel/helpers - typeof";
5
+
6
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
7
+ return typeof o;
8
+ } : function (o) {
9
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
10
+ }, _typeof(o);
11
+ }
12
+ Object.defineProperty(exports, "__esModule", {
13
+ value: true
14
+ });
15
+ exports["default"] = Thumb;
16
+ var _classnames = _interopRequireDefault(require("classnames"));
17
+ var _react = _interopRequireWildcard(require("react"));
18
+ var _Context = _interopRequireDefault(require("./Context"));
19
+ var _util = require("./util");
20
+ function _getRequireWildcardCache(e) {
21
+ if ("function" != typeof WeakMap) return null;
22
+ var r = new WeakMap(),
23
+ t = new WeakMap();
24
+ return (_getRequireWildcardCache = function _getRequireWildcardCache(e) {
25
+ return e ? t : r;
26
+ })(e);
27
+ }
28
+ function _interopRequireWildcard(e, r) {
29
+ if (!r && e && e.__esModule) return e;
30
+ if (null === e || "object" != _typeof(e) && "function" != typeof e) return {
31
+ "default": e
32
+ };
33
+ var t = _getRequireWildcardCache(r);
34
+ if (t && t.has(e)) return t.get(e);
35
+ var n = {
36
+ __proto__: null
37
+ },
38
+ a = Object.defineProperty && Object.getOwnPropertyDescriptor;
39
+ for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) {
40
+ var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
41
+ i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
42
+ }
43
+ return n["default"] = e, t && t.set(e, n), n;
44
+ }
45
+ function _interopRequireDefault(e) {
46
+ return e && e.__esModule ? e : {
47
+ "default": e
48
+ };
49
+ }
50
+ function _slicedToArray(r, e) {
51
+ return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
52
+ }
53
+ function _nonIterableRest() {
54
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
55
+ }
56
+ function _unsupportedIterableToArray(r, a) {
57
+ if (r) {
58
+ if ("string" == typeof r) return _arrayLikeToArray(r, a);
59
+ var t = {}.toString.call(r).slice(8, -1);
60
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
61
+ }
62
+ }
63
+ function _arrayLikeToArray(r, a) {
64
+ (null == a || a > r.length) && (a = r.length);
65
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
66
+ return n;
67
+ }
68
+ function _iterableToArrayLimit(r, l) {
69
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
70
+ if (null != t) {
71
+ var e,
72
+ n,
73
+ i,
74
+ u,
75
+ a = [],
76
+ f = !0,
77
+ o = !1;
78
+ try {
79
+ if (i = (t = t.call(r)).next, 0 === l) {
80
+ if (Object(t) !== t) return;
81
+ f = !1;
82
+ } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
83
+ } catch (r) {
84
+ o = !0, n = r;
85
+ } finally {
86
+ try {
87
+ if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
88
+ } finally {
89
+ if (o) throw n;
90
+ }
91
+ }
92
+ return a;
93
+ }
94
+ }
95
+ function _arrayWithHoles(r) {
96
+ if (Array.isArray(r)) return r;
97
+ }
98
+ function Thumb(props) {
99
+ var _useContext = (0, _react.useContext)(_Context["default"]),
100
+ scrollbarElement = _useContext.scrollbarElement,
101
+ wrapElement = _useContext.wrapElement;
102
+ var instance = (0, _react.useRef)();
103
+ var thumb = (0, _react.useRef)();
104
+ var _useState = (0, _react.useState)(false),
105
+ _useState2 = _slicedToArray(_useState, 2),
106
+ visible = _useState2[0],
107
+ setVisible = _useState2[1];
108
+ // 当作非响应式变量使用
109
+ var thumbState = (0, _react.useRef)({});
110
+ var cursorDown = (0, _react.useRef)(false);
111
+ var cursorLeave = (0, _react.useRef)(false);
112
+ var originalOnSelectStart = (0, _react.useRef)(document.onselectstart);
113
+ var bar = _util.BAR_MAP[props.vertical ? 'vertical' : 'horizontal'];
114
+ (0, _react.useEffect)(function () {
115
+ var element = scrollbarElement.current;
116
+ element.addEventListener('mousemove', mouseMoveScrollbarHandler);
117
+ element.addEventListener('mouseleave', mouseLeaveScrollbarHandler);
118
+ return function () {
119
+ restoreOnselectstart();
120
+ document.removeEventListener('mouseup', mouseUpDocumentHandler);
121
+ element.removeEventListener('mousemove', mouseMoveScrollbarHandler);
122
+ element.removeEventListener('mouseleave', mouseLeaveScrollbarHandler);
123
+ };
124
+ }, []);
125
+ function mouseMoveScrollbarHandler() {
126
+ cursorLeave.current = false;
127
+ setVisible(true);
128
+ }
129
+ function mouseLeaveScrollbarHandler() {
130
+ cursorLeave.current = true;
131
+ setVisible(cursorDown.current);
132
+ }
133
+ function getOffsetRatio() {
134
+ return Math.pow(instance.current[bar.offset], 2) / wrapElement.current[bar.scrollSize] / props.ratio / thumb.current[bar.offset];
135
+ }
136
+ function clickTrackHandler(e) {
137
+ if (!thumb.current || !instance.current || !wrapElement.current) return;
138
+ // 鼠标点击的坐标距离顶端的距离
139
+ var offset = Math.abs(e.target.getBoundingClientRect()[bar.direction] - e[bar.client]);
140
+ var thumbHalf = thumb.current[bar.offset] / 2;
141
+ var thumbPositionPercentage = (offset - thumbHalf) * 100 * getOffsetRatio() / instance.current[bar.offset];
142
+ // 直接给scrollTop赋值,就会调用bar组件的handleScroll函数
143
+ wrapElement.current[bar.scroll] = thumbPositionPercentage * wrapElement.current[bar.scrollSize] / 100;
144
+ }
145
+ function clickThumbHandler(e) {
146
+ var _a;
147
+ e.stopPropagation();
148
+ if (e.ctrlKey || [1, 2].includes(e.button)) return;
149
+ (_a = window.getSelection()) === null || _a === void 0 ? void 0 : _a.removeAllRanges();
150
+ startDrag(e);
151
+ var el = e.currentTarget;
152
+ if (!el) return;
153
+ thumbState.current[bar.axis] = el[bar.offset] - (e[bar.client] - el.getBoundingClientRect()[bar.direction]);
154
+ }
155
+ function startDrag(e) {
156
+ e.persist();
157
+ cursorDown.current = true;
158
+ document.addEventListener('mousemove', mouseMoveDocumentHandler);
159
+ document.addEventListener('mouseup', mouseUpDocumentHandler);
160
+ originalOnSelectStart.current = document.onselectstart;
161
+ document.onselectstart = function () {
162
+ return false;
163
+ };
164
+ }
165
+ function mouseMoveDocumentHandler(e) {
166
+ if (!instance.current || !thumb.current) return;
167
+ if (cursorDown.current === false) return;
168
+ var prevPage = thumbState.current[bar.axis];
169
+ if (!prevPage) return;
170
+ var offset = (instance.current.getBoundingClientRect()[bar.direction] - e[bar.client]) * -1;
171
+ var thumbClickPosition = thumb.current[bar.offset] - prevPage;
172
+ var thumbPositionPercentage = (offset - thumbClickPosition) * 100 * getOffsetRatio() / instance.current[bar.offset];
173
+ wrapElement.current[bar.scroll] = thumbPositionPercentage * wrapElement.current[bar.scrollSize] / 100;
174
+ }
175
+ function mouseUpDocumentHandler() {
176
+ cursorDown.current = false;
177
+ thumbState.current[bar.axis] = 0;
178
+ document.removeEventListener('mousemove', mouseMoveDocumentHandler);
179
+ document.removeEventListener('mouseup', mouseUpDocumentHandler);
180
+ restoreOnselectstart();
181
+ if (cursorLeave.current) setVisible(false);
182
+ }
183
+ function restoreOnselectstart() {
184
+ if (document.onselectstart !== originalOnSelectStart.current) document.onselectstart = originalOnSelectStart.current;
185
+ }
186
+ var thumbStyle = (0, _util.renderThumbStyle)({
187
+ size: props.size,
188
+ move: props.move,
189
+ bar: bar
190
+ });
191
+ return _react["default"].createElement("div", {
192
+ hidden: !(props.always || visible),
193
+ className: (0, _classnames["default"])('tntd-scroll-bar-bar', bar.key),
194
+ ref: instance,
195
+ onMouseDown: clickTrackHandler
196
+ }, _react["default"].createElement("div", {
197
+ className: "tntd-scroll-bar-thumb",
198
+ style: thumbStyle,
199
+ ref: thumb,
200
+ onMouseDown: clickThumbHandler
201
+ }));
202
+ }