@steedos-widgets/amis-lib 1.2.33 → 1.2.35-beta.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.
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/index.cjs.js +81 -29
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +81 -29
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +81 -29
- package/dist/index.umd.js.map +1 -1
- package/dist/types/lib/converter/amis/tpl.d.ts +1 -0
- package/package.json +2 -2
package/dist/index.cjs.js
CHANGED
|
@@ -426,8 +426,8 @@ function getContrastColor(bgColor) {
|
|
|
426
426
|
/*
|
|
427
427
|
* @Author: baozhoutao@steedos.com
|
|
428
428
|
* @Date: 2022-05-23 09:53:08
|
|
429
|
-
* @LastEditors:
|
|
430
|
-
* @LastEditTime: 2023-
|
|
429
|
+
* @LastEditors: liaodaxue
|
|
430
|
+
* @LastEditTime: 2023-07-28 16:26:31
|
|
431
431
|
* @Description:
|
|
432
432
|
*/
|
|
433
433
|
|
|
@@ -611,6 +611,9 @@ function getPasswordTpl(field){
|
|
|
611
611
|
<% } %>`
|
|
612
612
|
}
|
|
613
613
|
|
|
614
|
+
function getLocationTpl(field){
|
|
615
|
+
return `\${${field.name} ? ${field.name}.address : ''}`
|
|
616
|
+
}
|
|
614
617
|
|
|
615
618
|
async function getFieldTpl (field, options){
|
|
616
619
|
if((field.is_name || field.name === options.labelFieldName) && !options.onlyDisplayLabel){
|
|
@@ -635,6 +638,8 @@ async function getFieldTpl (field, options){
|
|
|
635
638
|
return await getRelatedFieldTpl(field, options);
|
|
636
639
|
case 'master_detail':
|
|
637
640
|
return await getRelatedFieldTpl(field, options);
|
|
641
|
+
case 'location':
|
|
642
|
+
return await getLocationTpl(field);
|
|
638
643
|
case 'number':
|
|
639
644
|
case 'currency':
|
|
640
645
|
return await getNumberTpl(field);
|
|
@@ -977,6 +982,7 @@ var frontend_form_save_and_new$1 = "Save and New";
|
|
|
977
982
|
var frontend_form_cancel$1 = "Cancel";
|
|
978
983
|
var frontend_form_new$1 = "New";
|
|
979
984
|
var frontend_form_edit$1 = "Edit";
|
|
985
|
+
var frontend_form_preview$1 = "Preview";
|
|
980
986
|
var frontend_form_select$1 = "Select";
|
|
981
987
|
var frontend_form_please_select$1 = "Please select";
|
|
982
988
|
var frontend_form_confirm$1 = "Confirm";
|
|
@@ -1059,6 +1065,7 @@ var en_us = {
|
|
|
1059
1065
|
frontend_form_cancel: frontend_form_cancel$1,
|
|
1060
1066
|
frontend_form_new: frontend_form_new$1,
|
|
1061
1067
|
frontend_form_edit: frontend_form_edit$1,
|
|
1068
|
+
frontend_form_preview: frontend_form_preview$1,
|
|
1062
1069
|
frontend_form_select: frontend_form_select$1,
|
|
1063
1070
|
frontend_form_please_select: frontend_form_please_select$1,
|
|
1064
1071
|
frontend_form_confirm: frontend_form_confirm$1,
|
|
@@ -1142,6 +1149,7 @@ var frontend_form_save_and_new = "保存并新建";
|
|
|
1142
1149
|
var frontend_form_cancel = "取消";
|
|
1143
1150
|
var frontend_form_new = "新建";
|
|
1144
1151
|
var frontend_form_edit = "编辑";
|
|
1152
|
+
var frontend_form_preview = "预览";
|
|
1145
1153
|
var frontend_form_select = "选择";
|
|
1146
1154
|
var frontend_form_please_select = "请选择";
|
|
1147
1155
|
var frontend_form_confirm = "确认";
|
|
@@ -1225,6 +1233,7 @@ var zh_cn = {
|
|
|
1225
1233
|
frontend_form_cancel: frontend_form_cancel,
|
|
1226
1234
|
frontend_form_new: frontend_form_new,
|
|
1227
1235
|
frontend_form_edit: frontend_form_edit,
|
|
1236
|
+
frontend_form_preview: frontend_form_preview,
|
|
1228
1237
|
frontend_form_select: frontend_form_select,
|
|
1229
1238
|
frontend_form_please_select: frontend_form_please_select,
|
|
1230
1239
|
frontend_form_confirm: frontend_form_confirm,
|
|
@@ -5663,7 +5672,7 @@ function getLookupSapceUserTreeSchema(){
|
|
|
5663
5672
|
const tree = [{
|
|
5664
5673
|
"type": "input-tree",
|
|
5665
5674
|
"className": "",
|
|
5666
|
-
"inputClassName": "
|
|
5675
|
+
"inputClassName": "p-0",
|
|
5667
5676
|
"id": "u:7fd77b7915b0",
|
|
5668
5677
|
"source": {
|
|
5669
5678
|
"method": "post",
|
|
@@ -5724,7 +5733,7 @@ function getLookupSapceUserTreeSchema(){
|
|
|
5724
5733
|
"left": "-200px",
|
|
5725
5734
|
"width": "190px",
|
|
5726
5735
|
"bottom": 0,
|
|
5727
|
-
"top": "
|
|
5736
|
+
"top": "2px",
|
|
5728
5737
|
"overflow": "auto",
|
|
5729
5738
|
"min-height":"300px"
|
|
5730
5739
|
},
|
|
@@ -5990,7 +5999,9 @@ async function lookupToAmisPicker(field, readonly, ctx){
|
|
|
5990
5999
|
"margin-left":"200px",
|
|
5991
6000
|
"min-height": "300px"
|
|
5992
6001
|
};
|
|
6002
|
+
pickerSchema.className = pickerSchema.className || "" + " steedos-select-user";
|
|
5993
6003
|
}
|
|
6004
|
+
|
|
5994
6005
|
pickerSchema.headerToolbar = getObjectHeaderToolbar(refObjectConfig, ctx.formFactor, { headerToolbarItems });
|
|
5995
6006
|
const isAllowCreate = refObjectConfig.permissions.allowCreate;
|
|
5996
6007
|
if (isAllowCreate) {
|
|
@@ -6485,11 +6496,10 @@ async function getIdsPickerSchema(field, readonly, ctx){
|
|
|
6485
6496
|
* @Author: baozhoutao@steedos.com
|
|
6486
6497
|
* @Date: 2023-01-13 17:27:54
|
|
6487
6498
|
* @LastEditors: liaodaxue
|
|
6488
|
-
* @LastEditTime: 2023-07-
|
|
6499
|
+
* @LastEditTime: 2023-07-27 17:33:54
|
|
6489
6500
|
* @Description:
|
|
6490
6501
|
*/
|
|
6491
6502
|
|
|
6492
|
-
|
|
6493
6503
|
const getMarkdownFieldSchema = (field, readonly, ctx)=>{
|
|
6494
6504
|
if(readonly){
|
|
6495
6505
|
return {
|
|
@@ -6516,7 +6526,7 @@ const getMarkdownFieldSchema = (field, readonly, ctx)=>{
|
|
|
6516
6526
|
"className": "steedos-markdown",
|
|
6517
6527
|
"tabs": [
|
|
6518
6528
|
{
|
|
6519
|
-
"title": "
|
|
6529
|
+
"title": i18next__default["default"].t('frontend_form_edit'),
|
|
6520
6530
|
"tab": [
|
|
6521
6531
|
{
|
|
6522
6532
|
"type": "editor",
|
|
@@ -6526,7 +6536,7 @@ const getMarkdownFieldSchema = (field, readonly, ctx)=>{
|
|
|
6526
6536
|
]
|
|
6527
6537
|
},
|
|
6528
6538
|
{
|
|
6529
|
-
"title": "
|
|
6539
|
+
"title": i18next__default["default"].t('frontend_form_preview'),
|
|
6530
6540
|
"tab": [
|
|
6531
6541
|
{
|
|
6532
6542
|
"type": "markdown",
|
|
@@ -6583,7 +6593,7 @@ const getHtmlFieldSchema = (field, readonly, ctx)=>{
|
|
|
6583
6593
|
* @Author: baozhoutao@steedos.com
|
|
6584
6594
|
* @Date: 2022-10-28 14:52:55
|
|
6585
6595
|
* @LastEditors: liaodaxue
|
|
6586
|
-
* @LastEditTime: 2023-07-
|
|
6596
|
+
* @LastEditTime: 2023-07-28 16:16:29
|
|
6587
6597
|
* @Description:
|
|
6588
6598
|
*/
|
|
6589
6599
|
|
|
@@ -6607,6 +6617,8 @@ function getAmisStaticFieldType(type, readonly, options){
|
|
|
6607
6617
|
if(!readonly){
|
|
6608
6618
|
if(___namespace.includes(AmisFormInputs, type)){
|
|
6609
6619
|
return `input-${type}`;
|
|
6620
|
+
}else if(type === 'location'){
|
|
6621
|
+
return "location-picker"
|
|
6610
6622
|
}
|
|
6611
6623
|
return type;
|
|
6612
6624
|
}
|
|
@@ -7164,6 +7176,30 @@ async function convertSFieldToAmisField(field, readonly, ctx) {
|
|
|
7164
7176
|
type: getAmisStaticFieldType('email', readonly)
|
|
7165
7177
|
};
|
|
7166
7178
|
break;
|
|
7179
|
+
case 'location':
|
|
7180
|
+
// 申请ak后需要设置白名单; https://lbsyun.baidu.com/apiconsole/key/create#/home
|
|
7181
|
+
// console.log('fie==>', field.name, field);
|
|
7182
|
+
let ak = "LiZT5dVbGTsPI91tFGcOlSpe5FDehpf7";
|
|
7183
|
+
let vendor = "baidu"; /* 'baidu' | 'gaode' */
|
|
7184
|
+
if(window.Meteor){
|
|
7185
|
+
const map_ak = Meteor.settings?.public?.amis?.map_ak;
|
|
7186
|
+
if(map_ak){
|
|
7187
|
+
ak = map_ak;
|
|
7188
|
+
}
|
|
7189
|
+
const map_vendor = Meteor.settings?.public?.amis?.map_vendor;
|
|
7190
|
+
if(map_vendor){
|
|
7191
|
+
vendor = map_vendor;
|
|
7192
|
+
}
|
|
7193
|
+
}
|
|
7194
|
+
|
|
7195
|
+
convertData = {
|
|
7196
|
+
type: getAmisStaticFieldType('location', readonly),
|
|
7197
|
+
tpl: readonly ? getLocationTpl(field) : null,
|
|
7198
|
+
ak,
|
|
7199
|
+
vendor,
|
|
7200
|
+
label: field.label
|
|
7201
|
+
};
|
|
7202
|
+
break;
|
|
7167
7203
|
case 'avatar':
|
|
7168
7204
|
convertData = getAmisFileSchema(field, readonly);
|
|
7169
7205
|
break;
|
|
@@ -7485,26 +7521,45 @@ async function getQuickEditSchema(field, options){
|
|
|
7485
7521
|
let labelField = quickEditSchema.body[0].labelField || "label";
|
|
7486
7522
|
let valueField = quickEditSchema.body[0].valueField || "value";
|
|
7487
7523
|
if (field.multiple) {
|
|
7524
|
+
/*
|
|
7525
|
+
多选分两种情况。
|
|
7526
|
+
第一种是减少选项时(判断新的数据是否比老的数据短),按照index删除_display中对应选项,保证回显没问题;
|
|
7527
|
+
第二种是增加选项时,按照value的值,找到对应选项,并按照_display的规则为其赋值
|
|
7528
|
+
*/
|
|
7488
7529
|
TempDisplayField = `
|
|
7530
|
+
const preData = event.data.__super.${field.name};
|
|
7531
|
+
if(preData && event.data.${field.name}.length < preData.length){
|
|
7532
|
+
let deletedIndex;
|
|
7533
|
+
preData.forEach(function(item,index){
|
|
7534
|
+
if(_.indexOf(event.data.${field.name}, item) == -1) _display["${field.name}"].splice(index, 1);
|
|
7535
|
+
})
|
|
7536
|
+
}else{
|
|
7489
7537
|
_display["${field.name}"] = [];
|
|
7490
|
-
event.data.
|
|
7538
|
+
event.data.value.forEach(function(val,index){
|
|
7539
|
+
const item = _.find(event.data.selectedItems, { ${valueField}: val });
|
|
7491
7540
|
_display["${field.name}"].push(
|
|
7492
7541
|
{
|
|
7493
7542
|
"label": item.${labelField},
|
|
7494
|
-
"value": item
|
|
7543
|
+
"value": item[event.data.uiSchema.idFieldName],
|
|
7495
7544
|
"objectName": "${field.reference_to}"
|
|
7496
7545
|
}
|
|
7497
7546
|
)
|
|
7498
7547
|
})
|
|
7499
|
-
|
|
7548
|
+
}
|
|
7549
|
+
|
|
7550
|
+
`;
|
|
7500
7551
|
} else {
|
|
7501
7552
|
TempDisplayField = `
|
|
7553
|
+
if(event.data.value){
|
|
7502
7554
|
_display["${field.name}"] = {
|
|
7503
7555
|
"label": event.data.selectedItems.${labelField},
|
|
7504
|
-
"value": event.data.selectedItems
|
|
7556
|
+
"value": event.data.selectedItems[event.data.uiSchema.idFieldName],
|
|
7505
7557
|
"objectName": "${field.reference_to}"
|
|
7506
7558
|
}
|
|
7507
|
-
|
|
7559
|
+
}else{
|
|
7560
|
+
_display["${field.name}"] = {}
|
|
7561
|
+
}
|
|
7562
|
+
`;
|
|
7508
7563
|
}
|
|
7509
7564
|
quickEditSchema.body[0].onEvent["change"] = quickEditOnEvent(TempDisplayField);
|
|
7510
7565
|
break;
|
|
@@ -7636,6 +7691,10 @@ async function getTableColumns(fields, options){
|
|
|
7636
7691
|
for (const field of fields) {
|
|
7637
7692
|
//增加quickEdit属性,实现快速编辑
|
|
7638
7693
|
const quickEditSchema = allowEdit ? await getQuickEditSchema(field, options) : allowEdit;
|
|
7694
|
+
let className = "";
|
|
7695
|
+
if(field.wrap != true){
|
|
7696
|
+
className += " whitespace-nowrap";
|
|
7697
|
+
}
|
|
7639
7698
|
if((field.is_name || field.name === options.labelFieldName) && options.objectName === 'cms_files'){
|
|
7640
7699
|
const previewFileScript = `
|
|
7641
7700
|
var data = event.data;
|
|
@@ -7646,7 +7705,7 @@ async function getTableColumns(fields, options){
|
|
|
7646
7705
|
columns.push({
|
|
7647
7706
|
"type": "button",
|
|
7648
7707
|
"label": `<%=data.versions ? data.name : "${field.label}"%>`,
|
|
7649
|
-
|
|
7708
|
+
className,
|
|
7650
7709
|
"level": "link",
|
|
7651
7710
|
"quickEdit": quickEditSchema,
|
|
7652
7711
|
"onEvent": {
|
|
@@ -7683,7 +7742,7 @@ async function getTableColumns(fields, options){
|
|
|
7683
7742
|
width: getFieldWidth(field.width),
|
|
7684
7743
|
toggled: field.toggled,
|
|
7685
7744
|
static: true,
|
|
7686
|
-
className
|
|
7745
|
+
className,
|
|
7687
7746
|
quickEdit: quickEditSchema
|
|
7688
7747
|
}, field.amis, {name: field.name}));
|
|
7689
7748
|
}else if(field.type === 'avatar' || field.type === 'image' || field.type === 'file'){
|
|
@@ -7695,16 +7754,12 @@ async function getTableColumns(fields, options){
|
|
|
7695
7754
|
toggled: field.toggled,
|
|
7696
7755
|
quickEdit: quickEditSchema,
|
|
7697
7756
|
static: true,
|
|
7698
|
-
className
|
|
7757
|
+
className,
|
|
7699
7758
|
...getAmisFileReadonlySchema(field)
|
|
7700
7759
|
}, field.amis, {name: field.name}));
|
|
7701
7760
|
}
|
|
7702
7761
|
else if(field.type === 'select'){
|
|
7703
7762
|
const map = getSelectMap(field.options);
|
|
7704
|
-
let className = "";
|
|
7705
|
-
if(field.wrap === false){
|
|
7706
|
-
className += " whitespace-nowrap";
|
|
7707
|
-
}
|
|
7708
7763
|
columns.push(Object.assign({}, {
|
|
7709
7764
|
type: "mapping",
|
|
7710
7765
|
name: field.name,
|
|
@@ -7732,12 +7787,8 @@ async function getTableColumns(fields, options){
|
|
|
7732
7787
|
type = 'input-url';
|
|
7733
7788
|
}
|
|
7734
7789
|
}
|
|
7735
|
-
let className = "";
|
|
7736
7790
|
if(field.type === 'textarea'){
|
|
7737
|
-
className
|
|
7738
|
-
}
|
|
7739
|
-
if(field.wrap === false){
|
|
7740
|
-
className += " whitespace-nowrap";
|
|
7791
|
+
className += 'min-w-56';
|
|
7741
7792
|
}
|
|
7742
7793
|
if(!field.hidden && !field.extra){
|
|
7743
7794
|
columns.push(Object.assign({}, {
|
|
@@ -7757,6 +7808,7 @@ async function getTableColumns(fields, options){
|
|
|
7757
7808
|
}, field.amis, {name: field.name}));
|
|
7758
7809
|
}
|
|
7759
7810
|
}
|
|
7811
|
+
|
|
7760
7812
|
}
|
|
7761
7813
|
// columns.push(getOperation(fields));
|
|
7762
7814
|
if(!___namespace.some(columns, { name: options.labelFieldName })){
|
|
@@ -9297,13 +9349,13 @@ async function getObjectCalendar(objectSchema, calendarOptions, options) {
|
|
|
9297
9349
|
"selectMirror": permissions.allowCreate,
|
|
9298
9350
|
"initialView": initialView,
|
|
9299
9351
|
"businessHours": businessHours,
|
|
9300
|
-
...config,
|
|
9301
|
-
"onEvent": onEvent,
|
|
9302
9352
|
"views":{
|
|
9303
9353
|
listWeek: {
|
|
9304
9354
|
buttonText: i18next__default["default"].t('frontend_calendar_listWeek')
|
|
9305
9355
|
}
|
|
9306
|
-
}
|
|
9356
|
+
},
|
|
9357
|
+
...config,
|
|
9358
|
+
"onEvent": onEvent
|
|
9307
9359
|
};
|
|
9308
9360
|
return amisSchema;
|
|
9309
9361
|
}
|