@nadicodeai/ui 12.1.32 → 12.1.33

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 (188) hide show
  1. package/README.md +6 -0
  2. package/dist/assets/brand/aionlabs.svg +1 -1
  3. package/dist/assets/brand/airtable.svg +1 -1
  4. package/dist/assets/brand/apple.svg +1 -1
  5. package/dist/assets/brand/arcee.svg +1 -1
  6. package/dist/assets/brand/asana.svg +1 -1
  7. package/dist/assets/brand/atlassian.svg +1 -1
  8. package/dist/assets/brand/baidu.svg +1 -1
  9. package/dist/assets/brand/bytedance.svg +1 -1
  10. package/dist/assets/brand/claude.svg +1 -1
  11. package/dist/assets/brand/cohere.svg +1 -1
  12. package/dist/assets/brand/datadog.svg +1 -1
  13. package/dist/assets/brand/deepseek.svg +1 -1
  14. package/dist/assets/brand/discord.svg +1 -1
  15. package/dist/assets/brand/dolphin.svg +1 -1
  16. package/dist/assets/brand/dotsstudio.svg +1 -1
  17. package/dist/assets/brand/figma.svg +1 -1
  18. package/dist/assets/brand/gemini.svg +1 -1
  19. package/dist/assets/brand/github.svg +1 -1
  20. package/dist/assets/brand/gitlab.svg +1 -1
  21. package/dist/assets/brand/gmail.svg +1 -1
  22. package/dist/assets/brand/google-calendar.svg +1 -1
  23. package/dist/assets/brand/google-drive.svg +1 -1
  24. package/dist/assets/brand/grok.svg +1 -1
  25. package/dist/assets/brand/huggingface.svg +1 -1
  26. package/dist/assets/brand/ibm.svg +1 -1
  27. package/dist/assets/brand/inception.svg +1 -1
  28. package/dist/assets/brand/inference.svg +1 -1
  29. package/dist/assets/brand/intercom.svg +1 -1
  30. package/dist/assets/brand/jira.svg +1 -1
  31. package/dist/assets/brand/kwaipilot.svg +1 -1
  32. package/dist/assets/brand/linear.svg +1 -1
  33. package/dist/assets/brand/linux.svg +1 -1
  34. package/dist/assets/brand/liquid.svg +1 -1
  35. package/dist/assets/brand/longcat.svg +1 -1
  36. package/dist/assets/brand/mattermost.svg +1 -1
  37. package/dist/assets/brand/meta.svg +1 -1
  38. package/dist/assets/brand/microsoft.svg +1 -1
  39. package/dist/assets/brand/minimax.svg +1 -1
  40. package/dist/assets/brand/mistral.svg +1 -1
  41. package/dist/assets/brand/moonshot.svg +1 -1
  42. package/dist/assets/brand/morph.svg +1 -1
  43. package/dist/assets/brand/n8n.svg +1 -1
  44. package/dist/assets/brand/netlify.svg +1 -1
  45. package/dist/assets/brand/nexagi.svg +1 -1
  46. package/dist/assets/brand/notion.svg +1 -1
  47. package/dist/assets/brand/nousresearch.svg +1 -1
  48. package/dist/assets/brand/nova.svg +1 -1
  49. package/dist/assets/brand/nvidia.svg +1 -1
  50. package/dist/assets/brand/openai.svg +1 -1
  51. package/dist/assets/brand/openrouter.svg +1 -1
  52. package/dist/assets/brand/paypal.svg +1 -1
  53. package/dist/assets/brand/perceptron.svg +1 -1
  54. package/dist/assets/brand/perplexity.svg +1 -1
  55. package/dist/assets/brand/poolside.svg +1 -1
  56. package/dist/assets/brand/postgresql.svg +1 -1
  57. package/dist/assets/brand/qwen.svg +1 -1
  58. package/dist/assets/brand/reka.svg +1 -1
  59. package/dist/assets/brand/relace.svg +1 -1
  60. package/dist/assets/brand/sakana.svg +1 -1
  61. package/dist/assets/brand/sentry.svg +1 -1
  62. package/dist/assets/brand/signal.svg +1 -1
  63. package/dist/assets/brand/slack.svg +1 -1
  64. package/dist/assets/brand/spotify.svg +1 -1
  65. package/dist/assets/brand/square.svg +1 -1
  66. package/dist/assets/brand/stepfun.svg +1 -1
  67. package/dist/assets/brand/stripe.svg +1 -1
  68. package/dist/assets/brand/supabase.svg +1 -1
  69. package/dist/assets/brand/telegram.svg +1 -1
  70. package/dist/assets/brand/tencent.svg +1 -1
  71. package/dist/assets/brand/the-drummer.svg +1 -1
  72. package/dist/assets/brand/todoist.svg +1 -1
  73. package/dist/assets/brand/unreal-engine.svg +1 -1
  74. package/dist/assets/brand/upstage.svg +1 -1
  75. package/dist/assets/brand/vercel.svg +1 -1
  76. package/dist/assets/brand/webflow.svg +1 -1
  77. package/dist/assets/brand/whatsapp.svg +1 -1
  78. package/dist/assets/brand/windows.svg +1 -1
  79. package/dist/assets/brand/xiaomimimo.svg +1 -1
  80. package/dist/assets/brand/youtube.svg +1 -1
  81. package/dist/assets/brand/yuanbao.svg +1 -1
  82. package/dist/assets/brand/zai.svg +1 -1
  83. package/dist/assets/brand/zapier.svg +1 -1
  84. package/dist/components/app-mark-frame.d.ts +34 -0
  85. package/dist/components/app-mark-frame.d.ts.map +1 -0
  86. package/dist/components/app-mark-frame.js +37 -0
  87. package/dist/components/app-mark-lazy/server.d.ts +4 -0
  88. package/dist/components/app-mark-lazy/server.d.ts.map +1 -0
  89. package/dist/components/app-mark-lazy/server.js +8 -0
  90. package/dist/components/app-mark-lazy.d.ts +16 -0
  91. package/dist/components/app-mark-lazy.d.ts.map +1 -0
  92. package/dist/components/app-mark-lazy.js +84 -0
  93. package/dist/components/app-mark.d.ts +6 -15
  94. package/dist/components/app-mark.d.ts.map +1 -1
  95. package/dist/components/app-mark.js +7 -21
  96. package/dist/components/brand-icons/aionlabs.d.ts.map +1 -1
  97. package/dist/components/brand-icons/aionlabs.js +1 -1
  98. package/dist/components/brand-icons/airtable.js +1 -1
  99. package/dist/components/brand-icons/apple.js +1 -1
  100. package/dist/components/brand-icons/arcee.js +1 -1
  101. package/dist/components/brand-icons/asana.js +1 -1
  102. package/dist/components/brand-icons/atlassian.js +1 -1
  103. package/dist/components/brand-icons/baidu.js +1 -1
  104. package/dist/components/brand-icons/bytedance.js +1 -1
  105. package/dist/components/brand-icons/claude.js +1 -1
  106. package/dist/components/brand-icons/cohere.js +1 -1
  107. package/dist/components/brand-icons/datadog.js +1 -1
  108. package/dist/components/brand-icons/deepseek.js +1 -1
  109. package/dist/components/brand-icons/discord.js +1 -1
  110. package/dist/components/brand-icons/dolphin.js +1 -1
  111. package/dist/components/brand-icons/dotsstudio.js +1 -1
  112. package/dist/components/brand-icons/figma.d.ts.map +1 -1
  113. package/dist/components/brand-icons/figma.js +1 -1
  114. package/dist/components/brand-icons/gemini.js +1 -1
  115. package/dist/components/brand-icons/github.js +1 -1
  116. package/dist/components/brand-icons/gitlab.js +1 -1
  117. package/dist/components/brand-icons/gmail.js +1 -1
  118. package/dist/components/brand-icons/google-calendar.js +1 -1
  119. package/dist/components/brand-icons/google-drive.js +1 -1
  120. package/dist/components/brand-icons/grok.js +1 -1
  121. package/dist/components/brand-icons/huggingface.js +1 -1
  122. package/dist/components/brand-icons/ibm.js +1 -1
  123. package/dist/components/brand-icons/inception.js +1 -1
  124. package/dist/components/brand-icons/inference.js +1 -1
  125. package/dist/components/brand-icons/intercom.js +1 -1
  126. package/dist/components/brand-icons/jira.js +1 -1
  127. package/dist/components/brand-icons/kwaipilot.js +1 -1
  128. package/dist/components/brand-icons/linear.js +1 -1
  129. package/dist/components/brand-icons/linux.js +1 -1
  130. package/dist/components/brand-icons/liquid.js +1 -1
  131. package/dist/components/brand-icons/longcat.js +1 -1
  132. package/dist/components/brand-icons/mattermost.js +1 -1
  133. package/dist/components/brand-icons/meta.js +1 -1
  134. package/dist/components/brand-icons/microsoft.js +1 -1
  135. package/dist/components/brand-icons/minimax.js +1 -1
  136. package/dist/components/brand-icons/mistral.d.ts.map +1 -1
  137. package/dist/components/brand-icons/mistral.js +1 -1
  138. package/dist/components/brand-icons/moonshot.js +1 -1
  139. package/dist/components/brand-icons/morph.js +1 -1
  140. package/dist/components/brand-icons/n8n.js +1 -1
  141. package/dist/components/brand-icons/netlify.js +1 -1
  142. package/dist/components/brand-icons/nexagi.js +1 -1
  143. package/dist/components/brand-icons/notion.js +1 -1
  144. package/dist/components/brand-icons/nousresearch.js +1 -1
  145. package/dist/components/brand-icons/nova.js +1 -1
  146. package/dist/components/brand-icons/nvidia.js +1 -1
  147. package/dist/components/brand-icons/openai.js +1 -1
  148. package/dist/components/brand-icons/openrouter.js +1 -1
  149. package/dist/components/brand-icons/paypal.js +1 -1
  150. package/dist/components/brand-icons/perceptron.js +1 -1
  151. package/dist/components/brand-icons/perplexity.js +1 -1
  152. package/dist/components/brand-icons/poolside.js +1 -1
  153. package/dist/components/brand-icons/postgresql.js +1 -1
  154. package/dist/components/brand-icons/qwen.js +1 -1
  155. package/dist/components/brand-icons/reka.js +1 -1
  156. package/dist/components/brand-icons/relace.js +1 -1
  157. package/dist/components/brand-icons/sakana.js +1 -1
  158. package/dist/components/brand-icons/sentry.js +1 -1
  159. package/dist/components/brand-icons/signal.js +1 -1
  160. package/dist/components/brand-icons/slack.js +1 -1
  161. package/dist/components/brand-icons/spotify.js +1 -1
  162. package/dist/components/brand-icons/square.js +1 -1
  163. package/dist/components/brand-icons/stepfun.js +1 -1
  164. package/dist/components/brand-icons/stripe.js +1 -1
  165. package/dist/components/brand-icons/supabase.js +1 -1
  166. package/dist/components/brand-icons/telegram.js +1 -1
  167. package/dist/components/brand-icons/tencent.js +1 -1
  168. package/dist/components/brand-icons/the-drummer.js +2 -2
  169. package/dist/components/brand-icons/todoist.js +1 -1
  170. package/dist/components/brand-icons/unreal-engine.js +1 -1
  171. package/dist/components/brand-icons/upstage.js +1 -1
  172. package/dist/components/brand-icons/vercel.js +1 -1
  173. package/dist/components/brand-icons/webflow.js +1 -1
  174. package/dist/components/brand-icons/whatsapp.js +1 -1
  175. package/dist/components/brand-icons/windows.js +1 -1
  176. package/dist/components/brand-icons/xiaomimimo.js +1 -1
  177. package/dist/components/brand-icons/youtube.js +1 -1
  178. package/dist/components/brand-icons/yuanbao.js +1 -1
  179. package/dist/components/brand-icons/zai.js +1 -1
  180. package/dist/components/brand-icons/zapier.js +1 -1
  181. package/dist/components/chart-date-range-control.d.ts.map +1 -1
  182. package/dist/components/chart-date-range-control.js +7 -2
  183. package/dist/index.d.ts +2 -0
  184. package/dist/index.d.ts.map +1 -1
  185. package/dist/index.js +2 -0
  186. package/dist/internal/agent-orb.d.ts.map +1 -1
  187. package/dist/internal/agent-orb.js +21 -5
  188. package/package.json +8 -2
@@ -26,6 +26,8 @@ const presenceWeights = {
26
26
  * tricolore stays visible on a white ground as ink.
27
27
  */
28
28
  const nadiaStripes = ["--nc-identity-azzurro", "--nc-identity-verde", null, "--nc-identity-rosso"];
29
+ const celebrationTokens = ["--nc-chart-5", "--nc-chart-6", "--nc-warning", "--nc-chart-4"];
30
+ const appearanceTokens = [...celebrationTokens, ...nadiaStripes.filter((token) => token !== null)];
29
31
  /** A stable direction on the unit sphere, the vendor's Fibonacci lattice. */
30
32
  function fibonacci(i, n) {
31
33
  const y = 1 - (2 * (i + 0.5)) / n;
@@ -159,6 +161,7 @@ export function mountAgentOrb(canvas, options) {
159
161
  let color = getComputedStyle(canvas).color;
160
162
  let celebrationColors = [color];
161
163
  let stripeColors = [color];
164
+ let appearanceKey = "";
162
165
  /**
163
166
  * The box the orb is displayed at, in CSS pixels. A canvas stretched by
164
167
  * layout reads as pixels unless the engine paints at that size, so the box
@@ -244,6 +247,18 @@ export function mountAgentOrb(canvas, options) {
244
247
  probe.remove();
245
248
  return resolved || color;
246
249
  }
250
+ function readAppearanceKey(appearance, side) {
251
+ return [
252
+ side,
253
+ window.devicePixelRatio || 1,
254
+ appearance.color,
255
+ ...appearanceTokens.map((token) => appearance.getPropertyValue(token)),
256
+ ].join("|");
257
+ }
258
+ function refreshIfChanged() {
259
+ if (readAppearanceKey(getComputedStyle(canvas), measure()) !== appearanceKey)
260
+ refresh();
261
+ }
247
262
  function refresh() {
248
263
  painted = measure();
249
264
  const backing = Math.max(1, Math.round(painted * Math.min(window.devicePixelRatio || 1, 2)));
@@ -251,8 +266,9 @@ export function mountAgentOrb(canvas, options) {
251
266
  canvas.height = backing;
252
267
  ratio = backing / painted;
253
268
  const appearance = getComputedStyle(canvas);
269
+ appearanceKey = readAppearanceKey(appearance, painted);
254
270
  color = appearance.color;
255
- celebrationColors = ["--nc-chart-5", "--nc-chart-6", "--nc-warning", "--nc-chart-4"].map((token) => computedColor(`color-mix(in oklch, ${appearance.getPropertyValue(token).trim() || color} 75%, white)`));
271
+ celebrationColors = celebrationTokens.map((token) => computedColor(`color-mix(in oklch, ${appearance.getPropertyValue(token).trim() || color} 75%, white)`));
256
272
  stripeColors = nadiaStripes.map((token) => (token && appearance.getPropertyValue(token).trim()) || color);
257
273
  play();
258
274
  }
@@ -261,7 +277,7 @@ export function mountAgentOrb(canvas, options) {
261
277
  play();
262
278
  });
263
279
  visibility.observe(canvas);
264
- const appearance = new MutationObserver(refresh);
280
+ const appearance = new MutationObserver(refreshIfChanged);
265
281
  for (let ancestor = canvas; ancestor; ancestor = ancestor.parentElement) {
266
282
  appearance.observe(ancestor, {
267
283
  attributes: true,
@@ -283,12 +299,12 @@ export function mountAgentOrb(canvas, options) {
283
299
  if (event.propertyName === "color" &&
284
300
  event.target instanceof Node &&
285
301
  event.target.contains(canvas))
286
- refresh();
302
+ refreshIfChanged();
287
303
  }
288
304
  document.addEventListener("transitionend", settle, true);
289
305
  motion.addEventListener("change", play);
290
306
  document.addEventListener("visibilitychange", play);
291
- window.addEventListener("resize", refresh);
307
+ window.addEventListener("resize", refreshIfChanged);
292
308
  refresh();
293
309
  return {
294
310
  setState(value) {
@@ -310,7 +326,7 @@ export function mountAgentOrb(canvas, options) {
310
326
  document.removeEventListener("transitionend", settle, true);
311
327
  motion.removeEventListener("change", play);
312
328
  document.removeEventListener("visibilitychange", play);
313
- window.removeEventListener("resize", refresh);
329
+ window.removeEventListener("resize", refreshIfChanged);
314
330
  },
315
331
  };
316
332
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nadicodeai/ui",
3
- "version": "12.1.32",
3
+ "version": "12.1.33",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -40,6 +40,11 @@
40
40
  "types": "./dist/lib/format-token-count.d.ts",
41
41
  "import": "./dist/lib/format-token-count.js"
42
42
  },
43
+ "./components/app-mark-lazy": {
44
+ "types": "./dist/components/app-mark-lazy.d.ts",
45
+ "browser": "./dist/components/app-mark-lazy.js",
46
+ "import": "./dist/components/app-mark-lazy/server.js"
47
+ },
43
48
  "./components/*": {
44
49
  "types": "./dist/components/*.d.ts",
45
50
  "import": "./dist/components/*.js"
@@ -72,7 +77,7 @@
72
77
  "@assistant-ui/react": "0.15.21",
73
78
  "@assistant-ui/react-markdown": "0.14.16",
74
79
  "@base-ui/react": "^1.8.0",
75
- "@nadicodeai/design-system": "12.1.32",
80
+ "@nadicodeai/design-system": "12.1.33",
76
81
  "class-variance-authority": "^0.7.1",
77
82
  "clsx": "^2.1.1",
78
83
  "cmdk": "^1.1.1",
@@ -118,6 +123,7 @@
118
123
  "react": "19.3.0",
119
124
  "react-dom": "19.3.0",
120
125
  "shadcn": "4.21.0",
126
+ "svgo": "^4.1.0",
121
127
  "tailwindcss": "^4.3.3",
122
128
  "typescript": "^6",
123
129
  "vitest": "^5.0.0"