clickgo 3.1.2-dev11 → 3.1.3-dev12

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.
Files changed (103) hide show
  1. package/dist/app/demo/app.js +0 -73
  2. package/dist/app/demo/config.json +109 -0
  3. package/dist/app/demo/form/control/button/button.js +12 -11
  4. package/dist/app/demo/form/control/button/button.xml +6 -6
  5. package/dist/app/demo/form/control/check/check.js +14 -10
  6. package/dist/app/demo/form/control/file/file.js +15 -13
  7. package/dist/app/demo/form/control/{overflow/overflow.css → flow/flow.css} +0 -0
  8. package/dist/app/demo/form/control/flow/flow.js +64 -0
  9. package/dist/app/demo/form/control/{overflow/overflow.scss → flow/flow.scss} +0 -0
  10. package/dist/app/demo/form/control/flow/flow.xml +101 -0
  11. package/dist/app/demo/form/control/form/form.js +1 -1
  12. package/dist/app/demo/form/control/form/form.xml +3 -3
  13. package/dist/app/demo/form/control/img/img.xml +2 -2
  14. package/dist/app/demo/form/control/list/list.js +95 -75
  15. package/dist/app/demo/form/control/list/list.xml +15 -11
  16. package/dist/app/demo/form/control/marquee/marquee.js +12 -10
  17. package/dist/app/demo/form/control/menu/menu.js +10 -6
  18. package/dist/app/demo/form/control/monaco/monaco.js +50 -60
  19. package/dist/app/demo/form/control/monaco/monaco.xml +6 -5
  20. package/dist/app/demo/form/control/property/property.js +131 -127
  21. package/dist/app/demo/form/control/radio/radio.js +9 -5
  22. package/dist/app/demo/form/control/scroll/scroll.js +16 -12
  23. package/dist/app/demo/form/control/scroll/scroll.xml +10 -10
  24. package/dist/app/demo/form/control/select/select.js +132 -71
  25. package/dist/app/demo/form/control/select/select.xml +69 -67
  26. package/dist/app/demo/form/control/tab/tab.js +21 -20
  27. package/dist/app/demo/form/control/tab/tab.xml +2 -2
  28. package/dist/app/demo/form/control/text/text.js +53 -45
  29. package/dist/app/demo/form/control/text/text.xml +3 -3
  30. package/dist/app/demo/form/control/{greatview/greatview.css → vflow/vflow.css} +0 -0
  31. package/dist/app/demo/form/control/vflow/vflow.js +79 -0
  32. package/dist/app/demo/form/control/{greatview/greatview.scss → vflow/vflow.scss} +0 -0
  33. package/dist/app/demo/form/control/{greatview/greatview.xml → vflow/vflow.xml} +25 -25
  34. package/dist/app/demo/form/event/form/form.js +58 -56
  35. package/dist/app/demo/form/event/form/form.xml +3 -3
  36. package/dist/app/demo/form/event/screen/screen.js +30 -28
  37. package/dist/app/demo/form/event/screen/screen.xml +2 -2
  38. package/dist/app/demo/form/event/task/task.js +31 -31
  39. package/dist/app/demo/form/event/task/task.xml +3 -3
  40. package/dist/app/demo/form/main.js +161 -5
  41. package/dist/app/demo/form/main.xml +36 -35
  42. package/dist/app/demo/form/method/aform/aform.xml +3 -2
  43. package/dist/app/demo/form/method/core/core.js +11 -8
  44. package/dist/app/demo/form/method/core/core.xml +2 -1
  45. package/dist/app/demo/form/method/dom/dom.js +91 -99
  46. package/dist/app/demo/form/method/dom/dom.xml +6 -7
  47. package/dist/app/demo/form/method/form/form.js +8 -8
  48. package/dist/app/demo/form/method/form/form.xml +4 -4
  49. package/dist/app/demo/form/method/fs/fs.js +34 -33
  50. package/dist/app/demo/form/method/fs/fs.xml +1 -1
  51. package/dist/app/demo/form/method/fs/text.js +12 -12
  52. package/dist/app/demo/form/method/native/native.js +50 -0
  53. package/dist/app/demo/form/method/native/native.xml +12 -0
  54. package/dist/app/demo/form/method/system/system.js +50 -0
  55. package/dist/app/demo/form/method/system/system.xml +11 -0
  56. package/dist/app/demo/form/method/task/task.js +59 -61
  57. package/dist/app/demo/form/method/task/task.xml +4 -6
  58. package/dist/app/demo/form/method/theme/theme.js +14 -14
  59. package/dist/app/demo/form/method/tool/tool.js +29 -28
  60. package/dist/app/demo/form/method/tool/tool.xml +3 -3
  61. package/dist/app/demo/form/method/zip/zip.js +46 -41
  62. package/dist/app/demo/form/method/zip/zip.xml +1 -1
  63. package/dist/app/task/app.js +0 -25
  64. package/dist/app/task/config.json +29 -0
  65. package/dist/app/task/form/bar/bar.js +1 -1
  66. package/dist/app/task/form/bar/bar.xml +1 -1
  67. package/dist/clickgo.js +1 -1
  68. package/dist/clickgo.ts +1 -1
  69. package/dist/control/common.cgc +0 -0
  70. package/dist/control/form.cgc +0 -0
  71. package/dist/control/monaco.cgc +0 -0
  72. package/dist/control/property.cgc +0 -0
  73. package/dist/control/task.cgc +0 -0
  74. package/dist/global.css +1 -1
  75. package/dist/index.js +3 -3
  76. package/dist/index.ts +3 -3
  77. package/dist/lib/control.js +70 -104
  78. package/dist/lib/control.ts +97 -123
  79. package/dist/lib/core.js +108 -252
  80. package/dist/lib/core.ts +122 -268
  81. package/dist/lib/dom.js +564 -483
  82. package/dist/lib/dom.ts +703 -546
  83. package/dist/lib/form.js +146 -138
  84. package/dist/lib/form.ts +108 -86
  85. package/dist/lib/fs.js +1 -1
  86. package/dist/lib/fs.ts +1 -1
  87. package/dist/lib/native.js +135 -8
  88. package/dist/lib/native.ts +175 -11
  89. package/dist/lib/task.js +294 -158
  90. package/dist/lib/task.ts +326 -172
  91. package/dist/lib/tool.js +48 -1
  92. package/dist/lib/tool.ts +61 -0
  93. package/dist/lib/zip.ts +2 -0
  94. package/dist/theme/familiar.cgt +0 -0
  95. package/package.json +1 -1
  96. package/types/index.d.ts +23 -24
  97. package/dist/app/demo/form/control/greatview/greatview.js +0 -92
  98. package/dist/app/demo/form/control/overflow/overflow.js +0 -70
  99. package/dist/app/demo/form/control/overflow/overflow.xml +0 -98
  100. package/dist/app/demo/form/control/view/view.css +0 -1
  101. package/dist/app/demo/form/control/view/view.js +0 -73
  102. package/dist/app/demo/form/control/view/view.scss +0 -18
  103. package/dist/app/demo/form/control/view/view.xml +0 -94
package/dist/lib/form.js CHANGED
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.hideLauncher = exports.showLauncher = exports.flash = exports.confirm = exports.dialog = exports.create = exports.remove = exports.doFocusAndPopEvent = exports.hidePop = exports.showPop = exports.removeFromPop = exports.appendToPop = exports.hideNotify = exports.notifyProgress = exports.notify = exports.hideDrag = exports.moveDrag = exports.showDrag = exports.hideRectangle = exports.showRectangle = exports.moveRectangle = exports.showCircular = exports.getRectByBorder = exports.getMaxZIndexID = exports.changeFocus = exports.getList = exports.send = exports.get = exports.getTaskId = exports.refreshMaxPosition = exports.bindDrag = exports.bindResize = exports.close = exports.max = exports.min = exports.launcherRoot = exports.simpleSystemTaskRoot = exports.AbstractForm = void 0;
12
+ exports.hideLauncher = exports.showLauncher = exports.flash = exports.confirm = exports.dialog = exports.create = exports.remove = exports.doFocusAndPopEvent = exports.hidePop = exports.showPop = exports.removeFromPop = exports.appendToPop = exports.hideNotify = exports.notifyProgress = exports.notify = exports.hideDrag = exports.moveDrag = exports.showDrag = exports.hideRectangle = exports.showRectangle = exports.moveRectangle = exports.showCircular = exports.getRectByBorder = exports.getMaxZIndexID = exports.changeFocus = exports.getFocus = exports.getList = exports.send = exports.get = exports.getTaskId = exports.refreshMaxPosition = exports.bindDrag = exports.bindResize = exports.close = exports.max = exports.min = exports.elements = exports.launcherRoot = exports.simpleSystemTaskRoot = exports.AbstractForm = void 0;
13
13
  const clickgo = require("../clickgo");
14
14
  const core = require("./core");
15
15
  const task = require("./task");
@@ -18,6 +18,7 @@ const dom = require("./dom");
18
18
  const control = require("./control");
19
19
  const fs = require("./fs");
20
20
  const native = require("./native");
21
+ let focusId = null;
21
22
  const info = {
22
23
  'lastId': 0,
23
24
  'lastZIndex': 999,
@@ -55,6 +56,7 @@ const info = {
55
56
  };
56
57
  class AbstractForm {
57
58
  constructor() {
59
+ this.isNativeSync = false;
58
60
  this._firstShow = true;
59
61
  this.dialogResult = '';
60
62
  }
@@ -96,6 +98,9 @@ class AbstractForm {
96
98
  };
97
99
  const cdata = Object.entries(frm);
98
100
  for (const item of cdata) {
101
+ if (item[0] === 'access') {
102
+ continue;
103
+ }
99
104
  code.data[item[0]] = item[1];
100
105
  }
101
106
  if (!layout) {
@@ -174,7 +179,7 @@ class AbstractForm {
174
179
  return (_d = (_b = (_a = task.list[this.taskId].locale.data[this.locale]) === null || _a === void 0 ? void 0 : _a[key]) !== null && _b !== void 0 ? _b : (_c = task.list[this.taskId].locale.data['en']) === null || _c === void 0 ? void 0 : _c[key]) !== null && _d !== void 0 ? _d : 'LocaleError';
175
180
  };
176
181
  }
177
- classPrepend() {
182
+ get classPrepend() {
178
183
  return (cla) => {
179
184
  if (typeof cla !== 'string') {
180
185
  return cla;
@@ -264,6 +269,9 @@ class AbstractForm {
264
269
  const v = this;
265
270
  v.$refs.form.$data.isShow = false;
266
271
  }
272
+ close() {
273
+ close(this.formId);
274
+ }
267
275
  onBeforeCreate() {
268
276
  return;
269
277
  }
@@ -343,7 +351,7 @@ const popInfo = {
343
351
  'elList': [],
344
352
  'lastZIndex': 0
345
353
  };
346
- const elements = {
354
+ exports.elements = {
347
355
  'wrap': document.createElement('div'),
348
356
  'list': document.createElement('div'),
349
357
  'popList': document.createElement('div'),
@@ -358,41 +366,33 @@ const elements = {
358
366
  'init': function () {
359
367
  this.wrap.id = 'cg-wrap';
360
368
  document.getElementsByTagName('body')[0].appendChild(this.wrap);
361
- if (clickgo.isImmersion()) {
362
- this.wrap.addEventListener('mouseenter', function () {
363
- native.invoke('cg-mouse-ignore', native.getToken(), false);
364
- });
365
- this.wrap.addEventListener('mouseleave', function () {
366
- native.invoke('cg-mouse-ignore', native.getToken(), true);
367
- });
368
- }
369
- this.list.id = 'cg-form-list';
370
- this.wrap.appendChild(this.list);
371
- this.list.addEventListener('touchmove', function (e) {
369
+ this.wrap.addEventListener('touchmove', function (e) {
372
370
  if (e.cancelable) {
373
371
  e.preventDefault();
374
372
  }
375
373
  }, {
376
374
  'passive': false
377
375
  });
378
- this.list.addEventListener('wheel', function (e) {
376
+ this.wrap.addEventListener('wheel', function (e) {
379
377
  e.preventDefault();
380
378
  }, {
381
379
  'passive': false
382
380
  });
383
- this.list.addEventListener('contextmenu', function (e) {
381
+ this.wrap.addEventListener('contextmenu', function (e) {
384
382
  e.preventDefault();
385
383
  });
384
+ if (clickgo.isImmersion()) {
385
+ this.wrap.addEventListener('mouseenter', function () {
386
+ native.invoke('cg-mouse-ignore', native.getToken(), false);
387
+ });
388
+ this.wrap.addEventListener('mouseleave', function () {
389
+ native.invoke('cg-mouse-ignore', native.getToken(), true);
390
+ });
391
+ }
392
+ this.list.id = 'cg-form-list';
393
+ this.wrap.appendChild(this.list);
386
394
  this.popList.id = 'cg-pop-list';
387
- this.popList.addEventListener('contextmenu', function (e) {
388
- e.preventDefault();
389
- });
390
395
  this.wrap.appendChild(this.popList);
391
- this.popList.addEventListener('touchmove', function (e) {
392
- e.preventDefault();
393
- }, {
394
- 'passive': false
395
- });
396
396
  this.circular.id = 'cg-circular';
397
397
  this.wrap.appendChild(this.circular);
398
398
  this.rectangle.setAttribute('data-pos', '');
@@ -405,25 +405,9 @@ const elements = {
405
405
  this.dragIcon = this.drag.childNodes[0];
406
406
  this.wrap.appendChild(this.drag);
407
407
  this.system.id = 'cg-system';
408
- this.system.addEventListener('contextmenu', function (e) {
409
- e.preventDefault();
410
- });
411
408
  this.wrap.appendChild(this.system);
412
- this.system.addEventListener('touchmove', function (e) {
413
- e.preventDefault();
414
- }, {
415
- 'passive': false
416
- });
417
409
  this.simpleSystemtask.id = 'cg-simpletask';
418
- this.simpleSystemtask.addEventListener('contextmenu', function (e) {
419
- e.preventDefault();
420
- });
421
410
  this.wrap.appendChild(this.simpleSystemtask);
422
- this.simpleSystemtask.addEventListener('touchmove', function (e) {
423
- e.preventDefault();
424
- }, {
425
- 'passive': false
426
- });
427
411
  const simpletaskApp = clickgo.vue.createApp({
428
412
  'template': '<div v-for="(item, formId) of forms" class="cg-simpletask-item" @click="click(parseInt(formId))"><div v-if="item.icon" class="cg-simpletask-icon" :style="{\'background-image\': \'url(\' + item.icon + \')\'}"></div><div>{{item.title}}</div></div>',
429
413
  'data': function () {
@@ -436,14 +420,14 @@ const elements = {
436
420
  handler: function () {
437
421
  const length = Object.keys(this.forms).length;
438
422
  if (length > 0) {
439
- if (elements.simpleSystemtask.style.bottom !== '0px') {
440
- elements.simpleSystemtask.style.bottom = '0px';
423
+ if (exports.elements.simpleSystemtask.style.bottom !== '0px') {
424
+ exports.elements.simpleSystemtask.style.bottom = '0px';
441
425
  core.trigger('screenResize');
442
426
  }
443
427
  }
444
428
  else {
445
- if (elements.simpleSystemtask.style.bottom === '0px') {
446
- elements.simpleSystemtask.style.bottom = '-46px';
429
+ if (exports.elements.simpleSystemtask.style.bottom === '0px') {
430
+ exports.elements.simpleSystemtask.style.bottom = '-46px';
447
431
  core.trigger('screenResize');
448
432
  }
449
433
  }
@@ -462,20 +446,12 @@ const elements = {
462
446
  });
463
447
  simpletaskApp.mount('#cg-simpletask');
464
448
  this.launcher.id = 'cg-launcher';
465
- this.launcher.addEventListener('contextmenu', function (e) {
466
- e.preventDefault();
467
- });
468
449
  this.wrap.appendChild(this.launcher);
469
- this.launcher.addEventListener('touchmove', function (e) {
470
- e.preventDefault();
471
- }, {
472
- 'passive': false
473
- });
474
450
  const waiting = function () {
475
451
  if (!core.config) {
476
452
  setTimeout(function () {
477
453
  waiting();
478
- }, 2000);
454
+ }, 150);
479
455
  return;
480
456
  }
481
457
  const launcherApp = clickgo.vue.createApp({
@@ -640,7 +616,7 @@ const elements = {
640
616
  waiting();
641
617
  }
642
618
  };
643
- elements.init();
619
+ exports.elements.init();
644
620
  function changeState(state, formId) {
645
621
  const tid = getTaskId(formId);
646
622
  const t = task.list[tid];
@@ -712,8 +688,8 @@ function bindDrag(e) {
712
688
  exports.bindDrag = bindDrag;
713
689
  function refreshMaxPosition() {
714
690
  const area = core.getAvailArea();
715
- for (let i = 0; i < elements.list.children.length; ++i) {
716
- const el = elements.list.children.item(i);
691
+ for (let i = 0; i < exports.elements.list.children.length; ++i) {
692
+ const el = exports.elements.list.children.item(i);
717
693
  const ef = el.children.item(0);
718
694
  if (ef.dataset.cgMax === undefined) {
719
695
  continue;
@@ -732,7 +708,7 @@ function refreshMaxPosition() {
732
708
  }
733
709
  exports.refreshMaxPosition = refreshMaxPosition;
734
710
  function getTaskId(formId) {
735
- const formElement = elements.list.querySelector(`[data-form-id='${formId}']`);
711
+ const formElement = exports.elements.list.querySelector(`[data-form-id='${formId}']`);
736
712
  if (!formElement) {
737
713
  return 0;
738
714
  }
@@ -789,8 +765,12 @@ function getList(taskId) {
789
765
  return list;
790
766
  }
791
767
  exports.getList = getList;
768
+ function getFocus() {
769
+ return focusId;
770
+ }
771
+ exports.getFocus = getFocus;
792
772
  function changeFocus(formId = 0) {
793
- var _a, _b;
773
+ var _a;
794
774
  if (typeof formId !== 'number') {
795
775
  notify({
796
776
  'title': 'Warning',
@@ -799,37 +779,31 @@ function changeFocus(formId = 0) {
799
779
  });
800
780
  return;
801
781
  }
802
- const focusElement = document.querySelector('#cg-form-list > [data-form-focus]');
803
- if (focusElement) {
804
- const dataFormId = focusElement.getAttribute('data-form-id');
805
- if (dataFormId) {
806
- const dataFormIdNumber = parseInt(dataFormId);
807
- if (dataFormIdNumber === formId) {
808
- return;
809
- }
810
- else {
811
- const taskId = parseInt((_a = focusElement.getAttribute('data-task-id')) !== null && _a !== void 0 ? _a : '0');
812
- const t = task.list[taskId];
813
- t.forms[dataFormIdNumber].vapp._container.removeAttribute('data-form-focus');
814
- t.forms[dataFormIdNumber].vroot._formFocus = false;
815
- core.trigger('formBlurred', taskId, dataFormIdNumber);
816
- }
782
+ const dataFormId = getFocus();
783
+ if (dataFormId) {
784
+ if (dataFormId === formId) {
785
+ return;
817
786
  }
818
787
  else {
819
- return;
788
+ const t = task.list[task.getFocus()];
789
+ t.forms[dataFormId].vapp._container.removeAttribute('data-form-focus');
790
+ t.forms[dataFormId].vroot._formFocus = false;
791
+ core.trigger('formBlurred', t.id, dataFormId);
820
792
  }
821
793
  }
794
+ focusId = null;
795
+ task.setFocus();
822
796
  if (formId === 0) {
823
797
  return;
824
798
  }
825
- const el = document.querySelector(`#cg-form-list > [data-form-id='${formId}']`);
799
+ const el = exports.elements.list.querySelector(`.cg-form-wrap[data-form-id='${formId}']`);
826
800
  if (!el) {
827
801
  return;
828
802
  }
829
803
  if (el.children.item(0).dataset.cgMin !== undefined) {
830
804
  min(formId);
831
805
  }
832
- const taskId = parseInt((_b = el.getAttribute('data-task-id')) !== null && _b !== void 0 ? _b : '0');
806
+ const taskId = parseInt((_a = el.getAttribute('data-task-id')) !== null && _a !== void 0 ? _a : '0');
833
807
  const t = task.list[taskId];
834
808
  if (t.runtime.dialogFormIds.length) {
835
809
  const dialogFormId = t.runtime.dialogFormIds[t.runtime.dialogFormIds.length - 1];
@@ -844,6 +818,8 @@ function changeFocus(formId = 0) {
844
818
  }
845
819
  t.forms[dialogFormId].vapp._container.dataset.formFocus = '';
846
820
  t.forms[dialogFormId].vroot._formFocus = true;
821
+ focusId = dialogFormId;
822
+ task.setFocus(t.id);
847
823
  core.trigger('formFocused', taskId, dialogFormId);
848
824
  if (dialogFormId !== formId) {
849
825
  clickgo.form.flash(dialogFormId, taskId);
@@ -858,6 +834,8 @@ function changeFocus(formId = 0) {
858
834
  }
859
835
  t.forms[formId].vapp._container.dataset.formFocus = '';
860
836
  t.forms[formId].vroot._formFocus = true;
837
+ focusId = formId;
838
+ task.setFocus(t.id);
861
839
  core.trigger('formFocused', taskId, formId);
862
840
  }
863
841
  }
@@ -866,8 +844,8 @@ function getMaxZIndexID(out = {}) {
866
844
  var _a, _b;
867
845
  let zIndex = 0;
868
846
  let formId = null;
869
- for (let i = 0; i < elements.list.children.length; ++i) {
870
- const formWrap = elements.list.children.item(i);
847
+ for (let i = 0; i < exports.elements.list.children.length; ++i) {
848
+ const formWrap = exports.elements.list.children.item(i);
871
849
  const formInner = formWrap.children.item(0);
872
850
  if (!formInner) {
873
851
  continue;
@@ -977,21 +955,21 @@ function getRectByBorder(border) {
977
955
  }
978
956
  exports.getRectByBorder = getRectByBorder;
979
957
  function showCircular(x, y) {
980
- elements.circular.style.transition = 'none';
958
+ exports.elements.circular.style.transition = 'none';
981
959
  requestAnimationFrame(function () {
982
- elements.circular.style.width = '6px';
983
- elements.circular.style.height = '6px';
984
- elements.circular.style.left = (x - 3).toString() + 'px';
985
- elements.circular.style.top = (y - 3).toString() + 'px';
986
- elements.circular.style.opacity = '1';
960
+ exports.elements.circular.style.width = '6px';
961
+ exports.elements.circular.style.height = '6px';
962
+ exports.elements.circular.style.left = (x - 3).toString() + 'px';
963
+ exports.elements.circular.style.top = (y - 3).toString() + 'px';
964
+ exports.elements.circular.style.opacity = '1';
987
965
  requestAnimationFrame(function () {
988
- elements.circular.style.transition = 'all .3s ease-out';
966
+ exports.elements.circular.style.transition = 'all .3s ease-out';
989
967
  requestAnimationFrame(function () {
990
- elements.circular.style.width = '60px';
991
- elements.circular.style.height = '60px';
992
- elements.circular.style.left = (x - 30).toString() + 'px';
993
- elements.circular.style.top = (y - 30).toString() + 'px';
994
- elements.circular.style.opacity = '0';
968
+ exports.elements.circular.style.width = '60px';
969
+ exports.elements.circular.style.height = '60px';
970
+ exports.elements.circular.style.left = (x - 30).toString() + 'px';
971
+ exports.elements.circular.style.top = (y - 30).toString() + 'px';
972
+ exports.elements.circular.style.opacity = '0';
995
973
  });
996
974
  });
997
975
  });
@@ -999,43 +977,43 @@ function showCircular(x, y) {
999
977
  exports.showCircular = showCircular;
1000
978
  function moveRectangle(border) {
1001
979
  var _a, _b, _c, _d;
1002
- const dataReady = (_a = elements.rectangle.getAttribute('data-ready')) !== null && _a !== void 0 ? _a : '0';
980
+ const dataReady = (_a = exports.elements.rectangle.getAttribute('data-ready')) !== null && _a !== void 0 ? _a : '0';
1003
981
  if (dataReady === '0') {
1004
982
  return;
1005
983
  }
1006
- const dataBorder = (_b = elements.rectangle.getAttribute('data-border')) !== null && _b !== void 0 ? _b : '';
984
+ const dataBorder = (_b = exports.elements.rectangle.getAttribute('data-border')) !== null && _b !== void 0 ? _b : '';
1007
985
  const setDataBorder = typeof border === 'string' ? border : `o-${border.left}-${(_c = border.top) !== null && _c !== void 0 ? _c : 'n'}-${border.width}-${(_d = border.height) !== null && _d !== void 0 ? _d : 'n'}`;
1008
986
  if (dataBorder === setDataBorder) {
1009
987
  return;
1010
988
  }
1011
- elements.rectangle.setAttribute('data-dir', setDataBorder);
989
+ exports.elements.rectangle.setAttribute('data-dir', setDataBorder);
1012
990
  const pos = getRectByBorder(border);
1013
991
  const width = pos.width - 20;
1014
992
  const height = pos.height - 20;
1015
993
  const left = pos.left + 10;
1016
994
  const top = pos.top + 10;
1017
995
  if (width !== undefined && height !== undefined && left !== undefined && top !== undefined) {
1018
- elements.rectangle.style.width = width.toString() + 'px';
1019
- elements.rectangle.style.height = height.toString() + 'px';
1020
- elements.rectangle.style.left = left.toString() + 'px';
1021
- elements.rectangle.style.top = top.toString() + 'px';
996
+ exports.elements.rectangle.style.width = width.toString() + 'px';
997
+ exports.elements.rectangle.style.height = height.toString() + 'px';
998
+ exports.elements.rectangle.style.left = left.toString() + 'px';
999
+ exports.elements.rectangle.style.top = top.toString() + 'px';
1022
1000
  }
1023
1001
  }
1024
1002
  exports.moveRectangle = moveRectangle;
1025
1003
  function showRectangle(x, y, border) {
1026
- elements.rectangle.style.transition = 'none';
1004
+ exports.elements.rectangle.style.transition = 'none';
1027
1005
  requestAnimationFrame(function () {
1028
- elements.rectangle.style.width = '5px';
1029
- elements.rectangle.style.height = '5px';
1030
- elements.rectangle.style.left = (x - 10).toString() + 'px';
1031
- elements.rectangle.style.top = (y - 10).toString() + 'px';
1032
- elements.rectangle.style.opacity = '1';
1033
- elements.rectangle.setAttribute('data-ready', '0');
1034
- elements.rectangle.setAttribute('data-dir', '');
1006
+ exports.elements.rectangle.style.width = '5px';
1007
+ exports.elements.rectangle.style.height = '5px';
1008
+ exports.elements.rectangle.style.left = (x - 10).toString() + 'px';
1009
+ exports.elements.rectangle.style.top = (y - 10).toString() + 'px';
1010
+ exports.elements.rectangle.style.opacity = '1';
1011
+ exports.elements.rectangle.setAttribute('data-ready', '0');
1012
+ exports.elements.rectangle.setAttribute('data-dir', '');
1035
1013
  requestAnimationFrame(function () {
1036
- elements.rectangle.style.transition = 'all .2s ease-out';
1014
+ exports.elements.rectangle.style.transition = 'all .2s ease-out';
1037
1015
  requestAnimationFrame(function () {
1038
- elements.rectangle.setAttribute('data-ready', '1');
1016
+ exports.elements.rectangle.setAttribute('data-ready', '1');
1039
1017
  moveRectangle(border);
1040
1018
  });
1041
1019
  });
@@ -1043,40 +1021,40 @@ function showRectangle(x, y, border) {
1043
1021
  }
1044
1022
  exports.showRectangle = showRectangle;
1045
1023
  function hideRectangle() {
1046
- elements.rectangle.style.opacity = '0';
1024
+ exports.elements.rectangle.style.opacity = '0';
1047
1025
  }
1048
1026
  exports.hideRectangle = hideRectangle;
1049
1027
  function showDrag() {
1050
- elements.drag.style.opacity = '1';
1028
+ exports.elements.drag.style.opacity = '1';
1051
1029
  }
1052
1030
  exports.showDrag = showDrag;
1053
1031
  function moveDrag(opt) {
1054
1032
  if (opt.top) {
1055
- elements.drag.style.top = opt.top.toString() + 'px';
1033
+ exports.elements.drag.style.top = opt.top.toString() + 'px';
1056
1034
  }
1057
1035
  if (opt.left) {
1058
- elements.drag.style.left = opt.left.toString() + 'px';
1036
+ exports.elements.drag.style.left = opt.left.toString() + 'px';
1059
1037
  }
1060
1038
  if (opt.width) {
1061
- elements.drag.style.width = opt.width.toString() + 'px';
1039
+ exports.elements.drag.style.width = opt.width.toString() + 'px';
1062
1040
  }
1063
1041
  if (opt.height) {
1064
- elements.drag.style.height = opt.height.toString() + 'px';
1042
+ exports.elements.drag.style.height = opt.height.toString() + 'px';
1065
1043
  }
1066
1044
  if (opt.icon) {
1067
- if (elements.dragIcon) {
1068
- elements.dragIcon.style.display = 'block';
1045
+ if (exports.elements.dragIcon) {
1046
+ exports.elements.dragIcon.style.display = 'block';
1069
1047
  }
1070
1048
  }
1071
1049
  else {
1072
- if (elements.dragIcon) {
1073
- elements.dragIcon.style.display = 'none';
1050
+ if (exports.elements.dragIcon) {
1051
+ exports.elements.dragIcon.style.display = 'none';
1074
1052
  }
1075
1053
  }
1076
1054
  }
1077
1055
  exports.moveDrag = moveDrag;
1078
1056
  function hideDrag() {
1079
- elements.drag.style.opacity = '0';
1057
+ exports.elements.drag.style.opacity = '0';
1080
1058
  }
1081
1059
  exports.hideDrag = hideDrag;
1082
1060
  let notifyTop = 10;
@@ -1112,7 +1090,7 @@ function notify(opt) {
1112
1090
  el.childNodes.item(0).style.background = 'url(' + opt.icon + ')';
1113
1091
  el.childNodes.item(0).style.backgroundSize = '16px';
1114
1092
  }
1115
- elements.system.appendChild(el);
1093
+ exports.elements.system.appendChild(el);
1116
1094
  notifyTop += el.offsetHeight + 10;
1117
1095
  requestAnimationFrame(function () {
1118
1096
  el.style.transform = `translateY(${y}px) translateX(-10px)`;
@@ -1125,7 +1103,7 @@ function notify(opt) {
1125
1103
  }
1126
1104
  exports.notify = notify;
1127
1105
  function notifyProgress(notifyId, per) {
1128
- const el = elements.system.querySelector(`[data-notifyid="${notifyId}"]`);
1106
+ const el = exports.elements.system.querySelector(`[data-notifyid="${notifyId}"]`);
1129
1107
  if (!el) {
1130
1108
  return;
1131
1109
  }
@@ -1149,7 +1127,7 @@ function notifyProgress(notifyId, per) {
1149
1127
  }
1150
1128
  exports.notifyProgress = notifyProgress;
1151
1129
  function hideNotify(notifyId) {
1152
- const el = elements.system.querySelector(`[data-notifyid="${notifyId}"]`);
1130
+ const el = exports.elements.system.querySelector(`[data-notifyid="${notifyId}"]`);
1153
1131
  if (!el) {
1154
1132
  return;
1155
1133
  }
@@ -1176,11 +1154,11 @@ function hideNotify(notifyId) {
1176
1154
  }
1177
1155
  exports.hideNotify = hideNotify;
1178
1156
  function appendToPop(el) {
1179
- elements.popList.appendChild(el);
1157
+ exports.elements.popList.appendChild(el);
1180
1158
  }
1181
1159
  exports.appendToPop = appendToPop;
1182
1160
  function removeFromPop(el) {
1183
- elements.popList.removeChild(el);
1161
+ exports.elements.popList.removeChild(el);
1184
1162
  }
1185
1163
  exports.removeFromPop = removeFromPop;
1186
1164
  let lastShowPopTime = 0;
@@ -1407,6 +1385,7 @@ function remove(formId) {
1407
1385
  }
1408
1386
  task.list[taskId].forms[formId].vroot.$refs.form.$data.isShow = false;
1409
1387
  setTimeout(function () {
1388
+ var _a;
1410
1389
  const fid = getMaxZIndexID({
1411
1390
  'formIds': [formId]
1412
1391
  });
@@ -1421,12 +1400,16 @@ function remove(formId) {
1421
1400
  }
1422
1401
  task.list[taskId].forms[formId].vapp.unmount();
1423
1402
  task.list[taskId].forms[formId].vapp._container.remove();
1403
+ (_a = exports.elements.popList.querySelector('[data-form-id="' + formId.toString() + '"]')) === null || _a === void 0 ? void 0 : _a.remove();
1424
1404
  if (io > -1) {
1425
1405
  task.list[taskId].forms[formId].vroot.cgDialogCallback();
1426
1406
  }
1427
1407
  delete task.list[taskId].forms[formId];
1428
1408
  dom.removeStyle(taskId, 'form', formId);
1429
1409
  core.trigger('formRemoved', taskId, formId, title, icon);
1410
+ dom.clearWatchStyle(formId);
1411
+ dom.clearWatchProperty(formId);
1412
+ native.clear(formId, taskId);
1430
1413
  if (Object.keys(task.list[taskId].forms).length === 0) {
1431
1414
  task.end(taskId);
1432
1415
  }
@@ -1450,7 +1433,7 @@ function getForm(taskId, formId) {
1450
1433
  return form;
1451
1434
  }
1452
1435
  function create(opt) {
1453
- var _a, _b, _c, _d;
1436
+ var _a, _b, _c, _d, _e, _f;
1454
1437
  return __awaiter(this, void 0, void 0, function* () {
1455
1438
  if (!opt.taskId) {
1456
1439
  return -1;
@@ -1465,6 +1448,7 @@ function create(opt) {
1465
1448
  return -3;
1466
1449
  }
1467
1450
  let data = {};
1451
+ let access = {};
1468
1452
  let methods = undefined;
1469
1453
  let computed = {};
1470
1454
  let beforeCreate = undefined;
@@ -1477,8 +1461,9 @@ function create(opt) {
1477
1461
  let unmounted = undefined;
1478
1462
  if (opt.code) {
1479
1463
  data = (_b = opt.code.data) !== null && _b !== void 0 ? _b : {};
1464
+ access = (_c = opt.code.access) !== null && _c !== void 0 ? _c : {};
1480
1465
  methods = opt.code.methods;
1481
- computed = (_c = opt.code.computed) !== null && _c !== void 0 ? _c : {};
1466
+ computed = (_d = opt.code.computed) !== null && _d !== void 0 ? _d : {};
1482
1467
  beforeCreate = opt.code.beforeCreate;
1483
1468
  created = opt.code.created;
1484
1469
  beforeMount = opt.code.beforeMount;
@@ -1493,7 +1478,7 @@ function create(opt) {
1493
1478
  if (opt.style) {
1494
1479
  const r = tool.stylePrepend(opt.style);
1495
1480
  prep = r.prep;
1496
- style = yield tool.styleUrl2DataUrl((_d = opt.path) !== null && _d !== void 0 ? _d : '/', r.style, t.app.files);
1481
+ style = yield tool.styleUrl2DataUrl((_e = opt.path) !== null && _e !== void 0 ? _e : '/', r.style, t.app.files);
1497
1482
  }
1498
1483
  let layout = tool.purify(opt.layout);
1499
1484
  layout = tool.layoutAddTagClassAndReTagName(layout, true);
@@ -1506,8 +1491,12 @@ function create(opt) {
1506
1491
  }
1507
1492
  layout = tool.layoutClassPrepend(layout, prepList);
1508
1493
  layout = tool.eventsAttrWrap(layout);
1509
- elements.list.insertAdjacentHTML('beforeend', `<div class="cg-form-wrap" data-form-id="${formId.toString()}" data-task-id="${opt.taskId.toString()}"></div>`);
1510
- const el = elements.list.children.item(elements.list.children.length - 1);
1494
+ if (layout.includes('<teleport')) {
1495
+ layout = tool.teleportGlue(layout, formId);
1496
+ }
1497
+ exports.elements.list.insertAdjacentHTML('beforeend', `<div class="cg-form-wrap" data-form-id="${formId.toString()}" data-task-id="${opt.taskId.toString()}"></div>`);
1498
+ exports.elements.popList.insertAdjacentHTML('beforeend', `<div data-form-id="${formId.toString()}" data-task-id="${opt.taskId.toString()}"></div>`);
1499
+ const el = exports.elements.list.children.item(exports.elements.list.children.length - 1);
1511
1500
  computed.formId = {
1512
1501
  get: function () {
1513
1502
  return formId;
@@ -1575,6 +1564,9 @@ function create(opt) {
1575
1564
  return;
1576
1565
  }
1577
1566
  };
1567
+ if (clickgo.isNative() && (formId === 1) && !clickgo.isImmersion() && !clickgo.hasFrame()) {
1568
+ data.isNativeSync = true;
1569
+ }
1578
1570
  if (style) {
1579
1571
  dom.pushStyle(opt.taskId, style, 'form', formId);
1580
1572
  }
@@ -1587,7 +1579,10 @@ function create(opt) {
1587
1579
  'methods': methods,
1588
1580
  'computed': computed,
1589
1581
  'beforeCreate': beforeCreate,
1590
- 'created': created,
1582
+ 'created': function () {
1583
+ this.access = tool.clone(access);
1584
+ created === null || created === void 0 ? void 0 : created.call(this);
1585
+ },
1591
1586
  'beforeMount': beforeMount,
1592
1587
  'mounted': function () {
1593
1588
  return __awaiter(this, void 0, void 0, function* () {
@@ -1646,17 +1641,30 @@ function create(opt) {
1646
1641
  }
1647
1642
  catch (err) {
1648
1643
  core.trigger('error', rtn.vroot.taskId, rtn.vroot.formId, err, 'Create form mounted error.');
1649
- t.forms[formId] = undefined;
1650
1644
  delete t.forms[formId];
1651
- rtn.vapp.unmount();
1645
+ try {
1646
+ rtn.vapp.unmount();
1647
+ }
1648
+ catch (err) {
1649
+ const msg = `Message: ${err.message}\nTask id: ${opt.taskId}\nForm id: ${formId}\nFunction: form.create, unmount.`;
1650
+ notify({
1651
+ 'title': 'Form Unmount Error',
1652
+ 'content': msg,
1653
+ 'type': 'danger'
1654
+ });
1655
+ console.log('Form Unmount Error', msg, err);
1656
+ }
1652
1657
  rtn.vapp._container.remove();
1658
+ (_f = exports.elements.popList.querySelector('[data-form-id="' + rtn.vroot.formId + '"]')) === null || _f === void 0 ? void 0 : _f.remove();
1659
+ dom.clearWatchStyle(rtn.vroot.formId);
1660
+ dom.clearWatchProperty(rtn.vroot.formId);
1661
+ native.clear(formId, t.id);
1653
1662
  dom.removeStyle(rtn.vroot.taskId, 'form', rtn.vroot.formId);
1654
1663
  return -8;
1655
1664
  }
1656
1665
  }
1657
1666
  core.trigger('formCreated', opt.taskId, formId, rtn.vroot.$refs.form.title, rtn.vroot.$refs.form.iconDataUrl);
1658
- if (clickgo.isNative() && (formId === 1) && !clickgo.isImmersion() && !clickgo.hasFrame()) {
1659
- rtn.vroot.$refs.form.isNativeSync = true;
1667
+ if (rtn.vroot.isNativeSync) {
1660
1668
  native.invoke('cg-set-size', native.getToken(), rtn.vroot.$refs.form.$el.offsetWidth, rtn.vroot.$refs.form.$el.offsetHeight);
1661
1669
  window.addEventListener('resize', function () {
1662
1670
  rtn.vroot.$refs.form.setPropData('width', window.innerWidth);
@@ -1713,7 +1721,7 @@ function dialog(opt) {
1713
1721
  }
1714
1722
  }
1715
1723
  };
1716
- cls.create(undefined, `<form title="${(_c = nopt.title) !== null && _c !== void 0 ? _c : 'dialog'}" min="false" max="false" resize="false" height="0" border="${nopt.title ? 'normal' : 'plain'}" direction="v"><dialog :buttons="buttons" @select="select"${nopt.direction ? ` direction="${nopt.direction}"` : ''}>${nopt.content}</dialog></form>`).then((frm) => {
1724
+ cls.create(undefined, `<form title="${(_c = nopt.title) !== null && _c !== void 0 ? _c : 'dialog'}" min="false" max="false" resize="false" height="0" width="0" border="${nopt.title ? 'normal' : 'plain'}" direction="v"><dialog :buttons="buttons" @select="select"${nopt.direction ? ` direction="${nopt.direction}"` : ''}>${nopt.content}</dialog></form>`).then((frm) => {
1717
1725
  if (typeof frm === 'number') {
1718
1726
  resolve('');
1719
1727
  return;
@@ -1789,20 +1797,20 @@ function flash(formId, taskId) {
1789
1797
  }
1790
1798
  exports.flash = flash;
1791
1799
  function showLauncher() {
1792
- elements.launcher.style.display = 'flex';
1800
+ exports.elements.launcher.style.display = 'flex';
1793
1801
  requestAnimationFrame(function () {
1794
- elements.launcher.classList.add('cg-show');
1802
+ exports.elements.launcher.classList.add('cg-show');
1795
1803
  });
1796
1804
  }
1797
1805
  exports.showLauncher = showLauncher;
1798
1806
  function hideLauncher() {
1799
- elements.launcher.classList.remove('cg-show');
1807
+ exports.elements.launcher.classList.remove('cg-show');
1800
1808
  setTimeout(function () {
1801
1809
  if (exports.launcherRoot.folderName !== '') {
1802
1810
  exports.launcherRoot.closeFolder();
1803
1811
  }
1804
1812
  exports.launcherRoot.name = '';
1805
- elements.launcher.style.display = 'none';
1813
+ exports.elements.launcher.style.display = 'none';
1806
1814
  }, 300);
1807
1815
  }
1808
1816
  exports.hideLauncher = hideLauncher;