redux-connected-devtools 1.0.2 → 1.0.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.
Files changed (167) hide show
  1. package/dist/components/DevInspector/DevInspector.js +12 -0
  2. package/{src/components/DevInspector/DevInspector.style.tsx → dist/components/DevInspector/DevInspector.style.js} +1 -3
  3. package/dist/components/DevList/DevList.js +24 -0
  4. package/{src/components/DevList/DevList.style.tsx → dist/components/DevList/DevList.style.js} +2 -4
  5. package/dist/components/DevMenu/DevMenu.js +25 -0
  6. package/{src/components/DevMenu/DevMenu.style.tsx → dist/components/DevMenu/DevMenu.style.js} +15 -19
  7. package/dist/components/DevPanel/DevPanel.js +38 -0
  8. package/dist/components/DevPanel/DevPanel.style.js +22 -0
  9. package/dist/components/DevtoolsApp/DevtoolsApp.js +17 -0
  10. package/dist/components/DevtoolsApp/DevtoolsApp.style.js +11 -0
  11. package/dist/components/Icon/AllIcons.js +18 -0
  12. package/dist/components/Icon/Icon.js +9 -0
  13. package/dist/components/Icon/Icon.style.js +10 -0
  14. package/{src/components/JourneyRow/JourneyRow.tsx → dist/components/JourneyRow/JourneyRow.js} +9 -32
  15. package/{src/components/JourneyRow/JourneyRow.style.tsx → dist/components/JourneyRow/JourneyRow.style.js} +7 -12
  16. package/dist/components/JsonViewer/JsonViewer.js +7 -0
  17. package/{src/components/JsonViewer/JsonViewer.style.tsx → dist/components/JsonViewer/JsonViewer.style.js} +1 -2
  18. package/dist/components/Lifecycle/Lifecycle.js +15 -0
  19. package/{src/components/Lifecycle/Lifecycle.style.tsx → dist/components/Lifecycle/Lifecycle.style.js} +1 -2
  20. package/dist/components/RequestDetails/RequestDetails.js +10 -0
  21. package/dist/components/RequestDetails/RequestDetails.style.js +16 -0
  22. package/dist/components/RequestJourney/RequestJourney.js +14 -0
  23. package/dist/components/RequestJourney/RequestJourney.style.js +26 -0
  24. package/dist/components/RequestRow/RequestRow.js +9 -0
  25. package/{src/components/RequestRow/RequestRow.style.tsx → dist/components/RequestRow/RequestRow.style.js} +6 -10
  26. package/dist/components/Size/Size.js +10 -0
  27. package/dist/components/Size/Size.style.js +5 -0
  28. package/{src/components/Time/Time.tsx → dist/components/Time/Time.js} +3 -17
  29. package/{src/components/Time/Time.style.tsx → dist/components/Time/Time.style.js} +4 -7
  30. package/dist/containers/DevMenuContainer.js +11 -0
  31. package/dist/containers/DevPanelContainer.js +6 -0
  32. package/dist/containers/DevtoolsAppContainer.js +24 -0
  33. package/{src/containers/EndpointConfigsContainer.tsx → dist/containers/EndpointConfigsContainer.js} +2 -5
  34. package/{src/containers/EndpointStatusContainer.tsx → dist/containers/EndpointStatusContainer.js} +2 -5
  35. package/{src/containers/GlobalSettingsContainer.tsx → dist/containers/GlobalSettingsContainer.js} +2 -5
  36. package/{src/containers/GlobalStatsContainer.tsx → dist/containers/GlobalStatsContainer.js} +2 -5
  37. package/{src/containers/LifecycleApiErrorContainer.tsx → dist/containers/LifecycleApiErrorContainer.js} +2 -4
  38. package/dist/containers/LifecycleFailedContainer.js +9 -0
  39. package/{src/containers/LifecycleGeneralErrorContainer.tsx → dist/containers/LifecycleGeneralErrorContainer.js} +2 -4
  40. package/{src/containers/LifecycleInQueueContainer.tsx → dist/containers/LifecycleInQueueContainer.js} +2 -4
  41. package/{src/containers/LifecyclePendingApiContainer.tsx → dist/containers/LifecyclePendingApiContainer.js} +2 -4
  42. package/{src/containers/LifecyclePostActionContainer.tsx → dist/containers/LifecyclePostActionContainer.js} +2 -4
  43. package/{src/containers/LifecycleReceivedContainer.tsx → dist/containers/LifecycleReceivedContainer.js} +2 -4
  44. package/{src/data/devComponents.tsx → dist/data/devComponents.js} +3 -4
  45. package/{src/data/devRoutes.ts → dist/data/devRoutes.js} +23 -28
  46. package/dist/dts/components/DevInspector/DevInspector.d.ts +7 -0
  47. package/dist/dts/components/DevInspector/DevInspector.style.d.ts +1 -0
  48. package/dist/dts/components/DevList/DevList.d.ts +9 -0
  49. package/dist/dts/components/DevList/DevList.style.d.ts +2 -0
  50. package/dist/dts/components/DevMenu/DevMenu.d.ts +12 -0
  51. package/dist/dts/components/DevMenu/DevMenu.style.d.ts +7 -0
  52. package/dist/dts/components/DevPanel/DevPanel.d.ts +6 -0
  53. package/dist/dts/components/DevPanel/DevPanel.style.d.ts +3 -0
  54. package/dist/dts/components/DevtoolsApp/DevtoolsApp.d.ts +10 -0
  55. package/dist/dts/components/DevtoolsApp/DevtoolsApp.style.d.ts +1 -0
  56. package/dist/dts/components/Icon/AllIcons.d.ts +8 -0
  57. package/dist/dts/components/Icon/Icon.d.ts +10 -0
  58. package/dist/dts/components/Icon/Icon.style.d.ts +3 -0
  59. package/dist/dts/components/JourneyRow/JourneyRow.d.ts +7 -0
  60. package/dist/dts/components/JourneyRow/JourneyRow.style.d.ts +5 -0
  61. package/dist/dts/components/JsonViewer/JsonViewer.d.ts +7 -0
  62. package/dist/dts/components/JsonViewer/JsonViewer.style.d.ts +3 -0
  63. package/dist/dts/components/Lifecycle/Lifecycle.d.ts +7 -0
  64. package/dist/dts/components/Lifecycle/Lifecycle.style.d.ts +1 -0
  65. package/dist/dts/components/RequestDetails/RequestDetails.d.ts +7 -0
  66. package/dist/dts/components/RequestDetails/RequestDetails.style.d.ts +4 -0
  67. package/dist/dts/components/RequestJourney/RequestJourney.d.ts +7 -0
  68. package/dist/dts/components/RequestJourney/RequestJourney.style.d.ts +1 -0
  69. package/dist/dts/components/RequestRow/RequestRow.d.ts +11 -0
  70. package/dist/dts/components/RequestRow/RequestRow.style.d.ts +6 -0
  71. package/dist/dts/components/Size/Size.d.ts +6 -0
  72. package/dist/dts/components/Size/Size.style.d.ts +1 -0
  73. package/dist/dts/components/Time/Time.d.ts +6 -0
  74. package/dist/dts/components/Time/Time.style.d.ts +3 -0
  75. package/dist/dts/containers/DevMenuContainer.d.ts +8 -0
  76. package/dist/dts/containers/DevPanelContainer.d.ts +6 -0
  77. package/dist/dts/containers/DevtoolsAppContainer.d.ts +7 -0
  78. package/dist/dts/containers/EndpointConfigsContainer.d.ts +3 -0
  79. package/dist/dts/containers/EndpointStatusContainer.d.ts +3 -0
  80. package/dist/dts/containers/GlobalSettingsContainer.d.ts +3 -0
  81. package/dist/dts/containers/GlobalStatsContainer.d.ts +3 -0
  82. package/dist/dts/containers/LifecycleApiErrorContainer.d.ts +3 -0
  83. package/dist/dts/containers/LifecycleFailedContainer.d.ts +3 -0
  84. package/dist/dts/containers/LifecycleGeneralErrorContainer.d.ts +3 -0
  85. package/dist/dts/containers/LifecycleInQueueContainer.d.ts +3 -0
  86. package/dist/dts/containers/LifecyclePendingApiContainer.d.ts +3 -0
  87. package/dist/dts/containers/LifecyclePostActionContainer.d.ts +3 -0
  88. package/dist/dts/containers/LifecycleReceivedContainer.d.ts +3 -0
  89. package/dist/dts/data/devComponents.d.ts +4 -0
  90. package/dist/dts/data/devRoutes.d.ts +8 -0
  91. package/dist/dts/hooks/useStoreSize.d.ts +7 -0
  92. package/dist/dts/index.d.ts +1 -0
  93. package/dist/dts/store/selectors.d.ts +2235 -0
  94. package/dist/dts/types.d.ts +0 -0
  95. package/dist/dts/utils/date.d.ts +4 -0
  96. package/dist/dts/utils/download.d.ts +1 -0
  97. package/dist/hooks/useStoreSize.js +16 -0
  98. package/dist/index.d.ts +1 -0
  99. package/dist/index.js +1 -0
  100. package/dist/redux-connected-devtools.es.js +992 -0
  101. package/dist/redux-connected-devtools.es.js.map +1 -0
  102. package/dist/redux-connected-devtools.umd.js +247 -0
  103. package/dist/redux-connected-devtools.umd.js.map +1 -0
  104. package/dist/store/selectors.js +143 -0
  105. package/dist/types.js +1 -0
  106. package/dist/utils/date.js +8 -0
  107. package/dist/utils/download.js +17 -0
  108. package/package.json +29 -13
  109. package/.env +0 -2
  110. package/.prettierrc.js +0 -10
  111. package/.vscode/settings.json +0 -12
  112. package/.vscode/tasks.json +0 -33
  113. package/index.html +0 -58
  114. package/jest.config.js +0 -8
  115. package/public/devtools.html +0 -8
  116. package/public/icon.png +0 -0
  117. package/public/manifest.json +0 -29
  118. package/public/options.html +0 -12
  119. package/public/panel.html +0 -39
  120. package/public/popup.html +0 -12
  121. package/src/__tests__/sum.ts +0 -9
  122. package/src/background.ts +0 -49
  123. package/src/components/DevInspector/DevInspector.scss +0 -2
  124. package/src/components/DevInspector/DevInspector.tsx +0 -34
  125. package/src/components/DevList/DevList.scss +0 -2
  126. package/src/components/DevList/DevList.tsx +0 -62
  127. package/src/components/DevMenu/DevMenu.scss +0 -2
  128. package/src/components/DevMenu/DevMenu.tsx +0 -76
  129. package/src/components/DevPanel/DevPanel.scss +0 -2
  130. package/src/components/DevPanel/DevPanel.style.tsx +0 -16
  131. package/src/components/DevPanel/DevPanel.tsx +0 -51
  132. package/src/components/JourneyRow/JourneyRow.scss +0 -2
  133. package/src/components/JsonViewer/JsonViewer.scss +0 -2
  134. package/src/components/JsonViewer/JsonViewer.tsx +0 -24
  135. package/src/components/Lifecycle/Lifecycle.scss +0 -2
  136. package/src/components/Lifecycle/Lifecycle.tsx +0 -31
  137. package/src/components/LogsViewer/LogsViewer.scss +0 -2
  138. package/src/components/LogsViewer/LogsViewer.style.tsx +0 -5
  139. package/src/components/LogsViewer/LogsViewer.tsx +0 -14
  140. package/src/components/RequestDetails/RequestDetails.scss +0 -2
  141. package/src/components/RequestDetails/RequestDetails.style.tsx +0 -20
  142. package/src/components/RequestDetails/RequestDetails.tsx +0 -60
  143. package/src/components/RequestJourney/RequestJourney.scss +0 -2
  144. package/src/components/RequestJourney/RequestJourney.style.tsx +0 -6
  145. package/src/components/RequestJourney/RequestJourney.tsx +0 -33
  146. package/src/components/RequestRow/RequestRow.scss +0 -2
  147. package/src/components/RequestRow/RequestRow.tsx +0 -37
  148. package/src/components/Time/Time.scss +0 -2
  149. package/src/containers/DevMenuContainer.tsx +0 -28
  150. package/src/containers/DevPanelContainer.tsx +0 -10
  151. package/src/content_script.ts +0 -19
  152. package/src/devtools.tsx +0 -29
  153. package/src/index.ts +0 -1
  154. package/src/injected_script.ts +0 -9
  155. package/src/options.tsx +0 -77
  156. package/src/panel.tsx +0 -30
  157. package/src/popup.tsx +0 -63
  158. package/src/store/initialState.ts +0 -42
  159. package/src/store/selectors.ts +0 -205
  160. package/src/sum.ts +0 -3
  161. package/src/types.ts +0 -1
  162. package/src/utils/date.ts +0 -3
  163. package/tsconfig.json +0 -24
  164. package/vite.config.ts +0 -45
  165. package/webpack/webpack.common.js +0 -46
  166. package/webpack/webpack.dev.js +0 -7
  167. package/webpack/webpack.prod.js +0 -6
@@ -1,76 +0,0 @@
1
- import React from 'react';
2
- import { IDevRoute } from '../../data/devRoutes';
3
- import {
4
- Container,
5
- MenuGroup,
6
- MenuGroupTitle,
7
- MenuItem,
8
- Title,
9
- Badge,
10
- BadgeTotal,
11
- } from './DevMenu.style';
12
-
13
- export type DevMenuProps = {
14
- groups: string[];
15
- items: IDevRoute[];
16
- onClick: (route: IDevRoute) => void;
17
- selectedId: string;
18
- badges: Record<string, number>;
19
- badgesTotal: Record<string, number>;
20
- };
21
-
22
- export function DevMenu(props: DevMenuProps) {
23
- const { groups, items, selectedId, badges, badgesTotal } = props;
24
-
25
- function renderItem(item: IDevRoute) {
26
- const { title, id } = item;
27
- const selected = id === selectedId;
28
-
29
- const badge = badges[id];
30
- const badgeTotal = badgesTotal[id];
31
-
32
- return (
33
- <MenuItem
34
- selected={selected}
35
- key={item.id}
36
- onClick={() => props.onClick(item)}
37
- >
38
- <Title>{title}</Title>
39
- {badgeTotal > 0 && badgeTotal !== badge && (
40
- <BadgeTotal>{badgeTotal}</BadgeTotal>
41
- )}
42
- {badge > 0 && <Badge>{badge}</Badge>}
43
- </MenuItem>
44
- );
45
- }
46
-
47
- function renderItems(groupItems: IDevRoute[]) {
48
- return groupItems.map((item: IDevRoute) => renderItem(item));
49
- }
50
-
51
- function renderGroup(group: string) {
52
- const groupItems = items.filter((item) => item.group === group);
53
-
54
- return (
55
- <MenuGroup key={group}>
56
- <MenuGroupTitle>{group}</MenuGroupTitle>
57
- {renderItems(groupItems)}
58
- </MenuGroup>
59
- );
60
- }
61
-
62
- function renderGroups() {
63
- return groups.map((group: string) => renderGroup(group));
64
- }
65
-
66
- return (
67
- <Container
68
- className='DevMenu-container'
69
- data-testid='DevMenu-container'
70
- >
71
- {renderGroups()}
72
- </Container>
73
- );
74
- }
75
-
76
- export default DevMenu;
@@ -1,2 +0,0 @@
1
- .DevPanel-container {
2
- }
@@ -1,16 +0,0 @@
1
- import styled from 'styled-components';
2
-
3
- export const Container = styled.div`
4
- flex: 1;
5
- color: #eee;
6
- background-color: #232332;
7
- display: flex;
8
- flex-direction: row;
9
- `;
10
-
11
- export const Content = styled.div`
12
- flex: 1;
13
- background-color: rgba(0, 0, 0, 0.15);
14
- display: flex;
15
- flex-direction: column;
16
- `;
@@ -1,51 +0,0 @@
1
- import DevMenu from '../../containers/DevMenuContainer';
2
- import React, { useState } from 'react';
3
- import { Container, Content } from './DevPanel.style';
4
- import { devComponents } from '../../data/devComponents';
5
- import { devGroups, devRoutes, IDevRoute } from '../../data/devRoutes';
6
- import { Json } from '../../types';
7
-
8
- export type DevPanelProps = {};
9
-
10
- export function DevPanel(props: DevPanelProps) {
11
- const [route, setRoute] = useState<IDevRoute>(devRoutes[0]);
12
-
13
- function renderRoute() {
14
- const Cmp = devComponents[route.componentId];
15
- return <Cmp key={route.id} />;
16
- }
17
-
18
- return (
19
- <Container
20
- className='DevPanel-container'
21
- data-testid='DevPanel-container'
22
- >
23
- <DevMenu
24
- selectedId={route.id}
25
- onClick={(item: IDevRoute) => setRoute(item)}
26
- />
27
- <Content>{renderRoute()}</Content>
28
- </Container>
29
- );
30
- }
31
-
32
- let bgConnection;
33
-
34
- function init(id: string) {
35
- bgConnection = chrome.runtime?.connect({
36
- name: id,
37
- });
38
-
39
- if (bgConnection) {
40
- bgConnection.onMessage.addListener((message: Json) => {
41
- console.log('message ->', message);
42
- });
43
- }
44
- }
45
-
46
- if (chrome) {
47
- const tabId = String(chrome.devtools?.inspectedWindow.tabId || '');
48
- init(tabId);
49
- }
50
-
51
- export default DevPanel;
@@ -1,2 +0,0 @@
1
- .JourneyRow-container {
2
- }
@@ -1,2 +0,0 @@
1
- .JsonViewer-container {
2
- }
@@ -1,24 +0,0 @@
1
- import React from 'react';
2
- import { Json } from '../../types';
3
- import { Container } from './JsonViewer.style';
4
-
5
- export type JsonViewerProps = {
6
- json: Json | undefined;
7
- width?: number;
8
- };
9
-
10
- export function JsonViewer(props: JsonViewerProps) {
11
- const { json, width } = props;
12
-
13
- return (
14
- <Container
15
- className='JsonViewer-container'
16
- data-testid='JsonViewer-container'
17
- width={width}
18
- >
19
- <pre>{JSON.stringify(json, null, 4)}</pre>
20
- </Container>
21
- );
22
- }
23
-
24
- export default JsonViewer;
@@ -1,2 +0,0 @@
1
- .Lifecycle-container {
2
- }
@@ -1,31 +0,0 @@
1
- import DevInspector from '../DevInspector/DevInspector';
2
- import DevList from '../DevList/DevList';
3
- import React, { useState } from 'react';
4
- import RequestRow from '../RequestRow/RequestRow';
5
- import { ApiRequest } from 'redux-connected';
6
- import { Container } from './Lifecycle.style';
7
-
8
- export type LifecycleProps = {
9
- requests: ApiRequest[];
10
- };
11
-
12
- export function Lifecycle(props: LifecycleProps) {
13
- const { requests } = props;
14
- const [item, setItem] = useState<ApiRequest>();
15
-
16
- function onClick(newItem: ApiRequest) {
17
- setItem(newItem);
18
- }
19
-
20
- return (
21
- <Container
22
- className='Lifecycle-container'
23
- data-testid='Lifecycle-container'
24
- >
25
- <DevList items={requests} row={RequestRow} onClick={onClick} />
26
- <DevInspector item={item} />
27
- </Container>
28
- );
29
- }
30
-
31
- export default Lifecycle;
@@ -1,2 +0,0 @@
1
- .LogsViewer-container {
2
- }
@@ -1,5 +0,0 @@
1
- import styled from 'styled-components';
2
-
3
- export const Container = styled.div`
4
- flex: 1;
5
- `;
@@ -1,14 +0,0 @@
1
- import React from 'react';
2
- import { Container } from './LogsViewer.style';
3
-
4
- export type LogsViewerProps = {};
5
-
6
- export function LogsViewer(_props: LogsViewerProps) {
7
- return (
8
- <Container className="LogsViewer-container" data-testid="LogsViewer-container">
9
- LogsViewer
10
- </Container>
11
- );
12
- }
13
-
14
- export default LogsViewer;
@@ -1,2 +0,0 @@
1
- .RequestDetails-container {
2
- }
@@ -1,20 +0,0 @@
1
- import styled from 'styled-components';
2
-
3
- export const Container = styled.div`
4
- flex: 1;
5
- padding: 20px;
6
- `;
7
-
8
- export const Table = styled.table``;
9
-
10
- export const Tr = styled.tr``;
11
-
12
- export const Td = styled.td`
13
- color: goldenrod;
14
-
15
- &:first-child {
16
- color: #778;
17
- text-align: right;
18
- padding-right: 10px;
19
- }
20
- `;
@@ -1,60 +0,0 @@
1
- import React from 'react';
2
- import { Container, Table, Tr, Td } from './RequestDetails.style';
3
- import { ApiRequest } from 'redux-connected';
4
- import JsonViewer from '../JsonViewer/JsonViewer';
5
- import bytes from 'bytes';
6
-
7
- export type RequestDetailsProps = {
8
- item: ApiRequest;
9
- };
10
-
11
- export function RequestDetails(props: RequestDetailsProps) {
12
- const { item } = props;
13
-
14
- return (
15
- <Container
16
- className='RequestDetails-container'
17
- data-testid='RequestDetails-container'
18
- >
19
- <Table>
20
- <tbody>
21
- <Tr>
22
- <Td>sequence</Td>
23
- <Td>{item.sequence}</Td>
24
- </Tr>
25
- <Tr>
26
- <Td>id</Td>
27
- <Td>{item.shortId}</Td>
28
- </Tr>
29
- <Tr>
30
- <Td>apiVerb</Td>
31
- <Td>{item.argsApiVerb}</Td>
32
- </Tr>
33
- <Tr>
34
- <Td>connection</Td>
35
- <Td>{item.argsConnectionType}</Td>
36
- </Tr>
37
- <Tr>
38
- <Td>duration</Td>
39
- <Td>{item.apiDuration}</Td>
40
- </Tr>
41
- <Tr>
42
- <Td>nodeName</Td>
43
- <Td>{item.argsNodeName}</Td>
44
- </Tr>
45
- <Tr>
46
- <Td>responseSize</Td>
47
- <Td>
48
- {item.apiResponseSize &&
49
- bytes(item.apiResponseSize)}
50
- </Td>
51
- </Tr>
52
- </tbody>
53
- </Table>
54
-
55
- <JsonViewer width={290} json={item.originalAction} />
56
- </Container>
57
- );
58
- }
59
-
60
- export default RequestDetails;
@@ -1,2 +0,0 @@
1
- .RequestJourney-container {
2
- }
@@ -1,6 +0,0 @@
1
- import styled from 'styled-components';
2
-
3
- export const Container = styled.div`
4
- flex: 1;
5
- border-top: 1px solid #333;
6
- `;
@@ -1,33 +0,0 @@
1
- import React from 'react';
2
- import { Container } from './RequestJourney.style';
3
- import { ApiRequest, JourneyPoint } from 'redux-connected';
4
- import JourneyRow from '../JourneyRow/JourneyRow';
5
-
6
- export type RequestJourneyProps = {
7
- item: ApiRequest;
8
- };
9
-
10
- export function RequestJourney(props: RequestJourneyProps) {
11
- const { item } = props;
12
-
13
- function renderItem(point: JourneyPoint, index: number) {
14
- return <JourneyRow key={index} point={point} />;
15
- }
16
-
17
- function renderItems() {
18
- return item.items.map((point: JourneyPoint, index: number) =>
19
- renderItem(point, index)
20
- );
21
- }
22
-
23
- return (
24
- <Container
25
- className='RequestJourney-container'
26
- data-testid='RequestJourney-container'
27
- >
28
- {renderItems()}
29
- </Container>
30
- );
31
- }
32
-
33
- export default RequestJourney;
@@ -1,2 +0,0 @@
1
- .RequestRow-container {
2
- }
@@ -1,37 +0,0 @@
1
- import React from 'react';
2
- import { Container, Col, Id, Type } from './RequestRow.style';
3
- import Time from '../Time/Time';
4
- import { Json } from '../../types';
5
- import { ApiRequest } from 'redux-connected';
6
-
7
- export type RequestRowProps = {
8
- style: Json;
9
- item: ApiRequest;
10
- index: number;
11
- onClick: (item: ApiRequest) => void;
12
- };
13
-
14
- export function RequestRow(props: RequestRowProps) {
15
- const { index, style, item } = props;
16
- const { sequence, createdTS } = item;
17
-
18
- return (
19
- <Container
20
- className='DevListRow-container'
21
- data-testid='DevListRow-container'
22
- style={style}
23
- index={index}
24
- onClick={() => props.onClick(item)}
25
- >
26
- <Col>
27
- <Id>{sequence}</Id>
28
- <Type>{item.originalAction?.type}</Type>
29
- </Col>
30
- <Col>
31
- <Time value={createdTS} />
32
- </Col>
33
- </Container>
34
- );
35
- }
36
-
37
- export default RequestRow;
@@ -1,2 +0,0 @@
1
- .Time-container {
2
- }
@@ -1,28 +0,0 @@
1
- import React from 'react';
2
- import { useSelector } from 'react-redux';
3
- import DevMenu from '../components/DevMenu/DevMenu';
4
- import { devGroups, devRoutes, IDevRoute } from '../data/devRoutes';
5
- import { $menuBadges, $menuBadgesTotal } from '../store/selectors';
6
-
7
- type DevPanelProps = {
8
- selectedId: string;
9
- onClick: (route: IDevRoute) => void;
10
- };
11
-
12
- export function DevMenuContainer(props: DevPanelProps) {
13
- const badges = useSelector($menuBadges);
14
- const badgesTotal = useSelector($menuBadgesTotal);
15
-
16
- return (
17
- <DevMenu
18
- groups={devGroups}
19
- items={devRoutes}
20
- badges={badges}
21
- badgesTotal={badgesTotal}
22
- selectedId={props.selectedId}
23
- onClick={props.onClick}
24
- />
25
- );
26
- }
27
-
28
- export default DevMenuContainer;
@@ -1,10 +0,0 @@
1
- import React from 'react';
2
- import DevPanel from '../components/DevPanel/DevPanel';
3
-
4
- type DevPanelProps = {};
5
-
6
- export function DevPanelContainer(_props: DevPanelProps) {
7
- return <DevPanel />;
8
- }
9
-
10
- export default DevPanelContainer;
@@ -1,19 +0,0 @@
1
- window.addEventListener('message', function (event) {
2
- // Only accept messages from the same frame
3
- if (event.source !== window) {
4
- return;
5
- }
6
-
7
- const message = event.data as any;
8
-
9
- // Only accept messages that we know are ours
10
- if (
11
- typeof message !== 'object' ||
12
- message === null ||
13
- message.source !== 'devtools-page'
14
- ) {
15
- return;
16
- }
17
-
18
- chrome.runtime.sendMessage(message);
19
- });
package/src/devtools.tsx DELETED
@@ -1,29 +0,0 @@
1
- // devtools.js
2
- const backgroundPageConnection = chrome.runtime.connect({
3
- name: 'devtools-page',
4
- });
5
-
6
- let panel: any;
7
-
8
- chrome.devtools.panels.create(
9
- 'Redux connected',
10
- '',
11
- 'panel.html',
12
- function (_panel) {
13
- panel = _panel;
14
-
15
- backgroundPageConnection.postMessage({
16
- name: 'init',
17
- tabId: chrome.devtools.inspectedWindow.tabId,
18
- });
19
-
20
- backgroundPageConnection.postMessage({
21
- tabId: chrome.devtools.inspectedWindow.tabId,
22
- scriptToInject: 'injected_script.js',
23
- });
24
-
25
- backgroundPageConnection.onMessage.addListener(function (message: any) {
26
- // Handle responses from the background page, if any
27
- });
28
- }
29
- );
package/src/index.ts DELETED
@@ -1 +0,0 @@
1
- export { DevPanelContainer } from './containers/DevPanelContainer';
@@ -1,9 +0,0 @@
1
- // injected-script.js
2
-
3
- window.postMessage(
4
- {
5
- greeting: 'hello there!',
6
- source: 'devtools-page',
7
- },
8
- '*'
9
- );
package/src/options.tsx DELETED
@@ -1,77 +0,0 @@
1
- import React, { useEffect, useState } from 'react';
2
- import ReactDOM from 'react-dom';
3
-
4
- const Options = () => {
5
- const [color, setColor] = useState<string>('');
6
- const [status, setStatus] = useState<string>('');
7
- const [like, setLike] = useState<boolean>(false);
8
-
9
- useEffect(() => {
10
- // Restores select box and checkbox state using the preferences
11
- // stored in chrome.storage.
12
- chrome.storage.sync.get(
13
- {
14
- favoriteColor: 'red',
15
- likesColor: true,
16
- },
17
- (items) => {
18
- setColor(items.favoriteColor);
19
- setLike(items.likesColor);
20
- }
21
- );
22
- }, []);
23
-
24
- const saveOptions = () => {
25
- // Saves options to chrome.storage.sync.
26
- chrome.storage.sync.set(
27
- {
28
- favoriteColor: color,
29
- likesColor: like,
30
- },
31
- () => {
32
- // Update status to let user know options were saved.
33
- setStatus('Options saved.');
34
- const id = setTimeout(() => {
35
- setStatus('');
36
- }, 1000);
37
- return () => clearTimeout(id);
38
- }
39
- );
40
- };
41
-
42
- return (
43
- <>
44
- <div>
45
- Favorite color:{' '}
46
- <select
47
- value={color}
48
- onChange={(event) => setColor(event.target.value)}
49
- >
50
- <option value='red'>red</option>
51
- <option value='green'>green</option>
52
- <option value='blue'>blue</option>
53
- <option value='yellow'>yellow</option>
54
- </select>
55
- </div>
56
- <div>
57
- <label>
58
- <input
59
- type='checkbox'
60
- checked={like}
61
- onChange={(event) => setLike(event.target.checked)}
62
- />
63
- I like colors.
64
- </label>
65
- </div>
66
- <div>{status}</div>
67
- <button onClick={saveOptions}>Save</button>
68
- </>
69
- );
70
- };
71
-
72
- ReactDOM.render(
73
- <React.StrictMode>
74
- <Options />
75
- </React.StrictMode>,
76
- document.getElementById('root')
77
- );
package/src/panel.tsx DELETED
@@ -1,30 +0,0 @@
1
- import DevPanel from './containers/DevPanelContainer';
2
- import React from 'react';
3
- import ReactDOM from 'react-dom';
4
- import { Provider } from 'react-redux';
5
- import { store } from './store/initialState';
6
-
7
- ReactDOM.render(
8
- <React.StrictMode>
9
- <Provider store={store}>
10
- <DevPanel />
11
- </Provider>
12
- </React.StrictMode>,
13
- document.getElementById('root')
14
- );
15
-
16
- chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
17
- if (sender.origin?.indexOf('http://localhost') === 0) {
18
- const store = (window as any).store;
19
-
20
- switch (request.type) {
21
- case 'CONNECTED_STATE':
22
- break;
23
- case 'CONNECTED_ACTION':
24
- const { payload } = request;
25
- const { action } = payload;
26
- store.dispatch(action);
27
- break;
28
- }
29
- }
30
- });