UNPKG

@farris/ui-vue

Version:

Farris Vue, a Farris Design based Vue3 component library.

2 lines (1 loc) 15.9 kB
(function(r,R){typeof exports=="object"&&typeof module<"u"?R(exports,require("vue"),require("lodash-es"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../checkbox/index.umd.js"),require("../combo-list/index.umd.js"),require("../combo-tree/index.umd.js"),require("../component/index.umd.js"),require("../color-picker/index.umd.js"),require("../content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../dropdown/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../events-editor/index.umd.js"),require("../filter-bar/index.umd.js"),require("../field-selector/index.umd.js"),require("../binding-selector/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../nav/index.umd.js"),require("../number-range/index.umd.js"),require("../number-spinner/index.umd.js"),require("../order/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../pagination/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../search-box/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../tabs/index.umd.js"),require("../tags/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../transfer/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../event-parameter/index.umd.js"),require("../filter-condition-editor/index.umd.js"),require("../fieldset/index.umd.js"),require("../sort-condition-editor/index.umd.js"),require("../menu-lookup/index.umd.js"),require("../drawer/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../checkbox/index.umd.js","../combo-list/index.umd.js","../combo-tree/index.umd.js","../component/index.umd.js","../color-picker/index.umd.js","../content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../dropdown/index.umd.js","../dynamic-form/index.umd.js","../events-editor/index.umd.js","../filter-bar/index.umd.js","../field-selector/index.umd.js","../binding-selector/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../mapping-editor/index.umd.js","../nav/index.umd.js","../number-range/index.umd.js","../number-spinner/index.umd.js","../order/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../pagination/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../search-box/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../tabs/index.umd.js","../tags/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../transfer/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../schema-selector/index.umd.js","../tree-grid/index.umd.js","../event-parameter/index.umd.js","../filter-condition-editor/index.umd.js","../fieldset/index.umd.js","../sort-condition-editor/index.umd.js","../menu-lookup/index.umd.js","../drawer/index.umd.js"],R):(r=typeof globalThis<"u"?globalThis:r||self,R(r["dynamic-view"]={},r.Vue,r.LodashES,r.FAccordion,r.FAvatar,r.FButtonEdit,r.FButtonGroup,r.FCalendar,r.FCapsule,r.FCheckBox,r.FComboList,r.FComboTree,r.FComponent,r.FColorPicker,r.FContentContainer,r.FDatePicker,r.FDataGrid,r.FDropdown,r.FDynamicForm,r.FEventsEditor,r.FFilterBar,r.FFieldSelector,r.FBindingSelector,r.FImageCropper,r.FInputGroup,r.FLayout,r.FListNav,r.FListView,r.FLookup,r.FMappingEditor,r.FNav,r.FNumberRange,r.FNumberSpinner,r.FOrder,r.FPageHeader,r.FPageFooter,r.FPagination,r.FProgress,r.FQuerySolution,r.FRadioGroup,r.FRate,r.FResponseToolbar,r.FResponseLayout,r.FResponseLayoutEditorSetting,r.FSearchBox,r.FSection,r.FSmokeDetector,r.FSplitter,r.FStep,r.FSwitch,r.FTabs,r.FTags,r.FText,r.FTimePicker,r.FTransfer,r.FTreeview,r.FUploader,r.FVerifyDetail,r.FVideo,r.FTextArea,r.FSchemaSelector,r.FTreeGrid,r.FEventParameter,r.FFilterConditionEditor,r.FFieldset,r.FSortConditionEditor,r.FMenuLookup,r.FDrawer))})(this,function(r,R,A,z,J,X,Y,Z,w,S,ee,re,ne,te,ie,se,oe,ue,de,ce,pe,ae,me,fe,le,je,xe,ye,ge,Fe,qe,ve,Pe,Ce,Ee,ke,Ve,Re,Te,Me,be,Oe,he,Ae,De,Ke,Ie,Le,Ne,Be,$e,Ge,Ue,_e,He,Qe,We,ze,Je,Xe,Ye,Ze,we,Se,er,rr,nr,tr){"use strict";const U={schema:{type:Object,default:null},modelValue:{type:Object,default:null},callback:{type:Function,default:()=>{}}},n={},i={},s={},t={};let _=!1;function H(){_||(_=!0,J.register(n,i,s,t),z.register(n,i,s,t),X.register(n,i,s,t),Y.register(n,i,s,t),Z.register(n,i,s,t),w.register(n,i,s,t),S.register(n,i,s,t),ee.register(n,i,s,t),re.register(n,i,s,t),ne.register(n,i,s,t),ie.register(n,i,s,t),te.register(n,i,s,t),se.register(n,i,s,t),oe.register(n,i,s,t),ue.register(n,i,s,t),de.register(n,i,s,t),ce.register(n,i,s,t),pe.register(n,i,s,t),ae.register(n,i,s,t),Se.register(n,i,s,t),fe.register(n,i,s,t),le.register(n,i,s,t),je.register(n,i,s,t),ye.register(n,i,s,t),xe.register(n,i,s,t),ge.register(n,i,s,t),Fe.register(n,i,s,t),qe.register(n,i,s,t),ve.register(n,i,s,t),Pe.register(n,i,s,t),Ce.register(n,i,s,t),Ee.register(n,i,s,t),ke.register(n,i,s,t),Ve.register(n,i,s,t),Re.register(n,i,s,t),Te.register(n,i,s,t),Me.register(n,i,s,t),be.register(n,i,s,t),he.register(n,i,s,t),Ae.register(n,i,s,t),Oe.register(n,i,s,t),Ye.register(n,i,s),De.register(n,i,s,t),Ke.register(n,i,s,t),Ie.register(n,i,s,t),Le.register(n,i,s,t),Ne.register(n,i,s,t),Be.register(n,i,s,t),rr.register(n,i,s,t),$e.register(n,i,s,t),Ge.register(n,i,s,t),Ue.register(n,i,s,t),_e.register(n,i,s,t),He.register(n,i,s,t),Qe.register(n,i,s,t),ze.register(n,i,s,t),We.register(n,i,s,t),Je.register(n,i,s,t),Xe.register(n,i,s,t),Ze.register(n,i,s,t),me.register(n,i,s,t),we.register(n,i,s,t),er.register(n,i,s,t),nr.register(n,i,s,t),tr.register(n,i,s,t))}function ir(a={}){function g(d,f,j,x){if(typeof j=="number")return x[d].length===j;if(typeof j=="object"){const V=Object.keys(j)[0],T=j[V];if(V==="not")return Number(x[d].length)!==Number(T);if(V==="moreThan")return Number(x[d].length)>=Number(T);if(V==="lessThan")return Number(x[d].length)<=Number(T)}return!1}function y(d,f,j,x){return x[d]&&x[d].propertyValue&&String(x[d].propertyValue.value)===String(j)}const F=new Map([["length",g],["getProperty",y]]);Object.keys(a).reduce((d,f)=>(d.set(f,a[f]),d),F);function C(d,f){const j=d;return typeof f=="number"?[{target:j,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:j,operator:"getProperty",param:d,value:!!f}]:typeof f=="object"?Object.keys(f).map(x=>{if(x==="length")return{target:j,operator:"length",param:null,value:f[x]};const V=x,T=f[x];return{target:j,operator:"getProperty",param:V,value:T}}):[]}function m(d){return Object.keys(d).reduce((j,x)=>{const V=C(x,d[x]);return j.push(...V),j},[])}function l(d,f){if(F.has(d.operator)){const j=F.get(d.operator);return j&&j(d.target,d.param,d.value,f)||!1}return!1}function P(d,f){return m(d).reduce((V,T)=>V&&l(T,f),!0)}function q(d,f){const j=Object.keys(d),x=j.includes("allOf"),V=j.includes("anyOf"),T=x||V,b=(T?d[T?x?"allOf":"anyOf":"allOf"]:[d]).map(B=>P(B,f));return x?!b.includes(!1):b.includes(!0)}return{parseValueSchema:q}}ir();function sr(){function a(g,y){const{id:F}=g||{},{field:C}=g.binding||{};return{modelValue:y.getValue(F),"onUpdate:modelValue":m=>{y.setValue(F,C,m)}}}return{resolve:a}}function or(){return(a,g,y)=>{const F=g.id,{type:C}=g,m=a.emits;return m?m.filter(l=>l!=="update:modelValue").reduce((l,P)=>{const q=`on${P.charAt(0).toUpperCase()}${P.slice(1)}`;return l[q]=(...d)=>{y.dispatch(F,P,C,d)},l},{}):{}}}function ur(a,g){function y(F,C,m,l){a.emit("event",{token:F,name:C,type:m,payloads:l,schema:g})}return{dispatch:y}}function dr(){const a=new Map;function g(q,d){a.set(q,d)}function y(q){const d=a.get(q);return d||(console.warn(`Instance with id ${q} not found`),null)}function F(q){a.delete(q)}function C(q,d){if(!a.has(q)){console.warn(`Instance with id ${q} not found`);return}a.set(q,d)}function m(q){return a.has(q)}function l(){return new Map(a)}function P(){a.clear()}return{register:g,get:y,remove:F,update:C,has:m,getAll:l,clear:P}}function cr(a,g){function y(C){return a.value&&a.value[C]}function F(C,m,l){a.value&&(a.value[C]=l),g.emit("update:modelValue",{elementId:C,field:m,value:l,modelValue:a.value})}return{getValue:y,setValue:F}}function Q(a){function g(){var y,F;return((F=(y=a==null?void 0:a.module)==null?void 0:y.entity[0])==null?void 0:F.entities[0])||{}}return{getSchemaEntity:g}}function pr(a){const{getSchemaEntity:g}=Q(a);function y(m){const l=g();return C(l,m)}function F(m){var f,j;const l=[];function P(x,V){var D;const T=[...V,x.label];(((D=m==null?void 0:m.type)==null?void 0:D.primary)||null)&&l.push({bindingPaths:T,primaryKey:x.type.primary,label:x.label}),x.type.entities.forEach(b=>{P(b,T)})}return(((f=m==null?void 0:m.type)==null?void 0:f.primary)||null)&&(l.push({bindingPaths:[],primaryKey:m.type.primary,label:m.label}),(((j=m==null?void 0:m.type)==null?void 0:j.entities)||[]).forEach(x=>{P(x,[])})),l}function C(m,l,P=!0){const q=P?[]:[m.label];if(m.label===l)return{bindingPaths:q,primaryKey:m.type.primary,label:m.label};for(const d of m.type.entities){const f=C(d,l,!1);if(f)return{bindingPaths:[...q,...f.bindingPaths],primaryKey:f.primaryKey,label:f.label}}return null}return{resolveEntityByDataSource:y,resolveEntity:C,resolveEntities:F}}function ar(a){const g={},{getSchemaEntity:y}=Q(a),{resolveEntities:F}=pr(a);function C(){const l=y();F(l).forEach(q=>{const d="/"+q.bindingPaths.join("/"),{primaryKey:f}=q,j={primaryKey:f,bindingPath:d,label:q.label,currentId:null};g[d]=j})}function m(l){return Array.isArray(l)?l="/"+l.join("/"):l="/"+l.split("/").filter(P=>P).join("/"),g[l]}return{setup:C,get:m}}function mr(a){function g(y,F){return a(y,F)}return{call:g}}const L=R.defineComponent({name:"FDynamicView",props:U,emits:["update:modelValue","event","componentReady"],setup(a,g){const y=R.ref(a.schema),F=R.ref(a.modelValue),C=R.ref(a.callback),m=new Map,l=new Map;H();const P=dr(),q=cr(F,g),d=ar(y.value);d.setup();const f=new Map;function j(e){const o=e.type,{dataSource:u,binding:p}=e;if(!u&&!p)return{};u&&l.set(u,e);const c=t[o];return(c&&c.bindingResolver?c.bindingResolver:sr()).resolve(e,q)}function x(e){const o={};return e&&Object.entries(e).forEach(([u,p])=>{o[u]=()=>Array.isArray(p)?p.map(c=>b(c)):b(p)}),o}function V(e){const o=e.type,u=t[o];if(!u||Object.keys(u).length<1)return{};const{callbackResolver:p}=u;if(!p)return{};const c=mr(C.value);return p.resolve(e,c)}function T(e){const o=e.type,u=ur(g,e),p=n[o],c=or(),E=t[o],v=E?E.editorResolver:null;if(v){const k=v.resolve(e).type,h=n[k];return c?c(h,e,u):{}}return c?c(p,e,u):{}}function K(e){return{}}function D(e){const o=e.type,u=i[o],p=u?u(e):{},c={...T(e)};return{props:{...{...p,...j(e),...K(),...V(e)},key:e.id,ref:M=>{M&&e.id&&!P.has(e.id)&&(P.register(e.id,M),g.emit("componentReady",{ref:R.ref(M),id:e.id,type:e.type}))}},eventProps:c}}function b(e){var v,M,O;const o=e.type;if(o==="component-ref"){const k=(M=(v=y.value)==null?void 0:v.module)==null?void 0:M.components.find(h=>h.id===e.component);if(k)return b(k)}e.id&&m.set(e.id,e);const u=n[o];if(!u)return null;const p=()=>e.contents?typeof e.contents=="string"?e.contents:e.contents.map(k=>b(k)):null,c=(k,h,I)=>I&&I.length>0?R.createVNode(k,{...h},I):R.createVNode(k,{...h},null),E=((O=f.get(e.id))==null?void 0:O.props)||{};return e.contents&&e.contents.length>0?c(u,E,[p()]):e.slots?c(u,E,[...Object.values(x(e.slots))]):c(u,E)}function N(e){e.$forceUpdate&&e.$forceUpdate()}function B(e){return m.get(e)}function lr(e,o){const u=m.get(e);if(!u)return;const p=P.get(e);if(!p)return;A.merge(u,o);const c=u.type,E=t[c],v=E?E.updateColumnsResolver:null;v&&v.updateColumns(p,u),N(p)}function jr(e){var o;return(o=f.get(e))==null?void 0:o.props}function xr(e,o){const u=f.get(e);A.mergeWith(u==null?void 0:u.props,o,qr)}function yr(e,o,...u){const p=P.get(e);if(p){if(!p||typeof p[o]!="function")throw new Error(`Method ${o} not found on instance ${e}`);return p[o](...u)}}function gr(e,o){const u=d.get(e);if(!u)return;const p=u.label,c=l.get(p);if(!c)return;const E=c.type,v=t[E],M=v?v.selectionItemResolver:null;if(M){const O=P.get(c.id);M.selectItemById(O,o)}}function $(e){var M,O;const o=e.type;if(o==="component-ref"){const k=(O=(M=y.value)==null?void 0:M.module)==null?void 0:O.components.find(h=>h.id===e.component);if(k)return $(k)}if(!n[o])return;const{props:p,eventProps:c}=D(e),E=t[o],v=E?E.editorResolver:null;if(v){const k=v.resolve(e);Object.assign(k,c)}else Object.assign(p,c);if(p&&Object.keys(p).length>0){const k=f.get(e.id);k?A.merge(k==null?void 0:k.props,p):f.set(e.id,R.reactive({props:p}))}!e.contents||!Array.isArray(e.contents)||e.contents.forEach(k=>$(k))}function Fr(e,o){const u=i[e];return u?u(o,!1):{}}function G(e){var c,E;const o=e.type;if(o==="component-ref"){const v=(E=(c=y.value)==null?void 0:c.module)==null?void 0:E.components.find(M=>M.id===e.component);if(v)return G(v)}if(!n[o])return;const p=j(e);if(p&&Object.keys(p).length>0){const v=f.get(e.id);v?A.merge(v==null?void 0:v.props,p):f.set(e.id,R.reactive({props:p}))}!e.contents||!Array.isArray(e.contents)||e.contents.forEach(v=>G(v))}function W(){var u,p;const e=(p=(u=y.value)==null?void 0:u.module)==null?void 0:p.components;if(!e||e.length<1)return null;const o=e.find(c=>c.componentType&&c.componentType.toLowerCase()==="frame");return o||null}function qr(e,o){if(Array.isArray(e)&&Array.isArray(o)){const u=new Map;return e.forEach(c=>{c.id!=null&&u.set(c.id,c)}),o.forEach(c=>{if(c.id!=null){const E=u.get(c.id);E?u.set(c.id,A.merge(E,c)):u.set(c.id,A.cloneDeep(c))}}),Array.from(u.values())}}return R.watch(()=>a.modelValue,e=>{F.value=e;const o=W();o&&G(o)}),R.watch(()=>a.schema,e=>{y.value=e;const o=W();o&&$(o)}),g.expose({componentManager:P,rerender:N,getProps:jr,invoke:yr,setProps:xr,selectItemById:gr,getSchema:B,setSchema:lr,convertPartialSchemaToProps:Fr}),()=>{var u,p;const e=(p=(u=y.value)==null?void 0:u.module)==null?void 0:p.components;if(!e||e.length<1)return null;const o=e.find(c=>c.componentType&&c.componentType.toLowerCase()==="frame");return o?b(o):null}}}),fr={install(a){a.component(L.name,L)}};r.FDynamicView=L,r.componentMap=n,r.componentPropsConverter=i,r.default=fr,r.dynamicViewProps=U,r.loadRegister=H,r.resolverMap=t,Object.defineProperties(r,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});