@xylabs/react-pixel-debugger 3.1.0-rc.6 → 3.1.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/README.md +20 -49
- package/dist/browser/PixelEvent.d.cts +5 -0
- package/dist/browser/PixelEvent.d.cts.map +1 -0
- package/dist/browser/components/PixelDebugger.d.cts +3 -0
- package/dist/browser/components/PixelDebugger.d.cts.map +1 -0
- package/dist/browser/components/PixelDebuggerProvider.d.cts +4 -0
- package/dist/browser/components/PixelDebuggerProvider.d.cts.map +1 -0
- package/dist/browser/components/PixelDebuggerToggle.d.cts +4 -0
- package/dist/browser/components/PixelDebuggerToggle.d.cts.map +1 -0
- package/dist/browser/components/index.d.cts +4 -0
- package/dist/browser/components/index.d.cts.map +1 -0
- package/dist/browser/hooks/index.d.cts +2 -0
- package/dist/browser/hooks/index.d.cts.map +1 -0
- package/dist/browser/hooks/usePixelAltSendHandler.d.cts +2 -0
- package/dist/browser/hooks/usePixelAltSendHandler.d.cts.map +1 -0
- package/dist/{node/components/PixelDebugger.js → browser/index.cjs} +70 -20
- package/dist/browser/index.cjs.map +1 -0
- package/dist/browser/index.d.cts +4 -0
- package/dist/browser/index.d.cts.map +1 -0
- package/dist/browser/index.js +109 -3
- package/dist/browser/index.js.map +1 -1
- package/dist/node/PixelEvent.d.cts +5 -0
- package/dist/node/PixelEvent.d.cts.map +1 -0
- package/dist/node/components/PixelDebugger.d.cts +3 -0
- package/dist/node/components/PixelDebugger.d.cts.map +1 -0
- package/dist/node/components/PixelDebuggerProvider.d.cts +4 -0
- package/dist/node/components/PixelDebuggerProvider.d.cts.map +1 -0
- package/dist/node/components/PixelDebuggerToggle.d.cts +4 -0
- package/dist/node/components/PixelDebuggerToggle.d.cts.map +1 -0
- package/dist/node/components/index.d.cts +4 -0
- package/dist/node/components/index.d.cts.map +1 -0
- package/dist/node/hooks/index.d.cts +2 -0
- package/dist/node/hooks/index.d.cts.map +1 -0
- package/dist/node/hooks/usePixelAltSendHandler.d.cts +2 -0
- package/dist/node/hooks/usePixelAltSendHandler.d.cts.map +1 -0
- package/dist/node/index.cjs +140 -0
- package/dist/node/index.cjs.map +1 -0
- package/dist/node/index.d.cts +4 -0
- package/dist/node/index.d.cts.map +1 -0
- package/dist/node/index.js +107 -24
- package/dist/node/index.js.map +1 -1
- package/package.json +25 -23
- package/src/components/PixelDebugger.tsx +2 -2
- package/dist/browser/PixelEvent.js +0 -1
- package/dist/browser/PixelEvent.js.map +0 -1
- package/dist/browser/components/PixelDebugger.js +0 -59
- package/dist/browser/components/PixelDebugger.js.map +0 -1
- package/dist/browser/components/PixelDebugger.stories.js +0 -34
- package/dist/browser/components/PixelDebugger.stories.js.map +0 -1
- package/dist/browser/components/PixelDebuggerProvider.js +0 -11
- package/dist/browser/components/PixelDebuggerProvider.js.map +0 -1
- package/dist/browser/components/PixelDebuggerToggle.js +0 -16
- package/dist/browser/components/PixelDebuggerToggle.js.map +0 -1
- package/dist/browser/components/index.js +0 -4
- package/dist/browser/components/index.js.map +0 -1
- package/dist/browser/hooks/index.js +0 -2
- package/dist/browser/hooks/index.js.map +0 -1
- package/dist/browser/hooks/usePixelAltSendHandler.js +0 -25
- package/dist/browser/hooks/usePixelAltSendHandler.js.map +0 -1
- package/dist/node/PixelEvent.js +0 -17
- package/dist/node/PixelEvent.js.map +0 -1
- package/dist/node/PixelEvent.mjs +0 -1
- package/dist/node/PixelEvent.mjs.map +0 -1
- package/dist/node/components/PixelDebugger.js.map +0 -1
- package/dist/node/components/PixelDebugger.mjs +0 -59
- package/dist/node/components/PixelDebugger.mjs.map +0 -1
- package/dist/node/components/PixelDebugger.stories.js +0 -58
- package/dist/node/components/PixelDebugger.stories.js.map +0 -1
- package/dist/node/components/PixelDebugger.stories.mjs +0 -34
- package/dist/node/components/PixelDebugger.stories.mjs.map +0 -1
- package/dist/node/components/PixelDebuggerProvider.js +0 -35
- package/dist/node/components/PixelDebuggerProvider.js.map +0 -1
- package/dist/node/components/PixelDebuggerProvider.mjs +0 -11
- package/dist/node/components/PixelDebuggerProvider.mjs.map +0 -1
- package/dist/node/components/PixelDebuggerToggle.js +0 -40
- package/dist/node/components/PixelDebuggerToggle.js.map +0 -1
- package/dist/node/components/PixelDebuggerToggle.mjs +0 -16
- package/dist/node/components/PixelDebuggerToggle.mjs.map +0 -1
- package/dist/node/components/index.js +0 -27
- package/dist/node/components/index.js.map +0 -1
- package/dist/node/components/index.mjs +0 -4
- package/dist/node/components/index.mjs.map +0 -1
- package/dist/node/hooks/index.js +0 -23
- package/dist/node/hooks/index.js.map +0 -1
- package/dist/node/hooks/index.mjs +0 -2
- package/dist/node/hooks/index.mjs.map +0 -1
- package/dist/node/hooks/usePixelAltSendHandler.js +0 -49
- package/dist/node/hooks/usePixelAltSendHandler.js.map +0 -1
- package/dist/node/hooks/usePixelAltSendHandler.mjs +0 -25
- package/dist/node/hooks/usePixelAltSendHandler.mjs.map +0 -1
- package/dist/node/index.mjs +0 -4
- package/dist/node/index.mjs.map +0 -1
package/README.md
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
[![logo][]](https://xylabs.com)
|
|
2
2
|
|
|
3
|
-
# @xylabs/
|
|
3
|
+
# @xylabs/react-pixel-debugger
|
|
4
4
|
|
|
5
|
-
[![main-build][]][main-build-link]
|
|
6
|
-
[![beta-build][]][beta-build-link]
|
|
7
5
|
[![npm-badge][]][npm-link]
|
|
8
|
-
[![
|
|
9
|
-
[![
|
|
10
|
-
[![
|
|
11
|
-
[![snyk-badge][]][snyk-link]
|
|
6
|
+
[![npm-downloads-badge][]][npm-link]
|
|
7
|
+
[![jsdelivr-badge][]][jsdelivr-link]
|
|
8
|
+
[![npm-license-badge][]](LICENSE)
|
|
12
9
|
|
|
13
10
|
> XY Labs generalized React library
|
|
14
11
|
|
|
@@ -16,53 +13,39 @@
|
|
|
16
13
|
|
|
17
14
|
- [Description](#description)
|
|
18
15
|
- [Install](#install)
|
|
19
|
-
- [Scripts](#scripts)
|
|
20
16
|
- [Maintainers](#maintainers)
|
|
21
17
|
- [License](#license)
|
|
22
18
|
- [Credits](#credits)
|
|
23
19
|
|
|
24
20
|
## Description
|
|
25
21
|
|
|
26
|
-
Common React code that is used
|
|
22
|
+
Common React code that is used throughout XYO projects that use React.
|
|
27
23
|
|
|
28
24
|
## Install
|
|
29
25
|
|
|
30
26
|
Using npm:
|
|
31
27
|
|
|
32
28
|
```sh
|
|
33
|
-
npm i --save @xylabs/
|
|
29
|
+
npm i --save @xylabs/react-pixel-debugger
|
|
34
30
|
```
|
|
35
31
|
|
|
36
32
|
Using yarn:
|
|
37
33
|
|
|
38
34
|
```sh
|
|
39
|
-
yarn add @xylabs/
|
|
35
|
+
yarn add @xylabs/react-pixel-debugger
|
|
40
36
|
```
|
|
41
37
|
|
|
42
|
-
##
|
|
38
|
+
## Documentation
|
|
39
|
+
[Developer Reference](https://xylabs.github.io/sdk-react)
|
|
43
40
|
|
|
44
|
-
|
|
45
|
-
list of shared scripts. The below scripts are custom scripts for this repo.
|
|
46
|
-
|
|
47
|
-
### Build (Storybook)
|
|
48
|
-
|
|
49
|
-
Build the static Storybook site
|
|
50
|
-
|
|
51
|
-
```sh
|
|
52
|
-
yarn build-storybook
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
### Start
|
|
56
|
-
|
|
57
|
-
Starts the project in the browser for testing, with auto reload using Storybook
|
|
58
|
-
|
|
59
|
-
```sh
|
|
60
|
-
yarn start
|
|
61
|
-
```
|
|
41
|
+
[Storybook](https://xylabs.github.io/sdk-react/storybook)
|
|
62
42
|
|
|
63
43
|
## Maintainers
|
|
64
44
|
|
|
65
|
-
- [Arie Trouw](https://github.com/arietrouw) [arietrouw.com](https://arietrouw.com)
|
|
45
|
+
- [Arie Trouw](https://github.com/arietrouw) ([arietrouw.com](https://arietrouw.com))
|
|
46
|
+
- [Matt Jones](https://github.com/jonesmac)
|
|
47
|
+
- [Joel Carter](https://github.com/JoelBCarter)
|
|
48
|
+
- [Jordan Trouw](https://github.com/jordantrouw)
|
|
66
49
|
|
|
67
50
|
## License
|
|
68
51
|
|
|
@@ -74,23 +57,11 @@ See the [LICENSE](LICENSE) file for license details
|
|
|
74
57
|
|
|
75
58
|
[logo]: https://cdn.xy.company/img/brand/XYPersistentCompany_Logo_Icon_Colored.svg
|
|
76
59
|
|
|
77
|
-
[
|
|
78
|
-
[
|
|
79
|
-
|
|
80
|
-
[beta-build]: https://github.com/xylabs/sdk-react/actions/workflows/build-beta.yml/badge.svg
|
|
81
|
-
[beta-build-link]: https://github.com/xylabs/sdk-react/actions/workflows/build-beta.yml
|
|
82
|
-
|
|
83
|
-
[npm-badge]: https://img.shields.io/npm/v/@xylabs/sdk-react.svg
|
|
84
|
-
[npm-link]: https://www.npmjs.com/package/@xylabs/sdk-react
|
|
85
|
-
|
|
86
|
-
[bch-badge]: https://bettercodehub.com/edge/badge/xylabs/sdk-react?branch=main
|
|
87
|
-
[bch-link]: https://bettercodehub.com/results/xylabs/sdk-react
|
|
88
|
-
|
|
89
|
-
[codacy-badge]: https://app.codacy.com/project/badge/Grade/c2a69d4530ed4b7da6ddb070169dd339
|
|
90
|
-
[codacy-link]: https://www.codacy.com/gh/xylabs/sdk-react/dashboard?utm_source=github.com&utm_medium=referral&utm_content=xylabs/sdk-react&utm_campaign=Badge_Grade
|
|
60
|
+
[npm-badge]: https://img.shields.io/npm/v/@xylabs/react-pixel-debugger.svg
|
|
61
|
+
[npm-link]: https://www.npmjs.com/package/@xylabs/react-pixel-debugger
|
|
91
62
|
|
|
92
|
-
[
|
|
93
|
-
[
|
|
63
|
+
[npm-downloads-badge]: https://img.shields.io/npm/dw/@xylabs/react-pixel-debugger
|
|
64
|
+
[npm-license-badge]: https://img.shields.io/npm/l/@xylabs/react-pixel-debugger
|
|
94
65
|
|
|
95
|
-
[
|
|
96
|
-
[
|
|
66
|
+
[jsdelivr-badge]: https://data.jsdelivr.com/v1/package/npm/@xylabs/react-pixel-debugger/badge
|
|
67
|
+
[jsdelivr-link]: https://www.jsdelivr.com/package/npm/@xylabs/react-pixel-debugger
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PixelEvent.d.ts","sourceRoot":"","sources":["../../src/PixelEvent.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PixelDebugger.d.ts","sourceRoot":"","sources":["../../../src/components/PixelDebugger.tsx"],"names":[],"mappings":";AAUA,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAsDjC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PixelDebuggerProvider.d.ts","sourceRoot":"","sources":["../../../src/components/PixelDebuggerProvider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAmB,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEpE,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAGxD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PixelDebuggerToggle.d.ts","sourceRoot":"","sources":["../../../src/components/PixelDebuggerToggle.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAW,MAAM,uBAAuB,CAAA;AAI7D,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAWtD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePixelAltSendHandler.d.ts","sourceRoot":"","sources":["../../../src/hooks/usePixelAltSendHandler.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,sBAAsB,uBAAwB,MAAM,WAAW,OAAO,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,SAmB3G,CAAA"}
|
|
@@ -16,25 +16,56 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
|
|
20
|
+
// src/index.ts
|
|
21
|
+
var src_exports = {};
|
|
22
|
+
__export(src_exports, {
|
|
23
|
+
PixelDebugger: () => PixelDebugger,
|
|
24
|
+
PixelDebuggerProvider: () => PixelDebuggerProvider,
|
|
25
|
+
PixelDebuggerToggle: () => PixelDebuggerToggle,
|
|
26
|
+
usePixelAltSendHandler: () => usePixelAltSendHandler
|
|
22
27
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
|
|
28
|
+
module.exports = __toCommonJS(src_exports);
|
|
29
|
+
|
|
30
|
+
// src/components/PixelDebugger.tsx
|
|
25
31
|
var import_material = require("@mui/material");
|
|
26
32
|
var import_react_button = require("@xylabs/react-button");
|
|
27
33
|
var import_react_flexbox = require("@xylabs/react-flexbox");
|
|
28
34
|
var import_react_pixel = require("@xylabs/react-pixel");
|
|
29
35
|
var import_react_portal = require("@xylabs/react-portal");
|
|
36
|
+
var import_react2 = require("react");
|
|
37
|
+
|
|
38
|
+
// src/hooks/usePixelAltSendHandler.ts
|
|
39
|
+
var import_pixel = require("@xylabs/pixel");
|
|
30
40
|
var import_react = require("react");
|
|
31
|
-
var
|
|
32
|
-
const
|
|
33
|
-
|
|
41
|
+
var usePixelAltSendHandler = (altHandler) => {
|
|
42
|
+
const [pixelSend, setPixelSend] = (0, import_react.useState)();
|
|
43
|
+
(0, import_react.useEffect)(() => {
|
|
44
|
+
if (!pixelSend && import_pixel.XyPixel.instance.send) {
|
|
45
|
+
const oldHandler = import_pixel.XyPixel.instance.send.bind(import_pixel.XyPixel.instance);
|
|
46
|
+
setPixelSend(oldHandler);
|
|
47
|
+
} else {
|
|
48
|
+
import_pixel.XyPixel.instance.send = async (event, fields, eventId) => {
|
|
49
|
+
altHandler(event, fields);
|
|
50
|
+
return await pixelSend?.(event, fields, eventId);
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
return () => {
|
|
54
|
+
if (pixelSend) {
|
|
55
|
+
import_pixel.XyPixel.instance.send = pixelSend;
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
}, [pixelSend, altHandler]);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
// src/components/PixelDebugger.tsx
|
|
62
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
63
|
+
var PixelDebugger = () => {
|
|
64
|
+
const { isDebugging } = (0, import_react2.useContext)(import_react_pixel.DebugUserEventsContext);
|
|
34
65
|
const theme = (0, import_material.useTheme)();
|
|
35
|
-
const [displayEvents, setDisplayEvents] = (0,
|
|
36
|
-
const [events, setEvents] = (0,
|
|
37
|
-
|
|
66
|
+
const [displayEvents, setDisplayEvents] = (0, import_react2.useState)(false);
|
|
67
|
+
const [events, setEvents] = (0, import_react2.useState)([]);
|
|
68
|
+
usePixelAltSendHandler((event, fields) => {
|
|
38
69
|
setEvents((events2) => [{ event, fields }, ...events2]);
|
|
39
70
|
});
|
|
40
71
|
if (!isDebugging) {
|
|
@@ -53,7 +84,7 @@ const PixelDebugger = () => {
|
|
|
53
84
|
color: theme.palette.primary.main,
|
|
54
85
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react_flexbox.FlexCol, { alignItems: "stretch", sx: { flexFlow: "column", maxHeight: 400 }, children: [
|
|
55
86
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_flexbox.FlexCol, { alignItems: "stretch", sx: { flex: "0 1 auto" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_button.ButtonEx, { variant: "text", onClick: () => setDisplayEvents(!displayEvents), children: "XY Pixel Debugger" }) }),
|
|
56
|
-
displayEvents &&
|
|
87
|
+
displayEvents && events.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
57
88
|
import_react_flexbox.FlexCol,
|
|
58
89
|
{
|
|
59
90
|
alignItems: "stretch",
|
|
@@ -63,21 +94,40 @@ const PixelDebugger = () => {
|
|
|
63
94
|
children: events.map((e, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PixelEventDetails, { events, index, ...e }, `${e.event}-${index}`))
|
|
64
95
|
}
|
|
65
96
|
),
|
|
66
|
-
displayEvents &&
|
|
97
|
+
displayEvents && events.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "subtitle2", children: "No Events" })
|
|
67
98
|
] })
|
|
68
99
|
}
|
|
69
100
|
) }) }) });
|
|
70
101
|
};
|
|
71
|
-
|
|
72
|
-
const [isOpen, setIsOpen] = (0,
|
|
102
|
+
var PixelEventDetails = ({ event, fields, index, events }) => {
|
|
103
|
+
const [isOpen, setIsOpen] = (0, import_react2.useState)(false);
|
|
73
104
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react_flexbox.FlexCol, { alignItems: "stretch", marginBottom: 0.5, onClick: () => setIsOpen(!isOpen), children: [
|
|
74
105
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "subtitle2", children: event }),
|
|
75
106
|
isOpen && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { marginBottom: 0.5, variant: "caption", children: JSON.stringify(fields, null, 2) }),
|
|
76
107
|
events[index + 1] && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Divider, {})
|
|
77
108
|
] });
|
|
78
109
|
};
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
110
|
+
|
|
111
|
+
// src/components/PixelDebuggerProvider.tsx
|
|
112
|
+
var import_react_pixel2 = require("@xylabs/react-pixel");
|
|
113
|
+
var import_react_shared = require("@xylabs/react-shared");
|
|
114
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
115
|
+
var PixelDebuggerProvider = ({ children }) => {
|
|
116
|
+
const [isDebugging, setIsDebugging] = (0, import_react_shared.useLocalStorage)("isDebuggingPixel", false);
|
|
117
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_pixel2.DebugUserEventsContext.Provider, { value: { isDebugging, setIsDebugging }, children });
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
// src/components/PixelDebuggerToggle.tsx
|
|
121
|
+
var import_material2 = require("@mui/material");
|
|
122
|
+
var import_react_flexbox2 = require("@xylabs/react-flexbox");
|
|
123
|
+
var import_react_pixel3 = require("@xylabs/react-pixel");
|
|
124
|
+
var import_react3 = require("react");
|
|
125
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
126
|
+
var PixelDebuggerToggle = ({ ...props }) => {
|
|
127
|
+
const { setIsDebugging, isDebugging } = (0, import_react3.useContext)(import_react_pixel3.DebugUserEventsContext);
|
|
128
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react_flexbox2.FlexRow, { ...props, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_material2.FormControl, { children: [
|
|
129
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material2.FormLabel, { children: "Enable Debugger" }),
|
|
130
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material2.Switch, { checked: isDebugging, onClick: () => setIsDebugging(!isDebugging) })
|
|
131
|
+
] }) });
|
|
132
|
+
};
|
|
133
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/components/PixelDebugger.tsx","../../src/hooks/usePixelAltSendHandler.ts","../../src/components/PixelDebuggerProvider.tsx","../../src/components/PixelDebuggerToggle.tsx"],"sourcesContent":["export * from './components'\nexport * from './hooks'\nexport * from './PixelEvent'\n","import { Badge, Card, Divider, Typography, useTheme } from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { DebugUserEventsContext } from '@xylabs/react-pixel'\nimport { Portal } from '@xylabs/react-portal'\nimport { useContext, useState } from 'react'\n\nimport { usePixelAltSendHandler } from '../hooks'\nimport { PixelEvent } from '../PixelEvent'\n\nexport const PixelDebugger: React.FC = () => {\n const { isDebugging } = useContext(DebugUserEventsContext)\n //TODO - when adding in the location hook to detect location change, was dropping the setEvents in usePixelAltSendHand\n const theme = useTheme()\n const [displayEvents, setDisplayEvents] = useState(false)\n const [events, setEvents] = useState<PixelEvent[]>([])\n\n usePixelAltSendHandler((event: string, fields?: Record<string, unknown>) => {\n setEvents((events) => [{ event, fields }, ...events])\n })\n\n if (!isDebugging) {\n return null\n }\n\n return (\n <Portal>\n <div style={{ bottom: 0, left: 0, position: 'fixed', width: 350 }}>\n <Badge badgeContent={events.length} color=\"primary\" sx={{ width: '100%' }}>\n <Card\n variant=\"outlined\"\n sx={{\n backdropFilter: 'blur(16px) saturate(180%)',\n backgroundColor: 'rgba(18, 18, 18, .70)',\n overflowY: 'auto',\n width: '100%',\n }}\n color={theme.palette.primary.main}\n >\n <FlexCol alignItems=\"stretch\" sx={{ flexFlow: 'column', maxHeight: 400 }}>\n <FlexCol alignItems=\"stretch\" sx={{ flex: '0 1 auto' }}>\n <ButtonEx variant=\"text\" onClick={() => setDisplayEvents(!displayEvents)}>\n XY Pixel Debugger\n </ButtonEx>\n </FlexCol>\n {displayEvents && events.length > 0 && (\n <FlexCol\n alignItems=\"stretch\"\n alignContent=\"start\"\n padding={2}\n sx={{ cursor: 'pointer', flex: '1 1 auto', overflowY: 'auto', userSelect: 'none' }}\n >\n {events.map((e, index) => (\n <PixelEventDetails key={`${e.event}-${index}`} events={events} index={index} {...e} />\n ))}\n </FlexCol>\n )}\n {displayEvents && events.length === 0 && <Typography variant=\"subtitle2\">No Events</Typography>}\n </FlexCol>\n </Card>\n </Badge>\n </div>\n </Portal>\n )\n}\n\nconst PixelEventDetails: React.FC<PixelEvent & { events: PixelEvent[]; index: number }> = ({ event, fields, index, events }) => {\n const [isOpen, setIsOpen] = useState(false)\n return (\n <FlexCol alignItems=\"stretch\" marginBottom={0.5} onClick={() => setIsOpen(!isOpen)}>\n <Typography variant=\"subtitle2\">{event}</Typography>\n {isOpen && (\n <Typography marginBottom={0.5} variant=\"caption\">\n {JSON.stringify(fields, null, 2)}\n </Typography>\n )}\n {events[index + 1] && <Divider />}\n </FlexCol>\n )\n}\n","import { XyPixel } from '@xylabs/pixel'\nimport { useEffect, useState } from 'react'\n\nexport const usePixelAltSendHandler = (altHandler: (event: string, fields?: Record<string, unknown>) => void) => {\n const [pixelSend, setPixelSend] = useState<typeof XyPixel.instance.send>()\n useEffect(() => {\n if (!pixelSend && XyPixel.instance.send) {\n const oldHandler = XyPixel.instance.send.bind(XyPixel.instance)\n setPixelSend(oldHandler)\n } else {\n XyPixel.instance.send = async (event: string, fields?: Record<string, unknown>, eventId?: string) => {\n altHandler(event, fields)\n return await pixelSend?.(event, fields, eventId)\n }\n }\n return () => {\n //restore send on unmount\n if (pixelSend) {\n XyPixel.instance.send = pixelSend\n }\n }\n }, [pixelSend, altHandler])\n}\n","import { DebugUserEventsContext } from '@xylabs/react-pixel'\nimport { useLocalStorage, WithChildren } from '@xylabs/react-shared'\n\nexport const PixelDebuggerProvider: React.FC<WithChildren> = ({ children }) => {\n const [isDebugging, setIsDebugging] = useLocalStorage<boolean>('isDebuggingPixel', false)\n return <DebugUserEventsContext.Provider value={{ isDebugging, setIsDebugging }}>{children}</DebugUserEventsContext.Provider>\n}\n","import { FormControl, FormLabel, Switch } from '@mui/material'\nimport { BusyBoxProps, FlexRow } from '@xylabs/react-flexbox'\nimport { DebugUserEventsContext } from '@xylabs/react-pixel'\nimport { useContext } from 'react'\n\nexport const PixelDebuggerToggle: React.FC<BusyBoxProps> = ({ ...props }) => {\n const { setIsDebugging, isDebugging } = useContext(DebugUserEventsContext)\n\n return (\n <FlexRow {...props}>\n <FormControl>\n <FormLabel>Enable Debugger</FormLabel>\n <Switch checked={isDebugging} onClick={() => setIsDebugging(!isDebugging)} />\n </FormControl>\n </FlexRow>\n )\n}\n"],"mappings":"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","names":["import_react","events","import_react_pixel","import_jsx_runtime","import_material","import_react_flexbox","import_react_pixel","import_react","import_jsx_runtime"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA"}
|
package/dist/browser/index.js
CHANGED
|
@@ -1,4 +1,110 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
// src/components/PixelDebugger.tsx
|
|
2
|
+
import { Badge, Card, Divider, Typography, useTheme } from "@mui/material";
|
|
3
|
+
import { ButtonEx } from "@xylabs/react-button";
|
|
4
|
+
import { FlexCol } from "@xylabs/react-flexbox";
|
|
5
|
+
import { DebugUserEventsContext } from "@xylabs/react-pixel";
|
|
6
|
+
import { Portal } from "@xylabs/react-portal";
|
|
7
|
+
import { useContext, useState as useState2 } from "react";
|
|
8
|
+
|
|
9
|
+
// src/hooks/usePixelAltSendHandler.ts
|
|
10
|
+
import { XyPixel } from "@xylabs/pixel";
|
|
11
|
+
import { useEffect, useState } from "react";
|
|
12
|
+
var usePixelAltSendHandler = (altHandler) => {
|
|
13
|
+
const [pixelSend, setPixelSend] = useState();
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
if (!pixelSend && XyPixel.instance.send) {
|
|
16
|
+
const oldHandler = XyPixel.instance.send.bind(XyPixel.instance);
|
|
17
|
+
setPixelSend(oldHandler);
|
|
18
|
+
} else {
|
|
19
|
+
XyPixel.instance.send = async (event, fields, eventId) => {
|
|
20
|
+
altHandler(event, fields);
|
|
21
|
+
return await pixelSend?.(event, fields, eventId);
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
return () => {
|
|
25
|
+
if (pixelSend) {
|
|
26
|
+
XyPixel.instance.send = pixelSend;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
}, [pixelSend, altHandler]);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
// src/components/PixelDebugger.tsx
|
|
33
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
34
|
+
var PixelDebugger = () => {
|
|
35
|
+
const { isDebugging } = useContext(DebugUserEventsContext);
|
|
36
|
+
const theme = useTheme();
|
|
37
|
+
const [displayEvents, setDisplayEvents] = useState2(false);
|
|
38
|
+
const [events, setEvents] = useState2([]);
|
|
39
|
+
usePixelAltSendHandler((event, fields) => {
|
|
40
|
+
setEvents((events2) => [{ event, fields }, ...events2]);
|
|
41
|
+
});
|
|
42
|
+
if (!isDebugging) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
return /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx("div", { style: { bottom: 0, left: 0, position: "fixed", width: 350 }, children: /* @__PURE__ */ jsx(Badge, { badgeContent: events.length, color: "primary", sx: { width: "100%" }, children: /* @__PURE__ */ jsx(
|
|
46
|
+
Card,
|
|
47
|
+
{
|
|
48
|
+
variant: "outlined",
|
|
49
|
+
sx: {
|
|
50
|
+
backdropFilter: "blur(16px) saturate(180%)",
|
|
51
|
+
backgroundColor: "rgba(18, 18, 18, .70)",
|
|
52
|
+
overflowY: "auto",
|
|
53
|
+
width: "100%"
|
|
54
|
+
},
|
|
55
|
+
color: theme.palette.primary.main,
|
|
56
|
+
children: /* @__PURE__ */ jsxs(FlexCol, { alignItems: "stretch", sx: { flexFlow: "column", maxHeight: 400 }, children: [
|
|
57
|
+
/* @__PURE__ */ jsx(FlexCol, { alignItems: "stretch", sx: { flex: "0 1 auto" }, children: /* @__PURE__ */ jsx(ButtonEx, { variant: "text", onClick: () => setDisplayEvents(!displayEvents), children: "XY Pixel Debugger" }) }),
|
|
58
|
+
displayEvents && events.length > 0 && /* @__PURE__ */ jsx(
|
|
59
|
+
FlexCol,
|
|
60
|
+
{
|
|
61
|
+
alignItems: "stretch",
|
|
62
|
+
alignContent: "start",
|
|
63
|
+
padding: 2,
|
|
64
|
+
sx: { cursor: "pointer", flex: "1 1 auto", overflowY: "auto", userSelect: "none" },
|
|
65
|
+
children: events.map((e, index) => /* @__PURE__ */ jsx(PixelEventDetails, { events, index, ...e }, `${e.event}-${index}`))
|
|
66
|
+
}
|
|
67
|
+
),
|
|
68
|
+
displayEvents && events.length === 0 && /* @__PURE__ */ jsx(Typography, { variant: "subtitle2", children: "No Events" })
|
|
69
|
+
] })
|
|
70
|
+
}
|
|
71
|
+
) }) }) });
|
|
72
|
+
};
|
|
73
|
+
var PixelEventDetails = ({ event, fields, index, events }) => {
|
|
74
|
+
const [isOpen, setIsOpen] = useState2(false);
|
|
75
|
+
return /* @__PURE__ */ jsxs(FlexCol, { alignItems: "stretch", marginBottom: 0.5, onClick: () => setIsOpen(!isOpen), children: [
|
|
76
|
+
/* @__PURE__ */ jsx(Typography, { variant: "subtitle2", children: event }),
|
|
77
|
+
isOpen && /* @__PURE__ */ jsx(Typography, { marginBottom: 0.5, variant: "caption", children: JSON.stringify(fields, null, 2) }),
|
|
78
|
+
events[index + 1] && /* @__PURE__ */ jsx(Divider, {})
|
|
79
|
+
] });
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
// src/components/PixelDebuggerProvider.tsx
|
|
83
|
+
import { DebugUserEventsContext as DebugUserEventsContext2 } from "@xylabs/react-pixel";
|
|
84
|
+
import { useLocalStorage } from "@xylabs/react-shared";
|
|
85
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
86
|
+
var PixelDebuggerProvider = ({ children }) => {
|
|
87
|
+
const [isDebugging, setIsDebugging] = useLocalStorage("isDebuggingPixel", false);
|
|
88
|
+
return /* @__PURE__ */ jsx2(DebugUserEventsContext2.Provider, { value: { isDebugging, setIsDebugging }, children });
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
// src/components/PixelDebuggerToggle.tsx
|
|
92
|
+
import { FormControl, FormLabel, Switch } from "@mui/material";
|
|
93
|
+
import { FlexRow } from "@xylabs/react-flexbox";
|
|
94
|
+
import { DebugUserEventsContext as DebugUserEventsContext3 } from "@xylabs/react-pixel";
|
|
95
|
+
import { useContext as useContext2 } from "react";
|
|
96
|
+
import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
97
|
+
var PixelDebuggerToggle = ({ ...props }) => {
|
|
98
|
+
const { setIsDebugging, isDebugging } = useContext2(DebugUserEventsContext3);
|
|
99
|
+
return /* @__PURE__ */ jsx3(FlexRow, { ...props, children: /* @__PURE__ */ jsxs2(FormControl, { children: [
|
|
100
|
+
/* @__PURE__ */ jsx3(FormLabel, { children: "Enable Debugger" }),
|
|
101
|
+
/* @__PURE__ */ jsx3(Switch, { checked: isDebugging, onClick: () => setIsDebugging(!isDebugging) })
|
|
102
|
+
] }) });
|
|
103
|
+
};
|
|
104
|
+
export {
|
|
105
|
+
PixelDebugger,
|
|
106
|
+
PixelDebuggerProvider,
|
|
107
|
+
PixelDebuggerToggle,
|
|
108
|
+
usePixelAltSendHandler
|
|
109
|
+
};
|
|
4
110
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/
|
|
1
|
+
{"version":3,"sources":["../../src/components/PixelDebugger.tsx","../../src/hooks/usePixelAltSendHandler.ts","../../src/components/PixelDebuggerProvider.tsx","../../src/components/PixelDebuggerToggle.tsx"],"sourcesContent":["import { Badge, Card, Divider, Typography, useTheme } from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { DebugUserEventsContext } from '@xylabs/react-pixel'\nimport { Portal } from '@xylabs/react-portal'\nimport { useContext, useState } from 'react'\n\nimport { usePixelAltSendHandler } from '../hooks'\nimport { PixelEvent } from '../PixelEvent'\n\nexport const PixelDebugger: React.FC = () => {\n const { isDebugging } = useContext(DebugUserEventsContext)\n //TODO - when adding in the location hook to detect location change, was dropping the setEvents in usePixelAltSendHand\n const theme = useTheme()\n const [displayEvents, setDisplayEvents] = useState(false)\n const [events, setEvents] = useState<PixelEvent[]>([])\n\n usePixelAltSendHandler((event: string, fields?: Record<string, unknown>) => {\n setEvents((events) => [{ event, fields }, ...events])\n })\n\n if (!isDebugging) {\n return null\n }\n\n return (\n <Portal>\n <div style={{ bottom: 0, left: 0, position: 'fixed', width: 350 }}>\n <Badge badgeContent={events.length} color=\"primary\" sx={{ width: '100%' }}>\n <Card\n variant=\"outlined\"\n sx={{\n backdropFilter: 'blur(16px) saturate(180%)',\n backgroundColor: 'rgba(18, 18, 18, .70)',\n overflowY: 'auto',\n width: '100%',\n }}\n color={theme.palette.primary.main}\n >\n <FlexCol alignItems=\"stretch\" sx={{ flexFlow: 'column', maxHeight: 400 }}>\n <FlexCol alignItems=\"stretch\" sx={{ flex: '0 1 auto' }}>\n <ButtonEx variant=\"text\" onClick={() => setDisplayEvents(!displayEvents)}>\n XY Pixel Debugger\n </ButtonEx>\n </FlexCol>\n {displayEvents && events.length > 0 && (\n <FlexCol\n alignItems=\"stretch\"\n alignContent=\"start\"\n padding={2}\n sx={{ cursor: 'pointer', flex: '1 1 auto', overflowY: 'auto', userSelect: 'none' }}\n >\n {events.map((e, index) => (\n <PixelEventDetails key={`${e.event}-${index}`} events={events} index={index} {...e} />\n ))}\n </FlexCol>\n )}\n {displayEvents && events.length === 0 && <Typography variant=\"subtitle2\">No Events</Typography>}\n </FlexCol>\n </Card>\n </Badge>\n </div>\n </Portal>\n )\n}\n\nconst PixelEventDetails: React.FC<PixelEvent & { events: PixelEvent[]; index: number }> = ({ event, fields, index, events }) => {\n const [isOpen, setIsOpen] = useState(false)\n return (\n <FlexCol alignItems=\"stretch\" marginBottom={0.5} onClick={() => setIsOpen(!isOpen)}>\n <Typography variant=\"subtitle2\">{event}</Typography>\n {isOpen && (\n <Typography marginBottom={0.5} variant=\"caption\">\n {JSON.stringify(fields, null, 2)}\n </Typography>\n )}\n {events[index + 1] && <Divider />}\n </FlexCol>\n )\n}\n","import { XyPixel } from '@xylabs/pixel'\nimport { useEffect, useState } from 'react'\n\nexport const usePixelAltSendHandler = (altHandler: (event: string, fields?: Record<string, unknown>) => void) => {\n const [pixelSend, setPixelSend] = useState<typeof XyPixel.instance.send>()\n useEffect(() => {\n if (!pixelSend && XyPixel.instance.send) {\n const oldHandler = XyPixel.instance.send.bind(XyPixel.instance)\n setPixelSend(oldHandler)\n } else {\n XyPixel.instance.send = async (event: string, fields?: Record<string, unknown>, eventId?: string) => {\n altHandler(event, fields)\n return await pixelSend?.(event, fields, eventId)\n }\n }\n return () => {\n //restore send on unmount\n if (pixelSend) {\n XyPixel.instance.send = pixelSend\n }\n }\n }, [pixelSend, altHandler])\n}\n","import { DebugUserEventsContext } from '@xylabs/react-pixel'\nimport { useLocalStorage, WithChildren } from '@xylabs/react-shared'\n\nexport const PixelDebuggerProvider: React.FC<WithChildren> = ({ children }) => {\n const [isDebugging, setIsDebugging] = useLocalStorage<boolean>('isDebuggingPixel', false)\n return <DebugUserEventsContext.Provider value={{ isDebugging, setIsDebugging }}>{children}</DebugUserEventsContext.Provider>\n}\n","import { FormControl, FormLabel, Switch } from '@mui/material'\nimport { BusyBoxProps, FlexRow } from '@xylabs/react-flexbox'\nimport { DebugUserEventsContext } from '@xylabs/react-pixel'\nimport { useContext } from 'react'\n\nexport const PixelDebuggerToggle: React.FC<BusyBoxProps> = ({ ...props }) => {\n const { setIsDebugging, isDebugging } = useContext(DebugUserEventsContext)\n\n return (\n <FlexRow {...props}>\n <FormControl>\n <FormLabel>Enable Debugger</FormLabel>\n <Switch checked={isDebugging} onClick={() => setIsDebugging(!isDebugging)} />\n </FormControl>\n </FlexRow>\n )\n}\n"],"mappings":"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","names":["useState","useState","events","DebugUserEventsContext","jsx","DebugUserEventsContext","useContext","jsx","jsxs"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PixelEvent.d.ts","sourceRoot":"","sources":["../../src/PixelEvent.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PixelDebugger.d.ts","sourceRoot":"","sources":["../../../src/components/PixelDebugger.tsx"],"names":[],"mappings":";AAUA,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAsDjC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PixelDebuggerProvider.d.ts","sourceRoot":"","sources":["../../../src/components/PixelDebuggerProvider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAmB,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEpE,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAGxD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PixelDebuggerToggle.d.ts","sourceRoot":"","sources":["../../../src/components/PixelDebuggerToggle.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAW,MAAM,uBAAuB,CAAA;AAI7D,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAWtD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePixelAltSendHandler.d.ts","sourceRoot":"","sources":["../../../src/hooks/usePixelAltSendHandler.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,sBAAsB,uBAAwB,MAAM,WAAW,OAAO,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,SAmB3G,CAAA"}
|