@nutui/nutui-react-taro 2.0.0-alpha.13 → 2.0.0-alpha.14

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 (130) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/esm/ActionSheet/style/style.css +1 -1
  3. package/dist/esm/Address/style/style.css +1 -1
  4. package/dist/esm/Audio.js +3 -3
  5. package/dist/esm/Barrage/style/style.css +1 -1
  6. package/dist/esm/Barrage.js +2 -3
  7. package/dist/esm/Calendar/style/style.css +1 -1
  8. package/dist/esm/Cascader/style/style.css +1 -1
  9. package/dist/esm/CircleProgress.js +2 -2
  10. package/dist/esm/DatePicker/style/style.css +1 -1
  11. package/dist/esm/DatePicker.js +3 -3
  12. package/dist/esm/Ellipsis.js +2 -2
  13. package/dist/esm/ImagePreview/style/style.css +1 -1
  14. package/dist/esm/Menu.js +1 -1
  15. package/dist/esm/MenuItem.js +2 -2
  16. package/dist/esm/NoticeBar.js +2 -2
  17. package/dist/esm/NumberKeyboard/style/style.css +1 -1
  18. package/dist/esm/Picker/style/style.css +1 -1
  19. package/dist/esm/Picker.js +2 -2
  20. package/dist/esm/Popover/style/index.js +1 -1
  21. package/dist/esm/Popover/style/style.css +1 -1
  22. package/dist/esm/Popover.js +9 -3
  23. package/dist/esm/Popup/style/style.css +1 -1
  24. package/dist/esm/Range.js +2 -2
  25. package/dist/esm/ShortPassword/style/style.css +1 -1
  26. package/dist/esm/SideNavBar/style/style.css +1 -1
  27. package/dist/esm/SideNavBar.js +3 -3
  28. package/dist/esm/SideNavBarItem/style/style.css +1 -1
  29. package/dist/esm/SideNavBarItem.js +1 -1
  30. package/dist/esm/Signature.js +1 -1
  31. package/dist/esm/Sticky.js +2 -2
  32. package/dist/esm/SubSideNavBar/style/style.css +1 -1
  33. package/dist/esm/SubSideNavBar.js +2 -2
  34. package/dist/esm/Swipe.js +2 -2
  35. package/dist/esm/TextArea/style/style.css +1 -1
  36. package/dist/esm/TimeSelect/style/style.css +1 -1
  37. package/dist/esm/Uploader.js +2 -2
  38. package/dist/esm/{audio.taro-bbd39f93.js → audio.taro-73011657.js} +3 -3
  39. package/dist/esm/{barrage.taro-c8cb9864.js → barrage.taro-e87bc58e.js} +32 -32
  40. package/dist/esm/{circleprogress.taro-7149e09d.js → circleprogress.taro-9064d69c.js} +1 -1
  41. package/dist/esm/{datepicker.taro-65dbeceb.js → datepicker.taro-6304d59d.js} +1 -1
  42. package/dist/esm/{ellipsis.taro-f423affa.js → ellipsis.taro-5653d0b2.js} +12 -12
  43. package/dist/esm/{index-e3184f19.js → index-0a89a47b.js} +7 -1
  44. package/dist/esm/{menu.taro-cd0fef41.js → menu.taro-40d36e0a.js} +3 -3
  45. package/dist/esm/{menuitem.taro-6076bffa.js → menuitem.taro-6aa35a00.js} +1 -1
  46. package/dist/esm/{noticebar.taro-2f02b2ad.js → noticebar.taro-8d496dd6.js} +1 -1
  47. package/dist/esm/nutui-react.es.js +21 -21
  48. package/dist/esm/{picker.taro-0570ec32.js → picker.taro-8ba4624c.js} +44 -40
  49. package/dist/esm/popover.taro-ba6c323a.js +229 -0
  50. package/dist/esm/{range.taro-615e193a.js → range.taro-a1d1ad25.js} +1 -1
  51. package/dist/esm/{sidenavbar.taro-9f210df4.js → sidenavbar.taro-1aefdd3c.js} +13 -10
  52. package/dist/esm/sidenavbaritem.taro-7d805f92.js +13 -0
  53. package/dist/esm/{signature.taro-c57469aa.js → signature.taro-6e75a1ac.js} +1 -1
  54. package/dist/esm/{sticky.taro-f8ae8d5e.js → sticky.taro-6bc62a96.js} +2 -2
  55. package/dist/esm/{subsidenavbar.taro-abe07673.js → subsidenavbar.taro-47bb6e74.js} +10 -9
  56. package/dist/esm/{swipe.taro-de80fcd8.js → swipe.taro-966af6d3.js} +1 -1
  57. package/dist/esm/types/src/packages/barrage/barrage.d.ts +6 -7
  58. package/dist/esm/types/src/packages/barrage/barrage.taro.d.ts +6 -7
  59. package/dist/esm/types/src/packages/barrage/index.d.ts +1 -0
  60. package/dist/esm/types/src/packages/barrage/index.taro.d.ts +1 -0
  61. package/dist/esm/types/src/packages/button/button.d.ts +1 -0
  62. package/dist/esm/types/src/packages/configprovider/types.d.ts +1 -1
  63. package/dist/esm/types/src/packages/input/input.taro.d.ts +1 -1
  64. package/dist/esm/types/src/packages/menu/menu.taro.d.ts +1 -1
  65. package/dist/esm/types/src/packages/picker/doc.en.d.ts +9 -9
  66. package/dist/esm/types/src/packages/popover/demo.d.ts +3 -2
  67. package/dist/esm/types/src/packages/popover/demo.taro.d.ts +2 -2
  68. package/dist/esm/types/src/packages/popover/index.d.ts +1 -0
  69. package/dist/esm/types/src/packages/popover/index.taro.d.ts +1 -0
  70. package/dist/esm/types/src/packages/popover/popover.d.ts +20 -9
  71. package/dist/esm/types/src/packages/popover/popover.taro.d.ts +20 -10
  72. package/dist/esm/types/src/packages/sidenavbar/index.d.ts +1 -0
  73. package/dist/esm/types/src/packages/sidenavbar/index.taro.d.ts +1 -0
  74. package/dist/esm/types/src/packages/sidenavbar/sidenavbar.d.ts +5 -9
  75. package/dist/esm/types/src/packages/sidenavbar/sidenavbar.taro.d.ts +5 -9
  76. package/dist/esm/types/src/packages/sidenavbaritem/index.d.ts +1 -0
  77. package/dist/esm/types/src/packages/sidenavbaritem/index.taro.d.ts +1 -0
  78. package/dist/esm/types/src/packages/sidenavbaritem/sidenavbaritem.d.ts +3 -3
  79. package/dist/esm/types/src/packages/sidenavbaritem/sidenavbaritem.taro.d.ts +3 -3
  80. package/dist/esm/types/src/packages/subsidenavbar/index.d.ts +1 -0
  81. package/dist/esm/types/src/packages/subsidenavbar/index.taro.d.ts +1 -0
  82. package/dist/esm/types/src/packages/subsidenavbar/subsidenavbar.d.ts +3 -3
  83. package/dist/esm/types/src/packages/subsidenavbar/subsidenavbar.taro.d.ts +3 -3
  84. package/dist/esm/types/src/utils/index.d.ts +1 -0
  85. package/dist/esm/types/src/utils/use-click-away.d.ts +3 -0
  86. package/dist/esm/{uploader.taro-7e38fc37.js → uploader.taro-fbd05e20.js} +1 -1
  87. package/dist/esm/use-client-rect-2bb6c562.js +40 -0
  88. package/dist/locales/base.js +1 -1
  89. package/dist/locales/en-US.js +1 -1
  90. package/dist/locales/id-ID.js +1 -1
  91. package/dist/locales/tr-TR.js +1 -1
  92. package/dist/locales/zh-CN.js +1 -1
  93. package/dist/locales/zh-TW.js +1 -1
  94. package/dist/locales/zh-UG.js +1 -1
  95. package/dist/nutui.react.es.js +466 -324
  96. package/dist/nutui.react.umd.js +466 -324
  97. package/dist/packages/barrage/barrage.scss +0 -13
  98. package/dist/packages/popover/popover.scss +158 -230
  99. package/dist/packages/popup/popup.scss +36 -0
  100. package/dist/packages/sidenavbar/sidenavbar.scss +10 -16
  101. package/dist/packages/sidenavbaritem/sidenavbaritem.scss +7 -19
  102. package/dist/packages/subsidenavbar/subsidenavbar.scss +10 -19
  103. package/dist/style.css +1 -1
  104. package/dist/style.mjs +1 -1
  105. package/dist/styles/variables-jmapp.scss +35 -47
  106. package/dist/styles/variables.scss +45 -57
  107. package/dist/types/packages/barrage/barrage.taro.d.ts +32 -9
  108. package/dist/types/packages/barrage/index.taro.d.ts +1 -0
  109. package/dist/types/packages/configprovider/types.d.ts +1 -1
  110. package/dist/types/packages/input/input.taro.d.ts +1 -1
  111. package/dist/types/packages/menu/menu.taro.d.ts +5 -1
  112. package/dist/types/packages/popover/index.taro.d.ts +1 -0
  113. package/dist/types/packages/popover/popover.taro.d.ts +99 -13
  114. package/dist/types/packages/sidenavbar/index.taro.d.ts +1 -0
  115. package/dist/types/packages/sidenavbar/sidenavbar.taro.d.ts +33 -13
  116. package/dist/types/packages/sidenavbaritem/index.taro.d.ts +1 -0
  117. package/dist/types/packages/sidenavbaritem/sidenavbaritem.taro.d.ts +3 -3
  118. package/dist/types/packages/subsidenavbar/index.taro.d.ts +1 -0
  119. package/dist/types/packages/subsidenavbar/subsidenavbar.taro.d.ts +3 -3
  120. package/dist/types/utils/index.d.ts +1 -0
  121. package/package.json +1 -1
  122. package/dist/esm/popover.taro-ad483372.js +0 -162
  123. package/dist/esm/sidenavbaritem.taro-32a45ce6.js +0 -12
  124. package/dist/esm/types/src/packages/popover/Trigger.d.ts +0 -19
  125. package/dist/esm/types/src/packages/sidenavbar/type.d.ts +0 -34
  126. package/dist/esm/use-client-rect-f317804e.js +0 -10
  127. package/dist/types/packages/popover/Trigger.d.ts +0 -19
  128. /package/dist/esm/{offsetContext-f32a9246.js → context-f32a9246.js} +0 -0
  129. /package/dist/esm/types/src/packages/sidenavbar/{offsetContext.d.ts → context.d.ts} +0 -0
  130. /package/dist/types/packages/sidenavbar/{offsetContext.d.ts → context.d.ts} +0 -0
@@ -1,15 +1,35 @@
1
- import React, { FunctionComponent } from 'react';
2
- type NavBarProps = {
3
- showhead?: boolean;
4
- };
5
- export interface SideNavBarProps extends React.HTMLAttributes<HTMLDivElement>, NavBarProps {
6
- title: string;
7
- visible: boolean;
8
- width?: string;
9
- offset?: number;
10
- position?: 'left' | 'right';
11
- onClose: () => void;
12
- children?: React.ReactNode;
1
+ import React, { FunctionComponent, ReactNode } from 'react';
2
+ import { BasicComponent } from '../../utils/typings';
3
+ export interface SideNavBarProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title'>, BasicComponent {
4
+ /**
5
+ * 整体标题
6
+ * @default -
7
+ */
8
+ title: ReactNode
9
+ /**
10
+ * 组件是否显示
11
+ * @default false
12
+ */
13
+ visible: boolean
14
+ /**
15
+ * 遮罩宽度百分比
16
+ * @default 80%
17
+ */
18
+ width?: string
19
+ /**
20
+ * 缩进宽度
21
+ * @default 20
22
+ */
23
+ indent?: number
24
+ /**
25
+ * 弹出位置
26
+ * @default left
27
+ */
28
+ position?: 'left' | 'right'
29
+ /**
30
+ * 关闭遮罩时触发
31
+ * @default -
32
+ */
33
+ onClose: () => void
13
34
  }
14
35
  export declare const SideNavBar: FunctionComponent<SideNavBarProps>;
15
- export {};
@@ -1,2 +1,3 @@
1
1
  import { SideNavBarItem } from './sidenavbaritem.taro';
2
+ export type { SideNavBarItemProps } from './sidenavbaritem.taro';
2
3
  export default SideNavBarItem;
@@ -1,10 +1,10 @@
1
1
  import React, { FunctionComponent } from 'react';
2
2
  export type SideNavBarItemProps = {
3
3
  title: string;
4
- key: string | number;
5
- onClick?: ({ title, key }: {
4
+ value: string | number;
5
+ onClick?: ({ title, value, }: {
6
6
  title: string;
7
- key: string | number;
7
+ value: string | number;
8
8
  }) => void;
9
9
  children?: React.ReactNode;
10
10
  };
@@ -1,2 +1,3 @@
1
1
  import { SubSideNavBar } from './subsidenavbar.taro';
2
+ export type { SubSideNavBarProps } from './subsidenavbar.taro';
2
3
  export default SubSideNavBar;
@@ -1,12 +1,12 @@
1
1
  import React, { FunctionComponent } from 'react';
2
2
  export type SubSideNavBarProps = {
3
3
  title: string;
4
- key: string | number;
4
+ value: string | number;
5
5
  open?: boolean;
6
6
  children?: React.ReactNode;
7
- onClick?: ({ title, key, isShow, }: {
7
+ onClick?: ({ title, value, isShow, }: {
8
8
  title: string;
9
- key: string | number;
9
+ value: string | number;
10
10
  isShow: boolean;
11
11
  }) => void;
12
12
  };
@@ -1,3 +1,4 @@
1
1
  export declare const isObject: (val: unknown) => val is Record<any, any>;
2
2
  export declare const isFunction: (val: unknown) => val is Function;
3
3
  export declare const isPromise: <T = any>(val: unknown) => val is Promise<T>;
4
+ export declare const upperCaseFirst: (str: string) => string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nutui/nutui-react-taro",
3
- "version": "2.0.0-alpha.13",
3
+ "version": "2.0.0-alpha.14",
4
4
  "style": "dist/style.css",
5
5
  "main": "dist/nutui.react.umd.js",
6
6
  "module": "dist/esm/nutui-react.es.js",
@@ -1,162 +0,0 @@
1
- import React, { useRef, useState, useEffect } from "react";
2
- import { O as Overlay } from "./overlay.taro-75012bd3.js";
3
- import { g as getRectByTaro } from "./use-client-rect-f317804e.js";
4
- import { C as ComponentDefaults } from "./typings-11d83a22.js";
5
- function fillRef(ref, node) {
6
- if (typeof ref === "function") {
7
- ref(node);
8
- } else if (typeof ref === "object" && ref && "current" in ref) {
9
- ref.current = node;
10
- }
11
- }
12
- function composeRef(...refs) {
13
- return (node) => {
14
- refs.forEach((ref) => {
15
- fillRef(ref, node);
16
- });
17
- };
18
- }
19
- class Trigger extends React.Component {
20
- fireEvents(type, e) {
21
- const childCallback = this.props.children.props[type];
22
- if (childCallback) {
23
- childCallback(e);
24
- }
25
- const callback = this.props[type];
26
- if (callback) {
27
- callback(e);
28
- }
29
- }
30
- render() {
31
- const { children, className = "" } = this.props;
32
- const child = React.Children.only(children);
33
- const newChildProps = {
34
- key: "trigger"
35
- };
36
- if (child && child.props && child.props.className) {
37
- newChildProps.className = className;
38
- }
39
- const cloneProps = {
40
- ...newChildProps
41
- };
42
- cloneProps.ref = composeRef(this.props.forwardedRef, child.ref);
43
- const trigger = React.cloneElement(child, cloneProps);
44
- return trigger;
45
- }
46
- }
47
- const defaultProps = {
48
- ...ComponentDefaults,
49
- list: [],
50
- theme: "light",
51
- location: "bottom",
52
- visible: false,
53
- offset: 20,
54
- className: "",
55
- onClick: (e) => {
56
- },
57
- onChoose: (item, index) => {
58
- }
59
- };
60
- const Popover = (props) => {
61
- const { children, list, theme, location, visible, offset, className, style, onClick, onChoose, ...reset } = {
62
- ...defaultProps,
63
- ...props
64
- };
65
- const goodItem = useRef(null);
66
- setTimeout(async () => {
67
- if (goodItem.current) {
68
- const res = await getRectByTaro(goodItem.current);
69
- setElWidth(res == null ? void 0 : res.width);
70
- setElHeight(res == null ? void 0 : res.height);
71
- }
72
- });
73
- const [classes, setClasses] = useState("");
74
- const [elWidth, setElWidth] = useState(0);
75
- const [elHeight, setElHeight] = useState(0);
76
- const [popoverContent, setPopoverContent] = useState("");
77
- const [popoverArrow, setPopoverArrow] = useState("");
78
- useEffect(() => {
79
- setClasses(classesSelf());
80
- setPopoverContent(popoverContentSelf());
81
- setPopoverArrow(popoverArrowSelf());
82
- }, [list, theme]);
83
- const getStyle = () => {
84
- const offNumer = Number(offset) ? Number(offset) : 0;
85
- const style2 = {};
86
- if (location.includes("top")) {
87
- style2.bottom = `${elHeight + offNumer}px`;
88
- } else if (location.includes("right")) {
89
- style2.left = `${elWidth + offNumer}px`;
90
- } else if (location.includes("left")) {
91
- style2.right = `${elWidth + offNumer}px`;
92
- } else {
93
- style2.top = `${elHeight + offNumer}px`;
94
- }
95
- return style2;
96
- };
97
- const classesSelf = () => {
98
- const prefixCls = "nut-popover";
99
- return `${prefixCls} ${theme ? `${prefixCls}--${theme}` : ""}`;
100
- };
101
- const popoverContentSelf = () => {
102
- const prefixCls = "popover-content";
103
- return `${prefixCls}-show ${prefixCls} ${location ? `${prefixCls}--${location}` : ""}`;
104
- };
105
- const filter = () => {
106
- const ms = ["top", "bottom", "left", "right"];
107
- return ms.filter((m) => location.includes(m))[0];
108
- };
109
- const popoverArrowSelf = () => {
110
- const prefixCls = "popover-arrow";
111
- return `${prefixCls} ${prefixCls}-${filter()} ${location ? `${prefixCls}--${location}` : ""}`;
112
- };
113
- const handleClick = (e) => {
114
- if (props.onClick) {
115
- props.onClick(e);
116
- }
117
- };
118
- const handleChoose = (item, index) => {
119
- if (!item.disabled) {
120
- onChoose(item, index);
121
- }
122
- };
123
- return React.createElement(
124
- React.Fragment,
125
- null,
126
- React.createElement(
127
- "div",
128
- { className: `${classes} ${className}`, style: { ...style }, ...reset },
129
- React.createElement(
130
- Trigger,
131
- { forwardedRef: goodItem },
132
- React.createElement(
133
- "div",
134
- { onClick: (e) => handleClick(e) },
135
- Array.isArray(children) ? children[0] : children,
136
- visible ? React.createElement(
137
- "div",
138
- { className: `${popoverContent}`, style: getStyle() },
139
- React.createElement("div", { className: `${popoverArrow}` }),
140
- Array.isArray(children) ? children[1] : "",
141
- React.createElement("div", null, list.map((item, i) => {
142
- return React.createElement(
143
- "div",
144
- { key: item.name, className: `popover-menu-item ${item.disabled ? "disabled" : ""}`, onClick: () => {
145
- handleChoose(item, i);
146
- } },
147
- item.icon ? item.icon : null,
148
- React.createElement("div", { className: "popover-menu-item-name" }, item.name)
149
- );
150
- }))
151
- ) : null
152
- )
153
- )
154
- ),
155
- visible ? React.createElement(Overlay, { visible, onClick: (e) => handleClick(e), style: { background: "transparent" } }) : null
156
- );
157
- };
158
- Popover.defaultProps = defaultProps;
159
- Popover.displayName = "NutPopover";
160
- export {
161
- Popover as P
162
- };
@@ -1,12 +0,0 @@
1
- import React from "react";
2
- const SideNavBarItem = (props) => {
3
- const { title, key, children, onClick, ...rest } = props;
4
- const clickFn = (e) => {
5
- e.stopPropagation();
6
- onClick && onClick({ title, key });
7
- };
8
- return React.createElement("div", { className: "nut-subsidenavbar__item border-bt", onClick: clickFn, ...rest }, title);
9
- };
10
- export {
11
- SideNavBarItem as S
12
- };
@@ -1,19 +0,0 @@
1
- import React from 'react';
2
- interface TriggerProps {
3
- className?: string | undefined;
4
- children?: React.ReactNode;
5
- forwardedRef: React.RefObject<HTMLElement>;
6
- }
7
- /**
8
- * 过滤ref
9
- */
10
- export declare function fillRef<T>(ref: React.Ref<T>, node: T): void;
11
- /**
12
- * 将ref合并到一个ref函数中以支持ref传递
13
- */
14
- export declare function composeRef<T>(...refs: React.Ref<T>[]): React.Ref<T>;
15
- export default class Trigger extends React.Component<TriggerProps, unknown> {
16
- fireEvents(type: string, e: Event): void;
17
- render(): JSX.Element;
18
- }
19
- export {};
@@ -1,34 +0,0 @@
1
- import React from 'react';
2
- type NavBarProps = {
3
- showhead?: boolean;
4
- };
5
- export interface SideNavBarProps extends React.HTMLAttributes<HTMLDivElement>, NavBarProps {
6
- title: string;
7
- visible: boolean;
8
- width?: string;
9
- offset?: number;
10
- position?: 'left' | 'right';
11
- handleClose: () => void;
12
- children?: React.ReactNode;
13
- }
14
- export type SideNavBarItemProps = {
15
- title: string;
16
- key: string | number;
17
- click?: ({ title, key }: {
18
- title: string;
19
- key: string | number;
20
- }) => void;
21
- children?: React.ReactNode;
22
- };
23
- export type SubNavBarProps = {
24
- title: string;
25
- key: string | number;
26
- open?: boolean;
27
- children?: React.ReactNode;
28
- titleClick?: ({ title, key, isShow, }: {
29
- title: string;
30
- key: string | number;
31
- isShow: boolean;
32
- }) => void;
33
- };
34
- export {};
@@ -1,10 +0,0 @@
1
- const getRectByTaro = async (element) => {
2
- if (element) {
3
- const res = await element.getBoundingClientRect();
4
- return res;
5
- }
6
- return Promise.resolve({});
7
- };
8
- export {
9
- getRectByTaro as g
10
- };
@@ -1,19 +0,0 @@
1
- import React from 'react';
2
- interface TriggerProps {
3
- className?: string | undefined;
4
- children?: React.ReactNode;
5
- forwardedRef: React.RefObject<HTMLElement>;
6
- }
7
- /**
8
- * 过滤ref
9
- */
10
- export declare function fillRef<T>(ref: React.Ref<T>, node: T): void;
11
- /**
12
- * 将ref合并到一个ref函数中以支持ref传递
13
- */
14
- export declare function composeRef<T>(...refs: React.Ref<T>[]): React.Ref<T>;
15
- export default class Trigger extends React.Component<TriggerProps, unknown> {
16
- fireEvents(type: string, e: Event): void;
17
- render(): JSX.Element;
18
- }
19
- export {};