tplus-components-touch 3.38.1 → 3.38.4

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 (38) hide show
  1. package/dist/components/autoCompleteWithKeyboard/index.js +31 -9
  2. package/dist/components/autoCompleteWithKeyboard/index.js.map +1 -1
  3. package/dist/components/autoCompleteWithKeyboard/index.less +11 -0
  4. package/dist/components/billSearch/index.js +12 -0
  5. package/dist/components/billSearch/index.js.map +1 -1
  6. package/dist/components/billSearch/index.less +8 -0
  7. package/dist/components/commonForm/autoComplete/index.js +35 -16
  8. package/dist/components/commonForm/autoComplete/index.js.map +1 -1
  9. package/dist/components/hotKey/localConfig.js +14 -16
  10. package/dist/components/hotKey/localConfig.js.map +1 -1
  11. package/dist/components/input/scanInput.less +4 -1
  12. package/dist/components/keyboard/index.js +5 -1
  13. package/dist/components/keyboard/index.js.map +1 -1
  14. package/dist/components/keyboard/index.less +39 -23
  15. package/dist/components/keyboard/letterKeyboard.js +33 -16
  16. package/dist/components/keyboard/letterKeyboard.js.map +1 -1
  17. package/dist/components/keyboard/numKeyboard.js +23 -13
  18. package/dist/components/keyboard/numKeyboard.js.map +1 -1
  19. package/dist/components/keyboard/numKeyboardScan.js +32 -24
  20. package/dist/components/keyboard/numKeyboardScan.js.map +1 -1
  21. package/dist/components/keyboard/numkeyboardPassword.js +19 -9
  22. package/dist/components/keyboard/numkeyboardPassword.js.map +1 -1
  23. package/dist/components/keyboard/onlyLetterButton2.less +1 -1
  24. package/dist/components/layout/sider.js +3 -1
  25. package/dist/components/layout/sider.js.map +1 -1
  26. package/dist/components/settlement/index.js +1 -1
  27. package/dist/components/settlement/index.js.map +1 -1
  28. package/dist/components/settlement/prototypeTable/index.js +3 -1
  29. package/dist/components/settlement/prototypeTable/index.js.map +1 -1
  30. package/dist/components/settlement/settlement.js +76 -541
  31. package/dist/components/settlement/settlement.js.map +1 -1
  32. package/dist/components/settlement/settlement.less +5 -1
  33. package/dist/components/settlement/settlementStore.js +89 -72
  34. package/dist/components/settlement/settlementStore.js.map +1 -1
  35. package/dist/components/touchTable/index.js +11 -1
  36. package/dist/components/touchTable/index.js.map +1 -1
  37. package/dist/components/touchTable/index.less +1 -1
  38. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/keyboard/index.js"],"names":["Keyboard","getModule","components","OnlyNumberButton","OnlyNumberButton2","KeyboardInput","OnlyKeyboard","LetterKeyboard","props","type","Module","Component","getNewValue","input","value_old","key","isNumber","cursorIndex","getCursortPosition","indexOf","value_new","value1","value2","selectedTxt","window","getSelection","selectedTxtLength","length","slice","setTimeout","setCaretPosition","ctrl","value","CaretPos","document","selection","focus","Sel","createRange","moveStart","text","selectionStart","index","setSelectionRange","createTextRange","range","collapse","moveEnd","select","close","getElementById","body","removeChild","open","onChange","handleOk","handleCancel","isMobileEnvironment","platform","isHorizontalPad","android_setKeyBoard","isShowAndroidKeyBoard","el","ref","m","createElement","id","appendChild","html","ReactDOM","render","close2","unmountComponentAtNode","classList","add","remove","open2","letterOrNumber"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { platform } from 'mutants-util';\r\n\r\n// import NumKeyboard from './numKeyboard';\r\n\r\nimport LetterKeyboard from './letterKeyboard';\r\n\r\n// import TextKeyboard from './textKeyboard';\r\n\r\nimport OnlyKeyboard from './onlyKeyboard';\r\nimport OnlyLetterButton from './onlyLetterButton';\r\nimport OnlyLetterButton2 from './onlyLetterButton2'; // product 中的键盘\r\n\r\n// import OnlyTextKeyboard from './onlyTextKeyboard';\r\n\r\nimport OnlyNumberButton from './onlyNumberButton';\r\nimport OnlyNumberButton2 from './onlyNumberButton2';\r\n\r\nimport KeyboardInput from './numberButton_input';\r\n\r\nimport './index.less';\r\n\r\nexport default class Keyboard extends Component {\r\n\r\n getModule = () => {\r\n let components = {\r\n 'number': OnlyNumberButton,\r\n 'number2': OnlyNumberButton2,\r\n 'number+input': KeyboardInput,\r\n // 'number+modal': OnlyTextKeyboard,\r\n // 'number+modal+input': NumKeyboard,\r\n // 'number+modal+div': TextKeyboard,\r\n // 'OnlyLetterButton2': OnlyLetterButton2,\r\n 'letter+modal': OnlyKeyboard,\r\n 'letter+modal+input': LetterKeyboard\r\n }\r\n return components[this.props.type] || null;\r\n\r\n }\r\n static getNewValue = (input, value_old, key, isNumber) => { // 数字键盘的处理,需要传第四个参数\r\n value_old = value_old + '';\r\n let cursorIndex = Keyboard.getCursortPosition(input, value_old);\r\n\r\n if (isNumber && key == '-' && (cursorIndex != 0 || value_old.indexOf('-') != -1)) { // 数字键盘,对负号做处理\r\n return value_old;\r\n }\r\n if (isNumber && key == '.' && (cursorIndex == 0 || value_old.indexOf('.') != -1)) { // 数字键盘,对小数点做处理\r\n return value_old;\r\n }\r\n\r\n let value_new, value1, value2;\r\n\r\n let selectedTxt = `${window.getSelection()}`;\r\n\r\n // 如果此input被选中了 替换到这些\r\n if (selectedTxt) {\r\n let selectedTxtLength = selectedTxt.length;\r\n value1 = value_old.slice(0, cursorIndex);\r\n value2 = value_old.slice(cursorIndex + selectedTxtLength, value_old.length);\r\n } else {\r\n value1 = value_old.slice(0, cursorIndex);\r\n value2 = value_old.slice(cursorIndex, value_old.length);\r\n }\r\n\r\n\r\n if (key == 'delete') {\r\n value_new = value1.slice(0, value1.length - 1) + value2;\r\n cursorIndex = cursorIndex == 0 ? 0 : cursorIndex - 1;\r\n } else if (key == 'clear') {\r\n value_new = '';\r\n } else {\r\n value_new = value1 + key + value2;\r\n cursorIndex += key.length;\r\n }\r\n setTimeout(() => {\r\n Keyboard.setCaretPosition(input, cursorIndex); // 此处手动设置光标,不然每次自动跑到最后面去\r\n })\r\n return value_new;\r\n }\r\n\r\n static getCursortPosition = (ctrl, value) => {//获取光标位置函数\r\n var CaretPos = value.length;\t// IE Support\r\n if (document.selection) {\r\n ctrl.focus();\r\n var Sel = document.selection.createRange();\r\n Sel.moveStart('character', -ctrl.value.length);\r\n CaretPos = Sel.text.length;\r\n }\r\n // Firefox support\r\n else if (ctrl.selectionStart || ctrl.selectionStart == '0')\r\n CaretPos = ctrl.selectionStart;\r\n return (CaretPos);\r\n }\r\n static setCaretPosition = (ctrl, index) => {//设置光标位置函数\r\n if (ctrl.setSelectionRange) {\r\n ctrl.focus();\r\n ctrl.setSelectionRange(index, index);\r\n }\r\n else if (ctrl.createTextRange) {\r\n var range = ctrl.createTextRange();\r\n range.collapse(true);\r\n range.moveEnd('character', index);\r\n range.moveStart('character', index);\r\n range.select();\r\n }\r\n }\r\n\r\n static close = () => {\r\n if (document.getElementById('keyboard')) {\r\n document.body.removeChild(document.getElementById('keyboard'));\r\n }\r\n }\r\n\r\n static open = (onChange = () => { }, handleOk = Keyboard.close, handleCancel = Keyboard.close) => {\r\n //在移动端的情况下,不允许打开自定义键盘。\r\n let isMobileEnvironment = platform && (platform.isHorizontalPad === true) || (window.android_setKeyBoard && window.android_setKeyBoard.isShowAndroidKeyBoard);\r\n return () => {\r\n let el = document.getElementById('keyboard');\r\n if (!el) {\r\n let el = document.createElement('div');\r\n el.id = 'keyboard';\r\n document.body.appendChild(el);\r\n function ref(m) { }\r\n let html = !isMobileEnvironment ?\r\n <div className='modal-container z-letter-keyboard-modal'>\r\n <div className='z-letter-keyboard-modal-body modal-body'>\r\n <OnlyLetterButton onChange={onChange} handleOk={handleOk} ref={ref} handleCancel={handleCancel} />\r\n </div>\r\n </div>\r\n :\r\n null;\r\n ReactDOM.render(html, el)\r\n }\r\n }\r\n }\r\n\r\n // 专门为pos开单页 写的关闭键盘的方法 \r\n static close2 = () => {\r\n let el = document.getElementById('product-keyboard');\r\n if (el) {\r\n ReactDOM.unmountComponentAtNode(el)\r\n // el.innerHTML = '';\r\n el.classList.add(\"product-keyboard-hide\");\r\n el.classList.remove(\"product-keyboard-show\");\r\n }\r\n }\r\n\r\n // 专门为pos开单页 写的调用键盘的方法\r\n // /letterOrNumber 1letter 2number\r\n static open2 = (onChange = () => { }, handleOk = Keyboard.close2, handleCancel = Keyboard.close2, id, letterOrNumber = 1) => {\r\n //在移动端的情况下,不允许打开自定义键盘。\r\n let isMobileEnvironment = platform && (platform.isHorizontalPad === true);\r\n let el = document.getElementById('product-keyboard');\r\n if (el) {\r\n ReactDOM.unmountComponentAtNode(el)\r\n // el.innerHTML = '';\r\n el.classList.add(\"product-keyboard-show\");\r\n el.classList.remove(\"product-keyboard-hide\");\r\n function ref(m) { }\r\n let html = !isMobileEnvironment ? <OnlyLetterButton2 id={id} letterOrNumber={letterOrNumber} onChange={onChange} handleOk={handleOk} handleCancel={handleCancel} /> : null\r\n ReactDOM.render(html, el)\r\n }\r\n }\r\n\r\n render() {\r\n let Module = this.getModule();\r\n return (\r\n <Module {...this.props} />\r\n )\r\n }\r\n}"]}
1
+ {"version":3,"sources":["tplus-components-touch/components/keyboard/index.js"],"names":["Keyboard","getModule","components","OnlyNumberButton","OnlyNumberButton2","KeyboardInput","OnlyKeyboard","LetterKeyboard","props","type","Module","Component","getNewValue","input","value_old","key","isNumber","cursorIndex","getCursortPosition","indexOf","value_new","value1","value2","selectedTxt","window","getSelection","selectedTxtLength","length","slice","setTimeout","setCaretPosition","ctrl","value","CaretPos","document","selection","focus","Sel","createRange","moveStart","text","selectionStart","index","setSelectionRange","createTextRange","range","collapse","moveEnd","select","close","getElementById","body","removeChild","open","onChange","handleOk","handleCancel","option","isMobileEnvironment","platform","isHorizontalPad","android_setKeyBoard","isShowAndroidKeyBoard","bottom","el","ref","m","createElement","id","appendChild","html","ReactDOM","render","close2","unmountComponentAtNode","classList","add","remove","open2","letterOrNumber"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { platform } from 'mutants-util';\r\n\r\n// import NumKeyboard from './numKeyboard';\r\n\r\nimport LetterKeyboard from './letterKeyboard';\r\n\r\n// import TextKeyboard from './textKeyboard';\r\n\r\nimport OnlyKeyboard from './onlyKeyboard';\r\nimport OnlyLetterButton from './onlyLetterButton';\r\nimport OnlyLetterButton2 from './onlyLetterButton2'; // product 中的键盘\r\n\r\n// import OnlyTextKeyboard from './onlyTextKeyboard';\r\n\r\nimport OnlyNumberButton from './onlyNumberButton';\r\nimport OnlyNumberButton2 from './onlyNumberButton2';\r\n\r\nimport KeyboardInput from './numberButton_input';\r\n\r\nimport './index.less';\r\n\r\nexport default class Keyboard extends Component {\r\n\r\n getModule = () => {\r\n let components = {\r\n 'number': OnlyNumberButton,\r\n 'number2': OnlyNumberButton2,\r\n 'number+input': KeyboardInput,\r\n // 'number+modal': OnlyTextKeyboard,\r\n // 'number+modal+input': NumKeyboard,\r\n // 'number+modal+div': TextKeyboard,\r\n // 'OnlyLetterButton2': OnlyLetterButton2,\r\n 'letter+modal': OnlyKeyboard,\r\n 'letter+modal+input': LetterKeyboard\r\n }\r\n return components[this.props.type] || null;\r\n\r\n }\r\n static getNewValue = (input, value_old, key, isNumber) => { // 数字键盘的处理,需要传第四个参数\r\n value_old = value_old + '';\r\n let cursorIndex = Keyboard.getCursortPosition(input, value_old);\r\n\r\n if (isNumber && key == '-' && (cursorIndex != 0 || value_old.indexOf('-') != -1)) { // 数字键盘,对负号做处理\r\n return value_old;\r\n }\r\n if (isNumber && key == '.' && (cursorIndex == 0 || value_old.indexOf('.') != -1)) { // 数字键盘,对小数点做处理\r\n return value_old;\r\n }\r\n\r\n let value_new, value1, value2;\r\n\r\n let selectedTxt = `${window.getSelection()}`;\r\n\r\n // 如果此input被选中了 替换到这些\r\n if (selectedTxt) {\r\n let selectedTxtLength = selectedTxt.length;\r\n value1 = value_old.slice(0, cursorIndex);\r\n value2 = value_old.slice(cursorIndex + selectedTxtLength, value_old.length);\r\n } else {\r\n value1 = value_old.slice(0, cursorIndex);\r\n value2 = value_old.slice(cursorIndex, value_old.length);\r\n }\r\n\r\n\r\n if (key == 'delete') {\r\n value_new = value1.slice(0, value1.length - 1) + value2;\r\n cursorIndex = cursorIndex == 0 ? 0 : cursorIndex - 1;\r\n } else if (key == 'clear') {\r\n value_new = '';\r\n } else {\r\n value_new = value1 + key + value2;\r\n cursorIndex += key.length;\r\n }\r\n setTimeout(() => {\r\n Keyboard.setCaretPosition(input, cursorIndex); // 此处手动设置光标,不然每次自动跑到最后面去\r\n })\r\n return value_new;\r\n }\r\n\r\n static getCursortPosition = (ctrl, value) => {//获取光标位置函数\r\n var CaretPos = value.length;\t// IE Support\r\n if (document.selection) {\r\n ctrl.focus();\r\n var Sel = document.selection.createRange();\r\n Sel.moveStart('character', -ctrl.value.length);\r\n CaretPos = Sel.text.length;\r\n }\r\n // Firefox support\r\n else if (ctrl.selectionStart || ctrl.selectionStart == '0')\r\n CaretPos = ctrl.selectionStart;\r\n return (CaretPos);\r\n }\r\n static setCaretPosition = (ctrl, index) => {//设置光标位置函数\r\n if (ctrl.setSelectionRange) {\r\n ctrl.focus();\r\n ctrl.setSelectionRange(index, index);\r\n }\r\n else if (ctrl.createTextRange) {\r\n var range = ctrl.createTextRange();\r\n range.collapse(true);\r\n range.moveEnd('character', index);\r\n range.moveStart('character', index);\r\n range.select();\r\n }\r\n }\r\n\r\n static close = () => {\r\n if (document.getElementById('keyboard')) {\r\n document.body.removeChild(document.getElementById('keyboard'));\r\n }\r\n }\r\n\r\n static open = (onChange = () => { }, handleOk = Keyboard.close, handleCancel = Keyboard.close,option = {}) => {\r\n //在移动端的情况下,不允许打开自定义键盘。\r\n let isMobileEnvironment = platform && (platform.isHorizontalPad === true) || (window.android_setKeyBoard && window.android_setKeyBoard.isShowAndroidKeyBoard);\r\n const { bottom = 0 } = option\r\n return () => {\r\n let el = document.getElementById('keyboard');\r\n if (!el) {\r\n let el = document.createElement('div');\r\n el.id = 'keyboard';\r\n document.body.appendChild(el);\r\n function ref(m) { }\r\n let html = !isMobileEnvironment ?\r\n <div className='modal-container z-letter-keyboard-modal' style={{bottom}}>\r\n <div className='z-letter-keyboard-modal-body modal-body'>\r\n <OnlyLetterButton onChange={onChange} handleOk={handleOk} ref={ref} handleCancel={handleCancel} />\r\n </div>\r\n </div>\r\n :\r\n null;\r\n ReactDOM.render(html, el)\r\n }\r\n }\r\n }\r\n\r\n // 专门为pos开单页 写的关闭键盘的方法 \r\n static close2 = () => {\r\n let el = document.getElementById('product-keyboard');\r\n if (el) {\r\n ReactDOM.unmountComponentAtNode(el)\r\n // el.innerHTML = '';\r\n el.classList.add(\"product-keyboard-hide\");\r\n el.classList.remove(\"product-keyboard-show\");\r\n }\r\n }\r\n\r\n // 专门为pos开单页 写的调用键盘的方法\r\n // /letterOrNumber 1letter 2number\r\n static open2 = (onChange = () => { }, handleOk = Keyboard.close2, handleCancel = Keyboard.close2, id, letterOrNumber = 1) => {\r\n //在移动端的情况下,不允许打开自定义键盘。\r\n let isMobileEnvironment = platform && (platform.isHorizontalPad === true);\r\n let el = document.getElementById('product-keyboard');\r\n if (el) {\r\n ReactDOM.unmountComponentAtNode(el)\r\n // el.innerHTML = '';\r\n el.classList.add(\"product-keyboard-show\");\r\n el.classList.remove(\"product-keyboard-hide\");\r\n function ref(m) { }\r\n let html = !isMobileEnvironment ? <OnlyLetterButton2 id={id} letterOrNumber={letterOrNumber} onChange={onChange} handleOk={handleOk} handleCancel={handleCancel} /> : null\r\n ReactDOM.render(html, el)\r\n }\r\n }\r\n\r\n render() {\r\n let Module = this.getModule();\r\n return (\r\n <Module {...this.props} />\r\n )\r\n }\r\n}"]}
@@ -35,8 +35,8 @@
35
35
  }
36
36
  .num-keyboard-popover {
37
37
  // numberKeyboard
38
- width: 320px;
39
- height: 226px;
38
+ width: 400px;
39
+ height: 270px;
40
40
  background: none!important;
41
41
  .ant-popover-arrow {
42
42
  display: none!important;
@@ -51,24 +51,24 @@
51
51
  border:none!important;
52
52
  .ant-popover-inner-content {
53
53
  height: 100%;
54
- padding: 18px 14px 10px!important;
54
+ padding: 30px 15px 20px 24px !important;
55
55
 
56
56
  .key {
57
57
  box-sizing: border-box;
58
58
  text-align: center;
59
59
  line-height: 60px;
60
- width: 54px;
61
- height: 35px;
60
+ width: 70px;
61
+ height: 46px;
62
62
  display: flex;
63
63
  flex-direction: column;
64
64
  justify-content: center;
65
65
  border-radius: 6px;
66
- font-size: 14px;
66
+ font-size: 24px;
67
67
  cursor: pointer;
68
68
  }
69
69
 
70
70
  .nums {
71
- width: 208px;
71
+ width: 270px;
72
72
  float: left;
73
73
  margin-left: 5px;
74
74
 
@@ -80,19 +80,19 @@
80
80
 
81
81
  .dels {
82
82
  float: left;
83
- width: 60px;
83
+ width: 70px;
84
84
 
85
85
  .del {
86
86
  margin-bottom: 10px;
87
87
  }
88
88
 
89
89
  .sure {
90
- height: 80px;
90
+ height: 102px;
91
91
  line-height: 22px;
92
92
  padding-top: 5px;
93
93
  }
94
94
  .clear{
95
- height: 80px;
95
+ height: 102px;
96
96
  line-height: 22px;
97
97
  padding-top: 5px;
98
98
  }
@@ -214,13 +214,13 @@
214
214
  box-sizing: border-box;
215
215
  text-align: center;
216
216
  line-height: 60px;
217
- width: 54px;
218
- height: 35px;
217
+ width: 70px;
218
+ height: 46px;
219
219
  display: flex;
220
220
  flex-direction: column;
221
221
  justify-content: center;
222
222
  border-radius: 6px;
223
- font-size: 14px;
223
+ font-size: 24px;
224
224
  cursor: pointer;
225
225
 
226
226
  &:active {
@@ -232,30 +232,30 @@
232
232
  }
233
233
  .number-point {
234
234
  display: inline-block;
235
- line-height: 25px;
235
+ line-height: 33px;
236
236
  }
237
237
 
238
238
  .nums {
239
- width: 192px;
239
+ width: 241px;
240
240
  float: left;
241
241
 
242
242
  .num {
243
243
  float: left;
244
- margin: 0 8px 8px 0px;
244
+ margin: 0 10px 10px 0px;
245
245
  }
246
246
  }
247
247
 
248
248
  .dels {
249
249
  float: right;
250
- width: 54px;
250
+ width: 70px;
251
251
 
252
252
  .del {
253
- margin-bottom: 8px;
254
- font-size: 16px;
253
+ margin-bottom: 10px;
254
+ font-size: 22px;
255
255
  }
256
256
 
257
257
  .sure {
258
- height: 78px;
258
+ height: 102px;
259
259
  border-radius: 5px;
260
260
  }
261
261
  .positive {
@@ -264,8 +264,8 @@
264
264
  }
265
265
  .sure-no-positive {
266
266
  line-height: 33px;
267
- width: 54px;
268
- height: 35px;
267
+ width: 70px;
268
+ height: 46px;
269
269
  }
270
270
  }
271
271
 
@@ -307,10 +307,16 @@
307
307
  }
308
308
 
309
309
  .number-keyboard-input {
310
- width: 256px;
310
+ width: 332px;
311
311
  margin: 0 auto;
312
312
  .keyboard-input {
313
+ height: 40px;
314
+ font-size: 24px;
313
315
  border: none!important;
316
+ border-radius: 4px;
317
+ }
318
+ input::-webkit-input-placeholder{
319
+ font-size: 22px;
314
320
  }
315
321
  }
316
322
 
@@ -467,4 +473,14 @@
467
473
  top: -50px!important;
468
474
  color: #CCC!important;
469
475
  }
476
+ }
477
+ .keybord-icon-focus {
478
+ position: relative;
479
+ .keyboard-icon {
480
+ position: absolute;
481
+ right: 0;
482
+ top: 50% !important;
483
+ z-index: 999;
484
+ transform: translateY(-50%);
485
+ }
470
486
  }
@@ -80,7 +80,6 @@ var LetterKeyboard = (_temp = _class = function (_Component) {
80
80
  _this.setState({
81
81
  visible: !_this.state.visible
82
82
  });
83
- _this.input.input.focus();
84
83
  };
85
84
 
86
85
  _this.handleOk = function (e) {
@@ -106,11 +105,18 @@ var LetterKeyboard = (_temp = _class = function (_Component) {
106
105
  return _this.state.visible ? _react2.default.createElement(_index3.Ticon, { type: 'jianpan1', style: { color: '#999' } }) : _react2.default.createElement(_index3.Ticon, { type: 'jianpan2', style: { color: '#999' } });
107
106
  };
108
107
 
109
- _this.iconShowModal = function () {
108
+ _this.iconShowModal = function (e) {
109
+ e.preventDefault();
110
110
  if (_this.props.disabled) {
111
111
  return;
112
112
  }
113
- _this.showModal();
113
+ // this.showModal();
114
+
115
+ if (_this.isFocus) {
116
+ _this.input.input.blur();
117
+ } else {
118
+ _this.input.input.focus();
119
+ }
114
120
  };
115
121
 
116
122
  _this.getShowValue = function () {
@@ -118,6 +124,7 @@ var LetterKeyboard = (_temp = _class = function (_Component) {
118
124
  };
119
125
 
120
126
  _this.inputBlur = function () {
127
+ _this.isFocus = false;
121
128
  _this.setState({
122
129
  visible: false
123
130
  });
@@ -125,10 +132,12 @@ var LetterKeyboard = (_temp = _class = function (_Component) {
125
132
 
126
133
  _this.inputFocus = function () {
127
134
  _this.props.onFocus && _this.props.onFocus(_this.input);
128
- if (_this.props.which == 'icon') {
129
- return;
130
- }
135
+
136
+ // if (this.props.which == 'icon') {
137
+ // return;
138
+ // }
131
139
  _this.showModal();
140
+ _this.isFocus = true;
132
141
  };
133
142
 
134
143
  _this.inputKeyDown = function (e) {
@@ -172,7 +181,7 @@ var LetterKeyboard = (_temp = _class = function (_Component) {
172
181
  { className: 'keyboard' },
173
182
  _react2.default.createElement(
174
183
  _input2.default.Group,
175
- { className: 'keyboard-input' },
184
+ { className: 'keyboard-input keybord-icon-focus' },
176
185
  _react2.default.createElement(_input2.default, (0, _extends3.default)({ type: 'text'
177
186
  }, props, {
178
187
  prefix: prefix ? _react2.default.createElement(_index3.Ticon, { type: prefix, className: 'search-icon' }) : null,
@@ -184,15 +193,23 @@ var LetterKeyboard = (_temp = _class = function (_Component) {
184
193
  ref: function ref(input) {
185
194
  return _this2.input = input;
186
195
  },
187
- allowClear: this.isMobileEnvironment,
188
- suffix: which == 'icon' && !this.isMobileEnvironment ? _react2.default.createElement(
189
- 'span',
190
- { className: 'keyboard-icon', onMouseDown: function onMouseDown(e) {
191
- return e.preventDefault();
192
- }, onClick: this.iconShowModal },
193
- this.getKeyboardIcon()
194
- ) : null
195
- }))
196
+ allowClear: this.isMobileEnvironment
197
+ // suffix={which == 'icon' && !this.isMobileEnvironment ?
198
+ // <span className='keyboard-icon' onMouseDown={e => e.preventDefault()} onClick={this.iconShowModal}>
199
+ // {
200
+ // this.getKeyboardIcon()
201
+ // }
202
+ // </span>
203
+ // :
204
+ // null}
205
+ })),
206
+ which == 'icon' && !this.isMobileEnvironment ? _react2.default.createElement(
207
+ 'span',
208
+ { className: 'keyboard-icon', onMouseDown: function onMouseDown(e) {
209
+ return e.preventDefault();
210
+ }, onClick: this.iconShowModal },
211
+ this.getKeyboardIcon()
212
+ ) : null
196
213
  ),
197
214
  !this.isMobileEnvironment && _react2.default.createElement(_index2.default, { type: 'letter+modal', value: value, visible: this.state.visible, onChange: this.setStateValue, handleOk: this.handleOk, handleCancel: this.handleCancel })
198
215
  );
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/keyboard/letterKeyboard.js"],"names":["LetterKeyboard","props","inputChange","e","setState","value","target","onChange","showModal","visible","state","input","focus","handleOk","getShowValue","handleCancel","setStateValue","key","newValue","Keyboard","getNewValue","getKeyboardIcon","color","iconShowModal","disabled","undefined","inputBlur","inputFocus","onFocus","which","inputKeyDown","keyCode","handleEnter","platform","isHorizontalPad","isMobileEnvironment","onRef","prefix","preventDefault","Component","propTypes","PropTypes","func","isRequired","placeholder","string"],"mappings":"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","file":"letterKeyboard.js","sourcesContent":["/**\r\n * input + letterKeyboard\r\n */\r\n\r\nimport React, { Component } from 'react';\r\nimport { Input } from 'antd';\r\nimport { platform } from 'mutants-util';\r\nimport Keyboard from './index';\r\nimport { Ticon } from '../../index';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport default class LetterKeyboard extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n visible: false,\r\n value: props.value || ''\r\n }\r\n const { isHorizontalPad } = platform || {};\r\n this.isMobileEnvironment = !!isHorizontalPad;\r\n }\r\n\r\n static propTypes = {\r\n onChange: PropTypes.func.isRequired,\r\n handleOk: PropTypes.func,\r\n handleCancel: PropTypes.func,\r\n placeholder: PropTypes.string,\r\n which: PropTypes.string // 是否要 通过 icon 来触发键盘弹出\r\n }\r\n\r\n inputChange = (e) => {\r\n this.setState({\r\n value: e.target.value\r\n })\r\n this.props.onChange && this.props.onChange(e.target.value);\r\n }\r\n\r\n showModal = () => {\r\n this.setState({\r\n visible: !this.state.visible\r\n });\r\n this.input.input.focus();\r\n }\r\n\r\n handleOk = (e) => {\r\n this.props.handleOk && this.props.handleOk(this.getShowValue());\r\n this.showModal();\r\n }\r\n\r\n handleCancel = (e) => {\r\n this.props.handleCancel && this.props.handleCancel(this.getShowValue());\r\n this.showModal()\r\n }\r\n\r\n setStateValue = (key) => {\r\n let newValue = Keyboard.getNewValue(this.input.input, this.getShowValue(), key);\r\n this.setState({\r\n value: newValue\r\n }, () => {\r\n this.props.onChange && this.props.onChange(newValue);\r\n })\r\n }\r\n\r\n getKeyboardIcon = () => {\r\n return (\r\n this.state.visible ?\r\n <Ticon type='jianpan1' style={{ color: '#999' }} />\r\n :\r\n <Ticon type='jianpan2' style={{ color: '#999' }} />\r\n )\r\n }\r\n\r\n iconShowModal = () => {\r\n if (this.props.disabled) {\r\n return;\r\n }\r\n this.showModal();\r\n }\r\n\r\n getShowValue = () => {\r\n return this.props.value == undefined ? this.state.value : this.props.value;\r\n }\r\n\r\n inputBlur = () => {\r\n this.setState({\r\n visible: false\r\n })\r\n }\r\n\r\n inputFocus = () => {\r\n this.props.onFocus && this.props.onFocus(this.input)\r\n if (this.props.which == 'icon') {\r\n return;\r\n }\r\n this.showModal();\r\n }\r\n\r\n inputKeyDown = (e) => {\r\n if (e.keyCode == 13) { // 按下回车按钮\r\n this.props.handleEnter && this.props.handleEnter(this.getShowValue());\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n this.props.onRef && this.props.onRef(this);\r\n }\r\n\r\n render() {\r\n let { prefix, which, onRef, ...props } = { ...this.props };\r\n let value = this.getShowValue();\r\n return (\r\n <div className='keyboard'>\r\n {\r\n <Input.Group className='keyboard-input'>\r\n <Input type=\"text\"\r\n {...props}\r\n prefix={prefix ? <Ticon type={prefix} className='search-icon' /> : null}\r\n onChange={this.inputChange}\r\n onFocus={this.inputFocus}\r\n onBlur={this.inputBlur}\r\n onKeyDown={this.inputKeyDown}\r\n value={this.props.value}\r\n ref={input => this.input = input}\r\n allowClear={this.isMobileEnvironment}\r\n suffix={which == 'icon' && !this.isMobileEnvironment ?\r\n <span className='keyboard-icon' onMouseDown={e => e.preventDefault()} onClick={this.iconShowModal}>\r\n {\r\n this.getKeyboardIcon()\r\n }\r\n </span>\r\n :\r\n null}\r\n />\r\n </Input.Group>\r\n }\r\n {\r\n !this.isMobileEnvironment &&\r\n <Keyboard type='letter+modal' value={value} visible={this.state.visible} onChange={this.setStateValue} handleOk={this.handleOk} handleCancel={this.handleCancel} />\r\n }\r\n </div>\r\n )\r\n }\r\n}"]}
1
+ {"version":3,"sources":["tplus-components-touch/components/keyboard/letterKeyboard.js"],"names":["LetterKeyboard","props","inputChange","e","setState","value","target","onChange","showModal","visible","state","handleOk","getShowValue","handleCancel","setStateValue","key","newValue","Keyboard","getNewValue","input","getKeyboardIcon","color","iconShowModal","preventDefault","disabled","isFocus","blur","focus","undefined","inputBlur","inputFocus","onFocus","inputKeyDown","keyCode","handleEnter","platform","isHorizontalPad","isMobileEnvironment","onRef","prefix","which","Component","propTypes","PropTypes","func","isRequired","placeholder","string"],"mappings":"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","file":"letterKeyboard.js","sourcesContent":["/**\r\n * input + letterKeyboard\r\n */\r\n\r\nimport React, { Component } from 'react';\r\nimport { Input } from 'antd';\r\nimport { platform } from 'mutants-util';\r\nimport Keyboard from './index';\r\nimport { Ticon } from '../../index';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport default class LetterKeyboard extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n visible: false,\r\n value: props.value || ''\r\n }\r\n const { isHorizontalPad } = platform || {};\r\n this.isMobileEnvironment = !!isHorizontalPad;\r\n }\r\n\r\n static propTypes = {\r\n onChange: PropTypes.func.isRequired,\r\n handleOk: PropTypes.func,\r\n handleCancel: PropTypes.func,\r\n placeholder: PropTypes.string,\r\n which: PropTypes.string // 是否要 通过 icon 来触发键盘弹出\r\n }\r\n\r\n inputChange = (e) => {\r\n this.setState({\r\n value: e.target.value\r\n })\r\n this.props.onChange && this.props.onChange(e.target.value);\r\n }\r\n\r\n showModal = () => {\r\n this.setState({\r\n visible: !this.state.visible\r\n });\r\n }\r\n\r\n handleOk = (e) => {\r\n this.props.handleOk && this.props.handleOk(this.getShowValue());\r\n this.showModal();\r\n }\r\n\r\n handleCancel = (e) => {\r\n this.props.handleCancel && this.props.handleCancel(this.getShowValue());\r\n this.showModal()\r\n }\r\n\r\n setStateValue = (key) => {\r\n let newValue = Keyboard.getNewValue(this.input.input, this.getShowValue(), key);\r\n this.setState({\r\n value: newValue\r\n }, () => {\r\n this.props.onChange && this.props.onChange(newValue);\r\n })\r\n }\r\n\r\n getKeyboardIcon = () => {\r\n return (\r\n this.state.visible ?\r\n <Ticon type='jianpan1' style={{ color: '#999' }} />\r\n :\r\n <Ticon type='jianpan2' style={{ color: '#999' }} />\r\n )\r\n }\r\n\r\n iconShowModal = (e) => {\r\n e.preventDefault()\r\n if (this.props.disabled) {\r\n return;\r\n }\r\n // this.showModal();\r\n \r\n if (this.isFocus) {\r\n this.input.input.blur()\r\n } else {\r\n this.input.input.focus()\r\n } \r\n }\r\n\r\n getShowValue = () => {\r\n return this.props.value == undefined ? this.state.value : this.props.value;\r\n }\r\n\r\n inputBlur = () => {\r\n this.isFocus = false\r\n this.setState({\r\n visible: false\r\n })\r\n }\r\n\r\n inputFocus = () => {\r\n this.props.onFocus && this.props.onFocus(this.input)\r\n \r\n // if (this.props.which == 'icon') {\r\n // return;\r\n // }\r\n this.showModal();\r\n this.isFocus = true\r\n }\r\n\r\n inputKeyDown = (e) => {\r\n if (e.keyCode == 13) { // 按下回车按钮\r\n this.props.handleEnter && this.props.handleEnter(this.getShowValue());\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n this.props.onRef && this.props.onRef(this);\r\n }\r\n\r\n render() {\r\n let { prefix, which, onRef, ...props } = { ...this.props };\r\n let value = this.getShowValue();\r\n return (\r\n <div className='keyboard'>\r\n {\r\n <Input.Group className='keyboard-input keybord-icon-focus'>\r\n <Input type=\"text\"\r\n {...props}\r\n prefix={prefix ? <Ticon type={prefix} className='search-icon' /> : null}\r\n onChange={this.inputChange}\r\n onFocus={this.inputFocus}\r\n onBlur={this.inputBlur}\r\n onKeyDown={this.inputKeyDown}\r\n value={this.props.value}\r\n ref={input => this.input = input}\r\n allowClear={this.isMobileEnvironment}\r\n // suffix={which == 'icon' && !this.isMobileEnvironment ?\r\n // <span className='keyboard-icon' onMouseDown={e => e.preventDefault()} onClick={this.iconShowModal}>\r\n // {\r\n // this.getKeyboardIcon()\r\n // }\r\n // </span>\r\n // :\r\n // null}\r\n />\r\n {/* 优化2期修改键盘输入框交互。由小键盘图标点击之后打开的键盘,点击小键盘可以关闭。由于antd的Input组件对suffix做点击事件的冲突,所以将图标移到了Input外面 */}\r\n {\r\n which == 'icon' && !this.isMobileEnvironment ?\r\n <span className='keyboard-icon' onMouseDown={e => e.preventDefault()} onClick={this.iconShowModal}>\r\n {\r\n this.getKeyboardIcon()\r\n }\r\n </span>\r\n :\r\n null\r\n }\r\n </Input.Group>\r\n\r\n }\r\n {\r\n !this.isMobileEnvironment &&\r\n <Keyboard type='letter+modal' value={value} visible={this.state.visible} onChange={this.setStateValue} handleOk={this.handleOk} handleCancel={this.handleCancel} />\r\n }\r\n </div>\r\n )\r\n }\r\n}"]}
@@ -160,6 +160,7 @@ var NumKeyboard = (_temp = _class = function (_Component) {
160
160
  { className: 'del key clear positive', onClick: _this.numClick.bind(_this, 'clear') },
161
161
  '\u6E05',
162
162
  _react2.default.createElement('br', null),
163
+ _react2.default.createElement('br', null),
163
164
  '\u7A7A'
164
165
  )
165
166
  ) : null,
@@ -176,6 +177,7 @@ var NumKeyboard = (_temp = _class = function (_Component) {
176
177
  { className: 'del key sure real-sure', onClick: _this.numClick.bind(_this, 'sure') },
177
178
  '\u786E',
178
179
  _react2.default.createElement('br', null),
180
+ _react2.default.createElement('br', null),
179
181
  '\u5B9A'
180
182
  )
181
183
  ) : null,
@@ -192,6 +194,7 @@ var NumKeyboard = (_temp = _class = function (_Component) {
192
194
  { className: 'del key clear', onClick: _this.numClick.bind(_this, 'clear') },
193
195
  '\u6E05',
194
196
  _react2.default.createElement('br', null),
197
+ _react2.default.createElement('br', null),
195
198
  '\u7A7A'
196
199
  )
197
200
  ) : null
@@ -279,15 +282,16 @@ var NumKeyboard = (_temp = _class = function (_Component) {
279
282
  _this.onFocus = function () {
280
283
  _this.props.onFocus && _this.props.onFocus();
281
284
  _this.input.input.select();
285
+ _this.onVisibleChange(true);
282
286
  };
283
287
 
284
288
  _this.onShowPopover = function () {
285
- _this.setState({
286
- visible: true
287
- }, function () {
289
+ if (_this.state.visible) {
290
+ _this.input.input.blur();
291
+ } else {
288
292
  _this.input.input.focus();
289
293
  _this.input.input.select();
290
- });
294
+ }
291
295
  };
292
296
 
293
297
  _this.getValue = function () {
@@ -322,13 +326,16 @@ var NumKeyboard = (_temp = _class = function (_Component) {
322
326
  var propsVisible = _this.props.show;
323
327
  var isPropsVisible = propsVisible !== undefined;
324
328
  var icon = isPropsVisible ? propsVisible ? 'jianpan1' : 'jianpan2' : _this.state.visible ? 'jianpan1' : 'jianpan2';
325
- var _this$props$popClassN = _this.props.popClassName,
326
- popClassName = _this$props$popClassN === undefined ? '' : _this$props$popClassN;
329
+ var _this$props = _this.props,
330
+ _this$props$popClassN = _this$props.popClassName,
331
+ popClassName = _this$props$popClassN === undefined ? '' : _this$props$popClassN,
332
+ _this$props$placement = _this$props.placement,
333
+ placement = _this$props$placement === undefined ? 'bottomRight' : _this$props$placement;
327
334
 
328
335
  return _this.props.disabled ? _react2.default.createElement(_index.Ticon, { className: 'keyboard-icon', type: icon, style: { color: '#999' } }) : _react2.default.createElement(
329
336
  _popover2.default,
330
337
  {
331
- placement: 'bottomRight',
338
+ placement: placement,
332
339
  onVisibleChange: _this.onVisibleChange,
333
340
  onHide: _this.onHidePopover,
334
341
  title: null
@@ -387,7 +394,9 @@ var NumKeyboard = (_temp = _class = function (_Component) {
387
394
  _props2$popClassName = _props2.popClassName,
388
395
  popClassName = _props2$popClassName === undefined ? '' : _props2$popClassName,
389
396
  _props2$inputClassNam = _props2.inputClassName,
390
- inputClassName = _props2$inputClassNam === undefined ? '' : _props2$inputClassNam;
397
+ inputClassName = _props2$inputClassNam === undefined ? '' : _props2$inputClassNam,
398
+ _props2$placement = _props2.placement,
399
+ placement = _props2$placement === undefined ? 'right' : _props2$placement;
391
400
 
392
401
  var _props = (0, _extends3.default)({}, this.props);
393
402
  delete _props.bordered;
@@ -405,7 +414,7 @@ var NumKeyboard = (_temp = _class = function (_Component) {
405
414
  { className: 'keyboard number-keyboard ' + (!bordered ? 'no-bordered' : '') + ' ' + className },
406
415
  trigger == 'click' ? _react2.default.createElement(
407
416
  _input2.default.Group,
408
- null,
417
+ { className: 'keybord-icon-focus' },
409
418
  _react2.default.createElement(_input2.default, (0, _extends3.default)({ type: 'text'
410
419
  }, _props, {
411
420
  className: inputClassName + ' keyboard-input',
@@ -415,16 +424,17 @@ var NumKeyboard = (_temp = _class = function (_Component) {
415
424
  ref: function ref(input) {
416
425
  return _this2.input = input;
417
426
  },
418
- allowClear: this.isMobileEnvironment,
419
- suffix: !this.isMobileEnvironment && this.getKeyboardIcon()
420
- }))
427
+ allowClear: this.isMobileEnvironment
428
+ // suffix={!this.isMobileEnvironment && this.getKeyboardIcon() }
429
+ })),
430
+ !this.isMobileEnvironment && this.getKeyboardIcon()
421
431
  ) : _react2.default.createElement(
422
432
  _input2.default.Group,
423
433
  null,
424
434
  _react2.default.createElement(
425
435
  _popover2.default,
426
436
  {
427
- placement: 'bottomRight',
437
+ placement: placement,
428
438
  onVisibleChange: this.onVisibleChange,
429
439
  onHide: this.onHidePopover,
430
440
  rootClose: false,
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/keyboard/numKeyboard.js"],"names":["NumKeyboard","props","numClick","key","handleOk","result","state","value","setState","visible","length1","maxLength","length2","precisionLength","indexOf","newValue","Keyboard","getNewValue","input","getShowValue","v","v1","v2","slice","length","split","setStateValue","getKeyboard","nums","numsKey","map","item","Math","random","bind","type","e","preventDefault","undefined","fn","onChange","name","inputChange","target","isReturn","tools","isSubFloat","isfloat","match","max","min","isNull","onFocus","select","onShowPopover","focus","getValue","setValue","onVisibleChange","console","log","onHidePopover","getKeyboardIcon","propsVisible","show","isPropsVisible","icon","popClassName","disabled","color","platform","isHorizontalPad","isMobileEnvironment","defaultValue","bordered","trigger","onIconClick","className","inputClassName","_props","Component","propTypes","PropTypes","func","string","bool","defaultProps"],"mappings":"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","file":"numKeyboard.js","sourcesContent":["import React, { Component } from 'react';\r\nimport { platform } from 'mutants-util';\r\nimport { Ticon, Keyboard } from '../../index';\r\n\r\nimport PropTypes from 'prop-types';\r\nimport { Popover, Input } from 'antd';\r\nimport tools from '../../util/tools';\r\n\r\nexport default class NumKeyboard extends Component {\r\n\r\n static propTypes = {\r\n onChange: PropTypes.func,\r\n icon: PropTypes.string,\r\n bordered: PropTypes.bool, // 是否要 通过 icon 来触发键盘弹出\r\n popClassName: PropTypes.string, // 键盘弹出框的 className\r\n onIconClick: PropTypes.func\r\n }\r\n\r\n static defaultProps = {\r\n trigger: 'click',\r\n bordered: false,\r\n icon: 'jianpan'\r\n }\r\n\r\n constructor(props) {\r\n super();\r\n this.state = {\r\n visible: false,\r\n value: props.value || ''\r\n }\r\n const { isHorizontalPad } = platform || {};\r\n this.isMobileEnvironment = !!isHorizontalPad;\r\n }\r\n\r\n componentDidMount() {\r\n this.setState({\r\n value: this.props.defaultValue || ''\r\n })\r\n }\r\n\r\n numClick = (key) => {\r\n // let newValue = Keyboard.getNewValue(this.input.input, this.getShowValue(), key, true);\r\n // this.setStateValue(newValue);\r\n\r\n if (key == 'sure') {\r\n if (this.props.handleOk) {\r\n let result = this.props.handleOk(this.state.value);\r\n if (result) {\r\n this.setState({\r\n visible: false\r\n })\r\n }\r\n }\r\n return;\r\n }\r\n let length1 = this.props.maxLength;\r\n let length2 = this.props.precisionLength;\r\n if (length2 == 0 && key == '.') {\r\n return;\r\n }\r\n let value = this.state.value + '';\r\n if (value == '' && key == '.') { // 不允许小数的时候,也不允许小数点\r\n return;\r\n }\r\n if ((value + '').indexOf('.') > 0 && key == '.') {\r\n return;\r\n }\r\n\r\n let newValue = Keyboard.getNewValue(this.input.input, this.getShowValue(), key, true);\r\n\r\n if (length1 && length2) {\r\n let v = newValue, v1, v2;\r\n if (value.indexOf('-') != -1) {\r\n v = value.slice(1, value.length);\r\n }\r\n v1 = v.split('.')[0];\r\n v2 = v.split('.')[1];\r\n if (v.length > length1 || (v2 && v2.length > length2) || (v1 && v1.length > (length1-length2-1))) {\r\n return;\r\n }\r\n }\r\n\r\n this.setStateValue(newValue);\r\n\r\n // this.setState({\r\n // value: newValue\r\n // }, () => {\r\n // this.props.onChange && this.props.onChange(this.state.value);\r\n // })\r\n }\r\n\r\n getKeyboard = () => {\r\n let nums = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '00', '.'];\r\n let numsKey = nums.map((item) => <div className='num key' key={item + Math.random()} onClick={this.numClick.bind(this, item)}>{item}</div>)\r\n let {type} = this.props;\r\n return (\r\n <div className='clearfix' onMouseDown={e => e.preventDefault()}>\r\n\r\n <div className=\"nums clearfix\">\r\n {numsKey}\r\n </div>\r\n <div className=\"dels clearfix\">\r\n <div className=\"del key\" onClick={this.numClick.bind(this, 'delete')}>\r\n <Ticon type='tuige' />\r\n </div>\r\n {\r\n type == 'positive' ?\r\n <React.Fragment>\r\n <div className={`del key clear positive`} onClick={this.numClick.bind(this, 'clear')}>清<br />空</div>\r\n </React.Fragment>\r\n :\r\n null\r\n }\r\n {\r\n type == 'sure' ?\r\n <React.Fragment>\r\n <div className=\"del key\" onClick={this.numClick.bind(this, 'clear')}>清空</div>\r\n <div className={`del key sure real-sure`} onClick={this.numClick.bind(this, 'sure')}>确<br />定</div>\r\n </React.Fragment>\r\n :\r\n null\r\n }\r\n {\r\n type == undefined || type == 'text' ?\r\n <React.Fragment>\r\n <div className=\"del key\" onClick={this.numClick.bind(this, '-')}>—</div>\r\n <div className={`del key clear`} onClick={this.numClick.bind(this, 'clear')}>清<br />空</div>\r\n </React.Fragment>\r\n :\r\n null\r\n }\r\n </div>\r\n </div>\r\n )\r\n }\r\n\r\n setStateValue = (value, fn) => {\r\n this.setState({\r\n value: value\r\n }, () => {\r\n if (this.props.onChange) {\r\n this.props.onChange(this.getShowValue(), this.props.name);\r\n }\r\n if (fn && typeof fn == 'function') fn();\r\n })\r\n }\r\n\r\n inputChange = (e) => {\r\n const v = e && e.target.value;\r\n if(v === '') {\r\n this.setStateValue('');\r\n return;\r\n }\r\n let newValue;\r\n const { isReturn } = this.props;\r\n if (isReturn) {\r\n if (! tools.isSubFloat(v)) {\r\n return;\r\n }\r\n } else {\r\n if (! tools.isfloat(v)) {\r\n return;\r\n }\r\n }\r\n if (v.match(/\\./g) && v.match(/\\./g).length > 1) {\r\n return;\r\n }\r\n if (this.props.type == \"positive\") { // 只允许输入正数\r\n newValue = (v + '').match(/\\d+\\.?\\d*/);\r\n } else {\r\n newValue = (v + '').match(/^(\\-)?[(\\d*)|(\\d+\\.?\\d*)]*$/);\r\n }\r\n let length1 = this.props.maxLength;\r\n let length2 = this.props.precisionLength;\r\n if (length1 >=0 && length2 >=0) {\r\n let v = (newValue ? newValue[0] : '') + '', v1, v2;\r\n if (v.indexOf('-') != -1) {\r\n v = v.slice(1, v.length);\r\n }\r\n v1 = v.split('.')[0];\r\n v2 = v.split('.')[1];\r\n if (v.length > length1 || (v2 && v2.length > length2) || (v1 && v1.length > (length1-length2-1))) {\r\n return;\r\n }\r\n if (length2 == 0 && v.indexOf('.') > 0) { // 不允许小数的时候,也不允许小数点\r\n return;\r\n }\r\n }\r\n if (newValue && newValue[0]) {\r\n newValue = newValue[0];\r\n if( newValue!=='-' ){\r\n const {max={}} = this.props;\r\n const {min={}} = this.props;\r\n if(!tools.isNull(max.value) && newValue>max.value)return\r\n if(!tools.isNull(min.value)&& newValue<min.value)return\r\n }\r\n this.setStateValue( newValue || '');\r\n }\r\n // this.setState({\r\n // value: newValue && newValue[0] || ''\r\n // }, () => {\r\n // this.props.onChange && this.props.onChange(this.state.value);\r\n // })\r\n }\r\n\r\n onFocus = () => {\r\n this.props.onFocus&&this.props.onFocus();\r\n this.input.input.select()\r\n }\r\n\r\n onShowPopover = () => {\r\n this.setState({\r\n visible: true\r\n }, () => {\r\n this.input.input.focus();\r\n this.input.input.select()\r\n })\r\n }\r\n\r\n /**\r\n * 对外提供的 get 方法\r\n */\r\n getValue = () => {\r\n return this.getShowValue();\r\n }\r\n\r\n /**\r\n * 对外提供的 set 方法\r\n */\r\n setValue = (value) => {\r\n this.setState({\r\n value: value\r\n })\r\n }\r\n\r\n onVisibleChange = (visible) => {\r\n console.log('onVisibleChange', visible);\r\n this.setState({\r\n visible\r\n })\r\n this.props.onVisibleChange && this.props.onVisibleChange(visible);\r\n }\r\n\r\n onHidePopover = () => {\r\n this.setState({\r\n visible: false\r\n })\r\n }\r\n\r\n getShowValue = () => {\r\n return this.props.value === undefined ? this.state.value : this.props.value;\r\n }\r\n\r\n getKeyboardIcon = () => {\r\n let propsVisible = this.props.show;\r\n let isPropsVisible = propsVisible !== undefined;\r\n let icon = isPropsVisible ? (propsVisible ? 'jianpan1' : 'jianpan2') : (this.state.visible ? 'jianpan1' : 'jianpan2');\r\n let { popClassName = '' } = this.props;\r\n return (\r\n this.props.disabled ?\r\n <Ticon className='keyboard-icon' type={icon} style={{ color: '#999' }} />\r\n :\r\n <Popover\r\n placement='bottomRight'\r\n onVisibleChange={this.onVisibleChange}\r\n onHide={this.onHidePopover}\r\n title={null}\r\n // arrowOffsetTop={-200}\r\n // arrowOffsetLeft={400}\r\n visible={isPropsVisible ? propsVisible : this.state.visible}\r\n content={this.getKeyboard()}\r\n trigger='click'\r\n overlayClassName={`num-keyboard-popover num-keyboard-popover-click ${popClassName} `} >\r\n <Ticon className='keyboard-icon' type={icon} style={{ color: '#999'}} onClick={this.onShowPopover} />\r\n </Popover>\r\n )\r\n }\r\n\r\n render() {\r\n let { bordered, trigger, onIconClick = () => { }, icon, className = '', popClassName = '',inputClassName='' } = this.props;\r\n let _props = {...this.props};\r\n delete _props.bordered;\r\n delete _props.trigger;\r\n delete _props.className;\r\n delete _props.popClassName;\r\n delete _props.icon;\r\n delete _props.onIconClick;\r\n delete _props.inputClassName;\r\n delete _props.precisionLength;\r\n delete _props.maxLength;\r\n let value = this.getShowValue();\r\n return (\r\n <div className={`keyboard number-keyboard ${!bordered ? 'no-bordered' : ''} ${className}`}>\r\n {\r\n trigger == 'click' ?\r\n <Input.Group>\r\n <Input type=\"text\"\r\n {..._props}\r\n className={`${inputClassName} keyboard-input`}\r\n onFocus={this.onFocus}\r\n onChange={this.inputChange}\r\n value={value}\r\n ref={input => this.input = input}\r\n allowClear={this.isMobileEnvironment}\r\n suffix={!this.isMobileEnvironment && this.getKeyboardIcon() }\r\n />\r\n </Input.Group>\r\n :\r\n <Input.Group>\r\n <Popover\r\n placement='bottomRight'\r\n onVisibleChange={this.onVisibleChange}\r\n onHide={this.onHidePopover}\r\n rootClose={false}\r\n title={null}\r\n visible={this.state.visible}\r\n content={this.getKeyboard()}\r\n trigger='focus'\r\n overlayClassName={`num-keyboard-popover num-keyboard-popover-focus ${popClassName} `}\r\n >\r\n <Input type=\"text\" className='keyboard-input' {..._props} onBlur={this.onHidePopover} onFocus={this.onShowPopover} onChange={this.inputChange} value={value} ref={input => this.input = input}\r\n suffix={<Ticon className='keyboard-icon' type={icon} style={{ color: '#999' }} onClick={onIconClick} />}/>\r\n </Popover>\r\n </Input.Group>\r\n }\r\n </div>\r\n )\r\n }\r\n}\r\n"]}
1
+ {"version":3,"sources":["tplus-components-touch/components/keyboard/numKeyboard.js"],"names":["NumKeyboard","props","numClick","key","handleOk","result","state","value","setState","visible","length1","maxLength","length2","precisionLength","indexOf","newValue","Keyboard","getNewValue","input","getShowValue","v","v1","v2","slice","length","split","setStateValue","getKeyboard","nums","numsKey","map","item","Math","random","bind","type","e","preventDefault","undefined","fn","onChange","name","inputChange","target","isReturn","tools","isSubFloat","isfloat","match","max","min","isNull","onFocus","select","onVisibleChange","onShowPopover","blur","focus","getValue","setValue","console","log","onHidePopover","getKeyboardIcon","propsVisible","show","isPropsVisible","icon","popClassName","placement","disabled","color","platform","isHorizontalPad","isMobileEnvironment","defaultValue","bordered","trigger","onIconClick","className","inputClassName","_props","Component","propTypes","PropTypes","func","string","bool","defaultProps"],"mappings":"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","file":"numKeyboard.js","sourcesContent":["import React, { Component } from 'react';\r\nimport { platform } from 'mutants-util';\r\nimport { Ticon, Keyboard } from '../../index';\r\n\r\nimport PropTypes from 'prop-types';\r\nimport { Popover, Input } from 'antd';\r\nimport tools from '../../util/tools';\r\n\r\nexport default class NumKeyboard extends Component {\r\n\r\n static propTypes = {\r\n onChange: PropTypes.func,\r\n icon: PropTypes.string,\r\n bordered: PropTypes.bool, // 是否要 通过 icon 来触发键盘弹出\r\n popClassName: PropTypes.string, // 键盘弹出框的 className\r\n onIconClick: PropTypes.func\r\n }\r\n\r\n static defaultProps = {\r\n trigger: 'click',\r\n bordered: false,\r\n icon: 'jianpan'\r\n }\r\n\r\n constructor(props) {\r\n super();\r\n this.state = {\r\n visible: false,\r\n value: props.value || ''\r\n }\r\n const { isHorizontalPad } = platform || {};\r\n this.isMobileEnvironment = !!isHorizontalPad;\r\n }\r\n\r\n componentDidMount() {\r\n this.setState({\r\n value: this.props.defaultValue || ''\r\n })\r\n }\r\n\r\n numClick = (key) => {\r\n // let newValue = Keyboard.getNewValue(this.input.input, this.getShowValue(), key, true);\r\n // this.setStateValue(newValue);\r\n\r\n if (key == 'sure') {\r\n if (this.props.handleOk) {\r\n let result = this.props.handleOk(this.state.value);\r\n if (result) {\r\n this.setState({\r\n visible: false\r\n })\r\n }\r\n }\r\n return;\r\n }\r\n let length1 = this.props.maxLength;\r\n let length2 = this.props.precisionLength;\r\n if (length2 == 0 && key == '.') {\r\n return;\r\n }\r\n let value = this.state.value + '';\r\n if (value == '' && key == '.') { // 不允许小数的时候,也不允许小数点\r\n return;\r\n }\r\n if ((value + '').indexOf('.') > 0 && key == '.') {\r\n return;\r\n }\r\n\r\n let newValue = Keyboard.getNewValue(this.input.input, this.getShowValue(), key, true);\r\n\r\n if (length1 && length2) {\r\n let v = newValue, v1, v2;\r\n if (value.indexOf('-') != -1) {\r\n v = value.slice(1, value.length);\r\n }\r\n v1 = v.split('.')[0];\r\n v2 = v.split('.')[1];\r\n if (v.length > length1 || (v2 && v2.length > length2) || (v1 && v1.length > (length1-length2-1))) {\r\n return;\r\n }\r\n }\r\n\r\n this.setStateValue(newValue);\r\n\r\n // this.setState({\r\n // value: newValue\r\n // }, () => {\r\n // this.props.onChange && this.props.onChange(this.state.value);\r\n // })\r\n }\r\n\r\n getKeyboard = () => {\r\n let nums = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '00', '.'];\r\n let numsKey = nums.map((item) => <div className='num key' key={item + Math.random()} onClick={this.numClick.bind(this, item)}>{item}</div>)\r\n let {type} = this.props;\r\n return (\r\n <div className='clearfix' onMouseDown={e => e.preventDefault()}>\r\n\r\n <div className=\"nums clearfix\">\r\n {numsKey}\r\n </div>\r\n <div className=\"dels clearfix\">\r\n <div className=\"del key\" onClick={this.numClick.bind(this, 'delete')}>\r\n <Ticon type='tuige' />\r\n </div>\r\n {\r\n type == 'positive' ?\r\n <React.Fragment>\r\n <div className={`del key clear positive`} onClick={this.numClick.bind(this, 'clear')}>清<br /><br />空</div>\r\n </React.Fragment>\r\n :\r\n null\r\n }\r\n {\r\n type == 'sure' ?\r\n <React.Fragment>\r\n <div className=\"del key\" onClick={this.numClick.bind(this, 'clear')}>清空</div>\r\n <div className={`del key sure real-sure`} onClick={this.numClick.bind(this, 'sure')}>确<br /><br />定</div>\r\n </React.Fragment>\r\n :\r\n null\r\n }\r\n {\r\n type == undefined || type == 'text' ?\r\n <React.Fragment>\r\n <div className=\"del key\" onClick={this.numClick.bind(this, '-')}>—</div>\r\n <div className={`del key clear`} onClick={this.numClick.bind(this, 'clear')}>清<br /><br />空</div>\r\n </React.Fragment>\r\n :\r\n null\r\n }\r\n </div>\r\n </div>\r\n )\r\n }\r\n\r\n setStateValue = (value, fn) => {\r\n this.setState({\r\n value: value\r\n }, () => {\r\n if (this.props.onChange) {\r\n this.props.onChange(this.getShowValue(), this.props.name);\r\n }\r\n if (fn && typeof fn == 'function') fn();\r\n })\r\n }\r\n\r\n inputChange = (e) => {\r\n const v = e && e.target.value;\r\n if(v === '') {\r\n this.setStateValue('');\r\n return;\r\n }\r\n let newValue;\r\n const { isReturn } = this.props;\r\n if (isReturn) {\r\n if (! tools.isSubFloat(v)) {\r\n return;\r\n }\r\n } else {\r\n if (! tools.isfloat(v)) {\r\n return;\r\n }\r\n }\r\n if (v.match(/\\./g) && v.match(/\\./g).length > 1) {\r\n return;\r\n }\r\n if (this.props.type == \"positive\") { // 只允许输入正数\r\n newValue = (v + '').match(/\\d+\\.?\\d*/);\r\n } else {\r\n newValue = (v + '').match(/^(\\-)?[(\\d*)|(\\d+\\.?\\d*)]*$/);\r\n }\r\n let length1 = this.props.maxLength;\r\n let length2 = this.props.precisionLength;\r\n if (length1 >=0 && length2 >=0) {\r\n let v = (newValue ? newValue[0] : '') + '', v1, v2;\r\n if (v.indexOf('-') != -1) {\r\n v = v.slice(1, v.length);\r\n }\r\n v1 = v.split('.')[0];\r\n v2 = v.split('.')[1];\r\n if (v.length > length1 || (v2 && v2.length > length2) || (v1 && v1.length > (length1-length2-1))) {\r\n return;\r\n }\r\n if (length2 == 0 && v.indexOf('.') > 0) { // 不允许小数的时候,也不允许小数点\r\n return;\r\n }\r\n }\r\n if (newValue && newValue[0]) {\r\n newValue = newValue[0];\r\n if( newValue!=='-' ){\r\n const {max={}} = this.props;\r\n const {min={}} = this.props;\r\n if(!tools.isNull(max.value) && newValue>max.value)return\r\n if(!tools.isNull(min.value)&& newValue<min.value)return\r\n }\r\n this.setStateValue( newValue || '');\r\n }\r\n // this.setState({\r\n // value: newValue && newValue[0] || ''\r\n // }, () => {\r\n // this.props.onChange && this.props.onChange(this.state.value);\r\n // })\r\n }\r\n\r\n onFocus = () => {\r\n this.props.onFocus&&this.props.onFocus();\r\n this.input.input.select()\r\n this.onVisibleChange(true)\r\n }\r\n\r\n onShowPopover = () => {\r\n if (this.state.visible) {\r\n this.input.input.blur()\r\n } else {\r\n this.input.input.focus();\r\n this.input.input.select()\r\n }\r\n }\r\n\r\n /**\r\n * 对外提供的 get 方法\r\n */\r\n getValue = () => {\r\n return this.getShowValue();\r\n }\r\n\r\n /**\r\n * 对外提供的 set 方法\r\n */\r\n setValue = (value) => {\r\n this.setState({\r\n value: value\r\n })\r\n }\r\n\r\n onVisibleChange = (visible) => {\r\n console.log('onVisibleChange', visible);\r\n this.setState({\r\n visible\r\n })\r\n this.props.onVisibleChange && this.props.onVisibleChange(visible);\r\n }\r\n\r\n onHidePopover = () => {\r\n this.setState({\r\n visible: false\r\n })\r\n }\r\n\r\n getShowValue = () => {\r\n return this.props.value === undefined ? this.state.value : this.props.value;\r\n }\r\n\r\n getKeyboardIcon = () => {\r\n let propsVisible = this.props.show;\r\n let isPropsVisible = propsVisible !== undefined;\r\n let icon = isPropsVisible ? (propsVisible ? 'jianpan1' : 'jianpan2') : (this.state.visible ? 'jianpan1' : 'jianpan2');\r\n let { popClassName = '', placement = 'bottomRight' } = this.props;\r\n return (\r\n this.props.disabled ?\r\n <Ticon className='keyboard-icon' type={icon} style={{ color: '#999' }} />\r\n :\r\n <Popover\r\n placement={placement}\r\n onVisibleChange={this.onVisibleChange}\r\n onHide={this.onHidePopover}\r\n title={null}\r\n // arrowOffsetTop={-200}\r\n // arrowOffsetLeft={400}\r\n visible={isPropsVisible ? propsVisible : this.state.visible}\r\n content={this.getKeyboard()}\r\n trigger='click'\r\n overlayClassName={`num-keyboard-popover num-keyboard-popover-click ${popClassName} `} >\r\n <Ticon className='keyboard-icon' type={icon} style={{ color: '#999'}} onClick={this.onShowPopover} />\r\n </Popover>\r\n )\r\n }\r\n\r\n render() {\r\n let { bordered, trigger, onIconClick = () => { }, icon, className = '', popClassName = '',inputClassName='', placement = 'right' } = this.props;\r\n let _props = {...this.props};\r\n delete _props.bordered;\r\n delete _props.trigger;\r\n delete _props.className;\r\n delete _props.popClassName;\r\n delete _props.icon;\r\n delete _props.onIconClick;\r\n delete _props.inputClassName;\r\n delete _props.precisionLength;\r\n delete _props.maxLength;\r\n let value = this.getShowValue();\r\n return (\r\n <div className={`keyboard number-keyboard ${!bordered ? 'no-bordered' : ''} ${className}`}>\r\n {\r\n trigger == 'click' ?\r\n <Input.Group className='keybord-icon-focus'>\r\n <Input type=\"text\"\r\n {..._props}\r\n className={`${inputClassName} keyboard-input`}\r\n onFocus={this.onFocus}\r\n onChange={this.inputChange}\r\n value={value}\r\n ref={input => this.input = input}\r\n allowClear={this.isMobileEnvironment}\r\n // suffix={!this.isMobileEnvironment && this.getKeyboardIcon() }\r\n />\r\n {\r\n !this.isMobileEnvironment && this.getKeyboardIcon()\r\n }\r\n </Input.Group>\r\n \r\n :\r\n <Input.Group>\r\n <Popover\r\n placement={placement}\r\n onVisibleChange={this.onVisibleChange}\r\n onHide={this.onHidePopover}\r\n rootClose={false}\r\n title={null}\r\n visible={this.state.visible}\r\n content={this.getKeyboard()}\r\n trigger='focus'\r\n overlayClassName={`num-keyboard-popover num-keyboard-popover-focus ${popClassName} `}\r\n >\r\n <Input type=\"text\" className='keyboard-input' {..._props} onBlur={this.onHidePopover} onFocus={this.onShowPopover} onChange={this.inputChange} value={value} ref={input => this.input = input}\r\n suffix={<Ticon className='keyboard-icon' type={icon} style={{ color: '#999' }} onClick={onIconClick} />}/>\r\n </Popover>\r\n </Input.Group>\r\n }\r\n </div>\r\n )\r\n }\r\n}\r\n"]}