@walkeros/explorer 0.0.8 → 0.3.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/LICENSE +42 -0
- package/README.md +646 -374
- package/dist/chunk-P5UDSGZL.mjs +18485 -0
- package/dist/chunk-P5UDSGZL.mjs.map +1 -0
- package/dist/index.d.cts +1248 -0
- package/dist/index.d.ts +1185 -180
- package/dist/index.js +31721 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +12983 -2300
- package/dist/index.mjs.map +1 -1
- package/dist/monaco-types-T3WXA7KH.mjs +34 -0
- package/dist/monaco-types-T3WXA7KH.mjs.map +1 -0
- package/dist/styles.css +4923 -0
- package/package.json +96 -55
- package/dist/examples/destination.html +0 -143
- package/dist/examples/index.html +0 -110
- package/dist/examples/livecode-js.html +0 -396
- package/dist/explorer.js +0 -2997
- package/dist/explorer.js.map +0 -1
- package/dist/index.cjs +0 -2528
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.mts +0 -243
- package/serve.js +0 -52
package/package.json
CHANGED
|
@@ -1,71 +1,112 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@walkeros/explorer",
|
|
3
|
-
"version": "0.0
|
|
4
|
-
"description": "
|
|
5
|
-
"keywords": [
|
|
6
|
-
"walkerOS",
|
|
7
|
-
"explorer",
|
|
8
|
-
"code-editor",
|
|
9
|
-
"html",
|
|
10
|
-
"elb-tagging",
|
|
11
|
-
"developer-tools"
|
|
12
|
-
],
|
|
13
|
-
"homepage": "https://www.walkerOS.com",
|
|
14
|
-
"bugs": "https://github.com/elbwalker/walkerOS/issues",
|
|
15
|
-
"repository": {
|
|
16
|
-
"type": "git",
|
|
17
|
-
"url": "https://github.com/elbwalker/walkerOS.git",
|
|
18
|
-
"directory": "apps/explorer"
|
|
19
|
-
},
|
|
3
|
+
"version": "0.3.0",
|
|
4
|
+
"description": "Interactive React components for walkerOS documentation and exploration",
|
|
20
5
|
"license": "MIT",
|
|
21
|
-
"
|
|
22
|
-
"main": "dist/index.
|
|
23
|
-
"module": "dist/index.mjs",
|
|
24
|
-
"types": "dist/index.d.ts",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"module": "./dist/index.mjs",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.mjs",
|
|
14
|
+
"require": "./dist/index.js"
|
|
15
|
+
},
|
|
16
|
+
"./styles.css": "./dist/styles.css",
|
|
17
|
+
"./styles": "./dist/styles.css"
|
|
18
|
+
},
|
|
25
19
|
"files": [
|
|
26
|
-
"dist/**"
|
|
27
|
-
"serve.js"
|
|
20
|
+
"dist/**"
|
|
28
21
|
],
|
|
29
22
|
"scripts": {
|
|
30
23
|
"build": "tsup --silent",
|
|
31
|
-
"clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist",
|
|
32
24
|
"dev": "jest --watchAll --colors",
|
|
33
|
-
"
|
|
34
|
-
"lint": "tsc && eslint \"
|
|
35
|
-
"test": "jest
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"test:visual": "node test-harness.js",
|
|
43
|
-
"test:visual:watch": "node test-harness.js --watch",
|
|
44
|
-
"test:playwright": "playwright test",
|
|
45
|
-
"test:playwright:ui": "playwright test --ui",
|
|
46
|
-
"test:playwright:debug": "playwright test --debug",
|
|
47
|
-
"test:playwright:report": "playwright show-report",
|
|
48
|
-
"dev:visual": "node dev-workflow.js",
|
|
49
|
-
"dev:visual:once": "node dev-workflow.js --no-watch",
|
|
50
|
-
"update": "npx npm-check-updates -u && npm update"
|
|
25
|
+
"start": "storybook dev -p 6006 --no-open",
|
|
26
|
+
"lint": "tsc && eslint \"src/**/*.ts*\"",
|
|
27
|
+
"test": "jest",
|
|
28
|
+
"clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist",
|
|
29
|
+
"update": "npx npm-check-updates -u && npm update",
|
|
30
|
+
"build-storybook": "storybook build",
|
|
31
|
+
"publish-packages": "npm run build && npm run lint && npm run test && changeset version && changeset publish",
|
|
32
|
+
"prepare": "husky || true",
|
|
33
|
+
"format": "prettier --write ."
|
|
51
34
|
},
|
|
52
35
|
"dependencies": {
|
|
53
|
-
"@
|
|
54
|
-
"@
|
|
55
|
-
"@
|
|
36
|
+
"@monaco-editor/react": "^4.7.0",
|
|
37
|
+
"@rjsf/core": "^5.24.13",
|
|
38
|
+
"@rjsf/utils": "^5.24.13",
|
|
39
|
+
"@rjsf/validator-ajv8": "^5.24.13",
|
|
40
|
+
"clsx": "^2.1.1",
|
|
41
|
+
"monaco-editor": "^0.54.0",
|
|
42
|
+
"tailwind-merge": "^2.5.5"
|
|
43
|
+
},
|
|
44
|
+
"peerDependencies": {
|
|
45
|
+
"@walkeros/core": "^0.3.0",
|
|
46
|
+
"react": ">=18.0.0",
|
|
47
|
+
"react-dom": ">=18.0.0"
|
|
48
|
+
},
|
|
49
|
+
"peerDependenciesMeta": {
|
|
50
|
+
"@walkeros/collector": {
|
|
51
|
+
"optional": true
|
|
52
|
+
},
|
|
53
|
+
"@walkeros/web-source-browser": {
|
|
54
|
+
"optional": true
|
|
55
|
+
}
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
|
-
"@
|
|
58
|
+
"@changesets/cli": "^2.29.7",
|
|
59
|
+
"@storybook/addon-docs": "^10.0.4",
|
|
60
|
+
"@storybook/react-vite": "^10.0.4",
|
|
59
61
|
"@testing-library/jest-dom": "^6.6.3",
|
|
60
|
-
"@
|
|
61
|
-
"@
|
|
62
|
-
"@
|
|
63
|
-
"@
|
|
64
|
-
"
|
|
65
|
-
"
|
|
62
|
+
"@testing-library/react": "^16.1.0",
|
|
63
|
+
"@testing-library/user-event": "^14.5.2",
|
|
64
|
+
"@types/react": "^19.0.2",
|
|
65
|
+
"@types/react-dom": "^19.0.2",
|
|
66
|
+
"@vitejs/plugin-react": "^5.1.0",
|
|
67
|
+
"@walkeros/collector": "^0.3.0",
|
|
68
|
+
"@walkeros/config": "^0.1.3",
|
|
69
|
+
"@walkeros/core": "^0.3.0",
|
|
70
|
+
"@walkeros/web-destination-gtag": "^0.3.0",
|
|
71
|
+
"@walkeros/web-source-browser": "^0.3.0",
|
|
72
|
+
"eslint-plugin-storybook": "^10.0.4",
|
|
73
|
+
"husky": "^9.1.7",
|
|
74
|
+
"identity-obj-proxy": "^3.0.0",
|
|
75
|
+
"lint-staged": "^16.2.6",
|
|
76
|
+
"prettier": "^3.6.2",
|
|
77
|
+
"rehype-external-links": "^3.0.0",
|
|
78
|
+
"rehype-slug": "^6.0.0",
|
|
79
|
+
"sass": "^1.93.2",
|
|
80
|
+
"storybook": "^10.0.4",
|
|
81
|
+
"vite": "^7.1.12"
|
|
82
|
+
},
|
|
83
|
+
"repository": {
|
|
84
|
+
"url": "git+https://github.com/elbwalker/walkerOS.git",
|
|
85
|
+
"directory": "apps/explorer"
|
|
86
|
+
},
|
|
87
|
+
"author": "elbwalker <hello@elbwalker.com>",
|
|
88
|
+
"homepage": "https://github.com/elbwalker/walkerOS#readme",
|
|
89
|
+
"bugs": {
|
|
90
|
+
"url": "https://github.com/elbwalker/walkerOS/issues"
|
|
66
91
|
},
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
92
|
+
"keywords": [
|
|
93
|
+
"walker",
|
|
94
|
+
"walkerOS",
|
|
95
|
+
"react",
|
|
96
|
+
"components",
|
|
97
|
+
"documentation",
|
|
98
|
+
"interactive",
|
|
99
|
+
"playground"
|
|
100
|
+
],
|
|
101
|
+
"funding": [
|
|
102
|
+
{
|
|
103
|
+
"type": "GitHub Sponsors",
|
|
104
|
+
"url": "https://github.com/sponsors/elbwalker"
|
|
105
|
+
}
|
|
106
|
+
],
|
|
107
|
+
"lint-staged": {
|
|
108
|
+
"*.{js,ts,tsx,json,css,md}": [
|
|
109
|
+
"prettier --write"
|
|
110
|
+
]
|
|
70
111
|
}
|
|
71
112
|
}
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
-
<title>Destination Component Demo</title>
|
|
7
|
-
<style>
|
|
8
|
-
body {
|
|
9
|
-
font-family: Arial, sans-serif;
|
|
10
|
-
margin: 0;
|
|
11
|
-
padding: 20px;
|
|
12
|
-
background: #f5f5f5;
|
|
13
|
-
}
|
|
14
|
-
.container {
|
|
15
|
-
max-width: 1600px;
|
|
16
|
-
margin: 0 auto;
|
|
17
|
-
}
|
|
18
|
-
h1 {
|
|
19
|
-
color: #333;
|
|
20
|
-
margin-bottom: 20px;
|
|
21
|
-
text-align: center;
|
|
22
|
-
}
|
|
23
|
-
.theme-toggle {
|
|
24
|
-
position: absolute;
|
|
25
|
-
top: 20px;
|
|
26
|
-
right: 20px;
|
|
27
|
-
background: none;
|
|
28
|
-
border: 2px solid #ddd;
|
|
29
|
-
border-radius: 50%;
|
|
30
|
-
width: 40px;
|
|
31
|
-
height: 40px;
|
|
32
|
-
cursor: pointer;
|
|
33
|
-
font-size: 18px;
|
|
34
|
-
display: flex;
|
|
35
|
-
align-items: center;
|
|
36
|
-
justify-content: center;
|
|
37
|
-
transition: all 0.2s ease;
|
|
38
|
-
}
|
|
39
|
-
.theme-toggle:hover {
|
|
40
|
-
border-color: #007bff;
|
|
41
|
-
background: rgba(0, 123, 255, 0.1);
|
|
42
|
-
}
|
|
43
|
-
.destination-demo {
|
|
44
|
-
height: 600px;
|
|
45
|
-
min-height: 500px;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
/* Ensure the explorer container uses full height */
|
|
49
|
-
#destination-container {
|
|
50
|
-
height: 100%;
|
|
51
|
-
min-height: 500px;
|
|
52
|
-
}
|
|
53
|
-
</style>
|
|
54
|
-
</head>
|
|
55
|
-
<body>
|
|
56
|
-
<button class="theme-toggle" onclick="toggleTheme()" title="Toggle theme">
|
|
57
|
-
<span id="theme-icon">🌙</span>
|
|
58
|
-
</button>
|
|
59
|
-
|
|
60
|
-
<div class="container">
|
|
61
|
-
<h1>Destination Component Demo</h1>
|
|
62
|
-
<p style="text-align: center; margin-bottom: 30px">
|
|
63
|
-
Edit the Event and Mapping to see the processed result from the
|
|
64
|
-
destination.
|
|
65
|
-
</p>
|
|
66
|
-
|
|
67
|
-
<div class="destination-demo">
|
|
68
|
-
<div id="destination-container"></div>
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
|
|
72
|
-
<script src="../explorer.js"></script>
|
|
73
|
-
<script>
|
|
74
|
-
// Theme toggle functionality
|
|
75
|
-
window.toggleTheme = () => {
|
|
76
|
-
const html = document.documentElement;
|
|
77
|
-
const currentTheme = html.getAttribute('data-theme');
|
|
78
|
-
const newTheme = currentTheme === 'dark' ? 'light' : 'dark';
|
|
79
|
-
|
|
80
|
-
html.setAttribute('data-theme', newTheme);
|
|
81
|
-
|
|
82
|
-
// Update icon
|
|
83
|
-
const icon = document.getElementById('theme-icon');
|
|
84
|
-
icon.textContent = newTheme === 'dark' ? '☀️' : '🌙';
|
|
85
|
-
|
|
86
|
-
// Save preference
|
|
87
|
-
localStorage.setItem('theme', newTheme);
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
document.addEventListener('DOMContentLoaded', () => {
|
|
91
|
-
// Create the destination component with PiwikPro order complete example
|
|
92
|
-
const destinationComponent = WalkerExplorer.createDestination(
|
|
93
|
-
'#destination-container',
|
|
94
|
-
{
|
|
95
|
-
height: '100%',
|
|
96
|
-
showHeader: true,
|
|
97
|
-
initialEvent: `{
|
|
98
|
-
"event": "order complete",
|
|
99
|
-
"data": {
|
|
100
|
-
"id": "0rd3r1d",
|
|
101
|
-
"currency": "EUR",
|
|
102
|
-
"shipping": 5.22,
|
|
103
|
-
"taxes": 73.76,
|
|
104
|
-
"total": 555
|
|
105
|
-
},
|
|
106
|
-
"context": {
|
|
107
|
-
"shopping": ["complete", 0]
|
|
108
|
-
},
|
|
109
|
-
"globals": {
|
|
110
|
-
"pagegroup": "shop"
|
|
111
|
-
},
|
|
112
|
-
"nested": [
|
|
113
|
-
{
|
|
114
|
-
"type": "product",
|
|
115
|
-
"data": {
|
|
116
|
-
"id": "ers",
|
|
117
|
-
"name": "Everyday Ruck Snack",
|
|
118
|
-
"color": "black",
|
|
119
|
-
"size": "l",
|
|
120
|
-
"price": 420
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
]
|
|
124
|
-
}`,
|
|
125
|
-
initialMapping: `{
|
|
126
|
-
"order": {
|
|
127
|
-
"complete": {
|
|
128
|
-
"data": {
|
|
129
|
-
"event_name": "purchase",
|
|
130
|
-
"product_id": "data.id",
|
|
131
|
-
"product_name": "data.name",
|
|
132
|
-
"product_price": "data.price",
|
|
133
|
-
"product_category": "data.category"
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
}`,
|
|
138
|
-
},
|
|
139
|
-
);
|
|
140
|
-
});
|
|
141
|
-
</script>
|
|
142
|
-
</body>
|
|
143
|
-
</html>
|
package/dist/examples/index.html
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
-
<title>WalkerOS Explorer - Demo Index</title>
|
|
7
|
-
<style>
|
|
8
|
-
body {
|
|
9
|
-
font-family: Arial, sans-serif;
|
|
10
|
-
max-width: 800px;
|
|
11
|
-
margin: 0 auto;
|
|
12
|
-
padding: 40px 20px;
|
|
13
|
-
background: #f5f5f5;
|
|
14
|
-
}
|
|
15
|
-
.container {
|
|
16
|
-
background: white;
|
|
17
|
-
padding: 40px;
|
|
18
|
-
border-radius: 12px;
|
|
19
|
-
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
|
|
20
|
-
}
|
|
21
|
-
h1 {
|
|
22
|
-
color: #333;
|
|
23
|
-
margin-bottom: 10px;
|
|
24
|
-
text-align: center;
|
|
25
|
-
}
|
|
26
|
-
.subtitle {
|
|
27
|
-
color: #666;
|
|
28
|
-
text-align: center;
|
|
29
|
-
margin-bottom: 40px;
|
|
30
|
-
font-size: 18px;
|
|
31
|
-
}
|
|
32
|
-
.demo-grid {
|
|
33
|
-
display: grid;
|
|
34
|
-
grid-template-columns: 1fr 1fr;
|
|
35
|
-
gap: 20px;
|
|
36
|
-
margin-bottom: 40px;
|
|
37
|
-
}
|
|
38
|
-
.demo-card {
|
|
39
|
-
border: 2px solid #e1e5e9;
|
|
40
|
-
border-radius: 8px;
|
|
41
|
-
padding: 24px;
|
|
42
|
-
text-decoration: none;
|
|
43
|
-
color: inherit;
|
|
44
|
-
transition: all 0.2s ease;
|
|
45
|
-
background: white;
|
|
46
|
-
}
|
|
47
|
-
.demo-card:hover {
|
|
48
|
-
border-color: #007bff;
|
|
49
|
-
box-shadow: 0 4px 12px rgba(0, 123, 255, 0.15);
|
|
50
|
-
transform: translateY(-2px);
|
|
51
|
-
}
|
|
52
|
-
.demo-card h3 {
|
|
53
|
-
margin: 0 0 12px 0;
|
|
54
|
-
color: #007bff;
|
|
55
|
-
font-size: 20px;
|
|
56
|
-
}
|
|
57
|
-
.demo-card p {
|
|
58
|
-
margin: 0;
|
|
59
|
-
color: #666;
|
|
60
|
-
line-height: 1.5;
|
|
61
|
-
}
|
|
62
|
-
.demo-card .emoji {
|
|
63
|
-
font-size: 24px;
|
|
64
|
-
margin-right: 8px;
|
|
65
|
-
}
|
|
66
|
-
.footer {
|
|
67
|
-
text-align: center;
|
|
68
|
-
color: #666;
|
|
69
|
-
font-size: 14px;
|
|
70
|
-
padding-top: 20px;
|
|
71
|
-
border-top: 1px solid #e1e5e9;
|
|
72
|
-
}
|
|
73
|
-
@media (max-width: 768px) {
|
|
74
|
-
.demo-grid {
|
|
75
|
-
grid-template-columns: 1fr;
|
|
76
|
-
}
|
|
77
|
-
body {
|
|
78
|
-
padding: 20px 10px;
|
|
79
|
-
}
|
|
80
|
-
.container {
|
|
81
|
-
padding: 20px;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
</style>
|
|
85
|
-
</head>
|
|
86
|
-
<body>
|
|
87
|
-
<div class="container">
|
|
88
|
-
<h1>🚀 WalkerOS Explorer</h1>
|
|
89
|
-
<p class="subtitle">Interactive components for walkerOS development</p>
|
|
90
|
-
|
|
91
|
-
<div class="demo-grid">
|
|
92
|
-
<a href="livecode-js.html" class="demo-card">
|
|
93
|
-
<h3><span class="emoji">⚡</span>LiveCodeJS</h3>
|
|
94
|
-
<p>
|
|
95
|
-
JavaScript evaluation with context injection. Perfect for testing
|
|
96
|
-
walkerOS functions and data processing with live code editing.
|
|
97
|
-
</p>
|
|
98
|
-
</a>
|
|
99
|
-
|
|
100
|
-
<a href="destination.html" class="demo-card">
|
|
101
|
-
<h3><span class="emoji">🎯</span>Destination</h3>
|
|
102
|
-
<p>
|
|
103
|
-
Three-column layout for Event, Mapping, and Result. Visualize how
|
|
104
|
-
event data transforms through mapping configurations.
|
|
105
|
-
</p>
|
|
106
|
-
</a>
|
|
107
|
-
</div>
|
|
108
|
-
</div>
|
|
109
|
-
</body>
|
|
110
|
-
</html>
|