chirami 0.0.3 → 0.0.6

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.
@@ -0,0 +1,2 @@
1
+ import { default as React } from 'react';
2
+ export declare const IconChirami: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { default as React } from 'react';
2
+ export declare const LogoChirami: (props: React.SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
package/dist/chirami.d.ts CHANGED
@@ -1 +1,2 @@
1
+ export * from './index'
1
2
  export {}
package/dist/chirami.js CHANGED
@@ -1,270 +1,108 @@
1
- import ae, { useState as L, useRef as ie, useEffect as D } from "react";
2
- var y = { exports: {} }, g = {};
3
- var W;
4
- function le() {
5
- if (W) return g;
6
- W = 1;
7
- var s = /* @__PURE__ */ Symbol.for("react.transitional.element"), n = /* @__PURE__ */ Symbol.for("react.fragment");
8
- function u(p, r, i) {
9
- var f = null;
10
- if (i !== void 0 && (f = "" + i), r.key !== void 0 && (f = "" + r.key), "key" in r) {
11
- i = {};
12
- for (var m in r)
13
- m !== "key" && (i[m] = r[m]);
14
- } else i = r;
15
- return r = i.ref, {
16
- $$typeof: s,
17
- type: p,
18
- key: f,
19
- ref: r !== void 0 ? r : null,
20
- props: i
21
- };
1
+ import { jsxs as r, jsx as e, Fragment as m } from "react/jsx-runtime";
2
+ import { useState as g, useRef as x, useEffect as p } from "react";
3
+ const f = (i) => /* @__PURE__ */ r(
4
+ "svg",
5
+ {
6
+ xmlns: "http://www.w3.org/2000/svg",
7
+ viewBox: "0 0 2000 2000",
8
+ width: "32",
9
+ height: "32",
10
+ ...i,
11
+ children: [
12
+ /* @__PURE__ */ e("rect", { fill: "#d4d4d4", x: ".5", y: ".5", width: "1785.85", height: "294.57" }),
13
+ /* @__PURE__ */ e("polygon", { fill: "#66e3f3", points: ".5 1743.03 .5 1448.47 1120.74 1448.47 950.67 1743.03 .5 1743.03" }),
14
+ /* @__PURE__ */ e("polygon", { fill: "#ffe267", points: ".5 1210.04 .5 915.47 1428.46 915.47 1258.39 1210.04 .5 1210.04" }),
15
+ /* @__PURE__ */ e("polygon", { fill: "#ff68ca", points: ".5 752.55 .5 457.99 1692.59 457.99 1522.52 752.55 .5 752.55" })
16
+ ]
22
17
  }
23
- return g.Fragment = n, g.jsx = u, g.jsxs = u, g;
24
- }
25
- var x = {};
26
- var z;
27
- function ce() {
28
- return z || (z = 1, process.env.NODE_ENV !== "production" && (function() {
29
- function s(e) {
30
- if (e == null) return null;
31
- if (typeof e == "function")
32
- return e.$$typeof === oe ? null : e.displayName || e.name || null;
33
- if (typeof e == "string") return e;
34
- switch (e) {
35
- case R:
36
- return "Fragment";
37
- case G:
38
- return "Profiler";
39
- case Z:
40
- return "StrictMode";
41
- case K:
42
- return "Suspense";
43
- case ee:
44
- return "SuspenseList";
45
- case re:
46
- return "Activity";
47
- }
48
- if (typeof e == "object")
49
- switch (typeof e.tag == "number" && console.error(
50
- "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
51
- ), e.$$typeof) {
52
- case q:
53
- return "Portal";
54
- case X:
55
- return e.displayName || "Context";
56
- case H:
57
- return (e._context.displayName || "Context") + ".Consumer";
58
- case Q:
59
- var t = e.render;
60
- return e = e.displayName, e || (e = t.displayName || t.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
61
- case te:
62
- return t = e.displayName || null, t !== null ? t : s(e.type) || "Memo";
63
- case T:
64
- t = e._payload, e = e._init;
65
- try {
66
- return s(e(t));
67
- } catch {
68
- }
69
- }
70
- return null;
71
- }
72
- function n(e) {
73
- return "" + e;
74
- }
75
- function u(e) {
76
- try {
77
- n(e);
78
- var t = !1;
79
- } catch {
80
- t = !0;
81
- }
82
- if (t) {
83
- t = console;
84
- var a = t.error, l = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
85
- return a.call(
86
- t,
87
- "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
88
- l
89
- ), n(e);
90
- }
91
- }
92
- function p(e) {
93
- if (e === R) return "<>";
94
- if (typeof e == "object" && e !== null && e.$$typeof === T)
95
- return "<...>";
96
- try {
97
- var t = s(e);
98
- return t ? "<" + t + ">" : "<...>";
99
- } catch {
100
- return "<...>";
101
- }
102
- }
103
- function r() {
104
- var e = j.A;
105
- return e === null ? null : e.getOwner();
106
- }
107
- function i() {
108
- return Error("react-stack-top-frame");
109
- }
110
- function f(e) {
111
- if (N.call(e, "key")) {
112
- var t = Object.getOwnPropertyDescriptor(e, "key").get;
113
- if (t && t.isReactWarning) return !1;
114
- }
115
- return e.key !== void 0;
116
- }
117
- function m(e, t) {
118
- function a() {
119
- $ || ($ = !0, console.error(
120
- "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
121
- t
122
- ));
123
- }
124
- a.isReactWarning = !0, Object.defineProperty(e, "key", {
125
- get: a,
126
- configurable: !0
127
- });
128
- }
129
- function V() {
130
- var e = s(this.type);
131
- return I[e] || (I[e] = !0, console.error(
132
- "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
133
- )), e = this.props.ref, e !== void 0 ? e : null;
134
- }
135
- function J(e, t, a, l, w, k) {
136
- var c = a.ref;
137
- return e = {
138
- $$typeof: P,
139
- type: e,
140
- key: t,
141
- props: a,
142
- _owner: l
143
- }, (c !== void 0 ? c : null) !== null ? Object.defineProperty(e, "ref", {
144
- enumerable: !1,
145
- get: V
146
- }) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
147
- configurable: !1,
148
- enumerable: !1,
149
- writable: !0,
150
- value: 0
151
- }), Object.defineProperty(e, "_debugInfo", {
152
- configurable: !1,
153
- enumerable: !1,
154
- writable: !0,
155
- value: null
156
- }), Object.defineProperty(e, "_debugStack", {
157
- configurable: !1,
158
- enumerable: !1,
159
- writable: !0,
160
- value: w
161
- }), Object.defineProperty(e, "_debugTask", {
162
- configurable: !1,
163
- enumerable: !1,
164
- writable: !0,
165
- value: k
166
- }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
167
- }
168
- function C(e, t, a, l, w, k) {
169
- var c = t.children;
170
- if (c !== void 0)
171
- if (l)
172
- if (ne(c)) {
173
- for (l = 0; l < c.length; l++)
174
- O(c[l]);
175
- Object.freeze && Object.freeze(c);
176
- } else
177
- console.error(
178
- "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
179
- );
180
- else O(c);
181
- if (N.call(t, "key")) {
182
- c = s(e);
183
- var h = Object.keys(t).filter(function(se) {
184
- return se !== "key";
185
- });
186
- l = 0 < h.length ? "{key: someKey, " + h.join(": ..., ") + ": ...}" : "{key: someKey}", F[c + l] || (h = 0 < h.length ? "{" + h.join(": ..., ") + ": ...}" : "{}", console.error(
187
- `A props object containing a "key" prop is being spread into JSX:
188
- let props = %s;
189
- <%s {...props} />
190
- React keys must be passed directly to JSX without using spread:
191
- let props = %s;
192
- <%s key={someKey} {...props} />`,
193
- l,
194
- c,
195
- h,
196
- c
197
- ), F[c + l] = !0);
198
- }
199
- if (c = null, a !== void 0 && (u(a), c = "" + a), f(t) && (u(t.key), c = "" + t.key), "key" in t) {
200
- a = {};
201
- for (var S in t)
202
- S !== "key" && (a[S] = t[S]);
203
- } else a = t;
204
- return c && m(
205
- a,
206
- typeof e == "function" ? e.displayName || e.name || "Unknown" : e
207
- ), J(
208
- e,
209
- c,
210
- a,
211
- r(),
212
- w,
213
- k
214
- );
215
- }
216
- function O(e) {
217
- A(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === T && (e._payload.status === "fulfilled" ? A(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
218
- }
219
- function A(e) {
220
- return typeof e == "object" && e !== null && e.$$typeof === P;
221
- }
222
- var _ = ae, P = /* @__PURE__ */ Symbol.for("react.transitional.element"), q = /* @__PURE__ */ Symbol.for("react.portal"), R = /* @__PURE__ */ Symbol.for("react.fragment"), Z = /* @__PURE__ */ Symbol.for("react.strict_mode"), G = /* @__PURE__ */ Symbol.for("react.profiler"), H = /* @__PURE__ */ Symbol.for("react.consumer"), X = /* @__PURE__ */ Symbol.for("react.context"), Q = /* @__PURE__ */ Symbol.for("react.forward_ref"), K = /* @__PURE__ */ Symbol.for("react.suspense"), ee = /* @__PURE__ */ Symbol.for("react.suspense_list"), te = /* @__PURE__ */ Symbol.for("react.memo"), T = /* @__PURE__ */ Symbol.for("react.lazy"), re = /* @__PURE__ */ Symbol.for("react.activity"), oe = /* @__PURE__ */ Symbol.for("react.client.reference"), j = _.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, N = Object.prototype.hasOwnProperty, ne = Array.isArray, v = console.createTask ? console.createTask : function() {
223
- return null;
224
- };
225
- _ = {
226
- react_stack_bottom_frame: function(e) {
227
- return e();
228
- }
18
+ ), w = (i) => /* @__PURE__ */ r(
19
+ "svg",
20
+ {
21
+ xmlns: "http://www.w3.org/2000/svg",
22
+ viewBox: "0 0 1261.05 263.86",
23
+ width: "160",
24
+ height: "33.4781333",
25
+ fill: "currentColor",
26
+ ...i,
27
+ children: [
28
+ /* @__PURE__ */ e("path", { d: "M171.23,173.27c-28.37,42.73-63.1,67.36-90,67.36-17.61,0-36.2-14.63-36.2-47.73,0-23.1,9.29-54.66,30.82-81.99,40.6-51.58,110.06-85.07,121.8-75.06,5.87,5,0,17.32-6.85,30.79-2.93,5.77-6.36,11.93-8.32,17.71-1.96,5-2.94,9.62-2.94,14.24,0,11.16,6.85,19.63,16.63,24.63,9.78,4.62,16.63.77,19.08-5.77,3.42-8.47,10.27-21.56,18.59-34.64,4.89-7.7,6.85-15.4,6.85-22.33,0-15.01-12.72-30.02-29.35-41.57-8.32-5.39-19.57-8.08-31.79-8.08s-25.92,2.69-38.64,6.54C85.63,37.01-1.92,106.68.03,184.43c.98,31.56,21.03,55.81,44.02,65.44,12.23,5.39,26.9,8.08,43.05,8.08,21.03,0,43.05-4.62,63.1-15.78,17.61-10.39,44.02-32.72,44.02-55.04,0-3.85-.98-8.47-3.42-12.7-4.89-8.85-16.14-6.54-19.57-1.15Z" }),
29
+ /* @__PURE__ */ e("path", { d: "M512.17,105.91c5.87-5.39,10.27-16.94,3.91-27.33-7.83-12.7-25.93-17.71-36.69-8.47-4.89,4.23-7.83,9.62-7.83,15.78,0,4.23,1.47,9.24,4.89,14.24,8.8,13.09,27.39,13.86,35.71,5.77Z" }),
30
+ /* @__PURE__ */ e("path", { d: "M1234.15,63.95c-11.25,0-21.52,10.01-21.52,20.79,0,11.93,13.21,23.48,28.86,23.48,12.23,0,19.57-8.85,19.57-19.25,0-11.16-13.21-25.02-26.9-25.02Z" }),
31
+ /* @__PURE__ */ e("path", { d: "M1236.6,192.9c-15.16,26.17-40.6,51.96-60.17,51.96-5.38,0-7.34-3.46-7.34-9.62s2.45-14.24,6.85-23.09c8.32-15.4,30.82-44.27,40.11-60.82,12.72-19.25,8.8-35.8-.49-43.5-6.36-5.77-12.23-5-19.57,2.69-15.88,17.56-41.93,54.09-56.34,80.99-.8.69-1.59,1.53-2.36,2.54-18.1,23.48-42.07,50.42-57.23,50.42-7.83,0-12.72-6.16-12.72-15.01,0-13.47,12.72-30.41,26.41-46.96,20.06-24.25,30.33-41.96,30.33-55.04s-7.83-23.1-22.01-23.48c-15.65-.38-41.58,12.7-63.59,28.1,0-16.17-10.27-30.02-25.92-30.02s-43.04,14.63-64.08,30.79c.98-3.85,1.47-7.31,1.47-10.39,0-6.16-2.45-12.7-6.85-18.48-4.89-6.93-12.23-7.31-18.59,0-26.46,31.75-57.14,77.4-70.91,103.44-15.4,20.49-34.77,38.59-49.42,38.59-4.89,0-6.85-3.46-6.85-9.24,0-25.79,41.09-67.75,53.81-88.92,12.72-20.02,8.32-36.95,0-44.65-5.87-5.39-14.19-5-20.06,2.69l-9.29,11.93c-4.4-10.01-15.16-16.94-32.77-16.94-24.95,0-65.06,18.09-104.19,62.36-9.02,9.85-15.71,20.31-20.11,30.39-.32.48-.64.99-.92,1.56-15.16,26.94-42.56,50.81-59.68,50.81-6.85,0-10.76-6.54-10.76-16.17,0-5.77,1.47-11.55,3.91-17.32,7.83-19.63,31.31-45.81,52.83-65.05,5.38-5.39,8.32-10.78,8.32-15.4,0-10.01-6.36-17.71-14.19-25.79-5.87-5.77-13.21-3.85-22.01.77-17.12,9.24-28.37,13.86-42.56,16.55,6.36-12.7,10.27-25.02,10.27-33.49s-3.91-12.7-14.19-12.7c-17.12,0-49.4,29.25-49.4,48.88,0,6.93,3.42,13.09,13.21,16.94-25.92,56.2-81.69,101.23-102.72,101.23-3.42,0-6.85-3.08-6.85-8.85,0-13.47,16.63-39.65,31.31-59.28,12.72-16.94,23.97-36.95,23.97-49.65,0-8.47-2.93-14.63-7.83-18.86-6.85-5.77-12.72-5-19.57,2.31-8.85,9.75-40.55,48.2-57.36,81.67-.69.63-1.31,1.37-1.82,2.24-14.67,23.48-40.6,50.81-57.72,50.81-6.85,0-9.29-5-9.29-13.09,0-6.16,1.96-14.24,6.36-22.71,5.38-9.24,17.61-25.41,44.51-63.13,3.91-5.39,5.38-10.78,5.38-16.17,0-15.01-14.19-26.94-28.37-26.94-9.29,0-26.41,4.62-41.09,13.09,4.89-5.39,35.22-41.19,45-53.89,11.74-16.17,17.61-30.41,17.61-40.8,0-5.39-1.47-10.39-3.91-14.63-4.4-7.7-11.74-9.24-19.57-1.54-39.62,40.03-136.47,168.98-156.04,209.4-12.23,25.4-5.38,34.64,2.45,41.96,5.87,5.77,13.21,4.62,17.12-2.31,11.74-23.1,29.35-49.65,45.98-71.21,25.93-33.1,72.39-57.35,76.8-57.35,3.42,0-3.91,9.24-13.21,21.94-18.59,22.71-42.56,56.2-42.56,80.45,0,20.02,14.67,32.72,46.96,32.72,20.75,0,41.7-8.46,57.61-20.66,4.68,12.06,16.51,20.27,36.31,20.27,53.81,0,103.7-50.42,138.92-113.55,11.25-.38,24.46-2.31,38.15-7.31-19.57,18.09-37.18,38.49-48.43,61.2-3.42,8.08-4.89,15.01-4.89,21.17,0,22.33,17.12,38.88,47.94,38.88,20.68,0,45.13-8.31,61.83-21.66,6.4,12.72,20.14,20.88,40.4,20.88s41.58-11.93,55.76-22.71c3.91,14.24,18.1,24.25,42.56,24.25,15.57,0,31.54-5.56,45.06-13.89,2.09,4.04,5.34,7.41,9.23,10.04,8.32,5.77,13.7,3.46,17.12-2.69,19.08-35.41,41.58-70.44,68.97-93.54,29.35-25.4,48.43-33.87,52.34-33.87,4.4,0-9.29,14.63-22.5,31.95-13.21,16.17-29.35,36.95-36.2,50.81-4.89,9.62-8.8,21.94-8.8,28.48,0,10.01,3.42,15.4,10.76,21.17,7.83,6.16,14.67,5,19.57-2.31,20.54-35.8,44.02-72.36,82.18-102.39,28.86-22.71,39.13-26.56,43.05-26.56s-7.83,11.55-18.59,24.25c-11.25,13.86-27.39,34.64-35.22,47.73-5.38,9.62-7.34,18.09-7.34,25.02,0,20.79,18.1,35.03,51.36,35.03,20.03,0,41.97-8.4,58.52-20.53,4.91,12.28,17.99,20.14,40.78,20.14,28.86,0,62.61-16.17,77.29-40.42,6.36-10.01,6.85-19.63,2.45-26.17-4.4-6.93-10.76-7.7-14.67-.77ZM709.29,242.94c-4.89,0-6.85-4.62-6.85-11.55,0-12.32,8.32-32.72,22.99-50.81,24.95-31.56,58.7-55.81,68.48-55.81,4.89,0,5.87,2.69,5.87,7.31,0,10.01-8.8,28.87-27.88,55.04-23.97,32.33-46.47,55.81-62.61,55.81Z" })
32
+ ]
33
+ }
34
+ );
35
+ class y {
36
+ logs = [];
37
+ totalCount = 0;
38
+ listeners = /* @__PURE__ */ new Set();
39
+ originalConsole = {
40
+ log: console.log,
41
+ info: console.info,
42
+ warn: console.warn,
43
+ error: console.error
44
+ };
45
+ isPatched = !1;
46
+ init() {
47
+ this.isPatched || (["log", "info", "warn", "error"].forEach((t) => {
48
+ console[t] = (...s) => {
49
+ this.originalConsole[t].apply(console, s), this.addLog(t, s);
50
+ };
51
+ }), this.totalCount = 0, this.isPatched = !0);
52
+ }
53
+ addLog(t, s) {
54
+ const a = {
55
+ id: Math.random().toString(36).slice(2),
56
+ type: t,
57
+ args: s,
58
+ timestamp: Date.now()
229
59
  };
230
- var $, I = {}, M = _.react_stack_bottom_frame.bind(
231
- _,
232
- i
233
- )(), Y = v(p(i)), F = {};
234
- x.Fragment = R, x.jsx = function(e, t, a) {
235
- var l = 1e4 > j.recentlyCreatedOwnerStacks++;
236
- return C(
237
- e,
238
- t,
239
- a,
240
- !1,
241
- l ? Error("react-stack-top-frame") : M,
242
- l ? v(p(e)) : Y
243
- );
244
- }, x.jsxs = function(e, t, a) {
245
- var l = 1e4 > j.recentlyCreatedOwnerStacks++;
246
- return C(
247
- e,
248
- t,
249
- a,
250
- !0,
251
- l ? Error("react-stack-top-frame") : M,
252
- l ? v(p(e)) : Y
253
- );
60
+ this.logs = [...this.logs.slice(-399), a], this.totalCount = this.totalCount + 1, this.notify();
61
+ }
62
+ subscribe(t) {
63
+ return this.listeners.add(t), t(this.logs), () => {
64
+ this.listeners.delete(t);
254
65
  };
255
- })()), x;
66
+ }
67
+ notify() {
68
+ this.listeners.forEach((t) => t(this.logs));
69
+ }
70
+ getLogs() {
71
+ return this.logs;
72
+ }
73
+ getTotalCount() {
74
+ return this.totalCount;
75
+ }
76
+ clear() {
77
+ this.logs = [], this.notify();
78
+ }
79
+ dispose() {
80
+ this.isPatched && (["log", "info", "warn", "error"].forEach((t) => {
81
+ console[t] = this.originalConsole[t];
82
+ }), this.logs = [], this.totalCount = 0, this.listeners.clear(), this.isPatched = !1);
83
+ }
256
84
  }
257
- var B;
258
- function ue() {
259
- return B || (B = 1, process.env.NODE_ENV === "production" ? y.exports = le() : y.exports = ce()), y.exports;
85
+ const d = new y();
86
+ function b(i, t = 2) {
87
+ const s = /* @__PURE__ */ new WeakSet();
88
+ return JSON.stringify(i, (a, o) => {
89
+ if (o === null || typeof o != "object")
90
+ return o;
91
+ if (s.has(o))
92
+ return "[Circular]";
93
+ if (s.add(o), typeof HTMLElement < "u" && o instanceof HTMLElement) {
94
+ const l = o.id ? `#${o.id}` : "", c = o.className ? `.${o.className.split(" ").join(".")}` : "";
95
+ return `<${o.tagName.toLowerCase()}${l}${c}>`;
96
+ }
97
+ return o instanceof Error ? { message: o.message, stack: o.stack } : o;
98
+ }, t);
260
99
  }
261
- var o = ue();
262
- const fe = {
100
+ const C = {
263
101
  log: "#d4d4d4",
264
102
  info: "#66e3f3",
265
103
  warn: "#ffe267",
266
104
  error: "#ff68ca"
267
- }, d = {
105
+ }, n = {
268
106
  container: {
269
107
  position: "fixed",
270
108
  bottom: 0,
@@ -350,158 +188,71 @@ const fe = {
350
188
  fontWeight: "700"
351
189
  }
352
190
  };
353
- function b(s) {
354
- return s.toString().padStart(2, "0");
191
+ function h(i) {
192
+ return i.toString().padStart(2, "0");
355
193
  }
356
- function de(s) {
357
- return s.toString().padStart(3, "0");
194
+ function S(i) {
195
+ return i.toString().padStart(3, "0");
358
196
  }
359
- function pe(s) {
360
- const n = new Date(s.getTime());
361
- return /* @__PURE__ */ o.jsxs(o.Fragment, { children: [
362
- /* @__PURE__ */ o.jsx("span", { children: `${n.getFullYear()}-${b(n.getMonth() + 1)}-${b(n.getDay())} ${b(n.getHours())}:${b(n.getMinutes())}:${b(n.getSeconds())}` }),
363
- /* @__PURE__ */ o.jsxs("span", { style: d.milliSecond, children: [
197
+ function k(i) {
198
+ const t = new Date(i.getTime());
199
+ return /* @__PURE__ */ r(m, { children: [
200
+ /* @__PURE__ */ e("span", { children: `${t.getFullYear()}-${h(t.getMonth() + 1)}-${h(t.getDay())} ${h(t.getHours())}:${h(t.getMinutes())}:${h(t.getSeconds())}` }),
201
+ /* @__PURE__ */ r("span", { style: n.milliSecond, children: [
364
202
  ".",
365
- de(n.getMilliseconds())
203
+ S(t.getMilliseconds())
366
204
  ] })
367
205
  ] });
368
206
  }
369
- const U = (s) => /* @__PURE__ */ o.jsxs(
370
- "svg",
371
- {
372
- xmlns: "http://www.w3.org/2000/svg",
373
- viewBox: "0 0 2000 2000",
374
- width: "32",
375
- height: "32",
376
- ...s,
377
- children: [
378
- /* @__PURE__ */ o.jsx("rect", { fill: "#d4d4d4", x: ".5", y: ".5", width: "1785.85", height: "294.57" }),
379
- /* @__PURE__ */ o.jsx("polygon", { fill: "#66e3f3", points: ".5 1743.03 .5 1448.47 1120.74 1448.47 950.67 1743.03 .5 1743.03" }),
380
- /* @__PURE__ */ o.jsx("polygon", { fill: "#ffe267", points: ".5 1210.04 .5 915.47 1428.46 915.47 1258.39 1210.04 .5 1210.04" }),
381
- /* @__PURE__ */ o.jsx("polygon", { fill: "#ff68ca", points: ".5 752.55 .5 457.99 1692.59 457.99 1522.52 752.55 .5 752.55" })
382
- ]
383
- }
384
- ), me = (s) => /* @__PURE__ */ o.jsxs(
385
- "svg",
386
- {
387
- xmlns: "http://www.w3.org/2000/svg",
388
- viewBox: "0 0 1261.05 263.86",
389
- width: "160",
390
- height: "33.4781333",
391
- fill: "currentColor",
392
- ...s,
393
- children: [
394
- /* @__PURE__ */ o.jsx("path", { d: "M171.23,173.27c-28.37,42.73-63.1,67.36-90,67.36-17.61,0-36.2-14.63-36.2-47.73,0-23.1,9.29-54.66,30.82-81.99,40.6-51.58,110.06-85.07,121.8-75.06,5.87,5,0,17.32-6.85,30.79-2.93,5.77-6.36,11.93-8.32,17.71-1.96,5-2.94,9.62-2.94,14.24,0,11.16,6.85,19.63,16.63,24.63,9.78,4.62,16.63.77,19.08-5.77,3.42-8.47,10.27-21.56,18.59-34.64,4.89-7.7,6.85-15.4,6.85-22.33,0-15.01-12.72-30.02-29.35-41.57-8.32-5.39-19.57-8.08-31.79-8.08s-25.92,2.69-38.64,6.54C85.63,37.01-1.92,106.68.03,184.43c.98,31.56,21.03,55.81,44.02,65.44,12.23,5.39,26.9,8.08,43.05,8.08,21.03,0,43.05-4.62,63.1-15.78,17.61-10.39,44.02-32.72,44.02-55.04,0-3.85-.98-8.47-3.42-12.7-4.89-8.85-16.14-6.54-19.57-1.15Z" }),
395
- /* @__PURE__ */ o.jsx("path", { d: "M512.17,105.91c5.87-5.39,10.27-16.94,3.91-27.33-7.83-12.7-25.93-17.71-36.69-8.47-4.89,4.23-7.83,9.62-7.83,15.78,0,4.23,1.47,9.24,4.89,14.24,8.8,13.09,27.39,13.86,35.71,5.77Z" }),
396
- /* @__PURE__ */ o.jsx("path", { d: "M1234.15,63.95c-11.25,0-21.52,10.01-21.52,20.79,0,11.93,13.21,23.48,28.86,23.48,12.23,0,19.57-8.85,19.57-19.25,0-11.16-13.21-25.02-26.9-25.02Z" }),
397
- /* @__PURE__ */ o.jsx("path", { d: "M1236.6,192.9c-15.16,26.17-40.6,51.96-60.17,51.96-5.38,0-7.34-3.46-7.34-9.62s2.45-14.24,6.85-23.09c8.32-15.4,30.82-44.27,40.11-60.82,12.72-19.25,8.8-35.8-.49-43.5-6.36-5.77-12.23-5-19.57,2.69-15.88,17.56-41.93,54.09-56.34,80.99-.8.69-1.59,1.53-2.36,2.54-18.1,23.48-42.07,50.42-57.23,50.42-7.83,0-12.72-6.16-12.72-15.01,0-13.47,12.72-30.41,26.41-46.96,20.06-24.25,30.33-41.96,30.33-55.04s-7.83-23.1-22.01-23.48c-15.65-.38-41.58,12.7-63.59,28.1,0-16.17-10.27-30.02-25.92-30.02s-43.04,14.63-64.08,30.79c.98-3.85,1.47-7.31,1.47-10.39,0-6.16-2.45-12.7-6.85-18.48-4.89-6.93-12.23-7.31-18.59,0-26.46,31.75-57.14,77.4-70.91,103.44-15.4,20.49-34.77,38.59-49.42,38.59-4.89,0-6.85-3.46-6.85-9.24,0-25.79,41.09-67.75,53.81-88.92,12.72-20.02,8.32-36.95,0-44.65-5.87-5.39-14.19-5-20.06,2.69l-9.29,11.93c-4.4-10.01-15.16-16.94-32.77-16.94-24.95,0-65.06,18.09-104.19,62.36-9.02,9.85-15.71,20.31-20.11,30.39-.32.48-.64.99-.92,1.56-15.16,26.94-42.56,50.81-59.68,50.81-6.85,0-10.76-6.54-10.76-16.17,0-5.77,1.47-11.55,3.91-17.32,7.83-19.63,31.31-45.81,52.83-65.05,5.38-5.39,8.32-10.78,8.32-15.4,0-10.01-6.36-17.71-14.19-25.79-5.87-5.77-13.21-3.85-22.01.77-17.12,9.24-28.37,13.86-42.56,16.55,6.36-12.7,10.27-25.02,10.27-33.49s-3.91-12.7-14.19-12.7c-17.12,0-49.4,29.25-49.4,48.88,0,6.93,3.42,13.09,13.21,16.94-25.92,56.2-81.69,101.23-102.72,101.23-3.42,0-6.85-3.08-6.85-8.85,0-13.47,16.63-39.65,31.31-59.28,12.72-16.94,23.97-36.95,23.97-49.65,0-8.47-2.93-14.63-7.83-18.86-6.85-5.77-12.72-5-19.57,2.31-8.85,9.75-40.55,48.2-57.36,81.67-.69.63-1.31,1.37-1.82,2.24-14.67,23.48-40.6,50.81-57.72,50.81-6.85,0-9.29-5-9.29-13.09,0-6.16,1.96-14.24,6.36-22.71,5.38-9.24,17.61-25.41,44.51-63.13,3.91-5.39,5.38-10.78,5.38-16.17,0-15.01-14.19-26.94-28.37-26.94-9.29,0-26.41,4.62-41.09,13.09,4.89-5.39,35.22-41.19,45-53.89,11.74-16.17,17.61-30.41,17.61-40.8,0-5.39-1.47-10.39-3.91-14.63-4.4-7.7-11.74-9.24-19.57-1.54-39.62,40.03-136.47,168.98-156.04,209.4-12.23,25.4-5.38,34.64,2.45,41.96,5.87,5.77,13.21,4.62,17.12-2.31,11.74-23.1,29.35-49.65,45.98-71.21,25.93-33.1,72.39-57.35,76.8-57.35,3.42,0-3.91,9.24-13.21,21.94-18.59,22.71-42.56,56.2-42.56,80.45,0,20.02,14.67,32.72,46.96,32.72,20.75,0,41.7-8.46,57.61-20.66,4.68,12.06,16.51,20.27,36.31,20.27,53.81,0,103.7-50.42,138.92-113.55,11.25-.38,24.46-2.31,38.15-7.31-19.57,18.09-37.18,38.49-48.43,61.2-3.42,8.08-4.89,15.01-4.89,21.17,0,22.33,17.12,38.88,47.94,38.88,20.68,0,45.13-8.31,61.83-21.66,6.4,12.72,20.14,20.88,40.4,20.88s41.58-11.93,55.76-22.71c3.91,14.24,18.1,24.25,42.56,24.25,15.57,0,31.54-5.56,45.06-13.89,2.09,4.04,5.34,7.41,9.23,10.04,8.32,5.77,13.7,3.46,17.12-2.69,19.08-35.41,41.58-70.44,68.97-93.54,29.35-25.4,48.43-33.87,52.34-33.87,4.4,0-9.29,14.63-22.5,31.95-13.21,16.17-29.35,36.95-36.2,50.81-4.89,9.62-8.8,21.94-8.8,28.48,0,10.01,3.42,15.4,10.76,21.17,7.83,6.16,14.67,5,19.57-2.31,20.54-35.8,44.02-72.36,82.18-102.39,28.86-22.71,39.13-26.56,43.05-26.56s-7.83,11.55-18.59,24.25c-11.25,13.86-27.39,34.64-35.22,47.73-5.38,9.62-7.34,18.09-7.34,25.02,0,20.79,18.1,35.03,51.36,35.03,20.03,0,41.97-8.4,58.52-20.53,4.91,12.28,17.99,20.14,40.78,20.14,28.86,0,62.61-16.17,77.29-40.42,6.36-10.01,6.85-19.63,2.45-26.17-4.4-6.93-10.76-7.7-14.67-.77ZM709.29,242.94c-4.89,0-6.85-4.62-6.85-11.55,0-12.32,8.32-32.72,22.99-50.81,24.95-31.56,58.7-55.81,68.48-55.81,4.89,0,5.87,2.69,5.87,7.31,0,10.01-8.8,28.87-27.88,55.04-23.97,32.33-46.47,55.81-62.61,55.81Z" })
398
- ]
399
- }
400
- );
401
- class he {
402
- logs = [];
403
- totalCount = 0;
404
- listeners = /* @__PURE__ */ new Set();
405
- originalConsole = {
406
- log: console.log,
407
- info: console.info,
408
- warn: console.warn,
409
- error: console.error
410
- };
411
- isPatched = !1;
412
- init() {
413
- this.isPatched || (["log", "info", "warn", "error"].forEach((n) => {
414
- console[n] = (...u) => {
415
- this.originalConsole[n].apply(console, u), this.addLog(n, u);
416
- };
417
- }), this.totalCount = 0, this.isPatched = !0);
418
- }
419
- addLog(n, u) {
420
- const p = {
421
- id: Math.random().toString(36).slice(2),
422
- type: n,
423
- args: u,
424
- timestamp: Date.now()
425
- };
426
- this.logs = [...this.logs.slice(-399), p], this.totalCount = this.totalCount + 1, this.notify();
427
- }
428
- subscribe(n) {
429
- return this.listeners.add(n), n(this.logs), () => {
430
- this.listeners.delete(n);
431
- };
432
- }
433
- notify() {
434
- this.listeners.forEach((n) => n(this.logs));
435
- }
436
- getLogs() {
437
- return this.logs;
438
- }
439
- getTotalCount() {
440
- return this.totalCount;
441
- }
442
- clear() {
443
- this.logs = [], this.notify();
444
- }
445
- }
446
- const E = new he();
447
- function ge(s, n = 2) {
448
- const u = /* @__PURE__ */ new WeakSet();
449
- return JSON.stringify(s, (p, r) => {
450
- if (r === null || typeof r != "object")
451
- return r;
452
- if (u.has(r))
453
- return "[Circular]";
454
- if (u.add(r), typeof HTMLElement < "u" && r instanceof HTMLElement) {
455
- const i = r.id ? `#${r.id}` : "", f = r.className ? `.${r.className.split(" ").join(".")}` : "";
456
- return `<${r.tagName.toLowerCase()}${i}${f}>`;
457
- }
458
- return r instanceof Error ? { message: r.message, stack: r.stack } : r;
459
- }, n);
460
- }
461
- const be = () => {
462
- const [s, n] = L([]), [u, p] = L(!1), r = ie(null);
463
- return D(() => {
464
- E.init();
465
- const i = E.subscribe((f) => {
466
- n(f);
207
+ const I = () => {
208
+ const [i, t] = g([]), [s, a] = g(!1), o = x(null);
209
+ return p(() => {
210
+ d.init();
211
+ const l = d.subscribe((c) => {
212
+ t(c);
467
213
  });
468
- return () => i();
469
- }, []), D(() => {
470
- u && r.current && r.current.scrollIntoView({ behavior: "smooth" });
471
- }, [s, u]), u ? /* @__PURE__ */ o.jsxs("div", { style: d.container, children: [
472
- /* @__PURE__ */ o.jsxs("div", { style: d.header, children: [
473
- /* @__PURE__ */ o.jsxs("span", { children: [
474
- /* @__PURE__ */ o.jsx(U, { style: d.icon }),
475
- /* @__PURE__ */ o.jsx(me, { style: d.logo }),
214
+ return () => l();
215
+ }, []), p(() => {
216
+ s && o.current && o.current.scrollIntoView({ behavior: "smooth" });
217
+ }, [i, s]), s ? /* @__PURE__ */ r("div", { style: n.container, children: [
218
+ /* @__PURE__ */ r("div", { style: n.header, children: [
219
+ /* @__PURE__ */ r("span", { children: [
220
+ /* @__PURE__ */ e(f, { style: n.icon }),
221
+ /* @__PURE__ */ e(
222
+ w,
223
+ {
224
+ style: n.logo
225
+ }
226
+ ),
476
227
  " (",
477
- E.getTotalCount(),
228
+ d.getTotalCount(),
478
229
  ")"
479
230
  ] }),
480
- /* @__PURE__ */ o.jsxs("div", { children: [
481
- /* @__PURE__ */ o.jsx("button", { onClick: () => E.clear(), style: d.button, children: "Clear" }),
482
- /* @__PURE__ */ o.jsx("button", { onClick: () => p(!1), style: d.button, children: "Close ▼" })
231
+ /* @__PURE__ */ r("div", { children: [
232
+ /* @__PURE__ */ e("button", { onClick: () => d.clear(), style: n.button, children: "Clear" }),
233
+ /* @__PURE__ */ e("button", { onClick: () => a(!1), style: n.button, children: "Close ▼" })
483
234
  ] })
484
235
  ] }),
485
- /* @__PURE__ */ o.jsxs("div", { children: [
486
- s.map((i) => /* @__PURE__ */ o.jsxs("div", { style: { ...d.logRow, color: fe[i.type] }, children: [
487
- /* @__PURE__ */ o.jsx("span", { style: d.logTimestamp, children: pe(new Date(i.timestamp)) }),
488
- i.args.map((f, m) => /* @__PURE__ */ o.jsx("span", { style: d.logArgs, children: typeof f == "object" ? ge(f) : String(f) }, `log-args-${m}`))
489
- ] }, i.id)),
490
- /* @__PURE__ */ o.jsx("div", { ref: r })
236
+ /* @__PURE__ */ r("div", { style: { textAlign: "left" }, children: [
237
+ i.map((l) => /* @__PURE__ */ r("div", { style: { ...n.logRow, color: C[l.type] }, children: [
238
+ /* @__PURE__ */ e("span", { style: n.logTimestamp, children: k(new Date(l.timestamp)) }),
239
+ l.args.map((c, u) => /* @__PURE__ */ e("span", { style: n.logArgs, children: typeof c == "object" ? b(c) : String(c) }, `log-args-${u}`))
240
+ ] }, l.id)),
241
+ /* @__PURE__ */ e("div", { ref: o })
491
242
  ] })
492
- ] }) : /* @__PURE__ */ o.jsxs(
243
+ ] }) : /* @__PURE__ */ r(
493
244
  "button",
494
245
  {
495
- style: d.chiramiButton,
496
- onClick: () => p(!0),
246
+ style: n.chiramiButton,
247
+ onClick: () => a(!0),
497
248
  children: [
498
- /* @__PURE__ */ o.jsx(U, { style: d.buttonIcon }),
499
- /* @__PURE__ */ o.jsx("span", { style: d.chiramiButtonCount, children: E.getTotalCount() })
249
+ /* @__PURE__ */ e(f, { style: n.buttonIcon }),
250
+ /* @__PURE__ */ e("span", { style: n.chiramiButtonCount, children: d.getTotalCount() })
500
251
  ]
501
252
  }
502
253
  );
503
254
  };
504
255
  export {
505
- be as ChiramiViewer,
506
- E as chiramiStore
256
+ I as ChiramiViewer,
257
+ d as chiramiStore
507
258
  };
@@ -1,6 +1 @@
1
- (function(h,m){typeof exports=="object"&&typeof module<"u"?m(exports,require("react")):typeof define=="function"&&define.amd?define(["exports","react"],m):(h=typeof globalThis<"u"?globalThis:h||self,m(h.Chirami={},h.React))})(this,(function(h,m){"use strict";var w={exports:{}},E={};var P;function U(){if(P)return E;P=1;var s=Symbol.for("react.transitional.element"),n=Symbol.for("react.fragment");function u(p,r,a){var d=null;if(a!==void 0&&(d=""+a),r.key!==void 0&&(d=""+r.key),"key"in r){a={};for(var g in r)g!=="key"&&(a[g]=r[g])}else a=r;return r=a.ref,{$$typeof:s,type:p,key:d,ref:r!==void 0?r:null,props:a}}return E.Fragment=n,E.jsx=u,E.jsxs=u,E}var y={};var A;function J(){return A||(A=1,process.env.NODE_ENV!=="production"&&(function(){function s(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===pe?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case j:return"Fragment";case se:return"Profiler";case ne:return"StrictMode";case ce:return"Suspense";case ue:return"SuspenseList";case de:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case oe:return"Portal";case ae:return e.displayName||"Context";case ie:return(e._context.displayName||"Context")+".Consumer";case le:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case fe:return t=e.displayName||null,t!==null?t:s(e.type)||"Memo";case v:t=e._payload,e=e._init;try{return s(e(t))}catch{}}return null}function n(e){return""+e}function u(e){try{n(e);var t=!1}catch{t=!0}if(t){t=console;var i=t.error,l=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return i.call(t,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",l),n(e)}}function p(e){if(e===j)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===v)return"<...>";try{var t=s(e);return t?"<"+t+">":"<...>"}catch{return"<...>"}}function r(){var e=S.A;return e===null?null:e.getOwner()}function a(){return Error("react-stack-top-frame")}function d(e){if(D.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function g(e,t){function i(){$||($=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}i.isReactWarning=!0,Object.defineProperty(e,"key",{get:i,configurable:!0})}function te(){var e=s(this.type);return W[e]||(W[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function re(e,t,i,l,T,C){var c=i.ref;return e={$$typeof:L,type:e,key:t,props:i,_owner:l},(c!==void 0?c:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:te}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:T}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:C}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function M(e,t,i,l,T,C){var c=t.children;if(c!==void 0)if(l)if(me(c)){for(l=0;l<c.length;l++)Y(c[l]);Object.freeze&&Object.freeze(c)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Y(c);if(D.call(t,"key")){c=s(e);var b=Object.keys(t).filter(function(he){return he!=="key"});l=0<b.length?"{key: someKey, "+b.join(": ..., ")+": ...}":"{key: someKey}",B[c+l]||(b=0<b.length?"{"+b.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
2
- let props = %s;
3
- <%s {...props} />
4
- React keys must be passed directly to JSX without using spread:
5
- let props = %s;
6
- <%s key={someKey} {...props} />`,l,c,b,c),B[c+l]=!0)}if(c=null,i!==void 0&&(u(i),c=""+i),d(t)&&(u(t.key),c=""+t.key),"key"in t){i={};for(var O in t)O!=="key"&&(i[O]=t[O])}else i=t;return c&&g(i,typeof e=="function"?e.displayName||e.name||"Unknown":e),re(e,c,i,r(),T,C)}function Y(e){F(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===v&&(e._payload.status==="fulfilled"?F(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function F(e){return typeof e=="object"&&e!==null&&e.$$typeof===L}var R=m,L=Symbol.for("react.transitional.element"),oe=Symbol.for("react.portal"),j=Symbol.for("react.fragment"),ne=Symbol.for("react.strict_mode"),se=Symbol.for("react.profiler"),ie=Symbol.for("react.consumer"),ae=Symbol.for("react.context"),le=Symbol.for("react.forward_ref"),ce=Symbol.for("react.suspense"),ue=Symbol.for("react.suspense_list"),fe=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),de=Symbol.for("react.activity"),pe=Symbol.for("react.client.reference"),S=R.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,D=Object.prototype.hasOwnProperty,me=Array.isArray,k=console.createTask?console.createTask:function(){return null};R={react_stack_bottom_frame:function(e){return e()}};var $,W={},z=R.react_stack_bottom_frame.bind(R,a)(),V=k(p(a)),B={};y.Fragment=j,y.jsx=function(e,t,i){var l=1e4>S.recentlyCreatedOwnerStacks++;return M(e,t,i,!1,l?Error("react-stack-top-frame"):z,l?k(p(e)):V)},y.jsxs=function(e,t,i){var l=1e4>S.recentlyCreatedOwnerStacks++;return M(e,t,i,!0,l?Error("react-stack-top-frame"):z,l?k(p(e)):V)}})()),y}var N;function Z(){return N||(N=1,process.env.NODE_ENV==="production"?w.exports=U():w.exports=J()),w.exports}var o=Z();const G={log:"#d4d4d4",info:"#66e3f3",warn:"#ffe267",error:"#ff68ca"},f={container:{position:"fixed",bottom:0,left:0,width:"100%",height:"300px",backgroundColor:"#1e1e1e",color:"#d4d4d4",fontFamily:"monospace",fontSize:"12px",overflowY:"auto",zIndex:9999,borderTop:"1px solid #333",boxShadow:"0 -2px 10px rgba(0,0,0,0.3)"},header:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"4px 8px",backgroundColor:"#333",fontFamily:"system-ui",fontWeight:"700",position:"sticky",top:0},button:{marginLeft:8,backgroundColor:"#ffffff11",cursor:"pointer",padding:4},icon:{width:"14px",height:"14px",marginRight:"-4px"},logo:{width:"80px",height:"14px"},logRow:{padding:"4px 8px",borderBottom:"1px solid #333",whiteSpace:"pre-wrap",wordBreak:"break-all"},logTimestamp:{color:"#777",fontFamily:"monospace",marginRight:"1em"},milliSecond:{fontSize:"10px"},logArgs:{marginRight:"8px"},chiramiButton:{position:"fixed",bottom:"10px",right:"10px",zIndex:9999,padding:"0 8px",backgroundColor:"#333",opacity:"0.5",color:"#ccc",border:"none",borderRadius:"12px",boxShadow:"#00000033 1px 1px 2px 2px",cursor:"pointer",display:"flex",alignItems:"center",gap:"2px",fontWeight:"400"},buttonIcon:{width:"12px"},chiramiButtonCount:{color:"#f40",fontFamily:"monospace",fontWeight:"700"}};function _(s){return s.toString().padStart(2,"0")}function H(s){return s.toString().padStart(3,"0")}function X(s){const n=new Date(s.getTime());return o.jsxs(o.Fragment,{children:[o.jsx("span",{children:`${n.getFullYear()}-${_(n.getMonth()+1)}-${_(n.getDay())} ${_(n.getHours())}:${_(n.getMinutes())}:${_(n.getSeconds())}`}),o.jsxs("span",{style:f.milliSecond,children:[".",H(n.getMilliseconds())]})]})}const I=s=>o.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2000 2000",width:"32",height:"32",...s,children:[o.jsx("rect",{fill:"#d4d4d4",x:".5",y:".5",width:"1785.85",height:"294.57"}),o.jsx("polygon",{fill:"#66e3f3",points:".5 1743.03 .5 1448.47 1120.74 1448.47 950.67 1743.03 .5 1743.03"}),o.jsx("polygon",{fill:"#ffe267",points:".5 1210.04 .5 915.47 1428.46 915.47 1258.39 1210.04 .5 1210.04"}),o.jsx("polygon",{fill:"#ff68ca",points:".5 752.55 .5 457.99 1692.59 457.99 1522.52 752.55 .5 752.55"})]}),q=s=>o.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1261.05 263.86",width:"160",height:"33.4781333",fill:"currentColor",...s,children:[o.jsx("path",{d:"M171.23,173.27c-28.37,42.73-63.1,67.36-90,67.36-17.61,0-36.2-14.63-36.2-47.73,0-23.1,9.29-54.66,30.82-81.99,40.6-51.58,110.06-85.07,121.8-75.06,5.87,5,0,17.32-6.85,30.79-2.93,5.77-6.36,11.93-8.32,17.71-1.96,5-2.94,9.62-2.94,14.24,0,11.16,6.85,19.63,16.63,24.63,9.78,4.62,16.63.77,19.08-5.77,3.42-8.47,10.27-21.56,18.59-34.64,4.89-7.7,6.85-15.4,6.85-22.33,0-15.01-12.72-30.02-29.35-41.57-8.32-5.39-19.57-8.08-31.79-8.08s-25.92,2.69-38.64,6.54C85.63,37.01-1.92,106.68.03,184.43c.98,31.56,21.03,55.81,44.02,65.44,12.23,5.39,26.9,8.08,43.05,8.08,21.03,0,43.05-4.62,63.1-15.78,17.61-10.39,44.02-32.72,44.02-55.04,0-3.85-.98-8.47-3.42-12.7-4.89-8.85-16.14-6.54-19.57-1.15Z"}),o.jsx("path",{d:"M512.17,105.91c5.87-5.39,10.27-16.94,3.91-27.33-7.83-12.7-25.93-17.71-36.69-8.47-4.89,4.23-7.83,9.62-7.83,15.78,0,4.23,1.47,9.24,4.89,14.24,8.8,13.09,27.39,13.86,35.71,5.77Z"}),o.jsx("path",{d:"M1234.15,63.95c-11.25,0-21.52,10.01-21.52,20.79,0,11.93,13.21,23.48,28.86,23.48,12.23,0,19.57-8.85,19.57-19.25,0-11.16-13.21-25.02-26.9-25.02Z"}),o.jsx("path",{d:"M1236.6,192.9c-15.16,26.17-40.6,51.96-60.17,51.96-5.38,0-7.34-3.46-7.34-9.62s2.45-14.24,6.85-23.09c8.32-15.4,30.82-44.27,40.11-60.82,12.72-19.25,8.8-35.8-.49-43.5-6.36-5.77-12.23-5-19.57,2.69-15.88,17.56-41.93,54.09-56.34,80.99-.8.69-1.59,1.53-2.36,2.54-18.1,23.48-42.07,50.42-57.23,50.42-7.83,0-12.72-6.16-12.72-15.01,0-13.47,12.72-30.41,26.41-46.96,20.06-24.25,30.33-41.96,30.33-55.04s-7.83-23.1-22.01-23.48c-15.65-.38-41.58,12.7-63.59,28.1,0-16.17-10.27-30.02-25.92-30.02s-43.04,14.63-64.08,30.79c.98-3.85,1.47-7.31,1.47-10.39,0-6.16-2.45-12.7-6.85-18.48-4.89-6.93-12.23-7.31-18.59,0-26.46,31.75-57.14,77.4-70.91,103.44-15.4,20.49-34.77,38.59-49.42,38.59-4.89,0-6.85-3.46-6.85-9.24,0-25.79,41.09-67.75,53.81-88.92,12.72-20.02,8.32-36.95,0-44.65-5.87-5.39-14.19-5-20.06,2.69l-9.29,11.93c-4.4-10.01-15.16-16.94-32.77-16.94-24.95,0-65.06,18.09-104.19,62.36-9.02,9.85-15.71,20.31-20.11,30.39-.32.48-.64.99-.92,1.56-15.16,26.94-42.56,50.81-59.68,50.81-6.85,0-10.76-6.54-10.76-16.17,0-5.77,1.47-11.55,3.91-17.32,7.83-19.63,31.31-45.81,52.83-65.05,5.38-5.39,8.32-10.78,8.32-15.4,0-10.01-6.36-17.71-14.19-25.79-5.87-5.77-13.21-3.85-22.01.77-17.12,9.24-28.37,13.86-42.56,16.55,6.36-12.7,10.27-25.02,10.27-33.49s-3.91-12.7-14.19-12.7c-17.12,0-49.4,29.25-49.4,48.88,0,6.93,3.42,13.09,13.21,16.94-25.92,56.2-81.69,101.23-102.72,101.23-3.42,0-6.85-3.08-6.85-8.85,0-13.47,16.63-39.65,31.31-59.28,12.72-16.94,23.97-36.95,23.97-49.65,0-8.47-2.93-14.63-7.83-18.86-6.85-5.77-12.72-5-19.57,2.31-8.85,9.75-40.55,48.2-57.36,81.67-.69.63-1.31,1.37-1.82,2.24-14.67,23.48-40.6,50.81-57.72,50.81-6.85,0-9.29-5-9.29-13.09,0-6.16,1.96-14.24,6.36-22.71,5.38-9.24,17.61-25.41,44.51-63.13,3.91-5.39,5.38-10.78,5.38-16.17,0-15.01-14.19-26.94-28.37-26.94-9.29,0-26.41,4.62-41.09,13.09,4.89-5.39,35.22-41.19,45-53.89,11.74-16.17,17.61-30.41,17.61-40.8,0-5.39-1.47-10.39-3.91-14.63-4.4-7.7-11.74-9.24-19.57-1.54-39.62,40.03-136.47,168.98-156.04,209.4-12.23,25.4-5.38,34.64,2.45,41.96,5.87,5.77,13.21,4.62,17.12-2.31,11.74-23.1,29.35-49.65,45.98-71.21,25.93-33.1,72.39-57.35,76.8-57.35,3.42,0-3.91,9.24-13.21,21.94-18.59,22.71-42.56,56.2-42.56,80.45,0,20.02,14.67,32.72,46.96,32.72,20.75,0,41.7-8.46,57.61-20.66,4.68,12.06,16.51,20.27,36.31,20.27,53.81,0,103.7-50.42,138.92-113.55,11.25-.38,24.46-2.31,38.15-7.31-19.57,18.09-37.18,38.49-48.43,61.2-3.42,8.08-4.89,15.01-4.89,21.17,0,22.33,17.12,38.88,47.94,38.88,20.68,0,45.13-8.31,61.83-21.66,6.4,12.72,20.14,20.88,40.4,20.88s41.58-11.93,55.76-22.71c3.91,14.24,18.1,24.25,42.56,24.25,15.57,0,31.54-5.56,45.06-13.89,2.09,4.04,5.34,7.41,9.23,10.04,8.32,5.77,13.7,3.46,17.12-2.69,19.08-35.41,41.58-70.44,68.97-93.54,29.35-25.4,48.43-33.87,52.34-33.87,4.4,0-9.29,14.63-22.5,31.95-13.21,16.17-29.35,36.95-36.2,50.81-4.89,9.62-8.8,21.94-8.8,28.48,0,10.01,3.42,15.4,10.76,21.17,7.83,6.16,14.67,5,19.57-2.31,20.54-35.8,44.02-72.36,82.18-102.39,28.86-22.71,39.13-26.56,43.05-26.56s-7.83,11.55-18.59,24.25c-11.25,13.86-27.39,34.64-35.22,47.73-5.38,9.62-7.34,18.09-7.34,25.02,0,20.79,18.1,35.03,51.36,35.03,20.03,0,41.97-8.4,58.52-20.53,4.91,12.28,17.99,20.14,40.78,20.14,28.86,0,62.61-16.17,77.29-40.42,6.36-10.01,6.85-19.63,2.45-26.17-4.4-6.93-10.76-7.7-14.67-.77ZM709.29,242.94c-4.89,0-6.85-4.62-6.85-11.55,0-12.32,8.32-32.72,22.99-50.81,24.95-31.56,58.7-55.81,68.48-55.81,4.89,0,5.87,2.69,5.87,7.31,0,10.01-8.8,28.87-27.88,55.04-23.97,32.33-46.47,55.81-62.61,55.81Z"})]});class Q{logs=[];totalCount=0;listeners=new Set;originalConsole={log:console.log,info:console.info,warn:console.warn,error:console.error};isPatched=!1;init(){this.isPatched||(["log","info","warn","error"].forEach(n=>{console[n]=(...u)=>{this.originalConsole[n].apply(console,u),this.addLog(n,u)}}),this.totalCount=0,this.isPatched=!0)}addLog(n,u){const p={id:Math.random().toString(36).slice(2),type:n,args:u,timestamp:Date.now()};this.logs=[...this.logs.slice(-399),p],this.totalCount=this.totalCount+1,this.notify()}subscribe(n){return this.listeners.add(n),n(this.logs),()=>{this.listeners.delete(n)}}notify(){this.listeners.forEach(n=>n(this.logs))}getLogs(){return this.logs}getTotalCount(){return this.totalCount}clear(){this.logs=[],this.notify()}}const x=new Q;function K(s,n=2){const u=new WeakSet;return JSON.stringify(s,(p,r)=>{if(r===null||typeof r!="object")return r;if(u.has(r))return"[Circular]";if(u.add(r),typeof HTMLElement<"u"&&r instanceof HTMLElement){const a=r.id?`#${r.id}`:"",d=r.className?`.${r.className.split(" ").join(".")}`:"";return`<${r.tagName.toLowerCase()}${a}${d}>`}return r instanceof Error?{message:r.message,stack:r.stack}:r},n)}const ee=()=>{const[s,n]=m.useState([]),[u,p]=m.useState(!1),r=m.useRef(null);return m.useEffect(()=>{x.init();const a=x.subscribe(d=>{n(d)});return()=>a()},[]),m.useEffect(()=>{u&&r.current&&r.current.scrollIntoView({behavior:"smooth"})},[s,u]),u?o.jsxs("div",{style:f.container,children:[o.jsxs("div",{style:f.header,children:[o.jsxs("span",{children:[o.jsx(I,{style:f.icon}),o.jsx(q,{style:f.logo})," (",x.getTotalCount(),")"]}),o.jsxs("div",{children:[o.jsx("button",{onClick:()=>x.clear(),style:f.button,children:"Clear"}),o.jsx("button",{onClick:()=>p(!1),style:f.button,children:"Close ▼"})]})]}),o.jsxs("div",{children:[s.map(a=>o.jsxs("div",{style:{...f.logRow,color:G[a.type]},children:[o.jsx("span",{style:f.logTimestamp,children:X(new Date(a.timestamp))}),a.args.map((d,g)=>o.jsx("span",{style:f.logArgs,children:typeof d=="object"?K(d):String(d)},`log-args-${g}`))]},a.id)),o.jsx("div",{ref:r})]})]}):o.jsxs("button",{style:f.chiramiButton,onClick:()=>p(!0),children:[o.jsx(I,{style:f.buttonIcon}),o.jsx("span",{style:f.chiramiButtonCount,children:x.getTotalCount()})]})};h.ChiramiViewer=ee,h.chiramiStore=x,Object.defineProperty(h,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(r,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("react/jsx-runtime"),require("react")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react"],t):(r=typeof globalThis<"u"?globalThis:r||self,t(r.Chirami={},r.jsxRuntime,r.React))})(this,(function(r,t,d){"use strict";const p=i=>t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2000 2000",width:"32",height:"32",...i,children:[t.jsx("rect",{fill:"#d4d4d4",x:".5",y:".5",width:"1785.85",height:"294.57"}),t.jsx("polygon",{fill:"#66e3f3",points:".5 1743.03 .5 1448.47 1120.74 1448.47 950.67 1743.03 .5 1743.03"}),t.jsx("polygon",{fill:"#ffe267",points:".5 1210.04 .5 915.47 1428.46 915.47 1258.39 1210.04 .5 1210.04"}),t.jsx("polygon",{fill:"#ff68ca",points:".5 752.55 .5 457.99 1692.59 457.99 1522.52 752.55 .5 752.55"})]}),g=i=>t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1261.05 263.86",width:"160",height:"33.4781333",fill:"currentColor",...i,children:[t.jsx("path",{d:"M171.23,173.27c-28.37,42.73-63.1,67.36-90,67.36-17.61,0-36.2-14.63-36.2-47.73,0-23.1,9.29-54.66,30.82-81.99,40.6-51.58,110.06-85.07,121.8-75.06,5.87,5,0,17.32-6.85,30.79-2.93,5.77-6.36,11.93-8.32,17.71-1.96,5-2.94,9.62-2.94,14.24,0,11.16,6.85,19.63,16.63,24.63,9.78,4.62,16.63.77,19.08-5.77,3.42-8.47,10.27-21.56,18.59-34.64,4.89-7.7,6.85-15.4,6.85-22.33,0-15.01-12.72-30.02-29.35-41.57-8.32-5.39-19.57-8.08-31.79-8.08s-25.92,2.69-38.64,6.54C85.63,37.01-1.92,106.68.03,184.43c.98,31.56,21.03,55.81,44.02,65.44,12.23,5.39,26.9,8.08,43.05,8.08,21.03,0,43.05-4.62,63.1-15.78,17.61-10.39,44.02-32.72,44.02-55.04,0-3.85-.98-8.47-3.42-12.7-4.89-8.85-16.14-6.54-19.57-1.15Z"}),t.jsx("path",{d:"M512.17,105.91c5.87-5.39,10.27-16.94,3.91-27.33-7.83-12.7-25.93-17.71-36.69-8.47-4.89,4.23-7.83,9.62-7.83,15.78,0,4.23,1.47,9.24,4.89,14.24,8.8,13.09,27.39,13.86,35.71,5.77Z"}),t.jsx("path",{d:"M1234.15,63.95c-11.25,0-21.52,10.01-21.52,20.79,0,11.93,13.21,23.48,28.86,23.48,12.23,0,19.57-8.85,19.57-19.25,0-11.16-13.21-25.02-26.9-25.02Z"}),t.jsx("path",{d:"M1236.6,192.9c-15.16,26.17-40.6,51.96-60.17,51.96-5.38,0-7.34-3.46-7.34-9.62s2.45-14.24,6.85-23.09c8.32-15.4,30.82-44.27,40.11-60.82,12.72-19.25,8.8-35.8-.49-43.5-6.36-5.77-12.23-5-19.57,2.69-15.88,17.56-41.93,54.09-56.34,80.99-.8.69-1.59,1.53-2.36,2.54-18.1,23.48-42.07,50.42-57.23,50.42-7.83,0-12.72-6.16-12.72-15.01,0-13.47,12.72-30.41,26.41-46.96,20.06-24.25,30.33-41.96,30.33-55.04s-7.83-23.1-22.01-23.48c-15.65-.38-41.58,12.7-63.59,28.1,0-16.17-10.27-30.02-25.92-30.02s-43.04,14.63-64.08,30.79c.98-3.85,1.47-7.31,1.47-10.39,0-6.16-2.45-12.7-6.85-18.48-4.89-6.93-12.23-7.31-18.59,0-26.46,31.75-57.14,77.4-70.91,103.44-15.4,20.49-34.77,38.59-49.42,38.59-4.89,0-6.85-3.46-6.85-9.24,0-25.79,41.09-67.75,53.81-88.92,12.72-20.02,8.32-36.95,0-44.65-5.87-5.39-14.19-5-20.06,2.69l-9.29,11.93c-4.4-10.01-15.16-16.94-32.77-16.94-24.95,0-65.06,18.09-104.19,62.36-9.02,9.85-15.71,20.31-20.11,30.39-.32.48-.64.99-.92,1.56-15.16,26.94-42.56,50.81-59.68,50.81-6.85,0-10.76-6.54-10.76-16.17,0-5.77,1.47-11.55,3.91-17.32,7.83-19.63,31.31-45.81,52.83-65.05,5.38-5.39,8.32-10.78,8.32-15.4,0-10.01-6.36-17.71-14.19-25.79-5.87-5.77-13.21-3.85-22.01.77-17.12,9.24-28.37,13.86-42.56,16.55,6.36-12.7,10.27-25.02,10.27-33.49s-3.91-12.7-14.19-12.7c-17.12,0-49.4,29.25-49.4,48.88,0,6.93,3.42,13.09,13.21,16.94-25.92,56.2-81.69,101.23-102.72,101.23-3.42,0-6.85-3.08-6.85-8.85,0-13.47,16.63-39.65,31.31-59.28,12.72-16.94,23.97-36.95,23.97-49.65,0-8.47-2.93-14.63-7.83-18.86-6.85-5.77-12.72-5-19.57,2.31-8.85,9.75-40.55,48.2-57.36,81.67-.69.63-1.31,1.37-1.82,2.24-14.67,23.48-40.6,50.81-57.72,50.81-6.85,0-9.29-5-9.29-13.09,0-6.16,1.96-14.24,6.36-22.71,5.38-9.24,17.61-25.41,44.51-63.13,3.91-5.39,5.38-10.78,5.38-16.17,0-15.01-14.19-26.94-28.37-26.94-9.29,0-26.41,4.62-41.09,13.09,4.89-5.39,35.22-41.19,45-53.89,11.74-16.17,17.61-30.41,17.61-40.8,0-5.39-1.47-10.39-3.91-14.63-4.4-7.7-11.74-9.24-19.57-1.54-39.62,40.03-136.47,168.98-156.04,209.4-12.23,25.4-5.38,34.64,2.45,41.96,5.87,5.77,13.21,4.62,17.12-2.31,11.74-23.1,29.35-49.65,45.98-71.21,25.93-33.1,72.39-57.35,76.8-57.35,3.42,0-3.91,9.24-13.21,21.94-18.59,22.71-42.56,56.2-42.56,80.45,0,20.02,14.67,32.72,46.96,32.72,20.75,0,41.7-8.46,57.61-20.66,4.68,12.06,16.51,20.27,36.31,20.27,53.81,0,103.7-50.42,138.92-113.55,11.25-.38,24.46-2.31,38.15-7.31-19.57,18.09-37.18,38.49-48.43,61.2-3.42,8.08-4.89,15.01-4.89,21.17,0,22.33,17.12,38.88,47.94,38.88,20.68,0,45.13-8.31,61.83-21.66,6.4,12.72,20.14,20.88,40.4,20.88s41.58-11.93,55.76-22.71c3.91,14.24,18.1,24.25,42.56,24.25,15.57,0,31.54-5.56,45.06-13.89,2.09,4.04,5.34,7.41,9.23,10.04,8.32,5.77,13.7,3.46,17.12-2.69,19.08-35.41,41.58-70.44,68.97-93.54,29.35-25.4,48.43-33.87,52.34-33.87,4.4,0-9.29,14.63-22.5,31.95-13.21,16.17-29.35,36.95-36.2,50.81-4.89,9.62-8.8,21.94-8.8,28.48,0,10.01,3.42,15.4,10.76,21.17,7.83,6.16,14.67,5,19.57-2.31,20.54-35.8,44.02-72.36,82.18-102.39,28.86-22.71,39.13-26.56,43.05-26.56s-7.83,11.55-18.59,24.25c-11.25,13.86-27.39,34.64-35.22,47.73-5.38,9.62-7.34,18.09-7.34,25.02,0,20.79,18.1,35.03,51.36,35.03,20.03,0,41.97-8.4,58.52-20.53,4.91,12.28,17.99,20.14,40.78,20.14,28.86,0,62.61-16.17,77.29-40.42,6.36-10.01,6.85-19.63,2.45-26.17-4.4-6.93-10.76-7.7-14.67-.77ZM709.29,242.94c-4.89,0-6.85-4.62-6.85-11.55,0-12.32,8.32-32.72,22.99-50.81,24.95-31.56,58.7-55.81,68.48-55.81,4.89,0,5.87,2.69,5.87,7.31,0,10.01-8.8,28.87-27.88,55.04-23.97,32.33-46.47,55.81-62.61,55.81Z"})]});class u{logs=[];totalCount=0;listeners=new Set;originalConsole={log:console.log,info:console.info,warn:console.warn,error:console.error};isPatched=!1;init(){this.isPatched||(["log","info","warn","error"].forEach(o=>{console[o]=(...n)=>{this.originalConsole[o].apply(console,n),this.addLog(o,n)}}),this.totalCount=0,this.isPatched=!0)}addLog(o,n){const f={id:Math.random().toString(36).slice(2),type:o,args:n,timestamp:Date.now()};this.logs=[...this.logs.slice(-399),f],this.totalCount=this.totalCount+1,this.notify()}subscribe(o){return this.listeners.add(o),o(this.logs),()=>{this.listeners.delete(o)}}notify(){this.listeners.forEach(o=>o(this.logs))}getLogs(){return this.logs}getTotalCount(){return this.totalCount}clear(){this.logs=[],this.notify()}dispose(){this.isPatched&&(["log","info","warn","error"].forEach(o=>{console[o]=this.originalConsole[o]}),this.logs=[],this.totalCount=0,this.listeners.clear(),this.isPatched=!1)}}const a=new u;function x(i,o=2){const n=new WeakSet;return JSON.stringify(i,(f,e)=>{if(e===null||typeof e!="object")return e;if(n.has(e))return"[Circular]";if(n.add(e),typeof HTMLElement<"u"&&e instanceof HTMLElement){const l=e.id?`#${e.id}`:"",c=e.className?`.${e.className.split(" ").join(".")}`:"";return`<${e.tagName.toLowerCase()}${l}${c}>`}return e instanceof Error?{message:e.message,stack:e.stack}:e},o)}const y={log:"#d4d4d4",info:"#66e3f3",warn:"#ffe267",error:"#ff68ca"},s={container:{position:"fixed",bottom:0,left:0,width:"100%",height:"300px",backgroundColor:"#1e1e1e",color:"#d4d4d4",fontFamily:"monospace",fontSize:"12px",overflowY:"auto",zIndex:9999,borderTop:"1px solid #333",boxShadow:"0 -2px 10px rgba(0,0,0,0.3)"},header:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"4px 8px",backgroundColor:"#333",fontFamily:"system-ui",fontWeight:"700",position:"sticky",top:0},button:{marginLeft:8,backgroundColor:"#ffffff11",cursor:"pointer",padding:4},icon:{width:"14px",height:"14px",marginRight:"-4px"},logo:{width:"80px",height:"14px"},logRow:{padding:"4px 8px",borderBottom:"1px solid #333",whiteSpace:"pre-wrap",wordBreak:"break-all"},logTimestamp:{color:"#777",fontFamily:"monospace",marginRight:"1em"},milliSecond:{fontSize:"10px"},logArgs:{marginRight:"8px"},chiramiButton:{position:"fixed",bottom:"10px",right:"10px",zIndex:9999,padding:"0 8px",backgroundColor:"#333",opacity:"0.5",color:"#ccc",border:"none",borderRadius:"12px",boxShadow:"#00000033 1px 1px 2px 2px",cursor:"pointer",display:"flex",alignItems:"center",gap:"2px",fontWeight:"400"},buttonIcon:{width:"12px"},chiramiButtonCount:{color:"#f40",fontFamily:"monospace",fontWeight:"700"}};function h(i){return i.toString().padStart(2,"0")}function w(i){return i.toString().padStart(3,"0")}function m(i){const o=new Date(i.getTime());return t.jsxs(t.Fragment,{children:[t.jsx("span",{children:`${o.getFullYear()}-${h(o.getMonth()+1)}-${h(o.getDay())} ${h(o.getHours())}:${h(o.getMinutes())}:${h(o.getSeconds())}`}),t.jsxs("span",{style:s.milliSecond,children:[".",w(o.getMilliseconds())]})]})}const C=()=>{const[i,o]=d.useState([]),[n,f]=d.useState(!1),e=d.useRef(null);return d.useEffect(()=>{a.init();const l=a.subscribe(c=>{o(c)});return()=>l()},[]),d.useEffect(()=>{n&&e.current&&e.current.scrollIntoView({behavior:"smooth"})},[i,n]),n?t.jsxs("div",{style:s.container,children:[t.jsxs("div",{style:s.header,children:[t.jsxs("span",{children:[t.jsx(p,{style:s.icon}),t.jsx(g,{style:s.logo})," (",a.getTotalCount(),")"]}),t.jsxs("div",{children:[t.jsx("button",{onClick:()=>a.clear(),style:s.button,children:"Clear"}),t.jsx("button",{onClick:()=>f(!1),style:s.button,children:"Close ▼"})]})]}),t.jsxs("div",{style:{textAlign:"left"},children:[i.map(l=>t.jsxs("div",{style:{...s.logRow,color:y[l.type]},children:[t.jsx("span",{style:s.logTimestamp,children:m(new Date(l.timestamp))}),l.args.map((c,b)=>t.jsx("span",{style:s.logArgs,children:typeof c=="object"?x(c):String(c)},`log-args-${b}`))]},l.id)),t.jsx("div",{ref:e})]})]}):t.jsxs("button",{style:s.chiramiButton,onClick:()=>f(!0),children:[t.jsx(p,{style:s.buttonIcon}),t.jsx("span",{style:s.chiramiButtonCount,children:a.getTotalCount()})]})};r.ChiramiViewer=C,r.chiramiStore=a,Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})}));
@@ -0,0 +1,2 @@
1
+ import { default as React } from 'react';
2
+ export declare const ChiramiViewer: React.FC;
@@ -0,0 +1,21 @@
1
+ import { default as React } from 'react';
2
+ export declare const typeColors: {
3
+ log: string;
4
+ info: string;
5
+ warn: string;
6
+ error: string;
7
+ };
8
+ export declare const styles: {
9
+ container: React.CSSProperties;
10
+ header: React.CSSProperties;
11
+ button: React.CSSProperties;
12
+ icon: React.CSSProperties;
13
+ logo: React.CSSProperties;
14
+ logRow: React.CSSProperties;
15
+ logTimestamp: React.CSSProperties;
16
+ milliSecond: React.CSSProperties;
17
+ logArgs: React.CSSProperties;
18
+ chiramiButton: React.CSSProperties;
19
+ buttonIcon: React.CSSProperties;
20
+ chiramiButtonCount: React.CSSProperties;
21
+ };
File without changes
@@ -0,0 +1,25 @@
1
+ export type LogType = 'log' | 'info' | 'warn' | 'error';
2
+ export interface LogItem {
3
+ id: string;
4
+ type: LogType;
5
+ args: any[];
6
+ timestamp: number;
7
+ }
8
+ type Listener = (logs: LogItem[]) => void;
9
+ declare class ChiramiStore {
10
+ private logs;
11
+ private totalCount;
12
+ private listeners;
13
+ private originalConsole;
14
+ private isPatched;
15
+ init(): void;
16
+ private addLog;
17
+ subscribe(listener: Listener): () => void;
18
+ private notify;
19
+ getLogs(): LogItem[];
20
+ getTotalCount(): number;
21
+ clear(): void;
22
+ dispose(): void;
23
+ }
24
+ export declare const chiramiStore: ChiramiStore;
25
+ export {};
@@ -0,0 +1,3 @@
1
+ export { ChiramiViewer } from './components/ChiramiViewer';
2
+ export { chiramiStore } from './core/ChiramiStore';
3
+ export type { LogItem, LogType } from './core/ChiramiStore';
@@ -0,0 +1,2 @@
1
+ export declare function pad(n: number): string;
2
+ export declare function pad3(n: number): string;
@@ -0,0 +1 @@
1
+ export declare function safeStringify(value: any, space?: number): string;
@@ -0,0 +1,2 @@
1
+ import { ReactElement } from 'react';
2
+ export declare function toTimestamp(date: Date): ReactElement;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chirami",
3
- "version": "0.0.3",
3
+ "version": "0.0.6",
4
4
  "license": "MIT",
5
5
  "keywords": [
6
6
  "react",
@@ -26,15 +26,16 @@
26
26
  },
27
27
  "scripts": {
28
28
  "dev": "vite --open",
29
- "build": "tsc && vite build",
29
+ "build": "tsc -p tsconfig.build.json && vite build",
30
+ "test": "vitest",
30
31
  "preview": "vite preview"
31
32
  },
32
- "dependencies": {
33
- "react": "^19.2.0",
34
- "react-dom": "^19.2.0"
35
- },
36
33
  "devDependencies": {
37
34
  "@eslint/js": "^9.39.1",
35
+ "@testing-library/dom": "^10.4.1",
36
+ "@testing-library/jest-dom": "^6.9.1",
37
+ "@testing-library/react": "^16.3.2",
38
+ "@testing-library/user-event": "^14.6.1",
38
39
  "@types/node": "^24.10.13",
39
40
  "@types/react": "^19.2.7",
40
41
  "@types/react-dom": "^19.2.3",
@@ -43,9 +44,13 @@
43
44
  "eslint-plugin-react-hooks": "^7.0.1",
44
45
  "eslint-plugin-react-refresh": "^0.4.24",
45
46
  "globals": "^16.5.0",
47
+ "jsdom": "^28.0.0",
48
+ "react": "^19.2.4",
49
+ "react-dom": "^19.2.4",
46
50
  "typescript": "~5.9.3",
47
51
  "typescript-eslint": "^8.48.0",
48
52
  "vite": "^7.3.1",
49
- "vite-plugin-dts": "^4.5.4"
53
+ "vite-plugin-dts": "^4.5.4",
54
+ "vitest": "^4.0.18"
50
55
  }
51
56
  }