@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
2 lines (1 loc) • 8.66 kB
JavaScript
(function(b,f){typeof exports=="object"&&typeof module<"u"?f(exports,require("vue"),require("lodash-es")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es"],f):(b=typeof globalThis<"u"?globalThis:b||self,f(b["smoke-detector"]={},b.Vue,b.LodashES))})(this,function(b,f,D){"use strict";const $={},j={};function w(t){const{properties:e,title:c,ignore:r}=t,o=r&&Array.isArray(r),l=Object.keys(e).reduce((u,m)=>((!o||!r.find(k=>k===m))&&(u[m]=e[m].type==="object"&&e[m].properties?w(e[m]):D.cloneDeep(e[m].default)),u),{});if(c&&(!o||!r.find(u=>u==="id"))){const u=c.toLowerCase().replace(/-/g,"_");l.id=`${u}_${Math.random().toString().slice(2,6)}`}return l}function _(t){const{properties:e,title:c,required:r}=t;if(r&&Array.isArray(r)){const o=r.reduce((l,u)=>(l[u]=e[u].type==="object"&&e[u].properties?w(e[u]):D.cloneDeep(e[u].default),l),{});if(c&&r.find(l=>l==="id")){const l=c.toLowerCase().replace(/-/g,"_");o.id=`${l}_${Math.random().toString().slice(2,6)}`}return o}return{type:c}}function B(t,e={},c){const r=$[t];if(r){let o=_(r);const l=j[t];return o=l?l({getSchemaByType:B},o,e,c):o,o}return null}function F(t,e){const c=w(e);return Object.keys(c).reduce((r,o)=>(Object.prototype.hasOwnProperty.call(t,o)&&(r[o]&&D.isPlainObject(r[o])&&D.isPlainObject(t[o]||!t[o])?Object.assign(r[o],t[o]||{}):r[o]=t[o]),r),c),c}function N(t,e){return Object.keys(t).filter(r=>t[r]!=null).reduce((r,o)=>{if(e.has(o)){const l=e.get(o);if(typeof l=="string")r[l]=t[o];else{const u=l(o,t[o],t);Object.assign(r,u)}}else r[o]=t[o];return r},{})}function L(t,e,c=new Map){const r=F(t,e);return N(r,c)}function W(t={}){function e(n,i,s,p){if(typeof s=="number")return p[n].length===s;if(typeof s=="object"){const y=Object.keys(s)[0],v=s[y];if(y==="not")return Number(p[n].length)!==Number(v);if(y==="moreThan")return Number(p[n].length)>=Number(v);if(y==="lessThan")return Number(p[n].length)<=Number(v)}return!1}function c(n,i,s,p){return p[n]&&p[n].propertyValue&&String(p[n].propertyValue.value)===String(s)}const r=new Map([["length",e],["getProperty",c]]);Object.keys(t).reduce((n,i)=>(n.set(i,t[i]),n),r);function o(n,i){const s=n;return typeof i=="number"?[{target:s,operator:"length",param:null,value:Number(i)}]:typeof i=="boolean"?[{target:s,operator:"getProperty",param:n,value:!!i}]:typeof i=="object"?Object.keys(i).map(p=>{if(p==="length")return{target:s,operator:"length",param:null,value:i[p]};const y=p,v=i[p];return{target:s,operator:"getProperty",param:y,value:v}}):[]}function l(n){return Object.keys(n).reduce((s,p)=>{const y=o(p,n[p]);return s.push(...y),s},[])}function u(n,i){if(r.has(n.operator)){const s=r.get(n.operator);return s&&s(n.target,n.param,n.value,i)||!1}return!1}function m(n,i){return l(n).reduce((y,v)=>y&&u(v,i),!0)}function k(n,i){const s=Object.keys(n),p=s.includes("allOf"),y=s.includes("anyOf"),v=p||y,S=(v?n[v?p?"allOf":"anyOf":"allOf"]:[n]).map(R=>m(R,i));return p?!S.includes(!1):S.includes(!0)}return{parseValueSchema:k}}const H={},z={};W();function G(t,e,c=new Map,r=(u,m,k,n)=>m,o={},l=u=>u){return $[e.title]=e,j[e.title]=r,H[e.title]=o,z[e.title]=l,(u={},m=!0)=>{if(!m)return N(u,c);const k=L(u,e,c),n=Object.keys(t).reduce((i,s)=>(i[s]=t[s].default,i),{});return Object.assign(n,k)}}function J(t,e){return{customClass:e.class,customStyle:e.style}}const Q=new Map([["appearance",J]]);function U(t,e,c){return e}const X={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/smoke-detector.schema.json",title:"smoke-detector",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for smoke-detector",type:"string"},type:{description:"The type string of smoke-detector",type:"string",default:"smoke-detector"},voltageA:{description:"A相电压",type:"number",default:-1},voltageB:{description:"B相电压",type:"number",default:-1},voltageC:{description:"C相电压",type:"number",default:-1},forwardActiveTotalPower:{description:"正向有功总电量",type:"number",default:-1},totalPositiveReactivePower:{description:"正向无功总电量",type:"number",default:-1},reverseTotalActivePower:{description:"反向有功总电量",type:"number",default:-1},reverseTotalReactivePower:{description:"反向无功总电量",type:"number",default:-1},toDeliverData:{description:"下发数据",type:"string"}},required:["id","type"]},Y={title:"smoke-detector",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},bussinessProperties:{description:"",title:"业务属性",properties:{voltageA:{description:"A相电压",type:"number",title:"A相电压",default:-1},voltageB:{description:"B相电压",type:"number",title:"B相电压",default:-1},voltageC:{description:"C相电压",type:"number",title:"C相电压",default:-1},forwardActiveTotalPower:{description:"正向有功总电量",type:"number",title:"正向有功总电量",default:-1},totalPositiveReactivePower:{description:"正向无功总电量",type:"number",title:"正向无功总电量",default:-1},reverseTotalActivePower:{description:"反向有功总电量",type:"number",title:"反向有功总电量",default:-1},reverseTotalReactivePower:{description:"反向无功总电量",type:"number",title:"反向无功总电量",default:-1},toDeliverData:{description:"下发数据",type:"string",title:"下发数据"}}}}},T={},A=G(T,X,Q,U,Y),M=f.defineComponent({name:"FSmokeDetector",props:T,emits:[""],setup(t){return()=>f.createVNode("div",{class:"f-smoke-detector"},[f.createVNode("img",{title:"smoke-detector",src:"./image/smoke-detector-2.png"},null)])}});function Z(t,e,c){var E;const r="",o="",l=f.ref();function u(){return(e==null?void 0:e.schema.componentType)!=="frame"}function m(){return!1}function k(){return(e==null?void 0:e.schema.componentType)!=="frame"}function n(){return(e==null?void 0:e.schema.componentType)==="frame"}function i(a){if(!a||!a.value)return null;if(a.value.schema&&a.value.schema.type==="component")return a.value;const h=f.ref(a==null?void 0:a.value.parent),d=i(h);return d||null}function s(a=e){var P;const{componentInstance:h,designerItemElementRef:d}=a;if(!h||!h.value)return null;const{getCustomButtons:g}=h.value;return h.value.canMove||g&&((P=g())!=null&&P.length)?d:s(a.parent)}function p(a){return!!c}function y(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function v(){}function O(a,h){var d;!a||!h||(d=e==null?void 0:e.setupContext)==null||d.emit("dragEnd")}function q(a,h){const{componentType:d}=a;let g=B(d,a,h);const P=d.toLowerCase().replace(/-/g,"_");return g&&!g.id&&g.type===d&&(g.id=`${P}_${Math.random().toString().slice(2,6)}`),g}function S(a){}function V(...a){}function R(){e!=null&&e.schema.contents&&e.schema.contents.map(a=>{let h=a.id;a.type==="component-ref"&&(h=a.component);const d=t.value.querySelectorAll(`#${h}-design-item`);d!=null&&d.length&&Array.from(d).map(g=>{var P;(P=g==null?void 0:g.componentInstance)!=null&&P.value.onRemoveComponent&&g.componentInstance.value.onRemoveComponent()})})}function x(){}function I(a){}return l.value={canMove:u(),canSelectParent:m(),canDelete:k(),canNested:!n(),contents:e==null?void 0:e.schema.contents,elementRef:t,parent:(E=e==null?void 0:e.parent)==null?void 0:E.componentInstance,schema:e==null?void 0:e.schema,styles:r,designerClass:o,canAccepts:p,getBelongedComponentInstance:i,getDraggableDesignItemElement:s,getDraggingDisplayText:y,getPropConfig:V,getDragScopeElement:v,onAcceptMovedChildElement:O,onChildElementMovedOut:S,addNewChildComponentSchema:q,triggerBelongedComponentToMoveWhenMoved:f.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:f.ref(!1),onRemoveComponent:R,getCustomButtons:x,onPropertyChanged:I},l}const C=f.defineComponent({name:"FSmokeDetectorDesign",props:T,emits:[""],setup(t,e){const c=f.ref(),r=f.inject("design-item-context"),o=Z(c,r);return f.onMounted(()=>{c.value.componentInstance=o}),e.expose(o.value),()=>f.createVNode("div",{ref:c,class:"f-smoke-detector"},[f.createVNode("img",{title:"smoke-detector",src:"../image/smoke-detector-2.png"},null)])}}),K={install(t){t.component(M.name,M)},register(t,e,c,r){t["smoke-detector"]=M,e["smoke-detector"]=A},registerDesigner(t,e,c){t["smoke-detector"]=C,e["smoke-detector"]=A}};b.SmokeDetector=M,b.default=K,b.propsResolver=A,b.smokeDetectorProps=T,Object.defineProperties(b,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});