@nonoun/native-playground 0.2.1 → 0.2.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"editors.d.ts","sourceRoot":"","sources":["../src/editors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM9C,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,IAAI,MAAM,CAAC;IAClB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAcD,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CA2CnE"}
1
+ {"version":3,"file":"editors.d.ts","sourceRoot":"","sources":["../src/editors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM9C,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,IAAI,MAAM,CAAC;IAClB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAcD,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CAgDnE"}
@@ -10,8 +10,10 @@ export interface SrcdocOptions {
10
10
  css: string;
11
11
  /** User's JS from the JS pane */
12
12
  js: string;
13
- /** URL to native-ui.css (CDN or bundled) */
14
- cssUrl: string;
13
+ /** Pre-resolved framework CSS to inline as <style> (preferred) */
14
+ frameworkCss?: string;
15
+ /** URL to native-ui.css — fallback when frameworkCss is not available */
16
+ cssUrl?: string;
15
17
  /** URL to native-ui register script (CDN or bundled) */
16
18
  registerUrl: string;
17
19
  /** Optional OKLCH token overrides as CSS custom properties */
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/iframe/template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAUD,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAoD1D"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/iframe/template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAUD,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAoE1D"}
@@ -170,6 +170,9 @@
170
170
  :where(native-playground) :where(.cm-editor) {
171
171
  height: 100%;
172
172
  font-size: 0.8125rem;
173
+ /* Force dark color-scheme so contenteditable text inherits light-on-dark
174
+ colors even when the parent page uses color-scheme: light dark */
175
+ color-scheme: dark;
173
176
  }
174
177
 
175
178
  :where(native-playground) :where(.cm-scroller) {
@@ -1,2 +1,2 @@
1
- import { i as e, n as t, r as n, t as r } from "./playground-element-DtAP76El.js";
1
+ import { i as e, n as t, r as n, t as r } from "./playground-element-DgFyaxxQ.js";
2
2
  export { r as NPlayground, t as buildSrcdoc, n as createEditor, e as createPlaygroundStore };
@@ -47,7 +47,8 @@ function h(e) {
47
47
  doc: n,
48
48
  extensions: d
49
49
  }),
50
- parent: t
50
+ parent: t,
51
+ root: document
51
52
  });
52
53
  return {
53
54
  view: f,
@@ -74,18 +75,26 @@ function g(e) {
74
75
  return e.replace(/<\/script>/gi, "<\\/script>");
75
76
  }
76
77
  function _(e) {
77
- let { html: t, css: n, js: r, cssUrl: i, registerUrl: a, themeOverrides: o } = e;
78
+ let { html: t, css: n, js: r, frameworkCss: i, cssUrl: a, registerUrl: o, themeOverrides: s } = e;
78
79
  return `<!DOCTYPE html>
79
80
  <html>
80
81
  <head>
81
82
  <meta charset="utf-8">
82
83
  <meta name="viewport" content="width=device-width, initial-scale=1">
83
- <link rel="stylesheet" href="${i}">${o ? `\n <style id="theme-overrides">:root { ${o} }</style>` : ""}
84
+ ${i ? `<style id="framework-css">${i}</style>` : a ? `<link rel="stylesheet" href="${a}">` : ""}${s ? `\n <style id="theme-overrides">:root { ${s} }</style>` : ""}
85
+ <style id="base-styles">
86
+ :where(body) {
87
+ font-family: var(--n-font-family, system-ui, -apple-system, sans-serif);
88
+ line-height: var(--n-text-line-height, 1.5);
89
+ -webkit-font-smoothing: antialiased;
90
+ text-rendering: optimizeLegibility;
91
+ }
92
+ </style>
84
93
  <style id="user-css">${n}</style>
85
94
  </head>
86
95
  <body>
87
96
  ${t}
88
- <script src="${a}" type="module"><\/script>
97
+ <script src="${o}" type="module"><\/script>
89
98
  <script>
90
99
  (function() {
91
100
  const _log = console.log;
@@ -146,17 +155,19 @@ var v = [
146
155
  #i;
147
156
  #a = null;
148
157
  #o = null;
149
- #s = null;
150
- #c = [];
158
+ #s = "";
159
+ #c = "";
151
160
  #l = null;
152
- #u = null;
161
+ #u = [];
162
+ #d = null;
163
+ #f = null;
153
164
  /** Manually trigger a preview update. */
154
165
  run() {
155
- this.#g();
166
+ return this.#y();
156
167
  }
157
168
  /** Reset all code to initial values. */
158
169
  reset() {
159
- this.#_();
170
+ this.#b();
160
171
  }
161
172
  /** Get the current code from all three editors. */
162
173
  getCode() {
@@ -169,7 +180,7 @@ var v = [
169
180
  /** Programmatically set code in one or more editors. */
170
181
  setCode(e) {
171
182
  for (let t of v) e[t] !== void 0 && (this.#e[t].value = e[t], this.#t.get(t)?.setCode(e[t]));
172
- this.#e.autoRun.value && this.#h();
183
+ this.#e.autoRun.value && this.#v();
173
184
  }
174
185
  attributeChangedCallback(e, t, n) {
175
186
  if (t !== n && this.#e) {
@@ -200,9 +211,9 @@ var v = [
200
211
  }
201
212
  }
202
213
  setup() {
203
- if (super.setup(), this.#e = p("", "", ""), this.#y(), this.#i = new e(this, { value: () => this.#e[this.#e.activeTab.value].value }), this.#d(), this.#o = new n(this), this.#u) {
214
+ if (super.setup(), this.#e = p("", "", ""), this.#S(), this.#i = new e(this, { value: () => this.#e[this.#e.activeTab.value].value }), this.#p(), this.#o = new n(this), this.#f) {
204
215
  let e = this.#e.orientation.value === "vertical";
205
- this.#a = new r(this.#u, {
216
+ this.#a = new r(this.#f, {
206
217
  handleSelector: ".pg-resize-handle",
207
218
  axis: e ? "vertical" : "horizontal",
208
219
  min: e ? 100 : 200
@@ -212,42 +223,42 @@ var v = [
212
223
  let e = this.#e.orientation.value;
213
224
  if (this.#a) {
214
225
  let t = e === "vertical";
215
- this.#a.axis = t ? "vertical" : "horizontal", this.#a.min = t ? 100 : 200, this.#u && (this.#u.style.width = "", this.#u.style.height = "");
226
+ this.#a.axis = t ? "vertical" : "horizontal", this.#a.min = t ? 100 : 200, this.#f && (this.#f.style.width = "", this.#f.style.height = "");
216
227
  }
217
228
  }), this.addEffect(() => {
218
229
  let e = this.#e.activeTab.value;
219
- for (let t = 0; t < v.length; t++) this.#c[t].hidden = v[t] !== e;
220
- this.#s && this.#s.setAttribute("value", e);
230
+ for (let t = 0; t < v.length; t++) this.#u[t].hidden = v[t] !== e;
231
+ this.#l && this.#l.setAttribute("value", e);
221
232
  }), this.addEffect(() => {
222
233
  let e = this.#e.consoleOpen.value;
223
- this.#l && (this.#l.hidden = !e);
234
+ this.#d && (this.#d.hidden = !e);
224
235
  }), this.addEffect(() => {
225
236
  let e = this.#e.consoleEntries.value;
226
- this.#v(e);
237
+ this.#x(e);
227
238
  }), this.addEffect(() => {
228
- this.#e.html.value, this.#e.css.value, this.#e.js.value, this.#e.autoRun.value && this.#h();
229
- }), window.addEventListener("message", this.#E), this.deferChildren(() => {
230
- this.#p(), this.#m(), this.#g();
239
+ this.#e.html.value, this.#e.css.value, this.#e.js.value, this.#e.autoRun.value && this.#v();
240
+ }), window.addEventListener("message", this.#k), this.deferChildren(() => {
241
+ this.#h(), this.#g(), this.#y();
231
242
  });
232
243
  }
233
244
  teardown() {
234
- window.removeEventListener("message", this.#E), clearTimeout(this.#r);
245
+ window.removeEventListener("message", this.#k), clearTimeout(this.#r);
235
246
  for (let e of this.#t.values()) e.destroy();
236
- this.#t.clear(), this.#i.destroy(), this.#a?.destroy(), this.#a = null, this.#o?.destroy(), this.#o = null, this.#n = null, this.#l = null, this.#u = null, this.#s = null, this.#c = [], super.teardown();
247
+ this.#t.clear(), this.#i.destroy(), this.#a?.destroy(), this.#a = null, this.#o?.destroy(), this.#o = null, this.#n = null, this.#d = null, this.#f = null, this.#l = null, this.#u = [], super.teardown();
237
248
  }
238
- #d() {
249
+ #p() {
239
250
  let e = document.createElement("n-card-header"), t = document.createElement("n-toolbar");
240
251
  t.setAttribute("variant", "plain"), t.setAttribute("size", "md"), t.setAttribute("fill", "");
241
- let n = this.#f("pg-btn-run", "Run", "▶ Run");
242
- n.addEventListener("native:press", this.#b);
243
- let r = this.#f("", "Reset", "↺ Reset");
244
- r.addEventListener("native:press", this.#x);
245
- let i = this.#f("", "Copy", "Copy");
246
- i.addEventListener("native:press", this.#S);
247
- let a = this.#f("", "Console", "Console");
248
- a.addEventListener("native:press", this.#C);
249
- let o = this.#f("", "Expand", "Expand");
250
- o.addEventListener("native:press", this.#w), t.append(n, r, i, a, o), e.appendChild(t);
252
+ let n = this.#m("pg-btn-run", "Run", "▶ Run");
253
+ n.addEventListener("native:press", this.#C);
254
+ let r = this.#m("", "Reset", "↺ Reset");
255
+ r.addEventListener("native:press", this.#w);
256
+ let i = this.#m("", "Copy", "Copy");
257
+ i.addEventListener("native:press", this.#T);
258
+ let a = this.#m("", "Console", "Console");
259
+ a.addEventListener("native:press", this.#E);
260
+ let o = this.#m("", "Expand", "Expand");
261
+ o.addEventListener("native:press", this.#D), t.append(n, r, i, a, o), e.appendChild(t);
251
262
  let s = document.createElement("div");
252
263
  s.className = "pg-split";
253
264
  let c = document.createElement("div");
@@ -258,25 +269,25 @@ var v = [
258
269
  let t = document.createElement("n-tab");
259
270
  t.setAttribute("value", e), t.textContent = y[e], u.appendChild(t);
260
271
  }
261
- u.addEventListener("native:change", this.#T), this.#s = u, l.appendChild(u), c.appendChild(l);
272
+ u.addEventListener("native:change", this.#O), this.#l = u, l.appendChild(u), c.appendChild(l);
262
273
  for (let e = 0; e < v.length; e++) {
263
274
  let t = document.createElement("div");
264
- t.className = "pg-code-panel", t.setAttribute("role", "tabpanel"), t.hidden = v[e] !== this.#e.activeTab.value, c.appendChild(t), this.#c.push(t);
275
+ t.className = "pg-code-panel", t.setAttribute("role", "tabpanel"), t.hidden = v[e] !== this.#e.activeTab.value, c.appendChild(t), this.#u.push(t);
265
276
  }
266
277
  let d = document.createElement("div");
267
- d.className = "pg-console", d.hidden = !this.#e.consoleOpen.value, c.appendChild(d), this.#l = d;
278
+ d.className = "pg-console", d.hidden = !this.#e.consoleOpen.value, c.appendChild(d), this.#d = d;
268
279
  let f = document.createElement("div");
269
- f.className = "pg-resize-handle", c.appendChild(f), s.appendChild(c), this.#u = c;
280
+ f.className = "pg-resize-handle", c.appendChild(f), s.appendChild(c), this.#f = c;
270
281
  let p = document.createElement("div");
271
282
  p.className = "pg-preview";
272
283
  let m = document.createElement("iframe");
273
284
  m.setAttribute("sandbox", "allow-scripts"), m.setAttribute("title", "Preview"), p.appendChild(m), this.#n = m, s.appendChild(p), this.append(e, s);
274
285
  }
275
- #f(e, t, n) {
286
+ #m(e, t, n) {
276
287
  let r = document.createElement("n-button");
277
288
  return r.className = e, r.title = t, r.setAttribute("variant", "ghost"), r.textContent = n, r;
278
289
  }
279
- #p() {
290
+ #h() {
280
291
  let e = this.querySelectorAll("script[type^=\"playground/\"]"), t = "", n = "", r = "";
281
292
  for (let i of e) {
282
293
  let e = (i.getAttribute("type") ?? "").replace("playground/", ""), a = (i.textContent ?? "").trim();
@@ -295,10 +306,10 @@ var v = [
295
306
  }
296
307
  this.#e.html.value = t, this.#e.css.value = n, this.#e.js.value = r, this.#e.initialHtml = t, this.#e.initialCss = n, this.#e.initialJs = r;
297
308
  }
298
- #m() {
309
+ #g() {
299
310
  let e = this.#e.readonly.value;
300
311
  for (let t = 0; t < v.length; t++) {
301
- let n = v[t], r = this.#c[t], i = this.#e[n], a = h({
312
+ let n = v[t], r = this.#u[t], i = this.#e[n], a = h({
302
313
  parent: r,
303
314
  initialCode: i.value,
304
315
  language: n,
@@ -316,12 +327,33 @@ var v = [
316
327
  this.#t.set(n, a);
317
328
  }
318
329
  }
319
- #h() {
330
+ /**
331
+ * Resolve a CSS URL to inline text. In Vite dev mode, CSS files with @import
332
+ * are served as JS modules (Content-Type: text/javascript) which breaks
333
+ * <link rel="stylesheet"> in srcdoc iframes. Using ?inline dynamic import
334
+ * gets the resolved CSS as a string. Falls back to fetch() for production
335
+ * CDN URLs where ?inline isn't available.
336
+ */
337
+ async #_(e) {
338
+ if (!e) return "";
339
+ if (e === this.#c && this.#s) return this.#s;
340
+ let t = "";
341
+ try {
342
+ t = (await import(
343
+ /* @vite-ignore */
344
+ e + "?inline"
345
+ )).default;
346
+ } catch {
347
+ t = await (await fetch(e)).text();
348
+ }
349
+ return this.#c = e, this.#s = t, t;
350
+ }
351
+ #v() {
320
352
  clearTimeout(this.#r), this.#r = setTimeout(() => {
321
- this.#g();
353
+ this.#y();
322
354
  }, this.#e.debounce.value);
323
355
  }
324
- #g() {
356
+ async #y() {
325
357
  let e = this.#n;
326
358
  if (!e) return;
327
359
  let t = this.getAttribute("css-url") ?? "", n = this.getAttribute("register-url") ?? "", r = this.#e.html.value, i = this.#e.css.value, a = this.#e.js.value;
@@ -329,7 +361,7 @@ var v = [
329
361
  html: r,
330
362
  css: i,
331
363
  js: a,
332
- cssUrl: t,
364
+ frameworkCss: await this.#_(t),
333
365
  registerUrl: n,
334
366
  themeOverrides: this.#e.previewTheme.value || void 0
335
367
  }), this.dispatchEvent(new CustomEvent("playground:run", {
@@ -341,7 +373,7 @@ var v = [
341
373
  }
342
374
  }));
343
375
  }
344
- #_() {
376
+ #b() {
345
377
  let { initialHtml: e, initialCss: t, initialJs: n } = this.#e;
346
378
  this.#e.html.value = e, this.#e.css.value = t, this.#e.js.value = n, this.#t.get("html")?.setCode(e), this.#t.get("css")?.setCode(t), this.#t.get("js")?.setCode(n), this.dispatchEvent(new CustomEvent("playground:reset", {
347
379
  bubbles: !0,
@@ -350,10 +382,10 @@ var v = [
350
382
  css: t,
351
383
  js: n
352
384
  }
353
- })), this.#g();
385
+ })), this.#y();
354
386
  }
355
- #v(e) {
356
- let t = this.#l;
387
+ #x(e) {
388
+ let t = this.#d;
357
389
  if (t) {
358
390
  t.textContent = "";
359
391
  for (let n of e) {
@@ -367,7 +399,7 @@ var v = [
367
399
  t.scrollTop = t.scrollHeight;
368
400
  }
369
401
  }
370
- #y() {
402
+ #S() {
371
403
  let e = this.getAttribute("orientation");
372
404
  (e === "horizontal" || e === "vertical" || e === "auto") && (this.#e.orientation.value = e), this.hasAttribute("auto-run") && (this.#e.autoRun.value = !0);
373
405
  let t = this.getAttribute("debounce");
@@ -377,13 +409,13 @@ var v = [
377
409
  let r = this.getAttribute("preview-theme");
378
410
  r && (this.#e.previewTheme.value = r);
379
411
  }
380
- #b = () => {
381
- this.#g();
412
+ #C = () => {
413
+ this.#y();
382
414
  };
383
- #x = () => {
384
- this.#_();
415
+ #w = () => {
416
+ this.#b();
385
417
  };
386
- #S = async () => {
418
+ #T = async () => {
387
419
  let e = this.#e.activeTab.value, t = this.#e[e].value;
388
420
  await this.#i.copy(), this.dispatchEvent(new CustomEvent("playground:copy", {
389
421
  bubbles: !0,
@@ -393,17 +425,17 @@ var v = [
393
425
  }
394
426
  }));
395
427
  };
396
- #C = () => {
428
+ #E = () => {
397
429
  this.#e.consoleOpen.value = !this.#e.consoleOpen.value;
398
430
  };
399
- #w = () => {
431
+ #D = () => {
400
432
  this.#o?.present();
401
433
  };
402
- #T = (e) => {
434
+ #O = (e) => {
403
435
  let t = e.detail;
404
436
  (t?.value === "html" || t?.value === "css" || t?.value === "js") && (this.#e.activeTab.value = t.value);
405
437
  };
406
- #E = (e) => {
438
+ #k = (e) => {
407
439
  if (e.source !== this.#n?.contentWindow) return;
408
440
  let t = e.data;
409
441
  if (!(!t || typeof t != "object") && t.type === "playground:console") {
@@ -26,7 +26,7 @@ export declare class NPlayground extends NativeElement {
26
26
  #private;
27
27
  static observedAttributes: string[];
28
28
  /** Manually trigger a preview update. */
29
- run(): void;
29
+ run(): Promise<void>;
30
30
  /** Reset all code to initial values. */
31
31
  reset(): void;
32
32
  /** Get the current code from all three editors. */
@@ -1 +1 @@
1
- {"version":3,"file":"playground-element.d.ts","sourceRoot":"","sources":["../src/playground-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAuD,MAAM,mBAAmB,CAAC;AAIvG,OAAO,KAAK,EAAkB,OAAO,EAAE,MAAM,cAAc,CAAC;AAM5D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,WAAY,SAAQ,aAAa;;IAC5C,MAAM,CAAC,kBAAkB,WAUvB;IAkBF,yCAAyC;IACzC,GAAG,IAAI,IAAI;IAIX,wCAAwC;IACxC,KAAK,IAAI,IAAI;IAIb,mDAAmD;IACnD,OAAO,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE;IAQpD,wDAAwD;IACxD,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI;IAYrD,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAqCpF,KAAK,IAAI,IAAI;IA6Fb,QAAQ,IAAI,IAAI;CAwXjB"}
1
+ {"version":3,"file":"playground-element.d.ts","sourceRoot":"","sources":["../src/playground-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAuD,MAAM,mBAAmB,CAAC;AAIvG,OAAO,KAAK,EAAkB,OAAO,EAAE,MAAM,cAAc,CAAC;AAM5D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,WAAY,SAAQ,aAAa;;IAC5C,MAAM,CAAC,kBAAkB,WAUvB;IAsBF,yCAAyC;IACzC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAIpB,wCAAwC;IACxC,KAAK,IAAI,IAAI;IAIb,mDAAmD;IACnD,OAAO,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE;IAQpD,wDAAwD;IACxD,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI;IAYrD,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAqCpF,KAAK,IAAI,IAAI;IA6Fb,QAAQ,IAAI,IAAI;CAwZjB"}
package/dist/register.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as e } from "./playground-element-DtAP76El.js";
1
+ import { t as e } from "./playground-element-DgFyaxxQ.js";
2
2
  import { define as t } from "@nonoun/native-ui";
3
3
  /**
4
4
  * Register native-playground
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nonoun/native-playground",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Embeddable live code sandbox for @nonoun/native-ui",
5
5
  "license": "MIT",
6
6
  "type": "module",