@ray-js/components 0.3.27 → 0.3.30
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.
- package/lib/Button/Button.js +6 -48
- package/lib/Button/Button.tuya.js +4 -5
- package/lib/Button/Button.web.js +6 -48
- package/lib/Button/Button.wechat.js +4 -5
- package/lib/Button/index.md +10 -10
- package/lib/Button/props.d.ts +1 -0
- package/lib/Checkbox/Checkbox.d.ts +0 -1
- package/lib/Checkbox/Checkbox.js +3 -29
- package/lib/Checkbox/Checkbox.web.js +3 -29
- package/lib/Checkbox/index.md +7 -6
- package/lib/CheckboxGroup/CheckboxGroup.js +45 -2
- package/lib/CheckboxGroup/CheckboxGroup.web.js +45 -2
- package/lib/CheckboxGroup/index.md +4 -4
- package/lib/CheckboxGroup/props.d.ts +3 -2
- package/lib/DatePicker/DatePicker.js +55 -4
- package/lib/DatePicker/DatePicker.web.js +55 -4
- package/lib/DatePicker/index.md +8 -8
- package/lib/DatePicker/props.d.ts +2 -0
- package/lib/Form/Form.android.js +1 -0
- package/lib/Form/Form.d.ts +4 -0
- package/lib/Form/Form.ios.js +1 -0
- package/lib/Form/Form.js +37 -0
- package/lib/Form/Form.native.d.ts +4 -0
- package/lib/Form/Form.tuya.d.ts +4 -0
- package/lib/Form/Form.tuya.js +8 -0
- package/lib/Form/Form.web.js +37 -0
- package/lib/Form/Form.wechat.d.ts +4 -0
- package/lib/Form/Form.wechat.js +33 -0
- package/lib/Form/index.android.js +1 -0
- package/lib/Form/index.d.ts +3 -0
- package/lib/Form/index.ios.js +1 -0
- package/lib/Form/index.js +3 -0
- package/lib/Form/index.md +30 -0
- package/lib/Form/index.tuya.js +3 -0
- package/lib/Form/index.web.js +3 -0
- package/lib/Form/index.wechat.js +3 -0
- package/lib/Form/props.android.js +1 -0
- package/lib/Form/props.d.ts +13 -0
- package/lib/Form/props.ios.js +1 -0
- package/lib/Form/props.js +1 -0
- package/lib/Form/props.tuya.js +1 -0
- package/lib/Form/props.web.js +1 -0
- package/lib/Form/props.wechat.js +1 -0
- package/lib/Icon/index.md +4 -4
- package/lib/Image/Image.js +33 -86
- package/lib/Image/Image.web.js +33 -86
- package/lib/Image/index.md +20 -20
- package/lib/Image/props.d.ts +1 -0
- package/lib/Input/Input.js +54 -78
- package/lib/Input/Input.web.js +54 -78
- package/lib/Input/index.md +14 -14
- package/lib/Label/Label.android.js +1 -1
- package/lib/Label/Label.ios.js +1 -1
- package/lib/Label/Label.js +8 -15
- package/lib/Label/Label.web.js +8 -15
- package/lib/Label/index.md +31 -0
- package/lib/Label/props.d.ts +7 -0
- package/lib/Motion/Fade/index.js +1 -1
- package/lib/Motion/Fade/index.web.js +1 -1
- package/lib/Motion/PullUp/index.js +1 -1
- package/lib/Motion/PullUp/index.web.js +1 -1
- package/lib/Motion/PushDown/index.js +1 -1
- package/lib/Motion/PushDown/index.web.js +1 -1
- package/lib/Motion/ScaleFadeIn/index.js +1 -1
- package/lib/Motion/ScaleFadeIn/index.web.js +1 -1
- package/lib/Motion/ScalePullDown/index.js +1 -1
- package/lib/Motion/ScalePullDown/index.web.js +1 -1
- package/lib/PageContainer/PageContainer.android.js +1 -1
- package/lib/PageContainer/PageContainer.d.ts +2 -4
- package/lib/PageContainer/PageContainer.ios.js +1 -1
- package/lib/PageContainer/PageContainer.js +1 -1
- package/lib/PageContainer/PageContainer.web.js +85 -5
- package/lib/PageContainer/index.md +19 -19
- package/lib/PageContainer/props.d.ts +12 -7
- package/lib/Picker/Picker.js +67 -4
- package/lib/Picker/Picker.web.js +67 -4
- package/lib/Picker/index.md +9 -9
- package/lib/Picker/props.d.ts +2 -0
- package/lib/PickerView/PickerView.js +69 -4
- package/lib/PickerView/PickerView.web.js +69 -4
- package/lib/PickerView/index.md +8 -7
- package/lib/PickerView/props.d.ts +3 -0
- package/lib/PickerViewColumn/PickerViewColumn.android.js +1 -0
- package/lib/PickerViewColumn/PickerViewColumn.d.ts +4 -0
- package/lib/PickerViewColumn/PickerViewColumn.ios.js +1 -0
- package/lib/PickerViewColumn/PickerViewColumn.js +14 -0
- package/lib/PickerViewColumn/PickerViewColumn.native.d.ts +31 -0
- package/lib/PickerViewColumn/PickerViewColumn.tuya.d.ts +4 -0
- package/lib/PickerViewColumn/PickerViewColumn.tuya.js +71 -0
- package/lib/PickerViewColumn/PickerViewColumn.web.js +14 -0
- package/lib/PickerViewColumn/PickerViewColumn.wechat.d.ts +4 -0
- package/lib/PickerViewColumn/PickerViewColumn.wechat.js +72 -0
- package/lib/PickerViewColumn/index.android.js +1 -0
- package/lib/PickerViewColumn/index.d.ts +3 -0
- package/lib/PickerViewColumn/index.ios.js +1 -0
- package/lib/PickerViewColumn/index.js +3 -0
- package/lib/PickerViewColumn/index.md +21 -0
- package/lib/PickerViewColumn/index.module.less +8 -0
- package/lib/PickerViewColumn/index.tuya.js +3 -0
- package/lib/PickerViewColumn/index.web.js +3 -0
- package/lib/PickerViewColumn/index.wechat.js +3 -0
- package/lib/PickerViewColumn/props.android.js +1 -0
- package/lib/PickerViewColumn/props.d.ts +16 -0
- package/lib/PickerViewColumn/props.ios.js +1 -0
- package/lib/PickerViewColumn/props.js +1 -0
- package/lib/PickerViewColumn/props.tuya.js +1 -0
- package/lib/PickerViewColumn/props.web.js +1 -0
- package/lib/PickerViewColumn/props.wechat.js +1 -0
- package/lib/Radio/Radio.js +3 -6
- package/lib/Radio/Radio.web.js +3 -6
- package/lib/Radio/index.md +5 -5
- package/lib/RadioGroup/RadioGroup.js +50 -2
- package/lib/RadioGroup/RadioGroup.web.js +50 -2
- package/lib/RadioGroup/index.md +7 -5
- package/lib/RadioGroup/props.d.ts +3 -1
- package/lib/RichText/RichText.android.js +1 -0
- package/lib/RichText/RichText.d.ts +3 -0
- package/lib/RichText/RichText.ios.js +1 -0
- package/lib/RichText/RichText.js +9 -0
- package/lib/RichText/RichText.tuya.js +9 -0
- package/lib/RichText/RichText.web.d.ts +4 -0
- package/lib/RichText/RichText.web.js +7 -0
- package/lib/RichText/RichText.wechat.js +9 -0
- package/lib/RichText/index.android.js +1 -0
- package/lib/RichText/index.d.ts +3 -0
- package/lib/RichText/index.ios.js +1 -0
- package/lib/RichText/index.js +3 -0
- package/lib/RichText/index.md +117 -0
- package/lib/RichText/index.tuya.js +3 -0
- package/lib/RichText/index.web.js +3 -0
- package/lib/RichText/index.wechat.js +3 -0
- package/lib/RichText/props.android.js +0 -0
- package/lib/RichText/props.d.ts +29 -0
- package/lib/RichText/props.ios.js +0 -0
- package/lib/RichText/props.js +1 -0
- package/lib/RichText/props.tuya.js +1 -0
- package/lib/RichText/props.web.js +1 -0
- package/lib/RichText/props.wechat.js +1 -0
- package/lib/ScrollView/ScrollView.d.ts +1 -1
- package/lib/ScrollView/ScrollView.js +40 -155
- package/lib/ScrollView/ScrollView.web.js +40 -155
- package/lib/ScrollView/index.md +11 -11
- package/lib/Slider/Slider.js +31 -12
- package/lib/Slider/Slider.web.js +31 -12
- package/lib/Slider/index.md +17 -17
- package/lib/Swiper/Swiper.js +61 -2
- package/lib/Swiper/Swiper.tuya.js +1 -0
- package/lib/Swiper/Swiper.web.js +61 -2
- package/lib/Swiper/Swiper.wechat.js +1 -0
- package/lib/Swiper/index.md +14 -14
- package/lib/Switch/Switch.js +20 -6
- package/lib/Switch/Switch.web.js +20 -6
- package/lib/Switch/index.md +6 -6
- package/lib/Text/Text.js +6 -34
- package/lib/Text/Text.web.js +6 -34
- package/lib/Text/index.md +6 -6
- package/lib/TimePicker/TimePicker.js +35 -4
- package/lib/TimePicker/TimePicker.web.js +35 -4
- package/lib/TimePicker/index.md +9 -9
- package/lib/TimePicker/props.d.ts +2 -0
- package/lib/View/View.js +6 -5
- package/lib/View/View.web.js +6 -5
- package/lib/View/index.md +10 -10
- package/lib/index.android.js +1 -1
- package/lib/index.d.ts +3 -0
- package/lib/index.ios.js +1 -1
- package/lib/index.js +3 -0
- package/lib/index.tuya.js +3 -0
- package/lib/index.web.js +3 -0
- package/lib/index.wechat.js +3 -0
- package/lib/utils/handleProps.android.js +1 -0
- package/lib/utils/handleProps.d.ts +5 -0
- package/lib/utils/handleProps.ios.js +1 -0
- package/lib/utils/handleProps.js +50 -0
- package/lib/utils/handleProps.tuya.js +50 -0
- package/lib/utils/handleProps.web.js +50 -0
- package/lib/utils/handleProps.wechat.js +50 -0
- package/package.json +7 -5
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="react" />
|
1
2
|
import { BaseProps } from '../types';
|
2
3
|
import { TouchEventHandler } from '@ray-js/framework-shared';
|
3
4
|
declare type changeValue = (e: {
|
@@ -19,6 +20,7 @@ export interface DatePickerProps extends BaseProps, TouchEventHandler {
|
|
19
20
|
onCancel?: CancelEvent;
|
20
21
|
confirmText?: string;
|
21
22
|
cancelText?: string;
|
23
|
+
children?: React.ReactNode | string;
|
22
24
|
}
|
23
25
|
export declare const defaultProps: DatePickerProps;
|
24
26
|
export interface IState {
|
@@ -0,0 +1 @@
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var React=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _this=this,_jsxFileName="/drone/src/packages/components/src/Form/Form.native.tsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Form=function(){return React.createElement(_reactNative.Text,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:6,columnNumber:10}},"\u6682\u672A\u5B9E\u73B0");};var _default=Form;exports.default=_default;
|
@@ -0,0 +1 @@
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var React=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _this=this,_jsxFileName="/drone/src/packages/components/src/Form/Form.native.tsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Form=function(){return React.createElement(_reactNative.Text,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:6,columnNumber:10}},"\u6682\u672A\u5B9E\u73B0");};var _default=Form;exports.default=_default;
|
package/lib/Form/Form.js
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
3
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
4
|
+
var _excluded = ["onSubmit", "onReset"];
|
5
|
+
import * as React from 'react';
|
6
|
+
import handleProps from '../utils/handleProps';
|
7
|
+
import { useEventListener } from 'ahooks';
|
8
|
+
|
9
|
+
var Form = function (props) {
|
10
|
+
var onSubmit = props.onSubmit,
|
11
|
+
onReset = props.onReset,
|
12
|
+
restProps = _objectWithoutProperties(props, _excluded);
|
13
|
+
|
14
|
+
var currentNode = React.useRef(null);
|
15
|
+
useEventListener('submit', function (e) {
|
16
|
+
onSubmit(_objectSpread(_objectSpread({}, e.detail || {}), {}, {
|
17
|
+
origin: e,
|
18
|
+
type: 'submit'
|
19
|
+
}));
|
20
|
+
}, {
|
21
|
+
target: currentNode
|
22
|
+
});
|
23
|
+
useEventListener('reset', function (e) {
|
24
|
+
onReset(_objectSpread(_objectSpread({}, e.detail || {}), {}, {
|
25
|
+
origin: e,
|
26
|
+
type: 'reset'
|
27
|
+
}));
|
28
|
+
}, {
|
29
|
+
target: currentNode
|
30
|
+
}); // @ts-ignore
|
31
|
+
|
32
|
+
return /*#__PURE__*/React.createElement("ty-form", _extends({
|
33
|
+
ref: currentNode
|
34
|
+
}, handleProps(restProps)));
|
35
|
+
};
|
36
|
+
|
37
|
+
export default Form;
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
3
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
4
|
+
var _excluded = ["onSubmit", "onReset"];
|
5
|
+
import * as React from 'react';
|
6
|
+
import handleProps from '../utils/handleProps';
|
7
|
+
import { useEventListener } from 'ahooks';
|
8
|
+
|
9
|
+
var Form = function (props) {
|
10
|
+
var onSubmit = props.onSubmit,
|
11
|
+
onReset = props.onReset,
|
12
|
+
restProps = _objectWithoutProperties(props, _excluded);
|
13
|
+
|
14
|
+
var currentNode = React.useRef(null);
|
15
|
+
useEventListener('submit', function (e) {
|
16
|
+
onSubmit(_objectSpread(_objectSpread({}, e.detail || {}), {}, {
|
17
|
+
origin: e,
|
18
|
+
type: 'submit'
|
19
|
+
}));
|
20
|
+
}, {
|
21
|
+
target: currentNode
|
22
|
+
});
|
23
|
+
useEventListener('reset', function (e) {
|
24
|
+
onReset(_objectSpread(_objectSpread({}, e.detail || {}), {}, {
|
25
|
+
origin: e,
|
26
|
+
type: 'reset'
|
27
|
+
}));
|
28
|
+
}, {
|
29
|
+
target: currentNode
|
30
|
+
}); // @ts-ignore
|
31
|
+
|
32
|
+
return /*#__PURE__*/React.createElement("ty-form", _extends({
|
33
|
+
ref: currentNode
|
34
|
+
}, handleProps(restProps)));
|
35
|
+
};
|
36
|
+
|
37
|
+
export default Form;
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import { Form as _Form } from "@remax/wechat/esm/hostComponents/Form/index";
|
2
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
3
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
4
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
5
|
+
var _excluded = ["onClick", "onLongClick", "onTouchCancel", "onTouchEnd", "onTouchMove", "onTouchStart"];
|
6
|
+
import * as React from 'react';
|
7
|
+
import { useTouch } from '@ray-js/framework-shared';
|
8
|
+
|
9
|
+
var Form = function (props) {
|
10
|
+
var onClick = props.onClick,
|
11
|
+
onLongClick = props.onLongClick,
|
12
|
+
onTouchCancel = props.onTouchCancel,
|
13
|
+
onTouchEnd = props.onTouchEnd,
|
14
|
+
onTouchMove = props.onTouchMove,
|
15
|
+
onTouchStart = props.onTouchStart,
|
16
|
+
restProps = _objectWithoutProperties(props, _excluded);
|
17
|
+
|
18
|
+
var _useTouch = useTouch({
|
19
|
+
onLongClick: onLongClick,
|
20
|
+
onTouchStart: onTouchStart,
|
21
|
+
onTouchMove: onTouchMove,
|
22
|
+
onTouchEnd: onTouchEnd,
|
23
|
+
onTouchCancel: onTouchCancel,
|
24
|
+
onClick: onClick
|
25
|
+
}),
|
26
|
+
_useTouch2 = _slicedToArray(_useTouch, 2),
|
27
|
+
touching = _useTouch2[0],
|
28
|
+
handlers = _useTouch2[1];
|
29
|
+
|
30
|
+
return /*#__PURE__*/React.createElement(_Form, _extends({}, restProps, handlers));
|
31
|
+
};
|
32
|
+
|
33
|
+
export default Form;
|
@@ -0,0 +1 @@
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports.default=void 0;var _Form=_interopRequireDefault(require("./Form"));var _props=require("./props");Object.keys(_props).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_props[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _props[key];}});});var _default=_Form.default;exports.default=_default;
|
@@ -0,0 +1 @@
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports.default=void 0;var _Form=_interopRequireDefault(require("./Form"));var _props=require("./props");Object.keys(_props).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_props[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _props[key];}});});var _default=_Form.default;exports.default=_default;
|
@@ -0,0 +1,30 @@
|
|
1
|
+
---
|
2
|
+
nav:
|
3
|
+
title: 组件
|
4
|
+
path: /components
|
5
|
+
group:
|
6
|
+
title: 表单组件
|
7
|
+
---
|
8
|
+
|
9
|
+
# Form
|
10
|
+
|
11
|
+
表单。将组件内的用户输入的 input textarea checkbox-group radio-group picker switch slider 提交。
|
12
|
+
|
13
|
+
当点击 form 表单中 form-type 为 submit 的 button 组件时,会将表单组件中的 value 值进行提交,需要在表单组件中加上 name 来作为 key。
|
14
|
+
|
15
|
+
## 导入
|
16
|
+
|
17
|
+
```js
|
18
|
+
import { Form } from '@ray-js/components'
|
19
|
+
```
|
20
|
+
|
21
|
+
## 示例代码
|
22
|
+
|
23
|
+
<code src="./demos/basic.tsx" title="基本使用" background="#f2f4f6"/>
|
24
|
+
|
25
|
+
## 属性说明
|
26
|
+
|
27
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 支持平台 |
|
28
|
+
| --- | --- | --- | --- | --- | --- |
|
29
|
+
| onSubmit | eventhandle | | 否 | 携带 form 中的数据触发 submit 事件,event.detail 中可以取到 name 对应表单项的值 | Web |
|
30
|
+
| onReset | eventhandle | | 否 | 表单重置时会触发 reset 事件 | Web |
|
@@ -0,0 +1 @@
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:true});
|
@@ -0,0 +1 @@
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:true});
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
package/lib/Icon/index.md
CHANGED
@@ -13,7 +13,7 @@ group:
|
|
13
13
|
## 导入
|
14
14
|
|
15
15
|
```js
|
16
|
-
import { Icon } from '@ray-js/components'
|
16
|
+
import { Icon } from '@ray-js/components'
|
17
17
|
```
|
18
18
|
|
19
19
|
## 效果
|
@@ -28,6 +28,6 @@ import { Icon } from '@ray-js/components';
|
|
28
28
|
|
29
29
|
| 属性 | 类型 | 默认值 | 说明 | 支持平台 |
|
30
30
|
| --- | --- | --- | --- | --- |
|
31
|
-
| type | string | | 图标类型,类型名 请查看上方示例中 iconfont 的 font class 名 | 涂鸦、微信、RN |
|
32
|
-
| size | number | 16 | 图标大小,单位 px | 涂鸦、微信、RN |
|
33
|
-
| color | string | #333333 | 图标颜色 | 涂鸦、微信、RN |
|
31
|
+
| type | string | | 图标类型,类型名 请查看上方示例中 iconfont 的 font class 名 | 涂鸦、微信、RN、Web |
|
32
|
+
| size | number | 16 | 图标大小,单位 px | 涂鸦、微信、RN、Web |
|
33
|
+
| color | string | #333333 | 图标颜色 | 涂鸦、微信、RN、Web |
|
package/lib/Image/Image.js
CHANGED
@@ -1,92 +1,39 @@
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
2
|
-
import
|
3
|
-
var _excluded = ["id", "className", "src", "style", "mode", "onClick", "onLoad", "onError"];
|
4
|
-
import clsx from 'clsx';
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
5
3
|
import * as React from 'react';
|
6
|
-
import {
|
7
|
-
import
|
8
|
-
var
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
aspectFit: {
|
13
|
-
backgroundSize: 'contain',
|
14
|
-
backgroundPosition: 'center'
|
15
|
-
},
|
16
|
-
widthFix: {
|
17
|
-
backgroundSize: '100% 100%',
|
18
|
-
height: 'auto',
|
19
|
-
lineHeight: 0
|
20
|
-
},
|
21
|
-
heightFix: {
|
22
|
-
backgroundSize: '100% 100%',
|
23
|
-
width: 'auto',
|
24
|
-
lineHeight: 0
|
25
|
-
},
|
26
|
-
aspectFill: {
|
27
|
-
backgroundSize: 'cover',
|
28
|
-
backgroundPosition: 'center'
|
29
|
-
},
|
30
|
-
top: {
|
31
|
-
backgroundPosition: 'top'
|
32
|
-
},
|
33
|
-
bottom: {
|
34
|
-
backgroundPosition: 'bottom'
|
35
|
-
},
|
36
|
-
center: {
|
37
|
-
backgroundPosition: 'center'
|
38
|
-
},
|
39
|
-
left: {
|
40
|
-
backgroundPosition: 'center left'
|
41
|
-
},
|
42
|
-
right: {
|
43
|
-
backgroundPosition: 'center right'
|
44
|
-
},
|
45
|
-
'top left': {
|
46
|
-
backgroundPosition: 'top left'
|
47
|
-
},
|
48
|
-
'top right': {
|
49
|
-
backgroundPosition: 'top right'
|
50
|
-
},
|
51
|
-
'bottom left': {
|
52
|
-
backgroundPosition: 'bottom left'
|
53
|
-
},
|
54
|
-
'bottom right': {
|
55
|
-
backgroundPosition: 'bottom right'
|
56
|
-
}
|
57
|
-
};
|
58
|
-
var Image = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
59
|
-
var id = props.id,
|
60
|
-
className = props.className,
|
61
|
-
src = props.src,
|
62
|
-
style = props.style,
|
63
|
-
_props$mode = props.mode,
|
64
|
-
mode = _props$mode === void 0 ? 'scaleToFill' : _props$mode,
|
65
|
-
onClick = props.onClick,
|
66
|
-
onLoad = props.onLoad,
|
67
|
-
onError = props.onError,
|
68
|
-
restProps = _objectWithoutProperties(props, _excluded);
|
4
|
+
import { useEventListener } from 'ahooks';
|
5
|
+
import handleProps from '../utils/handleProps';
|
6
|
+
var Image = /*#__PURE__*/React.forwardRef(function (props) {
|
7
|
+
var currentNode = React.useRef(null);
|
8
|
+
useEventListener('load', function (e) {
|
9
|
+
var _props$onLoad;
|
69
10
|
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
11
|
+
(_props$onLoad = props.onLoad) === null || _props$onLoad === void 0 ? void 0 : _props$onLoad.call(props, _objectSpread(_objectSpread({
|
12
|
+
type: e.type
|
13
|
+
}, e.detail), {}, {
|
14
|
+
origin: origin
|
15
|
+
}));
|
16
|
+
}, {
|
17
|
+
target: currentNode
|
18
|
+
});
|
19
|
+
useEventListener('error', function (e) {
|
20
|
+
var _props$onError;
|
21
|
+
|
22
|
+
(_props$onError = props.onError) === null || _props$onError === void 0 ? void 0 : _props$onError.call(props, _objectSpread(_objectSpread({
|
23
|
+
type: e.type
|
24
|
+
}, e.detail), {}, {
|
25
|
+
origin: origin
|
26
|
+
}));
|
27
|
+
}, {
|
28
|
+
target: currentNode
|
29
|
+
});
|
30
|
+
return (
|
31
|
+
/*#__PURE__*/
|
32
|
+
// @ts-ignore
|
33
|
+
React.createElement("ty-image", _extends({}, handleProps(props), {
|
34
|
+
ref: currentNode
|
35
|
+
}))
|
36
|
+
);
|
90
37
|
});
|
91
38
|
Image.displayName = 'Image';
|
92
39
|
export default Image;
|
package/lib/Image/Image.web.js
CHANGED
@@ -1,92 +1,39 @@
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
2
|
-
import
|
3
|
-
var _excluded = ["id", "className", "src", "style", "mode", "onClick", "onLoad", "onError"];
|
4
|
-
import clsx from 'clsx';
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
5
3
|
import * as React from 'react';
|
6
|
-
import {
|
7
|
-
import
|
8
|
-
var
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
aspectFit: {
|
13
|
-
backgroundSize: 'contain',
|
14
|
-
backgroundPosition: 'center'
|
15
|
-
},
|
16
|
-
widthFix: {
|
17
|
-
backgroundSize: '100% 100%',
|
18
|
-
height: 'auto',
|
19
|
-
lineHeight: 0
|
20
|
-
},
|
21
|
-
heightFix: {
|
22
|
-
backgroundSize: '100% 100%',
|
23
|
-
width: 'auto',
|
24
|
-
lineHeight: 0
|
25
|
-
},
|
26
|
-
aspectFill: {
|
27
|
-
backgroundSize: 'cover',
|
28
|
-
backgroundPosition: 'center'
|
29
|
-
},
|
30
|
-
top: {
|
31
|
-
backgroundPosition: 'top'
|
32
|
-
},
|
33
|
-
bottom: {
|
34
|
-
backgroundPosition: 'bottom'
|
35
|
-
},
|
36
|
-
center: {
|
37
|
-
backgroundPosition: 'center'
|
38
|
-
},
|
39
|
-
left: {
|
40
|
-
backgroundPosition: 'center left'
|
41
|
-
},
|
42
|
-
right: {
|
43
|
-
backgroundPosition: 'center right'
|
44
|
-
},
|
45
|
-
'top left': {
|
46
|
-
backgroundPosition: 'top left'
|
47
|
-
},
|
48
|
-
'top right': {
|
49
|
-
backgroundPosition: 'top right'
|
50
|
-
},
|
51
|
-
'bottom left': {
|
52
|
-
backgroundPosition: 'bottom left'
|
53
|
-
},
|
54
|
-
'bottom right': {
|
55
|
-
backgroundPosition: 'bottom right'
|
56
|
-
}
|
57
|
-
};
|
58
|
-
var Image = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
59
|
-
var id = props.id,
|
60
|
-
className = props.className,
|
61
|
-
src = props.src,
|
62
|
-
style = props.style,
|
63
|
-
_props$mode = props.mode,
|
64
|
-
mode = _props$mode === void 0 ? 'scaleToFill' : _props$mode,
|
65
|
-
onClick = props.onClick,
|
66
|
-
onLoad = props.onLoad,
|
67
|
-
onError = props.onError,
|
68
|
-
restProps = _objectWithoutProperties(props, _excluded);
|
4
|
+
import { useEventListener } from 'ahooks';
|
5
|
+
import handleProps from '../utils/handleProps';
|
6
|
+
var Image = /*#__PURE__*/React.forwardRef(function (props) {
|
7
|
+
var currentNode = React.useRef(null);
|
8
|
+
useEventListener('load', function (e) {
|
9
|
+
var _props$onLoad;
|
69
10
|
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
11
|
+
(_props$onLoad = props.onLoad) === null || _props$onLoad === void 0 ? void 0 : _props$onLoad.call(props, _objectSpread(_objectSpread({
|
12
|
+
type: e.type
|
13
|
+
}, e.detail), {}, {
|
14
|
+
origin: origin
|
15
|
+
}));
|
16
|
+
}, {
|
17
|
+
target: currentNode
|
18
|
+
});
|
19
|
+
useEventListener('error', function (e) {
|
20
|
+
var _props$onError;
|
21
|
+
|
22
|
+
(_props$onError = props.onError) === null || _props$onError === void 0 ? void 0 : _props$onError.call(props, _objectSpread(_objectSpread({
|
23
|
+
type: e.type
|
24
|
+
}, e.detail), {}, {
|
25
|
+
origin: origin
|
26
|
+
}));
|
27
|
+
}, {
|
28
|
+
target: currentNode
|
29
|
+
});
|
30
|
+
return (
|
31
|
+
/*#__PURE__*/
|
32
|
+
// @ts-ignore
|
33
|
+
React.createElement("ty-image", _extends({}, handleProps(props), {
|
34
|
+
ref: currentNode
|
35
|
+
}))
|
36
|
+
);
|
90
37
|
});
|
91
38
|
Image.displayName = 'Image';
|
92
39
|
export default Image;
|
package/lib/Image/index.md
CHANGED
@@ -13,7 +13,7 @@ group:
|
|
13
13
|
## 导入
|
14
14
|
|
15
15
|
```js
|
16
|
-
import { Image } from '@ray-js/components'
|
16
|
+
import { Image } from '@ray-js/components'
|
17
17
|
```
|
18
18
|
|
19
19
|
## 示例代码
|
@@ -24,27 +24,27 @@ import { Image } from '@ray-js/components';
|
|
24
24
|
|
25
25
|
| 属性 | 类型 | 默认值 | 说明 | 支持平台 |
|
26
26
|
| --- | --- | --- | --- | --- |
|
27
|
-
| className | string | | 样式名 | RN
|
28
|
-
| src | string | | 图片地址 | RN
|
29
|
-
| mode | string | 'scaleToFill' | 图片裁剪、缩放的模式,RN 支持部分模式,具体见下表 | RN
|
30
|
-
| onLoad | (e: { width: number; height: number; origin }) => void |
|
31
|
-
| onError | (e: { errMsg: string; origin }) => void |
|
27
|
+
| className | string | | 样式名 | RN、涂鸦、微信、Web |
|
28
|
+
| src | string | | 图片地址 | RN、涂鸦、微信、Web |
|
29
|
+
| mode | string | 'scaleToFill' | 图片裁剪、缩放的模式,RN 支持部分模式,具体见下表 | RN、涂鸦、微信、Web |
|
30
|
+
| onLoad | (e: { width: number; height: number; origin }) => void | | 图片裁剪、缩放的模式 | RN、涂鸦、微信、Web |
|
31
|
+
| onError | (e: { errMsg: string; origin }) => void | | 图片裁剪、缩放的模式 | RN、涂鸦、微信、Web |
|
32
32
|
|
33
33
|
## mode 合法值
|
34
34
|
|
35
35
|
| 值 | 说明 | 支持平台 |
|
36
36
|
| --- | --- | --- |
|
37
|
-
| scaleToFill | 缩放模式,不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 | RN
|
38
|
-
| aspectFit | 缩放模式,保持纵横比缩放图片,使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来。 | RN
|
39
|
-
| aspectFill | 缩放模式,保持纵横比缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取。 | RN
|
40
|
-
| widthFix | 缩放模式,宽度不变,高度自动变化,保持原图宽高比不变 | RN
|
41
|
-
| heightFix | 缩放模式,高度不变,宽度自动变化,保持原图宽高比不变 |
|
42
|
-
| top | 裁剪模式,不缩放图片,只显示图片的顶部区域 |
|
43
|
-
| bottom | 裁剪模式,不缩放图片,只显示图片的底部区域 |
|
44
|
-
| center | 裁剪模式,不缩放图片,只显示图片的中间区域 |
|
45
|
-
| left | 裁剪模式,不缩放图片,只显示图片的左边区域 |
|
46
|
-
| right | 裁剪模式,不缩放图片,只显示图片的右边区域 |
|
47
|
-
| top left | 裁剪模式,不缩放图片,只显示图片的左上边区域 |
|
48
|
-
| top right | 裁剪模式,不缩放图片,只显示图片的右上边区域 |
|
49
|
-
| bottom left | 裁剪模式,不缩放图片,只显示图片的左下边区域 |
|
50
|
-
| bottom right | 裁剪模式,不缩放图片,只显示图片的右下边区域 |
|
37
|
+
| scaleToFill | 缩放模式,不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 | RN、涂鸦、微信、Web |
|
38
|
+
| aspectFit | 缩放模式,保持纵横比缩放图片,使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来。 | RN、涂鸦、微信、Web |
|
39
|
+
| aspectFill | 缩放模式,保持纵横比缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取。 | RN、涂鸦、微信、Web |
|
40
|
+
| widthFix | 缩放模式,宽度不变,高度自动变化,保持原图宽高比不变 | RN、涂鸦、微信、Web |
|
41
|
+
| heightFix | 缩放模式,高度不变,宽度自动变化,保持原图宽高比不变 | 涂鸦、微信、Web |
|
42
|
+
| top | 裁剪模式,不缩放图片,只显示图片的顶部区域 | 涂鸦、微信、Web |
|
43
|
+
| bottom | 裁剪模式,不缩放图片,只显示图片的底部区域 | 涂鸦、微信、Web |
|
44
|
+
| center | 裁剪模式,不缩放图片,只显示图片的中间区域 | 涂鸦、微信、Web |
|
45
|
+
| left | 裁剪模式,不缩放图片,只显示图片的左边区域 | 涂鸦、微信、Web |
|
46
|
+
| right | 裁剪模式,不缩放图片,只显示图片的右边区域 | 涂鸦、微信、Web |
|
47
|
+
| top left | 裁剪模式,不缩放图片,只显示图片的左上边区域 | 涂鸦、微信、Web |
|
48
|
+
| top right | 裁剪模式,不缩放图片,只显示图片的右上边区域 | 涂鸦、微信、Web |
|
49
|
+
| bottom left | 裁剪模式,不缩放图片,只显示图片的左下边区域 | 涂鸦、微信、Web |
|
50
|
+
| bottom right | 裁剪模式,不缩放图片,只显示图片的右下边区域 | 涂鸦、微信、Web |
|
package/lib/Image/props.d.ts
CHANGED
@@ -8,6 +8,7 @@ export interface ImageProps extends BaseProps, TouchEventHandler {
|
|
8
8
|
mode?: 'scaleToFill' | 'aspectFit' | 'aspectFill' | 'widthFix' | 'heightFix' | 'top' | 'bottom' | 'center' | 'left' | 'right' | 'top left' | 'top right' | 'bottom right' | 'bottom left';
|
9
9
|
/** 当图片载入完毕时触发 */
|
10
10
|
onLoad?: (e: {
|
11
|
+
type: 'load' | 'error';
|
11
12
|
width: number;
|
12
13
|
height: number;
|
13
14
|
origin: RnLoadEvent | WxEvent;
|