@rugal.tu/vuemodel3 1.0.1 → 1.0.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/VueModel.esm.js +1 -1
- package/dist/VueModel.esm.min.js +1 -1
- package/dist/VueModel.esm.min.js.map +1 -1
- package/dist/VueModel.umd.js +1 -1
- package/dist/VueModel.umd.min.js +1 -1
- package/dist/VueModel.umd.min.js.map +1 -1
- package/package.json +1 -1
- package/src/VueModel.ts +1 -1
- package/src/esm/VueModel.js +1 -1
- package/src/esm/VueModel.js.map +1 -1
- package/src/umd/VueModel.js +1 -1
- package/src/umd/VueModel.js.map +1 -1
package/dist/VueModel.esm.js
CHANGED
|
@@ -1354,7 +1354,7 @@ class VueCommand extends VueStore {
|
|
|
1354
1354
|
else
|
|
1355
1355
|
PropertyOption[`$${PropertyKey}`] = Value;
|
|
1356
1356
|
};
|
|
1357
|
-
if (Option.Value != null)
|
|
1357
|
+
if (SetProperty[PropertyKey] == null && Option.Value != null)
|
|
1358
1358
|
SetProperty[PropertyKey] = Option.Value;
|
|
1359
1359
|
return SetProperty;
|
|
1360
1360
|
}
|
package/dist/VueModel.esm.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
class r{$NavigateToFunc;$DefaultDateJoinChar;constructor(){this.$NavigateToFunc=null;this.WithDateTextJoinChar("-")}WithNavigateTo(n){return this.$NavigateToFunc=n,this}WithDateTextJoinChar(n){return this.$DefaultDateJoinChar=n,this}GenerateId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,n=>{let t=crypto.getRandomValues(new Uint8Array(1))[0]&15,i=n==="x"?t:t&3|8;return i.toString(16)})}GenerateIdReplace(n){return this.GenerateId().replaceAll("-",n)}GenerateUrl(n,t=null){n=this.Paths(n);(n==null||n.length==0||n[0].length==0)&&this.$Throw("Url can not be null or empty");n=n.map(n=>n.replace(/\/+$/g,"").replace(/^\/+/g,"/"));let i=this.ToJoin(n,"/");return t!=null&&(t=this.ConvertTo_UrlQuery(t),i+=`?${t}`),i}$BaseNavigateTo(n){this.$NavigateToFunc?this.$NavigateToFunc(n):window.location.href=n}NavigateToRoot(){return this.$BaseNavigateTo("/"),this}NavigateTo(n,t=null){let i=this.GenerateUrl(n,t);return this.$BaseNavigateTo(i),this}$BaseNavigateBlank(n){let t=document.createElement("a");t.href=n;t.target="_blank";t.rel="noopener noreferrer";t.click()}NavigateBlank(n,t=null){let i=this.GenerateUrl(n,t);return this.$BaseNavigateBlank(i),this}ForEachObject(n,t){for(let i of Object.getOwnPropertyNames(n))if(!i.match(/^$/g)){let r=n[i];t!=null&&t.call(this,i,r)}}DeepObjectExtend(n,t,i=10){if(i==0)return{...n,...t};let r=Object.keys(t);for(let u=0;u<r.length;u++){let f=r[u];if(f in n)if(typeof t[f]!="object")n[f]=t[f];else{let r={...this.DeepObjectExtend(n[f],t[f],i-1)};n[f]=r}else n[f]=t[f]}return n}ToDateInfo(n){n??=new Date;return this.$CreateDateInfo(n)}ToDateText(n,t){n=this.$CreateDateInfo(n);t??={};typeof t=="string"&&(t={Format:t});t.DateJoinChar??=this.$DefaultDateJoinChar;t.Format??=`yyyy${t.DateJoinChar}MM${t.DateJoinChar}dd`;let i=t.Format;return i=i.replaceAll("yyyy",n.Year.toString().padStart(4,"0")),i=i.replaceAll("MM",n.Month.toString().padStart(2,"0")),i=i.replaceAll("dd",n.Day.toString().padStart(2,"0")),t.Format=i,i}ToDateTimeText(n,t){t??={};typeof t=="string"&&(t={Format:t});t.DateJoinChar??=this.$DefaultDateJoinChar;t.Format??=`yyyy${t.DateJoinChar}MM${t.DateJoinChar}dd HH:mm:ss`;t={...t};n=this.$CreateDateInfo(n);this.ToDateText(n,t);let i=t.Format;return i=i.replaceAll("HH",n.Hour.toString().padStart(2,"0")),i=i.replaceAll("mm",n.Minute.toString().padStart(2,"0")),i.replaceAll("ss",n.Second.toString().padStart(2,"0"))}$CreateDateInfo(n){if(n??=new Date,typeof n=="string"&&(n=new Date(n)),n instanceof Date==!1)return n;return{Date:n,Year:n.getFullYear(),Month:n.getMonth()+1,Day:n.getDate(),Hour:n.getHours(),Minute:n.getMinutes(),Second:n.getSeconds()}}ConvertTo_UrlQuery(n){if(typeof n=="string")return n;let t=[];this.ForEachObject(n,(n,i)=>{t.push(`${n}=${i}`)});return t.join("&")}ClearUrl(n){return n.replace(/^\/+|\/+$/g,"")}ToJoin(n,t="."){let i=this.Paths(n);return i.join(t)}Paths(...n){if(!Array.isArray(n))return[n];let t=[];for(let i of n)if(i!=null){if(!Array.isArray(i)){t.push(i);continue}i.length!=0&&t.push(...this.Paths(...i))}return t}IsPathType(n){if(Array.isArray(n)){for(let t of n){let n=this.IsPathType(t);if(!n)return!1}return!0}return typeof n=="string"?!0:!1}$Throw(n){throw new Error(n);}$Error(n){console.error(n)}}class i extends r{Dom;DomName=null;Parent=null;Children=[];ElementDeep=0;NodeDeep=0;constructor(n){super();this.Dom=n}Query(n,t){return this.$RCS_QueryChildrens(this,n,t)}Selector(n){return this.Dom.querySelector(n)}SelectorAll(n){return this.Dom.querySelectorAll(n)}$RCS_QueryChildrens(n,t,i){if(t==null)return null;t=this.Paths(t);t.length==1&&(t=t[0]);let r=[];for(let u of n.Children){if(Array.isArray(t)){let n=[...t],f=n.shift();if(u.DomName==f){n.length==1&&(n=n[0]);let t=this.$RCS_QueryChildrens(u,n,i);if(t!=null){r.push(...t);continue}}}else if(u.DomName==t&&(r.push(u),i.Mode=="Multi"))continue;let n=this.$RCS_QueryChildrens(u,t,i);n!=null&&r.push(...n)}return r}}class f{$Root=null;$RootNode=null;$Nodes=[];$QueryDomName=null;IsInited=false;WithRoot(n){return this.$Root=document.querySelector(n),this}WithDomName(n){return this.$QueryDomName=n,this}Init(n=false){return this.IsInited&&!n?this:(this.$Root??=document.body,this.$RootNode=new i(this.$Root),this.$RCS_Visit(this.$Root,this.$RootNode,0),this.$Nodes=this.$Nodes.sort((n,t)=>n.NodeDeep-t.NodeDeep),this.IsInited=!0,this)}Query(n,r){return t.IsInited||t.Init(),r==null?r={Mode:"Multi"}:r instanceof i&&(r={Mode:"Multi",TargetNode:r}),r.TargetNode==null&&(r.TargetNode=this.$RootNode),r.TargetNode.Query(n,r)}Using(n,t,i){let r=this.Query(n,{Mode:"Multi",TargetNode:i});return r!=null&&r.length>0&&t({QueryNodes:r}),this}$RCS_Visit(n,t,i){let u=this.$AddNode(n,t,i);u??=t;let r=n.children;if(n instanceof HTMLTemplateElement&&(r=n.content.children),r!=null&&r.length!=0)for(let n=0;n<r.length;n++){let t=r[n];t instanceof HTMLElement&&this.$RCS_Visit(t,u,i+1)}}$AddNode(n,t,r){if(this.$QueryDomName!=null&&!n.matches(`[${this.$QueryDomName}]`))return null;let f=n.getAttribute(this.$QueryDomName),u=new i(n);return u.DomName=f,u.ElementDeep=r,this.$Nodes.push(u),t!=null&&(u.Parent=t,u.NodeDeep=t.NodeDeep+1,t.Children.push(u)),u}}var t=new f;class u{$Store;constructor(n,t,i="none"){this.$Store=o({FileId:n,File:t,ConvertType:i,Base64:null,Buffer:null});this.$ConvertFile()}get FileId(){return this.$Store.FileId}set FileId(n){this.$Store.FileId=n}get File(){return this.$Store.File}set File(n){this.$Store.File=n}get ConvertType(){return this.$Store.ConvertType}set ConvertType(n){this.$Store.ConvertType=n}get Base64(){return this.$Store.Base64}set Base64(n){this.$Store.Base64=n}get Buffer(){return this.$Store.Buffer}set Buffer(n){this.$Store.Buffer=n}$ConvertFile(){if(this.ConvertType!=null){let n=[];n=Array.isArray(this.ConvertType)?this.ConvertType:[this.ConvertType];for(let t=0;t<n.length;t++){let i=n[t];switch(i){case"base64":this.$ConvertBase64();break;case"buffer":this.$ConvertBuffer()}}}}$ConvertBase64(n=false){if(this.File==null||this.Base64!=null&&n==!1)return this;let t=new FileReader;return t.readAsDataURL(this.File),t.onload=()=>this.Base64=t.result,this}$ConvertBuffer(){let n=new FileReader;n.readAsArrayBuffer(this.File);n.onload=()=>this.Buffer=n.result}}class e extends r{#ApiDomain=null;#RootRoute=null;#AccessToken=null;#RefreshToken=null;#HeaderFuncs=[];#OnEventFunc={};#OnEventName={ApiStore:{AddApi:"AddApi",UpdateStore:"UpdateStore",AddStore:"AddStore",SetStore:"SetStore"}};#OnSuccess;#OnError;#OnComplete;#ExportSuccessStore;#Store={FileStore:{}};#Func_ConvertTo_FormData=[];$ApiStore={};constructor(){super();this.SetStore("api",this.$ApiStore)}get ApiDomain(){return this.#ApiDomain==null?null:this.ClearUrl(this.#ApiDomain)}set ApiDomain(n){this.#ApiDomain=this.ClearUrl(n)}get OnEventName(){return this.#OnEventName}get #EventName(){return this.OnEventName.ApiStore}get Store(){return this.#Store}set Store(n){this.#Store=n}get FileStore(){return this.Store.FileStore}WithAccessToken(n){return this.#AccessToken=n,this}WithRefreshToken(n){return this.#RefreshToken=n,this}WithApiDomain(n){return this.ApiDomain=n,this}WithRootRoute(n){return this.#RootRoute=n,this}WithHeader(n){return this.#HeaderFuncs.push(n),this}WithOnSuccess(n){return this.#OnSuccess=n,this}WithOnError(n){return this.#OnError=n,this}WithOnComplete(n){return this.#OnComplete=n,this}WithExportSuccessStore(n){return this.#ExportSuccessStore=n,this}WithConvertTo_FormParam(n){return this.#Func_ConvertTo_FormData.push(n),this}ClearConvertTo_FormParam(){return this.#Func_ConvertTo_FormData=[],this}ConvertTo_ApiUrl(n,t=null){let i=n;return this.ApiDomain==null||i.includes("http")||(i=`${this.ApiDomain}/${this.ClearUrl(i)}`),t!=null&&(i=`${i}?${this.ConvertTo_UrlQuery(t)}`),i}AddApi(n){for(let t in n){let r=n[t],i={ApiKey:t,...r};this.$ApiStore[t]=i;this.$EventTrigger(this.#EventName.AddApi,i)}return this}ApiCall(n,t=null){return this.$BaseApiCall(n,t,!1),this}ApiCall_Form(n,t=null){return this.$BaseApiCall(n,t,!0),this}$BaseApiCall(n,t,i){let r=this.$ApiStore[n];r==null&&this.$Throw(`Api setting not found of "${n}"`);let u=t?.Query??r.Query,f=t?.Body??r.Body,e=t?.File??r.File;typeof u=="function"&&(u=u());typeof f=="function"&&(f=f());typeof e=="function"&&(e=e());let s=t?.IsUpdateStore??r.IsUpdateStore??!0,h=this.ConvertTo_ApiUrl(r.Url,u),o=this.$GenerateFetchRequest(r,f,e,i);r.IsCalling=!0;r.OnCalling?.call(this,o);t?.OnCalling?.call(this,o);fetch(h,o).then(async n=>{if(!n.ok)throw n;let i=await this.$ProcessApiReturn(n);if(s){this.#ExportSuccessStore!=null&&(i=this.#ExportSuccessStore?.call(this,i,n));let t=r.ApiKey;this.UpdateStore(t,i)}return r.IsSuccess=!0,r.IsError=!1,r.OnSuccess?.call(this,i,n),t?.OnSuccess?.call(this,i,n),this.#OnSuccess?.call(this,i,n),{ConvertResult:i,ApiResponse:n}}).catch(n=>{r.IsError=!0,r.IsSuccess=!1,this.$Error(n.message),r.OnError?.call(this,n),t?.OnError?.call(this,n),this.#OnError?.call(this,n)}).then(n=>{r.IsCalling=!1,r.IsComplete=!0,n instanceof Object?(r.OnComplete?.call(this,n.ConvertResult,n.ApiResponse),t?.OnComplete?.call(this,n.ConvertResult,n.ApiResponse),this.#OnComplete?.call(this,n.ConvertResult,n.ApiResponse)):(r.OnComplete?.call(this),t?.OnComplete?.call(this),this.#OnComplete?.call(this,null,null))})}$GenerateFetchRequest(n,t,i,r){let u=new Headers;if(u.set("Authorization",`Bearer ${this.#AccessToken}`),this.#HeaderFuncs.length>0)for(let n of this.#HeaderFuncs)n(u);let f={method:n.Method,headers:u};if(r){let n=this.$ConvertTo_FormData(t,new FormData);n=this.$ConvertTo_FormFile(i,n);f.body=n;f.method="POST"}else u.set("content-type","application/json"),n.Method!="GET"&&(f.body=JSON.stringify(t??{}));return f}UseFormJsonBody(n="Body"){return this.WithConvertTo_FormParam(t=>{let i={};return i[n]=JSON.stringify(t),i}),this}EventAdd_AddApi(n){return this.$EventAdd(this.#EventName.AddApi,n),this}EventAdd_UpdateStore(n){return this.$EventAdd(this.#EventName.UpdateStore,n),this}EventAdd_AddStore(n){return this.$EventAdd(this.#EventName.AddStore,n),this}EventAdd_SetStore(n){return this.$EventAdd(this.#EventName.SetStore,n),this}$EventAdd(n,t){n in this.#OnEventFunc==!1&&(this.#OnEventFunc[n]=[]);this.#OnEventFunc[n].push(t)}$EventTrigger(n,t){let i=this.#OnEventFunc[n];if(i!=null)for(let n of i)n(t)}UpdateStore(n,t){return n=this.ToJoin(n),this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.UpdateStore,{Path:n,Data:t}),this}AddStore(n,t=null){return(n=this.ToJoin(n),this.GetStore(n)!=null)?this:(this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.AddStore,{Path:n,Data:t}),this)}SetStore(n,t){return n=this.ToJoin(n),this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!1}),this.$EventTrigger(this.#EventName.SetStore,{Path:n,Data:t}),this}GetStore(n,t){typeof t=="boolean"&&(t={Clone:t});t??={};t.Clone??=!1;t.CreateIfNull??=!1;t.DefaultValue==null&&(t.DefaultValue={});n=this.ToJoin(n);let i=this.$RCS_GetStore(n,this.Store,{CreateIfNull:t.CreateIfNull,DefaultValue:t.DefaultValue});if(t.Clone){let n={},t=Object.getOwnPropertyNames(i);for(let r of t)r.match(/^\$/g)||(n[r]=i[r]);return n}return i}ClearStore(n){let t=this.GetStore(n);if(t==null)return this;let i=Object.getOwnPropertyNames(t);for(let n of i)if(!n.match(/^\$/g)){let i=t[n];if(typeof i!="function"){if(Array.isArray(i)){i.splice(0,i.length);continue}t[n]=null}}return this}$RCS_GetStore(n,t,i){if(t==null)return null;let r=n.split("."),u=r.shift();t[u]==null&&i.CreateIfNull&&(t[u]=Array.isArray(i.DefaultValue)?[...i.DefaultValue]:typeof i.DefaultValue=="object"?{...i.DefaultValue}:i.DefaultValue);let f=t[u];if(r.length==0)return f;let e=r.join(".");return this.$RCS_GetStore(e,f,i)}$RCS_SetStore(n,t,i,r={IsDeepSet:true}){if(n.includes(".")){let f=n.split("."),u=f.shift();i[u]==null&&(i[u]={});let e=i[u],o=f.join(".");return this.$RCS_SetStore(o,t,e,r)}let u=!r.IsDeepSet||i[n]==null||t==null||typeof t!="object";return u?(i[n]=t,t):(this.$DeepSetObject(n,t,i),t)}$DeepSetObject(n,t,i){if(t==null){i[n]=t;return}if(!Array.isArray(t)){this.ForEachObject(t,(t,r)=>{if(Array.isArray(r)||typeof r=="object"){this.$DeepSetObject(t,r,i[n]);return}i[n]==null&&(i[n]={});i[n][t]=r});return}Array.isArray(i[n])||(i[n]=[]);i[n].length>0&&i[n].splice(0,i[n].length);i[n].push(...t)}AddFileStore(n){return this.FileStore[n]==null&&(this.FileStore[n]=[]),this}Files(n,t=null){let i=this.FileStore[n];if(i==null)return[];t!=null&&(i=i.filter(n=>t(n)));return i.map(n=>n.File)}AddFile(n,t,i="none"){this.AddFileStore(n);let r=this.FileStore[n];if(Array.isArray(t))t.forEach(t=>this.AddFile(n,t));else if(t instanceof u)r.push(t);else{let n=new u(this.GenerateId(),t,i);r.push(n)}return this}RemoveFile(n,t){let i=this.FileStore[n];if(i==null)return this;if(Array.isArray(t))t.forEach(t=>this.RemoveFile(n,t));else{let n=i.findIndex(n=>n.FileId==t);n>=0&&i.splice(n,1)}return this}ClearFile(n){let t=this.FileStore[n];return t==null?this:(t.splice(0,t.length),this)}$ProcessApiReturn(n){let t=n.headers.get("content-type");return t.includes("application/json")?n.json().then(n=>n):t.includes("text")?n.text().then(n=>n):new Promise(t=>{t(n)})}NavigateToRoot(){let n=this.#RootRoute??"/";return super.$BaseNavigateTo(n),this}$ConvertTo_FormData(n,t){return(t??=new FormData,n==null)?t:(this.#Func_ConvertTo_FormData.forEach(i=>{n=i(n,t)}),n instanceof FormData)?n:(this.ForEachObject(n,(n,i)=>{t.append(n,i)}),t)}$ConvertTo_FormFile(n,t){if(t??=new FormData,n==null)return t;if(Array.isArray(n)||n instanceof File||n instanceof u)return this.$AppendFileToFormData("Files",t,n),t;let i=Object.keys(n);for(let r=0;r<i.length;r++){let u=i[r],f=n[u];this.$AppendFileToFormData(u,t,f)}return t}$AppendFileToFormData(n,t,i){if(Array.isArray(i))for(let r=0;r<i.length;r++)this.$AppendFileToFormData(n,t,i[r]);else i instanceof File?t.append(n,i):t.append(n,i.File);return t}}import{watch as c}from"vue";import{createApp as l,reactive as o}from"vue";class s extends e{$VueProxy=null;$VueOption={methods:{},components:{},computed:{}};$VueApp=null;$VueUse=[];$CoreStore="app";$MountedFuncs=[];constructor(){super();this.#Setup()}#Setup(){this.EventAdd_AddApi(n=>{this.AddStore(n.ApiKey)}).EventAdd_UpdateStore(()=>{this.ForceUpdate()}).EventAdd_AddStore(()=>{this.ForceUpdate()}).EventAdd_SetStore(()=>{this.ForceUpdate()}).AddStore(this.$CoreStore,{}).WithMounted(()=>{this.UpdateStore([this.$CoreStore,"IsMounted"],!0)})}get Store(){return this.$VueProxy!=null?this.$VueProxy:super.Store}set Store(n){super.Store=n}WithVueOption(n={}){return this.$VueOption=this.DeepObjectExtend(this.$VueOption,n),this}WithMounted(n=()=>{}){return this.$MountedFuncs.push(n),this}WithComponent(n={}){return this.$VueOption.components=this.DeepObjectExtend(this.$VueOption.components,n),this}WithVueUse(...n){for(let t of n)this.$VueUse.push(t);return this}ForceUpdate(){return this.$VueProxy?.$forceUpdate(),this}Refs(n){return this.$VueProxy?this.$VueProxy[n]:null}}class a extends s{$IsInited=false;$QueryDomName=null;WithQueryDomName(n){return this.$QueryDomName=n,t.WithDomName(this.$QueryDomName),this}AddV_Text(t,i){let r=this.$ConvertCommandOption(t,i);return typeof r.Target!="function"&&n.AddStore(r.Target),this.$AddCommand(t,"v-text",r),this}AddV_Model(n,t,i){let r=this.$ConvertCommandOption(t);return i??={},i.DefaultValue??=null,r.CommandKey=i.ModelValue,this.AddStore(t,i.DefaultValue),this.$AddCommand(n,"v-model",r),this}AddV_Slot(n,t,i){let r=this.$ConvertCommandOption(i);return r.CommandKey=t,this.$AddCommand(n,`v-slot`,r),this}AddV_For(t,i,r){let u=this.$ConvertCommandOption(t,i);r&&(r=this.ToJoin(r),/^\(/.test(r)||(r=`(${r}`),/\)$/.test(r)||(r+=")"),u.TargetHead=`${r} in `);let f=n.ToJoin(u.Target);return f.includes("in")||(u.TargetHead??="(item, index) in "),this.$AddCommand(t,"v-for",u),this}AddV_If(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-if",i),this}AddV_ElseIf(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-else-if",i),this}AddV_Else(n){let t=this.$ConvertCommandOption(n);return t.Target="",this.$AddCommand(n,"v-else",t),this}AddV_Show(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-show",i),this}AddV_Bind(n,t,i){let r=this.$ConvertCommandOption(n,i);return r.CommandKey=t,this.$AddCommand(n,"v-bind",r),this}AddV_On(n,t,i,r){let u=this.$ConvertCommandOption(n,i);return r&&(u.FuncArgs=r),u.FuncAction=!1,u.CommandKey=t,this.$AddCommand(n,`v-on`,u),this}AddV_Watch(t,i,r=false,u={}){let f={handler:i,deep:r,...u};return n.WithMounted(()=>{n.AddStore(t),c(()=>n.GetStore(t),i,f)}),this}AddV_Function(t,i){return this.$IsInited&&!Array.isArray(t)?this.$VueOption.methods[t]=i:n.UpdateStore(t,i),this}AddV_OnChange(n,t,i){return this.AddV_On(n,"change",t,i),this}AddV_Click(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i),this.AddV_On(n,"click",r),this}AddV_FilePicker(n,t){let i=null,r=null,f="none",u=!1;return typeof t=="string"?i=t:(i=t.Store,f=t.ConvertType,u=t.Multiple,r=Array.isArray(t.Accept)?t.Accept.join(" "):t.Accept),this.AddFileStore(i),this.AddV_Click(n,()=>{let n=document.createElement("input");n.type="file";r!=null&&(n.accept=r);u!=null&&(n.multiple=u);n.onchange=()=>{if(n.files!=null&&n.files.length!=0){let t=n.files;for(let n=0;n<t.length;n++){let r=t[n];this.AddFile(i,r,f)}}};n.click()}),this}AddV_Tree(i,r,u){let f=[],e=this.Paths(i);this.$ParseTreeSet(e,r,f);let o={"v-text":(t,i)=>{n.AddV_Text(i.TargetDom,i.TargetValue)},"v-model":(t,i)=>{if(typeof t.StoreValue=="function"){n.$Error(`v-model command value must be a string or string[], path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Model(i.TargetDom,i.TargetPath,{ModelValue:t.CommandKey})},"v-for":(t,i)=>{n.AddV_For(i.TargetDom,i.TargetValue,t.CommandKey)},"v-if":(t,i)=>{n.AddV_If(i.TargetDom,i.TargetValue)},"v-else-if":(t,i)=>{n.AddV_ElseIf(i.TargetDom,i.TargetValue)},"v-else":(t,i)=>{n.AddV_Else(i.TargetDom)},"v-show":(t,i)=>{n.AddV_Show(i.TargetDom,i.TargetValue)},"v-bind":(t,i)=>{n.AddV_Bind(i.TargetDom,t.CommandKey,i.TargetValue)},"v-on":(t,i)=>{n.AddV_On(i.TargetDom,t.CommandKey,i.TargetValue,t.Params)},"v-slot":(t,i)=>{if(Array.isArray(t.StoreValue)||typeof t.StoreValue=="function"){n.$Error(`v-slot command value must be a string, path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Slot(i.TargetDom,t.CommandKey,i.TargetPath)},watch:t=>{if(typeof t.StoreValue!="function"){n.$Error(`watch command value must be a function, path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Watch(t.DomPaths,t.StoreValue)},func:t=>{if(typeof t.StoreValue!="function"){n.$Error(`func command value must be a function, path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Function(["event",...t.DomPaths,t.CommandKey],t.StoreValue)}};for(let i of f){let f=o[i.Command];if(f==null){n.$Error(`${i.Command} command is not allowed, path: ${this.ToJoin(i.DomPaths)}`);continue}if(u?.UseDeepQuery){let n=t.Query(i.DomPaths,{Mode:"DeepMulti"});i.Nodes=n}let s=u?.UseDeepQuery?i.Nodes:i.DomPaths,r=[],e;typeof i.StoreValue!="function"&&(u?.UseTreePath&&(r=[...i.TreePaths]),u?.UseDomStore||i.StoreValue=="."?r.push(i.DomName):i.StoreValue!=null&&i.StoreValue!=""&&(r=this.Paths(r,i.StoreValue)));e=r.length>0?r:i.StoreValue;f(i,{TargetDom:s,TargetPath:r,TargetValue:e})}return this}$ParseTreeSet(t,i,r){let u=Object.keys(i),f=/^(.+?)\(([^)]*)\)$/;for(let e=0;e<u.length;e++){let o=u[e],h=i[o],l=[...t],c=[...t],a=c.pop();if(!o.includes(":")){let n=o.match(f),t=null;n&&n.length>=3&&(o=n[1],t=n[2]);r.push({Command:o,StoreValue:h,TreePaths:c,DomPaths:l,DomName:a,CommandKey:t});continue}let s=o.split(":");if(o.length<2){n.$Error(`command ${o} invalid`);continue}o=s.shift();let v=null;if(s.length>0){let t=s.pop(),n=t.match(f);n&&n.length>=3?(s.push(n[1]),v=n[2]):s.push(t)}let y=n.ToJoin(s,":");if(o==""){this.$ParseTreeSet([...t,y],h,r);continue}r.push({Command:o,CommandKey:y,StoreValue:h,TreePaths:c,DomPaths:l,DomName:a,Params:v})}}AddV_Property(n,t){let i=this.Store;n=this.ToJoin(n);let r=n;if(n.includes(".")){let t=n.split(".");r=t.pop();let u=t.join(".");i=this.GetStore(u,{CreateIfNull:!0})}let u=this.$BaseAddProperty(i,r,t);if(t.Bind){Array.isArray(t.Bind)||(t.Bind=[t.Bind]);for(let i of t.Bind)this.AddV_Property(i,{Target:n});u.Bind=t.Bind}return this}$BaseAddProperty(n,t,i){let f=this,u={get(){return i.get?i.get():this.$get(t)},set(n){if(i.set){i.set(n);return}this.$set(t,n)}};i.get&&(u.get=i.get);i.set!=null&&(u.set=i.set);let r=Object.defineProperty(n,t,u);return r.$properties??={},r.$properties[t]={...i},r.$get??=n=>{let t=r.$properties[n];return t?.Target==null?t[`$${n}`]:f.GetStore(t.Target)},r.$set??=(n,t)=>{let i=r.$properties[n];i?.Target?f.SetStore(i.Target,t):i[`$${n}`]=t},i.Value!=null&&(r[t]=i.Value),r}$ConvertCommandOption(n,t){if(t==null)if(this.IsPathType(n))return{Target:n,FuncAction:!1};else{let t=n,i=t.map(n=>n.DomName);return{Target:i,FuncAction:!1}}return typeof t=="string"||typeof t=="function"||Array.isArray(t)?{Target:t,FuncAction:!0}:(t.FuncAction??=!0,t)}$AddCommand(n,r,u){if(n!=null){Array.isArray(n)||(n=[n]);let o=n[0]instanceof i,e;e=o?n:t.Query(n);let f=u.Target;if(typeof f=="function"){let t=n;if(f=this.$GenerateEventFunction(t,f,r),u.FuncArgs){let n=this.ToJoin(u.FuncArgs,",");/^\(/.test(n)||(n=`(${n}`);/\)$/.test(n)||(n+=")");f+=n}else u.FuncAction&&(f+=`()`)}else f=this.ToJoin(f);u.TargetHead&&(f=u.TargetHead+f);u.TargetTail&&(f+=u.TargetTail);u.CommandKey&&(r+=`:${u.CommandKey}`);for(let n=0;n<e.length;n++){let t=e[n],i=t.Dom;this.$SetAttribute(i,r,f)}}}$SetAttribute(n,t,i){if(n==null){let n=`Dom Element is null. ${i}`;console.warn(n);return}n.setAttribute(t,i)}$RandomFuncName(n){return`${n}${this.GenerateIdReplace("")}`.replace(/[-:.]/g,"_")}$GenerateEventFunction(n,t,i){let u=this.$RandomFuncName(`${i}_`);n=this.Paths(n);let r=["event",...n,u];return this.AddV_Function(r,t),this.ToJoin(r)}}class h extends a{$NativeWarn;$IsEnableVueWarn;$MountId=null;Id;constructor(){super();this.Id=this.GenerateId();this.$MountId="app";this.WithVueWarn(!1)}WithMountId(n){return this.$MountId=n,this}WithVueWarn(n){return this.$IsEnableVueWarn=n,this.$NativeWarn=console.warn,console.warn=(...n)=>{n!=null&&n.length!=0&&(n[0].toLowerCase().includes("[vue warn]")&&this.$IsEnableVueWarn==!1||this.$NativeWarn(n))},this}Init(){if(this.$IsInited)return this;this.Store=o(this.Store);let n=this.Store,t=this.$MountedFuncs;this.$VueApp=l({...this.$VueOption,data(){return n},mounted:()=>{for(let n of t)n()}});for(let n of this.$VueUse)this.$VueApp.use(n);return this.$VueProxy=this.$VueApp.mount(`#${this.$MountId}`),this.$IsInited=!0,this}Using(n=()=>{}){return n(),this}}const n=new h;window.Model=n;export{f as DomQueryer,t as Queryer,n as Model,h as VueModel,r as FuncBase,e as ApiStore,s as VueStore};
|
|
1
|
+
class r{$NavigateToFunc;$DefaultDateJoinChar;constructor(){this.$NavigateToFunc=null;this.WithDateTextJoinChar("-")}WithNavigateTo(n){return this.$NavigateToFunc=n,this}WithDateTextJoinChar(n){return this.$DefaultDateJoinChar=n,this}GenerateId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,n=>{let t=crypto.getRandomValues(new Uint8Array(1))[0]&15,i=n==="x"?t:t&3|8;return i.toString(16)})}GenerateIdReplace(n){return this.GenerateId().replaceAll("-",n)}GenerateUrl(n,t=null){n=this.Paths(n);(n==null||n.length==0||n[0].length==0)&&this.$Throw("Url can not be null or empty");n=n.map(n=>n.replace(/\/+$/g,"").replace(/^\/+/g,"/"));let i=this.ToJoin(n,"/");return t!=null&&(t=this.ConvertTo_UrlQuery(t),i+=`?${t}`),i}$BaseNavigateTo(n){this.$NavigateToFunc?this.$NavigateToFunc(n):window.location.href=n}NavigateToRoot(){return this.$BaseNavigateTo("/"),this}NavigateTo(n,t=null){let i=this.GenerateUrl(n,t);return this.$BaseNavigateTo(i),this}$BaseNavigateBlank(n){let t=document.createElement("a");t.href=n;t.target="_blank";t.rel="noopener noreferrer";t.click()}NavigateBlank(n,t=null){let i=this.GenerateUrl(n,t);return this.$BaseNavigateBlank(i),this}ForEachObject(n,t){for(let i of Object.getOwnPropertyNames(n))if(!i.match(/^$/g)){let r=n[i];t!=null&&t.call(this,i,r)}}DeepObjectExtend(n,t,i=10){if(i==0)return{...n,...t};let r=Object.keys(t);for(let u=0;u<r.length;u++){let f=r[u];if(f in n)if(typeof t[f]!="object")n[f]=t[f];else{let r={...this.DeepObjectExtend(n[f],t[f],i-1)};n[f]=r}else n[f]=t[f]}return n}ToDateInfo(n){n??=new Date;return this.$CreateDateInfo(n)}ToDateText(n,t){n=this.$CreateDateInfo(n);t??={};typeof t=="string"&&(t={Format:t});t.DateJoinChar??=this.$DefaultDateJoinChar;t.Format??=`yyyy${t.DateJoinChar}MM${t.DateJoinChar}dd`;let i=t.Format;return i=i.replaceAll("yyyy",n.Year.toString().padStart(4,"0")),i=i.replaceAll("MM",n.Month.toString().padStart(2,"0")),i=i.replaceAll("dd",n.Day.toString().padStart(2,"0")),t.Format=i,i}ToDateTimeText(n,t){t??={};typeof t=="string"&&(t={Format:t});t.DateJoinChar??=this.$DefaultDateJoinChar;t.Format??=`yyyy${t.DateJoinChar}MM${t.DateJoinChar}dd HH:mm:ss`;t={...t};n=this.$CreateDateInfo(n);this.ToDateText(n,t);let i=t.Format;return i=i.replaceAll("HH",n.Hour.toString().padStart(2,"0")),i=i.replaceAll("mm",n.Minute.toString().padStart(2,"0")),i.replaceAll("ss",n.Second.toString().padStart(2,"0"))}$CreateDateInfo(n){if(n??=new Date,typeof n=="string"&&(n=new Date(n)),n instanceof Date==!1)return n;return{Date:n,Year:n.getFullYear(),Month:n.getMonth()+1,Day:n.getDate(),Hour:n.getHours(),Minute:n.getMinutes(),Second:n.getSeconds()}}ConvertTo_UrlQuery(n){if(typeof n=="string")return n;let t=[];this.ForEachObject(n,(n,i)=>{t.push(`${n}=${i}`)});return t.join("&")}ClearUrl(n){return n.replace(/^\/+|\/+$/g,"")}ToJoin(n,t="."){let i=this.Paths(n);return i.join(t)}Paths(...n){if(!Array.isArray(n))return[n];let t=[];for(let i of n)if(i!=null){if(!Array.isArray(i)){t.push(i);continue}i.length!=0&&t.push(...this.Paths(...i))}return t}IsPathType(n){if(Array.isArray(n)){for(let t of n){let n=this.IsPathType(t);if(!n)return!1}return!0}return typeof n=="string"?!0:!1}$Throw(n){throw new Error(n);}$Error(n){console.error(n)}}class i extends r{Dom;DomName=null;Parent=null;Children=[];ElementDeep=0;NodeDeep=0;constructor(n){super();this.Dom=n}Query(n,t){return this.$RCS_QueryChildrens(this,n,t)}Selector(n){return this.Dom.querySelector(n)}SelectorAll(n){return this.Dom.querySelectorAll(n)}$RCS_QueryChildrens(n,t,i){if(t==null)return null;t=this.Paths(t);t.length==1&&(t=t[0]);let r=[];for(let u of n.Children){if(Array.isArray(t)){let n=[...t],f=n.shift();if(u.DomName==f){n.length==1&&(n=n[0]);let t=this.$RCS_QueryChildrens(u,n,i);if(t!=null){r.push(...t);continue}}}else if(u.DomName==t&&(r.push(u),i.Mode=="Multi"))continue;let n=this.$RCS_QueryChildrens(u,t,i);n!=null&&r.push(...n)}return r}}class f{$Root=null;$RootNode=null;$Nodes=[];$QueryDomName=null;IsInited=false;WithRoot(n){return this.$Root=document.querySelector(n),this}WithDomName(n){return this.$QueryDomName=n,this}Init(n=false){return this.IsInited&&!n?this:(this.$Root??=document.body,this.$RootNode=new i(this.$Root),this.$RCS_Visit(this.$Root,this.$RootNode,0),this.$Nodes=this.$Nodes.sort((n,t)=>n.NodeDeep-t.NodeDeep),this.IsInited=!0,this)}Query(n,r){return t.IsInited||t.Init(),r==null?r={Mode:"Multi"}:r instanceof i&&(r={Mode:"Multi",TargetNode:r}),r.TargetNode==null&&(r.TargetNode=this.$RootNode),r.TargetNode.Query(n,r)}Using(n,t,i){let r=this.Query(n,{Mode:"Multi",TargetNode:i});return r!=null&&r.length>0&&t({QueryNodes:r}),this}$RCS_Visit(n,t,i){let u=this.$AddNode(n,t,i);u??=t;let r=n.children;if(n instanceof HTMLTemplateElement&&(r=n.content.children),r!=null&&r.length!=0)for(let n=0;n<r.length;n++){let t=r[n];t instanceof HTMLElement&&this.$RCS_Visit(t,u,i+1)}}$AddNode(n,t,r){if(this.$QueryDomName!=null&&!n.matches(`[${this.$QueryDomName}]`))return null;let f=n.getAttribute(this.$QueryDomName),u=new i(n);return u.DomName=f,u.ElementDeep=r,this.$Nodes.push(u),t!=null&&(u.Parent=t,u.NodeDeep=t.NodeDeep+1,t.Children.push(u)),u}}var t=new f;class u{$Store;constructor(n,t,i="none"){this.$Store=o({FileId:n,File:t,ConvertType:i,Base64:null,Buffer:null});this.$ConvertFile()}get FileId(){return this.$Store.FileId}set FileId(n){this.$Store.FileId=n}get File(){return this.$Store.File}set File(n){this.$Store.File=n}get ConvertType(){return this.$Store.ConvertType}set ConvertType(n){this.$Store.ConvertType=n}get Base64(){return this.$Store.Base64}set Base64(n){this.$Store.Base64=n}get Buffer(){return this.$Store.Buffer}set Buffer(n){this.$Store.Buffer=n}$ConvertFile(){if(this.ConvertType!=null){let n=[];n=Array.isArray(this.ConvertType)?this.ConvertType:[this.ConvertType];for(let t=0;t<n.length;t++){let i=n[t];switch(i){case"base64":this.$ConvertBase64();break;case"buffer":this.$ConvertBuffer()}}}}$ConvertBase64(n=false){if(this.File==null||this.Base64!=null&&n==!1)return this;let t=new FileReader;return t.readAsDataURL(this.File),t.onload=()=>this.Base64=t.result,this}$ConvertBuffer(){let n=new FileReader;n.readAsArrayBuffer(this.File);n.onload=()=>this.Buffer=n.result}}class e extends r{#ApiDomain=null;#RootRoute=null;#AccessToken=null;#RefreshToken=null;#HeaderFuncs=[];#OnEventFunc={};#OnEventName={ApiStore:{AddApi:"AddApi",UpdateStore:"UpdateStore",AddStore:"AddStore",SetStore:"SetStore"}};#OnSuccess;#OnError;#OnComplete;#ExportSuccessStore;#Store={FileStore:{}};#Func_ConvertTo_FormData=[];$ApiStore={};constructor(){super();this.SetStore("api",this.$ApiStore)}get ApiDomain(){return this.#ApiDomain==null?null:this.ClearUrl(this.#ApiDomain)}set ApiDomain(n){this.#ApiDomain=this.ClearUrl(n)}get OnEventName(){return this.#OnEventName}get #EventName(){return this.OnEventName.ApiStore}get Store(){return this.#Store}set Store(n){this.#Store=n}get FileStore(){return this.Store.FileStore}WithAccessToken(n){return this.#AccessToken=n,this}WithRefreshToken(n){return this.#RefreshToken=n,this}WithApiDomain(n){return this.ApiDomain=n,this}WithRootRoute(n){return this.#RootRoute=n,this}WithHeader(n){return this.#HeaderFuncs.push(n),this}WithOnSuccess(n){return this.#OnSuccess=n,this}WithOnError(n){return this.#OnError=n,this}WithOnComplete(n){return this.#OnComplete=n,this}WithExportSuccessStore(n){return this.#ExportSuccessStore=n,this}WithConvertTo_FormParam(n){return this.#Func_ConvertTo_FormData.push(n),this}ClearConvertTo_FormParam(){return this.#Func_ConvertTo_FormData=[],this}ConvertTo_ApiUrl(n,t=null){let i=n;return this.ApiDomain==null||i.includes("http")||(i=`${this.ApiDomain}/${this.ClearUrl(i)}`),t!=null&&(i=`${i}?${this.ConvertTo_UrlQuery(t)}`),i}AddApi(n){for(let t in n){let r=n[t],i={ApiKey:t,...r};this.$ApiStore[t]=i;this.$EventTrigger(this.#EventName.AddApi,i)}return this}ApiCall(n,t=null){return this.$BaseApiCall(n,t,!1),this}ApiCall_Form(n,t=null){return this.$BaseApiCall(n,t,!0),this}$BaseApiCall(n,t,i){let r=this.$ApiStore[n];r==null&&this.$Throw(`Api setting not found of "${n}"`);let u=t?.Query??r.Query,f=t?.Body??r.Body,e=t?.File??r.File;typeof u=="function"&&(u=u());typeof f=="function"&&(f=f());typeof e=="function"&&(e=e());let s=t?.IsUpdateStore??r.IsUpdateStore??!0,h=this.ConvertTo_ApiUrl(r.Url,u),o=this.$GenerateFetchRequest(r,f,e,i);r.IsCalling=!0;r.OnCalling?.call(this,o);t?.OnCalling?.call(this,o);fetch(h,o).then(async n=>{if(!n.ok)throw n;let i=await this.$ProcessApiReturn(n);if(s){this.#ExportSuccessStore!=null&&(i=this.#ExportSuccessStore?.call(this,i,n));let t=r.ApiKey;this.UpdateStore(t,i)}return r.IsSuccess=!0,r.IsError=!1,r.OnSuccess?.call(this,i,n),t?.OnSuccess?.call(this,i,n),this.#OnSuccess?.call(this,i,n),{ConvertResult:i,ApiResponse:n}}).catch(n=>{r.IsError=!0,r.IsSuccess=!1,this.$Error(n.message),r.OnError?.call(this,n),t?.OnError?.call(this,n),this.#OnError?.call(this,n)}).then(n=>{r.IsCalling=!1,r.IsComplete=!0,n instanceof Object?(r.OnComplete?.call(this,n.ConvertResult,n.ApiResponse),t?.OnComplete?.call(this,n.ConvertResult,n.ApiResponse),this.#OnComplete?.call(this,n.ConvertResult,n.ApiResponse)):(r.OnComplete?.call(this),t?.OnComplete?.call(this),this.#OnComplete?.call(this,null,null))})}$GenerateFetchRequest(n,t,i,r){let u=new Headers;if(u.set("Authorization",`Bearer ${this.#AccessToken}`),this.#HeaderFuncs.length>0)for(let n of this.#HeaderFuncs)n(u);let f={method:n.Method,headers:u};if(r){let n=this.$ConvertTo_FormData(t,new FormData);n=this.$ConvertTo_FormFile(i,n);f.body=n;f.method="POST"}else u.set("content-type","application/json"),n.Method!="GET"&&(f.body=JSON.stringify(t??{}));return f}UseFormJsonBody(n="Body"){return this.WithConvertTo_FormParam(t=>{let i={};return i[n]=JSON.stringify(t),i}),this}EventAdd_AddApi(n){return this.$EventAdd(this.#EventName.AddApi,n),this}EventAdd_UpdateStore(n){return this.$EventAdd(this.#EventName.UpdateStore,n),this}EventAdd_AddStore(n){return this.$EventAdd(this.#EventName.AddStore,n),this}EventAdd_SetStore(n){return this.$EventAdd(this.#EventName.SetStore,n),this}$EventAdd(n,t){n in this.#OnEventFunc==!1&&(this.#OnEventFunc[n]=[]);this.#OnEventFunc[n].push(t)}$EventTrigger(n,t){let i=this.#OnEventFunc[n];if(i!=null)for(let n of i)n(t)}UpdateStore(n,t){return n=this.ToJoin(n),this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.UpdateStore,{Path:n,Data:t}),this}AddStore(n,t=null){return(n=this.ToJoin(n),this.GetStore(n)!=null)?this:(this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.AddStore,{Path:n,Data:t}),this)}SetStore(n,t){return n=this.ToJoin(n),this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!1}),this.$EventTrigger(this.#EventName.SetStore,{Path:n,Data:t}),this}GetStore(n,t){typeof t=="boolean"&&(t={Clone:t});t??={};t.Clone??=!1;t.CreateIfNull??=!1;t.DefaultValue==null&&(t.DefaultValue={});n=this.ToJoin(n);let i=this.$RCS_GetStore(n,this.Store,{CreateIfNull:t.CreateIfNull,DefaultValue:t.DefaultValue});if(t.Clone){let n={},t=Object.getOwnPropertyNames(i);for(let r of t)r.match(/^\$/g)||(n[r]=i[r]);return n}return i}ClearStore(n){let t=this.GetStore(n);if(t==null)return this;let i=Object.getOwnPropertyNames(t);for(let n of i)if(!n.match(/^\$/g)){let i=t[n];if(typeof i!="function"){if(Array.isArray(i)){i.splice(0,i.length);continue}t[n]=null}}return this}$RCS_GetStore(n,t,i){if(t==null)return null;let r=n.split("."),u=r.shift();t[u]==null&&i.CreateIfNull&&(t[u]=Array.isArray(i.DefaultValue)?[...i.DefaultValue]:typeof i.DefaultValue=="object"?{...i.DefaultValue}:i.DefaultValue);let f=t[u];if(r.length==0)return f;let e=r.join(".");return this.$RCS_GetStore(e,f,i)}$RCS_SetStore(n,t,i,r={IsDeepSet:true}){if(n.includes(".")){let f=n.split("."),u=f.shift();i[u]==null&&(i[u]={});let e=i[u],o=f.join(".");return this.$RCS_SetStore(o,t,e,r)}let u=!r.IsDeepSet||i[n]==null||t==null||typeof t!="object";return u?(i[n]=t,t):(this.$DeepSetObject(n,t,i),t)}$DeepSetObject(n,t,i){if(t==null){i[n]=t;return}if(!Array.isArray(t)){this.ForEachObject(t,(t,r)=>{if(Array.isArray(r)||typeof r=="object"){this.$DeepSetObject(t,r,i[n]);return}i[n]==null&&(i[n]={});i[n][t]=r});return}Array.isArray(i[n])||(i[n]=[]);i[n].length>0&&i[n].splice(0,i[n].length);i[n].push(...t)}AddFileStore(n){return this.FileStore[n]==null&&(this.FileStore[n]=[]),this}Files(n,t=null){let i=this.FileStore[n];if(i==null)return[];t!=null&&(i=i.filter(n=>t(n)));return i.map(n=>n.File)}AddFile(n,t,i="none"){this.AddFileStore(n);let r=this.FileStore[n];if(Array.isArray(t))t.forEach(t=>this.AddFile(n,t));else if(t instanceof u)r.push(t);else{let n=new u(this.GenerateId(),t,i);r.push(n)}return this}RemoveFile(n,t){let i=this.FileStore[n];if(i==null)return this;if(Array.isArray(t))t.forEach(t=>this.RemoveFile(n,t));else{let n=i.findIndex(n=>n.FileId==t);n>=0&&i.splice(n,1)}return this}ClearFile(n){let t=this.FileStore[n];return t==null?this:(t.splice(0,t.length),this)}$ProcessApiReturn(n){let t=n.headers.get("content-type");return t.includes("application/json")?n.json().then(n=>n):t.includes("text")?n.text().then(n=>n):new Promise(t=>{t(n)})}NavigateToRoot(){let n=this.#RootRoute??"/";return super.$BaseNavigateTo(n),this}$ConvertTo_FormData(n,t){return(t??=new FormData,n==null)?t:(this.#Func_ConvertTo_FormData.forEach(i=>{n=i(n,t)}),n instanceof FormData)?n:(this.ForEachObject(n,(n,i)=>{t.append(n,i)}),t)}$ConvertTo_FormFile(n,t){if(t??=new FormData,n==null)return t;if(Array.isArray(n)||n instanceof File||n instanceof u)return this.$AppendFileToFormData("Files",t,n),t;let i=Object.keys(n);for(let r=0;r<i.length;r++){let u=i[r],f=n[u];this.$AppendFileToFormData(u,t,f)}return t}$AppendFileToFormData(n,t,i){if(Array.isArray(i))for(let r=0;r<i.length;r++)this.$AppendFileToFormData(n,t,i[r]);else i instanceof File?t.append(n,i):t.append(n,i.File);return t}}import{watch as c}from"vue";import{createApp as l,reactive as o}from"vue";class s extends e{$VueProxy=null;$VueOption={methods:{},components:{},computed:{}};$VueApp=null;$VueUse=[];$CoreStore="app";$MountedFuncs=[];constructor(){super();this.#Setup()}#Setup(){this.EventAdd_AddApi(n=>{this.AddStore(n.ApiKey)}).EventAdd_UpdateStore(()=>{this.ForceUpdate()}).EventAdd_AddStore(()=>{this.ForceUpdate()}).EventAdd_SetStore(()=>{this.ForceUpdate()}).AddStore(this.$CoreStore,{}).WithMounted(()=>{this.UpdateStore([this.$CoreStore,"IsMounted"],!0)})}get Store(){return this.$VueProxy!=null?this.$VueProxy:super.Store}set Store(n){super.Store=n}WithVueOption(n={}){return this.$VueOption=this.DeepObjectExtend(this.$VueOption,n),this}WithMounted(n=()=>{}){return this.$MountedFuncs.push(n),this}WithComponent(n={}){return this.$VueOption.components=this.DeepObjectExtend(this.$VueOption.components,n),this}WithVueUse(...n){for(let t of n)this.$VueUse.push(t);return this}ForceUpdate(){return this.$VueProxy?.$forceUpdate(),this}Refs(n){return this.$VueProxy?this.$VueProxy[n]:null}}class a extends s{$IsInited=false;$QueryDomName=null;WithQueryDomName(n){return this.$QueryDomName=n,t.WithDomName(this.$QueryDomName),this}AddV_Text(t,i){let r=this.$ConvertCommandOption(t,i);return typeof r.Target!="function"&&n.AddStore(r.Target),this.$AddCommand(t,"v-text",r),this}AddV_Model(n,t,i){let r=this.$ConvertCommandOption(t);return i??={},i.DefaultValue??=null,r.CommandKey=i.ModelValue,this.AddStore(t,i.DefaultValue),this.$AddCommand(n,"v-model",r),this}AddV_Slot(n,t,i){let r=this.$ConvertCommandOption(i);return r.CommandKey=t,this.$AddCommand(n,`v-slot`,r),this}AddV_For(t,i,r){let u=this.$ConvertCommandOption(t,i);r&&(r=this.ToJoin(r),/^\(/.test(r)||(r=`(${r}`),/\)$/.test(r)||(r+=")"),u.TargetHead=`${r} in `);let f=n.ToJoin(u.Target);return f.includes("in")||(u.TargetHead??="(item, index) in "),this.$AddCommand(t,"v-for",u),this}AddV_If(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-if",i),this}AddV_ElseIf(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-else-if",i),this}AddV_Else(n){let t=this.$ConvertCommandOption(n);return t.Target="",this.$AddCommand(n,"v-else",t),this}AddV_Show(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-show",i),this}AddV_Bind(n,t,i){let r=this.$ConvertCommandOption(n,i);return r.CommandKey=t,this.$AddCommand(n,"v-bind",r),this}AddV_On(n,t,i,r){let u=this.$ConvertCommandOption(n,i);return r&&(u.FuncArgs=r),u.FuncAction=!1,u.CommandKey=t,this.$AddCommand(n,`v-on`,u),this}AddV_Watch(t,i,r=false,u={}){let f={handler:i,deep:r,...u};return n.WithMounted(()=>{n.AddStore(t),c(()=>n.GetStore(t),i,f)}),this}AddV_Function(t,i){return this.$IsInited&&!Array.isArray(t)?this.$VueOption.methods[t]=i:n.UpdateStore(t,i),this}AddV_OnChange(n,t,i){return this.AddV_On(n,"change",t,i),this}AddV_Click(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i),this.AddV_On(n,"click",r),this}AddV_FilePicker(n,t){let i=null,r=null,f="none",u=!1;return typeof t=="string"?i=t:(i=t.Store,f=t.ConvertType,u=t.Multiple,r=Array.isArray(t.Accept)?t.Accept.join(" "):t.Accept),this.AddFileStore(i),this.AddV_Click(n,()=>{let n=document.createElement("input");n.type="file";r!=null&&(n.accept=r);u!=null&&(n.multiple=u);n.onchange=()=>{if(n.files!=null&&n.files.length!=0){let t=n.files;for(let n=0;n<t.length;n++){let r=t[n];this.AddFile(i,r,f)}}};n.click()}),this}AddV_Tree(i,r,u){let f=[],e=this.Paths(i);this.$ParseTreeSet(e,r,f);let o={"v-text":(t,i)=>{n.AddV_Text(i.TargetDom,i.TargetValue)},"v-model":(t,i)=>{if(typeof t.StoreValue=="function"){n.$Error(`v-model command value must be a string or string[], path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Model(i.TargetDom,i.TargetPath,{ModelValue:t.CommandKey})},"v-for":(t,i)=>{n.AddV_For(i.TargetDom,i.TargetValue,t.CommandKey)},"v-if":(t,i)=>{n.AddV_If(i.TargetDom,i.TargetValue)},"v-else-if":(t,i)=>{n.AddV_ElseIf(i.TargetDom,i.TargetValue)},"v-else":(t,i)=>{n.AddV_Else(i.TargetDom)},"v-show":(t,i)=>{n.AddV_Show(i.TargetDom,i.TargetValue)},"v-bind":(t,i)=>{n.AddV_Bind(i.TargetDom,t.CommandKey,i.TargetValue)},"v-on":(t,i)=>{n.AddV_On(i.TargetDom,t.CommandKey,i.TargetValue,t.Params)},"v-slot":(t,i)=>{if(Array.isArray(t.StoreValue)||typeof t.StoreValue=="function"){n.$Error(`v-slot command value must be a string, path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Slot(i.TargetDom,t.CommandKey,i.TargetPath)},watch:t=>{if(typeof t.StoreValue!="function"){n.$Error(`watch command value must be a function, path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Watch(t.DomPaths,t.StoreValue)},func:t=>{if(typeof t.StoreValue!="function"){n.$Error(`func command value must be a function, path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Function(["event",...t.DomPaths,t.CommandKey],t.StoreValue)}};for(let i of f){let f=o[i.Command];if(f==null){n.$Error(`${i.Command} command is not allowed, path: ${this.ToJoin(i.DomPaths)}`);continue}if(u?.UseDeepQuery){let n=t.Query(i.DomPaths,{Mode:"DeepMulti"});i.Nodes=n}let s=u?.UseDeepQuery?i.Nodes:i.DomPaths,r=[],e;typeof i.StoreValue!="function"&&(u?.UseTreePath&&(r=[...i.TreePaths]),u?.UseDomStore||i.StoreValue=="."?r.push(i.DomName):i.StoreValue!=null&&i.StoreValue!=""&&(r=this.Paths(r,i.StoreValue)));e=r.length>0?r:i.StoreValue;f(i,{TargetDom:s,TargetPath:r,TargetValue:e})}return this}$ParseTreeSet(t,i,r){let u=Object.keys(i),f=/^(.+?)\(([^)]*)\)$/;for(let e=0;e<u.length;e++){let o=u[e],h=i[o],l=[...t],c=[...t],a=c.pop();if(!o.includes(":")){let n=o.match(f),t=null;n&&n.length>=3&&(o=n[1],t=n[2]);r.push({Command:o,StoreValue:h,TreePaths:c,DomPaths:l,DomName:a,CommandKey:t});continue}let s=o.split(":");if(o.length<2){n.$Error(`command ${o} invalid`);continue}o=s.shift();let v=null;if(s.length>0){let t=s.pop(),n=t.match(f);n&&n.length>=3?(s.push(n[1]),v=n[2]):s.push(t)}let y=n.ToJoin(s,":");if(o==""){this.$ParseTreeSet([...t,y],h,r);continue}r.push({Command:o,CommandKey:y,StoreValue:h,TreePaths:c,DomPaths:l,DomName:a,Params:v})}}AddV_Property(n,t){let i=this.Store;n=this.ToJoin(n);let r=n;if(n.includes(".")){let t=n.split(".");r=t.pop();let u=t.join(".");i=this.GetStore(u,{CreateIfNull:!0})}let u=this.$BaseAddProperty(i,r,t);if(t.Bind){Array.isArray(t.Bind)||(t.Bind=[t.Bind]);for(let i of t.Bind)this.AddV_Property(i,{Target:n});u.Bind=t.Bind}return this}$BaseAddProperty(n,t,i){let f=this,u={get(){return i.get?i.get():this.$get(t)},set(n){if(i.set){i.set(n);return}this.$set(t,n)}};i.get&&(u.get=i.get);i.set!=null&&(u.set=i.set);let r=Object.defineProperty(n,t,u);return r.$properties??={},r.$properties[t]={...i},r.$get??=n=>{let t=r.$properties[n];return t?.Target==null?t[`$${n}`]:f.GetStore(t.Target)},r.$set??=(n,t)=>{let i=r.$properties[n];i?.Target?f.SetStore(i.Target,t):i[`$${n}`]=t},r[t]==null&&i.Value!=null&&(r[t]=i.Value),r}$ConvertCommandOption(n,t){if(t==null)if(this.IsPathType(n))return{Target:n,FuncAction:!1};else{let t=n,i=t.map(n=>n.DomName);return{Target:i,FuncAction:!1}}return typeof t=="string"||typeof t=="function"||Array.isArray(t)?{Target:t,FuncAction:!0}:(t.FuncAction??=!0,t)}$AddCommand(n,r,u){if(n!=null){Array.isArray(n)||(n=[n]);let o=n[0]instanceof i,e;e=o?n:t.Query(n);let f=u.Target;if(typeof f=="function"){let t=n;if(f=this.$GenerateEventFunction(t,f,r),u.FuncArgs){let n=this.ToJoin(u.FuncArgs,",");/^\(/.test(n)||(n=`(${n}`);/\)$/.test(n)||(n+=")");f+=n}else u.FuncAction&&(f+=`()`)}else f=this.ToJoin(f);u.TargetHead&&(f=u.TargetHead+f);u.TargetTail&&(f+=u.TargetTail);u.CommandKey&&(r+=`:${u.CommandKey}`);for(let n=0;n<e.length;n++){let t=e[n],i=t.Dom;this.$SetAttribute(i,r,f)}}}$SetAttribute(n,t,i){if(n==null){let n=`Dom Element is null. ${i}`;console.warn(n);return}n.setAttribute(t,i)}$RandomFuncName(n){return`${n}${this.GenerateIdReplace("")}`.replace(/[-:.]/g,"_")}$GenerateEventFunction(n,t,i){let u=this.$RandomFuncName(`${i}_`);n=this.Paths(n);let r=["event",...n,u];return this.AddV_Function(r,t),this.ToJoin(r)}}class h extends a{$NativeWarn;$IsEnableVueWarn;$MountId=null;Id;constructor(){super();this.Id=this.GenerateId();this.$MountId="app";this.WithVueWarn(!1)}WithMountId(n){return this.$MountId=n,this}WithVueWarn(n){return this.$IsEnableVueWarn=n,this.$NativeWarn=console.warn,console.warn=(...n)=>{n!=null&&n.length!=0&&(n[0].toLowerCase().includes("[vue warn]")&&this.$IsEnableVueWarn==!1||this.$NativeWarn(n))},this}Init(){if(this.$IsInited)return this;this.Store=o(this.Store);let n=this.Store,t=this.$MountedFuncs;this.$VueApp=l({...this.$VueOption,data(){return n},mounted:()=>{for(let n of t)n()}});for(let n of this.$VueUse)this.$VueApp.use(n);return this.$VueProxy=this.$VueApp.mount(`#${this.$MountId}`),this.$IsInited=!0,this}Using(n=()=>{}){return n(),this}}const n=new h;window.Model=n;export{f as DomQueryer,t as Queryer,n as Model,h as VueModel,r as FuncBase,e as ApiStore,s as VueStore};
|
|
2
2
|
//# sourceMappingURL=VueModel.esm.min.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version":3,
|
|
3
3
|
"file":"VueModel.esm.min.js",
|
|
4
|
-
"mappings":"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",
|
|
4
|
+
"mappings":"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",
|
|
5
5
|
"sources":["VueModel.esm.js"],
|
|
6
6
|
"names":["FuncBase","$NavigateToFunc","$DefaultDateJoinChar","constructor","WithDateTextJoinChar","WithNavigateTo","NavigateToFunc","JoinChar","GenerateId","replace","char","RandomValue","crypto","getRandomValues","Uint8Array","Id","toString","GenerateIdReplace","FillString","replaceAll","GenerateUrl","Url","UrlParam","Paths","length","$Throw","map","Item","CombineUrl","ToJoin","ConvertTo_UrlQuery","$BaseNavigateTo","window","location","href","NavigateToRoot","NavigateTo","TargetUrl","$BaseNavigateBlank","Link","document","createElement","target","rel","click","NavigateBlank","ForEachObject","Param","Func","Key","Object","getOwnPropertyNames","match","Value","call","DeepObjectExtend","Target","Source","MaxDepth","AllKeys","keys","i","NewObject","ToDateInfo","QueryDate","Date","$CreateDateInfo","ToDateText","Option","DateJoinChar","Format","Result","Year","padStart","Month","Day","ToDateTimeText","Hour","Minute","Second","DateOrText","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","AllParam","push","join","ClearUrl","ApiUrl","Separator","ConvertArray","Array","isArray","IsPathType","CheckPathType","IsTrue","Message","Error","$Error","Data","console","error","QueryNode","Dom","DomName","Parent","Children","ElementDeep","NodeDeep","super","Query","$RCS_QueryChildrens","Selector","querySelector","SelectorAll","querySelectorAll","TargetNode","Results","Names","FirstName","shift","FindChildren","Mode","ChildrenResult","DomQueryer","$Root","$RootNode","$Nodes","$QueryDomName","IsInited","WithRoot","Filter","WithDomName","QueryDomName","Init","IsReInited","body","$RCS_Visit","sort","A","B","Queryer","Using","UsingFunc","QueryNodes","DomNode","NextNode","$AddNode","children","HTMLTemplateElement","content","HTMLElement","matches","getAttribute","NewNode","FileItem","$Store","FileId","File","ConvertType","reactive","$ConvertFile","Base64","Buffer","GetConvertType","TypeItem","$ConvertBase64","$ConvertBuffer","IsForce","Reader","FileReader","readAsDataURL","onload","result","readAsArrayBuffer","ApiStore","#ApiDomain","#RootRoute","#AccessToken","#RefreshToken","#HeaderFuncs","#OnEventFunc","#OnEventName","#OnSuccess","#OnError","#OnComplete","#ExportSuccessStore","#Store","#Func_ConvertTo_FormData","$ApiStore","SetStore","ApiDomain","OnEventName","#EventName","Store","FileStore","WithAccessToken","AccessToken","WithRefreshToken","RefreshToken","WithApiDomain","WithRootRoute","Route","WithHeader","WithOnSuccess","SuccessFunc","WithOnError","ErrorFunc","WithOnComplete","CompleteFunc","WithExportSuccessStore","ExportSuccessStoreFunc","WithConvertTo_FormParam","ConvertToFunc","ClearConvertTo_FormParam","ConvertTo_ApiUrl","ApiDomainUrl","includes","AddApi","ApiKey","ApiOption","SetApi","$EventTrigger","ApiCall","$BaseApiCall","ApiCall_Form","IsFormRequest","Api","ParamQuery","ParamBody","Body","ParamFile","IsUpdateStore","FetchRequest","$GenerateFetchRequest","IsCalling","OnCalling","fetch","then","ApiResponse","ok","ConvertResult","$ProcessApiReturn","StoreKey","UpdateStore","IsSuccess","IsError","OnSuccess","catch","ex","message","OnError","IsComplete","OnComplete","Header","Headers","set","Method","SendForm","$ConvertTo_FormData","FormData","$ConvertTo_FormFile","method","JSON","stringify","UseFormJsonBody","JsonBodyKey","FormDataBody","ConvertParam","EventAdd_AddApi","EventFunc","$EventAdd","EventAdd_UpdateStore","EventAdd_AddStore","AddStore","EventAdd_SetStore","EventName","OnFunc","EventArg","EventFuncs","StorePath","StoreData","$RCS_SetStore","GetStore","Clone","CreateIfNull","DefaultValue","FindStore","$RCS_GetStore","CloneResult","ClearStore","TargetStore","AllProperty","splice","StorePaths","split","FirstKey","NextStore","NextKey","IsAwaysSet","IsDeepSet","$DeepSetObject","SetData","AddFileStore","FileStoreKey","Files","WhereFunc","GetFiles","filter","AddFile","forEach","NewFile","RemoveFile","DeleteFileId","DeleteIndex","findIndex","ClearFile","GetContentType","headers","get","json","GetJson","text","GetText","Promise","reslove","RootUrl","ConvertFormData","Form","append","FileParam","$AppendFileToFormData","Keys","FileKey","FileValue","FileData","watch","createApp","VueStore","$VueProxy","$VueOption","$VueApp","$VueUse","$CoreStore","$MountedFuncs","#Setup","Arg","ForceUpdate","WithMounted","WithVueOption","VueOption","MountedFunc","WithComponent","Component","components","WithVueUse","UsePlugin","$forceUpdate","Refs","RefName","VueCommand","$IsInited","WithQueryDomName","AddV_Text","SetOption","$ConvertCommandOption","Model","$AddCommand","AddV_Model","CommandKey","ModelValue","AddV_Slot","SlotKey","AddV_For","ForKey","test","TargetHead","AddV_If","AddV_ElseIf","AddV_Else","AddV_Show","AddV_Bind","BindKey","AddV_On","Args","FuncArgs","FuncAction","AddV_Watch","WatchPath","Deep","SetWatch","AddV_Function","FuncName","methods","AddV_OnChange","ChangeFunc","AddV_Click","AddV_FilePicker","FileStorePath","Accept","Multiple","TempInput","type","accept","multiple","onchange","files","PickFile","AddV_Tree","TreeRoot","TreeSet","AllSetInfo","RootPaths","$ParseTreeSet","CommandMap","Info","TargetDom","TargetValue","StoreValue","DomPaths","TargetPath","Params","ActionSet","Command","UseDeepQuery","Nodes","UseTreePath","TreePaths","UseDomStore","ParamRegex","SetPair","pop","HasParams","Commands","LastCommand","NextDomName","AddV_Property","PropertyPath","PropertyKey","PropertyPaths","FindPath","SetProperty","$BaseAddProperty","Bind","BindPath","PropertyStore","ThisModel","PropertyContent","$get","$set","defineProperty","$properties","PropertyOption","NodeNames","IsFromQueryNode","FuncDomName","$GenerateEventFunction","TargetTail","NodeItem","$SetAttribute","AttrName","AttrValue","warn","setAttribute","$RandomFuncName","BaseFuncName","FullFuncPath","VueModel","$NativeWarn","$IsEnableVueWarn","$MountId","WithVueWarn","WithMountId","MountId","Enable","toLowerCase","data","use","mount","UseFunc"]
|
|
7
7
|
}
|
package/dist/VueModel.umd.js
CHANGED
package/dist/VueModel.umd.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(n){if(typeof module=="object"&&typeof module.exports=="object"){var t=n(require,exports);t!==undefined&&(module.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","vue","vue"],n)})(function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.VueStore=t.ApiStore=t.FuncBase=t.VueModel=t.Model=t.Queryer=t.DomQueryer=void 0;class f{$NavigateToFunc;$DefaultDateJoinChar;constructor(){this.$NavigateToFunc=null;this.WithDateTextJoinChar("-")}WithNavigateTo(n){return this.$NavigateToFunc=n,this}WithDateTextJoinChar(n){return this.$DefaultDateJoinChar=n,this}GenerateId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,n=>{let t=crypto.getRandomValues(new Uint8Array(1))[0]&15,i=n==="x"?t:t&3|8;return i.toString(16)})}GenerateIdReplace(n){return this.GenerateId().replaceAll("-",n)}GenerateUrl(n,t=null){n=this.Paths(n);(n==null||n.length==0||n[0].length==0)&&this.$Throw("Url can not be null or empty");n=n.map(n=>n.replace(/\/+$/g,"").replace(/^\/+/g,"/"));let i=this.ToJoin(n,"/");return t!=null&&(t=this.ConvertTo_UrlQuery(t),i+=`?${t}`),i}$BaseNavigateTo(n){this.$NavigateToFunc?this.$NavigateToFunc(n):window.location.href=n}NavigateToRoot(){return this.$BaseNavigateTo("/"),this}NavigateTo(n,t=null){let i=this.GenerateUrl(n,t);return this.$BaseNavigateTo(i),this}$BaseNavigateBlank(n){let t=document.createElement("a");t.href=n;t.target="_blank";t.rel="noopener noreferrer";t.click()}NavigateBlank(n,t=null){let i=this.GenerateUrl(n,t);return this.$BaseNavigateBlank(i),this}ForEachObject(n,t){for(let i of Object.getOwnPropertyNames(n))if(!i.match(/^$/g)){let r=n[i];t!=null&&t.call(this,i,r)}}DeepObjectExtend(n,t,i=10){if(i==0)return{...n,...t};let r=Object.keys(t);for(let u=0;u<r.length;u++){let f=r[u];if(f in n)if(typeof t[f]!="object")n[f]=t[f];else{let r={...this.DeepObjectExtend(n[f],t[f],i-1)};n[f]=r}else n[f]=t[f]}return n}ToDateInfo(n){n??=new Date;return this.$CreateDateInfo(n)}ToDateText(n,t){n=this.$CreateDateInfo(n);t??={};typeof t=="string"&&(t={Format:t});t.DateJoinChar??=this.$DefaultDateJoinChar;t.Format??=`yyyy${t.DateJoinChar}MM${t.DateJoinChar}dd`;let i=t.Format;return i=i.replaceAll("yyyy",n.Year.toString().padStart(4,"0")),i=i.replaceAll("MM",n.Month.toString().padStart(2,"0")),i=i.replaceAll("dd",n.Day.toString().padStart(2,"0")),t.Format=i,i}ToDateTimeText(n,t){t??={};typeof t=="string"&&(t={Format:t});t.DateJoinChar??=this.$DefaultDateJoinChar;t.Format??=`yyyy${t.DateJoinChar}MM${t.DateJoinChar}dd HH:mm:ss`;t={...t};n=this.$CreateDateInfo(n);this.ToDateText(n,t);let i=t.Format;return i=i.replaceAll("HH",n.Hour.toString().padStart(2,"0")),i=i.replaceAll("mm",n.Minute.toString().padStart(2,"0")),i.replaceAll("ss",n.Second.toString().padStart(2,"0"))}$CreateDateInfo(n){if(n??=new Date,typeof n=="string"&&(n=new Date(n)),n instanceof Date==!1)return n;return{Date:n,Year:n.getFullYear(),Month:n.getMonth()+1,Day:n.getDate(),Hour:n.getHours(),Minute:n.getMinutes(),Second:n.getSeconds()}}ConvertTo_UrlQuery(n){if(typeof n=="string")return n;let t=[];this.ForEachObject(n,(n,i)=>{t.push(`${n}=${i}`)});return t.join("&")}ClearUrl(n){return n.replace(/^\/+|\/+$/g,"")}ToJoin(n,t="."){let i=this.Paths(n);return i.join(t)}Paths(...n){if(!Array.isArray(n))return[n];let t=[];for(let i of n)if(i!=null){if(!Array.isArray(i)){t.push(i);continue}i.length!=0&&t.push(...this.Paths(...i))}return t}IsPathType(n){if(Array.isArray(n)){for(let t of n){let n=this.IsPathType(t);if(!n)return!1}return!0}return typeof n=="string"?!0:!1}$Throw(n){throw new Error(n);}$Error(n){console.error(n)}}t.FuncBase=f;class u extends f{Dom;DomName=null;Parent=null;Children=[];ElementDeep=0;NodeDeep=0;constructor(n){super();this.Dom=n}Query(n,t){return this.$RCS_QueryChildrens(this,n,t)}Selector(n){return this.Dom.querySelector(n)}SelectorAll(n){return this.Dom.querySelectorAll(n)}$RCS_QueryChildrens(n,t,i){if(t==null)return null;t=this.Paths(t);t.length==1&&(t=t[0]);let r=[];for(let u of n.Children){if(Array.isArray(t)){let n=[...t],f=n.shift();if(u.DomName==f){n.length==1&&(n=n[0]);let t=this.$RCS_QueryChildrens(u,n,i);if(t!=null){r.push(...t);continue}}}else if(u.DomName==t&&(r.push(u),i.Mode=="Multi"))continue;let n=this.$RCS_QueryChildrens(u,t,i);n!=null&&r.push(...n)}return r}}class s{$Root=null;$RootNode=null;$Nodes=[];$QueryDomName=null;IsInited=false;WithRoot(n){return this.$Root=document.querySelector(n),this}WithDomName(n){return this.$QueryDomName=n,this}Init(n=false){return this.IsInited&&!n?this:(this.$Root??=document.body,this.$RootNode=new u(this.$Root),this.$RCS_Visit(this.$Root,this.$RootNode,0),this.$Nodes=this.$Nodes.sort((n,t)=>n.NodeDeep-t.NodeDeep),this.IsInited=!0,this)}Query(n,t){return r.IsInited||r.Init(),t==null?t={Mode:"Multi"}:t instanceof u&&(t={Mode:"Multi",TargetNode:t}),t.TargetNode==null&&(t.TargetNode=this.$RootNode),t.TargetNode.Query(n,t)}Using(n,t,i){let r=this.Query(n,{Mode:"Multi",TargetNode:i});return r!=null&&r.length>0&&t({QueryNodes:r}),this}$RCS_Visit(n,t,i){let u=this.$AddNode(n,t,i);u??=t;let r=n.children;if(n instanceof HTMLTemplateElement&&(r=n.content.children),r!=null&&r.length!=0)for(let n=0;n<r.length;n++){let t=r[n];t instanceof HTMLElement&&this.$RCS_Visit(t,u,i+1)}}$AddNode(n,t,i){if(this.$QueryDomName!=null&&!n.matches(`[${this.$QueryDomName}]`))return null;let f=n.getAttribute(this.$QueryDomName),r=new u(n);return r.DomName=f,r.ElementDeep=i,this.$Nodes.push(r),t!=null&&(r.Parent=t,r.NodeDeep=t.NodeDeep+1,t.Children.push(r)),r}}t.DomQueryer=s;var r=new s;t.Queryer=r;class e{$Store;constructor(n,t,i="none"){this.$Store=o.reactive({FileId:n,File:t,ConvertType:i,Base64:null,Buffer:null});this.$ConvertFile()}get FileId(){return this.$Store.FileId}set FileId(n){this.$Store.FileId=n}get File(){return this.$Store.File}set File(n){this.$Store.File=n}get ConvertType(){return this.$Store.ConvertType}set ConvertType(n){this.$Store.ConvertType=n}get Base64(){return this.$Store.Base64}set Base64(n){this.$Store.Base64=n}get Buffer(){return this.$Store.Buffer}set Buffer(n){this.$Store.Buffer=n}$ConvertFile(){if(this.ConvertType!=null){let n=[];n=Array.isArray(this.ConvertType)?this.ConvertType:[this.ConvertType];for(let t=0;t<n.length;t++){let i=n[t];switch(i){case"base64":this.$ConvertBase64();break;case"buffer":this.$ConvertBuffer()}}}}$ConvertBase64(n=false){if(this.File==null||this.Base64!=null&&n==!1)return this;let t=new FileReader;return t.readAsDataURL(this.File),t.onload=()=>this.Base64=t.result,this}$ConvertBuffer(){let n=new FileReader;n.readAsArrayBuffer(this.File);n.onload=()=>this.Buffer=n.result}}class h extends f{#ApiDomain=null;#RootRoute=null;#AccessToken=null;#RefreshToken=null;#HeaderFuncs=[];#OnEventFunc={};#OnEventName={ApiStore:{AddApi:"AddApi",UpdateStore:"UpdateStore",AddStore:"AddStore",SetStore:"SetStore"}};#OnSuccess;#OnError;#OnComplete;#ExportSuccessStore;#Store={FileStore:{}};#Func_ConvertTo_FormData=[];$ApiStore={};constructor(){super();this.SetStore("api",this.$ApiStore)}get ApiDomain(){return this.#ApiDomain==null?null:this.ClearUrl(this.#ApiDomain)}set ApiDomain(n){this.#ApiDomain=this.ClearUrl(n)}get OnEventName(){return this.#OnEventName}get #EventName(){return this.OnEventName.ApiStore}get Store(){return this.#Store}set Store(n){this.#Store=n}get FileStore(){return this.Store.FileStore}WithAccessToken(n){return this.#AccessToken=n,this}WithRefreshToken(n){return this.#RefreshToken=n,this}WithApiDomain(n){return this.ApiDomain=n,this}WithRootRoute(n){return this.#RootRoute=n,this}WithHeader(n){return this.#HeaderFuncs.push(n),this}WithOnSuccess(n){return this.#OnSuccess=n,this}WithOnError(n){return this.#OnError=n,this}WithOnComplete(n){return this.#OnComplete=n,this}WithExportSuccessStore(n){return this.#ExportSuccessStore=n,this}WithConvertTo_FormParam(n){return this.#Func_ConvertTo_FormData.push(n),this}ClearConvertTo_FormParam(){return this.#Func_ConvertTo_FormData=[],this}ConvertTo_ApiUrl(n,t=null){let i=n;return this.ApiDomain==null||i.includes("http")||(i=`${this.ApiDomain}/${this.ClearUrl(i)}`),t!=null&&(i=`${i}?${this.ConvertTo_UrlQuery(t)}`),i}AddApi(n){for(let t in n){let r=n[t],i={ApiKey:t,...r};this.$ApiStore[t]=i;this.$EventTrigger(this.#EventName.AddApi,i)}return this}ApiCall(n,t=null){return this.$BaseApiCall(n,t,!1),this}ApiCall_Form(n,t=null){return this.$BaseApiCall(n,t,!0),this}$BaseApiCall(n,t,i){let r=this.$ApiStore[n];r==null&&this.$Throw(`Api setting not found of "${n}"`);let u=t?.Query??r.Query,f=t?.Body??r.Body,e=t?.File??r.File;typeof u=="function"&&(u=u());typeof f=="function"&&(f=f());typeof e=="function"&&(e=e());let s=t?.IsUpdateStore??r.IsUpdateStore??!0,h=this.ConvertTo_ApiUrl(r.Url,u),o=this.$GenerateFetchRequest(r,f,e,i);r.IsCalling=!0;r.OnCalling?.call(this,o);t?.OnCalling?.call(this,o);fetch(h,o).then(async n=>{if(!n.ok)throw n;let i=await this.$ProcessApiReturn(n);if(s){this.#ExportSuccessStore!=null&&(i=this.#ExportSuccessStore?.call(this,i,n));let t=r.ApiKey;this.UpdateStore(t,i)}return r.IsSuccess=!0,r.IsError=!1,r.OnSuccess?.call(this,i,n),t?.OnSuccess?.call(this,i,n),this.#OnSuccess?.call(this,i,n),{ConvertResult:i,ApiResponse:n}}).catch(n=>{r.IsError=!0,r.IsSuccess=!1,this.$Error(n.message),r.OnError?.call(this,n),t?.OnError?.call(this,n),this.#OnError?.call(this,n)}).then(n=>{r.IsCalling=!1,r.IsComplete=!0,n instanceof Object?(r.OnComplete?.call(this,n.ConvertResult,n.ApiResponse),t?.OnComplete?.call(this,n.ConvertResult,n.ApiResponse),this.#OnComplete?.call(this,n.ConvertResult,n.ApiResponse)):(r.OnComplete?.call(this),t?.OnComplete?.call(this),this.#OnComplete?.call(this,null,null))})}$GenerateFetchRequest(n,t,i,r){let u=new Headers;if(u.set("Authorization",`Bearer ${this.#AccessToken}`),this.#HeaderFuncs.length>0)for(let n of this.#HeaderFuncs)n(u);let f={method:n.Method,headers:u};if(r){let n=this.$ConvertTo_FormData(t,new FormData);n=this.$ConvertTo_FormFile(i,n);f.body=n;f.method="POST"}else u.set("content-type","application/json"),n.Method!="GET"&&(f.body=JSON.stringify(t??{}));return f}UseFormJsonBody(n="Body"){return this.WithConvertTo_FormParam(t=>{let i={};return i[n]=JSON.stringify(t),i}),this}EventAdd_AddApi(n){return this.$EventAdd(this.#EventName.AddApi,n),this}EventAdd_UpdateStore(n){return this.$EventAdd(this.#EventName.UpdateStore,n),this}EventAdd_AddStore(n){return this.$EventAdd(this.#EventName.AddStore,n),this}EventAdd_SetStore(n){return this.$EventAdd(this.#EventName.SetStore,n),this}$EventAdd(n,t){n in this.#OnEventFunc==!1&&(this.#OnEventFunc[n]=[]);this.#OnEventFunc[n].push(t)}$EventTrigger(n,t){let i=this.#OnEventFunc[n];if(i!=null)for(let n of i)n(t)}UpdateStore(n,t){return n=this.ToJoin(n),this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.UpdateStore,{Path:n,Data:t}),this}AddStore(n,t=null){return(n=this.ToJoin(n),this.GetStore(n)!=null)?this:(this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.AddStore,{Path:n,Data:t}),this)}SetStore(n,t){return n=this.ToJoin(n),this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!1}),this.$EventTrigger(this.#EventName.SetStore,{Path:n,Data:t}),this}GetStore(n,t){typeof t=="boolean"&&(t={Clone:t});t??={};t.Clone??=!1;t.CreateIfNull??=!1;t.DefaultValue==null&&(t.DefaultValue={});n=this.ToJoin(n);let i=this.$RCS_GetStore(n,this.Store,{CreateIfNull:t.CreateIfNull,DefaultValue:t.DefaultValue});if(t.Clone){let n={},t=Object.getOwnPropertyNames(i);for(let r of t)r.match(/^\$/g)||(n[r]=i[r]);return n}return i}ClearStore(n){let t=this.GetStore(n);if(t==null)return this;let i=Object.getOwnPropertyNames(t);for(let n of i)if(!n.match(/^\$/g)){let i=t[n];if(typeof i!="function"){if(Array.isArray(i)){i.splice(0,i.length);continue}t[n]=null}}return this}$RCS_GetStore(n,t,i){if(t==null)return null;let r=n.split("."),u=r.shift();t[u]==null&&i.CreateIfNull&&(t[u]=Array.isArray(i.DefaultValue)?[...i.DefaultValue]:typeof i.DefaultValue=="object"?{...i.DefaultValue}:i.DefaultValue);let f=t[u];if(r.length==0)return f;let e=r.join(".");return this.$RCS_GetStore(e,f,i)}$RCS_SetStore(n,t,i,r={IsDeepSet:true}){if(n.includes(".")){let f=n.split("."),u=f.shift();i[u]==null&&(i[u]={});let e=i[u],o=f.join(".");return this.$RCS_SetStore(o,t,e,r)}let u=!r.IsDeepSet||i[n]==null||t==null||typeof t!="object";return u?(i[n]=t,t):(this.$DeepSetObject(n,t,i),t)}$DeepSetObject(n,t,i){if(t==null){i[n]=t;return}if(!Array.isArray(t)){this.ForEachObject(t,(t,r)=>{if(Array.isArray(r)||typeof r=="object"){this.$DeepSetObject(t,r,i[n]);return}i[n]==null&&(i[n]={});i[n][t]=r});return}Array.isArray(i[n])||(i[n]=[]);i[n].length>0&&i[n].splice(0,i[n].length);i[n].push(...t)}AddFileStore(n){return this.FileStore[n]==null&&(this.FileStore[n]=[]),this}Files(n,t=null){let i=this.FileStore[n];if(i==null)return[];t!=null&&(i=i.filter(n=>t(n)));return i.map(n=>n.File)}AddFile(n,t,i="none"){this.AddFileStore(n);let r=this.FileStore[n];if(Array.isArray(t))t.forEach(t=>this.AddFile(n,t));else if(t instanceof e)r.push(t);else{let n=new e(this.GenerateId(),t,i);r.push(n)}return this}RemoveFile(n,t){let i=this.FileStore[n];if(i==null)return this;if(Array.isArray(t))t.forEach(t=>this.RemoveFile(n,t));else{let n=i.findIndex(n=>n.FileId==t);n>=0&&i.splice(n,1)}return this}ClearFile(n){let t=this.FileStore[n];return t==null?this:(t.splice(0,t.length),this)}$ProcessApiReturn(n){let t=n.headers.get("content-type");return t.includes("application/json")?n.json().then(n=>n):t.includes("text")?n.text().then(n=>n):new Promise(t=>{t(n)})}NavigateToRoot(){let n=this.#RootRoute??"/";return super.$BaseNavigateTo(n),this}$ConvertTo_FormData(n,t){return(t??=new FormData,n==null)?t:(this.#Func_ConvertTo_FormData.forEach(i=>{n=i(n,t)}),n instanceof FormData)?n:(this.ForEachObject(n,(n,i)=>{t.append(n,i)}),t)}$ConvertTo_FormFile(n,t){if(t??=new FormData,n==null)return t;if(Array.isArray(n)||n instanceof File||n instanceof e)return this.$AppendFileToFormData("Files",t,n),t;let i=Object.keys(n);for(let r=0;r<i.length;r++){let u=i[r],f=n[u];this.$AppendFileToFormData(u,t,f)}return t}$AppendFileToFormData(n,t,i){if(Array.isArray(i))for(let r=0;r<i.length;r++)this.$AppendFileToFormData(n,t,i[r]);else i instanceof File?t.append(n,i):t.append(n,i.File);return t}}t.ApiStore=h;const a=n("vue"),o=n("vue");class c extends h{$VueProxy=null;$VueOption={methods:{},components:{},computed:{}};$VueApp=null;$VueUse=[];$CoreStore="app";$MountedFuncs=[];constructor(){super();this.#Setup()}#Setup(){this.EventAdd_AddApi(n=>{this.AddStore(n.ApiKey)}).EventAdd_UpdateStore(()=>{this.ForceUpdate()}).EventAdd_AddStore(()=>{this.ForceUpdate()}).EventAdd_SetStore(()=>{this.ForceUpdate()}).AddStore(this.$CoreStore,{}).WithMounted(()=>{this.UpdateStore([this.$CoreStore,"IsMounted"],!0)})}get Store(){return this.$VueProxy!=null?this.$VueProxy:super.Store}set Store(n){super.Store=n}WithVueOption(n={}){return this.$VueOption=this.DeepObjectExtend(this.$VueOption,n),this}WithMounted(n=()=>{}){return this.$MountedFuncs.push(n),this}WithComponent(n={}){return this.$VueOption.components=this.DeepObjectExtend(this.$VueOption.components,n),this}WithVueUse(...n){for(let t of n)this.$VueUse.push(t);return this}ForceUpdate(){return this.$VueProxy?.$forceUpdate(),this}Refs(n){return this.$VueProxy?this.$VueProxy[n]:null}}t.VueStore=c;class v extends c{$IsInited=false;$QueryDomName=null;WithQueryDomName(n){return this.$QueryDomName=n,r.WithDomName(this.$QueryDomName),this}AddV_Text(n,t){let r=this.$ConvertCommandOption(n,t);return typeof r.Target!="function"&&i.AddStore(r.Target),this.$AddCommand(n,"v-text",r),this}AddV_Model(n,t,i){let r=this.$ConvertCommandOption(t);return i??={},i.DefaultValue??=null,r.CommandKey=i.ModelValue,this.AddStore(t,i.DefaultValue),this.$AddCommand(n,"v-model",r),this}AddV_Slot(n,t,i){let r=this.$ConvertCommandOption(i);return r.CommandKey=t,this.$AddCommand(n,`v-slot`,r),this}AddV_For(n,t,r){let u=this.$ConvertCommandOption(n,t);r&&(r=this.ToJoin(r),/^\(/.test(r)||(r=`(${r}`),/\)$/.test(r)||(r+=")"),u.TargetHead=`${r} in `);let f=i.ToJoin(u.Target);return f.includes("in")||(u.TargetHead??="(item, index) in "),this.$AddCommand(n,"v-for",u),this}AddV_If(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-if",i),this}AddV_ElseIf(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-else-if",i),this}AddV_Else(n){let t=this.$ConvertCommandOption(n);return t.Target="",this.$AddCommand(n,"v-else",t),this}AddV_Show(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-show",i),this}AddV_Bind(n,t,i){let r=this.$ConvertCommandOption(n,i);return r.CommandKey=t,this.$AddCommand(n,"v-bind",r),this}AddV_On(n,t,i,r){let u=this.$ConvertCommandOption(n,i);return r&&(u.FuncArgs=r),u.FuncAction=!1,u.CommandKey=t,this.$AddCommand(n,`v-on`,u),this}AddV_Watch(n,t,r=false,u={}){let f={handler:t,deep:r,...u};return i.WithMounted(()=>{i.AddStore(n),a.watch(()=>i.GetStore(n),t,f)}),this}AddV_Function(n,t){return this.$IsInited&&!Array.isArray(n)?this.$VueOption.methods[n]=t:i.UpdateStore(n,t),this}AddV_OnChange(n,t,i){return this.AddV_On(n,"change",t,i),this}AddV_Click(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i),this.AddV_On(n,"click",r),this}AddV_FilePicker(n,t){let i=null,r=null,f="none",u=!1;return typeof t=="string"?i=t:(i=t.Store,f=t.ConvertType,u=t.Multiple,r=Array.isArray(t.Accept)?t.Accept.join(" "):t.Accept),this.AddFileStore(i),this.AddV_Click(n,()=>{let n=document.createElement("input");n.type="file";r!=null&&(n.accept=r);u!=null&&(n.multiple=u);n.onchange=()=>{if(n.files!=null&&n.files.length!=0){let t=n.files;for(let n=0;n<t.length;n++){let r=t[n];this.AddFile(i,r,f)}}};n.click()}),this}AddV_Tree(n,t,u){let f=[],e=this.Paths(n);this.$ParseTreeSet(e,t,f);let o={"v-text":(n,t)=>{i.AddV_Text(t.TargetDom,t.TargetValue)},"v-model":(n,t)=>{if(typeof n.StoreValue=="function"){i.$Error(`v-model command value must be a string or string[], path: ${this.ToJoin(n.DomPaths)}`);return}i.AddV_Model(t.TargetDom,t.TargetPath,{ModelValue:n.CommandKey})},"v-for":(n,t)=>{i.AddV_For(t.TargetDom,t.TargetValue,n.CommandKey)},"v-if":(n,t)=>{i.AddV_If(t.TargetDom,t.TargetValue)},"v-else-if":(n,t)=>{i.AddV_ElseIf(t.TargetDom,t.TargetValue)},"v-else":(n,t)=>{i.AddV_Else(t.TargetDom)},"v-show":(n,t)=>{i.AddV_Show(t.TargetDom,t.TargetValue)},"v-bind":(n,t)=>{i.AddV_Bind(t.TargetDom,n.CommandKey,t.TargetValue)},"v-on":(n,t)=>{i.AddV_On(t.TargetDom,n.CommandKey,t.TargetValue,n.Params)},"v-slot":(n,t)=>{if(Array.isArray(n.StoreValue)||typeof n.StoreValue=="function"){i.$Error(`v-slot command value must be a string, path: ${this.ToJoin(n.DomPaths)}`);return}i.AddV_Slot(t.TargetDom,n.CommandKey,t.TargetPath)},watch:n=>{if(typeof n.StoreValue!="function"){i.$Error(`watch command value must be a function, path: ${this.ToJoin(n.DomPaths)}`);return}i.AddV_Watch(n.DomPaths,n.StoreValue)},func:n=>{if(typeof n.StoreValue!="function"){i.$Error(`func command value must be a function, path: ${this.ToJoin(n.DomPaths)}`);return}i.AddV_Function(["event",...n.DomPaths,n.CommandKey],n.StoreValue)}};for(let n of f){let f=o[n.Command];if(f==null){i.$Error(`${n.Command} command is not allowed, path: ${this.ToJoin(n.DomPaths)}`);continue}if(u?.UseDeepQuery){let t=r.Query(n.DomPaths,{Mode:"DeepMulti"});n.Nodes=t}let s=u?.UseDeepQuery?n.Nodes:n.DomPaths,t=[],e;typeof n.StoreValue!="function"&&(u?.UseTreePath&&(t=[...n.TreePaths]),u?.UseDomStore||n.StoreValue=="."?t.push(n.DomName):n.StoreValue!=null&&n.StoreValue!=""&&(t=this.Paths(t,n.StoreValue)));e=t.length>0?t:n.StoreValue;f(n,{TargetDom:s,TargetPath:t,TargetValue:e})}return this}$ParseTreeSet(n,t,r){let u=Object.keys(t),f=/^(.+?)\(([^)]*)\)$/;for(let e=0;e<u.length;e++){let o=u[e],h=t[o],l=[...n],c=[...n],a=c.pop();if(!o.includes(":")){let n=o.match(f),t=null;n&&n.length>=3&&(o=n[1],t=n[2]);r.push({Command:o,StoreValue:h,TreePaths:c,DomPaths:l,DomName:a,CommandKey:t});continue}let s=o.split(":");if(o.length<2){i.$Error(`command ${o} invalid`);continue}o=s.shift();let v=null;if(s.length>0){let t=s.pop(),n=t.match(f);n&&n.length>=3?(s.push(n[1]),v=n[2]):s.push(t)}let y=i.ToJoin(s,":");if(o==""){this.$ParseTreeSet([...n,y],h,r);continue}r.push({Command:o,CommandKey:y,StoreValue:h,TreePaths:c,DomPaths:l,DomName:a,Params:v})}}AddV_Property(n,t){let i=this.Store;n=this.ToJoin(n);let r=n;if(n.includes(".")){let t=n.split(".");r=t.pop();let u=t.join(".");i=this.GetStore(u,{CreateIfNull:!0})}let u=this.$BaseAddProperty(i,r,t);if(t.Bind){Array.isArray(t.Bind)||(t.Bind=[t.Bind]);for(let i of t.Bind)this.AddV_Property(i,{Target:n});u.Bind=t.Bind}return this}$BaseAddProperty(n,t,i){let f=this,u={get(){return i.get?i.get():this.$get(t)},set(n){if(i.set){i.set(n);return}this.$set(t,n)}};i.get&&(u.get=i.get);i.set!=null&&(u.set=i.set);let r=Object.defineProperty(n,t,u);return r.$properties??={},r.$properties[t]={...i},r.$get??=n=>{let t=r.$properties[n];return t?.Target==null?t[`$${n}`]:f.GetStore(t.Target)},r.$set??=(n,t)=>{let i=r.$properties[n];i?.Target?f.SetStore(i.Target,t):i[`$${n}`]=t},i.Value!=null&&(r[t]=i.Value),r}$ConvertCommandOption(n,t){if(t==null)if(this.IsPathType(n))return{Target:n,FuncAction:!1};else{let t=n,i=t.map(n=>n.DomName);return{Target:i,FuncAction:!1}}return typeof t=="string"||typeof t=="function"||Array.isArray(t)?{Target:t,FuncAction:!0}:(t.FuncAction??=!0,t)}$AddCommand(n,t,i){if(n!=null){Array.isArray(n)||(n=[n]);let o=n[0]instanceof u,e;e=o?n:r.Query(n);let f=i.Target;if(typeof f=="function"){let r=n;if(f=this.$GenerateEventFunction(r,f,t),i.FuncArgs){let n=this.ToJoin(i.FuncArgs,",");/^\(/.test(n)||(n=`(${n}`);/\)$/.test(n)||(n+=")");f+=n}else i.FuncAction&&(f+=`()`)}else f=this.ToJoin(f);i.TargetHead&&(f=i.TargetHead+f);i.TargetTail&&(f+=i.TargetTail);i.CommandKey&&(t+=`:${i.CommandKey}`);for(let n=0;n<e.length;n++){let i=e[n],r=i.Dom;this.$SetAttribute(r,t,f)}}}$SetAttribute(n,t,i){if(n==null){let n=`Dom Element is null. ${i}`;console.warn(n);return}n.setAttribute(t,i)}$RandomFuncName(n){return`${n}${this.GenerateIdReplace("")}`.replace(/[-:.]/g,"_")}$GenerateEventFunction(n,t,i){let u=this.$RandomFuncName(`${i}_`);n=this.Paths(n);let r=["event",...n,u];return this.AddV_Function(r,t),this.ToJoin(r)}}class l extends v{$NativeWarn;$IsEnableVueWarn;$MountId=null;Id;constructor(){super();this.Id=this.GenerateId();this.$MountId="app";this.WithVueWarn(!1)}WithMountId(n){return this.$MountId=n,this}WithVueWarn(n){return this.$IsEnableVueWarn=n,this.$NativeWarn=console.warn,console.warn=(...n)=>{n!=null&&n.length!=0&&(n[0].toLowerCase().includes("[vue warn]")&&this.$IsEnableVueWarn==!1||this.$NativeWarn(n))},this}Init(){if(this.$IsInited)return this;this.Store=o.reactive(this.Store);let n=this.Store,t=this.$MountedFuncs;this.$VueApp=o.createApp({...this.$VueOption,data(){return n},mounted:()=>{for(let n of t)n()}});for(let n of this.$VueUse)this.$VueApp.use(n);return this.$VueProxy=this.$VueApp.mount(`#${this.$MountId}`),this.$IsInited=!0,this}Using(n=()=>{}){return n(),this}}t.VueModel=l;const i=new l;t.Model=i;window.Model=i});
|
|
1
|
+
(function(n){if(typeof module=="object"&&typeof module.exports=="object"){var t=n(require,exports);t!==undefined&&(module.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","vue","vue"],n)})(function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.VueStore=t.ApiStore=t.FuncBase=t.VueModel=t.Model=t.Queryer=t.DomQueryer=void 0;class f{$NavigateToFunc;$DefaultDateJoinChar;constructor(){this.$NavigateToFunc=null;this.WithDateTextJoinChar("-")}WithNavigateTo(n){return this.$NavigateToFunc=n,this}WithDateTextJoinChar(n){return this.$DefaultDateJoinChar=n,this}GenerateId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,n=>{let t=crypto.getRandomValues(new Uint8Array(1))[0]&15,i=n==="x"?t:t&3|8;return i.toString(16)})}GenerateIdReplace(n){return this.GenerateId().replaceAll("-",n)}GenerateUrl(n,t=null){n=this.Paths(n);(n==null||n.length==0||n[0].length==0)&&this.$Throw("Url can not be null or empty");n=n.map(n=>n.replace(/\/+$/g,"").replace(/^\/+/g,"/"));let i=this.ToJoin(n,"/");return t!=null&&(t=this.ConvertTo_UrlQuery(t),i+=`?${t}`),i}$BaseNavigateTo(n){this.$NavigateToFunc?this.$NavigateToFunc(n):window.location.href=n}NavigateToRoot(){return this.$BaseNavigateTo("/"),this}NavigateTo(n,t=null){let i=this.GenerateUrl(n,t);return this.$BaseNavigateTo(i),this}$BaseNavigateBlank(n){let t=document.createElement("a");t.href=n;t.target="_blank";t.rel="noopener noreferrer";t.click()}NavigateBlank(n,t=null){let i=this.GenerateUrl(n,t);return this.$BaseNavigateBlank(i),this}ForEachObject(n,t){for(let i of Object.getOwnPropertyNames(n))if(!i.match(/^$/g)){let r=n[i];t!=null&&t.call(this,i,r)}}DeepObjectExtend(n,t,i=10){if(i==0)return{...n,...t};let r=Object.keys(t);for(let u=0;u<r.length;u++){let f=r[u];if(f in n)if(typeof t[f]!="object")n[f]=t[f];else{let r={...this.DeepObjectExtend(n[f],t[f],i-1)};n[f]=r}else n[f]=t[f]}return n}ToDateInfo(n){n??=new Date;return this.$CreateDateInfo(n)}ToDateText(n,t){n=this.$CreateDateInfo(n);t??={};typeof t=="string"&&(t={Format:t});t.DateJoinChar??=this.$DefaultDateJoinChar;t.Format??=`yyyy${t.DateJoinChar}MM${t.DateJoinChar}dd`;let i=t.Format;return i=i.replaceAll("yyyy",n.Year.toString().padStart(4,"0")),i=i.replaceAll("MM",n.Month.toString().padStart(2,"0")),i=i.replaceAll("dd",n.Day.toString().padStart(2,"0")),t.Format=i,i}ToDateTimeText(n,t){t??={};typeof t=="string"&&(t={Format:t});t.DateJoinChar??=this.$DefaultDateJoinChar;t.Format??=`yyyy${t.DateJoinChar}MM${t.DateJoinChar}dd HH:mm:ss`;t={...t};n=this.$CreateDateInfo(n);this.ToDateText(n,t);let i=t.Format;return i=i.replaceAll("HH",n.Hour.toString().padStart(2,"0")),i=i.replaceAll("mm",n.Minute.toString().padStart(2,"0")),i.replaceAll("ss",n.Second.toString().padStart(2,"0"))}$CreateDateInfo(n){if(n??=new Date,typeof n=="string"&&(n=new Date(n)),n instanceof Date==!1)return n;return{Date:n,Year:n.getFullYear(),Month:n.getMonth()+1,Day:n.getDate(),Hour:n.getHours(),Minute:n.getMinutes(),Second:n.getSeconds()}}ConvertTo_UrlQuery(n){if(typeof n=="string")return n;let t=[];this.ForEachObject(n,(n,i)=>{t.push(`${n}=${i}`)});return t.join("&")}ClearUrl(n){return n.replace(/^\/+|\/+$/g,"")}ToJoin(n,t="."){let i=this.Paths(n);return i.join(t)}Paths(...n){if(!Array.isArray(n))return[n];let t=[];for(let i of n)if(i!=null){if(!Array.isArray(i)){t.push(i);continue}i.length!=0&&t.push(...this.Paths(...i))}return t}IsPathType(n){if(Array.isArray(n)){for(let t of n){let n=this.IsPathType(t);if(!n)return!1}return!0}return typeof n=="string"?!0:!1}$Throw(n){throw new Error(n);}$Error(n){console.error(n)}}t.FuncBase=f;class u extends f{Dom;DomName=null;Parent=null;Children=[];ElementDeep=0;NodeDeep=0;constructor(n){super();this.Dom=n}Query(n,t){return this.$RCS_QueryChildrens(this,n,t)}Selector(n){return this.Dom.querySelector(n)}SelectorAll(n){return this.Dom.querySelectorAll(n)}$RCS_QueryChildrens(n,t,i){if(t==null)return null;t=this.Paths(t);t.length==1&&(t=t[0]);let r=[];for(let u of n.Children){if(Array.isArray(t)){let n=[...t],f=n.shift();if(u.DomName==f){n.length==1&&(n=n[0]);let t=this.$RCS_QueryChildrens(u,n,i);if(t!=null){r.push(...t);continue}}}else if(u.DomName==t&&(r.push(u),i.Mode=="Multi"))continue;let n=this.$RCS_QueryChildrens(u,t,i);n!=null&&r.push(...n)}return r}}class s{$Root=null;$RootNode=null;$Nodes=[];$QueryDomName=null;IsInited=false;WithRoot(n){return this.$Root=document.querySelector(n),this}WithDomName(n){return this.$QueryDomName=n,this}Init(n=false){return this.IsInited&&!n?this:(this.$Root??=document.body,this.$RootNode=new u(this.$Root),this.$RCS_Visit(this.$Root,this.$RootNode,0),this.$Nodes=this.$Nodes.sort((n,t)=>n.NodeDeep-t.NodeDeep),this.IsInited=!0,this)}Query(n,t){return r.IsInited||r.Init(),t==null?t={Mode:"Multi"}:t instanceof u&&(t={Mode:"Multi",TargetNode:t}),t.TargetNode==null&&(t.TargetNode=this.$RootNode),t.TargetNode.Query(n,t)}Using(n,t,i){let r=this.Query(n,{Mode:"Multi",TargetNode:i});return r!=null&&r.length>0&&t({QueryNodes:r}),this}$RCS_Visit(n,t,i){let u=this.$AddNode(n,t,i);u??=t;let r=n.children;if(n instanceof HTMLTemplateElement&&(r=n.content.children),r!=null&&r.length!=0)for(let n=0;n<r.length;n++){let t=r[n];t instanceof HTMLElement&&this.$RCS_Visit(t,u,i+1)}}$AddNode(n,t,i){if(this.$QueryDomName!=null&&!n.matches(`[${this.$QueryDomName}]`))return null;let f=n.getAttribute(this.$QueryDomName),r=new u(n);return r.DomName=f,r.ElementDeep=i,this.$Nodes.push(r),t!=null&&(r.Parent=t,r.NodeDeep=t.NodeDeep+1,t.Children.push(r)),r}}t.DomQueryer=s;var r=new s;t.Queryer=r;class e{$Store;constructor(n,t,i="none"){this.$Store=o.reactive({FileId:n,File:t,ConvertType:i,Base64:null,Buffer:null});this.$ConvertFile()}get FileId(){return this.$Store.FileId}set FileId(n){this.$Store.FileId=n}get File(){return this.$Store.File}set File(n){this.$Store.File=n}get ConvertType(){return this.$Store.ConvertType}set ConvertType(n){this.$Store.ConvertType=n}get Base64(){return this.$Store.Base64}set Base64(n){this.$Store.Base64=n}get Buffer(){return this.$Store.Buffer}set Buffer(n){this.$Store.Buffer=n}$ConvertFile(){if(this.ConvertType!=null){let n=[];n=Array.isArray(this.ConvertType)?this.ConvertType:[this.ConvertType];for(let t=0;t<n.length;t++){let i=n[t];switch(i){case"base64":this.$ConvertBase64();break;case"buffer":this.$ConvertBuffer()}}}}$ConvertBase64(n=false){if(this.File==null||this.Base64!=null&&n==!1)return this;let t=new FileReader;return t.readAsDataURL(this.File),t.onload=()=>this.Base64=t.result,this}$ConvertBuffer(){let n=new FileReader;n.readAsArrayBuffer(this.File);n.onload=()=>this.Buffer=n.result}}class h extends f{#ApiDomain=null;#RootRoute=null;#AccessToken=null;#RefreshToken=null;#HeaderFuncs=[];#OnEventFunc={};#OnEventName={ApiStore:{AddApi:"AddApi",UpdateStore:"UpdateStore",AddStore:"AddStore",SetStore:"SetStore"}};#OnSuccess;#OnError;#OnComplete;#ExportSuccessStore;#Store={FileStore:{}};#Func_ConvertTo_FormData=[];$ApiStore={};constructor(){super();this.SetStore("api",this.$ApiStore)}get ApiDomain(){return this.#ApiDomain==null?null:this.ClearUrl(this.#ApiDomain)}set ApiDomain(n){this.#ApiDomain=this.ClearUrl(n)}get OnEventName(){return this.#OnEventName}get #EventName(){return this.OnEventName.ApiStore}get Store(){return this.#Store}set Store(n){this.#Store=n}get FileStore(){return this.Store.FileStore}WithAccessToken(n){return this.#AccessToken=n,this}WithRefreshToken(n){return this.#RefreshToken=n,this}WithApiDomain(n){return this.ApiDomain=n,this}WithRootRoute(n){return this.#RootRoute=n,this}WithHeader(n){return this.#HeaderFuncs.push(n),this}WithOnSuccess(n){return this.#OnSuccess=n,this}WithOnError(n){return this.#OnError=n,this}WithOnComplete(n){return this.#OnComplete=n,this}WithExportSuccessStore(n){return this.#ExportSuccessStore=n,this}WithConvertTo_FormParam(n){return this.#Func_ConvertTo_FormData.push(n),this}ClearConvertTo_FormParam(){return this.#Func_ConvertTo_FormData=[],this}ConvertTo_ApiUrl(n,t=null){let i=n;return this.ApiDomain==null||i.includes("http")||(i=`${this.ApiDomain}/${this.ClearUrl(i)}`),t!=null&&(i=`${i}?${this.ConvertTo_UrlQuery(t)}`),i}AddApi(n){for(let t in n){let r=n[t],i={ApiKey:t,...r};this.$ApiStore[t]=i;this.$EventTrigger(this.#EventName.AddApi,i)}return this}ApiCall(n,t=null){return this.$BaseApiCall(n,t,!1),this}ApiCall_Form(n,t=null){return this.$BaseApiCall(n,t,!0),this}$BaseApiCall(n,t,i){let r=this.$ApiStore[n];r==null&&this.$Throw(`Api setting not found of "${n}"`);let u=t?.Query??r.Query,f=t?.Body??r.Body,e=t?.File??r.File;typeof u=="function"&&(u=u());typeof f=="function"&&(f=f());typeof e=="function"&&(e=e());let s=t?.IsUpdateStore??r.IsUpdateStore??!0,h=this.ConvertTo_ApiUrl(r.Url,u),o=this.$GenerateFetchRequest(r,f,e,i);r.IsCalling=!0;r.OnCalling?.call(this,o);t?.OnCalling?.call(this,o);fetch(h,o).then(async n=>{if(!n.ok)throw n;let i=await this.$ProcessApiReturn(n);if(s){this.#ExportSuccessStore!=null&&(i=this.#ExportSuccessStore?.call(this,i,n));let t=r.ApiKey;this.UpdateStore(t,i)}return r.IsSuccess=!0,r.IsError=!1,r.OnSuccess?.call(this,i,n),t?.OnSuccess?.call(this,i,n),this.#OnSuccess?.call(this,i,n),{ConvertResult:i,ApiResponse:n}}).catch(n=>{r.IsError=!0,r.IsSuccess=!1,this.$Error(n.message),r.OnError?.call(this,n),t?.OnError?.call(this,n),this.#OnError?.call(this,n)}).then(n=>{r.IsCalling=!1,r.IsComplete=!0,n instanceof Object?(r.OnComplete?.call(this,n.ConvertResult,n.ApiResponse),t?.OnComplete?.call(this,n.ConvertResult,n.ApiResponse),this.#OnComplete?.call(this,n.ConvertResult,n.ApiResponse)):(r.OnComplete?.call(this),t?.OnComplete?.call(this),this.#OnComplete?.call(this,null,null))})}$GenerateFetchRequest(n,t,i,r){let u=new Headers;if(u.set("Authorization",`Bearer ${this.#AccessToken}`),this.#HeaderFuncs.length>0)for(let n of this.#HeaderFuncs)n(u);let f={method:n.Method,headers:u};if(r){let n=this.$ConvertTo_FormData(t,new FormData);n=this.$ConvertTo_FormFile(i,n);f.body=n;f.method="POST"}else u.set("content-type","application/json"),n.Method!="GET"&&(f.body=JSON.stringify(t??{}));return f}UseFormJsonBody(n="Body"){return this.WithConvertTo_FormParam(t=>{let i={};return i[n]=JSON.stringify(t),i}),this}EventAdd_AddApi(n){return this.$EventAdd(this.#EventName.AddApi,n),this}EventAdd_UpdateStore(n){return this.$EventAdd(this.#EventName.UpdateStore,n),this}EventAdd_AddStore(n){return this.$EventAdd(this.#EventName.AddStore,n),this}EventAdd_SetStore(n){return this.$EventAdd(this.#EventName.SetStore,n),this}$EventAdd(n,t){n in this.#OnEventFunc==!1&&(this.#OnEventFunc[n]=[]);this.#OnEventFunc[n].push(t)}$EventTrigger(n,t){let i=this.#OnEventFunc[n];if(i!=null)for(let n of i)n(t)}UpdateStore(n,t){return n=this.ToJoin(n),this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.UpdateStore,{Path:n,Data:t}),this}AddStore(n,t=null){return(n=this.ToJoin(n),this.GetStore(n)!=null)?this:(this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.AddStore,{Path:n,Data:t}),this)}SetStore(n,t){return n=this.ToJoin(n),this.$RCS_SetStore(n,t,this.Store,{IsDeepSet:!1}),this.$EventTrigger(this.#EventName.SetStore,{Path:n,Data:t}),this}GetStore(n,t){typeof t=="boolean"&&(t={Clone:t});t??={};t.Clone??=!1;t.CreateIfNull??=!1;t.DefaultValue==null&&(t.DefaultValue={});n=this.ToJoin(n);let i=this.$RCS_GetStore(n,this.Store,{CreateIfNull:t.CreateIfNull,DefaultValue:t.DefaultValue});if(t.Clone){let n={},t=Object.getOwnPropertyNames(i);for(let r of t)r.match(/^\$/g)||(n[r]=i[r]);return n}return i}ClearStore(n){let t=this.GetStore(n);if(t==null)return this;let i=Object.getOwnPropertyNames(t);for(let n of i)if(!n.match(/^\$/g)){let i=t[n];if(typeof i!="function"){if(Array.isArray(i)){i.splice(0,i.length);continue}t[n]=null}}return this}$RCS_GetStore(n,t,i){if(t==null)return null;let r=n.split("."),u=r.shift();t[u]==null&&i.CreateIfNull&&(t[u]=Array.isArray(i.DefaultValue)?[...i.DefaultValue]:typeof i.DefaultValue=="object"?{...i.DefaultValue}:i.DefaultValue);let f=t[u];if(r.length==0)return f;let e=r.join(".");return this.$RCS_GetStore(e,f,i)}$RCS_SetStore(n,t,i,r={IsDeepSet:true}){if(n.includes(".")){let f=n.split("."),u=f.shift();i[u]==null&&(i[u]={});let e=i[u],o=f.join(".");return this.$RCS_SetStore(o,t,e,r)}let u=!r.IsDeepSet||i[n]==null||t==null||typeof t!="object";return u?(i[n]=t,t):(this.$DeepSetObject(n,t,i),t)}$DeepSetObject(n,t,i){if(t==null){i[n]=t;return}if(!Array.isArray(t)){this.ForEachObject(t,(t,r)=>{if(Array.isArray(r)||typeof r=="object"){this.$DeepSetObject(t,r,i[n]);return}i[n]==null&&(i[n]={});i[n][t]=r});return}Array.isArray(i[n])||(i[n]=[]);i[n].length>0&&i[n].splice(0,i[n].length);i[n].push(...t)}AddFileStore(n){return this.FileStore[n]==null&&(this.FileStore[n]=[]),this}Files(n,t=null){let i=this.FileStore[n];if(i==null)return[];t!=null&&(i=i.filter(n=>t(n)));return i.map(n=>n.File)}AddFile(n,t,i="none"){this.AddFileStore(n);let r=this.FileStore[n];if(Array.isArray(t))t.forEach(t=>this.AddFile(n,t));else if(t instanceof e)r.push(t);else{let n=new e(this.GenerateId(),t,i);r.push(n)}return this}RemoveFile(n,t){let i=this.FileStore[n];if(i==null)return this;if(Array.isArray(t))t.forEach(t=>this.RemoveFile(n,t));else{let n=i.findIndex(n=>n.FileId==t);n>=0&&i.splice(n,1)}return this}ClearFile(n){let t=this.FileStore[n];return t==null?this:(t.splice(0,t.length),this)}$ProcessApiReturn(n){let t=n.headers.get("content-type");return t.includes("application/json")?n.json().then(n=>n):t.includes("text")?n.text().then(n=>n):new Promise(t=>{t(n)})}NavigateToRoot(){let n=this.#RootRoute??"/";return super.$BaseNavigateTo(n),this}$ConvertTo_FormData(n,t){return(t??=new FormData,n==null)?t:(this.#Func_ConvertTo_FormData.forEach(i=>{n=i(n,t)}),n instanceof FormData)?n:(this.ForEachObject(n,(n,i)=>{t.append(n,i)}),t)}$ConvertTo_FormFile(n,t){if(t??=new FormData,n==null)return t;if(Array.isArray(n)||n instanceof File||n instanceof e)return this.$AppendFileToFormData("Files",t,n),t;let i=Object.keys(n);for(let r=0;r<i.length;r++){let u=i[r],f=n[u];this.$AppendFileToFormData(u,t,f)}return t}$AppendFileToFormData(n,t,i){if(Array.isArray(i))for(let r=0;r<i.length;r++)this.$AppendFileToFormData(n,t,i[r]);else i instanceof File?t.append(n,i):t.append(n,i.File);return t}}t.ApiStore=h;const a=n("vue"),o=n("vue");class c extends h{$VueProxy=null;$VueOption={methods:{},components:{},computed:{}};$VueApp=null;$VueUse=[];$CoreStore="app";$MountedFuncs=[];constructor(){super();this.#Setup()}#Setup(){this.EventAdd_AddApi(n=>{this.AddStore(n.ApiKey)}).EventAdd_UpdateStore(()=>{this.ForceUpdate()}).EventAdd_AddStore(()=>{this.ForceUpdate()}).EventAdd_SetStore(()=>{this.ForceUpdate()}).AddStore(this.$CoreStore,{}).WithMounted(()=>{this.UpdateStore([this.$CoreStore,"IsMounted"],!0)})}get Store(){return this.$VueProxy!=null?this.$VueProxy:super.Store}set Store(n){super.Store=n}WithVueOption(n={}){return this.$VueOption=this.DeepObjectExtend(this.$VueOption,n),this}WithMounted(n=()=>{}){return this.$MountedFuncs.push(n),this}WithComponent(n={}){return this.$VueOption.components=this.DeepObjectExtend(this.$VueOption.components,n),this}WithVueUse(...n){for(let t of n)this.$VueUse.push(t);return this}ForceUpdate(){return this.$VueProxy?.$forceUpdate(),this}Refs(n){return this.$VueProxy?this.$VueProxy[n]:null}}t.VueStore=c;class v extends c{$IsInited=false;$QueryDomName=null;WithQueryDomName(n){return this.$QueryDomName=n,r.WithDomName(this.$QueryDomName),this}AddV_Text(n,t){let r=this.$ConvertCommandOption(n,t);return typeof r.Target!="function"&&i.AddStore(r.Target),this.$AddCommand(n,"v-text",r),this}AddV_Model(n,t,i){let r=this.$ConvertCommandOption(t);return i??={},i.DefaultValue??=null,r.CommandKey=i.ModelValue,this.AddStore(t,i.DefaultValue),this.$AddCommand(n,"v-model",r),this}AddV_Slot(n,t,i){let r=this.$ConvertCommandOption(i);return r.CommandKey=t,this.$AddCommand(n,`v-slot`,r),this}AddV_For(n,t,r){let u=this.$ConvertCommandOption(n,t);r&&(r=this.ToJoin(r),/^\(/.test(r)||(r=`(${r}`),/\)$/.test(r)||(r+=")"),u.TargetHead=`${r} in `);let f=i.ToJoin(u.Target);return f.includes("in")||(u.TargetHead??="(item, index) in "),this.$AddCommand(n,"v-for",u),this}AddV_If(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-if",i),this}AddV_ElseIf(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-else-if",i),this}AddV_Else(n){let t=this.$ConvertCommandOption(n);return t.Target="",this.$AddCommand(n,"v-else",t),this}AddV_Show(n,t){let i=this.$ConvertCommandOption(n,t);return this.$AddCommand(n,"v-show",i),this}AddV_Bind(n,t,i){let r=this.$ConvertCommandOption(n,i);return r.CommandKey=t,this.$AddCommand(n,"v-bind",r),this}AddV_On(n,t,i,r){let u=this.$ConvertCommandOption(n,i);return r&&(u.FuncArgs=r),u.FuncAction=!1,u.CommandKey=t,this.$AddCommand(n,`v-on`,u),this}AddV_Watch(n,t,r=false,u={}){let f={handler:t,deep:r,...u};return i.WithMounted(()=>{i.AddStore(n),a.watch(()=>i.GetStore(n),t,f)}),this}AddV_Function(n,t){return this.$IsInited&&!Array.isArray(n)?this.$VueOption.methods[n]=t:i.UpdateStore(n,t),this}AddV_OnChange(n,t,i){return this.AddV_On(n,"change",t,i),this}AddV_Click(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i),this.AddV_On(n,"click",r),this}AddV_FilePicker(n,t){let i=null,r=null,f="none",u=!1;return typeof t=="string"?i=t:(i=t.Store,f=t.ConvertType,u=t.Multiple,r=Array.isArray(t.Accept)?t.Accept.join(" "):t.Accept),this.AddFileStore(i),this.AddV_Click(n,()=>{let n=document.createElement("input");n.type="file";r!=null&&(n.accept=r);u!=null&&(n.multiple=u);n.onchange=()=>{if(n.files!=null&&n.files.length!=0){let t=n.files;for(let n=0;n<t.length;n++){let r=t[n];this.AddFile(i,r,f)}}};n.click()}),this}AddV_Tree(n,t,u){let f=[],e=this.Paths(n);this.$ParseTreeSet(e,t,f);let o={"v-text":(n,t)=>{i.AddV_Text(t.TargetDom,t.TargetValue)},"v-model":(n,t)=>{if(typeof n.StoreValue=="function"){i.$Error(`v-model command value must be a string or string[], path: ${this.ToJoin(n.DomPaths)}`);return}i.AddV_Model(t.TargetDom,t.TargetPath,{ModelValue:n.CommandKey})},"v-for":(n,t)=>{i.AddV_For(t.TargetDom,t.TargetValue,n.CommandKey)},"v-if":(n,t)=>{i.AddV_If(t.TargetDom,t.TargetValue)},"v-else-if":(n,t)=>{i.AddV_ElseIf(t.TargetDom,t.TargetValue)},"v-else":(n,t)=>{i.AddV_Else(t.TargetDom)},"v-show":(n,t)=>{i.AddV_Show(t.TargetDom,t.TargetValue)},"v-bind":(n,t)=>{i.AddV_Bind(t.TargetDom,n.CommandKey,t.TargetValue)},"v-on":(n,t)=>{i.AddV_On(t.TargetDom,n.CommandKey,t.TargetValue,n.Params)},"v-slot":(n,t)=>{if(Array.isArray(n.StoreValue)||typeof n.StoreValue=="function"){i.$Error(`v-slot command value must be a string, path: ${this.ToJoin(n.DomPaths)}`);return}i.AddV_Slot(t.TargetDom,n.CommandKey,t.TargetPath)},watch:n=>{if(typeof n.StoreValue!="function"){i.$Error(`watch command value must be a function, path: ${this.ToJoin(n.DomPaths)}`);return}i.AddV_Watch(n.DomPaths,n.StoreValue)},func:n=>{if(typeof n.StoreValue!="function"){i.$Error(`func command value must be a function, path: ${this.ToJoin(n.DomPaths)}`);return}i.AddV_Function(["event",...n.DomPaths,n.CommandKey],n.StoreValue)}};for(let n of f){let f=o[n.Command];if(f==null){i.$Error(`${n.Command} command is not allowed, path: ${this.ToJoin(n.DomPaths)}`);continue}if(u?.UseDeepQuery){let t=r.Query(n.DomPaths,{Mode:"DeepMulti"});n.Nodes=t}let s=u?.UseDeepQuery?n.Nodes:n.DomPaths,t=[],e;typeof n.StoreValue!="function"&&(u?.UseTreePath&&(t=[...n.TreePaths]),u?.UseDomStore||n.StoreValue=="."?t.push(n.DomName):n.StoreValue!=null&&n.StoreValue!=""&&(t=this.Paths(t,n.StoreValue)));e=t.length>0?t:n.StoreValue;f(n,{TargetDom:s,TargetPath:t,TargetValue:e})}return this}$ParseTreeSet(n,t,r){let u=Object.keys(t),f=/^(.+?)\(([^)]*)\)$/;for(let e=0;e<u.length;e++){let o=u[e],h=t[o],l=[...n],c=[...n],a=c.pop();if(!o.includes(":")){let n=o.match(f),t=null;n&&n.length>=3&&(o=n[1],t=n[2]);r.push({Command:o,StoreValue:h,TreePaths:c,DomPaths:l,DomName:a,CommandKey:t});continue}let s=o.split(":");if(o.length<2){i.$Error(`command ${o} invalid`);continue}o=s.shift();let v=null;if(s.length>0){let t=s.pop(),n=t.match(f);n&&n.length>=3?(s.push(n[1]),v=n[2]):s.push(t)}let y=i.ToJoin(s,":");if(o==""){this.$ParseTreeSet([...n,y],h,r);continue}r.push({Command:o,CommandKey:y,StoreValue:h,TreePaths:c,DomPaths:l,DomName:a,Params:v})}}AddV_Property(n,t){let i=this.Store;n=this.ToJoin(n);let r=n;if(n.includes(".")){let t=n.split(".");r=t.pop();let u=t.join(".");i=this.GetStore(u,{CreateIfNull:!0})}let u=this.$BaseAddProperty(i,r,t);if(t.Bind){Array.isArray(t.Bind)||(t.Bind=[t.Bind]);for(let i of t.Bind)this.AddV_Property(i,{Target:n});u.Bind=t.Bind}return this}$BaseAddProperty(n,t,i){let f=this,u={get(){return i.get?i.get():this.$get(t)},set(n){if(i.set){i.set(n);return}this.$set(t,n)}};i.get&&(u.get=i.get);i.set!=null&&(u.set=i.set);let r=Object.defineProperty(n,t,u);return r.$properties??={},r.$properties[t]={...i},r.$get??=n=>{let t=r.$properties[n];return t?.Target==null?t[`$${n}`]:f.GetStore(t.Target)},r.$set??=(n,t)=>{let i=r.$properties[n];i?.Target?f.SetStore(i.Target,t):i[`$${n}`]=t},r[t]==null&&i.Value!=null&&(r[t]=i.Value),r}$ConvertCommandOption(n,t){if(t==null)if(this.IsPathType(n))return{Target:n,FuncAction:!1};else{let t=n,i=t.map(n=>n.DomName);return{Target:i,FuncAction:!1}}return typeof t=="string"||typeof t=="function"||Array.isArray(t)?{Target:t,FuncAction:!0}:(t.FuncAction??=!0,t)}$AddCommand(n,t,i){if(n!=null){Array.isArray(n)||(n=[n]);let o=n[0]instanceof u,e;e=o?n:r.Query(n);let f=i.Target;if(typeof f=="function"){let r=n;if(f=this.$GenerateEventFunction(r,f,t),i.FuncArgs){let n=this.ToJoin(i.FuncArgs,",");/^\(/.test(n)||(n=`(${n}`);/\)$/.test(n)||(n+=")");f+=n}else i.FuncAction&&(f+=`()`)}else f=this.ToJoin(f);i.TargetHead&&(f=i.TargetHead+f);i.TargetTail&&(f+=i.TargetTail);i.CommandKey&&(t+=`:${i.CommandKey}`);for(let n=0;n<e.length;n++){let i=e[n],r=i.Dom;this.$SetAttribute(r,t,f)}}}$SetAttribute(n,t,i){if(n==null){let n=`Dom Element is null. ${i}`;console.warn(n);return}n.setAttribute(t,i)}$RandomFuncName(n){return`${n}${this.GenerateIdReplace("")}`.replace(/[-:.]/g,"_")}$GenerateEventFunction(n,t,i){let u=this.$RandomFuncName(`${i}_`);n=this.Paths(n);let r=["event",...n,u];return this.AddV_Function(r,t),this.ToJoin(r)}}class l extends v{$NativeWarn;$IsEnableVueWarn;$MountId=null;Id;constructor(){super();this.Id=this.GenerateId();this.$MountId="app";this.WithVueWarn(!1)}WithMountId(n){return this.$MountId=n,this}WithVueWarn(n){return this.$IsEnableVueWarn=n,this.$NativeWarn=console.warn,console.warn=(...n)=>{n!=null&&n.length!=0&&(n[0].toLowerCase().includes("[vue warn]")&&this.$IsEnableVueWarn==!1||this.$NativeWarn(n))},this}Init(){if(this.$IsInited)return this;this.Store=o.reactive(this.Store);let n=this.Store,t=this.$MountedFuncs;this.$VueApp=o.createApp({...this.$VueOption,data(){return n},mounted:()=>{for(let n of t)n()}});for(let n of this.$VueUse)this.$VueApp.use(n);return this.$VueProxy=this.$VueApp.mount(`#${this.$MountId}`),this.$IsInited=!0,this}Using(n=()=>{}){return n(),this}}t.VueModel=l;const i=new l;t.Model=i;window.Model=i});
|
|
2
2
|
//# sourceMappingURL=VueModel.umd.min.js.map
|