efront 4.22.19 → 4.23.3

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 (108) hide show
  1. package/#/345/233/275/351/231/205/345/214/226.yml +6 -0
  2. package/apps/kugou/search/search.js +4 -3
  3. package/apps/noice/main.js +1 -1
  4. package/apps/pivot/auth/login.js +4 -4
  5. package/apps/pivot/dht/list.js +5 -5
  6. package/apps/pivot/link/chat.js +1 -1
  7. package/apps/pivot/link/index.js +1 -1
  8. package/apps/pivot/link/list.js +5 -4
  9. package/apps/pivot/share/list.js +6 -5
  10. package/apps/pivot/wow/root.js +3 -2
  11. package/coms/basic/ArrayFill.js +5 -1
  12. package/coms/basic/BigNumber.js +2 -2
  13. package/coms/basic/LoadingArray.js +1 -0
  14. package/coms/basic/cross_.js +4 -1
  15. package/coms/basic/data.js +27 -23
  16. package/coms/basic/extend.js +18 -1
  17. package/coms/basic/isFinit.js +1 -0
  18. package/coms/basic_/&ArrayFill.js +1 -5
  19. package/coms/basic_/&extend.js +1 -18
  20. package/coms/basic_/WeakMap.js +36 -0
  21. package/coms/compile/Javascript.js +2 -1
  22. package/coms/explorer/context.js +10 -7
  23. package/coms/explorer/edit.js +1 -1
  24. package/coms/explorer/fileitem.js +9 -7
  25. package/coms/explorer/main.js +20 -17
  26. package/coms/frame/chat.js +17 -16
  27. package/coms/frame/list.js +6 -5
  28. package/coms/kugou/bindScroll.js +0 -1
  29. package/coms/kugou/buildScroll.js +5 -4
  30. package/coms/kugou/krc.js +2 -2
  31. package/coms/kugou/player.js +2 -2
  32. package/coms/kugou/song.js +1 -1
  33. package/coms/layer/leftCenter.js +5 -5
  34. package/coms/pivot/checkGeo.js +0 -1
  35. package/coms/reptile/alert.js +5 -1
  36. package/coms/reptile/data.js +3 -0
  37. package/coms/zimoli/$cared.js +1 -0
  38. package/coms/zimoli/$casted.js +1 -0
  39. package/coms/zimoli/$eval.js +1 -0
  40. package/coms/zimoli/$mounted.js +1 -0
  41. package/coms/zimoli/$parented.js +1 -0
  42. package/coms/zimoli/$renders.js +1 -0
  43. package/coms/zimoli/$scoped.js +1 -0
  44. package/coms/zimoli/$structed.js +1 -0
  45. package/coms/zimoli/$upwith.js +1 -0
  46. package/coms/zimoli/$watches.js +1 -0
  47. package/coms/zimoli/HexEditor.js +1 -1
  48. package/coms/zimoli/alert.js +4 -2
  49. package/coms/zimoli/appendChild.js +2 -2
  50. package/coms/zimoli/autodragchildren_test.js +1 -1
  51. package/coms/zimoli/care.js +27 -9
  52. package/coms/zimoli/cast.js +13 -14
  53. package/coms/zimoli/checkbox.js +1 -1
  54. package/coms/zimoli/container.js +4 -3
  55. package/coms/zimoli/createItemTarget.js +10 -6
  56. package/coms/zimoli/cross.js +1 -1
  57. package/coms/zimoli/data.js +16 -0
  58. package/coms/zimoli/field.js +3 -3
  59. package/coms/zimoli/gallery_test.js +4 -3
  60. package/coms/zimoli/getArgsChildren.js +1 -1
  61. package/coms/zimoli/getChanged.js +8 -0
  62. package/coms/zimoli/getGenerator.js +36 -28
  63. package/coms/zimoli/grid.js +2 -2
  64. package/coms/zimoli/isMounted.js +6 -3
  65. package/coms/zimoli/lattice.js +2 -4
  66. package/coms/zimoli/maps.js +1 -2
  67. package/coms/zimoli/menu.js +1 -0
  68. package/coms/zimoli/menuItem.js +4 -3
  69. package/coms/zimoli/menuList.js +7 -8
  70. package/coms/zimoli/menu_test.js +4 -3
  71. package/coms/zimoli/model.js +15 -10
  72. package/coms/zimoli/on.js +39 -23
  73. package/coms/zimoli/picture.js +0 -7
  74. package/coms/zimoli/popup.js +5 -5
  75. package/coms/zimoli/radio.js +1 -1
  76. package/coms/zimoli/remove.js +3 -3
  77. package/coms/zimoli/render.js +397 -223
  78. package/coms/zimoli/scrollbar.js +90 -42
  79. package/coms/zimoli/scrollbar.less +5 -3
  80. package/coms/zimoli/select.js +3 -3
  81. package/coms/zimoli/selectList.js +1 -1
  82. package/coms/zimoli/selectListEdit.js +5 -4
  83. package/coms/zimoli/table.html +6 -4
  84. package/coms/zimoli/table.js +82 -41
  85. package/coms/zimoli/table.less +22 -0
  86. package/coms/zimoli/vbox.less +2 -2
  87. package/coms/zimoli/view.js +1 -1
  88. package/coms/zimoli/watch.js +7 -5
  89. package/coms/zimoli/zimoli.js +78 -60
  90. package/docs/version-desc.md +3 -1
  91. package/docs//347/211/210/346/234/254/350/257/264/346/230/216.md +3 -1
  92. package/docs//347/273/204/344/273/266.xht +14 -1
  93. package/package.json +1 -1
  94. package/public/efront.js +1 -1
  95. package/public/pivot/api.yml +46 -0
  96. package/public/pivot/menu.yml +16 -0
  97. package/public/pivot/page/auth/login.txt +1 -0
  98. package/public/pivot/page/cert/main.txt +1 -0
  99. package/public/pivot/page/cert/orders.txt +1 -0
  100. package/public/pivot/page/cert/update.txt +1 -0
  101. package/public/pivot/page/db/act.txt +1 -0
  102. package/public/pivot/page/db/config.txt +1 -0
  103. package/public/pivot/page/db/edit.txt +1 -0
  104. package/public/pivot/page/db/list.txt +1 -0
  105. package/public/pivot//344/270/273/351/241/265.html +46 -0
  106. package/coms/reptile/on.js +0 -4
  107. package/coms/reptile/onmounted.js +0 -1
  108. /package/coms/{zimoli → basic}/encode62.js +0 -0
@@ -6,11 +6,11 @@ var selectRected = on("resize")(rect, function () {
6
6
  if (!lattice) return;
7
7
  var selected = [];
8
8
  if (touchitems) for (var m of touchitems) {
9
- var file = m.$scope.d;
9
+ var file = $scoped.get(m).d;
10
10
  file.selected = overlap(m, rect);
11
11
  if (file.selected) selected.push(file);
12
12
  }
13
- lattice.$scope.selected = selected;
13
+ $scoped.get(lattice).selected = selected;
14
14
  render.refresh();
15
15
  });
16
16
  var dragger = null;
@@ -21,11 +21,13 @@ var touch = {
21
21
  */
22
22
  var t = this;
23
23
  var start = () => {
24
- var a = t.$scope.toActive(e);
24
+ var ts = $scoped.get(t);
25
+ var a = ts.toActive(e);
26
+ var as = $scoped.get(a);
25
27
  touchitems = t.querySelectorAll("fileitem");
26
- if (a && t.$scope.selected.indexOf(a.$scope.d) >= 0) {
28
+ if (a && ts.selected.indexOf(as.d) >= 0) {
27
29
  dragger = e;
28
- if (!drag.target) drag(t.$scope.selected.length === 1 ? a : t.querySelectorAll(".focused"), e);
30
+ if (!drag.target) drag(ts.selected.length === 1 ? a : t.querySelectorAll(".focused"), e);
29
31
  return;
30
32
  }
31
33
  var pos = getScreenPosition(t.parentNode);
@@ -52,7 +54,7 @@ var touch = {
52
54
  if (dragger) {
53
55
  var tiped = null;
54
56
  for (var c of touchitems) {
55
- var d = c.$scope.d;
57
+ var d = $scoped.get(c).d;
56
58
  if (d.isfolder && !d.selected && overpos(c, e)) {
57
59
  if (!c.hasAttribute('dropping')) {
58
60
  if (!drag.tip) {
@@ -74,7 +76,7 @@ var touch = {
74
76
  });
75
77
  }
76
78
  css(drag.tip, 'display:block');
77
- drag.tip.innerHTML = `<b style="color:#169;font-weight:400">移动到</b> ${c.$scope.d.name}`;
79
+ drag.tip.innerHTML = `<b style="color:#169;font-weight:400">移动到</b> ${d.name}`;
78
80
  c.setAttribute('dropping', '');
79
81
  }
80
82
  tiped = c;
@@ -103,8 +105,9 @@ var touch = {
103
105
  var p = this.querySelector("[dropping]");
104
106
  if (p) {
105
107
  p.removeAttribute("dropping");
106
- var $scope = this.$scope;
107
- var base = $scope.pathlist.concat(p.$scope.d.name).join("/");
108
+ var $scope = $scoped.get(this);
109
+ var ps = $scoped.get(p);
110
+ var base = $scope.pathlist.concat(ps.d.name).join("/");
108
111
  for (var s of $scope.selected) {
109
112
  await $scope.mov(s, base + "/" + s.name);
110
113
  }
@@ -115,7 +118,7 @@ var touch = {
115
118
  },
116
119
  };
117
120
  var moveFocus = function (delta) {
118
- var { selected, data } = this.$scope;
121
+ var { selected, data } = $scoped.get(this);
119
122
  var index, targetIndex;
120
123
  var boxCount = this.group;
121
124
  if (delta === 'home') targetIndex = 0;
@@ -127,7 +130,7 @@ var moveFocus = function (delta) {
127
130
  else {
128
131
  index = data.indexOf(selected[selected.length - 1]);
129
132
  var e = this.getLastVisibleElement(0);
130
- if (e) targetIndex = data.indexOf(e.$scope.d);
133
+ if (e) targetIndex = data.indexOf($scoped.get(e).d);
131
134
  else targetIndex = data.length - 1;
132
135
  targetIndex = (targetIndex / boxCount | 0) * boxCount + index % boxCount;
133
136
  if (targetIndex >= data.length) targetIndex = data.length - 1;
@@ -141,13 +144,13 @@ var moveFocus = function (delta) {
141
144
  var f = this.getFirstVisibleElement();
142
145
  var index = data.indexOf(selected[0]);
143
146
  if (!f) targetIndex = 0;
144
- else if (f.$scope.d !== selected[0]) {
145
- targetIndex = index + ((data.indexOf(f.$scope.d) - index) / boxCount | 0) * boxCount;
147
+ else if ($scoped.get(f).d !== selected[0]) {
148
+ targetIndex = index + ((data.indexOf($scoped.get(f).d) - index) / boxCount | 0) * boxCount;
146
149
  }
147
150
  else {
148
151
  var e = this.getLastVisibleElement(0);
149
- var fi = data.indexOf(f.$scope.d);
150
- var ei = data.indexOf(e.$scope.d)
152
+ var fi = data.indexOf($scoped.get(f).d);
153
+ var ei = data.indexOf($scoped.get(e).d);
151
154
  targetIndex = fi - ((ei - fi) / boxCount | 0) * boxCount;
152
155
 
153
156
  }
@@ -194,7 +197,7 @@ var moveFocus = function (delta) {
194
197
  s.selected = false;
195
198
  }
196
199
  var d = data[targetIndex];
197
- if (d) d.selected = true, this.$scope.selected = [d];
200
+ if (d) d.selected = true, $scoped.get(this).selected = [d];
198
201
  this.setFocus(targetIndex);
199
202
  render.refresh();
200
203
  };
@@ -207,7 +210,7 @@ var bindkey = function (lattice) {
207
210
  async function ondrop(event) {
208
211
  event.preventDefault();
209
212
  var files = event.dataTransfer.files;
210
- this.$scope.uploadAll(files);
213
+ $scoped.get(this).uploadAll(files);
211
214
  }
212
215
  function main() {
213
216
  var page = document.createElement('explorer');
@@ -7,7 +7,7 @@ function clickfile(event) {
7
7
  break;
8
8
  }
9
9
  }
10
- this.$eval(`pullFile(m.content[${cx}])`);
10
+ $eval.call(this, `pullFile(m.content[${cx}])`);
11
11
  }
12
12
 
13
13
  function msg(elem, { m }, parentScopes) {
@@ -50,7 +50,7 @@ var dragpage = {
50
50
  moving = null;
51
51
  saved_event = null;
52
52
  if (getTargetIn(a => /^(msg)$/i.test(a.tagName), event.target)) return;
53
- if (!this.$scope.users.length) return;
53
+ if (!$scoped.get(this).users.length) return;
54
54
  saved_event = event;
55
55
  },
56
56
  move(event) {
@@ -91,11 +91,11 @@ var dragpage = {
91
91
  var menuWidth = target.children[1].offsetWidth;
92
92
  target.style.paddingLeft = '';
93
93
  if (moving.deltaX < 0 && left > menuWidth * .1 || moving.deltaX > 0 && left > menuWidth * .9 || !moving.deltaX && left > menuWidth >> 1) {
94
- target.$scope.showList = true;
94
+ $scoped.get(target).showList = true;
95
95
  addClass(target, "showList")
96
96
  }
97
97
  else {
98
- target.$scope.showList = false;
98
+ $scoped.get(target).showList = false;
99
99
  removeClass(target, "showList")
100
100
  }
101
101
  render.refresh();
@@ -110,20 +110,20 @@ function chat(title = '会话窗口') {
110
110
  var users = [];
111
111
  var addToMsgList = function (list, msgs) {
112
112
  list.push.apply(list, msgs);
113
- if (list === page.$scope.msglist) {
113
+ if (list === ps.msglist) {
114
114
  var chat = page.querySelector("chat");
115
115
  var lastmsg = chat.getLastVisibleElement();
116
116
  if (msgs.length && (!lastmsg || lastmsg.offsetTop + lastmsg.offsetHeight === chat.scrollHeight)) {
117
117
  chat.go(list.length ? list.length - 1 : 0);
118
118
  }
119
- if (page.$scope.user) page.$scope.user.msgread = list.length;
119
+ if (ps.user) ps.user.msgread = list.length;
120
120
  }
121
121
  else {
122
- page.$scope.totalunread += msgs.length;
122
+ ps.totalunread += msgs.length;
123
123
  }
124
124
  }
125
125
  page.push = function (msgs) {
126
- var { msglist } = this.$scope;
126
+ var { msglist } = ps;
127
127
  var userMap = null;
128
128
  msgs = msgs.filter(m => {
129
129
  if (!m) return false;
@@ -138,15 +138,15 @@ function chat(title = '会话窗口') {
138
138
  return false;
139
139
  }).map(m => JSAM.parse(encode62.packdecode(m))).filter(m => {
140
140
  if (m.type === 'accept') {
141
- page.$scope.pushFile(m.content);
141
+ ps.pushFile(m.content);
142
142
  return false;
143
143
  }
144
144
  return true;
145
145
  });
146
146
  if (userMap) {
147
147
  userManager(users, userMap);
148
- if (users.indexOf(page.$scope.user) < 0) page.$scope.user = users[0];
149
- if (users.length > 0 && page.$scope.showList === 0) page.$scope.showList = true;
148
+ if (users.indexOf(ps.user) < 0) ps.user = users[0];
149
+ if (users.length > 0 && ps.showList === 0) ps.showList = true;
150
150
  }
151
151
  if (msgs.length) {
152
152
  var msgMap = Object.create(null);
@@ -169,19 +169,19 @@ function chat(title = '会话窗口') {
169
169
  }
170
170
  };
171
171
  page.$renders = [function () {
172
- this.$scope.resize(this.$scope.body);
172
+ ps.resize(ps.body);
173
173
  }];
174
174
  page.localid = localid;
175
175
  Object.defineProperty(page, 'userid', {
176
176
  get() {
177
- var user = this.$scope.user;
177
+ var user = ps.user;
178
178
  if (user) return user.id;
179
179
  }
180
180
  });
181
181
  page.setAttribute('ng-class', "{showList:showList}");
182
182
  var fid = 0;
183
183
  var filesMap = Object.create(null);
184
- renderWithDefaults(page, {
184
+ var ps = {
185
185
  chat: zimoli$list,
186
186
  title,
187
187
  msglist: [],
@@ -271,14 +271,15 @@ function chat(title = '会话窗口') {
271
271
  this.body.lastElementChild.focus();
272
272
  this.text = '';
273
273
  }
274
- });
274
+ };
275
+ renderWithDefaults(page, ps);
275
276
  var headHeight = 0;
276
277
  resizingList.set(page, function () {
277
278
  var height = page.firstElementChild.offsetHeight;
278
279
  if (height !== headHeight) {
279
280
  headHeight = height;
280
281
  css(page.firstElementChild, { marginBottom: fromOffset(-headHeight) });
281
- css(page.$scope.body.firstElementChild, { paddingTop: fromOffset(headHeight) });
282
+ css(ps.body.firstElementChild, { paddingTop: fromOffset(headHeight) });
282
283
  }
283
284
  });
284
285
  moveupon(page, dragpage);
@@ -6,7 +6,7 @@ function main(title, { fields, options: options0, load, remove, buttons }, edit_
6
6
  return;
7
7
  }
8
8
  var callback = function () {
9
- page.$scope.load();
9
+ page_scope.load();
10
10
  };
11
11
  if (isFunction(edit_ref)) {
12
12
  var p = await edit_ref({ fields, data: o, callback });
@@ -54,12 +54,12 @@ function main(title, { fields, options: options0, load, remove, buttons }, edit_
54
54
  return;
55
55
  }
56
56
  await remove(o);
57
- page.$scope.load();
57
+ page_scope.load();
58
58
  }
59
59
  }
60
60
  ];
61
61
  if (options0) options = options.concat(options0);
62
- renderWithDefaults(page, {
62
+ var page_scope = {
63
63
  title,
64
64
  load() {
65
65
  this.data = load();
@@ -74,9 +74,10 @@ function main(title, { fields, options: options0, load, remove, buttons }, edit_
74
74
  async add() {
75
75
  await edit();
76
76
  },
77
- });
77
+ }
78
+ renderWithDefaults(page, page_scope);
78
79
  on("append")(page, function () {
79
- page.$scope.load();
80
+ page_scope.load();
80
81
  });
81
82
  return page;
82
83
  }
@@ -53,6 +53,5 @@ function bindScroll(titlebar, page) {
53
53
  setOpacity(label, 1 - (titlebar.offsetHeight - topHeight) / (offsetHeight - topHeight));
54
54
  return {};
55
55
  };
56
- if (!page.$renders) page.$renders = [];
57
56
  page.onscroll = refresh;
58
57
  }
@@ -3,7 +3,7 @@ function Main(dataid, datapath, titleid) {
3
3
  var page = createVboxWithState(state);
4
4
  page.initialStyle = 'margin-left:100%';
5
5
  page.innerHTML = buildScroll;
6
- render(page, {
6
+ var pgscope = {
7
7
  list: lattice,
8
8
  song,
9
9
  padding,
@@ -20,7 +20,8 @@ function Main(dataid, datapath, titleid) {
20
20
  config: {},
21
21
  player: kugou$player,
22
22
  datas: []
23
- });
23
+ };
24
+ render(page, pgscope);
24
25
  bindScroll(_titlebar, page);
25
26
  var loadedId, requested = false;
26
27
  function main(params) {
@@ -31,8 +32,8 @@ function Main(dataid, datapath, titleid) {
31
32
  var ranklist = data.from(dataid, {
32
33
  id
33
34
  }, parseSongsList);
34
- page.$scope.config = params;
35
- page.$scope.datas = ranklist;
35
+ pgscope.config = params;
36
+ pgscope.datas = ranklist;
36
37
  if (titleid) {
37
38
  data.from(titleid, {
38
39
  id
package/coms/kugou/krc.js CHANGED
@@ -120,7 +120,7 @@ function createLRC(lrc) {
120
120
  setClass(krcList, index);
121
121
  }
122
122
  }
123
- if (ele && firstChild && firstChild.$mounted) {
123
+ if (ele && firstChild && isMounted(firstChild)) {
124
124
  var marginTop = (firstChild.parentNode.offsetHeight - ele.offsetHeight >> 1) - ele.offsetTop + firstChild.offsetTop;
125
125
  css(firstChild, `margin-top:${marginTop | 0}px;`);
126
126
  }
@@ -166,7 +166,7 @@ function createKRC(krc) {
166
166
  var current_row_word = current_words[current_row_index];
167
167
  var ele = krcList[index];
168
168
  var firstChild = krcList[0];
169
- if (ele && firstChild && firstChild.$mounted) {
169
+ if (ele && firstChild && isMounted(firstChild)) {
170
170
  var marginTop = (firstChild.parentNode.offsetHeight - ele.offsetHeight >> 1) - ele.offsetTop + firstChild.offsetTop;
171
171
  if (index > 0) {
172
172
  if (markerLabel.parentNode !== ele) {
@@ -87,7 +87,7 @@ var oncanplay = on("canplay"), ondataloaded = on("loadeddata");
87
87
  on("keydown")(window, function (event) {
88
88
  var { target } = event;
89
89
  if (/^(input|select|textarea)$/i.test(target.tagName)) return;
90
- var $scope = player.$scope;
90
+ var $scope = $scoped.get(player);
91
91
  if (!$scope.audio && !kugou$musicList.getActived()) return;
92
92
  switch (event.keyCode || event.which) {
93
93
  case 32:
@@ -418,7 +418,7 @@ var createControls = function () {
418
418
  moveupon(player, {
419
419
  end() {
420
420
  var currentHeight = calcPixel(this.offsetHeight), windowHeight = calcPixel(window.innerHeight);
421
- var $scope = this.$scope;
421
+ var $scope = $scoped.get(this);
422
422
  var { deltaTop } = this;
423
423
  removeClass(this, "dragging");
424
424
  if (deltaTop) {
@@ -1,5 +1,5 @@
1
1
  function dplay() {
2
- this.firstChild.$scope.play();
2
+ $scoped.get(this.firstChild).play();
3
3
  }
4
4
  function main(elem) {
5
5
  elem = elem || document.createElement("song");
@@ -38,12 +38,12 @@ function setCurrentPage(page) {
38
38
  var currentLayer = getCurrentLayer();
39
39
  if (page !== leftPage) {
40
40
  if (currentLayer !== leftLayer) {
41
- if (!leftPage.$mounted) appendChild(leftLayer, leftPage);
41
+ if (!isMounted(leftPage)) appendChild(leftLayer, leftPage);
42
42
  } else {
43
43
  remove(leftPage, false);
44
44
  }
45
45
  if (page.parentNode !== currentLayer) appendChild(currentLayer, page, false);
46
- } else if (!leftPage.$mounted) {
46
+ } else if (!isMounted(leftPage)) {
47
47
  appendChild(leftLayer, leftPage, false);
48
48
  }
49
49
  }
@@ -54,16 +54,16 @@ function main(_leftPage) {
54
54
  layer.layer = function (child, old) {
55
55
  remove(old);
56
56
  if (child === leftPage) {
57
- if (!leftPage.$mounted) appendChild(leftLayer, child);
57
+ if (!isMounted(leftPage)) appendChild(leftLayer, child);
58
58
  } else if (child) {
59
59
  var currentLayer = getCurrentLayer();
60
60
  appendChild(currentLayer, child);
61
61
  if (currentLayer === leftLayer) {
62
62
  if (arguments.length > 1) remove(leftPage);
63
- } else if (!leftPage.$mounted) {
63
+ } else if (!isMounted(leftPage)) {
64
64
  appendChild(leftLayer, leftPage);
65
65
  }
66
66
  } else {
67
- if (!leftPage.$mounted) appendChild(leftLayer, leftPage);
67
+ if (!isMounted(leftPage)) appendChild(leftLayer, leftPage);
68
68
  }
69
69
  };
@@ -20,7 +20,6 @@ return async function (a) {
20
20
  var m = /(\d+\.){3}\d+$/.exec(ip);
21
21
  ip = m ? m[0] : ip;
22
22
  var res = await data.from("ipcn", { ip });
23
- console.log(res)
24
23
  if (!res.address && !res.data) res = await baidu(ip);
25
24
  var msg = '加载错误';
26
25
  if (res.message && !res.data && !res.content && !res.address) {
@@ -1 +1,5 @@
1
- a => console.warn(a);
1
+ (title, type) => {
2
+ if (console[type]) console[type](title);
3
+ else if (console[title]) console[title](type);
4
+ else console.warn(title);
5
+ }
@@ -0,0 +1,3 @@
1
+ basic$data.setReporter(alert);
2
+ basic$data.setEnvs(cross);
3
+ return basic$data;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -0,0 +1 @@
1
+ render.eval;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -0,0 +1 @@
1
+ new WeakMap;
@@ -1,5 +1,5 @@
1
1
  var toHex = lazy(function (event) {
2
- var data = this.$scope.data;
2
+ var data = $scoped.get(this).data;
3
3
  data.splice(0, data.length);
4
4
  this.innerText.replace(/[a-f\d]{2}/g, function (a) {
5
5
  a = parseInt(a, 16);
@@ -72,7 +72,7 @@ function alert() {
72
72
  }
73
73
  close_timer = setTimeout(function () {
74
74
  remove(elem);
75
- }, autoclose);
75
+ }, +autoclose);
76
76
  }
77
77
  };
78
78
  var setContent = function (elem) {
@@ -83,7 +83,9 @@ function alert() {
83
83
  } else {
84
84
  elem = _text(elem, styles.log, t);
85
85
  }
86
- if (!isMounted(container)) popup(container);
86
+ Promise.resolve().then(function () {
87
+ if (!isMounted(container)) popup(container);
88
+ });
87
89
  if (!isMounted(elem)) appendChild(container, elem);
88
90
  waitclose(autoclose, 400);
89
91
  return elem;
@@ -9,9 +9,9 @@ function hasEnterStyle(e) {
9
9
  }
10
10
 
11
11
  function _onappend(node, append = createEvent("append"), mount = createEvent("mounted")) {
12
- if (node.$mounted) return;
12
+ if ($mounted.get(node)) return;
13
13
  if (node.nodeType !== 1 && node.nodeType !== 8) return;
14
- node.$mounted = true;
14
+ $mounted.set(node, true);
15
15
  dispatch(node, append);
16
16
  var children = Array.apply(null, node.childNodes);
17
17
  for (var c of children) {
@@ -11,7 +11,7 @@ function main() {
11
11
  xsrc: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30],
12
12
  })
13
13
  autodragchildren(xList, xList, function (src, dst) {
14
- var xsrc = xList.$scope.xsrc;
14
+ var xsrc = $scoped.get(xList).xsrc;
15
15
  var src = src.target.index || 0;
16
16
  var dst = xList.children[dst].index || 0;
17
17
  var [e] = xsrc.splice(src, 1);
@@ -6,16 +6,18 @@
6
6
  * @param {Function} listener
7
7
  */
8
8
  function care() {
9
- var [target, type, listener, allowMultiHandle] = parse.apply(this, arguments);
10
- if (!target[type]) {
11
- target[type] = [];
12
- }
13
- var listeners = target[type];
9
+ var [listeners, listener, target, type, allowMultiHandle] = parse.apply(this, arguments);
14
10
  if (listeners.length && !allowMultiHandle) return;
15
11
  if (listener instanceof Function && !~listeners.indexOf(listener)) {
16
12
  if (listeners.length > 600) throw new Error(i18n`请不要在同一个对象上使用过多的同类型的care!`);
17
13
  listeners.push(listener);
18
14
  }
15
+ var casted = $casted.get(target);
16
+ if (!casted) return;
17
+ var datas = casted[type];
18
+ if (!datas) return;
19
+ delete casted[type];
20
+ datas.forEach(listeners.cast, listeners);
19
21
  }
20
22
  function parse() {
21
23
  var [target, type, listener] = arguments;
@@ -46,12 +48,28 @@ function parse() {
46
48
  throw new Error(i18n`参数数量不正确`);
47
49
  }
48
50
  if (!isObject(target)) throw new Error(i18n`care只能使用在对象上!`);
49
- type = `care(${type})`;
50
- return [target, type, listener, allowMultiHandle];
51
+ var cared = $cared.get(target);
52
+ if (!cared) {
53
+ cared = {};
54
+ $cared.set(target, cared);
55
+ }
56
+ var listeners = cared[type];
57
+ if (!listeners) listeners = cared[type] = [], listeners.cast = cast(target);
58
+ return [listeners, listener, target, type, allowMultiHandle];
51
59
  }
60
+ function cast(target) {
61
+ var newdata, olddata;
62
+ var call = function (listener) {
63
+ listener.call(target, newdata, olddata);
64
+ }
65
+ return function (data) {
66
+ newdata = data;
67
+ this.forEach(call);
68
+ olddata = data;
69
+ }
70
+ };
52
71
  function clean() {
53
- var [target, type, listener] = parse.apply(this, arguments);
54
- var listeners = target[type];
72
+ var [listeners, listener] = parse.apply(this, arguments);
55
73
  if (listener instanceof Function) {
56
74
  for (var cx = listeners.length - 1; cx >= 0; cx--) {
57
75
  if (listeners[cx] === listener) listeners.splice(cx, 1);
@@ -20,20 +20,19 @@ function cast(target, type, data) {
20
20
  throw new Error(i18n`参数数量不正确`);
21
21
  }
22
22
  if (!isObject(target)) return;
23
-
24
- var datakey = `cast(${type})`;
25
- type = `care(${type})`;
26
- if (target[type] instanceof Array) {
27
- var listeners = target[type];
28
- if (!listeners.datas) listeners.datas = [];
29
- var datas = listeners.datas;
30
- datas.push(data);
31
- if (datas.length === 1) {
32
- while (datas.length) target[type].forEach(function (listener) {
33
- if (listener instanceof Function) {
34
- listener.call(target, datas[0], target[datakey]);
35
- }
36
- }), target[datakey] = datas.shift();
23
+ var cared = $cared.get(target);
24
+ if (cared) var listeners = cared[type];
25
+ if (listeners) listeners.cast(data);
26
+ else {
27
+ var casted = $casted.get(target);
28
+ if (!casted) {
29
+ casted = {};
30
+ $casted.set(target, casted);
31
+ }
32
+ var datas = casted[type];
33
+ if (!datas) {
34
+ datas = casted[type] = [];
37
35
  }
36
+ datas.push(data);
38
37
  }
39
38
  }
@@ -46,7 +46,7 @@ function main(elem = document.createElement("checkbox-group")) {
46
46
  value.checked = checked;
47
47
  };
48
48
  elem.setValue = function (value) {
49
- var { options } = this.$scope;
49
+ var { options } = $scoped.get(this);
50
50
  buildValue(value, options);
51
51
  };
52
52
  return elem;
@@ -2,8 +2,9 @@ var change = async function (src) {
2
2
  if (src !== this.$src) return;
3
3
  if (!src) remove(this.with);
4
4
  else if (isNode(src)) {
5
- if (isElement(src) && this.$struct.copys) {
6
- for (var c of this.$struct.copys) {
5
+ var struct = $structed.get(this);
6
+ if (isElement(src) && struct.copys) {
7
+ for (var c of struct.copys) {
7
8
  if (c.name === 'class') {
8
9
  addClass(src, c.value);
9
10
  }
@@ -35,7 +36,7 @@ var onparams = function (params) {
35
36
  };
36
37
  function container(element) {
37
38
  var comment = document.createComment('container');
38
- comment.$struct = element.$struct;
39
+ $structed.set(comment, $structed.get(element));
39
40
  care(comment, gosrc);
40
41
  if (element.hasAttribute && element.hasAttribute('src')) {
41
42
  var src = element.getAttribute('src');
@@ -1,13 +1,17 @@
1
+
1
2
  function createItemTarget(item, target) {
2
3
  var $scope = {};
3
4
  var { itemName, indexName, keyName } = this.$src;
4
5
  if (itemName) $scope[itemName] = item;
5
6
  else $scope.$item = item;
6
- if (target && target.$scope) {
7
- if (indexName) $scope[indexName] = target.$scope[indexName];
8
- if (keyName) $scope[keyName] = target.$scope[keyName];
9
- $scope.$index = target.$scope.$index;
10
- $scope.$key = target.$scope.$key;
7
+ var element = document.createComment('active');
8
+ var tscope = target && $scoped.get(target);
9
+ if (tscope) {
10
+ if (indexName) $scope[indexName] = tscope[indexName];
11
+ if (keyName) $scope[keyName] = tscope[keyName];
12
+ $scope.$index = tscope.$index;
13
+ $scope.$key = tscope.$key;
11
14
  }
12
- return { $scope };
15
+ $scoped.set(element, $scope);
16
+ return element;
13
17
  }
@@ -7,7 +7,7 @@ var location_href = parseURL(location.href);
7
7
  location_href = `${location_href.protocol}//${location_href.host}/`;
8
8
  cross_.setLocation(location_href);
9
9
 
10
- var cookieItemsInSessionStorageKey = "--zimoli-coms-cross";
10
+ var cookieItemsInSessionStorageKey = "紫茉莉:得特呢勒";
11
11
  var cookiesData = sessionStorage.getItem(cookieItemsInSessionStorageKey);
12
12
  if (cookiesData) {
13
13
  try {