@rugal.tu/vuemodel3 1.6.2 → 1.6.4

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.
@@ -880,29 +880,36 @@ export class ApiStore extends FuncBase {
880
880
  ClearStore(StorePath, Option) {
881
881
  return this.ClearStoreFrom(this.Store, StorePath, Option);
882
882
  }
883
- GetStoreFrom(SourceStore, StorePath, Option) {
884
- if (typeof Option == 'boolean')
885
- Option = { Clone: Option };
886
- Option ??= {};
887
- Option.Clone ??= false;
888
- Option.CreateIfNull ??= false;
889
- if (Option.DefaultValue == null)
890
- Option.DefaultValue = {};
891
- StorePath = this.ToJoin(StorePath);
892
- let FindStore = this.$RCS_GetStore(StorePath, SourceStore, {
893
- CreateIfNull: Option.CreateIfNull,
894
- DefaultValue: Option.DefaultValue,
895
- });
896
- if (Option.Clone) {
897
- let CloneResult = {};
898
- let AllKeys = Object.getOwnPropertyNames(FindStore);
899
- for (let Key of AllKeys) {
900
- if (!Key.match(/^\$/g))
901
- CloneResult[Key] = FindStore[Key];
883
+ GetStoreFrom(sourceStore, storePath, option) {
884
+ if (typeof option == 'boolean')
885
+ option = { Clone: option };
886
+ option ??= {};
887
+ option.Clone ??= false;
888
+ option.CreateIfNull ??= false;
889
+ if (option.DefaultValue == null)
890
+ option.DefaultValue = {};
891
+ let findStore = sourceStore;
892
+ if (storePath != null) {
893
+ storePath = this.ToJoin(storePath);
894
+ findStore = this.$RCS_GetStore(storePath, sourceStore, {
895
+ CreateIfNull: option.CreateIfNull,
896
+ DefaultValue: option.DefaultValue,
897
+ });
898
+ }
899
+ if (option.Clone) {
900
+ const cloneResult = {};
901
+ const allKeys = Object.getOwnPropertyNames(findStore);
902
+ for (let key of allKeys) {
903
+ if (key.match(/^\$/g))
904
+ continue;
905
+ let targetStore = findStore[key];
906
+ if (typeof targetStore === 'object')
907
+ targetStore = this.GetStoreFrom(targetStore, null, option);
908
+ cloneResult[key] = targetStore;
902
909
  }
903
- return CloneResult;
910
+ return cloneResult;
904
911
  }
905
- return FindStore;
912
+ return findStore;
906
913
  }
907
914
  AddStoreFrom(SourceStore, StorePath, StoreData = null) {
908
915
  StorePath = this.ToJoin(StorePath);
@@ -1334,57 +1341,63 @@ export class VueCommand extends VueStore {
1334
1341
  }
1335
1342
  //#endregion
1336
1343
  //#region Path/Function Command
1337
- AddV_For(DomName, Option, ForKey) {
1338
- let SetOption = this.$ConvertCommandOption(DomName, Option);
1339
- if (ForKey) {
1340
- ForKey = this.ToJoin(ForKey);
1341
- if (!/^\(/.test(ForKey))
1342
- ForKey = `(${ForKey}`;
1343
- if (!/\)$/.test(ForKey))
1344
- ForKey += ')';
1345
- SetOption.TargetHead = `${ForKey} in `;
1344
+ AddV_For(domName, option, forKey) {
1345
+ const setOption = this.$ConvertCommandOption(domName, option);
1346
+ if (forKey) {
1347
+ forKey = this.ToJoin(forKey);
1348
+ if (!/^\(/.test(forKey))
1349
+ forKey = `(${forKey}`;
1350
+ if (!/\)$/.test(forKey))
1351
+ forKey += ')';
1352
+ setOption.TargetHead = `${forKey} in `;
1346
1353
  }
1347
- let Target = Model.ToJoin(SetOption.Target);
1348
- if (!/\b(in|of)\b/.test(Target))
1349
- SetOption.TargetHead ??= '(item, index) in ';
1350
- SetOption.FuncAction = true;
1351
- this.$AddCommand(DomName, 'v-for', SetOption);
1354
+ let target = Model.ToJoin(setOption.Target);
1355
+ if (!/\b(in|of)\b/.test(target))
1356
+ setOption.TargetHead ??= '(item, index) in ';
1357
+ setOption.FuncAction = true;
1358
+ this.$AddCommand(domName, 'v-for', setOption);
1352
1359
  return this;
1353
1360
  }
1354
- AddV_If(DomName, Option) {
1355
- let SetOption = this.$ConvertCommandOption(DomName, Option);
1356
- SetOption.FuncAction = true;
1357
- this.$AddCommand(DomName, 'v-if', SetOption);
1361
+ AddV_If(domName, option) {
1362
+ if (typeof option === 'boolean')
1363
+ option = `${option}`;
1364
+ const setOption = this.$ConvertCommandOption(domName, option);
1365
+ setOption.FuncAction = true;
1366
+ this.$AddCommand(domName, 'v-if', setOption);
1358
1367
  return this;
1359
1368
  }
1360
- AddV_ElseIf(DomName, Option) {
1361
- let SetOption = this.$ConvertCommandOption(DomName, Option);
1362
- SetOption.FuncAction = true;
1363
- this.$AddCommand(DomName, 'v-else-if', SetOption);
1369
+ AddV_ElseIf(domName, option) {
1370
+ if (typeof option === 'boolean')
1371
+ option = `${option}`;
1372
+ const setOption = this.$ConvertCommandOption(domName, option);
1373
+ setOption.FuncAction = true;
1374
+ this.$AddCommand(domName, 'v-else-if', setOption);
1364
1375
  return this;
1365
1376
  }
1366
- AddV_Else(DomName) {
1367
- let SetOption = this.$ConvertCommandOption(DomName);
1368
- SetOption.Target = '';
1369
- this.$AddCommand(DomName, 'v-else', SetOption);
1377
+ AddV_Else(domName) {
1378
+ const setOption = this.$ConvertCommandOption(domName);
1379
+ setOption.Target = '';
1380
+ this.$AddCommand(domName, 'v-else', setOption);
1370
1381
  return this;
1371
1382
  }
1372
- AddV_Show(DomName, Option) {
1373
- let SetOption = this.$ConvertCommandOption(DomName, Option);
1374
- SetOption.FuncAction = true;
1375
- this.$AddCommand(DomName, 'v-show', SetOption);
1383
+ AddV_Show(domName, option) {
1384
+ const setOption = this.$ConvertCommandOption(domName, option);
1385
+ setOption.FuncAction = true;
1386
+ this.$AddCommand(domName, 'v-show', setOption);
1376
1387
  return this;
1377
1388
  }
1378
- AddV_Bind(DomName, BindKey, Option, Args) {
1379
- let SetOption = this.$ConvertCommandOption(DomName, Option, Args);
1380
- SetOption.CommandKey = BindKey;
1381
- this.$AddCommand(DomName, 'v-bind', SetOption);
1389
+ AddV_Bind(domName, bindKey, option, args) {
1390
+ if (typeof option === 'boolean')
1391
+ option = `${option}`;
1392
+ const setOption = this.$ConvertCommandOption(domName, option, args);
1393
+ setOption.CommandKey = bindKey;
1394
+ this.$AddCommand(domName, 'v-bind', setOption);
1382
1395
  return this;
1383
1396
  }
1384
- AddV_On(DomName, EventName, Option, Args) {
1385
- let SetOption = this.$ConvertCommandOption(DomName, Option, Args);
1386
- SetOption.CommandKey = EventName;
1387
- this.$AddCommand(DomName, `v-on`, SetOption);
1397
+ AddV_On(domName, eventName, option, args) {
1398
+ const setOption = this.$ConvertCommandOption(domName, option, args);
1399
+ setOption.CommandKey = eventName;
1400
+ this.$AddCommand(domName, `v-on`, setOption);
1388
1401
  return this;
1389
1402
  }
1390
1403
  //#endregion
@@ -1484,76 +1497,79 @@ export class VueCommand extends VueStore {
1484
1497
  });
1485
1498
  return this;
1486
1499
  }
1487
- AddV_Tree(TreeRoot, TreeSet, Option) {
1488
- let AllSetInfo = [];
1489
- let RootNode;
1490
- let UsingRootNode = TreeRoot instanceof QueryNode;
1491
- if (UsingRootNode)
1492
- RootNode = TreeRoot;
1493
- let RootPaths = UsingRootNode ? [] : this.Paths(TreeRoot);
1494
- this.$ParseTreeSet(RootPaths, TreeSet, AllSetInfo);
1495
- for (let Info of AllSetInfo) {
1496
- let ActionSet = this.$CommandMap[Info.Command];
1497
- if (ActionSet == null) {
1498
- Model.$Error(`${Info.Command} command is not allowed, path: ${this.ToJoin(Info.DomPaths)}`);
1500
+ AddV_Tree(treeRoot, treeSet, option) {
1501
+ const allSetInfo = [];
1502
+ const usingRootNode = treeRoot instanceof QueryNode;
1503
+ let rootNode;
1504
+ if (usingRootNode)
1505
+ rootNode = treeRoot;
1506
+ const rootPaths = usingRootNode ? [] : this.Paths(treeRoot);
1507
+ this.$ParseTreeSet(rootPaths, treeSet, allSetInfo);
1508
+ for (let info of allSetInfo) {
1509
+ const actionSet = this.$CommandMap[info.Command];
1510
+ if (actionSet == null) {
1511
+ Model.$Error(`${info.Command} command is not allowed, path: ${this.ToJoin(info.DomPaths)}`);
1499
1512
  continue;
1500
1513
  }
1501
- if (Info.StoreValue === '' || (Info.StoreValue == null && ActionSet.AcceptNull != true))
1514
+ if (info.StoreValue === '' || (info.StoreValue == null && actionSet.AcceptNull != true))
1502
1515
  continue;
1503
- if (Info.StoreValue == '.' && ActionSet.AcceptSelf != true)
1516
+ if (info.StoreValue == '.' && actionSet.AcceptSelf != true)
1504
1517
  continue;
1505
- let NeedQuery = Info.Command == 'using';
1506
- let QueryOption = {
1518
+ const queryOption = {
1507
1519
  Mode: 'Multi',
1508
1520
  };
1509
- if (UsingRootNode) {
1510
- NeedQuery = true;
1511
- QueryOption.TargetNode = RootNode;
1521
+ let needQuery = info.Command == 'using';
1522
+ if (usingRootNode) {
1523
+ needQuery = true;
1524
+ queryOption.TargetNode = rootNode;
1512
1525
  }
1513
- if (Option?.UseDeepQuery) {
1514
- NeedQuery = true;
1515
- QueryOption.Mode = 'DeepMulti';
1526
+ if (option?.UseDeepQuery) {
1527
+ needQuery = true;
1528
+ queryOption.Mode = 'DeepMulti';
1516
1529
  }
1517
- if (NeedQuery) {
1518
- let QueryNodes = [RootNode];
1519
- if (Info.DomPaths.length > 0)
1520
- QueryNodes = Queryer.Query(Info.DomPaths, QueryOption);
1521
- if (QueryNodes.length == 0)
1530
+ if (needQuery) {
1531
+ let queryNodes = [rootNode];
1532
+ if (info.DomPaths.length > 0)
1533
+ queryNodes = Queryer.Query(info.DomPaths, queryOption);
1534
+ if (queryNodes.length == 0)
1522
1535
  continue;
1523
- Info.Nodes = QueryNodes;
1536
+ info.Nodes = queryNodes;
1524
1537
  }
1525
- let TargetDom = NeedQuery ? Info.Nodes : Info.DomPaths;
1526
- let TargetValue;
1527
- if (typeof Info.StoreValue === 'function') {
1528
- TargetValue = {
1529
- Target: Info.StoreValue,
1530
- FuncArgs: Info.Args,
1538
+ const targetDom = needQuery ? info.Nodes : info.DomPaths;
1539
+ let targetValue;
1540
+ if (typeof info.StoreValue === 'function') {
1541
+ targetValue = {
1542
+ Target: info.StoreValue,
1543
+ FuncArgs: info.Args,
1531
1544
  };
1532
1545
  }
1533
1546
  else {
1534
- if (typeof Info.StoreValue === 'string' || Array.isArray(Info.StoreValue)) {
1535
- if (Info.StoreValue == '.')
1536
- TargetValue = this.Paths(Info.TreePaths, Info.DomName);
1537
- else if (Info.StoreValue != null && Info.StoreValue != '')
1538
- TargetValue = Info.StoreValue;
1547
+ if (typeof info.StoreValue === 'string' || Array.isArray(info.StoreValue)) {
1548
+ if (info.StoreValue == '.')
1549
+ targetValue = this.Paths(info.TreePaths, info.DomName);
1550
+ else if (info.StoreValue != null && info.StoreValue != '')
1551
+ targetValue = info.StoreValue;
1539
1552
  }
1540
- else {
1541
- TargetValue = {
1542
- Target: Info.StoreValue?.TargetFunc,
1543
- FuncArgs: Info.StoreValue?.Args,
1553
+ else if (typeof info.StoreValue === 'object') {
1554
+ targetValue = {
1555
+ Target: info.StoreValue?.TargetFunc,
1556
+ FuncArgs: info.StoreValue?.Args,
1544
1557
  };
1545
- if (Info.StoreValue?.Args != null) {
1546
- let TargetArgs = Info.StoreValue.Args;
1547
- if (Info.Args == null)
1548
- Info.Args = Model.ToJoin(TargetArgs, ', ');
1558
+ if (info.StoreValue?.Args != null) {
1559
+ const targetArgs = info.StoreValue.Args;
1560
+ if (info.Args == null)
1561
+ info.Args = Model.ToJoin(targetArgs, ', ');
1549
1562
  else
1550
- Info.Args = Model.ToJoin([Info.Args, TargetArgs], ', ');
1563
+ info.Args = Model.ToJoin([info.Args, targetArgs], ', ');
1551
1564
  }
1552
1565
  }
1566
+ else {
1567
+ targetValue = `${info.StoreValue}`;
1568
+ }
1553
1569
  }
1554
- ActionSet.Execute(Info, {
1555
- TargetDom,
1556
- TargetValue,
1570
+ actionSet.Execute(info, {
1571
+ TargetDom: targetDom,
1572
+ TargetValue: targetValue,
1557
1573
  });
1558
1574
  }
1559
1575
  return this;
@@ -1,2 +1,2 @@
1
- export class FuncBase{$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){let i=this.Paths(n);(i==null||i.length==0||i[0].length==0)&&this.$Throw("Url can not be null or empty");i=i.map(n=>n.replace(/\/+$/g,"").replace(/^\/+/g,"/"));let r=this.ToJoin(i,"/");return(r==null||r=="")&&(r="/"),t!=null&&(t=this.ConvertTo_UrlQuery(t),r+=`?${t}`),r}$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)}}export class QueryNode extends FuncBase{NodeId;Dom;DomName=null;Parent=null;Children=[];ElementDeep=0;NodeDeep=0;constructor(n){super();this.Dom=n;this.NodeId=this.GenerateIdReplace("")}Query(n,t){return t??={Mode:"Multi"},this.$RCS_QueryChildrens(this,n,t)}QueryCss(n,t){return t??={Mode:"Multi"},this.$RCS_QueryCssChildrens(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)){if(t.length==0)continue;let n=[...t],f=n.shift();const e=f.match(/^(?<key>[^:]+):(?<name>.+)$/);if(e){const n=e.groups.key,t=e.groups.name;switch(n){case"tag":break;default:f=t}}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}$RCS_QueryCssChildrens(n,t,i){let r=[];for(let u of n.Children)if(!u.Dom.matches(t)||(r.push(u),i.Mode!="Multi")){let n=this.$RCS_QueryCssChildrens(u,t,i);n!=null&&r.push(...n)}return r}}export class DomQueryer{$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 QueryNode(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 Queryer.IsInited||Queryer.Init(),t==null?t={Mode:"Multi"}:t instanceof QueryNode&&(t={Mode:"Multi",TargetNode:t}),t.TargetNode==null&&(t.TargetNode=this.$RootNode),t.TargetNode.Query(n,t)}QueryCss(n,t){return Queryer.IsInited||Queryer.Init(),t==null?t={Mode:"Multi"}:t instanceof QueryNode&&(t={Mode:"Multi",TargetNode:t}),t.TargetNode==null&&(t.TargetNode=this.$RootNode),t.TargetNode.QueryCss(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 u=n.getAttribute(this.$QueryDomName),r=new QueryNode(n);return r.DomName=u,r.ElementDeep=i,this.$Nodes.push(r),t!=null&&(r.Parent=t,r.NodeDeep=t.NodeDeep+1,t.Children.push(r)),r}}export var Queryer=new DomQueryer;export class FileItem{OnChangeBase64;OnChangeBuffer;$Store;constructor(n,i="none"){n==null?this.$Store=t({}):(this.$Store=t({FileId:(new FuncBase).GenerateId(),File:n,ConvertType:i,Base64:null,Buffer:null,IsLoaded:!1,IsLoading:!0,Error: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;this.OnChangeBase64?.call(this,this.$Store.Base64)}get Buffer(){return this.$Store.Buffer}set Buffer(n){this.$Store.Buffer=n;this.OnChangeBuffer?.call(this,this.$Store.Buffer)}get InnerStore(){return this.$Store}get IsLoaded(){return this.$Store.IsLoaded}get IsLoading(){return this.$Store.IsLoading}get Error(){return this.$Store.Error}Clear(){this.$Store.Base64=null;this.$Store.Buffer=null;this.$Store.File=null}From(n){this.$Store=n.InnerStore}CheckLoadAsync(){return new Promise((n,t)=>{try{if(this.$Store.IsLoaded||!this.$Store.IsLoading)return n(this.$Store.IsLoaded);const r=setTimeout(()=>{i&&clearInterval(i),this.$Store.Error="timeout",console.error("WaitLoadAsync: timeout"),t(!1)},6e4),i=setInterval(()=>{(this.$Store.IsLoaded||!this.$Store.IsLoading)&&(clearInterval(i),clearTimeout(r),n(this.$Store.IsLoaded))},100)}catch(i){this.$Store.Error=i;console.error(i);t(!1)}})}$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.$Store.IsLoading=!0;this.$ConvertBase64();break;case"buffer":this.$Store.IsLoading=!0;this.$ConvertBuffer();break;default:this.$Store.IsLoaded=!0}}}}$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.$Store.IsLoaded=!0,this.$Store.IsLoading=!1},this}$ConvertBuffer(){let n=new FileReader;n.readAsArrayBuffer(this.File);n.onload=()=>{this.Buffer=n.result,this.$Store.IsLoaded=!0,this.$Store.IsLoading=!1}}}export class ApiStore extends FuncBase{#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=[];constructor(){super();this.SetStore("api",{})}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 ApiStore(){return this.GetStore("api")}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.AddStoreFrom(this.ApiStore,t,{});this.UpdateStoreFrom(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);this.PubApi(n,"IsCalling",!0);r.OnCalling?.call(this,o);t?.OnCalling?.call(this,o);fetch(h,o).then(async i=>{if(!i.ok)throw i;let u=await this.$ProcessApiReturn(i);if(s){r.Export!=!1&&(typeof r.Export=="function"?u=r.Export?.call(this,u,i):this.#ExportSuccessStore!=null&&(u=this.#ExportSuccessStore?.call(this,u,i)));let n=r.ApiKey;this.UpdateStore(n,u)}return this.PubApi(n,"IsSuccess",!0),this.PubApi(n,"IsError",!1),r.OnSuccess?.call(this,u,i),t?.OnSuccess?.call(this,u,i),this.#OnSuccess?.call(this,u,i),{ConvertResult:u,ApiResponse:i}}).catch(i=>{this.PubApi(n,"IsError",!0),this.PubApi(n,"IsSuccess",!1),this.$Error(i.message),r.OnError?.call(this,i),t?.OnError?.call(this,i),this.#OnError?.call(this,i)}).then(i=>{this.PubApi(n,"IsCalling",!1),this.PubApi(n,"IsComplete",!0),i instanceof Object?(r.OnComplete?.call(this,i.ConvertResult,i.ApiResponse),t?.OnComplete?.call(this,i.ConvertResult,i.ApiResponse),this.#OnComplete?.call(this,i.ConvertResult,i.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}AddSubApi(n,t){typeof t=="function"&&(t={NotifyEvent:t});let r={...t};this.AddStoreFrom(this.ApiStore,n,{});let i=this.ApiStore[n];return i.$sub??=[],i.$sub.push(r),this}PubApi(n,t,i){let r=this.ApiStore[n];if(r[t]=i,r.$sub==null||!Array.isArray(r.$sub))return this;for(let n of r.$sub){let i=n;(i.PropertyName==null||i.PropertyName==t)&&i.NotifyEvent({PropertyName:t,ApiStore:r,Value:r[t]})}return this}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)}GetStore(n,t){return this.GetStoreFrom(this.Store,n,t)}AddStore(n,t=null){return this.AddStoreFrom(this.Store,n,t)}SetStore(n,t){return this.SetStoreFrom(this.Store,n,t)}UpdateStore(n,t){return this.UpdateStoreFrom(this.Store,n,t)}ClearStore(n,t){return this.ClearStoreFrom(this.Store,n,t)}GetStoreFrom(n,t,i){typeof i=="boolean"&&(i={Clone:i});i??={};i.Clone??=!1;i.CreateIfNull??=!1;i.DefaultValue==null&&(i.DefaultValue={});t=this.ToJoin(t);let r=this.$RCS_GetStore(t,n,{CreateIfNull:i.CreateIfNull,DefaultValue:i.DefaultValue});if(i.Clone){let n={},t=Object.getOwnPropertyNames(r);for(let i of t)i.match(/^\$/g)||(n[i]=r[i]);return n}return r}AddStoreFrom(n,t,i=null){return(t=this.ToJoin(t),this.GetStoreFrom(n,t)!=null)?this:(this.$RCS_SetStore(t,i,n,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.AddStore,{Path:t,Data:i}),this)}SetStoreFrom(n,t,i){return t!=null&&(t=this.ToJoin(t)),this.$RCS_SetStore(t,i,n,{IsDeepSet:!1}),this.$EventTrigger(this.#EventName.SetStore,{Path:t,Data:i}),this}UpdateStoreFrom(n,t,i){return t!=null&&(t=this.ToJoin(t)),this.$RCS_SetStore(t,i,n,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.UpdateStore,{Path:t,Data:i}),this}ClearStoreFrom(n,t,i){i??={};typeof i=="boolean"&&(i={DeepClear:i});i.DeepClear??=!0;const r=t==null?n:this.GetStoreFrom(n,t);return r==null?this:(this.$RCS_ClearStore(r,i),this)}$RCS_GetStore(n,t,i){if(t==null)return null;n=n.replaceAll(/\[|\]/g,".").replace(/\.+/g,".").replace(/\.$/,"");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==null)return this.$DeepSetObject(t,i),t;if(n=n.replaceAll(/\[|\]/g,".").replace(/\.+/g,".").replace(/\.$/,""),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=t==null||!r.IsDeepSet||i[n]==null||typeof t!="object";return u?(i[n]=t,t):this.$RCS_SetStore(null,t,i[n])}$RCS_ClearStore(n,t){if(typeof n=="object"){if(Array.isArray(n)){n.length=0;return}const i=Object.getOwnPropertyNames(n);for(let r of i)if(!r.match(/^\$/g)){const i=n[r];i!=null&&typeof i!="function"&&(t.DeepClear&&typeof i=="object"?this.$RCS_ClearStore(n[r],t):n[r]=null)}}}$DeepSetObject(n,t){if(n==null){this.ClearStoreFrom(t);return}if(Array.isArray(n)){if(!Array.isArray(t))return;t.length=0;n.forEach(n=>t.push(n));return}t!==n&&this.ForEachObject(n,(n,i)=>{let r=!1;Array.isArray(i)?(t[n]!=null&&Array.isArray(t[n])||(t[n]=[]),r=!0):i!=null&&typeof i=="object"&&((t[n]==null||typeof t[n]!="object")&&(t[n]={}),r=!0);r?this.$DeepSetObject(i,t[n]):t[n]=i})}AddFileStore(n,t){return t??={},this.FileStore[n]==null&&(this.FileStore[n]=t.Multi==!0?[]:new FileItem),this}Files(n,t=null){let i=this.FileStore[n];if(i==null)return[];Array.isArray(i)||(i=[i]);t!=null&&(i=i.filter(n=>t(n)));return i.map(n=>n.File)}File(n,t=null){let i=this.Files(n,t);return i==null||i.length==0?null:i[0]}AddFile(n,t,i="none"){if(t!=null){this.AddFileStore(n);let r=this.FileStore[n];return Array.isArray(t)?Array.isArray(r)?t.forEach(t=>this.AddFile(n,t)):this.AddFile(n,t[0]):(t instanceof FileItem==!1&&(t=new FileItem(t,i)),Array.isArray(r)?r.push(t):r.From(t)),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 if(Array.isArray(i)){let n=i.findIndex(n=>n.FileId==t);n>=0&&i.splice(n,1)}else i.Clear();return this}ClearFile(n){let t=this.FileStore[n];return t==null?this:(Array.isArray(t)?t.splice(0,t.length):t.Clear(),this)}$ProcessApiReturn(n){let t=n.headers.get("content-type");return t.includes("application/json")?n.json():t.includes("text")?n.text():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 FileItem)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{createApp as r,reactive as t,nextTick as u,ref as f}from"vue";import{watch as i}from"vue";export class VueStore extends ApiStore{$VueProxy=null;$VueOption={methods:{},components:{},computed:{}};$VueApp=null;$VueUse=[];$CoreStore="app";$MountedFuncs=[];$SetupFuncs=[];$Directive=[];constructor(){super();this.#Setup()}#Setup(){this.EventAdd_AddApi(n=>{this.AddStore(n.ApiKey)}).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}WithSetup(n){return this.$SetupFuncs.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}WithDirective(n,t){return this.$Directive.push({Name:n,Directive:t}),this}Ref(n){return f(n)}RefsView(t){return this.$VueProxy?this.$VueProxy.$refs[n.ToJoin(t)]:null}}export class VueCommand extends VueStore{$IsInited=false;$CommandMap;$QueryDomName=null;constructor(){super();this.$SetupCommandMap()}WithQueryDomName(n){return this.$QueryDomName=n,Queryer.WithDomName(this.$QueryDomName),this}AddV_Text(t,i){let r=this.$ConvertCommandOption(t,i);if(typeof r.Target!="function"){let t=n.ToJoin(r.Target);/^[A-Za-z_$][A-Za-z0-9_$]*(\.[A-Za-z_$][A-Za-z0-9_$]*)*$/.test(t)&&n.AddStore(r.Target)}return r.FuncAction=!0,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(n,i);return t!=null&&(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/\b(in|of)\b/.test(f)||(u.TargetHead??="(item, index) in "),u.FuncAction=!0,this.$AddCommand(t,"v-for",u),this}AddV_If(n,t){let i=this.$ConvertCommandOption(n,t);return i.FuncAction=!0,this.$AddCommand(n,"v-if",i),this}AddV_ElseIf(n,t){let i=this.$ConvertCommandOption(n,t);return i.FuncAction=!0,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 i.FuncAction=!0,this.$AddCommand(n,"v-show",i),this}AddV_Bind(n,t,i,r){let u=this.$ConvertCommandOption(n,i,r);return u.CommandKey=t,this.$AddCommand(n,"v-bind",u),this}AddV_On(n,t,i,r){let u=this.$ConvertCommandOption(n,i,r);return u.CommandKey=t,this.$AddCommand(n,`v-on`,u),this}Watch(t,r,u={}){let f;return typeof t=="function"?f=i(t,r,u):(n.AddStore(t),f=i(()=>n.GetStore(t),r,u)),f}AddV_Watch(t,i,r={}){return n.WithMounted(()=>{this.Watch(t,i,r)}),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,i);return this.AddV_On(n,"click",r),this}AddV_FilePicker(t,i){let r=null,f=null,o="none",u=!1,e,s;return typeof i=="string"?r=i:(r=i.Store,o=i.ConvertType,u=i.Multiple,e=i.OnSuccess,f=Array.isArray(i.Accept)?i.Accept.join(" "):i.Accept),this.AddFileStore(r,{Multi:u}),this.AddV_Click(t,()=>{let t=document.createElement("input");t.type="file";f!=null&&(t.accept=f);u!=null&&(t.multiple=u);t.onchange=async()=>{if(t.files!=null&&t.files.length!=0){const u=t.files,i=[];for(let t=0;t<u.length;t++){let e=u[t];this.AddFile(r,e,o);let f=n.FileStore[r];Array.isArray(f)||(f=[f]);i.push(...f)}if(e){let n=!0;for(const t of i)if(t instanceof FileItem&&!await t.CheckLoadAsync()){s&&s(t);n=!1;break}n&&e(i)}}};t.click()}),this}AddV_Tree(t,i,r){let e=[],u,f=t instanceof QueryNode;f&&(u=t);let o=f?[]:this.Paths(t);this.$ParseTreeSet(o,i,e);for(let t of e){let e=this.$CommandMap[t.Command];if(e==null){n.$Error(`${t.Command} command is not allowed, path: ${this.ToJoin(t.DomPaths)}`);continue}if(t.StoreValue!==""&&(t.StoreValue!=null||e.AcceptNull==!0)&&(t.StoreValue!="."||e.AcceptSelf==!0)){let o=t.Command=="using",s={Mode:"Multi"};if(f&&(o=!0,s.TargetNode=u),r?.UseDeepQuery&&(o=!0,s.Mode="DeepMulti"),o){let n=[u];if(t.DomPaths.length>0&&(n=Queryer.Query(t.DomPaths,s)),n.length==0)continue;t.Nodes=n}let h=o?t.Nodes:t.DomPaths,i;if(typeof t.StoreValue=="function")i={Target:t.StoreValue,FuncArgs:t.Args};else if(typeof t.StoreValue=="string"||Array.isArray(t.StoreValue))t.StoreValue=="."?i=this.Paths(t.TreePaths,t.DomName):t.StoreValue!=null&&t.StoreValue!=""&&(i=t.StoreValue);else if(i={Target:t.StoreValue?.TargetFunc,FuncArgs:t.StoreValue?.Args},t.StoreValue?.Args!=null){let i=t.StoreValue.Args;t.Args=t.Args==null?n.ToJoin(i,", "):n.ToJoin([t.Args,i],", ")}e.Execute(t,{TargetDom:h,TargetValue:i})}}return this}$ParseTreeSet(n,t,i){const u=/^:(?<next>.+)$/,r=Object.keys(t);for(let f=0;f<r.length;f++){const e=r[f],o=t[e],s=[...n],h=[...n],v=h.pop(),c=e.match(u);if(c){const t=c.groups.next;typeof o=="function"?i.push({Command:"using",StoreValue:o,TreePaths:[...s],DomPaths:[...s,t],DomName:t}):this.$ParseTreeSet([...n,t],o,i);continue}const l=(n,t,i)=>{if(!n.includes(t)||!n.includes(i))return null;const r=n.indexOf(t),u=n.lastIndexOf(i),f=n.slice(r+1,u).trim();return f?.trim()},y=n=>{let i=null,r=null;n.includes("(")&&(i=n.indexOf("("));n.includes("<")&&(r=n.indexOf("<"));let t=null;if(i==null&&r==null)t=n;else if(i==null||r==null){let u=i??r;t=n.slice(0,u)}else{let u=Math.min(i,r);t=n.slice(0,u)}let u=t,f=null;if(t.includes(":")){let n=u.indexOf(":");u=t.slice(0,n);f=t.slice(n+1)}return{Command:u?.trim(),CommandKey:f?.trim()}},p=l(e,"(",")"),w=l(e,"<",">"),a=y(e);i.push({Command:a?.Command,CommandKey:a?.CommandKey,ForKey:w,Args:p,StoreValue:o,TreePaths:h,DomPaths:s,DomName:v});continue}}$SetupCommandMap(){this.$CommandMap={"v-text":{Execute:(t,i)=>{n.AddV_Text(i.TargetDom,i.TargetValue)},AcceptSelf:!0},"v-model":{Execute:(t,i)=>{if(typeof i.TargetValue=="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.TargetValue,{ModelValue:t.CommandKey})},AcceptSelf:!0},"v-for":{Execute:(t,i)=>{n.AddV_For(i.TargetDom,i.TargetValue,t.ForKey)},AcceptSelf:!0},"v-show":{Execute:(t,i)=>{n.AddV_Show(i.TargetDom,i.TargetValue)},AcceptSelf:!0},"v-if":{Execute:(t,i)=>{n.AddV_If(i.TargetDom,i.TargetValue)},AcceptSelf:!0},"v-else-if":{Execute:(t,i)=>{n.AddV_ElseIf(i.TargetDom,i.TargetValue)},AcceptSelf:!0},"v-else":{Execute:(t,i)=>{n.AddV_Else(i.TargetDom)},AcceptNull:!0},"v-bind":{Execute:(t,i)=>{n.AddV_Bind(i.TargetDom,t.CommandKey,i.TargetValue,t.Args)}},"v-on":{Execute:(t,i)=>{n.AddV_On(i.TargetDom,t.CommandKey,i.TargetValue,t.Args)}},"v-slot":{Execute:(t,i)=>{n.AddV_Slot(i.TargetDom,t.CommandKey,i.TargetValue)}},"v-on-mounted":{Execute:(t,i)=>{n.AddV_OnMounted(i.TargetDom,i.TargetValue,t.Args)}},"v-on-unmounted":{Execute:(t,i)=>{n.AddV_OnUnMounted(i.TargetDom,i.TargetValue,t.Args)}},"v-on-ready":{Execute:(t,i)=>{n.AddV_OnReady(i.TargetDom,i.TargetValue,t.Args)}},watch:{Execute:t=>{let i=[t.DomPaths];if(t.CommandKey&&i.push(t.CommandKey.split(":")),i=n.Paths(i),typeof t.StoreValue=="function")n.AddV_Watch(i,t.StoreValue);else{let r=t.StoreValue;n.AddV_Watch(i,r?.CallBack,r?.Option)}}},func:{Execute:t=>{if(typeof t.StoreValue!="function"){n.$Error(`func command value must be a function, path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Function(n.Paths(...t.DomPaths,t.CommandKey??"func"),t.StoreValue)}},using:{Execute:n=>{if(typeof n.StoreValue=="function"){const t=n.Nodes,i=t!=null?t[0]:null;n.StoreValue(n.DomPaths,i,t)}}},store:{Execute:t=>{let i=[t.DomPaths];t.CommandKey!=null&&t.CommandKey!=""&&(t.CommandKey.startsWith("/")?i=[t.CommandKey.replace("/","")]:i.push(t.CommandKey));n.UpdateStore(i,t.StoreValue)}}}}AddV_Property(n,t){return this.AddV_PropertyFrom(this.Store,n,t)}AddV_PropertyFrom(n,t,i){if(t!=null){let r=n;t=this.ToJoin(t);let u=t;if(t.includes(".")){let i=t.split(".");u=i.pop();let f=i.join(".");r=this.GetStoreFrom(n,f,{CreateIfNull:!0})}let f=this.$BaseAddProperty(r,u,i);if(i.Bind){Array.isArray(i.Bind)||(i.Bind=[i.Bind]);for(let n of i.Bind)n!=null&&this.AddV_Property(n,{Target:t});f.Bind=i.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 e=n[t],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:e!=null&&(r[t]=e),r}$ConvertCommandOption(n,t,i){let r;if(t==null||t==".")if(this.IsPathType(n))r={Target:n};else{let t=n,i=t.map(n=>n.DomName);r={Target:i}}else r=typeof t=="string"||typeof t=="function"||Array.isArray(t)?{Target:t}:t;return i&&(r.FuncArgs=i),r.FuncAction??=!1,r.FuncArgs&&(r.FuncAction=!0),r}$AddCommand(n,t,i){if(n!=null&&(Array.isArray(n)||(n=[n]),n.length!=0)){let f=n[0]instanceof QueryNode,u;u=f?n:Queryer.Query(n);let r=i.Target;if(typeof r=="function"){let u=[];if(u=f?n.at(-1).DomName:n,r=this.$GenerateEventFunction(u,r,t),i.FuncArgs){let n=this.ToJoin(i.FuncArgs,",");r+=`(${n})`}else i.FuncAction&&(r+=`()`)}else r=this.ToJoin(r);i.TargetHead&&(r=i.TargetHead+r);i.TargetTail&&(r+=i.TargetTail);i.CommandKey&&(t+=`:${i.CommandKey}`);for(let n=0;n<u.length;n++){let i=u[n],f=i.Dom;this.$SetAttribute(f,t,r)}}}$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){const u=this.$RandomFuncName(`${i}_`);n=this.Paths(n);const r=["event",...n,u].filter(n=>n!=null&&n!="");return this.AddV_Function(r,t),this.ToJoin(r)}}export class VueModel extends VueCommand{$NativeWarn;$IsEnableVueWarn;$MountId=null;Id;constructor(){super();this.Id=this.GenerateId();this.$MountId="app";this.WithVueWarn(!1);this.WithLifeCycleDirective()}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}WithLifeCycleDirective(){this.WithDirective("on-mounted",{mounted(n,t,i){typeof t.value=="function"&&t.value(n,i)}});this.WithDirective("on-unmounted",{unmounted(n,t,i){typeof t.value=="function"&&t.value(n,i)}});this.WithDirective("on-ready",{mounted(n,t,i){typeof t.value=="function"&&u(()=>t.value(n,i))}})}Init(){if(this.$IsInited)return this;this.Store=t(this.Store);const i=this.Store,u=this.$MountedFuncs,f=this.$SetupFuncs;this.$VueApp=r({...this.$VueOption,setup(){for(const t of f){const r=t();r!=null&&n.UpdateStoreFrom(i,null,r)}return i},mounted:()=>{for(const n of u)n()}});for(let n of this.$VueUse)this.$VueApp.use(n);for(let n of this.$Directive)this.$VueApp.directive(n.Name,n.Directive);return this.$VueProxy=this.$VueApp.mount(`#${this.$MountId}`),this.$IsInited=!0,this}Using(n=()=>{}){return n(),this}UsingVueApp(n){return n?.call(this,this.$VueApp),this.$VueApp.directive,this}AddV_OnMounted(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i,r.TargetHead="($el, $vnode) => "),r.FuncAction=!1,this.$AddCommand(n,`v-on-mounted`,r),this}AddV_OnUnMounted(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i,r.TargetHead="($el, $vnode) => "),r.FuncAction=!1,this.$AddCommand(n,`v-on-unmounted`,r),this}AddV_OnReady(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i,r.TargetHead="($el, $vnode) => "),r.FuncAction=!1,this.$AddCommand(n,`v-on-ready`,r),this}}const n=new VueModel;window.Model=n;export{n as Model};
1
+ export class FuncBase{$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){let i=this.Paths(n);(i==null||i.length==0||i[0].length==0)&&this.$Throw("Url can not be null or empty");i=i.map(n=>n.replace(/\/+$/g,"").replace(/^\/+/g,"/"));let r=this.ToJoin(i,"/");return(r==null||r=="")&&(r="/"),t!=null&&(t=this.ConvertTo_UrlQuery(t),r+=`?${t}`),r}$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)}}export class QueryNode extends FuncBase{NodeId;Dom;DomName=null;Parent=null;Children=[];ElementDeep=0;NodeDeep=0;constructor(n){super();this.Dom=n;this.NodeId=this.GenerateIdReplace("")}Query(n,t){return t??={Mode:"Multi"},this.$RCS_QueryChildrens(this,n,t)}QueryCss(n,t){return t??={Mode:"Multi"},this.$RCS_QueryCssChildrens(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)){if(t.length==0)continue;let n=[...t],f=n.shift();const e=f.match(/^(?<key>[^:]+):(?<name>.+)$/);if(e){const n=e.groups.key,t=e.groups.name;switch(n){case"tag":break;default:f=t}}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}$RCS_QueryCssChildrens(n,t,i){let r=[];for(let u of n.Children)if(!u.Dom.matches(t)||(r.push(u),i.Mode!="Multi")){let n=this.$RCS_QueryCssChildrens(u,t,i);n!=null&&r.push(...n)}return r}}export class DomQueryer{$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 QueryNode(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 Queryer.IsInited||Queryer.Init(),t==null?t={Mode:"Multi"}:t instanceof QueryNode&&(t={Mode:"Multi",TargetNode:t}),t.TargetNode==null&&(t.TargetNode=this.$RootNode),t.TargetNode.Query(n,t)}QueryCss(n,t){return Queryer.IsInited||Queryer.Init(),t==null?t={Mode:"Multi"}:t instanceof QueryNode&&(t={Mode:"Multi",TargetNode:t}),t.TargetNode==null&&(t.TargetNode=this.$RootNode),t.TargetNode.QueryCss(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 u=n.getAttribute(this.$QueryDomName),r=new QueryNode(n);return r.DomName=u,r.ElementDeep=i,this.$Nodes.push(r),t!=null&&(r.Parent=t,r.NodeDeep=t.NodeDeep+1,t.Children.push(r)),r}}export var Queryer=new DomQueryer;export class FileItem{OnChangeBase64;OnChangeBuffer;$Store;constructor(n,i="none"){n==null?this.$Store=t({}):(this.$Store=t({FileId:(new FuncBase).GenerateId(),File:n,ConvertType:i,Base64:null,Buffer:null,IsLoaded:!1,IsLoading:!0,Error: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;this.OnChangeBase64?.call(this,this.$Store.Base64)}get Buffer(){return this.$Store.Buffer}set Buffer(n){this.$Store.Buffer=n;this.OnChangeBuffer?.call(this,this.$Store.Buffer)}get InnerStore(){return this.$Store}get IsLoaded(){return this.$Store.IsLoaded}get IsLoading(){return this.$Store.IsLoading}get Error(){return this.$Store.Error}Clear(){this.$Store.Base64=null;this.$Store.Buffer=null;this.$Store.File=null}From(n){this.$Store=n.InnerStore}CheckLoadAsync(){return new Promise((n,t)=>{try{if(this.$Store.IsLoaded||!this.$Store.IsLoading)return n(this.$Store.IsLoaded);const r=setTimeout(()=>{i&&clearInterval(i),this.$Store.Error="timeout",console.error("WaitLoadAsync: timeout"),t(!1)},6e4),i=setInterval(()=>{(this.$Store.IsLoaded||!this.$Store.IsLoading)&&(clearInterval(i),clearTimeout(r),n(this.$Store.IsLoaded))},100)}catch(i){this.$Store.Error=i;console.error(i);t(!1)}})}$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.$Store.IsLoading=!0;this.$ConvertBase64();break;case"buffer":this.$Store.IsLoading=!0;this.$ConvertBuffer();break;default:this.$Store.IsLoaded=!0}}}}$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.$Store.IsLoaded=!0,this.$Store.IsLoading=!1},this}$ConvertBuffer(){let n=new FileReader;n.readAsArrayBuffer(this.File);n.onload=()=>{this.Buffer=n.result,this.$Store.IsLoaded=!0,this.$Store.IsLoading=!1}}}export class ApiStore extends FuncBase{#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=[];constructor(){super();this.SetStore("api",{})}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 ApiStore(){return this.GetStore("api")}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.AddStoreFrom(this.ApiStore,t,{});this.UpdateStoreFrom(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);this.PubApi(n,"IsCalling",!0);r.OnCalling?.call(this,o);t?.OnCalling?.call(this,o);fetch(h,o).then(async i=>{if(!i.ok)throw i;let u=await this.$ProcessApiReturn(i);if(s){r.Export!=!1&&(typeof r.Export=="function"?u=r.Export?.call(this,u,i):this.#ExportSuccessStore!=null&&(u=this.#ExportSuccessStore?.call(this,u,i)));let n=r.ApiKey;this.UpdateStore(n,u)}return this.PubApi(n,"IsSuccess",!0),this.PubApi(n,"IsError",!1),r.OnSuccess?.call(this,u,i),t?.OnSuccess?.call(this,u,i),this.#OnSuccess?.call(this,u,i),{ConvertResult:u,ApiResponse:i}}).catch(i=>{this.PubApi(n,"IsError",!0),this.PubApi(n,"IsSuccess",!1),this.$Error(i.message),r.OnError?.call(this,i),t?.OnError?.call(this,i),this.#OnError?.call(this,i)}).then(i=>{this.PubApi(n,"IsCalling",!1),this.PubApi(n,"IsComplete",!0),i instanceof Object?(r.OnComplete?.call(this,i.ConvertResult,i.ApiResponse),t?.OnComplete?.call(this,i.ConvertResult,i.ApiResponse),this.#OnComplete?.call(this,i.ConvertResult,i.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}AddSubApi(n,t){typeof t=="function"&&(t={NotifyEvent:t});let r={...t};this.AddStoreFrom(this.ApiStore,n,{});let i=this.ApiStore[n];return i.$sub??=[],i.$sub.push(r),this}PubApi(n,t,i){let r=this.ApiStore[n];if(r[t]=i,r.$sub==null||!Array.isArray(r.$sub))return this;for(let n of r.$sub){let i=n;(i.PropertyName==null||i.PropertyName==t)&&i.NotifyEvent({PropertyName:t,ApiStore:r,Value:r[t]})}return this}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)}GetStore(n,t){return this.GetStoreFrom(this.Store,n,t)}AddStore(n,t=null){return this.AddStoreFrom(this.Store,n,t)}SetStore(n,t){return this.SetStoreFrom(this.Store,n,t)}UpdateStore(n,t){return this.UpdateStoreFrom(this.Store,n,t)}ClearStore(n,t){return this.ClearStoreFrom(this.Store,n,t)}GetStoreFrom(n,t,i){typeof i=="boolean"&&(i={Clone:i});i??={};i.Clone??=!1;i.CreateIfNull??=!1;i.DefaultValue==null&&(i.DefaultValue={});let r=n;if(t!=null&&(t=this.ToJoin(t),r=this.$RCS_GetStore(t,n,{CreateIfNull:i.CreateIfNull,DefaultValue:i.DefaultValue})),i.Clone){const n={},t=Object.getOwnPropertyNames(r);for(let u of t)if(!u.match(/^\$/g)){let t=r[u];typeof t=="object"&&(t=this.GetStoreFrom(t,null,i));n[u]=t}return n}return r}AddStoreFrom(n,t,i=null){return(t=this.ToJoin(t),this.GetStoreFrom(n,t)!=null)?this:(this.$RCS_SetStore(t,i,n,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.AddStore,{Path:t,Data:i}),this)}SetStoreFrom(n,t,i){return t!=null&&(t=this.ToJoin(t)),this.$RCS_SetStore(t,i,n,{IsDeepSet:!1}),this.$EventTrigger(this.#EventName.SetStore,{Path:t,Data:i}),this}UpdateStoreFrom(n,t,i){return t!=null&&(t=this.ToJoin(t)),this.$RCS_SetStore(t,i,n,{IsDeepSet:!0}),this.$EventTrigger(this.#EventName.UpdateStore,{Path:t,Data:i}),this}ClearStoreFrom(n,t,i){i??={};typeof i=="boolean"&&(i={DeepClear:i});i.DeepClear??=!0;const r=t==null?n:this.GetStoreFrom(n,t);return r==null?this:(this.$RCS_ClearStore(r,i),this)}$RCS_GetStore(n,t,i){if(t==null)return null;n=n.replaceAll(/\[|\]/g,".").replace(/\.+/g,".").replace(/\.$/,"");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==null)return this.$DeepSetObject(t,i),t;if(n=n.replaceAll(/\[|\]/g,".").replace(/\.+/g,".").replace(/\.$/,""),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=t==null||!r.IsDeepSet||i[n]==null||typeof t!="object";return u?(i[n]=t,t):this.$RCS_SetStore(null,t,i[n])}$RCS_ClearStore(n,t){if(typeof n=="object"){if(Array.isArray(n)){n.length=0;return}const i=Object.getOwnPropertyNames(n);for(let r of i)if(!r.match(/^\$/g)){const i=n[r];i!=null&&typeof i!="function"&&(t.DeepClear&&typeof i=="object"?this.$RCS_ClearStore(n[r],t):n[r]=null)}}}$DeepSetObject(n,t){if(n==null){this.ClearStoreFrom(t);return}if(Array.isArray(n)){if(!Array.isArray(t))return;t.length=0;n.forEach(n=>t.push(n));return}t!==n&&this.ForEachObject(n,(n,i)=>{let r=!1;Array.isArray(i)?(t[n]!=null&&Array.isArray(t[n])||(t[n]=[]),r=!0):i!=null&&typeof i=="object"&&((t[n]==null||typeof t[n]!="object")&&(t[n]={}),r=!0);r?this.$DeepSetObject(i,t[n]):t[n]=i})}AddFileStore(n,t){return t??={},this.FileStore[n]==null&&(this.FileStore[n]=t.Multi==!0?[]:new FileItem),this}Files(n,t=null){let i=this.FileStore[n];if(i==null)return[];Array.isArray(i)||(i=[i]);t!=null&&(i=i.filter(n=>t(n)));return i.map(n=>n.File)}File(n,t=null){let i=this.Files(n,t);return i==null||i.length==0?null:i[0]}AddFile(n,t,i="none"){if(t!=null){this.AddFileStore(n);let r=this.FileStore[n];return Array.isArray(t)?Array.isArray(r)?t.forEach(t=>this.AddFile(n,t)):this.AddFile(n,t[0]):(t instanceof FileItem==!1&&(t=new FileItem(t,i)),Array.isArray(r)?r.push(t):r.From(t)),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 if(Array.isArray(i)){let n=i.findIndex(n=>n.FileId==t);n>=0&&i.splice(n,1)}else i.Clear();return this}ClearFile(n){let t=this.FileStore[n];return t==null?this:(Array.isArray(t)?t.splice(0,t.length):t.Clear(),this)}$ProcessApiReturn(n){let t=n.headers.get("content-type");return t.includes("application/json")?n.json():t.includes("text")?n.text():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 FileItem)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{createApp as r,reactive as t,nextTick as u,ref as f}from"vue";import{watch as i}from"vue";export class VueStore extends ApiStore{$VueProxy=null;$VueOption={methods:{},components:{},computed:{}};$VueApp=null;$VueUse=[];$CoreStore="app";$MountedFuncs=[];$SetupFuncs=[];$Directive=[];constructor(){super();this.#Setup()}#Setup(){this.EventAdd_AddApi(n=>{this.AddStore(n.ApiKey)}).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}WithSetup(n){return this.$SetupFuncs.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}WithDirective(n,t){return this.$Directive.push({Name:n,Directive:t}),this}Ref(n){return f(n)}RefsView(t){return this.$VueProxy?this.$VueProxy.$refs[n.ToJoin(t)]:null}}export class VueCommand extends VueStore{$IsInited=false;$CommandMap;$QueryDomName=null;constructor(){super();this.$SetupCommandMap()}WithQueryDomName(n){return this.$QueryDomName=n,Queryer.WithDomName(this.$QueryDomName),this}AddV_Text(t,i){let r=this.$ConvertCommandOption(t,i);if(typeof r.Target!="function"){let t=n.ToJoin(r.Target);/^[A-Za-z_$][A-Za-z0-9_$]*(\.[A-Za-z_$][A-Za-z0-9_$]*)*$/.test(t)&&n.AddStore(r.Target)}return r.FuncAction=!0,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(n,i);return t!=null&&(r.CommandKey=t),this.$AddCommand(n,`v-slot`,r),this}AddV_For(t,i,r){const 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/\b(in|of)\b/.test(f)||(u.TargetHead??="(item, index) in "),u.FuncAction=!0,this.$AddCommand(t,"v-for",u),this}AddV_If(n,t){typeof t=="boolean"&&(t=`${t}`);const i=this.$ConvertCommandOption(n,t);return i.FuncAction=!0,this.$AddCommand(n,"v-if",i),this}AddV_ElseIf(n,t){typeof t=="boolean"&&(t=`${t}`);const i=this.$ConvertCommandOption(n,t);return i.FuncAction=!0,this.$AddCommand(n,"v-else-if",i),this}AddV_Else(n){const t=this.$ConvertCommandOption(n);return t.Target="",this.$AddCommand(n,"v-else",t),this}AddV_Show(n,t){const i=this.$ConvertCommandOption(n,t);return i.FuncAction=!0,this.$AddCommand(n,"v-show",i),this}AddV_Bind(n,t,i,r){typeof i=="boolean"&&(i=`${i}`);const u=this.$ConvertCommandOption(n,i,r);return u.CommandKey=t,this.$AddCommand(n,"v-bind",u),this}AddV_On(n,t,i,r){const u=this.$ConvertCommandOption(n,i,r);return u.CommandKey=t,this.$AddCommand(n,`v-on`,u),this}Watch(t,r,u={}){let f;return typeof t=="function"?f=i(t,r,u):(n.AddStore(t),f=i(()=>n.GetStore(t),r,u)),f}AddV_Watch(t,i,r={}){return n.WithMounted(()=>{this.Watch(t,i,r)}),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,i);return this.AddV_On(n,"click",r),this}AddV_FilePicker(t,i){let r=null,f=null,o="none",u=!1,e,s;return typeof i=="string"?r=i:(r=i.Store,o=i.ConvertType,u=i.Multiple,e=i.OnSuccess,f=Array.isArray(i.Accept)?i.Accept.join(" "):i.Accept),this.AddFileStore(r,{Multi:u}),this.AddV_Click(t,()=>{let t=document.createElement("input");t.type="file";f!=null&&(t.accept=f);u!=null&&(t.multiple=u);t.onchange=async()=>{if(t.files!=null&&t.files.length!=0){const u=t.files,i=[];for(let t=0;t<u.length;t++){let e=u[t];this.AddFile(r,e,o);let f=n.FileStore[r];Array.isArray(f)||(f=[f]);i.push(...f)}if(e){let n=!0;for(const t of i)if(t instanceof FileItem&&!await t.CheckLoadAsync()){s&&s(t);n=!1;break}n&&e(i)}}};t.click()}),this}AddV_Tree(t,i,r){const e=[],u=t instanceof QueryNode;let f;u&&(f=t);const o=u?[]:this.Paths(t);this.$ParseTreeSet(o,i,e);for(let t of e){const e=this.$CommandMap[t.Command];if(e==null){n.$Error(`${t.Command} command is not allowed, path: ${this.ToJoin(t.DomPaths)}`);continue}if(t.StoreValue!==""&&(t.StoreValue!=null||e.AcceptNull==!0)&&(t.StoreValue!="."||e.AcceptSelf==!0)){const s={Mode:"Multi"};let o=t.Command=="using";if(u&&(o=!0,s.TargetNode=f),r?.UseDeepQuery&&(o=!0,s.Mode="DeepMulti"),o){let n=[f];if(t.DomPaths.length>0&&(n=Queryer.Query(t.DomPaths,s)),n.length==0)continue;t.Nodes=n}const h=o?t.Nodes:t.DomPaths;let i;if(typeof t.StoreValue=="function")i={Target:t.StoreValue,FuncArgs:t.Args};else if(typeof t.StoreValue=="string"||Array.isArray(t.StoreValue))t.StoreValue=="."?i=this.Paths(t.TreePaths,t.DomName):t.StoreValue!=null&&t.StoreValue!=""&&(i=t.StoreValue);else if(typeof t.StoreValue=="object"){if(i={Target:t.StoreValue?.TargetFunc,FuncArgs:t.StoreValue?.Args},t.StoreValue?.Args!=null){const i=t.StoreValue.Args;t.Args=t.Args==null?n.ToJoin(i,", "):n.ToJoin([t.Args,i],", ")}}else i=`${t.StoreValue}`;e.Execute(t,{TargetDom:h,TargetValue:i})}}return this}$ParseTreeSet(n,t,i){const u=/^:(?<next>.+)$/,r=Object.keys(t);for(let f=0;f<r.length;f++){const e=r[f],o=t[e],s=[...n],h=[...n],v=h.pop(),c=e.match(u);if(c){const t=c.groups.next;typeof o=="function"?i.push({Command:"using",StoreValue:o,TreePaths:[...s],DomPaths:[...s,t],DomName:t}):this.$ParseTreeSet([...n,t],o,i);continue}const l=(n,t,i)=>{if(!n.includes(t)||!n.includes(i))return null;const r=n.indexOf(t),u=n.lastIndexOf(i),f=n.slice(r+1,u).trim();return f?.trim()},y=n=>{let i=null,r=null;n.includes("(")&&(i=n.indexOf("("));n.includes("<")&&(r=n.indexOf("<"));let t=null;if(i==null&&r==null)t=n;else if(i==null||r==null){let u=i??r;t=n.slice(0,u)}else{let u=Math.min(i,r);t=n.slice(0,u)}let u=t,f=null;if(t.includes(":")){let n=u.indexOf(":");u=t.slice(0,n);f=t.slice(n+1)}return{Command:u?.trim(),CommandKey:f?.trim()}},p=l(e,"(",")"),w=l(e,"<",">"),a=y(e);i.push({Command:a?.Command,CommandKey:a?.CommandKey,ForKey:w,Args:p,StoreValue:o,TreePaths:h,DomPaths:s,DomName:v});continue}}$SetupCommandMap(){this.$CommandMap={"v-text":{Execute:(t,i)=>{n.AddV_Text(i.TargetDom,i.TargetValue)},AcceptSelf:!0},"v-model":{Execute:(t,i)=>{if(typeof i.TargetValue=="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.TargetValue,{ModelValue:t.CommandKey})},AcceptSelf:!0},"v-for":{Execute:(t,i)=>{n.AddV_For(i.TargetDom,i.TargetValue,t.ForKey)},AcceptSelf:!0},"v-show":{Execute:(t,i)=>{n.AddV_Show(i.TargetDom,i.TargetValue)},AcceptSelf:!0},"v-if":{Execute:(t,i)=>{n.AddV_If(i.TargetDom,i.TargetValue)},AcceptSelf:!0},"v-else-if":{Execute:(t,i)=>{n.AddV_ElseIf(i.TargetDom,i.TargetValue)},AcceptSelf:!0},"v-else":{Execute:(t,i)=>{n.AddV_Else(i.TargetDom)},AcceptNull:!0},"v-bind":{Execute:(t,i)=>{n.AddV_Bind(i.TargetDom,t.CommandKey,i.TargetValue,t.Args)}},"v-on":{Execute:(t,i)=>{n.AddV_On(i.TargetDom,t.CommandKey,i.TargetValue,t.Args)}},"v-slot":{Execute:(t,i)=>{n.AddV_Slot(i.TargetDom,t.CommandKey,i.TargetValue)}},"v-on-mounted":{Execute:(t,i)=>{n.AddV_OnMounted(i.TargetDom,i.TargetValue,t.Args)}},"v-on-unmounted":{Execute:(t,i)=>{n.AddV_OnUnMounted(i.TargetDom,i.TargetValue,t.Args)}},"v-on-ready":{Execute:(t,i)=>{n.AddV_OnReady(i.TargetDom,i.TargetValue,t.Args)}},watch:{Execute:t=>{let i=[t.DomPaths];if(t.CommandKey&&i.push(t.CommandKey.split(":")),i=n.Paths(i),typeof t.StoreValue=="function")n.AddV_Watch(i,t.StoreValue);else{let r=t.StoreValue;n.AddV_Watch(i,r?.CallBack,r?.Option)}}},func:{Execute:t=>{if(typeof t.StoreValue!="function"){n.$Error(`func command value must be a function, path: ${this.ToJoin(t.DomPaths)}`);return}n.AddV_Function(n.Paths(...t.DomPaths,t.CommandKey??"func"),t.StoreValue)}},using:{Execute:n=>{if(typeof n.StoreValue=="function"){const t=n.Nodes,i=t!=null?t[0]:null;n.StoreValue(n.DomPaths,i,t)}}},store:{Execute:t=>{let i=[t.DomPaths];t.CommandKey!=null&&t.CommandKey!=""&&(t.CommandKey.startsWith("/")?i=[t.CommandKey.replace("/","")]:i.push(t.CommandKey));n.UpdateStore(i,t.StoreValue)}}}}AddV_Property(n,t){return this.AddV_PropertyFrom(this.Store,n,t)}AddV_PropertyFrom(n,t,i){if(t!=null){let r=n;t=this.ToJoin(t);let u=t;if(t.includes(".")){let i=t.split(".");u=i.pop();let f=i.join(".");r=this.GetStoreFrom(n,f,{CreateIfNull:!0})}let f=this.$BaseAddProperty(r,u,i);if(i.Bind){Array.isArray(i.Bind)||(i.Bind=[i.Bind]);for(let n of i.Bind)n!=null&&this.AddV_Property(n,{Target:t});f.Bind=i.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 e=n[t],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:e!=null&&(r[t]=e),r}$ConvertCommandOption(n,t,i){let r;if(t==null||t==".")if(this.IsPathType(n))r={Target:n};else{let t=n,i=t.map(n=>n.DomName);r={Target:i}}else r=typeof t=="string"||typeof t=="function"||Array.isArray(t)?{Target:t}:t;return i&&(r.FuncArgs=i),r.FuncAction??=!1,r.FuncArgs&&(r.FuncAction=!0),r}$AddCommand(n,t,i){if(n!=null&&(Array.isArray(n)||(n=[n]),n.length!=0)){let f=n[0]instanceof QueryNode,u;u=f?n:Queryer.Query(n);let r=i.Target;if(typeof r=="function"){let u=[];if(u=f?n.at(-1).DomName:n,r=this.$GenerateEventFunction(u,r,t),i.FuncArgs){let n=this.ToJoin(i.FuncArgs,",");r+=`(${n})`}else i.FuncAction&&(r+=`()`)}else r=this.ToJoin(r);i.TargetHead&&(r=i.TargetHead+r);i.TargetTail&&(r+=i.TargetTail);i.CommandKey&&(t+=`:${i.CommandKey}`);for(let n=0;n<u.length;n++){let i=u[n],f=i.Dom;this.$SetAttribute(f,t,r)}}}$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){const u=this.$RandomFuncName(`${i}_`);n=this.Paths(n);const r=["event",...n,u].filter(n=>n!=null&&n!="");return this.AddV_Function(r,t),this.ToJoin(r)}}export class VueModel extends VueCommand{$NativeWarn;$IsEnableVueWarn;$MountId=null;Id;constructor(){super();this.Id=this.GenerateId();this.$MountId="app";this.WithVueWarn(!1);this.WithLifeCycleDirective()}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}WithLifeCycleDirective(){this.WithDirective("on-mounted",{mounted(n,t,i){typeof t.value=="function"&&t.value(n,i)}});this.WithDirective("on-unmounted",{unmounted(n,t,i){typeof t.value=="function"&&t.value(n,i)}});this.WithDirective("on-ready",{mounted(n,t,i){typeof t.value=="function"&&u(()=>t.value(n,i))}})}Init(){if(this.$IsInited)return this;this.Store=t(this.Store);const i=this.Store,u=this.$MountedFuncs,f=this.$SetupFuncs;this.$VueApp=r({...this.$VueOption,setup(){for(const t of f){const r=t();r!=null&&n.UpdateStoreFrom(i,null,r)}return i},mounted:()=>{for(const n of u)n()}});for(let n of this.$VueUse)this.$VueApp.use(n);for(let n of this.$Directive)this.$VueApp.directive(n.Name,n.Directive);return this.$VueProxy=this.$VueApp.mount(`#${this.$MountId}`),this.$IsInited=!0,this}Using(n=()=>{}){return n(),this}UsingVueApp(n){return n?.call(this,this.$VueApp),this.$VueApp.directive,this}AddV_OnMounted(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i,r.TargetHead="($el, $vnode) => "),r.FuncAction=!1,this.$AddCommand(n,`v-on-mounted`,r),this}AddV_OnUnMounted(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i,r.TargetHead="($el, $vnode) => "),r.FuncAction=!1,this.$AddCommand(n,`v-on-unmounted`,r),this}AddV_OnReady(n,t,i){let r=this.$ConvertCommandOption(n,t);return i&&(r.FuncArgs=i,r.TargetHead="($el, $vnode) => "),r.FuncAction=!1,this.$AddCommand(n,`v-on-ready`,r),this}}const n=new VueModel;window.Model=n;export{n as Model};
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
- "names":["FuncBase","$NavigateToFunc","$DefaultDateJoinChar","constructor","WithDateTextJoinChar","WithNavigateTo","NavigateToFunc","JoinChar","GenerateId","replace","char","RandomValue","crypto","getRandomValues","Uint8Array","Id","toString","GenerateIdReplace","FillString","replaceAll","GenerateUrl","Url","UrlParam","UrlPaths","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","NodeId","Dom","DomName","Parent","Children","ElementDeep","NodeDeep","super","Query","$RCS_QueryChildrens","QueryCss","Selector","$RCS_QueryCssChildrens","querySelector","SelectorAll","querySelectorAll","TargetNode","Results","NodeItem","Names","FirstName","shift","pathRegex","key","groups","name","FindChildren","Mode","ChildrenResult","matches","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","getAttribute","NewNode","FileItem","OnChangeBase64","OnChangeBuffer","$Store","File","ConvertType","reactive","$ConvertFile","FileId","Base64","Buffer","InnerStore","IsLoaded","IsLoading","Clear","From","CheckLoadAsync","Promise","resolve","reject","timeout","setTimeout","timer","clearInterval","setInterval","clearTimeout","e","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","SetStore","ApiDomain","OnEventName","#EventName","Store","GetStore","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","AddStoreFrom","UpdateStoreFrom","$EventTrigger","ApiCall","$BaseApiCall","ApiCall_Form","IsFormRequest","Api","ParamQuery","ParamBody","Body","ParamFile","IsUpdateStore","FetchRequest","$GenerateFetchRequest","PubApi","OnCalling","fetch","then","ApiResponse","ok","ConvertResult","$ProcessApiReturn","Export","StoreKey","UpdateStore","OnSuccess","catch","ex","message","OnError","OnComplete","Header","Headers","set","Method","SendForm","$ConvertTo_FormData","FormData","$ConvertTo_FormFile","method","JSON","stringify","AddSubApi","SubApiStore","GetApiStore","$sub","PropertyName","Sub","SubStore","NotifyEvent","UseFormJsonBody","JsonBodyKey","FormDataBody","ConvertParam","EventAdd_AddApi","EventFunc","$EventAdd","EventAdd_UpdateStore","EventAdd_AddStore","AddStore","EventAdd_SetStore","EventName","OnFunc","EventArg","EventFuncs","StorePath","GetStoreFrom","StoreData","SetStoreFrom","ClearStore","ClearStoreFrom","SourceStore","Clone","CreateIfNull","DefaultValue","FindStore","$RCS_GetStore","CloneResult","$RCS_SetStore","sourceStore","storePath","option","DeepClear","targetStore","$RCS_ClearStore","StorePaths","split","FirstKey","NextStore","NextKey","$DeepSetObject","IsAwaysSet","IsDeepSet","allProperty","value","setData","forEach","item","isGoNext","AddFileStore","FileStoreKey","Multi","Files","WhereFunc","GetFiles","filter","AddFile","RemoveFile","DeleteFileId","DeleteIndex","findIndex","splice","ClearFile","GetContentType","headers","get","json","text","reslove","RootUrl","ConvertFormData","Form","append","FileParam","$AppendFileToFormData","Keys","FileKey","FileValue","FileData","createApp","nextTick","ref","watch","VueStore","$VueProxy","$VueOption","$VueApp","$VueUse","$CoreStore","$MountedFuncs","$SetupFuncs","$Directive","#Setup","Arg","WithMounted","WithVueOption","VueOption","mountedFunc","WithSetup","setupFunc","WithComponent","Component","components","WithVueUse","UsePlugin","WithDirective","Name","Directive","Ref","RefsView","refName","$refs","Model","VueCommand","$IsInited","$CommandMap","$SetupCommandMap","WithQueryDomName","AddV_Text","SetOption","$ConvertCommandOption","FullPaths","test","FuncAction","$AddCommand","AddV_Model","CommandKey","ModelValue","AddV_Slot","SlotKey","AddV_For","ForKey","TargetHead","AddV_If","AddV_ElseIf","AddV_Else","AddV_Show","AddV_Bind","BindKey","Args","AddV_On","Watch","WatchPath","Callback","Handle","AddV_Watch","AddV_Function","FuncName","methods","AddV_OnChange","ChangeFunc","AddV_Click","AddV_FilePicker","FileStorePath","Accept","Multiple","TempInput","type","accept","multiple","onchange","files","FileItems","PickFile","fileData","isChecked","AddV_Tree","TreeRoot","TreeSet","AllSetInfo","RootNode","UsingRootNode","RootPaths","$ParseTreeSet","Info","ActionSet","Command","DomPaths","StoreValue","AcceptNull","AcceptSelf","NeedQuery","QueryOption","UseDeepQuery","Nodes","TargetDom","TargetValue","TreePaths","TargetFunc","TargetArgs","Execute","TreeNodeReges","SetPair","pop","TreeNodeResult","NextDomName","next","GetCommandPart","FindCommand","StartChar","EndChar","StartIndex","indexOf","EndIndex","lastIndexOf","slice","trim","GetCommandWithKey","ArgsStart","ForKeyStart","CommandWithKey","MinIndex","Math","min","CommandKeyStart","AddV_OnMounted","AddV_OnUnMounted","AddV_OnReady","WatchPaths","CallBack","nodes","node","info","targetPath","startsWith","AddV_Property","PropertyPath","AddV_PropertyFrom","PropertyKey","PropertyPaths","FindPath","SetProperty","$BaseAddProperty","Bind","BindPath","PropertyStore","ThisModel","PropertyContent","$get","$set","OriginalValue","defineProperty","$properties","PropertyOption","NodeNames","FuncArgs","IsFromQueryNode","FuncDomName","at","$GenerateEventFunction","TargetTail","$SetAttribute","AttrName","AttrValue","warn","setAttribute","$RandomFuncName","BaseFuncName","domName","eventFunc","command","funcName","fullFuncPath","VueModel","$NativeWarn","$IsEnableVueWarn","$MountId","WithVueWarn","WithLifeCycleDirective","WithMountId","MountId","Enable","toLowerCase","mounted","el","binding","vnode","unmounted","getStore","mountedFuncs","setupFuncs","setup","func","funcStore","use","directive","mount","UseFunc","UsingVueApp"]
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","UrlPaths","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","NodeId","Dom","DomName","Parent","Children","ElementDeep","NodeDeep","super","Query","$RCS_QueryChildrens","QueryCss","Selector","$RCS_QueryCssChildrens","querySelector","SelectorAll","querySelectorAll","TargetNode","Results","NodeItem","Names","FirstName","shift","pathRegex","key","groups","name","FindChildren","Mode","ChildrenResult","matches","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","getAttribute","NewNode","FileItem","OnChangeBase64","OnChangeBuffer","$Store","File","ConvertType","reactive","$ConvertFile","FileId","Base64","Buffer","InnerStore","IsLoaded","IsLoading","Clear","From","CheckLoadAsync","Promise","resolve","reject","timeout","setTimeout","timer","clearInterval","setInterval","clearTimeout","e","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","SetStore","ApiDomain","OnEventName","#EventName","Store","GetStore","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","AddStoreFrom","UpdateStoreFrom","$EventTrigger","ApiCall","$BaseApiCall","ApiCall_Form","IsFormRequest","Api","ParamQuery","ParamBody","Body","ParamFile","IsUpdateStore","FetchRequest","$GenerateFetchRequest","PubApi","OnCalling","fetch","then","ApiResponse","ok","ConvertResult","$ProcessApiReturn","Export","StoreKey","UpdateStore","OnSuccess","catch","ex","message","OnError","OnComplete","Header","Headers","set","Method","SendForm","$ConvertTo_FormData","FormData","$ConvertTo_FormFile","method","JSON","stringify","AddSubApi","SubApiStore","GetApiStore","$sub","PropertyName","Sub","SubStore","NotifyEvent","UseFormJsonBody","JsonBodyKey","FormDataBody","ConvertParam","EventAdd_AddApi","EventFunc","$EventAdd","EventAdd_UpdateStore","EventAdd_AddStore","AddStore","EventAdd_SetStore","EventName","OnFunc","EventArg","EventFuncs","StorePath","GetStoreFrom","StoreData","SetStoreFrom","ClearStore","ClearStoreFrom","sourceStore","storePath","option","Clone","CreateIfNull","DefaultValue","findStore","$RCS_GetStore","cloneResult","allKeys","targetStore","SourceStore","$RCS_SetStore","DeepClear","$RCS_ClearStore","FindStore","StorePaths","split","FirstKey","NextStore","NextKey","$DeepSetObject","IsAwaysSet","IsDeepSet","allProperty","value","setData","forEach","item","isGoNext","AddFileStore","FileStoreKey","Multi","Files","WhereFunc","GetFiles","filter","AddFile","RemoveFile","DeleteFileId","DeleteIndex","findIndex","splice","ClearFile","GetContentType","headers","get","json","text","reslove","RootUrl","ConvertFormData","Form","append","FileParam","$AppendFileToFormData","Keys","FileKey","FileValue","FileData","createApp","nextTick","ref","watch","VueStore","$VueProxy","$VueOption","$VueApp","$VueUse","$CoreStore","$MountedFuncs","$SetupFuncs","$Directive","#Setup","Arg","WithMounted","WithVueOption","VueOption","mountedFunc","WithSetup","setupFunc","WithComponent","Component","components","WithVueUse","UsePlugin","WithDirective","Name","Directive","Ref","RefsView","refName","$refs","Model","VueCommand","$IsInited","$CommandMap","$SetupCommandMap","WithQueryDomName","AddV_Text","SetOption","$ConvertCommandOption","FullPaths","test","FuncAction","$AddCommand","AddV_Model","CommandKey","ModelValue","AddV_Slot","SlotKey","AddV_For","domName","forKey","setOption","TargetHead","AddV_If","AddV_ElseIf","AddV_Else","AddV_Show","AddV_Bind","bindKey","args","AddV_On","eventName","Watch","WatchPath","Callback","Handle","AddV_Watch","AddV_Function","FuncName","methods","AddV_OnChange","ChangeFunc","Args","AddV_Click","AddV_FilePicker","FileStorePath","Accept","Multiple","TempInput","type","accept","multiple","onchange","files","FileItems","PickFile","fileData","isChecked","AddV_Tree","treeRoot","treeSet","allSetInfo","usingRootNode","rootNode","rootPaths","$ParseTreeSet","info","actionSet","Command","DomPaths","StoreValue","AcceptNull","AcceptSelf","queryOption","needQuery","UseDeepQuery","queryNodes","Nodes","targetDom","targetValue","TreePaths","TargetFunc","targetArgs","Execute","TreeSet","TreeNodeReges","SetPair","pop","TreeNodeResult","NextDomName","next","GetCommandPart","FindCommand","StartChar","EndChar","StartIndex","indexOf","EndIndex","lastIndexOf","slice","trim","GetCommandWithKey","ArgsStart","ForKeyStart","CommandWithKey","MinIndex","Math","min","CommandKeyStart","ForKey","Info","TargetDom","TargetValue","AddV_OnMounted","AddV_OnUnMounted","AddV_OnReady","WatchPaths","CallBack","nodes","node","targetPath","startsWith","AddV_Property","PropertyPath","AddV_PropertyFrom","PropertyKey","PropertyPaths","FindPath","SetProperty","$BaseAddProperty","Bind","BindPath","PropertyStore","ThisModel","PropertyContent","$get","$set","OriginalValue","defineProperty","$properties","PropertyOption","NodeNames","FuncArgs","IsFromQueryNode","FuncDomName","at","$GenerateEventFunction","TargetTail","$SetAttribute","AttrName","AttrValue","warn","setAttribute","$RandomFuncName","BaseFuncName","eventFunc","command","funcName","fullFuncPath","VueModel","$NativeWarn","$IsEnableVueWarn","$MountId","WithVueWarn","WithLifeCycleDirective","WithMountId","MountId","Enable","toLowerCase","mounted","el","binding","vnode","unmounted","getStore","mountedFuncs","setupFuncs","setup","func","funcStore","use","directive","mount","UseFunc","UsingVueApp"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rugal.tu/vuemodel3",
3
- "version": "1.6.2",
3
+ "version": "1.6.4",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
package/src/VueModel.d.ts CHANGED
@@ -237,7 +237,7 @@ export declare class ApiStore extends FuncBase {
237
237
  SetStore<TStore = any>(StorePath: PathType, StoreData: TStore): this;
238
238
  UpdateStore<TStore = any>(StorePath: PathType, StoreData: TStore): this;
239
239
  ClearStore(StorePath: PathType, Option?: boolean | ClearStoreOption): this;
240
- GetStoreFrom<TStore = any>(SourceStore: any, StorePath: PathType, Option?: GetStoreOption<TStore> | boolean): TStore;
240
+ GetStoreFrom<TStore = any>(sourceStore: any, storePath: PathType, option?: GetStoreOption<TStore> | boolean): TStore;
241
241
  AddStoreFrom<TStore = any>(SourceStore: any, StorePath: PathType, StoreData?: TStore): this;
242
242
  SetStoreFrom<TStore = any>(SourceStore: any, StorePath: PathType, StoreData: TStore): this;
243
243
  UpdateStoreFrom<TStore = any>(SourceStore: any, StorePath: PathType, StoreData: TStore): this;
@@ -320,10 +320,10 @@ export type TreeSetType = {
320
320
  [VForKeyArgsCmd: `v-for<${string}>(${string})`]: Function | TreeSetFuncOption;
321
321
  [VForArgsCmd: `v-for(${string})`]: Function | TreeSetFuncOption;
322
322
  [VForArgsKeyCmd: `v-for(${string})<${string}>`]: Function | TreeSetFuncOption;
323
- 'v-show'?: '.' | PathType | Function | TreeSetFuncOption;
323
+ 'v-show'?: '.' | PathType | Function | TreeSetFuncOption | boolean;
324
324
  [VShowArgsCmd: `v-show(${string})`]: Function | TreeSetFuncOption;
325
- 'v-if'?: '.' | PathType | Function | TreeSetFuncOption;
326
- 'v-else-if'?: '.' | PathType | Function | TreeSetFuncOption;
325
+ 'v-if'?: '.' | PathType | Function | TreeSetFuncOption | boolean;
326
+ 'v-else-if'?: '.' | PathType | Function | TreeSetFuncOption | boolean;
327
327
  'v-else'?: null;
328
328
  [VIfArgsCmd: `v-if(${string})`]: Function | TreeSetFuncOption;
329
329
  [VElseIfArgsCmd: `v-else-if(${string})`]: Function | TreeSetFuncOption;
@@ -331,7 +331,7 @@ export type TreeSetType = {
331
331
  [VSlotArgsCmd: `v-slot(${string})`]: Function | TreeSetFuncOption;
332
332
  [VSlotKeyCmd: `v-slot:${string}`]: PathType | Function | TreeSetFuncOption;
333
333
  [VSlotKeyArgsCmd: `v-slot:${string}(${string})`]: Function | TreeSetFuncOption;
334
- 'v-bind'?: PathType | Function | TreeSetFuncOption;
334
+ 'v-bind'?: PathType | Function | TreeSetFuncOption | boolean;
335
335
  [VBindCmd: `v-bind:${string}`]: PathType | Function | TreeSetFuncOption;
336
336
  [VBindArgsCmd: `v-bind:${string}(${string})`]: Function | TreeSetFuncOption;
337
337
  'v-on:change'?: PathType | Function | TreeSetFuncOption;
@@ -396,20 +396,20 @@ export declare class VueCommand extends VueStore {
396
396
  AddV_Text(DomName: PathType | QueryNode[], Option: AddCommandOption): this;
397
397
  AddV_Model(DomName: PathType | QueryNode[], StorePath: PathType, Option?: AddV_ModelOption): this;
398
398
  AddV_Slot(DomName: PathType | QueryNode[], SlotKey: string, Option: AddCommandOption): this;
399
- AddV_For(DomName: PathType | QueryNode[], Option?: AddCommandOption, ForKey?: PathType): this;
400
- AddV_If(DomName: PathType | QueryNode[], Option: AddCommandOption): this;
401
- AddV_ElseIf(DomName: PathType | QueryNode[], Option: AddCommandOption): this;
402
- AddV_Else(DomName: PathType | QueryNode[]): this;
403
- AddV_Show(DomName: PathType | QueryNode[], Option: AddCommandOption): this;
404
- AddV_Bind(DomName: PathType | QueryNode[], BindKey: string, Option: AddCommandOption, Args?: string): this;
405
- AddV_On(DomName: PathType | QueryNode[], EventName: string, Option: AddCommandOption, Args?: string): this;
399
+ AddV_For(domName: PathType | QueryNode[], option?: AddCommandOption, forKey?: PathType): this;
400
+ AddV_If(domName: PathType | QueryNode[], option: AddCommandOption | boolean): this;
401
+ AddV_ElseIf(domName: PathType | QueryNode[], option: AddCommandOption | boolean): this;
402
+ AddV_Else(domName: PathType | QueryNode[]): this;
403
+ AddV_Show(domName: PathType | QueryNode[], option: AddCommandOption): this;
404
+ AddV_Bind(domName: PathType | QueryNode[], bindKey: string, option: AddCommandOption | boolean, args?: string): this;
405
+ AddV_On(domName: PathType | QueryNode[], eventName: string, option: AddCommandOption, args?: string): this;
406
406
  Watch(WatchPath: PathType | (() => any), Callback: WatchCallback, Option?: WatchOptions): WatchHandle;
407
407
  AddV_Watch(WatchPath: PathType | (() => any), Callback: WatchCallback, Option?: WatchOptions): this;
408
408
  AddV_Function(FuncName: PathType, Func: Function): this;
409
409
  AddV_OnChange(DomName: PathType | QueryNode[], ChangeFunc: AddCommandOption, Args?: string): this;
410
410
  AddV_Click(DomName: PathType | QueryNode[], Option: AddCommandOption, Args?: string): this;
411
411
  AddV_FilePicker(DomName: PathType | QueryNode[], Option: AddV_FilePickerOption): this;
412
- AddV_Tree(TreeRoot: PathType | QueryNode, TreeSet: TreeSetType, Option?: AddV_TreeOption): this;
412
+ AddV_Tree(treeRoot: PathType | QueryNode, treeSet: TreeSetType, option?: AddV_TreeOption): this;
413
413
  private $ParseTreeSet;
414
414
  private $SetupCommandMap;
415
415
  AddV_Property(PropertyPath: PathType, Option: AddPropertyType): this;
package/src/VueModel.ts CHANGED
@@ -487,8 +487,7 @@ type DateTextOption = {
487
487
  DateJoinChar?: string,
488
488
  Format?: string,
489
489
  };
490
- type DateTimeTextOption = DateTextOption & {
491
- };
490
+ type DateTimeTextOption = DateTextOption & {};
492
491
  //#endregion
493
492
 
494
493
  //#region Store Data Type
@@ -1091,34 +1090,41 @@ export class ApiStore extends FuncBase {
1091
1090
  return this.ClearStoreFrom(this.Store, StorePath, Option);
1092
1091
  }
1093
1092
 
1094
- public GetStoreFrom<TStore = any>(SourceStore: any, StorePath: PathType, Option?: GetStoreOption<TStore> | boolean): TStore {
1095
- if (typeof Option == 'boolean')
1096
- Option = { Clone: Option };
1093
+ public GetStoreFrom<TStore = any>(sourceStore: any, storePath: PathType, option?: GetStoreOption<TStore> | boolean): TStore {
1094
+ if (typeof option == 'boolean')
1095
+ option = { Clone: option };
1097
1096
 
1098
- Option ??= {};
1099
- Option.Clone ??= false;
1100
- Option.CreateIfNull ??= false;
1101
- if (Option.DefaultValue == null)
1102
- Option.DefaultValue = {} as any;
1097
+ option ??= {};
1098
+ option.Clone ??= false;
1099
+ option.CreateIfNull ??= false;
1100
+ if (option.DefaultValue == null)
1101
+ option.DefaultValue = {} as any;
1102
+
1103
+ let findStore = sourceStore;
1104
+ if (storePath != null) {
1105
+ storePath = this.ToJoin(storePath);
1106
+ findStore = this.$RCS_GetStore(storePath as string, sourceStore, {
1107
+ CreateIfNull: option.CreateIfNull,
1108
+ DefaultValue: option.DefaultValue as any,
1109
+ });
1110
+ }
1103
1111
 
1104
- StorePath = this.ToJoin(StorePath);
1105
- let FindStore = this.$RCS_GetStore(StorePath, SourceStore, {
1106
- CreateIfNull: Option.CreateIfNull,
1107
- DefaultValue: Option.DefaultValue as any,
1108
- });
1112
+ if (option.Clone) {
1113
+ const cloneResult: any = {};
1114
+ const allKeys = Object.getOwnPropertyNames(findStore);
1115
+ for (let key of allKeys) {
1116
+ if (key.match(/^\$/g))
1117
+ continue;
1109
1118
 
1110
- if (Option.Clone) {
1111
- let CloneResult: any = {};
1112
- let AllKeys = Object.getOwnPropertyNames(FindStore);
1113
- for (let Key of AllKeys) {
1114
- if (!Key.match(/^\$/g))
1115
- CloneResult[Key] = FindStore[Key];
1119
+ let targetStore = findStore[key];
1120
+ if (typeof targetStore === 'object')
1121
+ targetStore = this.GetStoreFrom(targetStore, null, option);
1122
+ cloneResult[key] = targetStore;
1116
1123
  }
1117
-
1118
- return CloneResult;
1124
+ return cloneResult;
1119
1125
  }
1120
1126
 
1121
- return FindStore as TStore;
1127
+ return findStore as TStore;
1122
1128
  }
1123
1129
  public AddStoreFrom<TStore = any>(SourceStore: any, StorePath: PathType, StoreData: TStore = null) {
1124
1130
  StorePath = this.ToJoin(StorePath);
@@ -1596,11 +1602,11 @@ export type TreeSetType = {
1596
1602
  [VForArgsCmd: `v-for(${string})`]: Function | TreeSetFuncOption,
1597
1603
  [VForArgsKeyCmd: `v-for(${string})<${string}>`]: Function | TreeSetFuncOption,
1598
1604
 
1599
- 'v-show'?: '.' | PathType | Function | TreeSetFuncOption,
1605
+ 'v-show'?: '.' | PathType | Function | TreeSetFuncOption | boolean,
1600
1606
  [VShowArgsCmd: `v-show(${string})`]: Function | TreeSetFuncOption,
1601
1607
 
1602
- 'v-if'?: '.' | PathType | Function | TreeSetFuncOption,
1603
- 'v-else-if'?: '.' | PathType | Function | TreeSetFuncOption,
1608
+ 'v-if'?: '.' | PathType | Function | TreeSetFuncOption | boolean,
1609
+ 'v-else-if'?: '.' | PathType | Function | TreeSetFuncOption | boolean,
1604
1610
  'v-else'?: null,
1605
1611
  [VIfArgsCmd: `v-if(${string})`]: Function | TreeSetFuncOption,
1606
1612
  [VElseIfArgsCmd: `v-else-if(${string})`]: Function | TreeSetFuncOption,
@@ -1610,7 +1616,7 @@ export type TreeSetType = {
1610
1616
  [VSlotKeyCmd: `v-slot:${string}`]: PathType | Function | TreeSetFuncOption,
1611
1617
  [VSlotKeyArgsCmd: `v-slot:${string}(${string})`]: Function | TreeSetFuncOption,
1612
1618
 
1613
- 'v-bind'?: PathType | Function | TreeSetFuncOption,
1619
+ 'v-bind'?: PathType | Function | TreeSetFuncOption | boolean,
1614
1620
  [VBindCmd: `v-bind:${string}`]: PathType | Function | TreeSetFuncOption,
1615
1621
  [VBindArgsCmd: `v-bind:${string}(${string})`]: Function | TreeSetFuncOption,
1616
1622
 
@@ -1722,60 +1728,66 @@ export class VueCommand extends VueStore {
1722
1728
  //#endregion
1723
1729
 
1724
1730
  //#region Path/Function Command
1725
- public AddV_For(DomName: PathType | QueryNode[], Option?: AddCommandOption, ForKey?: PathType) {
1726
- let SetOption = this.$ConvertCommandOption(DomName, Option);
1727
- if (ForKey) {
1728
- ForKey = this.ToJoin(ForKey);
1729
- if (!/^\(/.test(ForKey))
1730
- ForKey = `(${ForKey}`;
1731
- if (!/\)$/.test(ForKey))
1732
- ForKey += ')';
1733
-
1734
- SetOption.TargetHead = `${ForKey} in `;
1731
+ public AddV_For(domName: PathType | QueryNode[], option?: AddCommandOption, forKey?: PathType) {
1732
+ const setOption = this.$ConvertCommandOption(domName, option);
1733
+ if (forKey) {
1734
+ forKey = this.ToJoin(forKey);
1735
+ if (!/^\(/.test(forKey))
1736
+ forKey = `(${forKey}`;
1737
+ if (!/\)$/.test(forKey))
1738
+ forKey += ')';
1739
+
1740
+ setOption.TargetHead = `${forKey} in `;
1735
1741
  }
1736
- let Target = Model.ToJoin(SetOption.Target);
1737
- if (!/\b(in|of)\b/.test(Target))
1738
- SetOption.TargetHead ??= '(item, index) in ';
1742
+ let target = Model.ToJoin(setOption.Target);
1743
+ if (!/\b(in|of)\b/.test(target))
1744
+ setOption.TargetHead ??= '(item, index) in ';
1739
1745
 
1740
- SetOption.FuncAction = true;
1741
- this.$AddCommand(DomName, 'v-for', SetOption);
1746
+ setOption.FuncAction = true;
1747
+ this.$AddCommand(domName, 'v-for', setOption);
1742
1748
  return this;
1743
1749
  }
1744
- public AddV_If(DomName: PathType | QueryNode[], Option: AddCommandOption) {
1745
- let SetOption = this.$ConvertCommandOption(DomName, Option);
1746
- SetOption.FuncAction = true;
1747
- this.$AddCommand(DomName, 'v-if', SetOption);
1750
+ public AddV_If(domName: PathType | QueryNode[], option: AddCommandOption | boolean) {
1751
+ if (typeof option === 'boolean')
1752
+ option = `${option}`;
1753
+ const setOption = this.$ConvertCommandOption(domName, option);
1754
+ setOption.FuncAction = true;
1755
+ this.$AddCommand(domName, 'v-if', setOption);
1748
1756
  return this;
1749
1757
  }
1750
- public AddV_ElseIf(DomName: PathType | QueryNode[], Option: AddCommandOption) {
1751
- let SetOption = this.$ConvertCommandOption(DomName, Option);
1752
- SetOption.FuncAction = true;
1753
- this.$AddCommand(DomName, 'v-else-if', SetOption);
1758
+ public AddV_ElseIf(domName: PathType | QueryNode[], option: AddCommandOption | boolean) {
1759
+ if (typeof option === 'boolean')
1760
+ option = `${option}`;
1761
+ const setOption = this.$ConvertCommandOption(domName, option);
1762
+ setOption.FuncAction = true;
1763
+ this.$AddCommand(domName, 'v-else-if', setOption);
1754
1764
  return this;
1755
1765
  }
1756
- public AddV_Else(DomName: PathType | QueryNode[]) {
1757
- let SetOption = this.$ConvertCommandOption(DomName);
1758
- SetOption.Target = '';
1759
- this.$AddCommand(DomName, 'v-else', SetOption);
1766
+ public AddV_Else(domName: PathType | QueryNode[]) {
1767
+ const setOption = this.$ConvertCommandOption(domName);
1768
+ setOption.Target = '';
1769
+ this.$AddCommand(domName, 'v-else', setOption);
1760
1770
  return this;
1761
1771
  }
1762
1772
 
1763
- public AddV_Show(DomName: PathType | QueryNode[], Option: AddCommandOption) {
1764
- let SetOption = this.$ConvertCommandOption(DomName, Option);
1765
- SetOption.FuncAction = true;
1766
- this.$AddCommand(DomName, 'v-show', SetOption);
1773
+ public AddV_Show(domName: PathType | QueryNode[], option: AddCommandOption) {
1774
+ const setOption = this.$ConvertCommandOption(domName, option);
1775
+ setOption.FuncAction = true;
1776
+ this.$AddCommand(domName, 'v-show', setOption);
1767
1777
  return this;
1768
1778
  }
1769
- public AddV_Bind(DomName: PathType | QueryNode[], BindKey: string, Option: AddCommandOption, Args?: string) {
1770
- let SetOption = this.$ConvertCommandOption(DomName, Option, Args);
1771
- SetOption.CommandKey = BindKey;
1772
- this.$AddCommand(DomName, 'v-bind', SetOption);
1779
+ public AddV_Bind(domName: PathType | QueryNode[], bindKey: string, option: AddCommandOption | boolean, args?: string) {
1780
+ if (typeof option === 'boolean')
1781
+ option = `${option}`;
1782
+ const setOption = this.$ConvertCommandOption(domName, option, args);
1783
+ setOption.CommandKey = bindKey;
1784
+ this.$AddCommand(domName, 'v-bind', setOption);
1773
1785
  return this;
1774
1786
  }
1775
- public AddV_On(DomName: PathType | QueryNode[], EventName: string, Option: AddCommandOption, Args?: string) {
1776
- let SetOption = this.$ConvertCommandOption(DomName, Option, Args);
1777
- SetOption.CommandKey = EventName;
1778
- this.$AddCommand(DomName, `v-on`, SetOption);
1787
+ public AddV_On(domName: PathType | QueryNode[], eventName: string, option: AddCommandOption, args?: string) {
1788
+ const setOption = this.$ConvertCommandOption(domName, option, args);
1789
+ setOption.CommandKey = eventName;
1790
+ this.$AddCommand(domName, `v-on`, setOption);
1779
1791
  return this;
1780
1792
  }
1781
1793
  //#endregion
@@ -1886,84 +1898,89 @@ export class VueCommand extends VueStore {
1886
1898
  return this;
1887
1899
  }
1888
1900
 
1889
- public AddV_Tree(TreeRoot: PathType | QueryNode, TreeSet: TreeSetType, Option?: AddV_TreeOption): this {
1890
- let AllSetInfo: TreeSetInfo[] = [];
1891
- let RootNode: QueryNode;
1892
- let UsingRootNode = TreeRoot instanceof QueryNode;
1893
- if (UsingRootNode)
1894
- RootNode = TreeRoot as QueryNode;
1895
- let RootPaths = UsingRootNode ? [] : this.Paths(TreeRoot)
1896
- this.$ParseTreeSet(RootPaths, TreeSet, AllSetInfo);
1897
- for (let Info of AllSetInfo) {
1898
- let ActionSet = this.$CommandMap[Info.Command];
1899
- if (ActionSet == null) {
1900
- Model.$Error(`${Info.Command} command is not allowed, path: ${this.ToJoin(Info.DomPaths)}`);
1901
+ public AddV_Tree(treeRoot: PathType | QueryNode, treeSet: TreeSetType, option?: AddV_TreeOption): this {
1902
+ const allSetInfo: TreeSetInfo[] = [];
1903
+ const usingRootNode = treeRoot instanceof QueryNode;
1904
+
1905
+ let rootNode: QueryNode;
1906
+ if (usingRootNode)
1907
+ rootNode = treeRoot as QueryNode;
1908
+
1909
+ const rootPaths = usingRootNode ? [] : this.Paths(treeRoot)
1910
+ this.$ParseTreeSet(rootPaths, treeSet, allSetInfo);
1911
+ for (let info of allSetInfo) {
1912
+ const actionSet = this.$CommandMap[info.Command];
1913
+ if (actionSet == null) {
1914
+ Model.$Error(`${info.Command} command is not allowed, path: ${this.ToJoin(info.DomPaths)}`);
1901
1915
  continue;
1902
1916
  }
1903
1917
 
1904
- if (Info.StoreValue === '' || (Info.StoreValue == null && ActionSet.AcceptNull != true))
1918
+ if (info.StoreValue === '' || (info.StoreValue == null && actionSet.AcceptNull != true))
1905
1919
  continue;
1906
1920
 
1907
- if (Info.StoreValue == '.' && ActionSet.AcceptSelf != true)
1921
+ if (info.StoreValue == '.' && actionSet.AcceptSelf != true)
1908
1922
  continue;
1909
1923
 
1910
- let NeedQuery = Info.Command == 'using';
1911
- let QueryOption: QueryOption = {
1924
+ const queryOption: QueryOption = {
1912
1925
  Mode: 'Multi',
1913
1926
  };
1914
- if (UsingRootNode) {
1915
- NeedQuery = true;
1916
- QueryOption.TargetNode = RootNode;
1927
+ let needQuery = info.Command == 'using';
1928
+ if (usingRootNode) {
1929
+ needQuery = true;
1930
+ queryOption.TargetNode = rootNode;
1917
1931
  }
1918
- if (Option?.UseDeepQuery) {
1919
- NeedQuery = true;
1920
- QueryOption.Mode = 'DeepMulti';
1932
+ if (option?.UseDeepQuery) {
1933
+ needQuery = true;
1934
+ queryOption.Mode = 'DeepMulti';
1921
1935
  }
1922
- if (NeedQuery) {
1923
- let QueryNodes = [RootNode];
1924
- if (Info.DomPaths.length > 0)
1925
- QueryNodes = Queryer.Query(Info.DomPaths, QueryOption);
1936
+ if (needQuery) {
1937
+ let queryNodes = [rootNode];
1938
+ if (info.DomPaths.length > 0)
1939
+ queryNodes = Queryer.Query(info.DomPaths, queryOption);
1926
1940
 
1927
- if (QueryNodes.length == 0)
1941
+ if (queryNodes.length == 0)
1928
1942
  continue;
1929
1943
 
1930
- Info.Nodes = QueryNodes;
1944
+ info.Nodes = queryNodes;
1931
1945
  }
1932
1946
 
1933
- let TargetDom: PathType | QueryNode[] = NeedQuery ? Info.Nodes : Info.DomPaths;
1934
- let TargetValue: PathType | Function | CommandOption;
1947
+ const targetDom: PathType | QueryNode[] = needQuery ? info.Nodes : info.DomPaths;
1948
+ let targetValue: PathType | Function | CommandOption;
1935
1949
 
1936
- if (typeof Info.StoreValue === 'function') {
1937
- TargetValue = {
1938
- Target: Info.StoreValue,
1939
- FuncArgs: Info.Args,
1950
+ if (typeof info.StoreValue === 'function') {
1951
+ targetValue = {
1952
+ Target: info.StoreValue,
1953
+ FuncArgs: info.Args,
1940
1954
  };
1941
1955
  }
1942
1956
  else {
1943
- if (typeof Info.StoreValue === 'string' || Array.isArray(Info.StoreValue)) {
1944
- if (Info.StoreValue == '.')
1945
- TargetValue = this.Paths(Info.TreePaths, Info.DomName);
1946
- else if (Info.StoreValue != null && Info.StoreValue != '')
1947
- TargetValue = Info.StoreValue;
1957
+ if (typeof info.StoreValue === 'string' || Array.isArray(info.StoreValue)) {
1958
+ if (info.StoreValue == '.')
1959
+ targetValue = this.Paths(info.TreePaths, info.DomName);
1960
+ else if (info.StoreValue != null && info.StoreValue != '')
1961
+ targetValue = info.StoreValue;
1948
1962
  }
1949
- else {
1950
- TargetValue = {
1951
- Target: Info.StoreValue?.TargetFunc,
1952
- FuncArgs: Info.StoreValue?.Args,
1963
+ else if (typeof info.StoreValue === 'object') {
1964
+ targetValue = {
1965
+ Target: info.StoreValue?.TargetFunc,
1966
+ FuncArgs: info.StoreValue?.Args,
1953
1967
  } as CommandOption;
1954
- if (Info.StoreValue?.Args != null) {
1955
- let TargetArgs = Info.StoreValue.Args;
1956
- if (Info.Args == null)
1957
- Info.Args = Model.ToJoin(TargetArgs, ', ');
1968
+ if (info.StoreValue?.Args != null) {
1969
+ const targetArgs = info.StoreValue.Args;
1970
+ if (info.Args == null)
1971
+ info.Args = Model.ToJoin(targetArgs, ', ');
1958
1972
  else
1959
- Info.Args = Model.ToJoin([Info.Args, TargetArgs], ', ');
1973
+ info.Args = Model.ToJoin([info.Args, targetArgs], ', ');
1960
1974
  }
1961
1975
  }
1976
+ else {
1977
+ targetValue = `${info.StoreValue}`;
1978
+ }
1962
1979
  }
1963
1980
 
1964
- ActionSet.Execute(Info, {
1965
- TargetDom,
1966
- TargetValue,
1981
+ actionSet.Execute(info, {
1982
+ TargetDom: targetDom,
1983
+ TargetValue: targetValue,
1967
1984
  });
1968
1985
  }
1969
1986
  return this;