@cloudbase/weda-ui 3.18.3 → 3.18.5

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.
@@ -218,7 +218,7 @@ const data = Type.Object({
218
218
  outerImage: '',
219
219
  iconPosition: 'prefix',
220
220
  isDisabled: false,
221
- slotKey: "{{($self.value.length+1) + ''}}",
221
+ slotKey: '{{Date.now().toString(36)}}',
222
222
  },
223
223
  display: 'label',
224
224
  'x-icon': "this.iconType === 'inner' ? this.innerIcon : null",
@@ -203,7 +203,7 @@ const data = Type.Object({
203
203
  outerImage: '',
204
204
  iconPosition: 'prefix',
205
205
  isDisabled: false,
206
- slotKey: "{{($self.value.length+1) + ''}}",
206
+ slotKey: '{{Date.now().toString(36)}}',
207
207
  },
208
208
  display: 'label',
209
209
  'x-icon': "this.iconType === 'inner' ? this.innerIcon : null",
@@ -1,5 +1,5 @@
1
1
  /**
2
- @cloudbase/weda-ui v3.18.3
2
+ @cloudbase/weda-ui v3.18.5
3
3
  */
4
4
  @charset "UTF-8";@media (min-width:1024px){.weda-ui .weui-cells{font-size:1em}.weui .weui-cell_active:active{background-color:unset!important}}@font-face{font-family:lcap-icon;font-weight:400;font-style:normal;src:url(data:application/font-woff2;charset=utf-8;base64,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) format('woff2')}.wd-form--vertical-left .wedatea2td-form .weda-formcells__pc.horizontal,.wd-form--vertical-right .wedatea2td-form .weda-formcells__pc.horizontal,.wedatea2td-form--vertical .wd-form--horizontal-left .wd-form-item-wrap,.wedatea2td-form--vertical .wd-form--horizontal-right .wd-form-item-wrap,.wedatea2td-form--vertical .wd-form-item.wd-form-item--horizontal-left .wd-form-item-wrap,.wedatea2td-form--vertical .wd-form-item.wd-form-item--horizontal-right .wd-form-item-wrap,.wedatea2td-form--vertical .wedatea2td-form .weda-formcells__pc.horizontal{flex-direction:column}.g-swiper-item>div>*{max-width:100%;max-height:100%;object-fit:cover;max-width:100%;object-fit:cover;max-width:100%;max-height:100%;object-fit:cover;width:100%;height:auto;max-width:100%;object-fit:cover}.form-detail-wrap .form-detail-content-wrap .form-detail-group-header-container{display:flex;align-items:center;justify-content:space-between}.weda-graphic-card .weda-graphic-card__col .weda-graphic-card__title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.weda-graphic-card .weda-graphic-card__col .weda-graphic-card__desc{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.weda-menu .wedatea2td-menu--light .wedatea2td-menu__list li.is-selected>.wedatea2td-menu__item:hover,.wedatea2td-drawer .wedatea2td-menu--light .wedatea2td-menu__list li .wedatea2td-menu__item:hover{background-color:var(--weda-navigation-menu-hover-color)}.weda-menu-mobile .weda-menu__wrapper{display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 2px rgba(0,0,0,.05)}.weda-menu .wedatea2td-menu__text .menu-text,.weda-menu__drawer .wedatea2td-menu__text .menu-text{display:flex;justify-content:center;align-items:center}@media (max-width:1024px){.g-swiper .g-swiper__turn-next,.g-swiper .g-swiper__turn-pre{display:none}.modal-table-delete .wedatea2td-dialog__inner,.model-relation-selector-modal .wedatea2td-dialog__inner,.wedatea2td-dialog__inner{min-width:0;width:90%;margin:10px 0}.wedatea2td-form.model-form{width:100%}}.markdown-body .octicon{fill:currentColor}.markdown-body pre{word-wrap:normal}.wd-form-item.wd-pc-rich-text-root .ExEditor-basic,.wd-form-item.wd-pc-rich-text-root .exeditor-toolbar{background-color:inherit}.wd-add-relation-button-wrap{display:flex;align-items:center;color:var(--wd-color-brand,#0052d9);white-space:pre-wrap}.weda-import-csv-file-modal .file-json-map-wrap{display:flex;flex-direction:column;box-sizing:border-box}.weda-import-csv-file-modal .import-file-result-wrap .error-container{display:flex;flex-direction:column}.weda-import-csv-file-modal .import-file-result-wrap .error-content{flex:1}.wd-table-wrap-filter .wedatea2td-input:focus,.wd-table-wrap-filter .wedatea2td-input:hover,.wd-table-wrap-filter .wedatea2td-textarea-group:focus,.wd-table-wrap-filter .wedatea2td-textarea-group:hover,.wd-table-wrap-filter .wedatea2td-textarea:focus,.wd-table-wrap-filter .wedatea2td-textarea:hover,.wedatea2td-overlay .wedatea2td-checkbox:focus,.wedatea2td-overlay .wedatea2td-checkbox:hover,.wedatea2td-overlay input[type=checkbox]:focus,.wedatea2td-overlay input[type=checkbox]:hover{border-color:var(--wd-color-brand,#0052d9)}.weda-ui_mapChoose_search_input_clear{display:flex;justify-content:center}.form-select-map .wedatea2td-dialog__inner{box-shadow:none;min-width:100vw!important}.weda-ui-custom-calendar-op__end,.weda-ui-custom-calendar-op__start{display:flex;align-items:center}.weui-tag span{word-wrap:break-word;word-break:break-word}.weda-ui-user-select-container-list__start .depart-tree .wedatea2td-tree__node.is-selected>.wedatea2td-tree__node-content,.weda-ui-user-select-container-list__start .depart-tree .wedatea2td-tree__node.is-selected>.wedatea2td-tree__node-content .wedatea2td-tree__label,.weda-ui-user-select-container-list__start .wedatea2td-tree.wedatea2td-tree--checkbox-separate .wedatea2td-tree__node.is-selected>.wedatea2td-tree__node-content .wedatea2td-tree__label .wedatea2td-tree__label-title{background-color:var(--wd-color-brand-light,#d4e3fc)}.weda-select-user-dept-breadcrumb{display:flex;align-items:center}.form-location-con_disabled{opacity:.4}body{font-size:var(--wd-font-base)}@font-face{font-family:wd-lcap-icon;font-weight:400;font-style:normal;src:url(data:application/font-woff2;charset=utf-8;base64,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) format("woff2")}.t-icon{speak:none;text-transform:none;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wd-space-align-items--flex-start{align-items:flex-start;align-items:center;align-items:flex-end}.wd-space-justify-content--flex-start{justify-content:flex-start;justify-content:center;justify-content:flex-end}.wd-btn{--wd-btn-sm-padding:0.0625rem calc(var(--wd-space-base) * 2);--wd-btn-md-padding:0.25rem calc(var(--wd-space-base) * 4);--wd-btn-lg-padding:0.4375rem calc(var(--wd-space-base) * 6);--wd-btn-margin-top:0;--wd-btn-margin-top:0;--wd-btn-font-size-sm:var(--wd-font-size-2);--wd-btn-line-height-sm:1.5;--wd-btn-min-height-sm:24px;--wd-btn-font-size-md:var(--wd-font-size-3);--wd-btn-line-height-md:1.5;--wd-btn-min-height-md:32px;--wd-btn-font-size-lg:var(--wd-font-size-4);--wd-btn-line-height-lg:1.5;--wd-btn-min-height-lg:40px;--wd-btn-icon-space-sm:var(--wd-space-base);--wd-btn-icon-space-md:calc(var(--wd-space-base) * 2);--wd-btn-icon-space-lg:calc(var(--wd-space-base) * 3);--wd-btn-icon-size-sm:calc(var(--wd-btn-font-size-sm) + 0.125rem);--wd-btn-icon-size-md:calc(var(--wd-btn-font-size-md) + 0.125rem);--wd-btn-icon-size-lg:calc(var(--wd-btn-font-size-lg) + 0.25rem);--wd-btn-border-radius:var(--wd-border-radius);--wd-btn-color-text:var(--wd-color-text-default);--wd-btn-color-text-inverse:var(--wd-color-text-inverse);--wd-btn-color-text-hover:var(--wd-color-text-default);--wd-btn-color-text-active:var(--wd-color-text-default);--wd-btn-color-text-focus:var(--wd-color-text-default);--wd-btn-color-text-disabled:var(--wd-color-text-disabled);--wd-btn-color-brand:var(--wd-color-brand);--wd-btn-color-brand-hover:var(--wd-color-brand-hover);--wd-btn-color-brand-active:var(--wd-color-brand-active);--wd-btn-color-brand-focus:var(--wd-color-brand-focus);--wd-btn-color-brand-disabled:var(--wd-color-brand-disabled);--wd-btn-color-warning:var(--wd-color-warning);--wd-btn-color-warning-hover:var(--wd-color-warning-hover);--wd-btn-color-warning-active:var(--wd-color-warning-active);--wd-btn-color-warning-focus:var(--wd-color-warning-focus);--wd-btn-color-warning-disabled:var(--wd-color-warning-disabled);--wd-btn-color-error:var(--wd-color-error);--wd-btn-color-error-hover:var(--wd-color-error-hover);--wd-btn-color-error-active:var(--wd-color-error-active);--wd-btn-color-error-focus:var(--wd-color-error-focus);--wd-btn-color-error-disabled:var(--wd-color-error-disabled);--wd-btn-color-gray:var(
5
5
  --wd-color-gray-1
@@ -68,6 +68,19 @@ export const Upload = forwardRef(function Upload({ children, ...props }, ref) {
68
68
  const [uploadInstance, setUploadInstance] = useState({
69
69
  config,
70
70
  });
71
+ const handleChange = useCallback((allFile = [], isDelete = false) => {
72
+ var _a;
73
+ updatePreviewFile(allFile);
74
+ const getTempFile = (allFile = []) => {
75
+ let value = allFile.map((i) => i === null || i === void 0 ? void 0 : i.cloudId).filter((j) => !!j);
76
+ value = !multiple ? value[0] || '' : value;
77
+ return value;
78
+ };
79
+ const value = getTempFile(allFile);
80
+ onChange === null || onChange === void 0 ? void 0 : onChange(value);
81
+ (_a = events === null || events === void 0 ? void 0 : events.change) === null || _a === void 0 ? void 0 : _a.call(events, { value, isDelete });
82
+ setInputId(getUuid());
83
+ }, [events, multiple, onChange]);
71
84
  const uploadChange = useCallback(async (e) => {
72
85
  const { accepts, maxSize, maxUploadCount } = config;
73
86
  let files = [...e.target.files];
@@ -116,21 +129,9 @@ export const Upload = forwardRef(function Upload({ children, ...props }, ref) {
116
129
  tempFiles = await getBase64(tempFiles);
117
130
  const allTempFile = [...previewFile, ...tempFiles];
118
131
  updatePreviewFile(allTempFile);
119
- await uploadAction(tempFiles, uploadInstance, allTempFile);
120
- }, [config, previewFile, uploadInstance]);
121
- const handleChange = useCallback((allFile = [], isDelete = false) => {
122
- var _a;
123
- updatePreviewFile(allFile);
124
- const getTempFile = (allFile = []) => {
125
- let value = allFile.map((i) => i === null || i === void 0 ? void 0 : i.cloudId).filter((j) => !!j);
126
- value = !multiple ? value[0] || '' : value;
127
- return value;
128
- };
129
- const value = getTempFile(allFile);
130
- onChange === null || onChange === void 0 ? void 0 : onChange(value);
131
- (_a = events === null || events === void 0 ? void 0 : events.change) === null || _a === void 0 ? void 0 : _a.call(events, { value, isDelete });
132
- setInputId(getUuid());
133
- }, [events, multiple, onChange]);
132
+ const allFile = await uploadAction(tempFiles, uploadInstance, allTempFile);
133
+ handleChange(allFile);
134
+ }, [config, previewFile, uploadInstance, handleChange]);
134
135
  // 点击上传
135
136
  const onClick = useCallback(() => {
136
137
  const el = inputRef;
@@ -158,9 +159,7 @@ export const Upload = forwardRef(function Upload({ children, ...props }, ref) {
158
159
  onUploadProgress(item) {
159
160
  updatePreviewFile((allTempFile) => allTempFile.map((i) => (i.key === item.key ? { ...i, ...item } : i)));
160
161
  },
161
- onComplete(result) {
162
- handleChange(result);
163
- },
162
+ onComplete() { },
164
163
  onSuccess(item) {
165
164
  var _a;
166
165
  updatePreviewFile((allTempFile) => allTempFile.map((i) => (i.key === item.key ? { ...i, ...item } : i)));
@@ -17,4 +17,4 @@ export declare const getInitTempFile: ({ value }: {
17
17
  }) => TempFileProps[];
18
18
  export declare const CLASS_PREFIX = "weda-uploader-pc";
19
19
  export declare const IMAGE_TYPES: string[];
20
- export declare const upload: (fileList: any, uploadInstance: any, allTempFile: any) => Promise<void>;
20
+ export declare const upload: (fileList: any, uploadInstance: any, allTempFile: any) => Promise<any>;
@@ -209,4 +209,5 @@ export const upload = async (fileList, uploadInstance, allTempFile) => {
209
209
  });
210
210
  const allFile = allTempFile.map((i) => result.find((j) => (j === null || j === void 0 ? void 0 : j.key) === (i === null || i === void 0 ? void 0 : i.key)) || i);
211
211
  onComplete(allFile);
212
+ return allFile;
212
213
  };
@@ -11,7 +11,7 @@ const clickHandler = (event) => {
11
11
  const target = event.target;
12
12
  const anchor = target.closest('a');
13
13
  if (anchor) {
14
- getOnClick({ url: anchor.href })(event);
14
+ getOnClick({ url: anchor.href, simulatingAnchorScrolling: true })(event);
15
15
  }
16
16
  };
17
17
  export default function RichTextView({ value = '', className, style, id }) {
@@ -17,7 +17,7 @@ const clickHandler = (event) => {
17
17
  const target = event.target;
18
18
  const anchor = target.closest('a');
19
19
  if (anchor) {
20
- getOnClick({ url: anchor.href })(event);
20
+ getOnClick({ url: anchor.href, simulatingAnchorScrolling: true })(event);
21
21
  }
22
22
  };
23
23
  export const WdMarkdown = forwardRef(function WdMarkdown({ value = '', options, className, style, id, events }, ref) {
@@ -14,6 +14,7 @@ import isObjectEqual from '../../../utils/isObjectEqual';
14
14
  import { deepClone } from '../../../utils/tool';
15
15
  import { useChooseList } from '../hooks/useChooseList';
16
16
  import { getDefaultQuery } from './queryParams';
17
+ import { EnumHoc } from '../../../utils/hooks/EnumHoc';
17
18
  const OptionText = ({ mode, option, selectFields, authFields, onChange, onRelationOptionJump, enableRelationOptionJump, }) => {
18
19
  const platform = usePlatform();
19
20
  const columns = useMemo(() => {
@@ -153,15 +154,15 @@ export function RelationSelect(props) {
153
154
  searchOptionListWithWhere(filter);
154
155
  onSearch(keyword);
155
156
  };
156
- return (_jsx(Select, { ...props, overlayClassName: isRelationSelectOption ? 'wd-relation-select-overlay' : '', searchable: searchable, listWidth: listWidth, listHeight: _listHeight, matchButtonWidth: _matchButtonWidth, placeholder: placeholder, appearance: 'button', filter: () => true, size: size, disabled: disabled, autoClearSearchValue: true, options: customOptions, value: value, onChange: onChange, onSearch: searchHandle, bottomTips: isLoading ? _jsx(LoadingTip, {}) : undefined, onScrollBottom: () => {
157
- if (!isLoading && customOptions.length < total) {
158
- setQuery((query) => ({
159
- ...query,
160
- pageNo: query.pageNo + defaultPage,
161
- }));
162
- }
163
- }, onOpen: () => {
164
- setIsLoading(true);
165
- searchOptionListWithWhere();
166
- }, mode: mode }));
157
+ return (_jsx(EnumHoc, { fields: authFields, children: _jsx(Select, { ...props, overlayClassName: isRelationSelectOption ? 'wd-relation-select-overlay' : '', searchable: searchable, listWidth: listWidth, listHeight: _listHeight, matchButtonWidth: _matchButtonWidth, placeholder: placeholder, appearance: 'button', filter: () => true, size: size, disabled: disabled, autoClearSearchValue: true, options: customOptions, value: value, onChange: onChange, onSearch: searchHandle, bottomTips: isLoading ? _jsx(LoadingTip, {}) : undefined, onScrollBottom: () => {
158
+ if (!isLoading && customOptions.length < total) {
159
+ setQuery((query) => ({
160
+ ...query,
161
+ pageNo: query.pageNo + defaultPage,
162
+ }));
163
+ }
164
+ }, onOpen: () => {
165
+ setIsLoading(true);
166
+ searchOptionListWithWhere();
167
+ }, mode: mode }) }));
167
168
  }
@@ -1,2 +1,4 @@
1
+ import '../form/select/dropdown-select/index.css';
2
+ import '../form/select/allTimePicker/index.css';
1
3
  import '../style';
2
4
  import './wd-select.css';
@@ -1,4 +1,4 @@
1
- // import '../form/select/dropdown-select/index.css';
2
- // import '../form/select/allTimePicker/index.css';
1
+ import '../form/select/dropdown-select/index.css';
2
+ import '../form/select/allTimePicker/index.css';
3
3
  import '../style';
4
4
  import './wd-select.css';
@@ -22,7 +22,9 @@ export const WdSelect = forwardRef(function WsSelect(props, ref) {
22
22
  const { classRoot = 'select', clearable = X_RUNTIME_DEFAULT.clearable, placeholder, range, format, tipBlock = X_RUNTIME_DEFAULT.tipBlock, where = X_RUNTIME_DEFAULT.where, enumName, primaryField, viewId, dataSourceName, events = emptyObject, ignoreCase = X_RUNTIME_DEFAULT.ignoreCase, staticSearchable = X_RUNTIME_DEFAULT.staticSearchable, enableRelationalSetting = X_RUNTIME_DEFAULT.enableRelationalSetting, enableRelationalRefresh = X_RUNTIME_DEFAULT.enableRelationalRefresh, addRelationButtonText = X_RUNTIME_DEFAULT.addRelationButtonText, enableAddRelationButton = X_RUNTIME_DEFAULT.enableAddRelationButton, enableRelationOptionJump = X_RUNTIME_DEFAULT.enableRelationOptionJump, popupContainer, selectFields: customFields = [], // 自定义展示字段
23
23
  selectFieldType = 'primary', searchPlaceholder, searchable = X_RUNTIME_DEFAULT.searchable, filterable = X_RUNTIME_DEFAULT.filterable, selectFieldLabel, } = props;
24
24
  const childRef = useRef(null);
25
- const [options, setOptions] = useSyncValue(range, isObjectEqual);
25
+ // 是否是关联
26
+ const isRelation = isFormatWithRelation(format);
27
+ const [options, setOptions] = useSyncValue(isRelation ? [] : range, isObjectEqual);
26
28
  const [innerHandle, setInnerHandle] = useState({});
27
29
  const traitProps = { ...props, inputRef: ref, setInnerHandle };
28
30
  const trait = useFormInputTrait(traitProps);
@@ -60,7 +62,6 @@ export const WdSelect = forwardRef(function WsSelect(props, ref) {
60
62
  const onBlur = (e) => {
61
63
  (events === null || events === void 0 ? void 0 : events.blur) && (events === null || events === void 0 ? void 0 : events.blur(null, { originEvent: e }));
62
64
  };
63
- const isRelation = isFormatWithRelation(format);
64
65
  const LabelAdornment = isRelation && (_jsx(RelationalSetting, { size: props.size, refresh: () => {
65
66
  var _a;
66
67
  if (childRef.current) {
@@ -23,7 +23,9 @@ export const WdSelectMultiple = forwardRef(function WdSelectMultiple(props, ref)
23
23
  const { classRoot = 'select-multiple', clearable = X_RUNTIME_DEFAULT.clearable, placeholder, range, enumName, format, primaryField, tipBlock = X_RUNTIME_DEFAULT.tipBlock, viewId, dataSourceName, events = emptyObject, ignoreCase = X_RUNTIME_DEFAULT.ignoreCase, staticSearchable = X_RUNTIME_DEFAULT.staticSearchable, where = X_RUNTIME_DEFAULT.where, enableRelationalSetting = X_RUNTIME_DEFAULT.enableRelationalSetting, enableRelationalRefresh = X_RUNTIME_DEFAULT.enableRelationalRefresh, addRelationButtonText = X_RUNTIME_DEFAULT.addRelationButtonText, enableAddRelationButton = X_RUNTIME_DEFAULT.enableAddRelationButton, enableRelationOptionJump = X_RUNTIME_DEFAULT.enableRelationOptionJump, popupContainer, selectFields: customFields = [], // 自定义展示字段
24
24
  selectFieldType = 'primary', searchPlaceholder, searchable = X_RUNTIME_DEFAULT.searchable, filterable = X_RUNTIME_DEFAULT.filterable, selectFieldLabel, } = props;
25
25
  const childRef = useRef(null);
26
- const [options, setOptions] = useSyncValue(range, isObjectEqual);
26
+ // 是否是关联
27
+ const isRelation = isFormatWithRelation(format);
28
+ const [options, setOptions] = useSyncValue(isRelation ? [] : range, isObjectEqual);
27
29
  const [innerHandle, setInnerHandle] = useState({});
28
30
  const traitProps = { ...props, inputRef: ref, setInnerHandle };
29
31
  const trait = useFormInputTrait(traitProps);
@@ -62,7 +64,6 @@ export const WdSelectMultiple = forwardRef(function WdSelectMultiple(props, ref)
62
64
  const onBlur = (e) => {
63
65
  (events === null || events === void 0 ? void 0 : events.blur) && events.blur(null, { originEvent: e });
64
66
  };
65
- const isRelation = isFormatWithRelation(format);
66
67
  const LabelAdornment = isRelation && (_jsx(RelationalSetting, { size: props.size, refresh: () => {
67
68
  var _a;
68
69
  if (childRef.current) {
@@ -76,7 +76,7 @@ export declare const formatFieldToColumn: (field: any, isH5: any, columnSets: an
76
76
  align: any;
77
77
  fixed: string;
78
78
  };
79
- export declare const getFieldWidth: (field: any) => number;
79
+ export declare const getFieldWidth: (field?: any) => number;
80
80
  /**
81
81
  * https://tcloud-dev.oa.com/document/product/1505/58791?!preview&!document=1
82
82
  * @param {[String]} processHold [占有: object, 存在, 被有一个流程拥有, 置灰]
@@ -21,6 +21,7 @@ import { errorHandler } from '../../../../utils/error';
21
21
  import { ImagePreview } from './ImagePreview';
22
22
  import { VideoPreview } from './VideoPreview';
23
23
  import { ModalTable } from '../ModalTable';
24
+ import { textToString } from '../../../../utils/platform';
24
25
  import { getWhereParam, getSortColumns } from '../../utils';
25
26
  import lodashGet from 'lodash.get';
26
27
  const MODAL_SIZE = '80%';
@@ -277,7 +278,19 @@ export function getFieldRender(field = {}, extra = {}) {
277
278
  return _jsx(ArrayComponent, { isH5: isH5, value: fieldValue, field: field, modelType: modelType, items: items });
278
279
  }
279
280
  }
280
- return _jsx("span", { children: JSON.stringify(fieldValue) });
281
+ if (fieldValue !== null && typeof fieldValue === 'object') {
282
+ try {
283
+ return _jsx("span", { children: JSON.stringify(fieldValue) });
284
+ }
285
+ catch (e) {
286
+ if (e instanceof TypeError && e.message.includes('circular')) {
287
+ return _jsx("span", { children: textToString(fieldValue) });
288
+ }
289
+ // 其他错误(如 BigInt)继续抛出或处理
290
+ return _jsx("span", { children: "[Unserializable Data]" });
291
+ }
292
+ }
293
+ return _jsx("span", { children: textToString(fieldValue) });
281
294
  };
282
295
  return FieldRender;
283
296
  }
@@ -466,7 +479,7 @@ export const formatFieldToColumn = (field, isH5, columnSets, supportManyRelated,
466
479
  };
467
480
  };
468
481
  // 计算 field 占据的宽度
469
- export const getFieldWidth = (field) => {
482
+ export const getFieldWidth = (field = {}) => {
470
483
  var _a;
471
484
  const TypeFormatWidthMap = {
472
485
  string: {
@@ -493,7 +506,7 @@ export const getFieldWidth = (field) => {
493
506
  'x-file': 150,
494
507
  },
495
508
  };
496
- const { title = '', type = '', format = '', items } = field;
509
+ const { title = '', type = '', format = '', items = {} } = field;
497
510
  // 按名称列宽度
498
511
  const nameWidth = title.length * 25;
499
512
  // 按类型列宽度
@@ -5,17 +5,18 @@ export const getOnClick = (props) => {
5
5
  const { url, options, events } = props;
6
6
  const isMobile = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|IEMobile)/i);
7
7
  return async (e) => {
8
- var _a, _b, _c, _d, _e, _f, _g;
8
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
9
9
  (events === null || events === void 0 ? void 0 : events.tap) && events.tap({}, { originEvent: e });
10
10
  // a 标签直接跳转
11
11
  if (/^(https?:|#)/.test(url)) {
12
12
  const isHashLink = url.includes('#');
13
13
  const isOrigin = url.startsWith(window.location.origin);
14
- const isEditorMode = (_b = (_a = window.$w) === null || _a === void 0 ? void 0 : _a.wedaContext) === null || _b === void 0 ? void 0 : _b.isEditorMode;
14
+ const isHashRouter = ((_c = (_b = (_a = window.$w) === null || _a === void 0 ? void 0 : _a.app.__internal__.getConfig()) === null || _b === void 0 ? void 0 : _b.historyOptions) === null || _c === void 0 ? void 0 : _c.isHash) ||
15
+ ['hash', 'HASH'].includes((_f = (_e = (_d = window.$w) === null || _d === void 0 ? void 0 : _d.app.__internal__.getConfig()) === null || _e === void 0 ? void 0 : _e.historyOptions) === null || _f === void 0 ? void 0 : _f.type);
15
16
  const targetId = url.split('#')[1];
16
- const target = targetId ? document.getElementById(targetId) : null;
17
- // 编辑器模式下的锚点滚动
18
- if (isEditorMode && target) {
17
+ const target = document.getElementById(targetId) || ((_g = document.getElementsByName(targetId)) === null || _g === void 0 ? void 0 : _g[0]);
18
+ // hash路由下模拟锚点滚动
19
+ if (isHashRouter && target && (props === null || props === void 0 ? void 0 : props.simulatingAnchorScrolling)) {
19
20
  if ((isOrigin && isHashLink) || url.startsWith('#')) {
20
21
  if (!e.defaultPrevented) {
21
22
  e.preventDefault();
@@ -49,10 +50,10 @@ export const getOnClick = (props) => {
49
50
  }, {});
50
51
  }
51
52
  // 页面参数,如果存在变量绑定,以绑定值为准
52
- if ((_c = props === null || props === void 0 ? void 0 : props.params) === null || _c === void 0 ? void 0 : _c[pageId]) {
53
- params = { ...params, ...(_d = props === null || props === void 0 ? void 0 : props.params) === null || _d === void 0 ? void 0 : _d[pageId] };
53
+ if ((_h = props === null || props === void 0 ? void 0 : props.params) === null || _h === void 0 ? void 0 : _h[pageId]) {
54
+ params = { ...params, ...(_j = props === null || props === void 0 ? void 0 : props.params) === null || _j === void 0 ? void 0 : _j[pageId] };
54
55
  }
55
- (_e = window === null || window === void 0 ? void 0 : window.app) === null || _e === void 0 ? void 0 : _e.navigateTo({
56
+ (_k = window === null || window === void 0 ? void 0 : window.app) === null || _k === void 0 ? void 0 : _k.navigateTo({
56
57
  pageId,
57
58
  packageName: packageName === 'main' ? '' : packageName,
58
59
  mode: (options === null || options === void 0 ? void 0 : options.target) === '_blank' ? 'web' : 'weDa',
@@ -68,11 +69,11 @@ export const getOnClick = (props) => {
68
69
  });
69
70
  }
70
71
  else {
71
- (_f = window === null || window === void 0 ? void 0 : window.app) === null || _f === void 0 ? void 0 : _f.navigateTo({ url, options });
72
+ (_l = window === null || window === void 0 ? void 0 : window.app) === null || _l === void 0 ? void 0 : _l.navigateTo({ url, options });
72
73
  }
73
74
  break;
74
75
  default:
75
- (_g = window === null || window === void 0 ? void 0 : window.app) === null || _g === void 0 ? void 0 : _g.navigateTo({ url, options });
76
+ (_m = window === null || window === void 0 ? void 0 : window.app) === null || _m === void 0 ? void 0 : _m.navigateTo({ url, options });
76
77
  break;
77
78
  }
78
79
  }
@@ -221,7 +221,7 @@ export const convertSingleValue = (value, single) => {
221
221
  let v = value;
222
222
  if (value !== null) {
223
223
  if (single && typeof value !== 'string') {
224
- v = Array.isArray(value) ? value[0] : null;
224
+ v = Array.isArray(value) && (value === null || value === void 0 ? void 0 : value.length) ? value[0] : null;
225
225
  }
226
226
  else if (!single && !Array.isArray(value)) {
227
227
  v = value ? [].concat(value) : [];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/weda-ui",
3
- "version": "3.18.3",
3
+ "version": "3.18.5",
4
4
  "main": "./dist/index.js",
5
5
  "module": "./dist/index",
6
6
  "miniprogram": "mpdist",