12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- import { __assign, __spreadArray } from "tslib";
- import fmtEvent from './fmtEvent';
- function removeNullProps(props) {
- var newProps = {};
- for (var key in props) {
- if (props[key] !== null) {
- newProps[key] = props[key];
- }
- }
- return newProps;
- }
- function buildProperties(props) {
- var newProperties = {};
- for (var key in props) {
- var type = null;
- switch (typeof props[key]) {
- case 'string':
- type = String;
- break;
- case 'number':
- type = Number;
- break;
- case 'boolean':
- type = Boolean;
- break;
- }
- newProperties[key] = {
- type: type,
- value: props[key],
- };
- }
- return newProperties;
- }
- function mergeDefaultProps(defaultProps) {
- if (defaultProps === void 0) { defaultProps = {}; }
- return __assign({}, defaultProps);
- }
- function ComponentImpl(defaultProps, methods, data, mixins, instanceMethods) {
- Component(__assign({ props: removeNullProps(mergeDefaultProps(defaultProps)), methods: methods, mixins: mixins, data: data }, instanceMethods));
- }
- export function triggerEvent(instance, eventName, value, e) {
- // 首字母大写,然后加上 on
- var alipayCallbackName = 'on' + eventName.charAt(0).toUpperCase() + eventName.slice(1);
- var props = instance.props;
- if (props[alipayCallbackName]) {
- props[alipayCallbackName](value, fmtEvent(props, e));
- }
- }
- export function triggerEventOnly(instance, eventName, e) {
- // 首字母大写,然后加上 on
- var alipayCallbackName = 'on' + eventName.charAt(0).toUpperCase() + eventName.slice(1);
- var props = instance.props;
- if (props[alipayCallbackName]) {
- props[alipayCallbackName](fmtEvent(props, e));
- }
- }
- export function triggerEventValues(instance, eventName, values, e) {
- // 首字母大写,然后加上 on
- var alipayCallbackName = 'on' + eventName.charAt(0).toUpperCase() + eventName.slice(1);
- var props = instance.props;
- if (props[alipayCallbackName]) {
- props[alipayCallbackName].apply(props, __spreadArray(__spreadArray([], values, false), [fmtEvent(props, e)], false));
- }
- }
- export function triggerCatchEvent(instance, eventName, e) {
- var props = instance.props;
- if (props[eventName]) {
- props[eventName](fmtEvent(props, e));
- }
- }
- export function getValueFromProps(instance, propName) {
- var value;
- var props = instance.props;
- if (!propName) {
- return props;
- }
- if (typeof propName === 'string') {
- value = props[propName];
- }
- if (Array.isArray(propName)) {
- value = propName.map(function (name) { return props[name]; });
- }
- return value;
- }
- export { ComponentImpl as Component };
|