x-runtime-lib 0.2.5 → 0.2.6

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 (40) hide show
  1. package/dist/components/element/ref/v1/index.vue.d.ts +15 -0
  2. package/dist/composables/element/basic/border.d.ts +8 -0
  3. package/dist/composables/element/basic/margin.d.ts +9 -0
  4. package/dist/composables/element/basic/padding.d.ts +9 -0
  5. package/dist/composables/element/basic/size.d.ts +11 -0
  6. package/dist/element/_common/items/borderStyleItems/v1/index.d.ts +2 -0
  7. package/dist/element/_common/items/densityItems/v1/index.d.ts +2 -0
  8. package/dist/element/_common/props/basic/v1/index.d.ts +2 -0
  9. package/dist/element/_common/props/border/v1/index.d.ts +3 -0
  10. package/dist/element/_common/types/marginTypes/v1/index.d.ts +2 -0
  11. package/dist/element/_common/types/paddingTypes/v1/index.d.ts +2 -0
  12. package/dist/element/_common/types/sizeTypes/v1/index.d.ts +2 -0
  13. package/dist/element/_pkgs/index.d.ts +1 -1
  14. package/dist/element/_pkgs/v1/index.d.ts +1 -1
  15. package/dist/element/basic/btn/v1/index.d.ts +1 -1
  16. package/dist/element/basic/globality/v1/index.d.ts +3 -0
  17. package/dist/element/basic/ref/v1/index.d.ts +3 -0
  18. package/dist/element/index.d.ts +2 -2
  19. package/dist/{en-DKTWxIj4.js → en-DkjqTzQm.js} +2 -0
  20. package/dist/index.d.ts +2 -0
  21. package/dist/index.js +5615 -621
  22. package/dist/interpreter/bind/base.d.ts +4 -0
  23. package/dist/interpreter/bind/index.d.ts +5 -0
  24. package/dist/interpreter/bind/view.d.ts +5 -0
  25. package/dist/interpreter/index.d.ts +5 -0
  26. package/dist/interpreter/runtime/base.d.ts +2 -0
  27. package/dist/interpreter/runtime/event.d.ts +2 -0
  28. package/dist/interpreter/runtime/index.d.ts +2 -0
  29. package/dist/interpreter/types.d.ts +18 -0
  30. package/dist/types/component.d.ts +8 -0
  31. package/dist/types/data.d.ts +40 -0
  32. package/dist/types/element.d.ts +83 -0
  33. package/dist/types/index.d.ts +4 -0
  34. package/dist/types/interpreter.d.ts +6 -0
  35. package/dist/utils/index.d.ts +1 -0
  36. package/dist/utils/misc.d.ts +5 -0
  37. package/dist/utils/prop.d.ts +1 -1
  38. package/dist/utils/provideInject.d.ts +32 -0
  39. package/dist/{zhHans-QtZriYRu.js → zhHans-BHpRdhb2.js} +2 -0
  40. package/package.json +6 -4
@@ -0,0 +1,4 @@
1
+ /// <reference path="../../../src/global.d.ts" />
2
+ import Interpreter from 'js-interpreter';
3
+ declare function bindBase(interpreter: Interpreter, globalObject: Object): void;
4
+ export default bindBase;
@@ -0,0 +1,5 @@
1
+ /// <reference path="../../../src/global.d.ts" />
2
+ import Interpreter from 'js-interpreter';
3
+ import { SandboxContext } from '../../types';
4
+ declare function bind(context: SandboxContext, interpreter: Interpreter, globalObject: Object): void;
5
+ export default bind;
@@ -0,0 +1,5 @@
1
+ /// <reference path="../../../src/global.d.ts" />
2
+ import Interpreter from 'js-interpreter';
3
+ import { SandboxContext } from '../../types';
4
+ declare function bindView(context: SandboxContext, interpreter: Interpreter, globalObject: Object): void;
5
+ export default bindView;
@@ -0,0 +1,5 @@
1
+ /// <reference path="../../src/global.d.ts" />
2
+ import Interpreter from 'js-interpreter';
3
+ import { SandboxContext } from '../types';
4
+ export declare function startInterpreter(context: SandboxContext, code: string): Interpreter;
5
+ export declare function stopInterpreter(interpreter: Interpreter): void;
@@ -0,0 +1,2 @@
1
+ declare const base = "\nvar __env__ = 'dev'\n\nfunction __getEnv__() {\n return __env__\n}\n";
2
+ export default base;
@@ -0,0 +1,2 @@
1
+ declare const event = "\nvar __events__ = {}\n\nfunction __addEventListenerV1__(id, event, callback) {\n if (typeof(id) !== 'string' || !id) {\n return\n }\n if (typeof(event) !== 'string' || !event) {\n return\n }\n if (typeof(callback) !== 'function') {\n return\n }\n if (!__events__[id]) {\n __events__[id] = {}\n }\n if (!__events__[id][event]) {\n __events__[id][event] = []\n }\n var callbacks = __events__[id][event]\n for (var i = 0; i < callbacks.length; i++) {\n if (callbacks[i] === callback) {\n return\n }\n }\n callbacks.push(callback)\n}\n\nfunction __removeEventListenerV1__(id, event, callback) {\n if (typeof(id) !== 'string' || !id) {\n return\n }\n if (typeof(event) !== 'string' || !event) {\n return\n }\n if (typeof(callback) !== 'function') {\n return\n }\n if (!__events__[id]) {\n return\n }\n var callbacks = __events__[id][event]\n if (!callbacks) {\n return\n }\n for (var i = 0; i < callbacks.length; i++) {\n if (callbacks[i] === callback) {\n callbacks.splice(i, 1)\n return\n }\n }\n}\n\nfunction __triggerEvent__(id, event, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16) {\n if (typeof(id) !== 'string' || !id) {\n return\n }\n if (typeof(event) !== 'string' || !event) {\n return\n }\n if (!__events__[id]) {\n return\n }\n var callbacks = __events__[id][event]\n if (!callbacks) {\n return\n }\n for (var i = 0; i < callbacks.length; i++) {\n callbacks[i](p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16)\n }\n}\n";
2
+ export default event;
@@ -0,0 +1,2 @@
1
+ declare const runtime: string;
2
+ export default runtime;
@@ -0,0 +1,18 @@
1
+ export interface Context {
2
+ env: string;
3
+ type: string;
4
+ data: Data;
5
+ }
6
+ interface Data {
7
+ type: string;
8
+ version: string;
9
+ view: View;
10
+ }
11
+ interface View {
12
+ nodes: Node[];
13
+ }
14
+ export interface Node {
15
+ id: string;
16
+ children?: Node[];
17
+ }
18
+ export {};
@@ -0,0 +1,8 @@
1
+ export interface RefContext {
2
+ parent?: RefContext;
3
+ refid: string;
4
+ }
5
+ export interface BaseProps {
6
+ node: any;
7
+ outer?: boolean;
8
+ }
@@ -0,0 +1,40 @@
1
+ export type Env = 'dev' | 'prod';
2
+ export type Mode = 'runtime' | 'editor';
3
+ export type Type = 'page' | 'comp';
4
+ export interface Base {
5
+ params: any[];
6
+ }
7
+ export interface Node {
8
+ id: string;
9
+ key: string;
10
+ alias?: string;
11
+ ref?: {
12
+ id: string;
13
+ };
14
+ children?: Node[];
15
+ }
16
+ export interface View {
17
+ nodes: Node[];
18
+ }
19
+ export interface CodeEntry {
20
+ blockly: object;
21
+ script: string;
22
+ }
23
+ export interface Code {
24
+ main: CodeEntry;
25
+ }
26
+ export interface Data {
27
+ type: 'common';
28
+ version: string;
29
+ base: Base;
30
+ view: View;
31
+ code: Code;
32
+ }
33
+ export interface Depend {
34
+ name: string;
35
+ dataSeq: number;
36
+ data: Data;
37
+ }
38
+ export interface Depends {
39
+ [key: string]: Depend;
40
+ }
@@ -0,0 +1,83 @@
1
+ export type ZEvent = {
2
+ key: string;
3
+ name: string;
4
+ params?: {
5
+ key: string;
6
+ name: string;
7
+ }[];
8
+ };
9
+ export type ZMethod = {
10
+ key: string;
11
+ name: string;
12
+ inputs?: {
13
+ key: string;
14
+ name: string;
15
+ }[];
16
+ outputs?: {
17
+ key: string;
18
+ name: string;
19
+ }[];
20
+ };
21
+ export type ZItem = {
22
+ title: string;
23
+ value: string;
24
+ };
25
+ export type ZType = {
26
+ name: string;
27
+ ui: 'word' | 'pixelInput' | 'percentInput';
28
+ validator(v: unknown): boolean;
29
+ default: unknown;
30
+ precision?: number;
31
+ min?: number;
32
+ max?: number;
33
+ step?: number;
34
+ };
35
+ export type ZProp = {
36
+ key: string;
37
+ keyFlag?: boolean;
38
+ name: string;
39
+ children?: ZProp[];
40
+ ui?: 'void' | 'strInput' | 'numInput' | 'switch' | 'select' | 'colorPicker' | 'multiTypes' | 'compSelect';
41
+ array?: boolean;
42
+ default?: unknown;
43
+ readonly?: boolean;
44
+ static?: boolean;
45
+ value?: unknown;
46
+ precision?: number;
47
+ min?: number;
48
+ max?: number;
49
+ step?: number;
50
+ items?: ZItem[];
51
+ types?: ZType[];
52
+ };
53
+ export type ZProps = {
54
+ [key: string]: ZProp[];
55
+ };
56
+ export type ZElement = {
57
+ key: string;
58
+ name: string;
59
+ comp: string;
60
+ leaf: boolean;
61
+ events: ZEvent[];
62
+ methods: ZMethod[];
63
+ props: ZProps;
64
+ internal?: boolean;
65
+ };
66
+ export type ZElements = {
67
+ [key: string]: ZElement;
68
+ };
69
+ export type ZGroup = {
70
+ key: string;
71
+ name: string;
72
+ items: string[];
73
+ };
74
+ export type ZPkg = {
75
+ version: string;
76
+ elements: Set<string>;
77
+ globalityKey: string;
78
+ refKey: string;
79
+ groups: ZGroup[];
80
+ };
81
+ export type ZPkgs = {
82
+ [key: string]: ZPkg;
83
+ };
@@ -0,0 +1,4 @@
1
+ export * from './component';
2
+ export * from './data';
3
+ export * from './element';
4
+ export * from './interpreter';
@@ -0,0 +1,6 @@
1
+ import { Data, Env, Type } from './data';
2
+ export interface SandboxContext {
3
+ env: Env;
4
+ type: Type;
5
+ data: Data;
6
+ }
@@ -1,3 +1,4 @@
1
1
  export * from './misc';
2
2
  export * from './node';
3
3
  export * from './prop';
4
+ export * from './provideInject';
@@ -1 +1,6 @@
1
1
  export declare function genId(len: number): string;
2
+ export declare function isEmptyStr(v: unknown): boolean;
3
+ export declare function isPixelStr(v: unknown): boolean;
4
+ export declare function isPercentStr(v: unknown): boolean;
5
+ export declare function parsePixelStr(v: unknown): number | undefined;
6
+ export declare function parsePercentStr(v: unknown): number | undefined;
@@ -1,4 +1,4 @@
1
- import { ZProp } from '../element';
1
+ import { ZProp } from '../types';
2
2
  export declare function getPropTag(type: string, subtype: string): string | undefined;
3
3
  export declare function getPropDefault(prop: ZProp): unknown;
4
4
  export declare function initProps(node: any, props: ZProp[]): void;
@@ -0,0 +1,32 @@
1
+ /// <reference path="../../src/global.d.ts" />
2
+ import { Ref, ShallowReactive } from 'vue';
3
+ import { Env, Mode, Type, Data, Depends } from '../types';
4
+ import Interpreter from 'js-interpreter';
5
+ interface I18n {
6
+ global: {
7
+ t(key: string): string;
8
+ };
9
+ }
10
+ export declare function provideI18n(i18n: I18n): void;
11
+ export declare function injectI18n(): I18n;
12
+ export declare function provideEnv(env: Ref<Env>): void;
13
+ export declare function injectEnv(): Ref<Env>;
14
+ export declare function provideMode(mode: Ref<Mode>): void;
15
+ export declare function injectMode(): Ref<Mode>;
16
+ interface Device {
17
+ width: number;
18
+ height: number;
19
+ }
20
+ export declare function provideDevice(device: Ref<Device>): void;
21
+ export declare function injectDevice(): Ref<Device>;
22
+ export declare function provideDark(dark: Ref<boolean>): void;
23
+ export declare function injectDark(): Ref<boolean>;
24
+ export declare function provideType(type: Ref<Type>): void;
25
+ export declare function injectType(): Ref<Type>;
26
+ export declare function provideData(data: Ref<Data>): void;
27
+ export declare function injectData(): Ref<Data>;
28
+ export declare function provideDepends(depends: ShallowReactive<Depends>): void;
29
+ export declare function injectDepends(): ShallowReactive<Depends>;
30
+ export declare function provideInterpreter(interpreter: Ref<Interpreter | undefined>): void;
31
+ export declare function injectInterpreter(): Ref<Interpreter | undefined>;
32
+ export {};
@@ -1,8 +1,10 @@
1
1
  const t = {
2
2
  basic: "基本",
3
3
  button: "按钮",
4
+ circularRef: "循环引用",
4
5
  click: "单击",
5
6
  comfortable: "舒适",
7
+ compNotAvail: "组件不可用",
6
8
  compact: "紧凑",
7
9
  default: "缺省",
8
10
  density: "密度",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "x-runtime-lib",
3
3
  "private": false,
4
- "version": "0.2.5",
4
+ "version": "0.2.6",
5
5
  "type": "module",
6
6
  "module": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -21,6 +21,11 @@
21
21
  "*.{vue,js,jsx,cjs,mjs,ts,tsx,cts,mts}": "eslint --fix",
22
22
  "*": "prettier --write ."
23
23
  },
24
+ "dependencies": {
25
+ "js-interpreter": "^5.1.2",
26
+ "lodash-es": "^4.17.21",
27
+ "x-essential-lib": "^0.3.17"
28
+ },
24
29
  "peerDependencies": {
25
30
  "vue": "^3.4.26",
26
31
  "vue-i18n": "^9.13.1",
@@ -44,8 +49,5 @@
44
49
  "vite": "^5.2.0",
45
50
  "vite-plugin-css-injected-by-js": "^3.5.0",
46
51
  "vue-tsc": "^2.0.6"
47
- },
48
- "dependencies": {
49
- "lodash-es": "^4.17.21"
50
52
  }
51
53
  }