render-core 1.3.2 → 1.3.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.
@@ -10,4 +10,10 @@ export declare class PageController {
10
10
  receiver(method: string, ...args: any[]): void;
11
11
  set crtTag(element: Element);
12
12
  get crtTag(): Element;
13
+ /**
14
+ * Change the tag theme
15
+ * @param tag
16
+ * @param style
17
+ */
18
+ changeTheme(tag: any, style: string): void;
13
19
  }
@@ -1,3 +1,4 @@
1
+ import { changeStyle } from "../../core/utility/styleUtility";
1
2
  var PageController = /** @class */ (function () {
2
3
  //构造函数
3
4
  function PageController() {
@@ -28,6 +29,14 @@ var PageController = /** @class */ (function () {
28
29
  enumerable: false,
29
30
  configurable: true
30
31
  });
32
+ /**
33
+ * Change the tag theme
34
+ * @param tag
35
+ * @param style
36
+ */
37
+ PageController.prototype.changeTheme = function (tag, style) {
38
+ changeStyle(tag, style);
39
+ };
31
40
  return PageController;
32
41
  }());
33
42
  export { PageController };
@@ -6,10 +6,10 @@ import { extractForArray, extractForMap } from "../../utility/vForUtility";
6
6
  */
7
7
  export function resolver_for_of(elements, data) {
8
8
  var _loop_1 = function (i) {
9
- var result = elements[i].hasAttribute("@for-of");
9
+ var result = elements[i].hasAttribute("@list");
10
10
  if (result) {
11
- var dataName = elements[i].getAttribute("@for-of");
12
- elements[i].removeAttribute("@for-of");
11
+ var dataName = elements[i].getAttribute("@list");
12
+ elements[i].removeAttribute("@list");
13
13
  if (data[dataName] instanceof Array) {
14
14
  data[dataName].forEach(function (value, index) {
15
15
  extractForArray(elements[i].parentNode, elements[i], index, value);
@@ -19,7 +19,7 @@ export function resolver_for_of(elements, data) {
19
19
  elements[i].parentNode.removeChild(elements[i]);
20
20
  }
21
21
  else {
22
- console.log("Instruction @for-of need an array datatype to extract!");
22
+ console.log("Instruction @list need an array datatype to extract!");
23
23
  }
24
24
  }
25
25
  if (elements[i]) {
@@ -40,16 +40,16 @@ export function resolver_for_of(elements, data) {
40
40
  */
41
41
  export function resolver_for_each(elements, data) {
42
42
  for (var i = 0; i < elements.length; i++) {
43
- var result = elements[i].hasAttribute("@for-each");
43
+ var result = elements[i].hasAttribute("@document");
44
44
  if (result) {
45
- var dataName = elements[i].getAttribute("@for-each");
46
- elements[i].removeAttribute("@for-each");
45
+ var dataName = elements[i].getAttribute("@document");
46
+ elements[i].removeAttribute("@document");
47
47
  if (data[dataName] instanceof Object) {
48
48
  extractForMap(elements[i].parentNode, elements[i], data[dataName]);
49
49
  i++;
50
50
  }
51
51
  else {
52
- console.log("Instruction @for-of need an object datatype to extract!");
52
+ console.log("Instruction @document need an object datatype to extract!");
53
53
  }
54
54
  //将模板节点删除
55
55
  elements[i].parentNode.removeChild(elements[i]);
@@ -29,22 +29,10 @@ export function resolver_array_single(element, index, data) {
29
29
  */
30
30
  export function resolver_array_multi(elements, index, data) {
31
31
  var _loop_1 = function (i) {
32
- //解析data
33
- if (elements[i].hasAttribute("@data")) {
34
- elements[i].removeAttribute("@data");
35
- // @ts-ignore
36
- elements[i].innerText = data;
37
- }
38
- //解析index
39
- if (elements[i].hasAttribute("@index")) {
40
- elements[i].removeAttribute("@index");
41
- // @ts-ignore
42
- elements[i].innerText = index;
43
- }
44
32
  if (elements[i]) {
45
33
  //检查v-for-item,该指令不可以用在根元素上
46
- if (elements[i].hasAttribute("@for-item")) {
47
- elements[i].removeAttribute("@for-item");
34
+ if (elements[i].hasAttribute("@list-document")) {
35
+ elements[i].removeAttribute("@list-document");
48
36
  part_render_map(elements[i].parentNode, elements[i], data);
49
37
  i++;
50
38
  //删除节点
@@ -53,8 +41,8 @@ export function resolver_array_multi(elements, index, data) {
53
41
  }
54
42
  if (elements[i]) {
55
43
  //检查v-for-array
56
- if (elements[i].hasAttribute("@for-index")) {
57
- elements[i].removeAttribute("@for-index");
44
+ if (elements[i].hasAttribute("@list-list")) {
45
+ elements[i].removeAttribute("@list-list");
58
46
  data.forEach(function (value, index) {
59
47
  extractForArray(elements[i].parentNode, elements[i], index, value);
60
48
  i++;
@@ -63,6 +51,18 @@ export function resolver_array_multi(elements, index, data) {
63
51
  elements[i].parentNode.removeChild(elements[i]);
64
52
  }
65
53
  }
54
+ //解析data
55
+ if (elements[i].hasAttribute("@data")) {
56
+ elements[i].removeAttribute("@data");
57
+ // @ts-ignore
58
+ elements[i].innerText = data;
59
+ }
60
+ //解析index
61
+ if (elements[i].hasAttribute("@index")) {
62
+ elements[i].removeAttribute("@index");
63
+ // @ts-ignore
64
+ elements[i].innerText = index;
65
+ }
66
66
  if (elements[i]) {
67
67
  resolver_array_multi(elements[i].children, index, data);
68
68
  }
@@ -7,9 +7,9 @@ import { extractForArray } from "../../utility/vForUtility";
7
7
  */
8
8
  export function resolver_map_single(element, data) {
9
9
  //检查v-data
10
- if (element.hasAttribute("@key")) {
11
- var property = element.getAttribute("@key");
12
- element.removeAttribute("@key");
10
+ if (element.hasAttribute("@section")) {
11
+ var property = element.getAttribute("@section");
12
+ element.removeAttribute("@section");
13
13
  // @ts-ignore
14
14
  element.innerText = data[property];
15
15
  }
@@ -23,18 +23,11 @@ export function resolver_map_single(element, data) {
23
23
  */
24
24
  export function resolver_map_multi(elements, data) {
25
25
  var _loop_1 = function (i) {
26
- //检查v-key
27
- if (elements[i].hasAttribute("@key")) {
28
- var property = elements[i].getAttribute("@key");
29
- elements[i].removeAttribute("@key");
30
- // @ts-ignore
31
- elements[i].innerText = data[property];
32
- }
33
26
  if (elements[i]) {
34
27
  //检查v-for-item
35
- if (elements[i].hasAttribute("@for-item")) {
36
- var property = elements[i].getAttribute("@for-item");
37
- elements[i].removeAttribute("@for-item");
28
+ if (elements[i].hasAttribute("@document-document")) {
29
+ var property = elements[i].getAttribute("@document-document");
30
+ elements[i].removeAttribute("@document-document");
38
31
  part_render_map(elements[i].parentNode, elements[i], data[property]);
39
32
  i++;
40
33
  //删除节点
@@ -43,9 +36,9 @@ export function resolver_map_multi(elements, data) {
43
36
  }
44
37
  if (elements[i]) {
45
38
  //检查v-for-array
46
- if (elements[i].hasAttribute("@for-index")) {
47
- var property = elements[i].getAttribute("@for-index");
48
- elements[i].removeAttribute("@for-index");
39
+ if (elements[i].hasAttribute("@document-list")) {
40
+ var property = elements[i].getAttribute("@document-list");
41
+ elements[i].removeAttribute("@document-list");
49
42
  data[property].forEach(function (value, index) {
50
43
  extractForArray(elements[i].parentNode, elements[i], index, value);
51
44
  i++;
@@ -54,6 +47,13 @@ export function resolver_map_multi(elements, data) {
54
47
  elements[i].parentNode.removeChild(elements[i]);
55
48
  }
56
49
  }
50
+ //检查v-key
51
+ if (elements[i].hasAttribute("@section")) {
52
+ var property = elements[i].getAttribute("@section");
53
+ elements[i].removeAttribute("@section");
54
+ // @ts-ignore
55
+ elements[i].innerText = data[property];
56
+ }
57
57
  //深度展开
58
58
  if (elements[i]) {
59
59
  resolver_map_multi(elements[i].children, data);
@@ -3,9 +3,8 @@ import { Component } from "../../class/component/component";
3
3
  /**
4
4
  * 向raw_data中注入props和Query
5
5
  * @param controller
6
- * @param tagTemplate
7
6
  */
8
- export declare function inject(controller: ComponentController, tagTemplate: Element): void;
7
+ export declare function inject(controller: ComponentController): void;
9
8
  /**
10
9
  *
11
10
  * @param controller
@@ -5,9 +5,10 @@ import { resolver_Refs } from "../cmd/ref/v-ref";
5
5
  /**
6
6
  * 向raw_data中注入props和Query
7
7
  * @param controller
8
- * @param tagTemplate
9
8
  */
10
- export function inject(controller, tagTemplate) {
9
+ export function inject(controller) {
10
+ //注入name
11
+ Reflect.set(controller.raw_data, "$name", controller.proto.getName());
11
12
  //注入props
12
13
  getCodeSpaceForProps(controller.raw_data, resolveProps(Reflect.get(window, "context").crtTag, controller.proto.getProps()));
13
14
  //注入query
@@ -25,7 +25,7 @@ function cycleBridge(controller, proto, child, link, tagTemplate) {
25
25
  controller.proto = proto;
26
26
  controller.mode = proto.getMode();
27
27
  //向raw_data中注入元数据
28
- inject(controller, tagTemplate);
28
+ inject(controller);
29
29
  //数据渲染代理对象
30
30
  controller.proxyForMethods = getProxyObject(controller.raw_data, controller);
31
31
  injectComputed(controller, proto);
@@ -13,7 +13,7 @@ export function locateInputAddress(controller) {
13
13
  locateInput(target, doc, controller);
14
14
  break;
15
15
  case "SELECT":
16
- locateSelect(target, doc, controller);
16
+ locateSelect(target, doc);
17
17
  break;
18
18
  case "TEXTAREA":
19
19
  locateTextArea(target, doc, controller);
@@ -93,7 +93,7 @@ function locateTextArea(target, doc, controller) {
93
93
  // @ts-ignore
94
94
  target.setSelectionRange(doc.start, doc.start);
95
95
  }
96
- function locateSelect(target, doc, controller) {
96
+ function locateSelect(target, doc) {
97
97
  // @ts-ignore
98
98
  var list = target.getElementsByTagName("option");
99
99
  for (var i = 0; i < list.length; i++) {
@@ -20,3 +20,9 @@ export declare function styleResolve(tag: string): void;
20
20
  * @param theme
21
21
  */
22
22
  export declare function reloadStyle(theme: string): void;
23
+ /**
24
+ *
25
+ * @param tag
26
+ * @param theme
27
+ */
28
+ export declare function changeStyle(tag: string, theme: string): void;
@@ -73,3 +73,24 @@ export function reloadStyle(theme) {
73
73
  }
74
74
  });
75
75
  }
76
+ /**
77
+ *
78
+ * @param tag
79
+ * @param theme
80
+ */
81
+ export function changeStyle(tag, theme) {
82
+ var styleTxt = Reflect.get(window, "styleLib").get(tag.toUpperCase()).get(theme);
83
+ if (styleTxt === undefined) {
84
+ console.log("Dont`t find this style!");
85
+ }
86
+ else {
87
+ var style = document.createElement('style');
88
+ var text = document.createTextNode(styleTxt);
89
+ style.appendChild(text);
90
+ style.setAttribute("tag", tag.toUpperCase());
91
+ style.setAttribute("theme", theme);
92
+ var head = document.getElementsByTagName('head')[0];
93
+ var target = head.querySelector("style" + "[tag=" + tag.toUpperCase() + "]");
94
+ head.replaceChild(style, target);
95
+ }
96
+ }
package/meta/meta.js CHANGED
@@ -1,4 +1,4 @@
1
1
  export default {
2
- version: "2.0.0",
2
+ version: "1.3.3",
3
3
  style: "default"
4
4
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "render-core",
3
- "version": "1.3.2",
3
+ "version": "1.3.4",
4
4
  "description": "The core of render-js",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -8,7 +8,7 @@ import { RenderJS } from "../index";
8
8
  */
9
9
  export declare function registerTagLib(application: RenderJS, component: Component | Component[]): void;
10
10
  /**
11
- *
11
+ * The entrancy of render
12
12
  * @param renderjs
13
13
  */
14
14
  export declare function render(renderjs: RenderJS): void;
package/runtime/tools.js CHANGED
@@ -30,7 +30,7 @@ export function registerTagLib(application, component) {
30
30
  }
31
31
  }
32
32
  /**
33
- *
33
+ * The entrancy of render
34
34
  * @param renderjs
35
35
  */
36
36
  export function render(renderjs) {