@q9labsai/chalk-react 4.1.0 → 4.1.1

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 (241) hide show
  1. package/README.md +47 -5
  2. package/THIRD_PARTY_NOTICES.md +27 -0
  3. package/dist/chunk-23JGE2HF.js +12657 -0
  4. package/dist/components/admission-panel/AdmissionPanel.d.ts.map +1 -1
  5. package/dist/components/admission-panel/ClassicAdmissionPanel.d.ts +7 -0
  6. package/dist/components/admission-panel/ClassicAdmissionPanel.d.ts.map +1 -0
  7. package/dist/components/atomic/AudioIndicator.d.ts +1 -1
  8. package/dist/components/atomic/AudioIndicator.d.ts.map +1 -1
  9. package/dist/components/atomic/Avatar.d.ts +1 -1
  10. package/dist/components/atomic/Avatar.d.ts.map +1 -1
  11. package/dist/components/atomic/CaptionLine.d.ts.map +1 -1
  12. package/dist/components/atomic/ClassicAudioIndicator.d.ts +11 -0
  13. package/dist/components/atomic/ClassicAudioIndicator.d.ts.map +1 -0
  14. package/dist/components/atomic/ClassicAvatar.d.ts +4 -0
  15. package/dist/components/atomic/ClassicAvatar.d.ts.map +1 -0
  16. package/dist/components/atomic/ClassicCaptionLine.d.ts +4 -0
  17. package/dist/components/atomic/ClassicCaptionLine.d.ts.map +1 -0
  18. package/dist/components/atomic/ClassicConnectionQuality.d.ts +4 -0
  19. package/dist/components/atomic/ClassicConnectionQuality.d.ts.map +1 -0
  20. package/dist/components/atomic/ClassicHandRaiseIndicator.d.ts +11 -0
  21. package/dist/components/atomic/ClassicHandRaiseIndicator.d.ts.map +1 -0
  22. package/dist/components/atomic/ClassicNameTag.d.ts +4 -0
  23. package/dist/components/atomic/ClassicNameTag.d.ts.map +1 -0
  24. package/dist/components/atomic/ClassicReactionBubble.d.ts +11 -0
  25. package/dist/components/atomic/ClassicReactionBubble.d.ts.map +1 -0
  26. package/dist/components/atomic/ClassicReleaseBadge.d.ts +4 -0
  27. package/dist/components/atomic/ClassicReleaseBadge.d.ts.map +1 -0
  28. package/dist/components/atomic/ClassicStatusBadge.d.ts +4 -0
  29. package/dist/components/atomic/ClassicStatusBadge.d.ts.map +1 -0
  30. package/dist/components/atomic/ClassicTourTooltip.d.ts +4 -0
  31. package/dist/components/atomic/ClassicTourTooltip.d.ts.map +1 -0
  32. package/dist/components/atomic/ClassicTranscriptLine.d.ts +4 -0
  33. package/dist/components/atomic/ClassicTranscriptLine.d.ts.map +1 -0
  34. package/dist/components/atomic/ClassicVolumeSlider.d.ts +4 -0
  35. package/dist/components/atomic/ClassicVolumeSlider.d.ts.map +1 -0
  36. package/dist/components/atomic/ClassicWaveform.d.ts +4 -0
  37. package/dist/components/atomic/ClassicWaveform.d.ts.map +1 -0
  38. package/dist/components/atomic/ClassicWhatsNewTrigger.d.ts +4 -0
  39. package/dist/components/atomic/ClassicWhatsNewTrigger.d.ts.map +1 -0
  40. package/dist/components/atomic/ConnectionQuality.d.ts +1 -1
  41. package/dist/components/atomic/ConnectionQuality.d.ts.map +1 -1
  42. package/dist/components/atomic/HandRaiseIndicator.d.ts +1 -1
  43. package/dist/components/atomic/HandRaiseIndicator.d.ts.map +1 -1
  44. package/dist/components/atomic/NameTag.d.ts +1 -1
  45. package/dist/components/atomic/NameTag.d.ts.map +1 -1
  46. package/dist/components/atomic/ReactionBubble.d.ts +1 -1
  47. package/dist/components/atomic/ReactionBubble.d.ts.map +1 -1
  48. package/dist/components/atomic/ReleaseBadge.d.ts.map +1 -1
  49. package/dist/components/atomic/StatusBadge.d.ts +1 -1
  50. package/dist/components/atomic/StatusBadge.d.ts.map +1 -1
  51. package/dist/components/atomic/TourTooltip.d.ts.map +1 -1
  52. package/dist/components/atomic/TranscriptLine.d.ts.map +1 -1
  53. package/dist/components/atomic/VolumeSlider.d.ts.map +1 -1
  54. package/dist/components/atomic/Waveform.d.ts +1 -1
  55. package/dist/components/atomic/Waveform.d.ts.map +1 -1
  56. package/dist/components/atomic/WhatsNewTrigger.d.ts.map +1 -1
  57. package/dist/components/chalk/Chalk.d.ts.map +1 -1
  58. package/dist/components/chalk-ui/ChalkAlert.d.ts +9 -0
  59. package/dist/components/chalk-ui/ChalkAlert.d.ts.map +1 -0
  60. package/dist/components/chalk-ui/ChalkBackdrop.d.ts +9 -0
  61. package/dist/components/chalk-ui/ChalkBackdrop.d.ts.map +1 -0
  62. package/dist/components/chalk-ui/ChalkBadge.d.ts +13 -0
  63. package/dist/components/chalk-ui/ChalkBadge.d.ts.map +1 -0
  64. package/dist/components/chalk-ui/ChalkButton.d.ts +11 -0
  65. package/dist/components/chalk-ui/ChalkButton.d.ts.map +1 -0
  66. package/dist/components/chalk-ui/ChalkCheckbox.d.ts +11 -0
  67. package/dist/components/chalk-ui/ChalkCheckbox.d.ts.map +1 -0
  68. package/dist/components/chalk-ui/ChalkChrome.d.ts +21 -0
  69. package/dist/components/chalk-ui/ChalkChrome.d.ts.map +1 -0
  70. package/dist/components/chalk-ui/ChalkControlGroup.d.ts +6 -0
  71. package/dist/components/chalk-ui/ChalkControlGroup.d.ts.map +1 -0
  72. package/dist/components/chalk-ui/ChalkDialogPanel.d.ts +10 -0
  73. package/dist/components/chalk-ui/ChalkDialogPanel.d.ts.map +1 -0
  74. package/dist/components/chalk-ui/ChalkDivider.d.ts +9 -0
  75. package/dist/components/chalk-ui/ChalkDivider.d.ts.map +1 -0
  76. package/dist/components/chalk-ui/ChalkEmptyState.d.ts +11 -0
  77. package/dist/components/chalk-ui/ChalkEmptyState.d.ts.map +1 -0
  78. package/dist/components/chalk-ui/ChalkIconButton.d.ts +10 -0
  79. package/dist/components/chalk-ui/ChalkIconButton.d.ts.map +1 -0
  80. package/dist/components/chalk-ui/ChalkInput.d.ts +10 -0
  81. package/dist/components/chalk-ui/ChalkInput.d.ts.map +1 -0
  82. package/dist/components/chalk-ui/ChalkMenu.d.ts +16 -0
  83. package/dist/components/chalk-ui/ChalkMenu.d.ts.map +1 -0
  84. package/dist/components/chalk-ui/ChalkPanel.d.ts +11 -0
  85. package/dist/components/chalk-ui/ChalkPanel.d.ts.map +1 -0
  86. package/dist/components/chalk-ui/ChalkRadio.d.ts +11 -0
  87. package/dist/components/chalk-ui/ChalkRadio.d.ts.map +1 -0
  88. package/dist/components/chalk-ui/ChalkSelect.d.ts +11 -0
  89. package/dist/components/chalk-ui/ChalkSelect.d.ts.map +1 -0
  90. package/dist/components/chalk-ui/ChalkSlider.d.ts +12 -0
  91. package/dist/components/chalk-ui/ChalkSlider.d.ts.map +1 -0
  92. package/dist/components/chalk-ui/ChalkSpinner.d.ts +10 -0
  93. package/dist/components/chalk-ui/ChalkSpinner.d.ts.map +1 -0
  94. package/dist/components/chalk-ui/ChalkTextarea.d.ts +10 -0
  95. package/dist/components/chalk-ui/ChalkTextarea.d.ts.map +1 -0
  96. package/dist/components/chalk-ui/ChalkToggle.d.ts +12 -0
  97. package/dist/components/chalk-ui/ChalkToggle.d.ts.map +1 -0
  98. package/dist/components/chalk-ui/ChalkTooltipPanel.d.ts +9 -0
  99. package/dist/components/chalk-ui/ChalkTooltipPanel.d.ts.map +1 -0
  100. package/dist/components/chalk-ui/common.d.ts +15 -0
  101. package/dist/components/chalk-ui/common.d.ts.map +1 -0
  102. package/dist/components/chalk-ui/index.d.ts +44 -0
  103. package/dist/components/chalk-ui/index.d.ts.map +1 -0
  104. package/dist/components/chalk-ui/prng.d.ts +5 -0
  105. package/dist/components/chalk-ui/prng.d.ts.map +1 -0
  106. package/dist/components/chalk-ui/rough.d.ts +13 -0
  107. package/dist/components/chalk-ui/rough.d.ts.map +1 -0
  108. package/dist/components/chalk-ui/shapes.d.ts +23 -0
  109. package/dist/components/chalk-ui/shapes.d.ts.map +1 -0
  110. package/dist/components/chalk-ui/texture.d.ts +12 -0
  111. package/dist/components/chalk-ui/texture.d.ts.map +1 -0
  112. package/dist/components/chalk-ui/useResizeObserver.d.ts +12 -0
  113. package/dist/components/chalk-ui/useResizeObserver.d.ts.map +1 -0
  114. package/dist/components/composite/BackgroundEffectsPicker.d.ts +1 -1
  115. package/dist/components/composite/BackgroundEffectsPicker.d.ts.map +1 -1
  116. package/dist/components/composite/ChatPanel.d.ts.map +1 -1
  117. package/dist/components/composite/ClassicBackgroundEffectsPicker.d.ts +4 -0
  118. package/dist/components/composite/ClassicBackgroundEffectsPicker.d.ts.map +1 -0
  119. package/dist/components/composite/ClassicChatPanel.d.ts +4 -0
  120. package/dist/components/composite/ClassicChatPanel.d.ts.map +1 -0
  121. package/dist/components/composite/ClassicCommandErrorAlert.d.ts +4 -0
  122. package/dist/components/composite/ClassicCommandErrorAlert.d.ts.map +1 -0
  123. package/dist/components/composite/ClassicDeviceSelector.d.ts +4 -0
  124. package/dist/components/composite/ClassicDeviceSelector.d.ts.map +1 -0
  125. package/dist/components/composite/ClassicMessageBubble.d.ts +4 -0
  126. package/dist/components/composite/ClassicMessageBubble.d.ts.map +1 -0
  127. package/dist/components/composite/ClassicNoiseSuppressionToggle.d.ts +4 -0
  128. package/dist/components/composite/ClassicNoiseSuppressionToggle.d.ts.map +1 -0
  129. package/dist/components/composite/ClassicReactionPicker.d.ts +4 -0
  130. package/dist/components/composite/ClassicReactionPicker.d.ts.map +1 -0
  131. package/dist/components/composite/ClassicReactionsOverlay.d.ts +4 -0
  132. package/dist/components/composite/ClassicReactionsOverlay.d.ts.map +1 -0
  133. package/dist/components/composite/ClassicScreenShareView.d.ts +7 -0
  134. package/dist/components/composite/ClassicScreenShareView.d.ts.map +1 -0
  135. package/dist/components/composite/ClassicSettingsDialog.d.ts +38 -0
  136. package/dist/components/composite/ClassicSettingsDialog.d.ts.map +1 -0
  137. package/dist/components/composite/ClassicSettingsPanel.d.ts +7 -0
  138. package/dist/components/composite/ClassicSettingsPanel.d.ts.map +1 -0
  139. package/dist/components/composite/CommandErrorAlert.d.ts +1 -1
  140. package/dist/components/composite/CommandErrorAlert.d.ts.map +1 -1
  141. package/dist/components/composite/DeviceSelector.d.ts +1 -1
  142. package/dist/components/composite/DeviceSelector.d.ts.map +1 -1
  143. package/dist/components/composite/MessageBubble.d.ts.map +1 -1
  144. package/dist/components/composite/NoiseSuppressionToggle.d.ts +1 -1
  145. package/dist/components/composite/NoiseSuppressionToggle.d.ts.map +1 -1
  146. package/dist/components/composite/ReactionPicker.d.ts +1 -1
  147. package/dist/components/composite/ReactionPicker.d.ts.map +1 -1
  148. package/dist/components/composite/ReactionsOverlay.d.ts.map +1 -1
  149. package/dist/components/composite/ScreenShareView.d.ts.map +1 -1
  150. package/dist/components/composite/SettingsDialog.d.ts +5 -2
  151. package/dist/components/composite/SettingsDialog.d.ts.map +1 -1
  152. package/dist/components/composite/SettingsPanel.d.ts +0 -3
  153. package/dist/components/composite/SettingsPanel.d.ts.map +1 -1
  154. package/dist/components/control-bar/ClassicControlBar.d.ts +7 -0
  155. package/dist/components/control-bar/ClassicControlBar.d.ts.map +1 -0
  156. package/dist/components/control-bar/ClassicControlBarButton.d.ts +24 -0
  157. package/dist/components/control-bar/ClassicControlBarButton.d.ts.map +1 -0
  158. package/dist/components/control-bar/ControlBar.d.ts.map +1 -1
  159. package/dist/components/control-bar/control-bar-button.d.ts +3 -1
  160. package/dist/components/control-bar/control-bar-button.d.ts.map +1 -1
  161. package/dist/components/device-popover/ClassicDevicePopover.d.ts +4 -0
  162. package/dist/components/device-popover/ClassicDevicePopover.d.ts.map +1 -0
  163. package/dist/components/device-popover/DevicePopover.d.ts +1 -1
  164. package/dist/components/device-popover/DevicePopover.d.ts.map +1 -1
  165. package/dist/components/entrance/ClassicEntranceSurface.d.ts +8 -0
  166. package/dist/components/entrance/ClassicEntranceSurface.d.ts.map +1 -0
  167. package/dist/components/entrance/Entrance.d.ts +3 -1
  168. package/dist/components/entrance/Entrance.d.ts.map +1 -1
  169. package/dist/components/entrance/EntranceSurface.d.ts +3 -1
  170. package/dist/components/entrance/EntranceSurface.d.ts.map +1 -1
  171. package/dist/components/index.d.ts +3 -1
  172. package/dist/components/index.d.ts.map +1 -1
  173. package/dist/components/index.js +47 -1
  174. package/dist/components/invite-dialog/ClassicInviteDialog.d.ts +4 -0
  175. package/dist/components/invite-dialog/ClassicInviteDialog.d.ts.map +1 -0
  176. package/dist/components/invite-dialog/InviteDialog.d.ts.map +1 -1
  177. package/dist/components/join-failed-screen/ClassicJoinFailedScreen.d.ts +8 -0
  178. package/dist/components/join-failed-screen/ClassicJoinFailedScreen.d.ts.map +1 -0
  179. package/dist/components/join-failed-screen/JoinFailedScreen.d.ts +1 -6
  180. package/dist/components/join-failed-screen/JoinFailedScreen.d.ts.map +1 -1
  181. package/dist/components/lazy.d.ts +1 -1
  182. package/dist/components/lazy.d.ts.map +1 -1
  183. package/dist/components/leave-dialog/ClassicLeaveDialog.d.ts +4 -0
  184. package/dist/components/leave-dialog/ClassicLeaveDialog.d.ts.map +1 -0
  185. package/dist/components/leave-dialog/LeaveDialog.d.ts.map +1 -1
  186. package/dist/components/media-request-dialog/ClassicMediaRequestDialog.d.ts +4 -0
  187. package/dist/components/media-request-dialog/ClassicMediaRequestDialog.d.ts.map +1 -0
  188. package/dist/components/media-request-dialog/MediaRequestDialog.d.ts +1 -1
  189. package/dist/components/media-request-dialog/MediaRequestDialog.d.ts.map +1 -1
  190. package/dist/components/participant-grid/ClassicParticipantGrid.d.ts +7 -0
  191. package/dist/components/participant-grid/ClassicParticipantGrid.d.ts.map +1 -0
  192. package/dist/components/participant-grid/ParticipantGrid.d.ts.map +1 -1
  193. package/dist/components/participant-tile/ClassicParticipantTile.d.ts +4 -0
  194. package/dist/components/participant-tile/ClassicParticipantTile.d.ts.map +1 -0
  195. package/dist/components/participant-tile/ParticipantTile.d.ts +1 -1
  196. package/dist/components/participant-tile/ParticipantTile.d.ts.map +1 -1
  197. package/dist/components/participants-panel/ClassicParticipantOptionsMenu.d.ts +3 -0
  198. package/dist/components/participants-panel/ClassicParticipantOptionsMenu.d.ts.map +1 -0
  199. package/dist/components/participants-panel/ClassicParticipantRow.d.ts +3 -0
  200. package/dist/components/participants-panel/ClassicParticipantRow.d.ts.map +1 -0
  201. package/dist/components/participants-panel/ClassicParticipantsPanel.d.ts +4 -0
  202. package/dist/components/participants-panel/ClassicParticipantsPanel.d.ts.map +1 -0
  203. package/dist/components/participants-panel/ParticipantsPanel.d.ts.map +1 -1
  204. package/dist/components/participants-panel/participant-options-menu.d.ts +1 -1
  205. package/dist/components/participants-panel/participant-options-menu.d.ts.map +1 -1
  206. package/dist/components/participants-panel/participant-row.d.ts +1 -1
  207. package/dist/components/participants-panel/participant-row.d.ts.map +1 -1
  208. package/dist/components/reconnecting-overlay/ClassicReconnectingOverlay.d.ts +4 -0
  209. package/dist/components/reconnecting-overlay/ClassicReconnectingOverlay.d.ts.map +1 -0
  210. package/dist/components/reconnecting-overlay/ReconnectingOverlay.d.ts.map +1 -1
  211. package/dist/components/skin-context.d.ts +10 -0
  212. package/dist/components/skin-context.d.ts.map +1 -0
  213. package/dist/components/space-header/ClassicSpaceHeader.d.ts +4 -0
  214. package/dist/components/space-header/ClassicSpaceHeader.d.ts.map +1 -0
  215. package/dist/components/space-header/SpaceHeader.d.ts.map +1 -1
  216. package/dist/components/space-info-dialog/ClassicSpaceInfoDialog.d.ts +4 -0
  217. package/dist/components/space-info-dialog/ClassicSpaceInfoDialog.d.ts.map +1 -0
  218. package/dist/components/space-info-dialog/SpaceInfoDialog.d.ts.map +1 -1
  219. package/dist/components/space-view/ClassicSpaceView.d.ts +4 -0
  220. package/dist/components/space-view/ClassicSpaceView.d.ts.map +1 -0
  221. package/dist/components/space-view/SpaceView.d.ts +3 -2
  222. package/dist/components/space-view/SpaceView.d.ts.map +1 -1
  223. package/dist/components/theme.d.ts +17 -0
  224. package/dist/components/theme.d.ts.map +1 -1
  225. package/dist/components/toast-stack/ClassicToastStack.d.ts +4 -0
  226. package/dist/components/toast-stack/ClassicToastStack.d.ts.map +1 -0
  227. package/dist/components/toast-stack/ToastStack.d.ts.map +1 -1
  228. package/dist/components/transcript-panel/ClassicTranscriptPanel.d.ts +4 -0
  229. package/dist/components/transcript-panel/ClassicTranscriptPanel.d.ts.map +1 -0
  230. package/dist/components/transcript-panel/TranscriptPanel.d.ts.map +1 -1
  231. package/dist/index.d.ts +4 -1
  232. package/dist/index.d.ts.map +1 -1
  233. package/dist/index.js +47 -1
  234. package/dist/public-surface.contract.d.ts +6 -1
  235. package/dist/public-surface.contract.d.ts.map +1 -1
  236. package/dist/test-support/preview-fixtures.d.ts +4 -4
  237. package/dist/test-support/preview-fixtures.d.ts.map +1 -1
  238. package/dist/theme.d.ts +25 -1
  239. package/dist/theme.d.ts.map +1 -1
  240. package/package.json +7 -6
  241. package/dist/chunk-7ZZAW5HE.js +0 -6212
package/README.md CHANGED
@@ -40,9 +40,11 @@ application. Chalk will use it without disposing it.
40
40
  <Chalk client={spaceClient} entrance={false} />
41
41
  ```
42
42
 
43
- `theme` is the only styling door. It accepts a closed token-key set, which
44
- Chalk emits as CSS custom properties scoped to its root. Size and place Chalk
45
- with its parent element.
43
+ `theme` is the only styling door. `skin` defaults to `"classic"`; choose
44
+ `"chalk"` when you want the hand-drawn Chalk skin. Palette and texture are
45
+ independent from the skin, so the same palette and texture can compose with
46
+ either choice. Chalk emits the closed token-key set as CSS custom properties
47
+ scoped to its root. Size and place Chalk with its parent element.
46
48
 
47
49
  `colorScheme` accepts `light`, `dark`, or `system`. With `system`, Chalk follows
48
50
  the browser preference while keeping explicit token overrides in place.
@@ -51,6 +53,9 @@ the browser preference while keeping explicit token overrides in place.
51
53
  <Chalk
52
54
  client={spaceClient}
53
55
  theme={{
56
+ skin: "chalk",
57
+ palette: "warm-charcoal",
58
+ texture: "paper",
54
59
  colorScheme: "dark",
55
60
  accent: "#4b9bb8",
56
61
  tokens: { canvas: "#152127", surface: "#1d2b31" },
@@ -58,6 +63,43 @@ the browser preference while keeping explicit token overrides in place.
58
63
  />
59
64
  ```
60
65
 
66
+ `COSMIC_CHALK_THEME` is a ready-made Chalk-skin theme with a midnight board,
67
+ moon-white text, comet-blue focus states, and a slate grain. The preset selects
68
+ `skin: "chalk"`; it works on the full Space and the standalone Entrance.
69
+
70
+ ```tsx
71
+ import { Chalk, COSMIC_CHALK_THEME, Entrance } from "@q9labsai/chalk-react";
72
+
73
+ <Chalk client={spaceClient} theme={COSMIC_CHALK_THEME} />;
74
+
75
+ <Entrance spaceName="Design review" theme={COSMIC_CHALK_THEME} onJoin={(settings) => spaceClient.join(settings)} />;
76
+ ```
77
+
78
+ ## Hand-drawn UI
79
+
80
+ The `chalk` skin uses the SDK's chalk-drawn controls throughout. Its rough SVG
81
+ edges, powder passes, and focus marks are deterministic, while buttons, inputs,
82
+ toggles, dialogs, menus, and sliders remain native accessible controls. The
83
+ default `classic` skin keeps the same typed palette and texture choices without
84
+ the hand-drawn treatment.
85
+
86
+ The same pieces are public for custom panels. Each accepts a stable `seed` when
87
+ you want a specific stroke to stay identical across renders.
88
+ Directly imported `Chalk*` primitives keep their hand-drawn identity; the skin
89
+ switch belongs to the turnkey `<Chalk />` and standalone `Entrance` surfaces.
90
+
91
+ ```tsx
92
+ import { ChalkButton, ChalkInput, ChalkPanel, ChalkToggle } from "@q9labsai/chalk-react";
93
+
94
+ <ChalkPanel seed="participant-settings">
95
+ <ChalkInput aria-label="Display name" defaultValue="Hasan" seed="display-name" />
96
+ <ChalkToggle aria-label="Noise suppression" defaultPressed seed="noise-suppression" />
97
+ <ChalkButton tone="accent" variant="solid" seed="save-settings">
98
+ Save settings
99
+ </ChalkButton>
100
+ </ChalkPanel>;
101
+ ```
102
+
61
103
  ## Custom UI
62
104
 
63
105
  `ChalkProvider` only shares a `SpaceClient` with React. It does not join,
@@ -65,7 +107,7 @@ leave, refresh access, or own the client’s lifetime.
65
107
 
66
108
  ```tsx
67
109
  import type { SpaceClient } from "@q9labsai/chalk-client";
68
- import { ChalkProvider, useCan, useParticipants, useSpaceClient } from "@q9labsai/chalk-react";
110
+ import { ChalkButton, ChalkProvider, useCan, useParticipants, useSpaceClient } from "@q9labsai/chalk-react";
69
111
 
70
112
  function ParticipantPanel() {
71
113
  const client = useSpaceClient();
@@ -75,7 +117,7 @@ function ParticipantPanel() {
75
117
  return (
76
118
  <>
77
119
  <p>{roster.length} participants</p>
78
- {canRaiseHand ? <button onClick={() => void client.participants.raiseHand()}>Raise hand</button> : null}
120
+ {canRaiseHand ? <ChalkButton onClick={() => void client.participants.raiseHand()}>Raise hand</ChalkButton> : null}
79
121
  </>
80
122
  );
81
123
  }
@@ -0,0 +1,27 @@
1
+ # Third-party notices
2
+
3
+ Parts of the deterministic rough-path and chalk-texture implementation are
4
+ adapted from Drawably/Chalkably.
5
+
6
+ MIT License
7
+
8
+ Copyright (c) 2026 Daniel Belyi
9
+ Copyright (c) 2026 Hasan Shoaib (modifications)
10
+
11
+ Permission is hereby granted, free of charge, to any person obtaining a copy
12
+ of this software and associated documentation files (the "Software"), to deal
13
+ in the Software without restriction, including without limitation the rights
14
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15
+ copies of the Software, and to permit persons to whom the Software is
16
+ furnished to do so, subject to the following conditions:
17
+
18
+ The above copyright notice and this permission notice shall be included in all
19
+ copies or substantial portions of the Software.
20
+
21
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
27
+ SOFTWARE.