quikchat 1.2.4 → 1.2.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.
Files changed (41) hide show
  1. package/README.md +2 -2
  2. package/dist/build-manifest.json +73 -80
  3. package/dist/quikchat-md-full.cjs.js +536 -255
  4. package/dist/quikchat-md-full.cjs.js.map +1 -1
  5. package/dist/quikchat-md-full.cjs.min.js +3 -3
  6. package/dist/quikchat-md-full.cjs.min.js.map +1 -1
  7. package/dist/quikchat-md-full.esm.js +536 -255
  8. package/dist/quikchat-md-full.esm.js.map +1 -1
  9. package/dist/quikchat-md-full.esm.min.js +3 -3
  10. package/dist/quikchat-md-full.esm.min.js.map +1 -1
  11. package/dist/quikchat-md-full.umd.js +536 -255
  12. package/dist/quikchat-md-full.umd.js.map +1 -1
  13. package/dist/quikchat-md-full.umd.min.js +3 -3
  14. package/dist/quikchat-md-full.umd.min.js.map +1 -1
  15. package/dist/quikchat-md.cjs.js +520 -245
  16. package/dist/quikchat-md.cjs.js.map +1 -1
  17. package/dist/quikchat-md.cjs.min.js +3 -3
  18. package/dist/quikchat-md.cjs.min.js.map +1 -1
  19. package/dist/quikchat-md.esm.js +520 -245
  20. package/dist/quikchat-md.esm.js.map +1 -1
  21. package/dist/quikchat-md.esm.min.js +3 -3
  22. package/dist/quikchat-md.esm.min.js.map +1 -1
  23. package/dist/quikchat-md.umd.js +520 -245
  24. package/dist/quikchat-md.umd.js.map +1 -1
  25. package/dist/quikchat-md.umd.min.js +3 -3
  26. package/dist/quikchat-md.umd.min.js.map +1 -1
  27. package/dist/quikchat.cjs.js +2 -2
  28. package/dist/quikchat.cjs.js.map +1 -1
  29. package/dist/quikchat.cjs.min.js +1 -1
  30. package/dist/quikchat.cjs.min.js.map +1 -1
  31. package/dist/quikchat.css +351 -120
  32. package/dist/quikchat.esm.js +2 -2
  33. package/dist/quikchat.esm.js.map +1 -1
  34. package/dist/quikchat.esm.min.js +1 -1
  35. package/dist/quikchat.esm.min.js.map +1 -1
  36. package/dist/quikchat.min.css +1 -1
  37. package/dist/quikchat.umd.js +2 -2
  38. package/dist/quikchat.umd.js.map +1 -1
  39. package/dist/quikchat.umd.min.js +1 -1
  40. package/dist/quikchat.umd.min.js.map +1 -1
  41. package/package.json +6 -5
package/README.md CHANGED
@@ -48,7 +48,7 @@ That's a working streaming LLM chat in one file — no bundler, no framework, no
48
48
  - **Typing indicator** — animated "..." dots that auto-clear when streaming begins
49
49
  - **Markdown support** — three tiers: base (no markdown), `-md` (basic markdown via [quikdown](https://github.com/deftio/quikdown)), `-md-full` (syntax highlighting, math, diagrams, maps — loaded on demand from CDN)
50
50
  - **HTML sanitization** — built-in XSS protection or plug in your own sanitizer
51
- - **Themeable** — 8 built-in CSS themes (light, dark, blue, warm, midnight, ocean, modern, debug) or write your own
51
+ - **Themeable** — 11 built-in CSS themes (light, dark, blue, warm, midnight, ocean, modern, glass, gradient, minimal, debug) or write your own
52
52
  - **Multi-user** — multiple users per chat, multiple independent chats per page
53
53
  - **Message visibility & tagging** — hide system prompts and tool-call results from the UI while keeping them in history for LLM context
54
54
  - **History export / import** — save and restore complete chat sessions (`historyExport()` / `historyImport()`)
@@ -205,7 +205,7 @@ Examples include: basic UMD/ESM usage, theme switching, dual chatrooms, markdown
205
205
  | **Base** (`quikchat.umd.min.js`) | Chat widget, zero deps | None |
206
206
  | **Markdown** (`quikchat-md.umd.min.js`) | + bold, italic, code, tables, lists | None |
207
207
  | **Full** (`quikchat-md-full.umd.min.js`) | + syntax highlighting, math, diagrams, maps | CDN on demand |
208
- | **CSS** (`quikchat.css`) | All 8 themes | None |
208
+ | **CSS** (`quikchat.css`) | All 11 themes | None |
209
209
 
210
210
  All builds are also available in ESM and CJS formats with sourcemaps. See the [downloads page](https://deftio.github.io/quikchat/site/downloads.html) for exact sizes, SRI hashes, and CDN links.
211
211
 
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "1.2.4",
3
- "generated": "2026-04-04T20:06:22.609Z",
2
+ "version": "1.2.6",
3
+ "generated": "2026-04-20T04:05:17.743Z",
4
4
  "builds": [
5
5
  {
6
6
  "id": "base",
@@ -12,49 +12,49 @@
12
12
  "format": "UMD",
13
13
  "raw": "quikchat.umd.js",
14
14
  "min": "quikchat.umd.min.js",
15
- "rawBytes": 33197,
16
- "minBytes": 17502,
17
- "gzipBytes": 4886,
18
- "rawSize": "32.42 KB",
19
- "minSize": "17.09 KB",
20
- "gzipSize": "4.77 KB",
21
- "sri": "sha384-HQyJgwhzkD0acTCjwR7zztCSy7vwf5wbYp70KrpWRm2yERA5fs6JaZGzBlzIVy+I"
15
+ "rawBytes": 33115,
16
+ "minBytes": 17417,
17
+ "gzipBytes": 4846,
18
+ "rawSize": "32.34 KB",
19
+ "minSize": "17.01 KB",
20
+ "gzipSize": "4.73 KB",
21
+ "sri": "sha384-NamQg4QPdOymZnlXQwkHrSrNMn014Ko+xOK1V/Q2/fKkqUgGd03BV5hIwP/sbv8f"
22
22
  },
23
23
  {
24
24
  "format": "CJS",
25
25
  "raw": "quikchat.cjs.js",
26
26
  "min": "quikchat.cjs.min.js",
27
- "rawBytes": 31085,
28
- "minBytes": 17287,
29
- "gzipBytes": 4817,
30
- "rawSize": "30.36 KB",
31
- "minSize": "16.88 KB",
32
- "gzipSize": "4.70 KB",
33
- "sri": "sha384-fvOoFR3OCfLmwu35fiD4+hIK6FGxpU50HVGmvXXugUGppnkvyQTN+YAgy3PMDmHd"
27
+ "rawBytes": 31003,
28
+ "minBytes": 17202,
29
+ "gzipBytes": 4778,
30
+ "rawSize": "30.28 KB",
31
+ "minSize": "16.80 KB",
32
+ "gzipSize": "4.67 KB",
33
+ "sri": "sha384-OrMbUwcaTwt6JOnMJt1nt5wKy4kzsGvKMh3Vj5eucEYuIXNTGTfy5E0fLvVGn+Ps"
34
34
  },
35
35
  {
36
36
  "format": "ESM",
37
37
  "raw": "quikchat.esm.js",
38
38
  "min": "quikchat.esm.min.js",
39
- "rawBytes": 31075,
40
- "minBytes": 17278,
41
- "gzipBytes": 4813,
42
- "rawSize": "30.35 KB",
43
- "minSize": "16.87 KB",
44
- "gzipSize": "4.70 KB",
45
- "sri": "sha384-O8OYDXEwVzDZd1hiGm9SthiyuD0oKPrfgE7jGG/6ZhY/MRahnsJyye2PbPRcBr+5"
39
+ "rawBytes": 30993,
40
+ "minBytes": 17193,
41
+ "gzipBytes": 4773,
42
+ "rawSize": "30.27 KB",
43
+ "minSize": "16.79 KB",
44
+ "gzipSize": "4.66 KB",
45
+ "sri": "sha384-K7KBg+8DlqPyiWBAjYIX29oIHyAAB2T4F8LZzuQrVNJM1pcwN/pbsbpixqtn1wdk"
46
46
  },
47
47
  {
48
48
  "format": "CSS",
49
49
  "raw": "quikchat.css",
50
50
  "min": "quikchat.min.css",
51
- "rawBytes": 21344,
52
- "minBytes": 15110,
53
- "gzipBytes": 2479,
54
- "rawSize": "20.84 KB",
55
- "minSize": "14.76 KB",
56
- "gzipSize": "2.42 KB",
57
- "sri": "sha384-GnOoGi8md5u5otyOQw6whG8+560AXWxskNqqkTKQYSrjd7/fqEFu+nHBL36lW7Dn"
51
+ "rawBytes": 28346,
52
+ "minBytes": 20572,
53
+ "gzipBytes": 3187,
54
+ "rawSize": "27.68 KB",
55
+ "minSize": "20.09 KB",
56
+ "gzipSize": "3.11 KB",
57
+ "sri": "sha384-x31ZP+sKmyuDQf5oyps6GK054U7aJoY5qsSDrCXl8TxkOJHT6GIs7sHXtp4oKj/F"
58
58
  }
59
59
  ]
60
60
  },
@@ -68,37 +68,37 @@
68
68
  "format": "UMD",
69
69
  "raw": "quikchat-md.umd.js",
70
70
  "min": "quikchat-md.umd.min.js",
71
- "rawBytes": 63180,
72
- "minBytes": 28095,
73
- "gzipBytes": 8707,
74
- "rawSize": "61.70 KB",
75
- "minSize": "27.44 KB",
76
- "gzipSize": "8.50 KB",
77
- "sri": "sha384-XOxP36QfDMuxBMmDKJp6wA0/NVXG+A5zWa0g9GSJHVmiB8ZDga0sDN5ILAg3GMDC"
71
+ "rawBytes": 80811,
72
+ "minBytes": 28568,
73
+ "gzipBytes": 8893,
74
+ "rawSize": "78.92 KB",
75
+ "minSize": "27.90 KB",
76
+ "gzipSize": "8.68 KB",
77
+ "sri": "sha384-VXGanV4Cb7faAB8zU43gnMHchw5Rq3cILG0ZclhR9Lm2TK5wgiyyElpiiWH6HSB5"
78
78
  },
79
79
  {
80
80
  "format": "CJS",
81
81
  "raw": "quikchat-md.cjs.js",
82
82
  "min": "quikchat-md.cjs.min.js",
83
- "rawBytes": 59664,
84
- "minBytes": 27868,
85
- "gzipBytes": 8637,
86
- "rawSize": "58.27 KB",
87
- "minSize": "27.21 KB",
88
- "gzipSize": "8.43 KB",
89
- "sri": "sha384-HEBWAN+nFWYw5xalcWEXctrOO043twBK0qEazYQBsx1YV1UIHXEvEMh2VW+bW1H5"
83
+ "rawBytes": 76919,
84
+ "minBytes": 28341,
85
+ "gzipBytes": 8823,
86
+ "rawSize": "75.12 KB",
87
+ "minSize": "27.68 KB",
88
+ "gzipSize": "8.62 KB",
89
+ "sri": "sha384-dxRHv50bbpwwAPKSDotvgeP7Qu6sImUGordj7IpEfxBhrtMW2/RxwSybatN5RNe0"
90
90
  },
91
91
  {
92
92
  "format": "ESM",
93
93
  "raw": "quikchat-md.esm.js",
94
94
  "min": "quikchat-md.esm.min.js",
95
- "rawBytes": 59654,
96
- "minBytes": 27859,
97
- "gzipBytes": 8638,
98
- "rawSize": "58.26 KB",
99
- "minSize": "27.21 KB",
100
- "gzipSize": "8.44 KB",
101
- "sri": "sha384-FxeypSY34JdH6ndHocWBv4OmG4om90MNCV6QyN5mGSNsJBdHnm6cjbTm5DjKZG2N"
95
+ "rawBytes": 76909,
96
+ "minBytes": 28332,
97
+ "gzipBytes": 8825,
98
+ "rawSize": "75.11 KB",
99
+ "minSize": "27.67 KB",
100
+ "gzipSize": "8.62 KB",
101
+ "sri": "sha384-s8ZB9Irx2RS2UNJRYg9l2t0P8cM2BujXLQwb7DDyRW6LjtdhdAxsKu4Fs4utKf4x"
102
102
  }
103
103
  ]
104
104
  },
@@ -112,46 +112,39 @@
112
112
  "format": "UMD",
113
113
  "raw": "quikchat-md-full.umd.js",
114
114
  "min": "quikchat-md-full.umd.min.js",
115
- "rawBytes": 107213,
116
- "minBytes": 44583,
117
- "gzipBytes": 14063,
118
- "rawSize": "104.70 KB",
119
- "minSize": "43.54 KB",
120
- "gzipSize": "13.73 KB",
121
- "sri": "sha384-SCqEKwwNNrbWcDDC+C6apgzpCMyE+9kAtodwSWFsqc7dSgiB8dMKUdgsx8UEYhIZ"
115
+ "rawBytes": 125241,
116
+ "minBytes": 45132,
117
+ "gzipBytes": 14280,
118
+ "rawSize": "122.31 KB",
119
+ "minSize": "44.07 KB",
120
+ "gzipSize": "13.95 KB",
121
+ "sri": "sha384-2dRmdOJzLKWhFxyzFbctBDovq1kZgaPBnMj1g8O6An/mLqi3UrITvGRD89Cpaonb"
122
122
  },
123
123
  {
124
124
  "format": "CJS",
125
125
  "raw": "quikchat-md-full.cjs.js",
126
126
  "min": "quikchat-md-full.cjs.min.js",
127
- "rawBytes": 101525,
128
- "minBytes": 44356,
129
- "gzipBytes": 13997,
130
- "rawSize": "99.15 KB",
131
- "minSize": "43.32 KB",
132
- "gzipSize": "13.67 KB",
133
- "sri": "sha384-8AZywird+70s7iTN9GxFIf/oUiMOiPodPhj7ORx+/FOwETcKDo6kHIsk3kZzRHiA"
127
+ "rawBytes": 119165,
128
+ "minBytes": 44905,
129
+ "gzipBytes": 14214,
130
+ "rawSize": "116.37 KB",
131
+ "minSize": "43.85 KB",
132
+ "gzipSize": "13.88 KB",
133
+ "sri": "sha384-D+XD9IV6jDdcO/WlNVabQ5rlpPgmkNcQSnZV4o86/8SieJ2LfDF/sBrsFVRJJh5j"
134
134
  },
135
135
  {
136
136
  "format": "ESM",
137
137
  "raw": "quikchat-md-full.esm.js",
138
138
  "min": "quikchat-md-full.esm.min.js",
139
- "rawBytes": 101515,
140
- "minBytes": 44347,
141
- "gzipBytes": 13995,
142
- "rawSize": "99.14 KB",
143
- "minSize": "43.31 KB",
144
- "gzipSize": "13.67 KB",
145
- "sri": "sha384-q7xCwu4Z7vWZaLs7GJzlcx9DHcEDZDkTkez8vAA4KJwjl7xtwuhYCxWcGZf60bir"
139
+ "rawBytes": 119155,
140
+ "minBytes": 44896,
141
+ "gzipBytes": 14212,
142
+ "rawSize": "116.36 KB",
143
+ "minSize": "43.84 KB",
144
+ "gzipSize": "13.88 KB",
145
+ "sri": "sha384-xlOEkcgiZiWTurpVc5nV4cz2y0W4pQmY9gAOR9to1+vWtezxQ7UGnP1eyO1X7U9w"
146
146
  }
147
147
  ]
148
148
  }
149
- ],
150
- "coverage": {
151
- "statements": 100,
152
- "branches": 98.13,
153
- "functions": 97.46,
154
- "lines": 100,
155
- "badge": "https://img.shields.io/badge/coverage-97.46%25-brightgreen.svg"
156
- }
149
+ ]
157
150
  }