efront 3.34.4 → 3.34.7

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 (44) hide show
  1. package/apps/kugou/favicon.ico +0 -0
  2. package/apps/kugou/home.js +1 -1
  3. package/apps/kugou/ie8.js +93 -0
  4. package/apps/kugou/index.html +5 -2
  5. package/apps/kugou/search/search.js +2 -1
  6. package/coms/basic/#decrypt.js +1 -0
  7. package/coms/basic/#loader.js +26 -14
  8. package/coms/basic/ArrayFill.js +1 -1
  9. package/coms/basic/JSAM.js +7 -3
  10. package/coms/basic/Matrix.js +8 -2
  11. package/coms/basic/awaitable.js +1 -1
  12. package/coms/{zimoli → basic}/color.js +14 -4
  13. package/coms/{zimoli → basic}/color_test.js +0 -0
  14. package/coms/basic/decodeUTF16.js +4 -3
  15. package/coms/basic/encodeUTF16.js +18 -3
  16. package/coms/basic/parseURL.js +49 -13
  17. package/coms/basic/parseURL_test.js +6 -1
  18. package/coms/basic/renderExpress.js +1 -1
  19. package/coms/basic_/Array2.js +1 -1
  20. package/coms/basic_/Promise.js +21 -14
  21. package/coms/basic_/[]map.js +27 -3
  22. package/coms/basic_/readme.md +83 -0
  23. package/coms/kugou/api.js +2 -2
  24. package/coms/kugou/dance.js +50 -2
  25. package/coms/kugou/krc.js +5 -0
  26. package/coms/kugou/playList.html +1 -1
  27. package/coms/kugou/playList.js +1 -0
  28. package/coms/kugou/player.html +3 -3
  29. package/coms/kugou/player.js +17 -13
  30. package/coms/kugou/shortcurt.js +8 -0
  31. package/coms/zimoli/LoadingArray.js +9 -25
  32. package/coms/zimoli/appendChild.js +1 -1
  33. package/coms/zimoli/cless.js +0 -1
  34. package/coms/zimoli/data.js +16 -6
  35. package/coms/zimoli/gallery.js +1 -1
  36. package/coms/zimoli/getGenerator.js +1 -1
  37. package/coms/zimoli/on.js +2 -0
  38. package/coms/zimoli/render.js +33 -33
  39. package/coms/zimoli/selectList.js +1 -1
  40. package/data/packexe-setup.sfx +0 -0
  41. package/package.json +1 -1
  42. package/public/efront.js +1 -1
  43. package/readme.md +9 -8
  44. package/coms/basic/encodeUTF16.asm +0 -62
@@ -32,10 +32,10 @@ var createTemplateNodes = function (text) {
32
32
  } else {
33
33
  var node = document.createElement(this.parentNode.tagName || "div");
34
34
  node.innerHTML = text;
35
- this.with = [].slice.call(node.childNodes, 0);
35
+ this.with = Array.apply(null, node.childNodes);
36
36
  }
37
37
  appendChild.after(this, this.with);
38
- this.with = renderElement(this.with, this.$scope, this.$parentScopes, this.renderid === 9);
38
+ this.with = renderElement(this.with, this.$scope, this.$parentScopes, this.$renderid === 9);
39
39
  };
40
40
  presets.template = function (t) {
41
41
  var comment = document.createComment('template');
@@ -57,16 +57,16 @@ var renderidClosed = 0;
57
57
  var addRenderElement = function () {
58
58
  var element = this;
59
59
  if (!isNode(element)) return;
60
- if (element.renderid !== 9) {
60
+ if (element.$renderid !== 9) {
61
61
  // 只渲染一次
62
- if (element.renderid < 10 && element.renderid > 0) element.renderid = ++renderidOffset;
63
- renderElements[element.renderid] = element;
62
+ if (element.$renderid < 10 && element.$renderid > 0) element.$renderid = ++renderidOffset;
63
+ renderElements[element.$renderid] = element;
64
64
  }
65
65
  rebuild(element);
66
66
  };
67
67
  var removeRenderElement = function () {
68
68
  var element = this;
69
- delete renderElements[element.renderid];
69
+ delete renderElements[element.$renderid];
70
70
  };
71
71
  function refresh(root) {
72
72
  var rest = [];
@@ -130,15 +130,15 @@ var createComment = function (renders, type, expression) {
130
130
 
131
131
  var initialComment = function (comment) {
132
132
  if (!comment.$struct.once) {
133
- comment.renderid = ++renderidOffset;
133
+ comment.$renderid = ++renderidOffset;
134
134
  onmounted(comment, addRenderElement);
135
135
  onremove(comment, removeRenderElement);
136
136
  if (isMounted(comment) || eagermount) rebuild(comment);
137
137
  }
138
138
  else {
139
- comment.renderid = 9;
139
+ comment.$renderid = 9;
140
140
  rebuild(comment);
141
- delete comment.with;
141
+ if (comment.with) comment.with = null;
142
142
  remove(comment);
143
143
  }
144
144
  };
@@ -248,7 +248,7 @@ var createRepeat = function (search, id = 0) {
248
248
  }
249
249
  var clone = element.cloneNode();
250
250
  clone.innerHTML = element.innerHTML;
251
- clone.renderid = id;
251
+ clone.$renderid = id;
252
252
  clone.$scope = $scope;
253
253
  clone.$parentScopes = $parentScopes;
254
254
  clone.$struct = $struct;
@@ -300,7 +300,6 @@ var createIf = function (search, id = 0) {
300
300
  break;
301
301
  }
302
302
  }
303
- // console.log(shouldMount,savedValue,this,this.$scope)
304
303
  if (savedValue === shouldMount) return;
305
304
  savedValue = shouldMount;
306
305
  for (var cx = 0, dx = elements.length; cx < dx; cx += 2) {
@@ -308,8 +307,8 @@ var createIf = function (search, id = 0) {
308
307
  if (cx === shouldMount) {
309
308
  var e = c.$template;
310
309
  appendChild.after(c, e);
311
- if (e.renderid < 0) {
312
- e.renderid = id;
310
+ if (e.$renderid < 0) {
311
+ e.$renderid = id;
313
312
  e = c.$template = render(e, this.$scope, this.$parentScopes);
314
313
  e.$comment = c;
315
314
  }
@@ -722,21 +721,21 @@ function renderRest(element, struct, replacer = element) {
722
721
 
723
722
  function renderElement(element, scope = element.$scope, parentScopes = element.$parentScopes, once) {
724
723
  if (isArrayLike(element)) {
725
- return Array.prototype.slice.call(element).map(function (element) {
724
+ return Array.apply(null, element).map(function (element) {
726
725
  return renderElement(element, scope, parentScopes, once);
727
726
  });
728
727
  }
729
728
  if (!isElement(element)) {
730
729
  return element;
731
730
  }
732
- if (!isNumber(element.renderid)) {
733
- element.renderid = 0;
731
+ if (!isNumber(element.$renderid)) {
732
+ element.$renderid = 0;
734
733
  element.$scope = scope;
735
734
  if (!isEmpty(parentScopes) && !isArray(parentScopes)) {
736
735
  throw new Error('父级作用域链应以数组的类型传入');
737
736
  }
738
737
  if (parentScopes) {
739
- if (element.renderid && !element.$parentScopes || element.$parentScopes && element.$parentScopes.length !== parentScopes.length) {
738
+ if (element.$renderid && !element.$parentScopes || element.$parentScopes && element.$parentScopes.length !== parentScopes.length) {
740
739
  throw new Error("父作用域链的长度必须相等着");
741
740
  }
742
741
  }
@@ -746,25 +745,26 @@ function renderElement(element, scope = element.$scope, parentScopes = element.$
746
745
  if (isEmpty(s.once)) s.once = once;
747
746
  element.$eval = $eval;
748
747
  }
749
- if (element.renderid <= -1) element = renderStructure(element);
748
+ if (element.$renderid <= -1) element = renderStructure(element);
750
749
  if (!element) return;
751
- if (!element || element.renderid < 0 || element.nodeType !== 1) {
750
+ if (!element || element.$renderid < 0 || element.nodeType !== 1) {
752
751
  return element;
753
752
  }
754
753
  for (var id of element.$struct.ids) {
755
754
  if (scope[id] && scope[id] !== element) throw new Error("同一个id不能使用两次:" + id);
756
755
  scope[id] = element;
757
756
  }
758
- var isFirstRender = !element.renderid;
757
+ var isFirstRender = !element.$renderid;
758
+
759
759
  if (isFirstRender) {
760
- element.renderid = 1;
760
+ element.$renderid = 1;
761
761
  var parentNode = element.parentNode;
762
762
  if (parentNode) {
763
- if (parentNode.renderid > 1 || isMounted(parentNode)) element.renderid = 2;
763
+ if (parentNode.$renderid > 1 || isMounted(parentNode)) element.$renderid = 2;
764
764
  }
765
765
  element.renders = element.renders ? [].concat(element.renders) : [];
766
766
  var { copys, binds, once } = element.$struct;
767
- if (once) element.renderid = 9;
767
+ if (once) element.$renderid = 9;
768
768
  if (binds.src) {
769
769
  element.$src = parseRepeat(binds.src);
770
770
  }
@@ -784,7 +784,7 @@ function renderElement(element, scope = element.$scope, parentScopes = element.$
784
784
  if (isNode(replacer) && element !== replacer) {
785
785
  if (!replacer.$scope) replacer.$scope = scope;
786
786
  if (!replacer.$parentScopes) replacer.$parentScopes = parentScopes;
787
- if (isElement(replacer) && !replacer.renderid) {
787
+ if (isElement(replacer) && !replacer.$renderid) {
788
788
  createStructure(replacer);
789
789
  if (replacer.children && replacer.children.length) renderElement(replacer.children, replacer.$scope, replacer.$parentScopes, once);
790
790
  renderRest(replacer, replacer.$struct);
@@ -794,7 +794,7 @@ function renderElement(element, scope = element.$scope, parentScopes = element.$
794
794
  if (nextSibling) appendChild.before(nextSibling, replacer);
795
795
  else if (parentNode) appendChild(parentNode, replacer);
796
796
  if (element.parentNode === parentNode) remove(element);
797
- if (!replacer.renderid) replacer.renderid = element.renderid;
797
+ if (!replacer.$renderid) replacer.$renderid = element.$renderid;
798
798
  for (var id of element.$struct.ids) {
799
799
  scope[id] = replacer;
800
800
  }
@@ -818,10 +818,10 @@ function renderElement(element, scope = element.$scope, parentScopes = element.$
818
818
  element.$struct.ons.forEach(([on, key, value]) => on.call(element, element, key, value));
819
819
  }
820
820
  if (element.renders.length) {
821
- if (element.renderid !== 9) {
821
+ if (element.$renderid !== 9) {
822
822
  onmounted(element, addRenderElement);
823
823
  onremove(element, removeRenderElement);
824
- if (isMounted(element) || element.renderid > 1) addRenderElement.call(element);
824
+ if (isMounted(element) || element.$renderid > 1) addRenderElement.call(element);
825
825
  else if (eagermount) rebuild(element);
826
826
  }
827
827
  else {
@@ -876,7 +876,7 @@ function createStructure(element) {
876
876
  if (isArrayLike(element)) return Array.prototype.map.call(element, createStructure);
877
877
  if (element.$struct) return element.$struct;
878
878
  // 处理结构流
879
- var attrs = Array.prototype.slice.call(element.attributes);
879
+ var attrs = Array.apply(null, element.attributes);
880
880
  var types = {};
881
881
  var emiter_reg = /^(?:(v|ng|on|once)?\-|v\-on\:|@|once|on)/i;
882
882
  var ons = [];
@@ -888,6 +888,7 @@ function createStructure(element) {
888
888
  var ids = [];
889
889
  for (var attr of attrs) {
890
890
  var { name, value } = attr;
891
+ if (/^\$/.test(name)) continue;
891
892
  if (name === 'elementid' || name === 'renderid' || name === 'id') {
892
893
  ids.push(value);
893
894
  continue;
@@ -912,7 +913,7 @@ function createStructure(element) {
912
913
  }
913
914
  var key = name.replace(/^(ng|v|.*?)\-/i, "").toLowerCase();
914
915
  if (structures.hasOwnProperty(key)) {
915
- if (element.renderid <= -2) {
916
+ if (element.$renderid <= -2) {
916
917
  if (/^if$|^else/i.test(key)) {
917
918
  if (types.if) {
918
919
  throw new Error(`暂不支持在同一元素上使用多次if结构!`);
@@ -924,14 +925,13 @@ function createStructure(element) {
924
925
  }
925
926
  }
926
927
  if (/^if$|^else/i.test(key)) {
927
- types.if = attr;
928
- attr.key = key;
928
+ types.if = { key, name, value };
929
929
  }
930
930
  else {
931
931
  types.repeat = attr;
932
932
  }
933
- if (!element.renderid) element.renderid = -1;
934
- else element.renderid = -2;
933
+ if (!element.$renderid) element.$renderid = -1;
934
+ else element.$renderid = -2;
935
935
  element.removeAttribute(name);
936
936
  continue;
937
937
  }
@@ -188,7 +188,7 @@ function main() {
188
188
  appendChild(page, adder);
189
189
  break;
190
190
  case this.children[1]:
191
- var options = [].slice.call(children, 0, children.length);
191
+ var options = Array.apply(null, children);
192
192
  var edit = selectListEdit(options.slice(0));
193
193
  page.with = edit;
194
194
  on("remove")(edit, function () {
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "efront",
3
- "version": "3.34.4",
3
+ "version": "3.34.7",
4
4
  "description": "简化前端开发,优化web性能",
5
5
  "main": "public/efront.js",
6
6
  "directories": {