json-renderers 1.18.4 → 1.18.7
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 +2 -3
- package/docs/dist/min.js +1383 -934
- package/docs/dist/v18/min.js +1383 -934
- package/docs/index.html +271 -845
- package/docs/indexV1.html +1091 -0
- package/docs/samples/datalist/cdn.html +505 -0
- package/docs/samples/datalist/index.html +311 -0
- package/docs/samples/datalist/windowks.html +350 -0
- package/docs/samples/index.html +326 -0
- package/docs/samples/select/cdn.html +520 -0
- package/docs/samples/select/index.html +311 -0
- package/docs/samples/select/windowks.html +358 -0
- package/docs/{table → samples/table}/cdn.html +7 -6
- package/docs/samples/table/index.html +314 -0
- package/docs/{table → samples/table}/windowKs.html +11 -6
- package/package.json +5 -5
- package/src/index.js +1 -1
- package/docs/table/index.html +0 -607
- package/docs/table/windowKsV1.html +0 -647
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<title>Samples & Component Guides | json-renderers</title>
|
|
8
|
+
<meta name="description"
|
|
9
|
+
content="Explore documentation, live interactive samples, CDN import patterns, and window.ks global runtime guides for Table, Select, and Datalist components." />
|
|
10
|
+
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
11
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
12
|
+
<link
|
|
13
|
+
href="https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500;600&family=Inter:wght@300;400;500;600;700;800&display=swap"
|
|
14
|
+
rel="stylesheet" />
|
|
15
|
+
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" />
|
|
16
|
+
<script src="https://cdn.tailwindcss.com"></script>
|
|
17
|
+
<script>
|
|
18
|
+
tailwind.config = {
|
|
19
|
+
theme: {
|
|
20
|
+
extend: {
|
|
21
|
+
colors: {
|
|
22
|
+
brand: {
|
|
23
|
+
50: '#f0fdf4',
|
|
24
|
+
100: '#dcfce7',
|
|
25
|
+
500: '#10b981',
|
|
26
|
+
600: '#059669',
|
|
27
|
+
700: '#047857'
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
fontFamily: {
|
|
31
|
+
sans: ['Inter', 'sans-serif'],
|
|
32
|
+
mono: ['Fira Code', 'monospace']
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
</script>
|
|
38
|
+
<style>
|
|
39
|
+
body {
|
|
40
|
+
font-family: 'Inter', sans-serif;
|
|
41
|
+
background-color: #ffffff;
|
|
42
|
+
color: #1e293b;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
pre,
|
|
46
|
+
code {
|
|
47
|
+
font-family: 'Fira Code', monospace;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.card-hover {
|
|
51
|
+
transition: all 0.2s ease-in-out;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.card-hover:hover {
|
|
55
|
+
transform: translateY(-3px);
|
|
56
|
+
box-shadow: 0 12px 24px -10px rgba(0, 0, 0, 0.08);
|
|
57
|
+
}
|
|
58
|
+
</style>
|
|
59
|
+
</head>
|
|
60
|
+
|
|
61
|
+
<body class="bg-white text-slate-800 min-h-screen flex flex-col antialiased">
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
<!-- Main Content Container -->
|
|
65
|
+
<main class="flex-1 max-w-7xl w-full mx-auto p-4 sm:p-6 lg:p-8 space-y-10">
|
|
66
|
+
|
|
67
|
+
<!-- Breadcrumb (Matching SubDoc design) -->
|
|
68
|
+
<div class="flex items-center gap-2 text-xs text-slate-500 font-mono">
|
|
69
|
+
<a href="../index.html" class="hover:text-slate-900 transition flex items-center gap-1 font-medium">
|
|
70
|
+
<span>🏠</span> Home
|
|
71
|
+
</a>
|
|
72
|
+
<span>/</span>
|
|
73
|
+
<span class="text-slate-400">docs</span>
|
|
74
|
+
<span>/</span>
|
|
75
|
+
<span class="text-indigo-600 font-semibold">samples</span>
|
|
76
|
+
</div>
|
|
77
|
+
|
|
78
|
+
<!-- Header Section -->
|
|
79
|
+
<div class="space-y-2">
|
|
80
|
+
<div
|
|
81
|
+
class="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-indigo-50 border border-indigo-200 text-xs font-mono font-semibold text-indigo-800">
|
|
82
|
+
<span class="w-2 h-2 rounded-full bg-indigo-500 animate-pulse"></span>
|
|
83
|
+
Component Suite • Interactive Samples Hub
|
|
84
|
+
</div>
|
|
85
|
+
<h1 class="text-3xl sm:text-4xl font-extrabold text-slate-900 tracking-tight leading-tight">
|
|
86
|
+
Explore the 3 Core JSON Renderers
|
|
87
|
+
</h1>
|
|
88
|
+
<p class="text-slate-600 text-sm sm:text-base max-w-3xl leading-relaxed">
|
|
89
|
+
Fast, beginner-friendly component guides structured around the KeshavSoft declarative DOM architecture. Each
|
|
90
|
+
component is documented with its complete HTML transformation story, a direct CDN ES module import guide, and a
|
|
91
|
+
global <code
|
|
92
|
+
class="text-emerald-700 font-mono bg-emerald-50 px-1.5 py-0.5 rounded border border-emerald-200">window.ks</code>
|
|
93
|
+
runtime walkthrough.
|
|
94
|
+
</p>
|
|
95
|
+
</div>
|
|
96
|
+
|
|
97
|
+
<!-- 3 Tracks Showcase Grid (Styled exactly like the subDoc image, on white background) -->
|
|
98
|
+
<section class="grid grid-cols-1 lg:grid-cols-3 gap-8">
|
|
99
|
+
|
|
100
|
+
<!-- Track 1: Table Renderer Card -->
|
|
101
|
+
<div
|
|
102
|
+
class="bg-white p-6 sm:p-8 rounded-3xl border border-emerald-300 flex flex-col justify-between relative overflow-hidden group hover:border-emerald-500 transition shadow-sm hover:shadow-md">
|
|
103
|
+
<div
|
|
104
|
+
class="absolute -right-12 -top-12 w-48 h-48 bg-emerald-50 rounded-full blur-3xl pointer-events-none group-hover:bg-emerald-100/60 transition">
|
|
105
|
+
</div>
|
|
106
|
+
<div class="space-y-4 relative z-10">
|
|
107
|
+
<div class="flex items-center justify-between">
|
|
108
|
+
<span
|
|
109
|
+
class="px-2.5 py-1 rounded-full text-xs font-mono font-semibold bg-emerald-50 text-emerald-800 border border-emerald-200 flex items-center gap-1.5">
|
|
110
|
+
<span class="w-1.5 h-1.5 rounded-full bg-emerald-500"></span> Tabular Grid • Multi-Column
|
|
111
|
+
</span>
|
|
112
|
+
<span class="text-3xl">📊</span>
|
|
113
|
+
</div>
|
|
114
|
+
|
|
115
|
+
<h2 class="text-2xl font-bold text-slate-900 group-hover:text-emerald-700 transition">Table Renderer</h2>
|
|
116
|
+
<p class="text-slate-600 text-sm leading-relaxed">
|
|
117
|
+
Fast, structured tabular grid generation from JSON row arrays. Automatically creates table headers, rows,
|
|
118
|
+
striped styling, and hover feedback.
|
|
119
|
+
</p>
|
|
120
|
+
|
|
121
|
+
<div class="space-y-2 pt-2">
|
|
122
|
+
<div class="text-xs font-semibold text-slate-500 uppercase tracking-wider font-mono">What you will learn:
|
|
123
|
+
</div>
|
|
124
|
+
<ul class="text-xs text-slate-600 space-y-2.5">
|
|
125
|
+
<li class="flex items-start gap-2">
|
|
126
|
+
<span class="text-emerald-600 font-bold font-mono">1.</span>
|
|
127
|
+
<span><strong>The Pipeline:</strong> How <code
|
|
128
|
+
class="text-indigo-700 font-mono bg-indigo-50 px-1 rounded">json-renderers-build</code> compiles
|
|
129
|
+
column/row JSON into tags.</span>
|
|
130
|
+
</li>
|
|
131
|
+
<li class="flex items-start gap-2">
|
|
132
|
+
<span class="text-emerald-600 font-bold font-mono">2.</span>
|
|
133
|
+
<span><strong>CDN Integration:</strong> Direct ES module import from jsDelivr with zero build
|
|
134
|
+
step.</span>
|
|
135
|
+
</li>
|
|
136
|
+
<li class="flex items-start gap-2">
|
|
137
|
+
<span class="text-emerald-600 font-bold font-mono">3.</span>
|
|
138
|
+
<span><strong>window.ks Runtime:</strong> Standard global runtime API for multi-page
|
|
139
|
+
applications.</span>
|
|
140
|
+
</li>
|
|
141
|
+
<li class="flex items-start gap-2">
|
|
142
|
+
<span class="text-emerald-600 font-bold font-mono">4.</span>
|
|
143
|
+
<span><strong>Interactive Playground:</strong> Live DOM mounting sandbox with dynamic row
|
|
144
|
+
inspection.</span>
|
|
145
|
+
</li>
|
|
146
|
+
</ul>
|
|
147
|
+
</div>
|
|
148
|
+
</div>
|
|
149
|
+
|
|
150
|
+
<div class="pt-6 space-y-2 relative z-10">
|
|
151
|
+
<a href="table/index.html"
|
|
152
|
+
class="w-full py-3 px-4 rounded-xl font-semibold text-sm bg-gradient-to-r from-emerald-600 to-teal-600 hover:from-emerald-700 hover:to-teal-700 text-white flex items-center justify-center gap-2 shadow-sm transition">
|
|
153
|
+
<span>Read Table Guide →</span>
|
|
154
|
+
</a>
|
|
155
|
+
<div class="grid grid-cols-2 gap-2 pt-1 text-center">
|
|
156
|
+
<a href="table/cdn.html"
|
|
157
|
+
class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-emerald-300 hover:bg-emerald-50/50 text-slate-700 hover:text-emerald-800 text-xs font-medium transition">
|
|
158
|
+
⚡ Using CDN
|
|
159
|
+
</a>
|
|
160
|
+
<a href="table/windowKs.html"
|
|
161
|
+
class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-emerald-300 hover:bg-emerald-50/50 text-slate-700 hover:text-emerald-800 text-xs font-medium transition">
|
|
162
|
+
🌐 window.ks
|
|
163
|
+
</a>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
<!-- Track 2: Select Renderer Card -->
|
|
169
|
+
<div
|
|
170
|
+
class="bg-white p-6 sm:p-8 rounded-3xl border border-blue-300 flex flex-col justify-between relative overflow-hidden group hover:border-blue-500 transition shadow-sm hover:shadow-md">
|
|
171
|
+
<div
|
|
172
|
+
class="absolute -right-12 -top-12 w-48 h-48 bg-blue-50 rounded-full blur-3xl pointer-events-none group-hover:bg-blue-100/60 transition">
|
|
173
|
+
</div>
|
|
174
|
+
<div class="space-y-4 relative z-10">
|
|
175
|
+
<div class="flex items-center justify-between">
|
|
176
|
+
<span
|
|
177
|
+
class="px-2.5 py-1 rounded-full text-xs font-mono font-semibold bg-blue-50 text-blue-800 border border-blue-200 flex items-center gap-1.5">
|
|
178
|
+
<span class="w-1.5 h-1.5 rounded-full bg-blue-500"></span> Form Input • Dropdown Menu
|
|
179
|
+
</span>
|
|
180
|
+
<span class="text-3xl">▣</span>
|
|
181
|
+
</div>
|
|
182
|
+
|
|
183
|
+
<h2 class="text-2xl font-bold text-slate-900 group-hover:text-blue-700 transition">Select Renderer</h2>
|
|
184
|
+
<p class="text-slate-600 text-sm leading-relaxed">
|
|
185
|
+
Constructs accessible native HTML <code class="text-blue-700 font-mono font-semibold"><select></code>
|
|
186
|
+
dropdowns from string arrays or value/label objects with active selection management.
|
|
187
|
+
</p>
|
|
188
|
+
|
|
189
|
+
<div class="space-y-2 pt-2">
|
|
190
|
+
<div class="text-xs font-semibold text-slate-500 uppercase tracking-wider font-mono">What you will learn:
|
|
191
|
+
</div>
|
|
192
|
+
<ul class="text-xs text-slate-600 space-y-2.5">
|
|
193
|
+
<li class="flex items-start gap-2">
|
|
194
|
+
<span class="text-blue-600 font-bold font-mono">1.</span>
|
|
195
|
+
<span><strong>The Pipeline:</strong> Transforming options arrays into declarative DOM
|
|
196
|
+
specifications.</span>
|
|
197
|
+
</li>
|
|
198
|
+
<li class="flex items-start gap-2">
|
|
199
|
+
<span class="text-blue-600 font-bold font-mono">2.</span>
|
|
200
|
+
<span><strong>CDN Integration:</strong> Clean ES module import with option addition playground.</span>
|
|
201
|
+
</li>
|
|
202
|
+
<li class="flex items-start gap-2">
|
|
203
|
+
<span class="text-blue-600 font-bold font-mono">3.</span>
|
|
204
|
+
<span><strong>window.ks Runtime:</strong> Enterprise script integration for corporate admin
|
|
205
|
+
portals.</span>
|
|
206
|
+
</li>
|
|
207
|
+
<li class="flex items-start gap-2">
|
|
208
|
+
<span class="text-blue-600 font-bold font-mono">4.</span>
|
|
209
|
+
<span><strong>Event Handling:</strong> Live change listener with instantaneous selection
|
|
210
|
+
telemetry.</span>
|
|
211
|
+
</li>
|
|
212
|
+
</ul>
|
|
213
|
+
</div>
|
|
214
|
+
</div>
|
|
215
|
+
|
|
216
|
+
<div class="pt-6 space-y-2 relative z-10">
|
|
217
|
+
<a href="select/index.html"
|
|
218
|
+
class="w-full py-3 px-4 rounded-xl font-semibold text-sm bg-gradient-to-r from-blue-600 to-indigo-600 hover:from-blue-700 hover:to-indigo-700 text-white flex items-center justify-center gap-2 shadow-sm transition">
|
|
219
|
+
<span>Read Select Guide →</span>
|
|
220
|
+
</a>
|
|
221
|
+
<div class="grid grid-cols-2 gap-2 pt-1 text-center">
|
|
222
|
+
<a href="select/cdn.html"
|
|
223
|
+
class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-blue-300 hover:bg-blue-50/50 text-slate-700 hover:text-blue-800 text-xs font-medium transition">
|
|
224
|
+
⚡ Using CDN
|
|
225
|
+
</a>
|
|
226
|
+
<a href="select/windowks.html"
|
|
227
|
+
class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-blue-300 hover:bg-blue-50/50 text-slate-700 hover:text-blue-800 text-xs font-medium transition">
|
|
228
|
+
🌐 window.ks
|
|
229
|
+
</a>
|
|
230
|
+
</div>
|
|
231
|
+
</div>
|
|
232
|
+
</div>
|
|
233
|
+
|
|
234
|
+
<!-- Track 3: Datalist Renderer Card -->
|
|
235
|
+
<div
|
|
236
|
+
class="bg-white p-6 sm:p-8 rounded-3xl border border-purple-300 flex flex-col justify-between relative overflow-hidden group hover:border-purple-500 transition shadow-sm hover:shadow-md">
|
|
237
|
+
<div
|
|
238
|
+
class="absolute -right-12 -top-12 w-48 h-48 bg-purple-50 rounded-full blur-3xl pointer-events-none group-hover:bg-purple-100/60 transition">
|
|
239
|
+
</div>
|
|
240
|
+
<div class="space-y-4 relative z-10">
|
|
241
|
+
<div class="flex items-center justify-between">
|
|
242
|
+
<span
|
|
243
|
+
class="px-2.5 py-1 rounded-full text-xs font-mono font-semibold bg-purple-50 text-purple-800 border border-purple-200 flex items-center gap-1.5">
|
|
244
|
+
<span class="w-1.5 h-1.5 rounded-full bg-purple-500"></span> Native Autocomplete • Input List
|
|
245
|
+
</span>
|
|
246
|
+
<span class="text-3xl">🔍</span>
|
|
247
|
+
</div>
|
|
248
|
+
|
|
249
|
+
<h2 class="text-2xl font-bold text-slate-900 group-hover:text-purple-700 transition">Datalist Renderer</h2>
|
|
250
|
+
<p class="text-slate-600 text-sm leading-relaxed">
|
|
251
|
+
Binds native HTML5 <code class="text-purple-700 font-mono font-semibold"><datalist></code> suggestion
|
|
252
|
+
popovers to text inputs with instant autocomplete without heavy JavaScript plugins.
|
|
253
|
+
</p>
|
|
254
|
+
|
|
255
|
+
<div class="space-y-2 pt-2">
|
|
256
|
+
<div class="text-xs font-semibold text-slate-500 uppercase tracking-wider font-mono">What you will learn:
|
|
257
|
+
</div>
|
|
258
|
+
<ul class="text-xs text-slate-600 space-y-2.5">
|
|
259
|
+
<li class="flex items-start gap-2">
|
|
260
|
+
<span class="text-purple-600 font-bold font-mono">1.</span>
|
|
261
|
+
<span><strong>The Pipeline:</strong> Connecting <code
|
|
262
|
+
class="text-purple-700 font-mono"><input list></code> to <code
|
|
263
|
+
class="text-purple-700 font-mono"><datalist></code> containers.</span>
|
|
264
|
+
</li>
|
|
265
|
+
<li class="flex items-start gap-2">
|
|
266
|
+
<span class="text-purple-600 font-bold font-mono">2.</span>
|
|
267
|
+
<span><strong>CDN Integration:</strong> Rapid search suggestion generator mounted via jsDelivr
|
|
268
|
+
CDN.</span>
|
|
269
|
+
</li>
|
|
270
|
+
<li class="flex items-start gap-2">
|
|
271
|
+
<span class="text-purple-600 font-bold font-mono">3.</span>
|
|
272
|
+
<span><strong>window.ks Runtime:</strong> Global browser mounting for native search inputs.</span>
|
|
273
|
+
</li>
|
|
274
|
+
<li class="flex items-start gap-2">
|
|
275
|
+
<span class="text-purple-600 font-bold font-mono">4.</span>
|
|
276
|
+
<span><strong>Keystroke Tracking:</strong> Live suggestion matching and user search feedback.</span>
|
|
277
|
+
</li>
|
|
278
|
+
</ul>
|
|
279
|
+
</div>
|
|
280
|
+
</div>
|
|
281
|
+
|
|
282
|
+
<div class="pt-6 space-y-2 relative z-10">
|
|
283
|
+
<a href="datalist/index.html"
|
|
284
|
+
class="w-full py-3 px-4 rounded-xl font-semibold text-sm bg-gradient-to-r from-purple-600 to-indigo-600 hover:from-purple-700 hover:to-indigo-700 text-white flex items-center justify-center gap-2 shadow-sm transition">
|
|
285
|
+
<span>Read Datalist Guide →</span>
|
|
286
|
+
</a>
|
|
287
|
+
<div class="grid grid-cols-2 gap-2 pt-1 text-center">
|
|
288
|
+
<a href="datalist/cdn.html"
|
|
289
|
+
class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-purple-300 hover:bg-purple-50/50 text-slate-700 hover:text-purple-800 text-xs font-medium transition">
|
|
290
|
+
⚡ Using CDN
|
|
291
|
+
</a>
|
|
292
|
+
<a href="datalist/windowks.html"
|
|
293
|
+
class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-purple-300 hover:bg-purple-50/50 text-slate-700 hover:text-purple-800 text-xs font-medium transition">
|
|
294
|
+
🌐 window.ks
|
|
295
|
+
</a>
|
|
296
|
+
</div>
|
|
297
|
+
</div>
|
|
298
|
+
</div>
|
|
299
|
+
|
|
300
|
+
</section>
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
</main>
|
|
304
|
+
|
|
305
|
+
<!-- Clean Light Footer -->
|
|
306
|
+
<footer class="border-t border-slate-200 bg-slate-50 py-8 mt-12">
|
|
307
|
+
<div
|
|
308
|
+
class="max-w-7xl mx-auto px-4 sm:px-6 flex flex-col sm:flex-row items-center justify-between gap-4 text-xs text-slate-600">
|
|
309
|
+
<div>
|
|
310
|
+
<span class="text-slate-900 font-semibold">json-renderers</span> • Samples Hub for Table, Select, and
|
|
311
|
+
Datalist
|
|
312
|
+
</div>
|
|
313
|
+
<div class="flex items-center gap-4 flex-wrap">
|
|
314
|
+
<a href="../index.html" class="hover:text-indigo-600 transition">Main Docs</a>
|
|
315
|
+
<a href="table/index.html" class="hover:text-emerald-600 transition">Table Docs</a>
|
|
316
|
+
<a href="select/index.html" class="hover:text-blue-600 transition">Select Docs</a>
|
|
317
|
+
<a href="datalist/index.html" class="hover:text-purple-600 transition">Datalist Docs</a>
|
|
318
|
+
<a href="https://github.com/keshavsoft/json-renderers" target="_blank" rel="noopener noreferrer"
|
|
319
|
+
class="hover:underline">GitHub</a>
|
|
320
|
+
</div>
|
|
321
|
+
</div>
|
|
322
|
+
</footer>
|
|
323
|
+
|
|
324
|
+
</body>
|
|
325
|
+
|
|
326
|
+
</html>
|