@pisell/materials 6.2.24 → 6.2.25

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 (194) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +7 -7
  6. package/build/lowcode/preview.js +146 -146
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +36 -27
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +41 -32
  11. package/es/components/DragSortList/index.js +6 -6
  12. package/es/components/classicLayout/index.js +4 -5
  13. package/es/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +1 -1
  14. package/es/components/dataSourceComponents/fields/Upload/utils.d.ts +1 -1
  15. package/es/components/dataSourceComponents/fields/index.d.ts +8 -8
  16. package/es/components/icon/index.js +5 -5
  17. package/es/components/iconfont/index.js +1 -1
  18. package/es/components/list/index.js +6 -6
  19. package/es/components/pisellAdjustPrice/index.d.ts +1 -6
  20. package/es/components/pisellAdjustPrice/index.js +64 -8
  21. package/es/components/pisellAdjustPrice/index.less +35 -6
  22. package/es/components/pisellAdjustPrice/status.js +32 -0
  23. package/es/components/pisellAdjustPrice/type.js +1 -0
  24. package/es/components/pisellToast/index.js +3 -0
  25. package/es/components/productCard/cartSkuCard/components/basicInfo/index.d.ts +21 -0
  26. package/es/components/productCard/cartSkuCard/components/basicInfo/index.js +61 -0
  27. package/es/components/productCard/cartSkuCard/components/basicInfo/index.less +98 -0
  28. package/es/components/productCard/cartSkuCard/components/discountReason/index.d.ts +2 -0
  29. package/es/components/productCard/cartSkuCard/components/discountReason/index.js +51 -0
  30. package/es/components/productCard/cartSkuCard/components/holders/index.d.ts +3 -0
  31. package/es/components/productCard/cartSkuCard/components/holders/index.js +32 -0
  32. package/es/components/productCard/cartSkuCard/components/holders/index.less +32 -0
  33. package/es/components/productCard/cartSkuCard/components/packages/index.d.ts +10 -0
  34. package/es/components/productCard/cartSkuCard/components/packages/index.js +52 -0
  35. package/es/components/productCard/cartSkuCard/components/packages/index.less +22 -0
  36. package/es/components/productCard/cartSkuCard/components/packages/utils.d.ts +20 -0
  37. package/es/components/productCard/cartSkuCard/components/packages/utils.js +40 -0
  38. package/es/components/productCard/cartSkuCard/components/resources/index.d.ts +3 -0
  39. package/es/components/productCard/cartSkuCard/components/resources/index.js +44 -0
  40. package/es/components/productCard/cartSkuCard/components/resources/index.less +20 -0
  41. package/es/components/productCard/cartSkuCard/components/sales/index.d.ts +11 -0
  42. package/es/components/productCard/cartSkuCard/components/sales/index.js +55 -0
  43. package/es/components/productCard/cartSkuCard/components/sales/index.less +22 -0
  44. package/es/components/productCard/cartSkuCard/components/specs/index.d.ts +3 -0
  45. package/es/components/productCard/cartSkuCard/components/specs/index.js +43 -0
  46. package/es/components/productCard/cartSkuCard/components/specs/index.less +28 -0
  47. package/es/components/productCard/cartSkuCard/components/timeRange/index.d.ts +6 -0
  48. package/es/components/productCard/cartSkuCard/components/timeRange/index.js +53 -0
  49. package/es/components/productCard/cartSkuCard/components/timeRange/index.less +37 -0
  50. package/es/components/productCard/cartSkuCard/index.d.ts +8 -0
  51. package/es/components/productCard/cartSkuCard/index.js +195 -0
  52. package/es/components/productCard/cartSkuCard/index.less +69 -0
  53. package/es/components/productCard/cartSkuCard/locales.js +30 -0
  54. package/es/components/productCard/components/Header/index.js +4 -3
  55. package/es/components/productCard/components/Sales/index.js +2 -2
  56. package/es/components/productCard/index.d.ts +3 -1
  57. package/es/components/productCard/index.js +2 -0
  58. package/es/components/qrcode/index.js +1 -1
  59. package/es/components/sort/components/InlineMenu/index.js +1 -1
  60. package/es/components/table/Actions/component/ButtonIcon/index.js +5 -5
  61. package/es/components/table/Actions/component/ViewMode/index.js +1 -1
  62. package/es/components/table/Gallery/components/GalleryItem/components/RenderFields/index.js +4 -5
  63. package/es/components/table/Header/Buttons/index.js +5 -5
  64. package/es/components/table/Table/AddFieldModal/index.js +6 -6
  65. package/es/components/table/Table/SelectField/index.js +4 -4
  66. package/es/components/table/Table/fields/date/Edit/index.js +1 -1
  67. package/es/components/table/Table/fields/link/Edit/index.js +5 -5
  68. package/es/components/table/Table/fields/rangePicker/filterUtil/index.js +1 -1
  69. package/es/components/table/Table/fields/search/filterUtil/index.js +0 -1
  70. package/es/components/table/Table/fields/text/Show/index.js +4 -4
  71. package/es/components/table/Table/fields/text/filterUtil/index.js +0 -1
  72. package/es/components/table/Table/tableConfig/SortRow/index.js +2 -2
  73. package/es/components/table/Table/tableConfig/body/CellContent/index.js +3 -3
  74. package/es/components/table/Table/tableConfig/body/CellProvider/index.js +8 -8
  75. package/es/components/table/Table/utils.d.ts +1 -1
  76. package/es/components/table/hooks/useMergeColumnSetting.js +1 -2
  77. package/es/components/table/hooks/useTransDataSourceGroupSetting.js +5 -5
  78. package/es/components/table/hooks/useTransFilterSetting.js +5 -5
  79. package/es/components/translation/utils.js +5 -5
  80. package/es/components/virtual-keyboard/Amount/index.d.ts +3 -20
  81. package/es/components/virtual-keyboard/Amount/index.js +79 -7
  82. package/es/components/virtual-keyboard/Amount/index.less +39 -0
  83. package/es/components/virtual-keyboard/Amount/themeConfig.js +32 -0
  84. package/es/components/virtual-keyboard/Amount/types.d.ts +44 -0
  85. package/es/components/virtual-keyboard/Amount/types.js +1 -0
  86. package/es/components/virtual-keyboard/BaseNumberKeyboard/index.d.ts +3 -1
  87. package/es/components/virtual-keyboard/BaseNumberKeyboard/index.js +38 -10
  88. package/es/components/virtual-keyboard/Keyboard/index.js +2 -2
  89. package/es/components/virtual-keyboard/Number/index.d.ts +3 -11
  90. package/es/components/virtual-keyboard/Number/index.js +77 -7
  91. package/es/components/virtual-keyboard/Number/index.less +39 -0
  92. package/es/components/virtual-keyboard/Number/themeConfig.js +32 -0
  93. package/es/components/virtual-keyboard/Number/types.js +1 -0
  94. package/es/components/virtual-keyboard/VirtualKeyInput/index.js +10 -3
  95. package/es/components/virtual-keyboard/index.d.ts +11 -0
  96. package/es/components/virtual-keyboard/index.js +88 -3
  97. package/es/components/virtual-keyboard/index.less +33 -1
  98. package/es/hooks/useResponsive.js +2 -2
  99. package/es/utils/hoc.js +1 -1
  100. package/es/utils/miniRedux.js +8 -9
  101. package/lib/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +1 -1
  102. package/lib/components/dataSourceComponents/fields/Upload/utils.d.ts +1 -1
  103. package/lib/components/dataSourceComponents/fields/index.d.ts +8 -8
  104. package/lib/components/iconfont/index.js +1 -1
  105. package/lib/components/lowCodePage/index.js +1 -2
  106. package/lib/components/pisellAdjustPrice/index.d.ts +1 -6
  107. package/lib/components/pisellAdjustPrice/index.js +119 -57
  108. package/lib/components/pisellAdjustPrice/index.less +35 -6
  109. package/lib/components/pisellAdjustPrice/status.js +60 -0
  110. package/lib/components/pisellAdjustPrice/type.js +17 -0
  111. package/lib/components/pisellToast/index.js +3 -0
  112. package/lib/components/productCard/cartSkuCard/components/basicInfo/index.d.ts +21 -0
  113. package/lib/components/productCard/cartSkuCard/components/basicInfo/index.js +71 -0
  114. package/lib/components/productCard/cartSkuCard/components/basicInfo/index.less +98 -0
  115. package/lib/components/productCard/cartSkuCard/components/discountReason/index.d.ts +2 -0
  116. package/lib/components/productCard/cartSkuCard/components/discountReason/index.js +70 -0
  117. package/lib/components/productCard/cartSkuCard/components/holders/index.d.ts +3 -0
  118. package/lib/components/productCard/cartSkuCard/components/holders/index.js +52 -0
  119. package/lib/components/productCard/cartSkuCard/components/holders/index.less +32 -0
  120. package/lib/components/productCard/cartSkuCard/components/packages/index.d.ts +10 -0
  121. package/lib/components/productCard/cartSkuCard/components/packages/index.js +73 -0
  122. package/lib/components/productCard/cartSkuCard/components/packages/index.less +22 -0
  123. package/lib/components/productCard/cartSkuCard/components/packages/utils.d.ts +20 -0
  124. package/lib/components/productCard/cartSkuCard/components/packages/utils.js +44 -0
  125. package/lib/components/productCard/cartSkuCard/components/resources/index.d.ts +3 -0
  126. package/lib/components/productCard/cartSkuCard/components/resources/index.js +73 -0
  127. package/lib/components/productCard/cartSkuCard/components/resources/index.less +20 -0
  128. package/lib/components/productCard/cartSkuCard/components/sales/index.d.ts +11 -0
  129. package/lib/components/productCard/cartSkuCard/components/sales/index.js +76 -0
  130. package/lib/components/productCard/cartSkuCard/components/sales/index.less +22 -0
  131. package/lib/components/productCard/cartSkuCard/components/specs/index.d.ts +3 -0
  132. package/lib/components/productCard/cartSkuCard/components/specs/index.js +65 -0
  133. package/lib/components/productCard/cartSkuCard/components/specs/index.less +28 -0
  134. package/lib/components/productCard/cartSkuCard/components/timeRange/index.d.ts +6 -0
  135. package/lib/components/productCard/cartSkuCard/components/timeRange/index.js +67 -0
  136. package/lib/components/productCard/cartSkuCard/components/timeRange/index.less +37 -0
  137. package/lib/components/productCard/cartSkuCard/index.d.ts +8 -0
  138. package/lib/components/productCard/cartSkuCard/index.js +216 -0
  139. package/lib/components/productCard/cartSkuCard/index.less +69 -0
  140. package/lib/components/productCard/cartSkuCard/locales.js +61 -0
  141. package/lib/components/productCard/components/Header/index.js +4 -3
  142. package/lib/components/productCard/components/Sales/index.js +2 -2
  143. package/lib/components/productCard/index.d.ts +3 -1
  144. package/lib/components/productCard/index.js +2 -0
  145. package/lib/components/table/Table/fields/date/filterUtil/index.js +3 -6
  146. package/lib/components/table/Table/fields/rangePicker/filterUtil/index.js +4 -8
  147. package/lib/components/table/Table/fields/utils/index.js +1 -2
  148. package/lib/components/table/Table/utils.d.ts +1 -1
  149. package/lib/components/virtual-keyboard/Amount/index.d.ts +3 -20
  150. package/lib/components/virtual-keyboard/Amount/index.js +72 -16
  151. package/lib/components/virtual-keyboard/Amount/index.less +39 -0
  152. package/lib/components/virtual-keyboard/Amount/themeConfig.js +60 -0
  153. package/lib/components/virtual-keyboard/Amount/types.d.ts +44 -0
  154. package/lib/components/virtual-keyboard/Amount/types.js +17 -0
  155. package/lib/components/virtual-keyboard/BaseNumberKeyboard/index.d.ts +3 -1
  156. package/lib/components/virtual-keyboard/BaseNumberKeyboard/index.js +31 -8
  157. package/lib/components/virtual-keyboard/Keyboard/index.js +2 -1
  158. package/lib/components/virtual-keyboard/Number/index.d.ts +3 -11
  159. package/lib/components/virtual-keyboard/Number/index.js +65 -11
  160. package/lib/components/virtual-keyboard/Number/index.less +39 -0
  161. package/lib/components/virtual-keyboard/Number/themeConfig.js +60 -0
  162. package/lib/components/virtual-keyboard/Number/types.js +17 -0
  163. package/lib/components/virtual-keyboard/VirtualKeyInput/index.js +34 -20
  164. package/lib/components/virtual-keyboard/index.d.ts +11 -0
  165. package/lib/components/virtual-keyboard/index.js +60 -2
  166. package/lib/components/virtual-keyboard/index.less +33 -1
  167. package/lib/hooks/useResponsive.js +3 -6
  168. package/lowcode/_setters/antd-icon-setter/index.tsx +3 -2
  169. package/lowcode/pisell-adjust-price/meta.ts +168 -0
  170. package/lowcode/pisell-adjust-price/snippets.ts +1 -0
  171. package/lowcode/pisell-number-keyboard/meta.ts +167 -0
  172. package/lowcode/pisell-price-keyboard/meta.ts +167 -0
  173. package/lowcode/virtual-keyboard/meta.ts +131 -0
  174. package/package.json +1 -1
  175. package/dist/umd/materials.min.css +0 -1
  176. package/dist/umd/materials.min.js +0 -1
  177. package/dist/umd/static/DotsSix.57d66266.svg +0 -1
  178. package/dist/umd/static/arrow-left.e542294f.svg +0 -1
  179. package/dist/umd/static/arrow-right.763f03e0.svg +0 -1
  180. package/dist/umd/static/filter-lines.04a54ae9.svg +0 -1
  181. package/dist/umd/static/help-circle.31c9be40.svg +0 -1
  182. package/dist/umd/static/switch-vertical-01.7ebe3ba8.svg +0 -1
  183. package/es/components/iconfont/index.d.ts +0 -8
  184. package/es/components/productCard/locales.d.ts +0 -84
  185. package/es/components/productCard/status.d.ts +0 -32
  186. package/es/components/productCard/types.d.ts +0 -84
  187. package/es/components/virtual-keyboard/Keyboard/index.d.ts +0 -21
  188. package/es/components/virtual-keyboard/VirtualKeyInput/index.d.ts +0 -11
  189. package/lib/components/iconfont/index.d.ts +0 -8
  190. package/lib/components/productCard/locales.d.ts +0 -84
  191. package/lib/components/productCard/status.d.ts +0 -32
  192. package/lib/components/productCard/types.d.ts +0 -84
  193. package/lib/components/virtual-keyboard/Keyboard/index.d.ts +0 -21
  194. package/lib/components/virtual-keyboard/VirtualKeyInput/index.d.ts +0 -11
@@ -0,0 +1,39 @@
1
+ .pisell-amount-keyboard-wrap {
2
+ background-color: var(--pisell-amount-background-color, #ffffff);
3
+
4
+ &.pisell-amount-keyboard-dark {
5
+ background-color: var(--pisell-amount-background-color, rgba(0, 0, 0, 0.70));
6
+ }
7
+
8
+ &.pisell-amount-keyboard-light {
9
+ background-color: var(--pisell-amount-background-color, #ffffff);
10
+ }
11
+
12
+ .pisell-virtual-keyboard-input {
13
+ background-color: var(--pisell-amount-container-background-color, #d0d5dd);
14
+ color: var(--pisell-amount-text-color, #000000);
15
+ }
16
+
17
+ .pisell-keyboard {
18
+ background-color: var(--pisell-amount-keyboard-background-color, #f9f9f9);
19
+
20
+ .pisell-keyboard-item {
21
+ background-color: var(--pisell-amount-keyboard-button-background-color, #ffffff);
22
+ color: var(--pisell-amount-keyboard-button-text-color, #000000);
23
+
24
+ &:hover {
25
+ background-color: var(--pisell-amount-keyboard-button-hover-color, #f5f5f5);
26
+ }
27
+ }
28
+
29
+ .pisell-keyboard-reset-button {
30
+ background-color: var(--pisell-amount-reset-button-background-color, #ffffff);
31
+ color: var(--pisell-amount-reset-button-text-color, #d92d20);
32
+ }
33
+
34
+ .pisell-keyboard-done-button {
35
+ background-color: var(--pisell-amount-done-button-background-color, #4ca30d);
36
+ color: var(--pisell-amount-done-button-text-color, #ffffff);
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,32 @@
1
+ export var amountThemeConfig = {
2
+ dark: {
3
+ backgroundColor: 'rgba(0, 0, 0, 0.70)',
4
+ containerBackgroundColor: 'rgba(0, 0, 0, 0.40)',
5
+ buttonBackgroundColor: '#ffffff',
6
+ textColor: '#000000',
7
+ resetButtonBackgroundColor: '#ffffff',
8
+ resetButtonTextColor: '#d92d20',
9
+ isDoneButtonFollowTheme: true,
10
+ doneButtonBackgroundColor: '#4ca30d',
11
+ doneButtonTextColor: '#ffffff',
12
+ keyboardBackgroundColor: 'rgba(0, 0, 0, 0.40)',
13
+ keyboardButtonBackgroundColor: '#ffffff',
14
+ keyboardButtonTextColor: '#000000',
15
+ keyboardButtonHoverColor: '#f5f5f5'
16
+ },
17
+ light: {
18
+ backgroundColor: '#ffffff',
19
+ containerBackgroundColor: '#d0d5dd',
20
+ buttonBackgroundColor: '#ffffff',
21
+ textColor: '#000000',
22
+ resetButtonBackgroundColor: '#ffffff',
23
+ resetButtonTextColor: '#d92d20',
24
+ isDoneButtonFollowTheme: true,
25
+ doneButtonBackgroundColor: '#4ca30d',
26
+ doneButtonTextColor: '#ffffff',
27
+ keyboardBackgroundColor: '#f9f9f9',
28
+ keyboardButtonBackgroundColor: '#ffffff',
29
+ keyboardButtonTextColor: '#000000',
30
+ keyboardButtonHoverColor: '#f5f5f5'
31
+ }
32
+ };
@@ -0,0 +1,44 @@
1
+ /// <reference types="react" />
2
+ import { BaseNumberKeyboardProps } from '../BaseNumberKeyboard';
3
+ export interface RightItemsStyleProps {
4
+ buttonBackgroundColor?: string;
5
+ textColor?: string;
6
+ resetButtonBackgroundColor?: string;
7
+ resetButtonTextColor?: string;
8
+ isDoneButtonFollowTheme?: boolean;
9
+ doneButtonBackgroundColor?: string;
10
+ doneButtonTextColor?: string;
11
+ }
12
+ export interface AmountProps {
13
+ max?: number;
14
+ min?: number;
15
+ doneText?: string;
16
+ resetText?: string;
17
+ defaultValue?: string | number;
18
+ placeholder?: string;
19
+ amountProps?: {
20
+ showCurrencySymbol: boolean;
21
+ useThousandsSeparator: boolean;
22
+ };
23
+ presets?: BaseNumberKeyboardProps['presets'];
24
+ value?: string | number;
25
+ onChange?: (val: string | number) => void;
26
+ onEnter?: (val: string | number) => void;
27
+ defaultSelect?: boolean;
28
+ inputFormat?: (_v: string) => React.ReactNode | null;
29
+ rightItemsStyle?: RightItemsStyleProps;
30
+ selectType?: 'light' | 'dark';
31
+ backgroundColor?: string;
32
+ containerBackgroundColor?: string;
33
+ buttonBackgroundColor?: string;
34
+ textColor?: string;
35
+ resetButtonBackgroundColor?: string;
36
+ resetButtonTextColor?: string;
37
+ isDoneButtonFollowTheme?: boolean;
38
+ doneButtonBackgroundColor?: string;
39
+ doneButtonTextColor?: string;
40
+ keyboardBackgroundColor?: string;
41
+ keyboardButtonBackgroundColor?: string;
42
+ keyboardButtonTextColor?: string;
43
+ keyboardButtonHoverColor?: string;
44
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- import { PresetsProps } from "./Presets";
2
+ import { PresetsProps } from './Presets';
3
+ import { RightItemsStyleProps } from '../Amount';
3
4
  import './index.less';
4
5
  export interface BaseNumberKeyboardProps {
5
6
  placeholder?: string;
@@ -14,6 +15,7 @@ export interface BaseNumberKeyboardProps {
14
15
  min?: number;
15
16
  presets?: PresetsProps['presets'];
16
17
  defaultSelect?: boolean;
18
+ rightItemsStyle?: RightItemsStyleProps;
17
19
  }
18
20
  declare const BaseNumberKeyboard: (props: BaseNumberKeyboardProps) => JSX.Element;
19
21
  export default BaseNumberKeyboard;
@@ -1,3 +1,9 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
1
7
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
8
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
9
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
@@ -86,7 +92,8 @@ var BaseNumberKeyboard = function BaseNumberKeyboard(props) {
86
92
  min = props.min,
87
93
  onEnter = props.onEnter,
88
94
  presets = props.presets,
89
- defaultSelect = props.defaultSelect;
95
+ defaultSelect = props.defaultSelect,
96
+ rightItemsStyle = props.rightItemsStyle;
90
97
  var _useControllableValue = useControllableValue(props, {
91
98
  defaultValue: defaultValue
92
99
  }),
@@ -107,7 +114,11 @@ var BaseNumberKeyboard = function BaseNumberKeyboard(props) {
107
114
  className: "virtual-keyboard-input-delete-icon"
108
115
  }),
109
116
  disabled: false,
110
- type: 'text'
117
+ type: 'text',
118
+ style: {
119
+ color: (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.textColor) || '#000000',
120
+ backgroundColor: (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.buttonBackgroundColor) || '#ffffff'
121
+ }
111
122
  }, {
112
123
  value: 'reset',
113
124
  label: resetText || 'Reset',
@@ -115,7 +126,8 @@ var BaseNumberKeyboard = function BaseNumberKeyboard(props) {
115
126
  type: 'text',
116
127
  style: {
117
128
  fontSize: '18px',
118
- color: '#D92D20'
129
+ color: (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.resetButtonTextColor) || '#D92D20',
130
+ backgroundColor: (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.resetButtonBackgroundColor) || '#ffffff'
119
131
  }
120
132
  }, {
121
133
  value: 'done',
@@ -125,11 +137,23 @@ var BaseNumberKeyboard = function BaseNumberKeyboard(props) {
125
137
  size: 2,
126
138
  style: {
127
139
  fontSize: '18px',
128
- background: 'var(--Green-light-600, #4CA30D)',
129
- color: '#fff'
140
+ background: rightItemsStyle !== null && rightItemsStyle !== void 0 && rightItemsStyle.isDoneButtonFollowTheme ? 'var(--theme-color)' : (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.doneButtonBackgroundColor) || '#5d3f9f',
141
+ color: rightItemsStyle !== null && rightItemsStyle !== void 0 && rightItemsStyle.isDoneButtonFollowTheme ? '#ffffff' : (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.doneButtonTextColor) || '#ffffff'
130
142
  }
131
143
  }];
132
- }, [doneText, resetText]);
144
+ }, [doneText, resetText, rightItemsStyle]);
145
+
146
+ // 给每个item增加背景色
147
+ var itemsWithStyle = useMemo(function () {
148
+ return items.map(function (item) {
149
+ return _objectSpread(_objectSpread({}, item), {}, {
150
+ style: {
151
+ backgroundColor: (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.buttonBackgroundColor) || '#fff',
152
+ color: (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.textColor) || '#000000'
153
+ }
154
+ });
155
+ });
156
+ }, [items, rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.buttonBackgroundColor, rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.textColor]);
133
157
  var checkValue = function checkValue(val) {
134
158
  // 超过最大值时使用最大值
135
159
  if (isNumber(max) && Number(val) > max) {
@@ -161,11 +185,11 @@ var BaseNumberKeyboard = function BaseNumberKeyboard(props) {
161
185
  },
162
186
  delete: function _delete() {
163
187
  // 选中时删除全部 否则删除最后一位
164
- handleChangeValue(select ? '' : "".concat(value || "").slice(0, -1));
188
+ handleChangeValue(select ? '' : "".concat(value || '').slice(0, -1));
165
189
  },
166
190
  reset: function reset() {
167
191
  // 重置到默认值
168
- handleChangeValue("".concat(defaultValue || "") || '');
192
+ handleChangeValue("".concat(defaultValue || '') || '');
169
193
  },
170
194
  done: function done() {
171
195
  onEnter === null || onEnter === void 0 || onEnter(value);
@@ -200,12 +224,16 @@ var BaseNumberKeyboard = function BaseNumberKeyboard(props) {
200
224
  },
201
225
  showDelete: false,
202
226
  onValueSelect: setSelect,
203
- defaultSelect: defaultSelect
227
+ defaultSelect: defaultSelect,
228
+ style: {
229
+ backgroundColor: (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.buttonBackgroundColor) || '#fff',
230
+ color: (rightItemsStyle === null || rightItemsStyle === void 0 ? void 0 : rightItemsStyle.textColor) || '#000000'
231
+ }
204
232
  }), /*#__PURE__*/React.createElement(Presets, {
205
233
  presets: presets,
206
234
  onChange: handleChangeValue
207
235
  }), /*#__PURE__*/React.createElement(Keyboard, {
208
- items: items,
236
+ items: itemsWithStyle,
209
237
  rightItems: rightItems,
210
238
  onChange: handleKeyboardChange
211
239
  }));
@@ -89,10 +89,10 @@ var Keyboard = function Keyboard(props) {
89
89
  key: item.value,
90
90
  type: item.type,
91
91
  className: "virtual-keyboard-item-button",
92
- style: {
92
+ style: _objectSpread({
93
93
  fontSize: ((_item$style2 = item.style) === null || _item$style2 === void 0 ? void 0 : _item$style2.fontSize) || 25,
94
94
  color: item.type === 'primary' ? '#fff' : ((_item$style3 = item.style) === null || _item$style3 === void 0 ? void 0 : _item$style3.color) || undefined
95
- },
95
+ }, item.type === 'primary' ? item.style || {} : {}),
96
96
  disabled: item.disabled,
97
97
  onClick: function onClick(e) {
98
98
  onChange === null || onChange === void 0 || onChange(item.value);
@@ -1,13 +1,5 @@
1
- export interface NumberProps {
2
- max?: number;
3
- min?: number;
4
- doneText?: string;
5
- resetText: string;
6
- defaultValue?: string | number;
7
- placeholder?: string;
8
- value?: string | number;
9
- onChange?: (val: string | number) => void;
10
- onEnter?: (val: string | number) => void;
11
- }
1
+ import { NumberProps } from './types';
2
+ import './index.less';
3
+ export type { NumberProps };
12
4
  declare const Number: (props: NumberProps) => JSX.Element;
13
5
  export default Number;
@@ -1,27 +1,88 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ var _excluded = ["min", "max", "doneText", "resetText", "defaultValue", "placeholder", "onEnter", "selectType"];
3
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
1
8
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
9
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
10
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
11
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
12
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
13
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
- import React from 'react';
14
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
15
+ 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; }
16
+ import React, { useEffect, useMemo } from 'react';
8
17
  import { useControllableValue } from 'ahooks';
18
+ import classNames from 'classnames';
19
+ import { setTheme } from '@pisell/utils';
9
20
  import BaseNumberKeyboard from "../BaseNumberKeyboard";
10
- var Number = function Number(props) {
21
+ import usePisellConfig from "../../pisell-config-provider/hooks/usePisellConfig";
22
+ import { numberThemeConfig } from "./themeConfig";
23
+ import "./index.less";
24
+ var _Number = function _Number(props) {
11
25
  var min = props.min,
12
26
  max = props.max,
13
27
  doneText = props.doneText,
14
28
  resetText = props.resetText,
15
29
  defaultValue = props.defaultValue,
16
30
  placeholder = props.placeholder,
17
- onEnter = props.onEnter;
31
+ onEnter = props.onEnter,
32
+ _props$selectType = props.selectType,
33
+ selectType = _props$selectType === void 0 ? 'light' : _props$selectType,
34
+ others = _objectWithoutProperties(props, _excluded);
35
+ var config = usePisellConfig();
18
36
  var _useControllableValue = useControllableValue(props, {
19
37
  defaultValue: defaultValue || ""
20
38
  }),
21
39
  _useControllableValue2 = _slicedToArray(_useControllableValue, 2),
22
40
  value = _useControllableValue2[0],
23
41
  setValue = _useControllableValue2[1];
24
- return /*#__PURE__*/React.createElement(BaseNumberKeyboard, {
42
+ useEffect(function () {
43
+ document.body.id = 'body';
44
+ }, []);
45
+
46
+ /**
47
+ * 配置颜色
48
+ * 根据 props 和 selectType 生成最终的配置颜色
49
+ */
50
+ var configColor = useMemo(function () {
51
+ var currentConfig = numberThemeConfig[selectType];
52
+
53
+ // 过滤出有效的 props 并合并到默认配置中
54
+ var validProps = Object.entries(props).reduce(function (acc, _ref) {
55
+ var _ref2 = _slicedToArray(_ref, 2),
56
+ key = _ref2[0],
57
+ value = _ref2[1];
58
+ if (value !== undefined && key in currentConfig) {
59
+ acc[key] = value;
60
+ }
61
+ return acc;
62
+ }, {});
63
+ return _objectSpread(_objectSpread({}, currentConfig), validProps);
64
+ }, [selectType, props]);
65
+ useEffect(function () {
66
+ setTheme({
67
+ '--pisell-number-background-color': configColor.backgroundColor,
68
+ '--pisell-number-container-background-color': configColor.containerBackgroundColor,
69
+ '--pisell-number-text-color': configColor.textColor,
70
+ '--pisell-number-keyboard-background-color': configColor.keyboardBackgroundColor,
71
+ '--pisell-number-keyboard-button-background-color': configColor.keyboardButtonBackgroundColor,
72
+ '--pisell-number-keyboard-button-text-color': configColor.keyboardButtonTextColor,
73
+ '--pisell-number-keyboard-button-hover-color': configColor.keyboardButtonHoverColor,
74
+ '--pisell-number-reset-button-background-color': configColor.resetButtonBackgroundColor,
75
+ '--pisell-number-reset-button-text-color': configColor.resetButtonTextColor,
76
+ '--pisell-number-done-button-background-color': configColor.doneButtonBackgroundColor,
77
+ '--pisell-number-done-button-text-color': configColor.doneButtonTextColor
78
+ });
79
+ }, [configColor]);
80
+ return /*#__PURE__*/React.createElement("div", {
81
+ className: classNames('pisell-number-keyboard-wrap', {
82
+ 'pisell-number-keyboard-dark': selectType === 'dark',
83
+ 'pisell-number-keyboard-light': selectType === 'light'
84
+ })
85
+ }, /*#__PURE__*/React.createElement(BaseNumberKeyboard, {
25
86
  max: max,
26
87
  min: min,
27
88
  value: value,
@@ -29,7 +90,16 @@ var Number = function Number(props) {
29
90
  placeholder: placeholder,
30
91
  doneText: doneText,
31
92
  resetText: resetText,
32
- onEnter: onEnter
33
- });
93
+ onEnter: onEnter,
94
+ rightItemsStyle: {
95
+ buttonBackgroundColor: configColor.buttonBackgroundColor,
96
+ textColor: configColor.textColor,
97
+ resetButtonBackgroundColor: configColor.resetButtonBackgroundColor,
98
+ resetButtonTextColor: configColor.resetButtonTextColor,
99
+ isDoneButtonFollowTheme: configColor.isDoneButtonFollowTheme,
100
+ doneButtonBackgroundColor: configColor.doneButtonBackgroundColor,
101
+ doneButtonTextColor: configColor.doneButtonTextColor
102
+ }
103
+ }));
34
104
  };
35
- export default Number;
105
+ export default _Number;
@@ -0,0 +1,39 @@
1
+ .pisell-number-keyboard-wrap {
2
+ background-color: var(--pisell-number-background-color, #ffffff);
3
+
4
+ &.pisell-number-keyboard-dark {
5
+ background-color: var(--pisell-number-background-color, rgba(0, 0, 0, 0.70));
6
+ }
7
+
8
+ &.pisell-number-keyboard-light {
9
+ background-color: var(--pisell-number-background-color, #ffffff);
10
+ }
11
+
12
+ .pisell-virtual-keyboard-input {
13
+ background-color: var(--pisell-number-container-background-color, #d0d5dd);
14
+ color: var(--pisell-number-text-color, #000000);
15
+ }
16
+
17
+ .pisell-keyboard {
18
+ background-color: var(--pisell-number-keyboard-background-color, #f9f9f9);
19
+
20
+ .pisell-keyboard-item {
21
+ background-color: var(--pisell-number-keyboard-button-background-color, #ffffff);
22
+ color: var(--pisell-number-keyboard-button-text-color, #000000);
23
+
24
+ &:hover {
25
+ background-color: var(--pisell-number-keyboard-button-hover-color, #f5f5f5);
26
+ }
27
+ }
28
+
29
+ .pisell-keyboard-reset-button {
30
+ background-color: var(--pisell-number-reset-button-background-color, #ffffff);
31
+ color: var(--pisell-number-reset-button-text-color, #d92d20);
32
+ }
33
+
34
+ .pisell-keyboard-done-button {
35
+ background-color: var(--pisell-number-done-button-background-color, #4ca30d);
36
+ color: var(--pisell-number-done-button-text-color, #ffffff);
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,32 @@
1
+ export var numberThemeConfig = {
2
+ dark: {
3
+ backgroundColor: 'rgba(0, 0, 0, 0.70)',
4
+ containerBackgroundColor: 'rgba(0, 0, 0, 0.40)',
5
+ buttonBackgroundColor: '#ffffff',
6
+ textColor: '#000000',
7
+ resetButtonBackgroundColor: '#ffffff',
8
+ resetButtonTextColor: '#d92d20',
9
+ isDoneButtonFollowTheme: true,
10
+ doneButtonBackgroundColor: '#4ca30d',
11
+ doneButtonTextColor: '#ffffff',
12
+ keyboardBackgroundColor: 'rgba(0, 0, 0, 0.40)',
13
+ keyboardButtonBackgroundColor: '#ffffff',
14
+ keyboardButtonTextColor: '#000000',
15
+ keyboardButtonHoverColor: '#f5f5f5'
16
+ },
17
+ light: {
18
+ backgroundColor: '#ffffff',
19
+ containerBackgroundColor: '#d0d5dd',
20
+ buttonBackgroundColor: '#ffffff',
21
+ textColor: '#000000',
22
+ resetButtonBackgroundColor: '#ffffff',
23
+ resetButtonTextColor: '#d92d20',
24
+ isDoneButtonFollowTheme: true,
25
+ doneButtonBackgroundColor: '#4ca30d',
26
+ doneButtonTextColor: '#ffffff',
27
+ keyboardBackgroundColor: '#f9f9f9',
28
+ keyboardButtonBackgroundColor: '#ffffff',
29
+ keyboardButtonTextColor: '#000000',
30
+ keyboardButtonHoverColor: '#f5f5f5'
31
+ }
32
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -20,7 +20,8 @@ var VirtualKeyInput = function VirtualKeyInput(props) {
20
20
  _props$showDelete = props.showDelete,
21
21
  showDelete = _props$showDelete === void 0 ? true : _props$showDelete,
22
22
  onValueSelect = props.onValueSelect,
23
- defaultSelect = props.defaultSelect;
23
+ defaultSelect = props.defaultSelect,
24
+ style = props.style;
24
25
  var _useState = useState(defaultSelect !== null && defaultSelect !== void 0 ? defaultSelect : false),
25
26
  _useState2 = _slicedToArray(_useState, 2),
26
27
  select = _useState2[0],
@@ -57,7 +58,10 @@ var VirtualKeyInput = function VirtualKeyInput(props) {
57
58
  });
58
59
  };
59
60
  return /*#__PURE__*/React.createElement("div", {
60
- className: "virtual-keyboard-input-wrap"
61
+ className: "virtual-keyboard-input-wrap",
62
+ style: {
63
+ backgroundColor: (style === null || style === void 0 ? void 0 : style.backgroundColor) || '#ffffff'
64
+ }
61
65
  }, props.renderInput ? /*#__PURE__*/React.createElement("div", {
62
66
  className: classNames('virtual-keyboard-input', {
63
67
  'virtual-keyboard-input-select': select
@@ -66,6 +70,9 @@ var VirtualKeyInput = function VirtualKeyInput(props) {
66
70
  if (value) {
67
71
  handleSelectChange(!select);
68
72
  }
73
+ },
74
+ style: {
75
+ color: (style === null || style === void 0 ? void 0 : style.color) || '#000000'
69
76
  }
70
77
  }, props.renderInput(props)) : /*#__PURE__*/React.createElement(Input, _extends({
71
78
  className: "virtual-keyboard-input",
@@ -73,7 +80,7 @@ var VirtualKeyInput = function VirtualKeyInput(props) {
73
80
  }, props, {
74
81
  readOnly: true,
75
82
  value: previewValue
76
- })), (_ref = "".concat(value !== null && value !== void 0 ? value : "")) !== null && _ref !== void 0 && _ref.length && showDelete ? /*#__PURE__*/React.createElement("div", {
83
+ })), (_ref = "".concat(value !== null && value !== void 0 ? value : '')) !== null && _ref !== void 0 && _ref.length && showDelete ? /*#__PURE__*/React.createElement("div", {
77
84
  className: "virtual-keyboard-input-delete",
78
85
  onClick: _onDelete
79
86
  }, /*#__PURE__*/React.createElement(Delete, {
@@ -9,6 +9,17 @@ interface VirtualKeyboardProps extends React.HTMLAttributes<HTMLDivElement> {
9
9
  style?: React.CSSProperties;
10
10
  onChange?: (value?: any) => void;
11
11
  value?: string;
12
+ selectType?: 'light' | 'dark';
13
+ backgroundColor?: string;
14
+ containerBackgroundColor?: string;
15
+ buttonBackgroundColor?: string;
16
+ textColor?: string;
17
+ keyboardBackgroundColor?: string;
18
+ keyboardButtonBackgroundColor?: string;
19
+ keyboardButtonTextColor?: string;
20
+ keyboardButtonHoverColor?: string;
21
+ primaryButtonBackgroundColor?: string;
22
+ primaryButtonTextColor?: string;
12
23
  }
13
24
  declare const VirtualKeyboard: (props: VirtualKeyboardProps) => JSX.Element;
14
25
  export default VirtualKeyboard;
@@ -1,9 +1,26 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ var _excluded = ["virtualKeyInputProps", "style", "className", "keyboardProps", "onChange", "value", "rightPanel", "selectType"];
1
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); }
2
- import React, { useEffect } from "react";
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
7
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
8
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
9
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
14
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
16
+ 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; }
17
+ import React, { useEffect, useMemo } from "react";
3
18
  import Keyboard from "./Keyboard";
4
19
  import VirtualKeyInput from "./VirtualKeyInput";
5
20
  import "./index.less";
6
21
  import classNames from "classnames";
22
+ import { setTheme } from '@pisell/utils';
23
+ import usePisellConfig from "../pisell-config-provider/hooks/usePisellConfig";
7
24
  var items = [{
8
25
  value: 1,
9
26
  label: "1",
@@ -60,6 +77,33 @@ var items = [{
60
77
  disabled: false,
61
78
  type: "primary"
62
79
  }];
80
+ // 默认主题配置
81
+ var virtualKeyboardThemeConfig = {
82
+ dark: {
83
+ backgroundColor: 'rgba(0, 0, 0, 0.70)',
84
+ containerBackgroundColor: 'rgba(0, 0, 0, 0.40)',
85
+ buttonBackgroundColor: '#ffffff',
86
+ textColor: '#000000',
87
+ keyboardBackgroundColor: 'rgba(0, 0, 0, 0.40)',
88
+ keyboardButtonBackgroundColor: '#ffffff',
89
+ keyboardButtonTextColor: '#000000',
90
+ keyboardButtonHoverColor: '#f5f5f5',
91
+ primaryButtonBackgroundColor: '#4ca30d',
92
+ primaryButtonTextColor: '#ffffff'
93
+ },
94
+ light: {
95
+ backgroundColor: '#ffffff',
96
+ containerBackgroundColor: '#d0d5dd',
97
+ buttonBackgroundColor: '#ffffff',
98
+ textColor: '#000000',
99
+ keyboardBackgroundColor: '#f9f9f9',
100
+ keyboardButtonBackgroundColor: '#ffffff',
101
+ keyboardButtonTextColor: '#000000',
102
+ keyboardButtonHoverColor: '#f5f5f5',
103
+ primaryButtonBackgroundColor: '#4ca30d',
104
+ primaryButtonTextColor: '#ffffff'
105
+ }
106
+ };
63
107
  var VirtualKeyboard = function VirtualKeyboard(props) {
64
108
  var virtualKeyInputProps = props.virtualKeyInputProps,
65
109
  style = props.style,
@@ -67,12 +111,53 @@ var VirtualKeyboard = function VirtualKeyboard(props) {
67
111
  keyboardProps = props.keyboardProps,
68
112
  onChange = props.onChange,
69
113
  value = props.value,
70
- rightPanel = props.rightPanel;
114
+ rightPanel = props.rightPanel,
115
+ _props$selectType = props.selectType,
116
+ selectType = _props$selectType === void 0 ? 'light' : _props$selectType,
117
+ others = _objectWithoutProperties(props, _excluded);
118
+ var config = usePisellConfig();
71
119
  useEffect(function () {
72
120
  document.body.id = "body";
73
121
  }, []);
122
+
123
+ /**
124
+ * 配置颜色
125
+ * 根据 props 和 selectType 生成最终的配置颜色
126
+ */
127
+ var configColor = useMemo(function () {
128
+ var currentConfig = virtualKeyboardThemeConfig[selectType];
129
+
130
+ // 过滤出有效的 props 并合并到默认配置中
131
+ var validProps = Object.entries(props).reduce(function (acc, _ref) {
132
+ var _ref2 = _slicedToArray(_ref, 2),
133
+ key = _ref2[0],
134
+ value = _ref2[1];
135
+ if (value !== undefined && key in currentConfig) {
136
+ acc[key] = value;
137
+ }
138
+ return acc;
139
+ }, {});
140
+ return _objectSpread(_objectSpread({}, currentConfig), validProps);
141
+ }, [selectType, props]);
142
+ useEffect(function () {
143
+ setTheme({
144
+ '--virtual-keyboard-background-color': configColor.backgroundColor,
145
+ '--virtual-keyboard-container-background-color': configColor.containerBackgroundColor,
146
+ '--virtual-keyboard-button-background-color': configColor.buttonBackgroundColor,
147
+ '--virtual-keyboard-text-color': configColor.textColor,
148
+ '--virtual-keyboard-keyboard-background-color': configColor.keyboardBackgroundColor,
149
+ '--virtual-keyboard-keyboard-button-background-color': configColor.keyboardButtonBackgroundColor,
150
+ '--virtual-keyboard-keyboard-button-text-color': configColor.keyboardButtonTextColor,
151
+ '--virtual-keyboard-keyboard-button-hover-color': configColor.keyboardButtonHoverColor,
152
+ '--virtual-keyboard-primary-button-background-color': configColor.primaryButtonBackgroundColor,
153
+ '--virtual-keyboard-primary-button-text-color': configColor.primaryButtonTextColor
154
+ });
155
+ }, [configColor]);
74
156
  return /*#__PURE__*/React.createElement("div", {
75
- className: classNames("virtual-keyboard-component", className),
157
+ className: classNames("virtual-keyboard-component", className, {
158
+ 'virtual-keyboard-component-dark': selectType === 'dark',
159
+ 'virtual-keyboard-component-light': selectType === 'light'
160
+ }),
76
161
  style: style
77
162
  }, /*#__PURE__*/React.createElement("div", {
78
163
  className: classNames("virtual-keyboard-component-left")