@cloudbase/weda-ui 3.6.3 → 3.7.1

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 (92) hide show
  1. package/dist/configs/components/form-location.d.ts +2 -2
  2. package/dist/configs/components/wd-card.d.ts +14 -14
  3. package/dist/configs/components/wd-card.js +38 -32
  4. package/dist/configs/components/wd-cascader.d.ts +276 -0
  5. package/dist/configs/components/wd-cascader.js +183 -0
  6. package/dist/configs/components/wd-code-editor.d.ts +245 -0
  7. package/dist/configs/components/wd-code-editor.js +92 -0
  8. package/dist/configs/components/wd-form-arr.d.ts +193 -0
  9. package/dist/configs/components/wd-form-arr.js +206 -0
  10. package/dist/configs/components/wd-form-obj.d.ts +181 -0
  11. package/dist/configs/components/wd-form-obj.js +107 -0
  12. package/dist/configs/components/wd-form.d.ts +2 -2
  13. package/dist/configs/components/wd-image.js +1 -1
  14. package/dist/configs/components/wd-table.d.ts +3 -3
  15. package/dist/configs/components/wd-upload-file.d.ts +1 -0
  16. package/dist/configs/components/wd-upload-file.js +4 -1
  17. package/dist/configs/components/wd-upload-image.d.ts +2 -0
  18. package/dist/configs/components/wd-upload-image.js +4 -1
  19. package/dist/configs/components/web-view.d.ts +20 -1
  20. package/dist/configs/components/web-view.js +22 -1
  21. package/dist/configs/index.d.ts +1604 -28
  22. package/dist/configs/index.js +8 -0
  23. package/dist/configs/type-utils/type-form.d.ts +22 -0
  24. package/dist/configs/type-utils/type-form.js +58 -1
  25. package/dist/configs/type-utils/x-runtime-default.d.ts +3 -0
  26. package/dist/configs/type-utils/x-runtime-default.js +3 -0
  27. package/dist/enum/index.d.ts +8 -0
  28. package/dist/enum/index.js +11 -0
  29. package/dist/style/index.scss +1 -1
  30. package/dist/web/components/container/index.js +49 -1
  31. package/dist/web/components/form/uploader/uploader.h5.js +3 -3
  32. package/dist/web/components/form/uploader/uploader.pc.js +3 -3
  33. package/dist/web/components/form-input-hooks/index.js +14 -7
  34. package/dist/web/components/form-input-hooks/validator.js +2 -2
  35. package/dist/web/components/form-location/index.d.ts +1 -1
  36. package/dist/web/components/index.d.ts +4 -0
  37. package/dist/web/components/index.js +6 -0
  38. package/dist/web/components/richTextView/index.css +2 -1
  39. package/dist/web/components/wd-cascader/cascader.d.ts +6 -0
  40. package/dist/web/components/wd-cascader/cascader.h5.d.ts +2 -0
  41. package/dist/web/components/wd-cascader/cascader.h5.js +132 -0
  42. package/dist/web/components/wd-cascader/cascader.js +97 -0
  43. package/dist/web/components/wd-cascader/index.d.ts +4 -0
  44. package/dist/web/components/wd-cascader/index.js +3 -0
  45. package/dist/web/components/wd-cascader/interface.d.ts +26 -0
  46. package/dist/web/components/wd-cascader/interface.js +1 -0
  47. package/dist/web/components/wd-cascader/utils.d.ts +6 -0
  48. package/dist/web/components/wd-cascader/utils.js +63 -0
  49. package/dist/web/components/wd-code-editor/index.d.ts +3 -0
  50. package/dist/web/components/wd-code-editor/index.js +3 -0
  51. package/dist/web/components/wd-code-editor/lang/index.d.ts +17 -0
  52. package/dist/web/components/wd-code-editor/lang/index.js +21 -0
  53. package/dist/web/components/wd-code-editor/lang/mongodb/complete.d.ts +8 -0
  54. package/dist/web/components/wd-code-editor/lang/mongodb/complete.js +222 -0
  55. package/dist/web/components/wd-code-editor/lang/mongodb/index.d.ts +2 -0
  56. package/dist/web/components/wd-code-editor/lang/mongodb/index.js +60 -0
  57. package/dist/web/components/wd-code-editor/lang/mongodb/snippets.d.ts +6 -0
  58. package/dist/web/components/wd-code-editor/lang/mongodb/snippets.js +189 -0
  59. package/dist/web/components/wd-code-editor/theme.d.ts +4 -0
  60. package/dist/web/components/wd-code-editor/theme.js +5 -0
  61. package/dist/web/components/wd-code-editor/wd-code-editor.d.ts +9 -0
  62. package/dist/web/components/wd-code-editor/wd-code-editor.js +66 -0
  63. package/dist/web/components/wd-date/elements/Modal.h5.d.ts +2 -0
  64. package/dist/web/components/wd-date/elements/Modal.h5.js +4 -2
  65. package/dist/web/components/wd-form/form-utils.js +1 -1
  66. package/dist/web/components/wd-form/index.d.ts +4 -4
  67. package/dist/web/components/wd-form-arr/index.d.ts +4 -0
  68. package/dist/web/components/wd-form-arr/index.js +3 -0
  69. package/dist/web/components/wd-form-arr/wd-form-arr.d.ts +8 -0
  70. package/dist/web/components/wd-form-arr/wd-form-arr.js +6 -0
  71. package/dist/web/components/wd-form-item/wd-form-item.js +3 -3
  72. package/dist/web/components/wd-form-obj/base-form-obj.d.ts +13 -0
  73. package/dist/web/components/wd-form-obj/base-form-obj.js +351 -0
  74. package/dist/web/components/wd-form-obj/index.d.ts +4 -0
  75. package/dist/web/components/wd-form-obj/index.js +3 -0
  76. package/dist/web/components/wd-form-obj/wd-form-obj.d.ts +9 -0
  77. package/dist/web/components/wd-form-obj/wd-form-obj.js +7 -0
  78. package/dist/web/components/wd-input/wd-input.d.ts +2 -2
  79. package/dist/web/components/wd-input-phone/wd-input-phone.js +2 -2
  80. package/dist/web/components/wd-table/utils/index.js +20 -8
  81. package/dist/web/components/wd-table/wd-table.js +4 -2
  82. package/dist/web/components/wd-tabs/tabs.d.ts +1 -1
  83. package/dist/web/components/wd-textarea/calcTextareaHeight.d.ts +1 -0
  84. package/dist/web/components/wd-textarea/calcTextareaHeight.js +45 -0
  85. package/dist/web/components/wd-textarea/wd-textarea.js +4 -6
  86. package/dist/web/components/wd-unified-link/index.js +2 -2
  87. package/dist/web/components/web-view/web-view.js +15 -4
  88. package/dist/web/utils/tool.d.ts +1 -0
  89. package/dist/web/utils/tool.js +4 -1
  90. package/dist/web/utils/widget-api/index.d.ts +20 -0
  91. package/dist/web/utils/widget-api/index.js +14 -0
  92. package/package.json +8 -1
@@ -1,8 +1,9 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { forwardRef, useImperativeHandle, useRef, useEffect, } from 'react';
2
+ import { forwardRef, useRef, useEffect } from 'react';
3
3
  import classNames from '../../utils/classnames';
4
4
  import { useConfig } from '../../utils/config-context';
5
5
  import { isInIde, usePlatform } from '../../utils/platform';
6
+ import { useSetWidgetApi } from '../../utils/widget-api/use-set-widget-api';
6
7
  import { Bubble } from 'tea-component';
7
8
  import EmptyContent from '../statusContent';
8
9
  import './style';
@@ -46,9 +47,19 @@ export const WebView = forwardRef(function WebView({ link = '', events, classNam
46
47
  (events === null || events === void 0 ? void 0 : events.load) && (events === null || events === void 0 ? void 0 : events.load({ src: link }));
47
48
  }
48
49
  // Widget API,挂载组件只读属性和组件方法
49
- useImperativeHandle(ref, () => {
50
- return { link };
51
- }, [link]);
50
+ useSetWidgetApi(() => {
51
+ return {
52
+ link,
53
+ postMessage: (params) => {
54
+ if (params === null || params === void 0 ? void 0 : params.transfer) {
55
+ window === null || window === void 0 ? void 0 : window.postMessage(params === null || params === void 0 ? void 0 : params.message, params === null || params === void 0 ? void 0 : params.targetOrigin, params === null || params === void 0 ? void 0 : params.transfer);
56
+ }
57
+ else {
58
+ window === null || window === void 0 ? void 0 : window.postMessage(params === null || params === void 0 ? void 0 : params.message, params === null || params === void 0 ? void 0 : params.targetOrigin);
59
+ }
60
+ },
61
+ };
62
+ }, [link], ref);
52
63
  useEffect(() => {
53
64
  // 监听message事件
54
65
  window.addEventListener('message', (e) => {
@@ -47,3 +47,4 @@ export declare const safeObj: (v: any) => any;
47
47
  export declare const setRefProp: (ref: any, name: any, value: any) => void;
48
48
  export declare const convertSingleValue: (value: any, single: any) => any;
49
49
  export declare function getUrlPath(p: any, f: any): string;
50
+ export declare function isIOS(): boolean;
@@ -222,7 +222,7 @@ export const setRefProp = (ref, name, value) => {
222
222
  ref.current[name] = value;
223
223
  }
224
224
  };
225
- // 兼容单选多选值类型,上传图片/上传文件
225
+ // 兼容单选多选值类型,上传图片/上传文件/级联选择
226
226
  export const convertSingleValue = (value, single) => {
227
227
  let v = value;
228
228
  if (value !== null) {
@@ -241,3 +241,6 @@ export function getUrlPath(p, f) {
241
241
  const file = f.startsWith('/') ? f.slice(1) : f;
242
242
  return `${path}${file}`;
243
243
  }
244
+ export function isIOS() {
245
+ return /phone|pad|pod|iPhone|iPod|ios|iPad/.test(navigator.userAgent);
246
+ }
@@ -6,3 +6,23 @@ export declare function useWedaAppContext(): {
6
6
  };
7
7
  export declare const FormDetailStatusContext: import("react").Context<string>;
8
8
  export declare const useFormDetailContext: () => string;
9
+ export declare const FormObjContext: import("react").Context<{
10
+ formObjName: string;
11
+ status: 'edit' | 'disabled' | 'readOnly';
12
+ valueChangeFromChild: (params: {
13
+ name: string;
14
+ value: any;
15
+ }) => void;
16
+ addFormItem: (name: string, $widget: IWidget) => () => void;
17
+ }>;
18
+ export declare const useFormObjContext: () => {
19
+ formObjName: string;
20
+ status: 'edit' | 'disabled' | 'readOnly';
21
+ valueChangeFromChild: (params: {
22
+ name: string;
23
+ value: any;
24
+ }) => void;
25
+ addFormItem: (name: string, $widget: IWidget) => () => void;
26
+ };
27
+ export declare const FormObjWidgetContext: import("react").Context<IWidget>;
28
+ export declare const useFormObjWidget: () => IWidget;
@@ -55,3 +55,17 @@ export const useFormDetailContext = () => {
55
55
  const status = useContext(FormDetailStatusContext);
56
56
  return status;
57
57
  };
58
+ // 共享嵌套表单状态
59
+ export const FormObjContext = createContext({
60
+ formObjName: '',
61
+ status: 'edit',
62
+ valueChangeFromChild: () => { },
63
+ addFormItem: () => () => { },
64
+ }, 'FormObj');
65
+ export const useFormObjContext = () => {
66
+ return useContext(FormObjContext);
67
+ };
68
+ export const FormObjWidgetContext = createContext(null, 'FormObjWidget');
69
+ export const useFormObjWidget = () => {
70
+ return useContext(FormObjWidgetContext);
71
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/weda-ui",
3
- "version": "3.6.3",
3
+ "version": "3.7.1",
4
4
  "main": "./dist/index.js",
5
5
  "module": "./dist/index",
6
6
  "miniprogram": "mpdist",
@@ -81,20 +81,27 @@
81
81
  "description": "腾讯云微搭低代码组件库模板",
82
82
  "dependencies": {
83
83
  "@antv/g6": "^4.8.5",
84
+ "@codemirror/autocomplete": "^6.16.0",
85
+ "@codemirror/lang-javascript": "^6.2.2",
86
+ "@codemirror/lang-sql": "^6.6.4",
84
87
  "@loadable/component": "^5.15.3",
85
88
  "@react-hookz/web": "^23.0.0",
86
89
  "@sinclair/typebox": "^0.29.6",
87
90
  "@storybook/addons": "^6.5.16",
88
91
  "@tcwd/style-wedatheme": "^1.0.4",
92
+ "@uiw/codemirror-theme-github": "^4.22.0",
93
+ "@uiw/react-codemirror": "^4.22.0",
89
94
  "@use-gesture/react": "^10.2.27",
90
95
  "await-to-js": "3.0.0",
91
96
  "bootstrap": "^5.2.3",
97
+ "codemirror": "^6.0.1",
92
98
  "compressorjs": "^1.2.1",
93
99
  "dayjs": "^1.10.7",
94
100
  "destr": "^2.0.1",
95
101
  "echarts": "^5.3.0",
96
102
  "echarts-for-react": "^3.0.2",
97
103
  "eslint-plugin-compat": "^4.1.4",
104
+ "js-beautify": "^1.15.1",
98
105
  "jsonexport": "3.2.0",
99
106
  "lodash.get": "^4.4.2",
100
107
  "lodash.isequal": "^4.5.0",