@common-stack/client-react 6.0.8-alpha.48 → 8.0.1-alpha.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/__tests__/integrated-routes.test.d.ts +1 -0
- package/lib/__tests__/router-render.test.d.ts +3 -0
- package/lib/connector/base-connector.d.ts +1 -1
- package/lib/connector/base-connector.js +4 -4
- package/lib/connector/base-connector.js.map +1 -1
- package/lib/connector/connector.d.ts +1 -1
- package/lib/connector/connector.js +2 -2
- package/lib/connector/connector.js.map +1 -1
- package/lib/interfaces/new-router.d.ts +5 -5
- package/lib/route/old/__tests__/config-sidebar-menu.test.d.ts +1 -0
- package/lib/route/old/get-menus.d.ts +2 -0
- package/lib/route/old/get-menus.js +54 -0
- package/lib/route/old/get-menus.js.map +1 -0
- package/lib/route/old/get-routes-notused.d.ts +11 -0
- package/lib/route/old/render.d.ts +2 -0
- package/lib/route/old/render.js +6 -0
- package/lib/route/old/render.js.map +1 -0
- package/lib/route/render-routes.js +14 -14
- package/lib/route/render-routes.js.map +1 -1
- package/lib/route/render-routes.test.d.ts +1 -0
- package/lib/router-factory/index.js +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import 'jest';
|
|
@@ -40,7 +40,7 @@ export declare abstract class BaseFeature extends AbstractFeature implements IRe
|
|
|
40
40
|
* Note: It overwrites the any duplicate key with latest loaded key.
|
|
41
41
|
* TODO: Find a way to warn when there are duplicate keys.
|
|
42
42
|
*/
|
|
43
|
-
getConfiguredMenus(searchPath?: string):
|
|
43
|
+
getConfiguredMenus(searchPath?: string): import("../interfaces").IMenuItem[];
|
|
44
44
|
get navItems(): any;
|
|
45
45
|
get navItemsRight(): any;
|
|
46
46
|
getWrappedRoot(root: React.ReactNode, req?: any): React.ReactNode;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import*as React from'react';import {AbstractFeature}from'@common-stack/client-core';import {merge,sortBy,find}from'lodash-es';import'@wordpress/hooks';import'../plugin-area/plugin-context.js';import {getPlugin,registerPlugin,getPlugins}from'../plugin-area/plugin-api.js';import'sort-keys';import {combine}from'../utils/combine.js';import {hydrate}from'../utils/hydrate.js';import {beforeSSR}from'../utils/before-ssr.js';const getFirst = (features, extractor) => extractor(find(features, (res) => extractor(res)) || {});
|
|
1
|
+
import*as React from'react';import {AbstractFeature}from'@common-stack/client-core';import {merge,sortBy,find}from'lodash-es';import {getMenus}from'../route/old/get-menus.js';import'@wordpress/hooks';import'../plugin-area/plugin-context.js';import {getPlugin,registerPlugin,getPlugins}from'../plugin-area/plugin-api.js';import'sort-keys';import {combine}from'../utils/combine.js';import {hydrate}from'../utils/hydrate.js';import {beforeSSR}from'../utils/before-ssr.js';const getFirst = (features, extractor) => extractor(find(features, (res) => extractor(res)) || {});
|
|
2
2
|
class BaseFeature extends AbstractFeature {
|
|
3
3
|
// private logger;
|
|
4
4
|
componentFillPlugins;
|
|
@@ -71,8 +71,8 @@ class BaseFeature extends AbstractFeature {
|
|
|
71
71
|
* TODO: Find a way to warn when there are duplicate keys.
|
|
72
72
|
*/
|
|
73
73
|
getConfiguredMenus(searchPath = '/') {
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
const routes = Object.assign({}, ...this.menuConfig);
|
|
75
|
+
return getMenus(searchPath, { ...routes });
|
|
76
76
|
}
|
|
77
77
|
get navItems() {
|
|
78
78
|
return this.navItem.map((component, idx) => React.cloneElement(component, {
|
|
@@ -122,7 +122,7 @@ class BaseFeature extends AbstractFeature {
|
|
|
122
122
|
sortMenus = (sortByPriority, menus) => {
|
|
123
123
|
if (sortByPriority) {
|
|
124
124
|
const menuData = this.sortMenusByPriority(menus);
|
|
125
|
-
return menuData.map(
|
|
125
|
+
return menuData.map(menu => {
|
|
126
126
|
return {
|
|
127
127
|
...menu,
|
|
128
128
|
children: menu.children && this.sortMenus(sortByPriority, menu.children),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-connector.js","sources":["../../src/connector/base-connector.tsx"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"base-connector.js","sources":["../../src/connector/base-connector.tsx"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { IReactFeature } from '../interfaces';
|
|
|
2
2
|
import { BaseFeature } from './base-connector';
|
|
3
3
|
import { renderRoutes2 } from '../route/render-routes';
|
|
4
4
|
export declare class Feature extends BaseFeature implements IReactFeature {
|
|
5
|
-
protected renderRoutes:
|
|
5
|
+
protected renderRoutes: (routes: any, solidRoutes: any, extraProps?: {}) => import("react").JSX.Element;
|
|
6
6
|
protected renderRoutes2: typeof renderRoutes2;
|
|
7
7
|
protected getSortedRoutes: (path: string, routeData: import("../interfaces").IRouteData, authWrapper?: (ele: React.ReactElement, props: Record<string, any>) => void) => any;
|
|
8
8
|
protected getSortedRoutes2: (path: string, routeData: import("../interfaces").IRouteData, authWrapper?: (ele: React.ReactElement, props: Record<string, any>) => void) => any;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {BaseFeature}from'./base-connector.js';import {renderRoutes2 as renderRoutes}from'../route/render-routes.js';import {getSortedRoutes}from'../route/get-routes.js';class Feature extends BaseFeature {
|
|
1
|
+
import {BaseFeature}from'./base-connector.js';import {renderRoutes}from'../route/old/render.js';import {renderRoutes2 as renderRoutes$1}from'../route/render-routes.js';import {getSortedRoutes}from'../route/get-routes.js';class Feature extends BaseFeature {
|
|
2
2
|
renderRoutes = renderRoutes;
|
|
3
|
-
renderRoutes2 = renderRoutes;
|
|
3
|
+
renderRoutes2 = renderRoutes$1;
|
|
4
4
|
getSortedRoutes = getSortedRoutes;
|
|
5
5
|
getSortedRoutes2 = getSortedRoutes;
|
|
6
6
|
}export{Feature};//# sourceMappingURL=connector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connector.js","sources":["../../src/connector/connector.tsx"],"sourcesContent":[null],"names":["renderRoutes2"],"mappings":"
|
|
1
|
+
{"version":3,"file":"connector.js","sources":["../../src/connector/connector.tsx"],"sourcesContent":[null],"names":["renderRoutes2"],"mappings":"6NAMM,MAAO,OAAQ,SAAQ,WAAW,CAAA;IAC1B,YAAY,GAAG,YAAY,CAAC;IAC5B,aAAa,GAAGA,cAAa,CAAC;IAC9B,eAAe,GAAG,eAAe,CAAC;IAClC,gBAAgB,GAAG,eAAe,CAAC;AAEhD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FunctionComponent } from 'react';
|
|
2
|
-
import { matchPath } from '
|
|
2
|
+
import { matchPath, ActionFunction } from 'react-router-dom';
|
|
3
3
|
export interface IComponent extends FunctionComponent {
|
|
4
4
|
getInitialProps?: Function;
|
|
5
5
|
preload?: () => Promise<any>;
|
|
@@ -37,10 +37,10 @@ export interface IRoute {
|
|
|
37
37
|
key?: any;
|
|
38
38
|
strict?: boolean;
|
|
39
39
|
sensitive?: boolean;
|
|
40
|
-
wrappers?:
|
|
41
|
-
loader?: (
|
|
42
|
-
action?:
|
|
43
|
-
[k: string]:
|
|
40
|
+
wrappers?: any[];
|
|
41
|
+
loader?: (any: any) => any;
|
|
42
|
+
action?: ActionFunction;
|
|
43
|
+
[k: string]: any;
|
|
44
44
|
}
|
|
45
45
|
export interface IRouteComponentProps<Params extends {
|
|
46
46
|
[K in keyof Params]?: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import {IMenuPosition}from'../../interfaces/menu.js';function getMenus(path, menuData) {
|
|
2
|
+
if (!path.startsWith('/')) {
|
|
3
|
+
throw new Error('Invalid path!');
|
|
4
|
+
}
|
|
5
|
+
let searchPath = path;
|
|
6
|
+
if (path[path.length - 1] !== '/') {
|
|
7
|
+
searchPath = path + '/';
|
|
8
|
+
}
|
|
9
|
+
const routes = Object.keys(menuData).filter(menuPath => {
|
|
10
|
+
return menuPath.indexOf(searchPath) === 0 || menuPath === path;
|
|
11
|
+
});
|
|
12
|
+
const mappedMenuPaths = routes.map(mPath => {
|
|
13
|
+
return {
|
|
14
|
+
route: mPath,
|
|
15
|
+
position: IMenuPosition.Middle,
|
|
16
|
+
...menuData[mPath],
|
|
17
|
+
};
|
|
18
|
+
});
|
|
19
|
+
const root = {
|
|
20
|
+
// just to satisfy types added following
|
|
21
|
+
// TOOD need to correct types so we don't have to enter them.
|
|
22
|
+
name: 'root',
|
|
23
|
+
position: IMenuPosition.Logo,
|
|
24
|
+
};
|
|
25
|
+
mappedMenuPaths.forEach(menutItem => {
|
|
26
|
+
const children = menutItem.route.split('/');
|
|
27
|
+
children.shift();
|
|
28
|
+
const depth = children.length;
|
|
29
|
+
let lastNode = root;
|
|
30
|
+
for (let i = 0; i < depth; i++) {
|
|
31
|
+
const lastIndex = (lastNode.children || []).findIndex(item => {
|
|
32
|
+
if (menutItem.route.startsWith(item.path)) {
|
|
33
|
+
return menutItem.route[item.path.length] === '/';
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
if (lastIndex === -1) {
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
lastNode = lastNode.children[lastIndex];
|
|
40
|
+
// do not overwrite the route's exact value
|
|
41
|
+
lastNode.exact = menuData[lastNode.path].hasOwnProperty('exact') ? menuData[lastNode.path].exact : false;
|
|
42
|
+
}
|
|
43
|
+
if (!lastNode.children) {
|
|
44
|
+
lastNode.children = [];
|
|
45
|
+
}
|
|
46
|
+
const { route: ignore, ...rest } = menutItem;
|
|
47
|
+
lastNode.children.push({
|
|
48
|
+
path: menutItem.route,
|
|
49
|
+
...rest,
|
|
50
|
+
exact: menuData[menutItem.route].hasOwnProperty('exact') ? menuData[menutItem.route].exact : true,
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
return root.children;
|
|
54
|
+
}export{getMenus};//# sourceMappingURL=get-menus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-menus.js","sources":["../../../src/route/old/get-menus.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IRouteData } from '../../interfaces';
|
|
2
|
+
export declare function isUrl(path: any): boolean;
|
|
3
|
+
/**
|
|
4
|
+
* Generates Routes based on the key value, where key has the path of the route and value
|
|
5
|
+
* has rest of the values for building a `<Router ../>` component.
|
|
6
|
+
*
|
|
7
|
+
* @param path: RegExp
|
|
8
|
+
* @param routerData
|
|
9
|
+
* @deprecated
|
|
10
|
+
*/
|
|
11
|
+
export declare function getRoutes2(path: RegExp, routerData: IRouteData): any;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import*as React from'react';import {Routes,Route}from'react-router-dom';const renderRoutes = (routes, solidRoutes, extraProps = {}) => routes ? (React.createElement(Routes, null, [
|
|
2
|
+
...solidRoutes,
|
|
3
|
+
...routes.map((route, i) => (React.createElement(Route, { key: route.key || i, path: route.path, element: route.render
|
|
4
|
+
? React.createElement(route.render, { ...extraProps, route: route })
|
|
5
|
+
: React.createElement(route.component, { ...extraProps, route: route }) }))),
|
|
6
|
+
])) : null;export{renderRoutes};//# sourceMappingURL=render.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render.js","sources":["../../../src/route/old/render.tsx"],"sourcesContent":[null],"names":[],"mappings":"8EAGa,YAAY,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,GAAG,EAAE,KAC7D,MAAM,IACF,KAAC,CAAA,aAAA,CAAA,MAAM,EACF,IAAA,EAAA;AACG,IAAA,GAAG,WAAW;AACd,IAAA,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,MACnB,KAAA,CAAA,aAAA,CAAC,KAAK,EACF,EAAA,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,EACnB,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,OAAO,EACH,KAAK,CAAC,MAAM;AACR,cAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;cAClE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAA,CAEjF,CACL,CAAC;AACL,CAAA,CACI,IACT"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import*as React from'react';import {useState,useEffect,cloneElement,createElement}from'react';import {Routes,Route,Navigate,useLocation}from'
|
|
2
|
-
if (typeof route.redirect ===
|
|
1
|
+
import*as React from'react';import {useState,useEffect,cloneElement,createElement}from'react';import {Routes,Route,Navigate,useLocation}from'react-router-dom';import {sortByPaths}from'../utils/sort-keys.js';import'lodash-es';import'@common-stack/client-core';function createRouteElement(route, { isServer, withRoutesElement, ...options }, children) {
|
|
2
|
+
if (typeof route.redirect === "string") {
|
|
3
3
|
return React.createElement(Navigate, { to: route.redirect, replace: true });
|
|
4
4
|
}
|
|
5
5
|
if (!route.component) {
|
|
@@ -14,7 +14,7 @@ import*as React from'react';import {useState,useEffect,cloneElement,createElemen
|
|
|
14
14
|
handleInitialProps(routeProps);
|
|
15
15
|
}, []);
|
|
16
16
|
const handleInitialProps = async (param) => {
|
|
17
|
-
if (typeof Component.getInitialProps ===
|
|
17
|
+
if (typeof Component.getInitialProps === "function") {
|
|
18
18
|
const initialProps = await Component.getInitialProps(param);
|
|
19
19
|
setInitialProps(initialProps);
|
|
20
20
|
}
|
|
@@ -34,9 +34,9 @@ import*as React from'react';import {useState,useEffect,cloneElement,createElemen
|
|
|
34
34
|
}
|
|
35
35
|
let childrenElement = null;
|
|
36
36
|
if (children) {
|
|
37
|
-
childrenElement = !!withRoutesElement
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
childrenElement = !!withRoutesElement ?
|
|
38
|
+
React.Children.map(children, (child, key) => cloneChild(child.props.element, { key })) :
|
|
39
|
+
children.map((child, key) => cloneChild(child.element, { key }));
|
|
40
40
|
}
|
|
41
41
|
return (React.createElement(Component, { ...routeProps, ...initialProps, ...innerProps, location: location }, childrenElement));
|
|
42
42
|
}
|
|
@@ -50,7 +50,7 @@ import*as React from'react';import {useState,useEffect,cloneElement,createElemen
|
|
|
50
50
|
}
|
|
51
51
|
return routeElement;
|
|
52
52
|
}
|
|
53
|
-
function getRoute({ key, options, route }) {
|
|
53
|
+
function getRoute({ key, options, route, }) {
|
|
54
54
|
const { index, path, sensitive, routes, ...routeOptions } = route;
|
|
55
55
|
const routeObject = {
|
|
56
56
|
path: !!index ? null : path,
|
|
@@ -60,27 +60,26 @@ function getRoute({ key, options, route }) {
|
|
|
60
60
|
...routeOptions,
|
|
61
61
|
};
|
|
62
62
|
if (routeOptions?.loader) {
|
|
63
|
-
routeObject.loader = (loaderContext) => {
|
|
64
|
-
return routeOptions?.loader({ ...loaderContext, ...options.loaderArgs });
|
|
65
|
-
};
|
|
63
|
+
routeObject.loader = (loaderContext) => { return routeOptions?.loader({ ...loaderContext, ...options.loaderArgs }); };
|
|
66
64
|
}
|
|
67
65
|
routeObject.element = createRouteElement(route, { ...options, key }, routeObject.children);
|
|
68
66
|
return routeObject;
|
|
69
67
|
}
|
|
70
68
|
function renderRoute(params) {
|
|
71
69
|
const routeObject = getRoute(params);
|
|
72
|
-
return !!params.options.withRoutesElement ?
|
|
70
|
+
return !!params.options.withRoutesElement ?
|
|
71
|
+
React.createElement(Route, { key: params.key, ...routeObject }) : routeObject;
|
|
73
72
|
}
|
|
74
73
|
function getRoutes({ routes, options }) {
|
|
75
74
|
if (routes) {
|
|
76
75
|
const sortedRoutes = sortByPaths(routes);
|
|
77
|
-
return sortedRoutes.map((route, key) => {
|
|
76
|
+
return (sortedRoutes.map((route, key) => {
|
|
78
77
|
return renderRoute({
|
|
79
78
|
key,
|
|
80
79
|
options,
|
|
81
80
|
route,
|
|
82
81
|
});
|
|
83
|
-
});
|
|
82
|
+
}));
|
|
84
83
|
}
|
|
85
84
|
return null;
|
|
86
85
|
}
|
|
@@ -90,7 +89,8 @@ function renderRoutes(options) {
|
|
|
90
89
|
options,
|
|
91
90
|
routes: options.routes,
|
|
92
91
|
});
|
|
93
|
-
return !!options.withRoutesElement ?
|
|
92
|
+
return !!options.withRoutesElement ?
|
|
93
|
+
React.createElement(Routes, null, routes) : routes;
|
|
94
94
|
}
|
|
95
95
|
return null;
|
|
96
96
|
}export{renderRoutes as renderRoutes2};//# sourceMappingURL=render-routes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-routes.js","sources":["../../src/route/render-routes.tsx"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"render-routes.js","sources":["../../src/route/render-routes.tsx"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import*as React from'react';import {Routes}from'
|
|
1
|
+
import*as React from'react';import {Routes}from'react-router-dom';import {Feature}from'../connector/connector.js';const routerFactory = (routes) => React.createElement(Routes, null, routes);
|
|
2
2
|
const FeatureWithRouterFactory = new Feature({
|
|
3
3
|
routerFactory,
|
|
4
4
|
});export{FeatureWithRouterFactory};//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@common-stack/client-react",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.0.1-alpha.0",
|
|
4
4
|
"description": "Client Module for react app",
|
|
5
5
|
"homepage": "https://github.com/cdmbase/fullstack-pro#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
"watch": "npm run build:lib:watch"
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@common-stack/client-core": "
|
|
34
|
-
"@common-stack/core": "
|
|
33
|
+
"@common-stack/client-core": "8.0.1-alpha.0",
|
|
34
|
+
"@common-stack/core": "8.0.1-alpha.0",
|
|
35
35
|
"@wordpress/hooks": "^3.53.0",
|
|
36
36
|
"browser-bunyan": "^1.6.3",
|
|
37
37
|
"history-with-query": "^4.10.4",
|
|
@@ -56,8 +56,8 @@
|
|
|
56
56
|
"publishConfig": {
|
|
57
57
|
"access": "public"
|
|
58
58
|
},
|
|
59
|
-
"gitHead": "5ea9482cb218673cfd315d2d8040b586eeef38ba",
|
|
60
59
|
"typescript": {
|
|
61
60
|
"definition": "lib/index.d.ts"
|
|
62
|
-
}
|
|
61
|
+
},
|
|
62
|
+
"gitHead": "73d9088ae254fbc43425eed5c9f5cd95bd66e921"
|
|
63
63
|
}
|