@common-stack/client-react 0.6.1-alpha.4 → 3.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.
Files changed (120) hide show
  1. package/lib/__tests__/fill-register-test.js +14 -14
  2. package/lib/__tests__/fill-register-test.js.map +1 -1
  3. package/lib/__tests__/integrated-routes.test.js +15 -17
  4. package/lib/__tests__/integrated-routes.test.js.map +1 -1
  5. package/lib/__tests__/router-render.test.js +8 -12
  6. package/lib/__tests__/router-render.test.js.map +1 -1
  7. package/lib/connector/base-connector.d.ts +53 -0
  8. package/lib/connector/{base-react-client-feature.js → base-connector.js} +79 -30
  9. package/lib/connector/base-connector.js.map +1 -0
  10. package/lib/connector/connector.d.ts +10 -0
  11. package/lib/connector/connector.js +18 -0
  12. package/lib/connector/connector.js.map +1 -0
  13. package/lib/connector/connector.native.d.ts +9 -0
  14. package/lib/connector/connector.native.js +22 -0
  15. package/lib/connector/connector.native.js.map +1 -0
  16. package/lib/{application/config.js → connector/connector.test.js} +11 -13
  17. package/lib/connector/connector.test.js.map +1 -0
  18. package/lib/connector/index.d.ts +1 -0
  19. package/lib/connector/index.js +18 -0
  20. package/lib/connector/index.js.map +1 -0
  21. package/lib/index.d.ts +1 -2
  22. package/lib/index.js +1 -2
  23. package/lib/index.js.map +1 -1
  24. package/lib/index.native.d.ts +1 -1
  25. package/lib/index.native.js +1 -1
  26. package/lib/index.native.js.map +1 -1
  27. package/lib/interfaces/extended-feature.d.ts +50 -0
  28. package/lib/interfaces/extended-feature.js +2 -56
  29. package/lib/interfaces/extended-feature.js.map +1 -1
  30. package/lib/interfaces/index.d.ts +1 -0
  31. package/lib/interfaces/index.js +1 -1
  32. package/lib/interfaces/index.js.map +1 -1
  33. package/lib/interfaces/new-router.d.ts +6 -3
  34. package/lib/inversify/InversifyContext.d.ts +3 -3
  35. package/lib/inversify/InversifyContext.js.map +1 -1
  36. package/lib/plugin-area/__tests__/higher-order-component-util.test.js +1 -1
  37. package/lib/plugin-area/__tests__/higher-order-component-util.test.js.map +1 -1
  38. package/lib/plugin-area/base-plugin-area.js +7 -1
  39. package/lib/plugin-area/base-plugin-area.js.map +1 -1
  40. package/lib/route/__tests__/getFlatMenus.test.js +1 -1
  41. package/lib/route/__tests__/getFlatMenus.test.js.map +1 -1
  42. package/lib/route/get-routes.js +2 -2
  43. package/lib/route/get-routes.js.map +1 -1
  44. package/lib/route/get-routes.test.js +2 -2
  45. package/lib/route/get-routes.test.js.map +1 -1
  46. package/lib/route/index.native.d.ts +1 -1
  47. package/lib/route/index.native.js +1 -1
  48. package/lib/route/old/__tests__/config-sidebar-menu.test.d.ts +1 -0
  49. package/lib/route/old/__tests__/config-sidebar-menu.test.js +197 -198
  50. package/lib/route/old/__tests__/config-sidebar-menu.test.js.map +1 -1
  51. package/lib/route/old/get-routes-notused.js +1 -1
  52. package/lib/route/old/get-routes-notused.js.map +1 -1
  53. package/lib/route/old/render.d.ts +1 -1
  54. package/lib/route/old/render.js +5 -2
  55. package/lib/route/old/render.js.map +1 -1
  56. package/lib/route/react-navigation/get-navigation-utils.d.ts +8 -0
  57. package/lib/route/react-navigation/get-navigation-utils.js.map +1 -1
  58. package/lib/route/react-navigation/get-navigation-utils.test.js +8 -8
  59. package/lib/route/react-navigation/get-navigation-utils.test.js.map +1 -1
  60. package/lib/route/render-routes-native.d.ts +3 -0
  61. package/lib/route/{render-routes.native.js → render-routes-native.js} +14 -17
  62. package/lib/route/render-routes-native.js.map +1 -0
  63. package/lib/route/render-routes.d.ts +1 -2
  64. package/lib/route/render-routes.js +104 -14
  65. package/lib/route/render-routes.js.map +1 -1
  66. package/lib/route/render-routes.test.js +181 -20
  67. package/lib/route/render-routes.test.js.map +1 -1
  68. package/lib/route/test-routes.d.ts +411 -0
  69. package/lib/route/test-routes.js +580 -0
  70. package/lib/route/test-routes.js.map +1 -0
  71. package/lib/route-based-plugin-area/__tests__/higher-order-component-util.test.js +1 -1
  72. package/lib/route-based-plugin-area/__tests__/higher-order-component-util.test.js.map +1 -1
  73. package/lib/router-factory/index.d.ts +1 -1
  74. package/lib/router-factory/index.js +5 -5
  75. package/lib/router-factory/index.js.map +1 -1
  76. package/lib/router-factory/index.native.d.ts +1 -1
  77. package/lib/router-factory/index.native.js +4 -4
  78. package/lib/router-factory/index.native.js.map +1 -1
  79. package/lib/utils/sort-keys.d.ts +1 -0
  80. package/lib/utils/sort-keys.js +13 -1
  81. package/lib/utils/sort-keys.js.map +1 -1
  82. package/lib/utils/sort-keys.test.js +32 -4
  83. package/lib/utils/sort-keys.test.js.map +1 -1
  84. package/package.json +7 -6
  85. package/lib/application/__tests__/react-client.test.d.ts +0 -1
  86. package/lib/application/__tests__/react-client.test.js +0 -23
  87. package/lib/application/__tests__/react-client.test.js.map +0 -1
  88. package/lib/application/base-apollo-client.d.ts +0 -21
  89. package/lib/application/base-apollo-client.js +0 -161
  90. package/lib/application/base-apollo-client.js.map +0 -1
  91. package/lib/application/base-redux-config.d.ts +0 -22
  92. package/lib/application/base-redux-config.js +0 -58
  93. package/lib/application/base-redux-config.js.map +0 -1
  94. package/lib/application/config.d.ts +0 -4
  95. package/lib/application/config.js.map +0 -1
  96. package/lib/application/react-client.d.ts +0 -7
  97. package/lib/application/react-client.js +0 -152
  98. package/lib/application/react-client.js.map +0 -1
  99. package/lib/connector/base-react-client-feature.d.ts +0 -31
  100. package/lib/connector/base-react-client-feature.js.map +0 -1
  101. package/lib/connector/monaco-connector.d.ts +0 -19
  102. package/lib/connector/monaco-connector.js +0 -76
  103. package/lib/connector/monaco-connector.js.map +0 -1
  104. package/lib/connector/react-client-feature.d.ts +0 -7
  105. package/lib/connector/react-client-feature.js +0 -15
  106. package/lib/connector/react-client-feature.js.map +0 -1
  107. package/lib/connector/react-client-feature.native.d.ts +0 -7
  108. package/lib/connector/react-client-feature.native.js +0 -18
  109. package/lib/connector/react-client-feature.native.js.map +0 -1
  110. package/lib/connector/react-client-feature.test.js +0 -10
  111. package/lib/connector/react-client-feature.test.js.map +0 -1
  112. package/lib/interfaces/monaco-feature.d.ts +0 -46
  113. package/lib/interfaces/monaco-feature.js +0 -3
  114. package/lib/interfaces/monaco-feature.js.map +0 -1
  115. package/lib/interfaces/react-client-feature.d.ts +0 -77
  116. package/lib/interfaces/react-client-feature.js +0 -3
  117. package/lib/interfaces/react-client-feature.js.map +0 -1
  118. package/lib/route/render-routes.native.d.ts +0 -4
  119. package/lib/route/render-routes.native.js.map +0 -1
  120. /package/lib/connector/{react-client-feature.test.d.ts → connector.test.d.ts} +0 -0
@@ -25,46 +25,46 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  const React = __importStar(require("react"));
27
27
  require("jest");
28
- const react_client_feature_1 = require("../connector/react-client-feature");
28
+ const connector_1 = require("../connector");
29
29
  describe('Test the registration and retrieval of React Slot Fill Components', () => {
30
- const featureA = new react_client_feature_1.ReactClientFeature({
31
- componentFillPluginIn: [
30
+ const featureA = new connector_1.Feature({
31
+ componentFillPlugins: [
32
32
  {
33
33
  name: 'test-1',
34
- render: () => React.createElement("p", null, "Test 1"),
34
+ render: () => (React.createElement("p", null, "Test 1")),
35
35
  },
36
36
  {
37
37
  name: 'test-2',
38
- render: () => React.createElement("p", null, "Test 2"),
38
+ render: () => (React.createElement("p", null, "Test 2")),
39
39
  },
40
40
  {
41
41
  name: 'test-3',
42
- render: () => React.createElement("p", null, "Test 3"),
42
+ render: () => (React.createElement("p", null, "Test 3")),
43
43
  },
44
44
  ],
45
45
  });
46
- const featureB = new react_client_feature_1.ReactClientFeature({
47
- componentFillPluginIn: [
46
+ const featureB = new connector_1.Feature({
47
+ componentFillPlugins: [
48
48
  {
49
49
  name: 'test-4',
50
- render: () => React.createElement("p", null, "Test 4"),
50
+ render: () => (React.createElement("p", null, "Test 4")),
51
51
  },
52
52
  {
53
53
  name: 'test-5',
54
- render: () => React.createElement("p", null, "Test 5"),
54
+ render: () => (React.createElement("p", null, "Test 5")),
55
55
  },
56
56
  {
57
57
  name: 'test-6',
58
- render: () => React.createElement("p", null, "Test 6"),
58
+ render: () => (React.createElement("p", null, "Test 6")),
59
59
  },
60
60
  ],
61
61
  });
62
62
  test('Should merge all Fills', () => {
63
- const finalFeature = new react_client_feature_1.ReactClientFeature(featureA, featureB);
63
+ const finalFeature = new connector_1.Feature(featureA, featureB);
64
64
  const mergedFills = finalFeature.getComponentFillPlugins();
65
65
  expect(mergedFills.length).toEqual(6);
66
- mergedFills.forEach((i) => expect(typeof i).toEqual('object'));
67
- mergedFills.forEach((i) => expect(typeof i.render).toEqual('function'));
66
+ mergedFills.forEach(i => expect(typeof i).toEqual('object'));
67
+ mergedFills.forEach(i => expect(typeof i.render).toEqual('function'));
68
68
  });
69
69
  });
70
70
  //# sourceMappingURL=fill-register-test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fill-register-test.js","sourceRoot":"","sources":["../../src/__tests__/fill-register-test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,gBAAc;AACd,4EAAkF;AAElF,QAAQ,CAAC,mEAAmE,EAAE,GAAG,EAAE;IAC/E,MAAM,QAAQ,GAAG,IAAI,yCAAO,CAAC;QACzB,qBAAqB,EAAE;YACnB;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,wCAAa;aAC9B;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,wCAAa;aAC9B;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,wCAAa;aAC9B;SACJ;KACJ,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAI,yCAAO,CAAC;QACzB,qBAAqB,EAAE;YACnB;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,wCAAa;aAC9B;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,wCAAa;aAC9B;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,wCAAa;aAC9B;SACJ;KACJ,CAAC,CAAC;IAEH,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,YAAY,GAAG,IAAI,yCAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,YAAY,CAAC,uBAAuB,EAAE,CAAC;QAC3D,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACtC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/D,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"fill-register-test.js","sourceRoot":"","sources":["../../src/__tests__/fill-register-test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,gBAAc;AACd,4CAAqC;AAGrC,QAAQ,CAAC,mEAAmE,EAAE,GAAG,EAAE;IAC/E,MAAM,QAAQ,GAAG,IAAI,mBAAO,CAAC;QACzB,oBAAoB,EAAE;YAClB;gBACE,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAa,CAAC;aAC9B;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAa,CAAC;aAC9B;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAa,CAAC;aAC9B;SACJ;KACwB,CAAC,CAAC;IAE/B,MAAM,QAAQ,GAAG,IAAI,mBAAO,CAAC;QACzB,oBAAoB,EAAE;YAClB;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAa,CAAC;aAChC;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAa,CAAC;aAChC;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAa,CAAC;aAChC;SACJ;KACwB,CAAC,CAAC;IAE/B,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,YAAY,GAAG,IAAI,mBAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,YAAY,CAAC,uBAAuB,EAAE,CAAC;QAC3D,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACtC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7D,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -22,22 +22,19 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  const React = __importStar(require("react"));
30
27
  const ReactDOMServer = __importStar(require("react-dom/server"));
31
- const StaticRouter_1 = __importDefault(require("react-router/StaticRouter"));
32
- const react_router_config_1 = require("react-router-config");
33
- const react_client_feature_1 = require("../connector/react-client-feature");
34
- const server_1 = require("@cdm-logger/server");
35
- const logger = server_1.ConsoleLogger.create('test', { level: 'trace' });
28
+ const server_1 = require("react-router-dom/server");
29
+ const react_router_dom_1 = require("react-router-dom");
30
+ const connector_1 = require("../connector");
31
+ const server_2 = require("@cdm-logger/server");
32
+ const logger = server_2.ConsoleLogger.create('test', { level: 'trace' });
36
33
  require("jest");
37
34
  describe('integration', () => {
38
35
  it('generates the same matches in renderRoutes and matchRoutes', () => {
39
36
  const rendered = [];
40
- const Comp = ({ match, route: { routes } }) => (rendered.push(match), (0, react_router_config_1.renderRoutes)(routes));
37
+ const Comp = ({ match, route: { routes } }) => (rendered.push(match), (0, react_router_dom_1.renderMatches)(routes));
41
38
  const genRoutes = [
42
39
  {
43
40
  ['/ghost']: { component: Comp },
@@ -55,12 +52,12 @@ describe('integration', () => {
55
52
  path: '/pepper',
56
53
  component: Comp,
57
54
  exact: false,
58
- children: [
55
+ routes: [
59
56
  {
60
57
  path: '/pepper/:type',
61
58
  component: Comp,
62
59
  exact: false,
63
- children: [
60
+ routes: [
64
61
  {
65
62
  path: '/pepper/:type/scoville',
66
63
  component: Comp,
@@ -71,16 +68,17 @@ describe('integration', () => {
71
68
  ],
72
69
  },
73
70
  ];
74
- const connector = new react_client_feature_1.ReactClientFeature({ routeConfigIn: genRoutes });
71
+ const connector = new connector_1.Feature({ routeConfig: genRoutes });
75
72
  const connectorRoutes = connector.getConfiguredRoutes();
76
73
  expect(connectorRoutes).toMatchObject(result);
77
74
  const pathname = '/pepper/jalepeno';
78
- const branch = (0, react_router_config_1.matchRoutes)(connectorRoutes, pathname);
79
- ReactDOMServer.renderToString(React.createElement(StaticRouter_1.default, { location: pathname, context: {} }, (0, react_router_config_1.renderRoutes)(connectorRoutes)));
75
+ const branch = (0, react_router_dom_1.matchRoutes)(connectorRoutes, pathname);
76
+ ReactDOMServer.renderToString(React.createElement(server_1.StaticRouter, { location: pathname }, (0, react_router_dom_1.renderMatches)(connectorRoutes)));
80
77
  expect(branch).toMatchSnapshot();
81
- expect(branch.length).toEqual(1);
82
- expect(rendered.length).toEqual(1);
83
- expect(branch[0].match).toEqual(rendered[0]);
78
+ expect(branch.length).toEqual(2);
79
+ expect(rendered.length).toEqual(2);
80
+ expect(branch[0].pathname).toEqual(rendered[0]);
81
+ expect(branch[1].pathname).toEqual(rendered[1]);
84
82
  });
85
83
  });
86
84
  //# sourceMappingURL=integrated-routes.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"integrated-routes.test.js","sourceRoot":"","sources":["../../src/__tests__/integrated-routes.test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,iEAAmD;AACnD,6EAAqD;AACrD,6DAAgE;AAChE,4EAAkF;AAClF,+CAA2E;AAE3E,MAAM,MAAM,GAAsB,sBAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AACnF,gBAAc;AAEd,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QAClE,MAAM,QAAQ,GAAG,EAAE,CAAC;QAEpB,MAAM,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAC3C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAA,kCAAY,EAAC,MAAM,CAAC,CAC7C,CAAC;QAEF,MAAM,SAAS,GAAG;YACd;gBACI,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;gBAC/B,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9C,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAG,KAAK,EAAE,KAAK,EAAC;gBACpD,CAAC,wBAAwB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;aAChE;SACJ,CAAC;QACF,MAAM,MAAM,GAAG;YACX;gBACI,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,IAAI;aAClB;YACD;gBACI,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,KAAK;gBACZ,QAAQ,EAAE;oBACN;wBACI,IAAI,EAAE,eAAe;wBACrB,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,KAAK;wBACZ,QAAQ,EAAE;4BACN;gCACI,IAAI,EAAE,wBAAwB;gCAC9B,SAAS,EAAE,IAAI;gCACf,KAAK,EAAE,KAAK;6BACf;yBACJ;qBACJ;iBACJ;aACJ;SACJ,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,yCAAO,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC;QAC5D,MAAM,eAAe,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC;QACxD,MAAM,CAAC,eAAe,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,kBAAkB,CAAC;QACpC,MAAM,MAAM,GAAG,IAAA,iCAAW,EAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACtD,cAAc,CAAC,cAAc,CACzB,oBAAC,sBAAY,IAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IACxC,IAAA,kCAAY,EAAC,eAAe,CAAC,CACnB,CAClB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,EAAE,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"integrated-routes.test.js","sourceRoot":"","sources":["../../src/__tests__/integrated-routes.test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,iEAAmD;AACnD,oDAAuD;AACvD,uDAA8D;AAC9D,4CAAuC;AACvC,+CAA2E;AAE3E,MAAM,MAAM,GAAsB,sBAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AACnF,gBAAc;AAEd,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QAClE,MAAM,QAAQ,GAAG,EAAE,CAAC;QAEpB,MAAM,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAA,gCAAa,EAAC,MAAM,CAAC,CAAC,CAAC;QAE7F,MAAM,SAAS,GAAG;YACd;gBACI,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;gBAC/B,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9C,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;gBACpD,CAAC,wBAAwB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;aAChE;SACJ,CAAC;QACF,MAAM,MAAM,GAAG;YACX;gBACI,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,IAAI;aAClB;YACD;gBACI,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE;oBACJ;wBACI,IAAI,EAAE,eAAe;wBACrB,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,KAAK;wBACZ,MAAM,EAAE;4BACJ;gCACI,IAAI,EAAE,wBAAwB;gCAC9B,SAAS,EAAE,IAAI;gCACf,KAAK,EAAE,KAAK;6BACf;yBACJ;qBACJ;iBACJ;aACJ;SACJ,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,mBAAO,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC;QACxD,MAAM,CAAC,eAAe,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,kBAAkB,CAAC;QACpC,MAAM,MAAM,GAAG,IAAA,8BAAW,EAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACtD,cAAc,CAAC,cAAc,CACzB,oBAAC,qBAAY,IAAC,QAAQ,EAAE,QAAQ,IAC3B,IAAA,gCAAa,EAAC,eAAe,CAAC,CACpB,CAClB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,EAAE,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -33,20 +33,16 @@ var __rest = (this && this.__rest) || function (s, e) {
33
33
  }
34
34
  return t;
35
35
  };
36
- var __importDefault = (this && this.__importDefault) || function (mod) {
37
- return (mod && mod.__esModule) ? mod : { "default": mod };
38
- };
39
36
  Object.defineProperty(exports, "__esModule", { value: true });
40
37
  exports.logger = void 0;
41
38
  const React = __importStar(require("react"));
42
39
  const ReactDOMServer = __importStar(require("react-dom/server"));
43
- const react_router_1 = __importDefault(require("react-router"));
44
- const react_router_config_1 = require("react-router-config");
45
- const react_client_feature_1 = require("../connector/react-client-feature");
46
- const server_1 = require("@cdm-logger/server");
40
+ const server_1 = require("react-router-dom/server");
41
+ const react_router_dom_1 = require("react-router-dom");
42
+ const connector_1 = require("../connector");
43
+ const server_2 = require("@cdm-logger/server");
47
44
  require("jest");
48
- exports.logger = server_1.ConsoleLogger.create('test', { level: 'trace' });
49
- const { StaticRouter } = react_router_1.default;
45
+ exports.logger = server_2.ConsoleLogger.create('test', { level: 'trace' });
50
46
  describe('renderRoutes', () => {
51
47
  let renderedRoutes;
52
48
  let renderedExtraProps;
@@ -54,7 +50,7 @@ describe('renderRoutes', () => {
54
50
  var { route, route: { routes } } = _a, extraProps = __rest(_a, ["route", "route"]);
55
51
  return (renderedRoutes.push(route),
56
52
  renderedExtraProps.push(extraProps),
57
- (0, react_router_config_1.renderRoutes)(routes));
53
+ (0, react_router_dom_1.renderMatches)(routes));
58
54
  };
59
55
  beforeEach(() => {
60
56
  renderedRoutes = [];
@@ -70,8 +66,8 @@ describe('renderRoutes', () => {
70
66
  },
71
67
  ];
72
68
  const routes = [routeToMatch];
73
- const connector = new react_client_feature_1.ReactClientFeature({ routeConfigIn: genRoutes });
74
- ReactDOMServer.renderToString(React.createElement(StaticRouter, { location: "/path", context: {} }, (0, react_router_config_1.renderRoutes)(routes)));
69
+ const connector = new connector_1.Feature({ routeConfig: genRoutes });
70
+ ReactDOMServer.renderToString(React.createElement(server_1.StaticRouter, { location: "/path" }, (0, react_router_dom_1.renderMatches)(routes)));
75
71
  expect(renderedRoutes.length).toEqual(1);
76
72
  expect(renderedRoutes[0]).toEqual(routeToMatch);
77
73
  });
@@ -1 +1 @@
1
- {"version":3,"file":"router-render.test.js","sourceRoot":"","sources":["../../src/__tests__/router-render.test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,iEAAmD;AACnD,gEAAkC;AAClC,6DAAgE;AAChE,4EAAkF;AAClF,+CAA2E;AAE3E,gBAAc;AAED,QAAA,MAAM,GAAsB,sBAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AAC1F,MAAM,EAAE,YAAY,EAAE,GAAG,sBAAM,CAAC;AAEhC,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,cAAc,CAAC;IACnB,IAAI,kBAAkB,CAAC;IACvB,MAAM,IAAI,GAAG,CAAC,EAA2C,EAAE,EAAE;YAA/C,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAiB,EAAZ,UAAU,cAAzC,kBAA2C,CAAF;QAAO,OAAA,CAC5D,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;YAC1B,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;YACnC,IAAA,kCAAY,EAAC,MAAM,CAAC,CACrB,CAAA;KAAA,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACd,cAAc,GAAG,EAAE,CAAC;QACpB,kBAAkB,GAAG,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,YAAY,GAAG;YACnB,SAAS,EAAE,IAAI;SAChB,CAAC;QACF,MAAM,SAAS,GAAG;YAChB;gBACE,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;aAC/B;SACF,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,YAAY,CAAC,CAAC;QAE9B,MAAM,SAAS,GAAG,IAAI,yCAAO,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC;QAE5D,cAAc,CAAC,cAAc,CAC3B,oBAAC,YAAY,IAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAE,EAAE,IACvC,IAAA,kCAAY,EAAC,MAAa,CAAC,CACf,CAChB,CAAC;QACF,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,gFAAgF;IAChF,6BAA6B;IAC7B,2BAA2B;IAC3B,SAAS;IACT,qCAAqC;IACrC,8DAA8D;IAE9D,qCAAqC;IACrC,uDAAuD;IACvD,iDAAiD;IACjD,2BAA2B;IAC3B,SAAS;IACT,oDAAoD;IACpD,6EAA6E;IAC7E,MAAM;AACR,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"router-render.test.js","sourceRoot":"","sources":["../../src/__tests__/router-render.test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,iEAAmD;AACnD,oDAAuD;AACvD,uDAAiD;AACjD,4CAAuC;AACvC,+CAA2E;AAE3E,gBAAc;AAED,QAAA,MAAM,GAAsB,sBAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AAE1F,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,cAAc,CAAC;IACnB,IAAI,kBAAkB,CAAC;IACvB,MAAM,IAAI,GAAG,CAAC,EAA2C,EAAE,EAAE;YAA/C,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAiB,EAAZ,UAAU,cAAzC,kBAA2C,CAAF;QAAO,OAAA,CAC5D,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;YAC1B,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;YACnC,IAAA,gCAAa,EAAC,MAAM,CAAC,CACtB,CAAA;KAAA,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACd,cAAc,GAAG,EAAE,CAAC;QACpB,kBAAkB,GAAG,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,YAAY,GAAG;YACnB,SAAS,EAAE,IAAI;SAChB,CAAC;QACF,MAAM,SAAS,GAAG;YAChB;gBACE,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;aAC/B;SACF,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,YAAY,CAAC,CAAC;QAE9B,MAAM,SAAS,GAAG,IAAI,mBAAO,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QAE1D,cAAc,CAAC,cAAc,CAC3B,oBAAC,qBAAY,IAAC,QAAQ,EAAC,OAAO,IAC3B,IAAA,gCAAa,EAAC,MAAa,CAAC,CAChB,CAChB,CAAC;QACF,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,gFAAgF;IAChF,6BAA6B;IAC7B,2BAA2B;IAC3B,SAAS;IACT,qCAAqC;IACrC,8DAA8D;IAE9D,qCAAqC;IACrC,uDAAuD;IACvD,iDAAiD;IACjD,2BAA2B;IAC3B,SAAS;IACT,oDAAoD;IACpD,6EAA6E;IAC7E,MAAM;AACR,CAAC,CAAC,CAAC"}
@@ -0,0 +1,53 @@
1
+ import * as React from 'react';
2
+ import { AbstractFeature, IModuleShape } from '@common-stack/client-core';
3
+ import { IReactFeature, IReactModuleShape } from '../interfaces';
4
+ type FeatureParam = IModuleShape & IReactModuleShape;
5
+ export declare abstract class BaseFeature extends AbstractFeature implements IReactFeature {
6
+ componentFillPlugins: any;
7
+ routerFactory: any;
8
+ route: any;
9
+ routeConfig: any;
10
+ menuConfig: any;
11
+ authWrapper: (ele: React.ReactElement, props: Record<string, any>) => void;
12
+ constructor(feature?: FeatureParam, ...features: FeatureParam[]);
13
+ protected abstract renderRoutes: any;
14
+ protected abstract renderRoutes2: any;
15
+ protected abstract getSortedRoutes: any;
16
+ protected abstract getSortedRoutes2: any;
17
+ /**
18
+ * Get the routes
19
+ * @deprecated
20
+ */
21
+ getRoutes(searchPath?: any): any;
22
+ /**
23
+ * Get the routes2
24
+ * @param searchPath
25
+ */
26
+ getRoutes2(searchPath?: string, searchName?: string): any;
27
+ /**
28
+ * Get menus
29
+ * @deprecated
30
+ */
31
+ getMenus(sortByPriority?: boolean): any;
32
+ /**
33
+ * get configured routes.
34
+ */
35
+ getConfiguredRoutes(searchPath?: string): any;
36
+ getConfiguredRoutes2(searchPath?: string): any;
37
+ /**
38
+ * get configured menus.
39
+ * Note: It overwrites the any duplicate key with latest loaded key.
40
+ * TODO: Find a way to warn when there are duplicate keys.
41
+ */
42
+ getConfiguredMenus(searchPath?: string): import("../interfaces").IMenuItem[];
43
+ get navItems(): any;
44
+ get navItemsRight(): any;
45
+ getWrappedRoot(root: React.ReactNode, req?: any): React.ReactNode;
46
+ getDataRoot(root: any): any;
47
+ registerLanguages(monaco: any): void;
48
+ private registerComponentFillPlugins;
49
+ getComponentFillPlugins(): import("../plugin-area").WorbenchExtension[];
50
+ private sortMenusByPriority;
51
+ private sortMenus;
52
+ }
53
+ export {};
@@ -23,22 +23,19 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.BaseReactClientFeature = void 0;
26
+ exports.BaseFeature = void 0;
27
27
  const React = __importStar(require("react"));
28
- const fractal_objects_1 = require("fractal-objects");
29
28
  const client_core_1 = require("@common-stack/client-core");
29
+ const get_menus_1 = require("../route/old/get-menus");
30
30
  const lodash_1 = require("lodash");
31
31
  const plugin_area_1 = require("../plugin-area");
32
- class BaseReactClientFeature extends client_core_1.ApolloClientFeature {
33
- constructor(...modules) {
34
- super(...modules);
35
- this.sidebarSegmentsIn = [];
36
- this.routerFactoryIn = [];
37
- this.routeConfigIn = [];
38
- this.stylesIn = [];
39
- this.scriptsIn = [];
40
- this.navItemIn = [];
41
- this.navItemRightIn = [];
32
+ const combine = (features, extractor) => (0, lodash_1.without)((0, lodash_1.union)(...(0, lodash_1.map)(features, res => (0, lodash_1.castArray)(extractor(res)))), undefined);
33
+ const getFirst = (features, extractor) => extractor((0, lodash_1.find)(features, (res) => extractor(res)) || {});
34
+ class BaseFeature extends client_core_1.AbstractFeature {
35
+ constructor(feature,
36
+ // tslint:disable:trailing-comma
37
+ ...features) {
38
+ super(feature, ...features);
42
39
  this.sortMenusByPriority = (menus) => {
43
40
  return (0, lodash_1.sortBy)(menus, (obj) => parseInt(obj.priority, 10));
44
41
  };
@@ -53,37 +50,89 @@ class BaseReactClientFeature extends client_core_1.ApolloClientFeature {
53
50
  return menus;
54
51
  }
55
52
  };
56
- (0, fractal_objects_1.foldTo)(this, modules);
53
+ // this.logger = makeLogger(Feature.name);
54
+ // Navigation
55
+ this.routerFactory = combine(arguments, (arg) => arg.routerFactory)
56
+ .slice(-1)
57
+ .pop();
58
+ this.route = combine(arguments, (arg) => arg.route);
59
+ this.routeConfig = combine(arguments, (arg) => arg.routeConfig);
60
+ this.menuConfig = combine(arguments, (arg) => arg.menuConfig);
61
+ this.componentFillPlugins = this.registerComponentFillPlugins(combine(arguments, (arg) => arg.componentFillPlugins));
62
+ this.authWrapper = getFirst(arguments, (arg) => arg.authWrapper);
57
63
  }
58
- getRoutes(searchPath, searchName) {
64
+ /**
65
+ * Get the routes
66
+ * @deprecated
67
+ */
68
+ getRoutes(searchPath) {
59
69
  const configuredRoutes = this.getConfiguredRoutes(searchPath);
60
- return this.renderRoutes(configuredRoutes, searchName);
70
+ const solidRoutes = this.route.map((component, idx) => React.cloneElement(component, { key: component.props.path }));
71
+ return this.renderRoutes(configuredRoutes, solidRoutes);
61
72
  }
62
- getMenus(sortByPriority) {
73
+ /**
74
+ * Get the routes2
75
+ * @param searchPath
76
+ */
77
+ getRoutes2(searchPath = '/', searchName) {
78
+ const configuredRoutes = this.getConfiguredRoutes2(searchPath);
79
+ return this.renderRoutes2(configuredRoutes, searchName);
80
+ }
81
+ /**
82
+ * Get menus
83
+ * @deprecated
84
+ */
85
+ getMenus(sortByPriority = true) {
63
86
  const menus = this.getConfiguredMenus();
64
87
  return this.sortMenus(sortByPriority, menus);
65
88
  }
89
+ /**
90
+ * get configured routes.
91
+ */
66
92
  getConfiguredRoutes(searchPath = '/') {
67
- return this.getSortedRoutes(searchPath, Object.assign({}, ...this.routeConfigIn), this.authWrapperIn);
93
+ return this.getSortedRoutes(searchPath, Object.assign({}, ...this.routeConfig), this.authWrapper);
68
94
  }
69
- getComponentFillPlugins() {
70
- this.registerComponentFillPlugins(this.componentFillPluginIn);
71
- return (0, plugin_area_1.getPlugins)();
95
+ getConfiguredRoutes2(searchPath = '/') {
96
+ return this.getSortedRoutes2(searchPath, Object.assign({}, ...this.routeConfig), this.authWrapper);
72
97
  }
73
- getDataRoot(root) {
98
+ /**
99
+ * get configured menus.
100
+ * Note: It overwrites the any duplicate key with latest loaded key.
101
+ * TODO: Find a way to warn when there are duplicate keys.
102
+ */
103
+ getConfiguredMenus(searchPath = '/') {
104
+ const routes = Object.assign({}, ...this.menuConfig);
105
+ return (0, get_menus_1.getMenus)(searchPath, Object.assign({}, routes));
106
+ }
107
+ get navItems() {
108
+ return this.navItem.map((component, idx) => React.cloneElement(component, {
109
+ key: component.key ? component.key : idx + this.navItem.length,
110
+ }));
111
+ }
112
+ get navItemsRight() {
113
+ return this.navItemsRight.map((component, idx) => React.cloneElement(component, {
114
+ key: component.key ? component.key : idx + this.navItems.length,
115
+ }));
116
+ }
117
+ getWrappedRoot(root, req) {
74
118
  let nestedRoot = root;
75
- for (const component of this.dataRootComponentIn || []) {
76
- nestedRoot = React.createElement(component, {}, nestedRoot);
119
+ for (const componentFactory of this.rootComponentFactory) {
120
+ nestedRoot = React.cloneElement(componentFactory(req), {}, nestedRoot);
77
121
  }
78
122
  return nestedRoot;
79
123
  }
80
- getWrappedRoot(root, req) {
124
+ getDataRoot(root) {
81
125
  let nestedRoot = root;
82
- for (const componentFactory of this.rootComponentFactoryIn || []) {
83
- nestedRoot = React.cloneElement(componentFactory(req), {}, nestedRoot);
126
+ for (const component of this.dataRootComponent) {
127
+ nestedRoot = React.createElement(component, {}, nestedRoot);
84
128
  }
85
129
  return nestedRoot;
86
130
  }
131
+ registerLanguages(monaco) {
132
+ for (const func of this.languagesFuncs) {
133
+ func(monaco);
134
+ }
135
+ }
87
136
  registerComponentFillPlugins(plugins) {
88
137
  plugins.forEach((i) => {
89
138
  const { name } = i;
@@ -94,9 +143,9 @@ class BaseReactClientFeature extends client_core_1.ApolloClientFeature {
94
143
  });
95
144
  return plugins;
96
145
  }
97
- getConfiguredMenus(searchPath = '/') {
98
- new Error('Need to be figured');
146
+ getComponentFillPlugins() {
147
+ return (0, plugin_area_1.getPlugins)();
99
148
  }
100
149
  }
101
- exports.BaseReactClientFeature = BaseReactClientFeature;
102
- //# sourceMappingURL=base-react-client-feature.js.map
150
+ exports.BaseFeature = BaseFeature;
151
+ //# sourceMappingURL=base-connector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-connector.js","sourceRoot":"","sources":["../../src/connector/base-connector.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import { IReactFeature } from '../interfaces';
3
+ import { BaseFeature } from './base-connector';
4
+ import { renderRoutes2 } from '../route/render-routes';
5
+ export declare class Feature extends BaseFeature implements IReactFeature {
6
+ protected renderRoutes: (routes: any, solidRoutes: any, extraProps?: {}) => import("react").JSX.Element;
7
+ protected renderRoutes2: typeof renderRoutes2;
8
+ protected getSortedRoutes: (path: string, routeData: import("../interfaces").IRouteData, authWrapper?: (ele: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>, props: Record<string, any>) => void) => any;
9
+ protected getSortedRoutes2: (path: string, routeData: import("../interfaces").IRouteData, authWrapper?: (ele: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>, props: Record<string, any>) => void) => any;
10
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Feature = void 0;
4
+ const base_connector_1 = require("./base-connector");
5
+ const render_1 = require("../route/old/render");
6
+ const render_routes_1 = require("../route/render-routes");
7
+ const get_routes_1 = require("../route/get-routes");
8
+ class Feature extends base_connector_1.BaseFeature {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.renderRoutes = render_1.renderRoutes;
12
+ this.renderRoutes2 = render_routes_1.renderRoutes2;
13
+ this.getSortedRoutes = get_routes_1.getSortedRoutes;
14
+ this.getSortedRoutes2 = get_routes_1.getSortedRoutes;
15
+ }
16
+ }
17
+ exports.Feature = Feature;
18
+ //# sourceMappingURL=connector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector.js","sourceRoot":"","sources":["../../src/connector/connector.tsx"],"names":[],"mappings":";;;AACA,qDAA+C;AAC/C,gDAAmD;AACnD,0DAAuD;AACvD,oDAAsD;AAEtD,MAAa,OAAQ,SAAQ,4BAAW;IAAxC;;QACc,iBAAY,GAAG,qBAAY,CAAC;QAC5B,kBAAa,GAAG,6BAAa,CAAC;QAC9B,oBAAe,GAAG,4BAAe,CAAC;QAClC,qBAAgB,GAAG,4BAAe,CAAC;IAEjD,CAAC;CAAA;AAND,0BAMC"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { IReactFeature } from '../interfaces';
3
+ import { BaseFeature } from './base-connector';
4
+ export declare class Feature extends BaseFeature implements IReactFeature {
5
+ protected renderRoutes: (args: any) => import("react").JSX.Element;
6
+ protected renderRoutes2: (arg1: any, arg2: any) => import("react").JSX.Element;
7
+ protected getSortedRoutes: (path: string, routeData: import("../interfaces").IRouteData, authWrapper?: (ele: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>, props: Record<string, any>) => void) => any;
8
+ protected getSortedRoutes2: (path: string, routeData: import("../interfaces").IRouteData, authWrapper?: (component: import("react").FC<{}>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>) => any;
9
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Feature = void 0;
7
+ const base_connector_1 = require("./base-connector");
8
+ const index_native_1 = require("../route/index.native");
9
+ const react_navigation_render_1 = __importDefault(require("../route/react-navigation/react-navigation-render"));
10
+ const get_routes_1 = require("../route/get-routes");
11
+ const get_navigation_utils_1 = require("../route/react-navigation/get-navigation-utils");
12
+ class Feature extends base_connector_1.BaseFeature {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.renderRoutes = (args) => (0, index_native_1.renderRoutes)({ routes: args });
16
+ this.renderRoutes2 = (arg1, arg2) => (0, react_navigation_render_1.default)(arg1[0], arg2);
17
+ this.getSortedRoutes = get_routes_1.getSortedRoutes;
18
+ this.getSortedRoutes2 = get_navigation_utils_1.getSortedNavigations;
19
+ }
20
+ }
21
+ exports.Feature = Feature;
22
+ //# sourceMappingURL=connector.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector.native.js","sourceRoot":"","sources":["../../src/connector/connector.native.tsx"],"names":[],"mappings":";;;;;;AACA,qDAA+C;AAC/C,wDAAqD;AACrD,gHAAiF;AACjF,oDAAsD;AACtD,yFAAsF;AAEtF,MAAa,OAAQ,SAAQ,4BAAW;IAAxC;;QACc,iBAAY,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,2BAAY,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,kBAAa,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAA,iCAAgB,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAChE,oBAAe,GAAG,4BAAe,CAAC;QAClC,qBAAgB,GAAG,2CAAoB,CAAC;IACtD,CAAC;CAAA;AALD,0BAKC"}
@@ -23,16 +23,14 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.config = void 0;
27
- const envalid = __importStar(require("envalid"));
28
- const { str, bool, num } = envalid;
29
- // export const config = envalid.cleanEnv(process.env, {
30
- // NODE_ENV: str({ default: 'production', choices: ['production', 'staging', 'development', 'test'] }),
31
- // LOCAL_GRAPHQL_URL: str({ default: __GRAPHQL_URL__ }),
32
- // GRAPHQL_URL: str({ devDefault: __GRAPHQL_URL__ }),
33
- // });
34
- exports.config = {
35
- LOCAL_GRAPHQL_URL: 'http://localhost',
36
- GRAPHQL_URL: 'http://localhost',
37
- };
38
- //# sourceMappingURL=config.js.map
26
+ const React = __importStar(require("react"));
27
+ const connector_1 = require("./connector");
28
+ const react_router_dom_1 = require("react-router-dom");
29
+ require("jest");
30
+ describe('Test Feature', () => {
31
+ it('test Connector with router', () => {
32
+ const feature = new connector_1.Feature({ route: React.createElement(react_router_dom_1.Route, { path: "/", element: React.createElement("div", null, "test") }) });
33
+ console.log(feature);
34
+ });
35
+ });
36
+ //# sourceMappingURL=connector.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector.test.js","sourceRoot":"","sources":["../../src/connector/connector.test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,2CAAsC;AACtC,uDAAyC;AAEzC,gBAAc;AAEd,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAE1B,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAClC,MAAM,OAAO,GAAG,IAAI,mBAAO,CAAC,EAAE,KAAK,EAAE,oBAAC,wBAAK,IAAC,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,wCAAe,GAAI,EAAE,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './connector';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./connector"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/connector/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B"}
package/lib/index.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  export { ClientTypes } from '@common-stack/client-core';
2
- export * from './connector/react-client-feature';
3
- export * from './connector/monaco-connector';
2
+ export * from './connector';
4
3
  export * from './router-factory';
5
4
  export * from './route';
6
5
  export * from './route/root-navigation';
package/lib/index.js CHANGED
@@ -17,8 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.ClientTypes = void 0;
18
18
  var client_core_1 = require("@common-stack/client-core");
19
19
  Object.defineProperty(exports, "ClientTypes", { enumerable: true, get: function () { return client_core_1.ClientTypes; } });
20
- __exportStar(require("./connector/react-client-feature"), exports);
21
- __exportStar(require("./connector/monaco-connector"), exports);
20
+ __exportStar(require("./connector"), exports);
22
21
  __exportStar(require("./router-factory"), exports);
23
22
  __exportStar(require("./route"), exports);
24
23
  __exportStar(require("./route/root-navigation"), exports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yDAAwD;AAA/C,0GAAA,WAAW,OAAA;AACpB,mEAAiD;AACjD,+DAA6C;AAC7C,mDAAiC;AACjC,0CAAwB;AACxB,0DAAwC;AACxC,0CAAwB;AACxB,+CAA6B;AAC7B,gDAA8B;AAC9B,4DAA0C;AAC1C,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yDAAwD;AAA/C,0GAAA,WAAW,OAAA;AACpB,8CAA4B;AAC5B,mDAAiC;AACjC,0CAAwB;AACxB,0DAAwC;AACxC,0CAAwB;AACxB,+CAA6B;AAC7B,gDAA8B;AAC9B,4DAA0C;AAC1C,8CAA4B"}
@@ -1,5 +1,5 @@
1
1
  export { ClientTypes } from '@common-stack/client-core';
2
- export * from './connector/react-client-feature.native';
2
+ export * from './connector/connector.native';
3
3
  export * from './router-factory/index.native';
4
4
  export * from './route/index.native';
5
5
  export * from './route/react-navigation/root-navigation';
@@ -17,7 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.ClientTypes = void 0;
18
18
  var client_core_1 = require("@common-stack/client-core");
19
19
  Object.defineProperty(exports, "ClientTypes", { enumerable: true, get: function () { return client_core_1.ClientTypes; } });
20
- __exportStar(require("./connector/react-client-feature.native"), exports);
20
+ __exportStar(require("./connector/connector.native"), exports);
21
21
  __exportStar(require("./router-factory/index.native"), exports);
22
22
  __exportStar(require("./route/index.native"), exports);
23
23
  __exportStar(require("./route/react-navigation/root-navigation"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.js","sourceRoot":"","sources":["../src/index.native.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yDAAwD;AAA/C,0GAAA,WAAW,OAAA;AACpB,0EAAwD;AACxD,gEAA8C;AAC9C,uDAAqC;AACrC,2EAAyD;AACzD,0CAAwB;AACxB,+CAA6B;AAC7B,6DAA2C;AAC3C,4DAA0C;AAC1C,8CAA4B"}
1
+ {"version":3,"file":"index.native.js","sourceRoot":"","sources":["../src/index.native.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yDAAwD;AAA/C,0GAAA,WAAW,OAAA;AACpB,+DAA6C;AAC7C,gEAA8C;AAC9C,uDAAqC;AACrC,2EAAyD;AACzD,0CAAwB;AACxB,+CAA6B;AAC7B,6DAA2C;AAC3C,4DAA0C;AAC1C,8CAA4B"}