@tramvai/child-app-core 2.70.0 → 2.72.0
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.
- package/lib/createChildApp.es.js +24 -0
- package/lib/createChildApp.js +28 -0
- package/lib/index.es.js +1 -46
- package/lib/index.js +6 -46
- package/lib/renderWrapper.es.js +25 -0
- package/lib/renderWrapper.js +29 -0
- package/package.json +8 -9
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { provide } from '@tramvai/core';
|
|
2
|
+
import { CHILD_APP_INTERNAL_RENDER_TOKEN } from '@tramvai/tokens-child-app';
|
|
3
|
+
import { renderWrapper } from './renderWrapper.es.js';
|
|
4
|
+
|
|
5
|
+
const createChildApp = ({ name, modules, actions, providers = [], render, }) => {
|
|
6
|
+
return {
|
|
7
|
+
name,
|
|
8
|
+
modules,
|
|
9
|
+
actions,
|
|
10
|
+
providers: [
|
|
11
|
+
...providers,
|
|
12
|
+
...(render
|
|
13
|
+
? [
|
|
14
|
+
provide({
|
|
15
|
+
provide: CHILD_APP_INTERNAL_RENDER_TOKEN,
|
|
16
|
+
useValue: renderWrapper(render),
|
|
17
|
+
}),
|
|
18
|
+
]
|
|
19
|
+
: []),
|
|
20
|
+
],
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export { createChildApp };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var core = require('@tramvai/core');
|
|
6
|
+
var tokensChildApp = require('@tramvai/tokens-child-app');
|
|
7
|
+
var renderWrapper = require('./renderWrapper.js');
|
|
8
|
+
|
|
9
|
+
const createChildApp = ({ name, modules, actions, providers = [], render, }) => {
|
|
10
|
+
return {
|
|
11
|
+
name,
|
|
12
|
+
modules,
|
|
13
|
+
actions,
|
|
14
|
+
providers: [
|
|
15
|
+
...providers,
|
|
16
|
+
...(render
|
|
17
|
+
? [
|
|
18
|
+
core.provide({
|
|
19
|
+
provide: tokensChildApp.CHILD_APP_INTERNAL_RENDER_TOKEN,
|
|
20
|
+
useValue: renderWrapper.renderWrapper(render),
|
|
21
|
+
}),
|
|
22
|
+
]
|
|
23
|
+
: []),
|
|
24
|
+
],
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
exports.createChildApp = createChildApp;
|
package/lib/index.es.js
CHANGED
|
@@ -1,47 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { CHILD_APP_INTERNAL_RENDER_TOKEN } from '@tramvai/tokens-child-app';
|
|
1
|
+
export { createChildApp } from './createChildApp.es.js';
|
|
3
2
|
export * from '@tramvai/tokens-child-app';
|
|
4
|
-
import { jsx } from 'react/jsx-runtime';
|
|
5
|
-
import { useMemo } from 'react';
|
|
6
|
-
import { DIContext } from '@tramvai/react';
|
|
7
|
-
import { EXTEND_RENDER } from '@tramvai/tokens-render';
|
|
8
|
-
|
|
9
|
-
const renderWrapper = (Cmp) => {
|
|
10
|
-
return ({ di, props }) => {
|
|
11
|
-
const Wrapper = useMemo(() => {
|
|
12
|
-
const wrappers = di.get({
|
|
13
|
-
token: EXTEND_RENDER,
|
|
14
|
-
optional: true,
|
|
15
|
-
});
|
|
16
|
-
let Result = jsx(Cmp, { ...props });
|
|
17
|
-
if (wrappers) {
|
|
18
|
-
for (const wrapper of wrappers) {
|
|
19
|
-
Result = wrapper(Result);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return Result;
|
|
23
|
-
}, [di, props]);
|
|
24
|
-
return jsx(DIContext.Provider, { value: di, children: Wrapper });
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
const createChildApp = ({ name, modules, actions, providers = [], render, }) => {
|
|
29
|
-
return {
|
|
30
|
-
name,
|
|
31
|
-
modules,
|
|
32
|
-
actions,
|
|
33
|
-
providers: [
|
|
34
|
-
...providers,
|
|
35
|
-
...(render
|
|
36
|
-
? [
|
|
37
|
-
provide({
|
|
38
|
-
provide: CHILD_APP_INTERNAL_RENDER_TOKEN,
|
|
39
|
-
useValue: renderWrapper(render),
|
|
40
|
-
}),
|
|
41
|
-
]
|
|
42
|
-
: []),
|
|
43
|
-
],
|
|
44
|
-
};
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
export { createChildApp };
|
package/lib/index.js
CHANGED
|
@@ -2,55 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var createChildApp = require('./createChildApp.js');
|
|
6
6
|
var tokensChildApp = require('@tramvai/tokens-child-app');
|
|
7
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
8
|
-
var react = require('react');
|
|
9
|
-
var react$1 = require('@tramvai/react');
|
|
10
|
-
var tokensRender = require('@tramvai/tokens-render');
|
|
11
7
|
|
|
12
|
-
const renderWrapper = (Cmp) => {
|
|
13
|
-
return ({ di, props }) => {
|
|
14
|
-
const Wrapper = react.useMemo(() => {
|
|
15
|
-
const wrappers = di.get({
|
|
16
|
-
token: tokensRender.EXTEND_RENDER,
|
|
17
|
-
optional: true,
|
|
18
|
-
});
|
|
19
|
-
let Result = jsxRuntime.jsx(Cmp, { ...props });
|
|
20
|
-
if (wrappers) {
|
|
21
|
-
for (const wrapper of wrappers) {
|
|
22
|
-
Result = wrapper(Result);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return Result;
|
|
26
|
-
}, [di, props]);
|
|
27
|
-
return jsxRuntime.jsx(react$1.DIContext.Provider, { value: di, children: Wrapper });
|
|
28
|
-
};
|
|
29
|
-
};
|
|
30
8
|
|
|
31
|
-
const createChildApp = ({ name, modules, actions, providers = [], render, }) => {
|
|
32
|
-
return {
|
|
33
|
-
name,
|
|
34
|
-
modules,
|
|
35
|
-
actions,
|
|
36
|
-
providers: [
|
|
37
|
-
...providers,
|
|
38
|
-
...(render
|
|
39
|
-
? [
|
|
40
|
-
core.provide({
|
|
41
|
-
provide: tokensChildApp.CHILD_APP_INTERNAL_RENDER_TOKEN,
|
|
42
|
-
useValue: renderWrapper(render),
|
|
43
|
-
}),
|
|
44
|
-
]
|
|
45
|
-
: []),
|
|
46
|
-
],
|
|
47
|
-
};
|
|
48
|
-
};
|
|
49
9
|
|
|
50
|
-
exports.createChildApp = createChildApp;
|
|
10
|
+
exports.createChildApp = createChildApp.createChildApp;
|
|
51
11
|
Object.keys(tokensChildApp).forEach(function (k) {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
12
|
+
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () { return tokensChildApp[k]; }
|
|
15
|
+
});
|
|
56
16
|
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { DIContext } from '@tramvai/react';
|
|
4
|
+
import { EXTEND_RENDER } from '@tramvai/tokens-render';
|
|
5
|
+
|
|
6
|
+
const renderWrapper = (Cmp) => {
|
|
7
|
+
return ({ di, props }) => {
|
|
8
|
+
const Wrapper = useMemo(() => {
|
|
9
|
+
const wrappers = di.get({
|
|
10
|
+
token: EXTEND_RENDER,
|
|
11
|
+
optional: true,
|
|
12
|
+
});
|
|
13
|
+
let Result = jsx(Cmp, { ...props });
|
|
14
|
+
if (wrappers) {
|
|
15
|
+
for (const wrapper of wrappers) {
|
|
16
|
+
Result = wrapper(Result);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return Result;
|
|
20
|
+
}, [di, props]);
|
|
21
|
+
return jsx(DIContext.Provider, { value: di, children: Wrapper });
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export { renderWrapper };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var react = require('react');
|
|
7
|
+
var react$1 = require('@tramvai/react');
|
|
8
|
+
var tokensRender = require('@tramvai/tokens-render');
|
|
9
|
+
|
|
10
|
+
const renderWrapper = (Cmp) => {
|
|
11
|
+
return ({ di, props }) => {
|
|
12
|
+
const Wrapper = react.useMemo(() => {
|
|
13
|
+
const wrappers = di.get({
|
|
14
|
+
token: tokensRender.EXTEND_RENDER,
|
|
15
|
+
optional: true,
|
|
16
|
+
});
|
|
17
|
+
let Result = jsxRuntime.jsx(Cmp, { ...props });
|
|
18
|
+
if (wrappers) {
|
|
19
|
+
for (const wrapper of wrappers) {
|
|
20
|
+
Result = wrapper(Result);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return Result;
|
|
24
|
+
}, [di, props]);
|
|
25
|
+
return jsxRuntime.jsx(react$1.DIContext.Provider, { value: di, children: Wrapper });
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
exports.renderWrapper = renderWrapper;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tramvai/child-app-core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.72.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -14,21 +14,20 @@
|
|
|
14
14
|
"url": "git@github.com:Tinkoff/tramvai.git"
|
|
15
15
|
},
|
|
16
16
|
"scripts": {
|
|
17
|
-
"build": "tramvai-build --
|
|
18
|
-
"watch": "tsc -w"
|
|
19
|
-
"build-for-publish": "true"
|
|
17
|
+
"build": "tramvai-build --forPublish --preserveModules",
|
|
18
|
+
"watch": "tsc -w"
|
|
20
19
|
},
|
|
21
20
|
"publishConfig": {
|
|
22
21
|
"registry": "https://registry.npmjs.org/"
|
|
23
22
|
},
|
|
24
23
|
"dependencies": {
|
|
25
|
-
"@tramvai/core": "2.
|
|
26
|
-
"@tramvai/react": "2.
|
|
27
|
-
"@tramvai/tokens-child-app": "2.
|
|
28
|
-
"@tramvai/tokens-render": "2.
|
|
24
|
+
"@tramvai/core": "2.72.0",
|
|
25
|
+
"@tramvai/react": "2.72.0",
|
|
26
|
+
"@tramvai/tokens-child-app": "2.72.0",
|
|
27
|
+
"@tramvai/tokens-render": "2.72.0"
|
|
29
28
|
},
|
|
30
29
|
"peerDependencies": {
|
|
31
|
-
"@tinkoff/dippy": "0.8.
|
|
30
|
+
"@tinkoff/dippy": "0.8.13",
|
|
32
31
|
"react": ">=16.14.0"
|
|
33
32
|
},
|
|
34
33
|
"module": "lib/index.es.js"
|