formeo 5.3.1 → 5.3.2
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/demo/assets/css/demo.min.css +1 -1
- package/dist/demo/assets/css/demo.min.css.gz +0 -0
- package/dist/demo/assets/css/formeo.min.css +1 -1
- package/dist/demo/assets/js/demo.min.js +28 -28
- package/dist/demo/assets/js/demo.min.js.gz +0 -0
- package/dist/demo/assets/js/form.min.js +2 -2
- package/dist/demo/assets/js/formeo.cjs.js +33 -4
- package/dist/demo/assets/js/formeo.es.js +33 -4
- package/dist/demo/assets/js/formeo.min.cjs.js +2 -2
- package/dist/demo/assets/js/formeo.min.es.js +2 -2
- package/dist/demo/assets/js/formeo.min.js +33 -4
- package/dist/demo/assets/js/formeo.min.umd.js +2 -2
- package/dist/demo/assets/js/formeo.umd.js +33 -4
- package/dist/demo/assets/js/html.min.js +1 -1
- package/dist/demo/assets/js/layout.min.js +1 -1
- package/dist/demo/assets/js/mode-json.min.js +1 -1
- package/dist/demo/assets/js/mode-json.min.js.gz +0 -0
- package/dist/demo/assets/js/theme-github_light_default.min.js +1 -1
- package/dist/demo/index.html +1 -1
- package/dist/formeo.cjs.js +33 -4
- package/dist/formeo.css +1 -1
- package/dist/formeo.es.js +33 -4
- package/dist/formeo.min.cjs.js +2 -2
- package/dist/formeo.min.css +1 -1
- package/dist/formeo.min.es.js +2 -2
- package/dist/formeo.min.js +33 -4
- package/dist/formeo.min.umd.js +2 -2
- package/dist/formeo.umd.js +33 -4
- package/package.json +1 -1
|
Binary file
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
2
|
/**
|
|
3
3
|
formeo - https://formeo.io
|
|
4
|
-
Version: 5.3.
|
|
4
|
+
Version: 5.3.1
|
|
5
5
|
Author: Draggable https://draggable.io
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
import{i as t,n as i,r as l,t as o}from"./demo.min.js";var c=["button","submit","reset"].map(e=>({label:e,value:e}));c[0].selected=!0;var p=class extends o{constructor(e={}){const r=l({tag:"button",attrs:{className:[{label:"grouped",value:"f-btn-group"},{label:"ungrouped",value:"f-field-group"}]},config:{label:t.get("controls.form.button"),hideLabel:!0},meta:{group:"common",icon:"button",id:"button"},options:[{label:t.get("button"),type:c,className:[{label:"default",value:"",selected:!0},{label:"primary",value:"primary"},{label:"danger",value:"error"},{label:"success",value:"success"},{label:"warning",value:"warning"}]}]},e);super(r)}},s=({type:e,isMultiple:r=!1,count:u=3})=>Array.from({length:u},(a,n)=>n+1).map(a=>{const n=e==="checkbox"||r?"checked":"selected";return{label:t.get("labelCount",{label:i(e),count:a}),value:`${e}-${a}`,[n]:!a}}),d=class extends o{constructor(){const e={tag:"input",attrs:{type:"checkbox",required:!1},config:{label:t.get("controls.form.checkbox-group"),disabledAttrs:["type"]},meta:{group:"common",icon:"checkbox",id:"checkbox"},options:s({type:"checkbox",count:1})};super(e)}},m=class extends o{constructor(){const e={tag:"input",attrs:{type:"date",required:!1,className:""},config:{label:t.get("controls.form.input.date")},meta:{group:"common",icon:"calendar",id:"date-input"}};super(e)}},g=class extends o{constructor(){const e={tag:"input",attrs:{type:"file",required:!1},config:{label:t.get("fileUpload")},meta:{group:"common",icon:"upload",id:"upload"}};super(e)}},b=class extends o{constructor(){const e={tag:"input",attrs:{type:"hidden",value:""},config:{label:t.get("hidden"),hideLabel:!0},meta:{group:"common",icon:"hidden",id:"hidden"}};super(e)}},f=class extends o{constructor(){const e={tag:"input",attrs:{type:"number",required:!1,className:""},config:{label:t.get("number")},meta:{group:"common",icon:"hash",id:"number"}};super(e)}},x=class extends o{constructor(){const e={tag:"input",attrs:{required:!1,type:"text",className:""},config:{label:t.get("controls.form.input.text"),hideLabel:!1},meta:{group:"common",icon:"text-input",id:"text-input"}};super(e)}},v=class extends o{constructor(){const e={tag:"input",attrs:{type:"radio",required:!1},config:{label:t.get("controls.form.radio-group"),
|
|
8
|
+
import{i as t,n as i,r as l,t as o}from"./demo.min.js";var c=["button","submit","reset"].map(e=>({label:e,value:e}));c[0].selected=!0;var p=class extends o{constructor(e={}){const r=l({tag:"button",attrs:{className:[{label:"grouped",value:"f-btn-group"},{label:"ungrouped",value:"f-field-group"}]},config:{label:t.get("controls.form.button"),hideLabel:!0},meta:{group:"common",icon:"button",id:"button"},options:[{label:t.get("button"),type:c,className:[{label:"default",value:"",selected:!0},{label:"primary",value:"primary"},{label:"danger",value:"error"},{label:"success",value:"success"},{label:"warning",value:"warning"}]}]},e);super(r)}},s=({type:e,isMultiple:r=!1,count:u=3})=>Array.from({length:u},(a,n)=>n+1).map(a=>{const n=e==="checkbox"||r?"checked":"selected";return{label:t.get("labelCount",{label:i(e),count:a}),value:`${e}-${a}`,[n]:!a}}),d=class extends o{constructor(){const e={tag:"input",attrs:{type:"checkbox",required:!1},config:{label:t.get("controls.form.checkbox-group"),disabledAttrs:["type"]},meta:{group:"common",icon:"checkbox",id:"checkbox"},options:s({type:"checkbox",count:1})};super(e)}},m=class extends o{constructor(){const e={tag:"input",attrs:{type:"date",required:!1,className:""},config:{label:t.get("controls.form.input.date")},meta:{group:"common",icon:"calendar",id:"date-input"}};super(e)}},g=class extends o{constructor(){const e={tag:"input",attrs:{type:"file",required:!1},config:{label:t.get("fileUpload")},meta:{group:"common",icon:"upload",id:"upload"}};super(e)}},b=class extends o{constructor(){const e={tag:"input",attrs:{type:"hidden",value:""},config:{label:t.get("hidden"),hideLabel:!0},meta:{group:"common",icon:"hidden",id:"hidden"}};super(e)}},f=class extends o{constructor(){const e={tag:"input",attrs:{type:"number",required:!1,className:""},config:{label:t.get("number")},meta:{group:"common",icon:"hash",id:"number"}};super(e)}},x=class extends o{constructor(){const e={tag:"input",attrs:{required:!1,type:"text",className:""},config:{label:t.get("controls.form.input.text"),hideLabel:!1},meta:{group:"common",icon:"text-input",id:"text-input"}};super(e)}},v=class extends o{constructor(){const e={tag:"input",attrs:{type:"radio",required:!1},config:{label:t.get("controls.form.radio-group"),disabledAttrs:["type"]},meta:{group:"common",icon:"radio-group",id:"radio"},options:s({type:"radio"})};super(e)}},h=class extends o{constructor(e={}){const r=l({tag:"select",config:{label:t.get("controls.form.select")},attrs:{required:!1,className:"",multiple:!1},meta:{group:"common",icon:"select",id:"select"},options:s({type:"option",isMultiple:e.attrs?.multiple})},e);super(r)}},C=class extends o{constructor(){const e={tag:"textarea",config:{label:t.get("controls.form.textarea")},meta:{group:"common",icon:"textarea",id:"textarea"},attrs:{required:!1}};super(e)}},k=[p,m,b,f,C,x,g,h,d,v];export{k as default};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
/**
|
|
3
3
|
formeo - https://formeo.io
|
|
4
|
-
Version: 5.3.
|
|
4
|
+
Version: 5.3.1
|
|
5
5
|
Author: Draggable https://draggable.io
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -8065,7 +8065,7 @@ var require_mergeWith = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8065
8065
|
})), name$1, version$2, type, main, module$1, unpkg, exports$1, files, homepage, repository, author, contributors, bugs, description, keywords, ignore, config, scripts, devDependencies, dependencies, release, commitlint, package_default;
|
|
8066
8066
|
var init_package = __esmMin((() => {
|
|
8067
8067
|
name$1 = "formeo";
|
|
8068
|
-
version$2 = "5.3.
|
|
8068
|
+
version$2 = "5.3.1";
|
|
8069
8069
|
type = "module";
|
|
8070
8070
|
main = "dist/formeo.cjs.js";
|
|
8071
8071
|
module$1 = "dist/formeo.es.js";
|
|
@@ -14522,6 +14522,23 @@ var init_options = __esmMin((() => {
|
|
|
14522
14522
|
});
|
|
14523
14523
|
}));
|
|
14524
14524
|
//#endregion
|
|
14525
|
+
//#region src/lib/js/components/fields/control-attr-config.mjs
|
|
14526
|
+
var getControlConfig, controlAttrPanelConfig;
|
|
14527
|
+
var init_control_attr_config = __esmMin((() => {
|
|
14528
|
+
init_utils();
|
|
14529
|
+
getControlConfig = (control) => control?.controlData?.config ?? control?.config;
|
|
14530
|
+
controlAttrPanelConfig = (...sources) => {
|
|
14531
|
+
const collect = (key) => unique(sources.flatMap((source) => Array.isArray(source?.[key]) ? source[key] : []));
|
|
14532
|
+
const disabled = collect("disabledAttrs");
|
|
14533
|
+
const locked = collect("lockedAttrs");
|
|
14534
|
+
if (!disabled.length && !locked.length) return null;
|
|
14535
|
+
return { panels: { attrs: {
|
|
14536
|
+
disabled,
|
|
14537
|
+
locked
|
|
14538
|
+
} } };
|
|
14539
|
+
};
|
|
14540
|
+
}));
|
|
14541
|
+
//#endregion
|
|
14525
14542
|
//#region src/lib/js/components/fields/field.js
|
|
14526
14543
|
var field_exports = /* @__PURE__ */ __exportAll({ default: () => Field });
|
|
14527
14544
|
var checkableTypes, isSelectableType, Field;
|
|
@@ -14532,6 +14549,8 @@ var init_field = __esmMin((() => {
|
|
|
14532
14549
|
init_utils();
|
|
14533
14550
|
init_constants();
|
|
14534
14551
|
init_component();
|
|
14552
|
+
init_components();
|
|
14553
|
+
init_control_attr_config();
|
|
14535
14554
|
checkableTypes = new Set(["checkbox", "radio"]);
|
|
14536
14555
|
isSelectableType = new Set([
|
|
14537
14556
|
"radio",
|
|
@@ -14547,11 +14566,12 @@ var init_field = __esmMin((() => {
|
|
|
14547
14566
|
*/
|
|
14548
14567
|
constructor(fieldData = Object.create(null)) {
|
|
14549
14568
|
super("field", fieldData);
|
|
14569
|
+
this.controlId = this.get("config.controlId") || this.get("meta.id");
|
|
14570
|
+
this.applyControlAttrConfig();
|
|
14550
14571
|
this.debouncedUpdateEditPanels = debounce(this.updateEditPanels);
|
|
14551
14572
|
this.debouncedUpdatePreview = debounce(this.updatePreview);
|
|
14552
14573
|
this.label = dom.create(this.labelConfig);
|
|
14553
14574
|
this.preview = this.fieldPreview();
|
|
14554
|
-
this.controlId = this.get("config.controlId") || this.get("meta.id");
|
|
14555
14575
|
const actionButtons = this.getActionButtons();
|
|
14556
14576
|
const hasEditButton = this.actionButtons.some((child) => child.meta?.id === "edit");
|
|
14557
14577
|
this.updateEditPanels();
|
|
@@ -14572,6 +14592,15 @@ var init_field = __esmMin((() => {
|
|
|
14572
14592
|
this.dom = field;
|
|
14573
14593
|
this.isEditing = false;
|
|
14574
14594
|
}
|
|
14595
|
+
/**
|
|
14596
|
+
* Honour control-level `disabledAttrs` / `lockedAttrs` by merging them into this field's
|
|
14597
|
+
* panels.attrs config. Reads both the registered control definition and the field's own
|
|
14598
|
+
* saved config so forms saved before a control changed still pick up its rules.
|
|
14599
|
+
*/
|
|
14600
|
+
applyControlAttrConfig() {
|
|
14601
|
+
const attrConfig = controlAttrPanelConfig(getControlConfig(components.controls?.get(this.controlId)), this.get("config"));
|
|
14602
|
+
if (attrConfig) this.config = { [this.id]: attrConfig };
|
|
14603
|
+
}
|
|
14575
14604
|
get labelConfig() {
|
|
14576
14605
|
if (!!this.get("config.hideLabel")) return null;
|
|
14577
14606
|
const { label, editorLabel, disableHtmlLabel, helpText, tooltip } = this.get("config");
|
|
@@ -15015,7 +15044,7 @@ var init_radio_group = __esmMin((() => {
|
|
|
15015
15044
|
},
|
|
15016
15045
|
config: {
|
|
15017
15046
|
label: s.get("controls.form.radio-group"),
|
|
15018
|
-
|
|
15047
|
+
disabledAttrs: ["type"]
|
|
15019
15048
|
},
|
|
15020
15049
|
meta: {
|
|
15021
15050
|
group: "common",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
/**
|
|
3
3
|
formeo - https://formeo.io
|
|
4
|
-
Version: 5.3.
|
|
4
|
+
Version: 5.3.1
|
|
5
5
|
Author: Draggable https://draggable.io
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -8064,7 +8064,7 @@ var require_mergeWith = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8064
8064
|
})), name$1, version$2, type, main, module$1, unpkg, exports$1, files, homepage, repository, author, contributors, bugs, description, keywords, ignore, config, scripts, devDependencies, dependencies, release, commitlint, package_default;
|
|
8065
8065
|
var init_package = __esmMin((() => {
|
|
8066
8066
|
name$1 = "formeo";
|
|
8067
|
-
version$2 = "5.3.
|
|
8067
|
+
version$2 = "5.3.1";
|
|
8068
8068
|
type = "module";
|
|
8069
8069
|
main = "dist/formeo.cjs.js";
|
|
8070
8070
|
module$1 = "dist/formeo.es.js";
|
|
@@ -14521,6 +14521,23 @@ var init_options = __esmMin((() => {
|
|
|
14521
14521
|
});
|
|
14522
14522
|
}));
|
|
14523
14523
|
//#endregion
|
|
14524
|
+
//#region src/lib/js/components/fields/control-attr-config.mjs
|
|
14525
|
+
var getControlConfig, controlAttrPanelConfig;
|
|
14526
|
+
var init_control_attr_config = __esmMin((() => {
|
|
14527
|
+
init_utils();
|
|
14528
|
+
getControlConfig = (control) => control?.controlData?.config ?? control?.config;
|
|
14529
|
+
controlAttrPanelConfig = (...sources) => {
|
|
14530
|
+
const collect = (key) => unique(sources.flatMap((source) => Array.isArray(source?.[key]) ? source[key] : []));
|
|
14531
|
+
const disabled = collect("disabledAttrs");
|
|
14532
|
+
const locked = collect("lockedAttrs");
|
|
14533
|
+
if (!disabled.length && !locked.length) return null;
|
|
14534
|
+
return { panels: { attrs: {
|
|
14535
|
+
disabled,
|
|
14536
|
+
locked
|
|
14537
|
+
} } };
|
|
14538
|
+
};
|
|
14539
|
+
}));
|
|
14540
|
+
//#endregion
|
|
14524
14541
|
//#region src/lib/js/components/fields/field.js
|
|
14525
14542
|
var field_exports = /* @__PURE__ */ __exportAll({ default: () => Field });
|
|
14526
14543
|
var checkableTypes, isSelectableType, Field;
|
|
@@ -14531,6 +14548,8 @@ var init_field = __esmMin((() => {
|
|
|
14531
14548
|
init_utils();
|
|
14532
14549
|
init_constants();
|
|
14533
14550
|
init_component();
|
|
14551
|
+
init_components();
|
|
14552
|
+
init_control_attr_config();
|
|
14534
14553
|
checkableTypes = new Set(["checkbox", "radio"]);
|
|
14535
14554
|
isSelectableType = new Set([
|
|
14536
14555
|
"radio",
|
|
@@ -14546,11 +14565,12 @@ var init_field = __esmMin((() => {
|
|
|
14546
14565
|
*/
|
|
14547
14566
|
constructor(fieldData = Object.create(null)) {
|
|
14548
14567
|
super("field", fieldData);
|
|
14568
|
+
this.controlId = this.get("config.controlId") || this.get("meta.id");
|
|
14569
|
+
this.applyControlAttrConfig();
|
|
14549
14570
|
this.debouncedUpdateEditPanels = debounce(this.updateEditPanels);
|
|
14550
14571
|
this.debouncedUpdatePreview = debounce(this.updatePreview);
|
|
14551
14572
|
this.label = dom.create(this.labelConfig);
|
|
14552
14573
|
this.preview = this.fieldPreview();
|
|
14553
|
-
this.controlId = this.get("config.controlId") || this.get("meta.id");
|
|
14554
14574
|
const actionButtons = this.getActionButtons();
|
|
14555
14575
|
const hasEditButton = this.actionButtons.some((child) => child.meta?.id === "edit");
|
|
14556
14576
|
this.updateEditPanels();
|
|
@@ -14571,6 +14591,15 @@ var init_field = __esmMin((() => {
|
|
|
14571
14591
|
this.dom = field;
|
|
14572
14592
|
this.isEditing = false;
|
|
14573
14593
|
}
|
|
14594
|
+
/**
|
|
14595
|
+
* Honour control-level `disabledAttrs` / `lockedAttrs` by merging them into this field's
|
|
14596
|
+
* panels.attrs config. Reads both the registered control definition and the field's own
|
|
14597
|
+
* saved config so forms saved before a control changed still pick up its rules.
|
|
14598
|
+
*/
|
|
14599
|
+
applyControlAttrConfig() {
|
|
14600
|
+
const attrConfig = controlAttrPanelConfig(getControlConfig(components.controls?.get(this.controlId)), this.get("config"));
|
|
14601
|
+
if (attrConfig) this.config = { [this.id]: attrConfig };
|
|
14602
|
+
}
|
|
14574
14603
|
get labelConfig() {
|
|
14575
14604
|
if (!!this.get("config.hideLabel")) return null;
|
|
14576
14605
|
const { label, editorLabel, disableHtmlLabel, helpText, tooltip } = this.get("config");
|
|
@@ -15014,7 +15043,7 @@ var init_radio_group = __esmMin((() => {
|
|
|
15014
15043
|
},
|
|
15015
15044
|
config: {
|
|
15016
15045
|
label: s.get("controls.form.radio-group"),
|
|
15017
|
-
|
|
15046
|
+
disabledAttrs: ["type"]
|
|
15018
15047
|
},
|
|
15019
15048
|
meta: {
|
|
15020
15049
|
group: "common",
|