@neo-ui-kit/react 0.0.0-stage → 1.0.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 (270) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +213 -2
  3. package/dist/artwork/icons.json.d.ts +2 -0
  4. package/dist/artwork/illustrations.json.d.ts +2 -0
  5. package/dist/chunks/chunk-347P6ZE4.js +104 -0
  6. package/dist/chunks/chunk-BJSFN52W.js +417 -0
  7. package/dist/chunks/chunk-FCOU3ODR.js +63 -0
  8. package/dist/chunks/chunk-JZ4GDTH5.js +87 -0
  9. package/dist/chunks/chunk-UGDRXR7P.js +3362 -0
  10. package/dist/chunks/chunk-VK6GHRLV.js +335 -0
  11. package/dist/chunks/chunk-YKCUOZ7V.js +777 -0
  12. package/dist/components/artwork/DatabaseArt/DatabaseArt.d.ts +6 -0
  13. package/dist/components/artwork/DatabaseArt/styles.css +58 -0
  14. package/dist/components/artwork/Landscape/Landscape.d.ts +7 -0
  15. package/dist/components/artwork/Landscape/styles.css +79 -0
  16. package/dist/components/artwork/NeonWaves/NeonWaves.d.ts +15 -0
  17. package/dist/components/artwork/NeonWaves/styles.css +48 -0
  18. package/dist/components/artwork/Planet/Planet.d.ts +4 -0
  19. package/dist/components/artwork/Planet/styles.css +52 -0
  20. package/dist/components/artwork/QuantumField/QuantumField.d.ts +42 -0
  21. package/dist/components/artwork/QuantumField/QuantumFieldExperience.d.ts +22 -0
  22. package/dist/components/artwork/QuantumField/UPSTREAM-LICENSE.txt +21 -0
  23. package/dist/components/artwork/QuantumField/audio.d.ts +15 -0
  24. package/dist/components/artwork/QuantumField/renderer.d.ts +24 -0
  25. package/dist/components/artwork/QuantumField/styles.css +77 -0
  26. package/dist/components/artwork/ServerArt/ServerArt.d.ts +8 -0
  27. package/dist/components/artwork/ServerArt/styles.css +43 -0
  28. package/dist/components/artwork/Spectrum/Spectrum.d.ts +7 -0
  29. package/dist/components/artwork/Spectrum/styles.css +35 -0
  30. package/dist/components/artwork/layers.d.ts +15 -0
  31. package/dist/components/artwork/useArtwork.d.ts +8 -0
  32. package/dist/components/controls/Autocomplete/Autocomplete.d.ts +2 -0
  33. package/dist/components/controls/Autocomplete/styles.css +1 -0
  34. package/dist/components/controls/Button/Button.d.ts +2 -0
  35. package/dist/components/controls/Button/styles.css +1 -0
  36. package/dist/components/controls/Checkbox/Checkbox.d.ts +2 -0
  37. package/dist/components/controls/Checkbox/styles.css +70 -0
  38. package/dist/components/controls/Chip/Chip.d.ts +21 -0
  39. package/dist/components/controls/Chip/styles.css +74 -0
  40. package/dist/components/controls/ChipField.d.ts +25 -0
  41. package/dist/components/controls/ColorPicker/ColorPicker.d.ts +16 -0
  42. package/dist/components/controls/ColorPicker/color.d.ts +9 -0
  43. package/dist/components/controls/ColorPicker/styles.css +103 -0
  44. package/dist/components/controls/DatePicker/DatePicker.d.ts +19 -0
  45. package/dist/components/controls/DatePicker/styles.css +69 -0
  46. package/dist/components/controls/FilePicker/FilePicker.d.ts +2 -0
  47. package/dist/components/controls/FilePicker/styles.css +149 -0
  48. package/dist/components/controls/IconButton/IconButton.d.ts +2 -0
  49. package/dist/components/controls/IconButton/styles.css +4 -0
  50. package/dist/components/controls/InputBase/InputBase.d.ts +21 -0
  51. package/dist/components/controls/InputBase/styles.css +379 -0
  52. package/dist/components/controls/Link/Link.d.ts +11 -0
  53. package/dist/components/controls/Link/styles.css +50 -0
  54. package/dist/components/controls/NumberField/NumberField.d.ts +2 -0
  55. package/dist/components/controls/NumberField/styles.css +1 -0
  56. package/dist/components/controls/PeoplePicker/PeoplePicker.d.ts +37 -0
  57. package/dist/components/controls/PeoplePicker/styles.css +7 -0
  58. package/dist/components/controls/SegmentedControl/SegmentedControl.d.ts +2 -0
  59. package/dist/components/controls/SegmentedControl/styles.css +9 -0
  60. package/dist/components/controls/Select/Select.d.ts +8 -0
  61. package/dist/components/controls/Select/styles.css +142 -0
  62. package/dist/components/controls/Slider/Slider.d.ts +3 -0
  63. package/dist/components/controls/Slider/styles.css +138 -0
  64. package/dist/components/controls/SplitButton/SplitButton.d.ts +2 -0
  65. package/dist/components/controls/SplitButton/styles.css +169 -0
  66. package/dist/components/controls/Switch/Switch.d.ts +2 -0
  67. package/dist/components/controls/Switch/styles.css +54 -0
  68. package/dist/components/controls/Tab/Tab.d.ts +2 -0
  69. package/dist/components/controls/Tab/styles.css +111 -0
  70. package/dist/components/controls/Tabs/Tabs.d.ts +2 -0
  71. package/dist/components/controls/Tabs/styles.css +239 -0
  72. package/dist/components/controls/TagInput/TagInput.d.ts +24 -0
  73. package/dist/components/controls/TagInput/styles.css +24 -0
  74. package/dist/components/controls/TextArea/TextArea.d.ts +2 -0
  75. package/dist/components/controls/TextArea/styles.css +15 -0
  76. package/dist/components/controls/TextField/TextField.d.ts +2 -0
  77. package/dist/components/controls/ThemePicker/ThemePicker.d.ts +24 -0
  78. package/dist/components/controls/ThemePicker/styles.css +128 -0
  79. package/dist/components/controls/ToggleButton/ToggleButton.d.ts +2 -0
  80. package/dist/components/controls/ToggleButton/styles.css +49 -0
  81. package/dist/components/controls/internal.d.ts +62 -0
  82. package/dist/components/controls/shared.css +694 -0
  83. package/dist/components/controls/shared.d.ts +204 -0
  84. package/dist/components/editor/PianoRoll/PianoRoll.d.ts +65 -0
  85. package/dist/components/editor/PianoRoll/styles.css +186 -0
  86. package/dist/components/editor/shared.css +1 -0
  87. package/dist/components/effects/AnimatedBorder/AnimatedBorder.d.ts +9 -0
  88. package/dist/components/effects/AnimatedBorder/styles.css +7 -0
  89. package/dist/components/effects/Beacon/Beacon.d.ts +9 -0
  90. package/dist/components/effects/Beacon/styles.css +38 -0
  91. package/dist/components/effects/Equalizer/Equalizer.d.ts +14 -0
  92. package/dist/components/effects/Equalizer/styles.css +38 -0
  93. package/dist/components/effects/GlowText/GlowText.d.ts +9 -0
  94. package/dist/components/effects/GlowText/styles.css +56 -0
  95. package/dist/components/effects/ImageShine/ImageShine.d.ts +13 -0
  96. package/dist/components/effects/ImageShine/styles.css +66 -0
  97. package/dist/components/effects/Marquee/Marquee.d.ts +9 -0
  98. package/dist/components/effects/Marquee/styles.css +46 -0
  99. package/dist/components/effects/MelodixText/MelodixText.d.ts +15 -0
  100. package/dist/components/effects/MelodixText/styles.css +28 -0
  101. package/dist/components/effects/Reveal/Reveal.d.ts +13 -0
  102. package/dist/components/effects/Reveal/styles.css +25 -0
  103. package/dist/components/effects/Shimmer/Shimmer.d.ts +10 -0
  104. package/dist/components/effects/Shimmer/styles.css +48 -0
  105. package/dist/components/effects/Sparkles/Sparkles.d.ts +9 -0
  106. package/dist/components/effects/Sparkles/styles.css +28 -0
  107. package/dist/components/effects/Spotlight/Spotlight.d.ts +11 -0
  108. package/dist/components/effects/Spotlight/styles.css +45 -0
  109. package/dist/components/effects/Tilt/Tilt.d.ts +11 -0
  110. package/dist/components/effects/Tilt/styles.css +67 -0
  111. package/dist/components/feedback/Badge/Badge.d.ts +3 -0
  112. package/dist/components/feedback/Badge/styles.css +91 -0
  113. package/dist/components/feedback/CollapsibleSection/CollapsibleSection.d.ts +2 -0
  114. package/dist/components/feedback/CollapsibleSection/styles.css +76 -0
  115. package/dist/components/feedback/DataTable/DataTable.d.ts +16 -0
  116. package/dist/components/feedback/DataTable/styles.css +522 -0
  117. package/dist/components/feedback/Dialog/Dialog.d.ts +2 -0
  118. package/dist/components/feedback/Dialog/styles.css +82 -0
  119. package/dist/components/feedback/EmptyState/EmptyState.d.ts +2 -0
  120. package/dist/components/feedback/EmptyState/styles.css +80 -0
  121. package/dist/components/feedback/KeyValueList/KeyValueList.d.ts +2 -0
  122. package/dist/components/feedback/KeyValueList/styles.css +51 -0
  123. package/dist/components/feedback/Menu/Menu.d.ts +2 -0
  124. package/dist/components/feedback/Menu/styles.css +123 -0
  125. package/dist/components/feedback/MenuItem/MenuItem.d.ts +2 -0
  126. package/dist/components/feedback/MenuItem/styles.css +71 -0
  127. package/dist/components/feedback/MessageBar/MessageBar.d.ts +2 -0
  128. package/dist/components/feedback/MessageBar/styles.css +116 -0
  129. package/dist/components/feedback/Popover/Popover.d.ts +2 -0
  130. package/dist/components/feedback/Popover/styles.css +44 -0
  131. package/dist/components/feedback/ProgressBar/ProgressBar.d.ts +2 -0
  132. package/dist/components/feedback/ProgressBar/styles.css +76 -0
  133. package/dist/components/feedback/SignalBars/SignalBars.d.ts +11 -0
  134. package/dist/components/feedback/SignalBars/styles.css +31 -0
  135. package/dist/components/feedback/StatusIndicator/StatusIndicator.d.ts +2 -0
  136. package/dist/components/feedback/StatusIndicator/styles.css +88 -0
  137. package/dist/components/feedback/Steps/Steps.d.ts +2 -0
  138. package/dist/components/feedback/Steps/styles.css +152 -0
  139. package/dist/components/feedback/Toast/Toast.d.ts +2 -0
  140. package/dist/components/feedback/Toast/styles.css +89 -0
  141. package/dist/components/feedback/Tooltip/Tooltip.d.ts +15 -0
  142. package/dist/components/feedback/Tooltip/styles.css +38 -0
  143. package/dist/components/feedback/shared.css +22 -0
  144. package/dist/components/feedback/shared.d.ts +231 -0
  145. package/dist/components/forms/Form/Form.d.ts +35 -0
  146. package/dist/components/forms/Form/styles.css +1 -0
  147. package/dist/components/forms/FormFields/FormFields.d.ts +20 -0
  148. package/dist/components/forms/FormFields/styles.css +72 -0
  149. package/dist/components/foundation/Loader/Loader.d.ts +30 -0
  150. package/dist/components/foundation/LoaderGenerator/LoaderGenerator.d.ts +38 -0
  151. package/dist/components/foundation/LoaderGenerator/styles.css +104 -0
  152. package/dist/components/foundation/ThemeEditor/ThemeEditor.d.ts +15 -0
  153. package/dist/components/foundation/ThemeEditor/styles.css +97 -0
  154. package/dist/components/foundation/ThemeEditor/themeConfig.d.ts +47 -0
  155. package/dist/components/foundation/ThemeProvider/ThemeProvider.d.ts +32 -0
  156. package/dist/components/foundation/ThemeProvider/styles.css +59 -0
  157. package/dist/components/foundation/Typography/Typography.d.ts +17 -0
  158. package/dist/components/foundation/Typography/styles.css +115 -0
  159. package/dist/components/layout/Avatar/Avatar.d.ts +2 -0
  160. package/dist/components/layout/Avatar/HostSeal.d.ts +5 -0
  161. package/dist/components/layout/Avatar/styles.css +166 -0
  162. package/dist/components/layout/BrandMark/BrandMark.d.ts +2 -0
  163. package/dist/components/layout/BrandMark/styles.css +39 -0
  164. package/dist/components/layout/ButtonGroup/ButtonGroup.d.ts +12 -0
  165. package/dist/components/layout/ButtonGroup/styles.css +36 -0
  166. package/dist/components/layout/Card/Card.d.ts +14 -0
  167. package/dist/components/layout/Card/styles.css +37 -0
  168. package/dist/components/layout/DialogActions/DialogActions.d.ts +12 -0
  169. package/dist/components/layout/DialogActions/styles.css +31 -0
  170. package/dist/components/layout/DialogBody/DialogBody.d.ts +12 -0
  171. package/dist/components/layout/DialogBody/styles.css +28 -0
  172. package/dist/components/layout/Divider/Divider.d.ts +2 -0
  173. package/dist/components/layout/Divider/styles.css +58 -0
  174. package/dist/components/layout/FloatingPanel/FloatingPanel.d.ts +15 -0
  175. package/dist/components/layout/FloatingPanel/styles.css +47 -0
  176. package/dist/components/layout/FloatingPanel/useFloatingPanel.d.ts +54 -0
  177. package/dist/components/layout/Grid/Grid.d.ts +24 -0
  178. package/dist/components/layout/Grid/styles.css +90 -0
  179. package/dist/components/layout/Header/Header.d.ts +2 -0
  180. package/dist/components/layout/Header/styles.css +42 -0
  181. package/dist/components/layout/Icon/Icon.d.ts +4 -0
  182. package/dist/components/layout/Icon/styles.css +62 -0
  183. package/dist/components/layout/Illustration/Illustration.d.ts +2 -0
  184. package/dist/components/layout/Illustration/styles.css +104 -0
  185. package/dist/components/layout/ScrollArea/ScrollArea.d.ts +2 -0
  186. package/dist/components/layout/ScrollArea/styles.css +61 -0
  187. package/dist/components/layout/Stack/Stack.d.ts +21 -0
  188. package/dist/components/layout/Stack/styles.css +53 -0
  189. package/dist/components/layout/StatTile/StatTile.d.ts +20 -0
  190. package/dist/components/layout/StatTile/styles.css +90 -0
  191. package/dist/components/layout/TabPanel/TabPanel.d.ts +2 -0
  192. package/dist/components/layout/TabPanel/styles.css +16 -0
  193. package/dist/components/layout/Text/Text.d.ts +2 -0
  194. package/dist/components/layout/Text/styles.css +29 -0
  195. package/dist/components/layout/Toolbar/Toolbar.d.ts +12 -0
  196. package/dist/components/layout/Toolbar/styles.css +7 -0
  197. package/dist/components/layout/shared.css +79 -0
  198. package/dist/components/layout/shared.d.ts +64 -0
  199. package/dist/components/media/AudioPlayer/AudioPlayer.d.ts +2 -0
  200. package/dist/components/media/AudioPlayer/styles.css +86 -0
  201. package/dist/components/media/KaraokeLyrics/KaraokeLyrics.d.ts +25 -0
  202. package/dist/components/media/KaraokeLyrics/styles.css +56 -0
  203. package/dist/components/media/LevelMeter/LevelMeter.d.ts +7 -0
  204. package/dist/components/media/LevelMeter/styles.css +30 -0
  205. package/dist/components/media/MediaCard/MediaCard.d.ts +24 -0
  206. package/dist/components/media/MediaCard/styles.css +108 -0
  207. package/dist/components/media/MelodyRoll/MelodyRoll.d.ts +48 -0
  208. package/dist/components/media/MelodyRoll/styles.css +196 -0
  209. package/dist/components/media/PianoKeyboard/PianoKeyboard.d.ts +24 -0
  210. package/dist/components/media/PianoKeyboard/styles.css +83 -0
  211. package/dist/components/media/RotaryKnob/RotaryKnob.d.ts +3 -0
  212. package/dist/components/media/RotaryKnob/styles.css +319 -0
  213. package/dist/components/media/Sparkline/Sparkline.d.ts +2 -0
  214. package/dist/components/media/Sparkline/styles.css +70 -0
  215. package/dist/components/media/WaveDecoration/WaveDecoration.d.ts +2 -0
  216. package/dist/components/media/WaveDecoration/styles.css +2 -0
  217. package/dist/components/media/Waveform/Waveform.d.ts +9 -0
  218. package/dist/components/media/Waveform/styles.css +375 -0
  219. package/dist/components/media/Waveform/useWaveformPeaks.d.ts +11 -0
  220. package/dist/components/media/shared.css +7 -0
  221. package/dist/components/media/shared.d.ts +80 -0
  222. package/dist/components/navigation/Router/Router.d.ts +32 -0
  223. package/dist/components/navigation/Router/styles.css +1 -0
  224. package/dist/components.css +102 -0
  225. package/dist/core/artwork.d.ts +17 -0
  226. package/dist/core/base.d.ts +65 -0
  227. package/dist/core/environment.d.ts +5 -0
  228. package/dist/core/i18n.d.ts +34 -0
  229. package/dist/core/messages.d.ts +1 -0
  230. package/dist/core/motion/hooks.d.ts +17 -0
  231. package/dist/core/motion-engine.d.ts +13 -0
  232. package/dist/core/noise.d.ts +20 -0
  233. package/dist/core/providers/context.d.ts +4 -0
  234. package/dist/core/responsive.d.ts +13 -0
  235. package/dist/core.d.ts +8 -0
  236. package/dist/core.js +56 -0
  237. package/dist/editor.d.ts +2 -0
  238. package/dist/editor.js +8 -0
  239. package/dist/fonts/melodix/Melodix-100.woff2 +0 -0
  240. package/dist/fonts/melodix/Melodix-200.woff2 +0 -0
  241. package/dist/fonts/melodix/Melodix-300.woff2 +0 -0
  242. package/dist/fonts/melodix/Melodix-400.woff2 +0 -0
  243. package/dist/fonts/melodix/Melodix-500.woff2 +0 -0
  244. package/dist/fonts/melodix/Melodix-600.woff2 +0 -0
  245. package/dist/fonts/melodix/Melodix-700.woff2 +0 -0
  246. package/dist/fonts/melodix/Melodix-800.woff2 +0 -0
  247. package/dist/fonts/melodix/Melodix-900.woff2 +0 -0
  248. package/dist/fonts/melodix/MelodixText-100.woff2 +0 -0
  249. package/dist/fonts/melodix/MelodixText-200.woff2 +0 -0
  250. package/dist/fonts/melodix/MelodixText-300.woff2 +0 -0
  251. package/dist/fonts/melodix/MelodixText-400.woff2 +0 -0
  252. package/dist/fonts/melodix/MelodixText-500.woff2 +0 -0
  253. package/dist/fonts/melodix/MelodixText-600.woff2 +0 -0
  254. package/dist/fonts/melodix/MelodixText-700.woff2 +0 -0
  255. package/dist/fonts/melodix/MelodixText-800.woff2 +0 -0
  256. package/dist/fonts/melodix/MelodixText-900.woff2 +0 -0
  257. package/dist/fonts/melodix/OFL-PlayfairDisplay.txt +93 -0
  258. package/dist/fonts/melodix.css +123 -0
  259. package/dist/forms.d.ts +4 -0
  260. package/dist/forms.js +17 -0
  261. package/dist/index.d.ts +163 -0
  262. package/dist/index.js +9683 -0
  263. package/dist/router.d.ts +2 -0
  264. package/dist/router.js +11 -0
  265. package/dist/styles.css +2 -0
  266. package/dist/theme/base.css +221 -0
  267. package/dist/theme/tokens.css +196 -0
  268. package/dist/theme/typography.d.ts +24 -0
  269. package/dist/tokens.css +1 -0
  270. package/package.json +83 -4
@@ -0,0 +1,65 @@
1
+ import type { AriaRole, CSSProperties, ReactNode, Ref } from "react";
2
+ export type Material = "shell" | "card" | "glass" | "ruby" | "tile" | "input" | "dialog" | "ghost" | "danger";
3
+ export type Variant = "primary" | "secondary" | "ghost" | "danger";
4
+ export type ControlSize = "xs" | "sm" | "md" | "lg";
5
+ export type LegacySize = "small" | "medium" | "large";
6
+ export type Size = ControlSize | LegacySize;
7
+ export type Tone = "success" | "warning" | "error" | "processing" | "pending" | "offline" | "info";
8
+ export type TokenStyle = CSSProperties & {
9
+ [key: `--${string}`]: string | number | undefined;
10
+ };
11
+ export interface CommonProps {
12
+ children?: ReactNode;
13
+ className?: string;
14
+ style?: TokenStyle;
15
+ id?: string;
16
+ material?: Material;
17
+ size?: Size;
18
+ tone?: Tone;
19
+ /** Accessibility and test hooks reach the root element of every component. */
20
+ role?: AriaRole;
21
+ "aria-label"?: string;
22
+ "aria-labelledby"?: string;
23
+ "aria-describedby"?: string;
24
+ "aria-live"?: "off" | "polite" | "assertive";
25
+ [data: `data-${string}`]: string | number | boolean | undefined;
26
+ }
27
+ export interface VectorNode {
28
+ tag: string;
29
+ props?: Record<string, unknown>;
30
+ children?: Array<VectorNode | string>;
31
+ }
32
+ export declare function classes(...values: (string | undefined | false)[]): string;
33
+ export declare function normalizeSize(size?: Size): ControlSize | undefined;
34
+ /** Root attributes shared by every component: `ad ad-<kebab-name>` class and data-ad-* hooks for CSS. */
35
+ export declare function mark(name: string, p: CommonProps, material?: Material, extra?: string): {
36
+ id: string | undefined;
37
+ className: string;
38
+ style: TokenStyle | undefined;
39
+ "data-ad-component": string;
40
+ "data-ad-material": Material | undefined;
41
+ "data-ad-size": ControlSize | undefined;
42
+ "data-ad-tone": Tone | undefined;
43
+ };
44
+ /** Plain structural element with the standard component marks. */
45
+ export declare function part(name: string, tag: "header" | "div" | "footer"): {
46
+ (p: CommonProps): import("react").DetailedReactHTMLElement<{
47
+ id: string | undefined;
48
+ className: string;
49
+ style: TokenStyle | undefined;
50
+ "data-ad-component": string;
51
+ "data-ad-material": Material | undefined;
52
+ "data-ad-size": ControlSize | undefined;
53
+ "data-ad-tone": Tone | undefined;
54
+ }, HTMLElement>;
55
+ displayName: string;
56
+ };
57
+ export declare function useControllable<T>(value: T | undefined, initial: T, onChange?: (value: T) => void): readonly [T, (next: T | ((value: T) => T)) => void];
58
+ export declare function assignRef<T>(ref: Ref<T> | undefined, value: T | null): void;
59
+ export declare const clamp: (v: number, min?: number, max?: number) => number;
60
+ export declare const cssRem: (value: number) => string;
61
+ export declare const timeText: (value: number) => string;
62
+ export declare function copyText(text: string): Promise<boolean>;
63
+ export declare function downloadFile(name: string, content: string, type?: string): void;
64
+ /** Spreads a ring of light from the pointer inside `host` (which should clip its overflow). */
65
+ export declare function ripple(host: HTMLElement, clientX: number, clientY: number): void;
@@ -0,0 +1,5 @@
1
+ export declare const createResizeObserver: (callback: ResizeObserverCallback) => ResizeObserver;
2
+ export declare const canObserveIntersection: () => boolean;
3
+ export declare const reducedMotionQuery: () => MediaQueryList;
4
+ /** jsdom has canvas elements but no 2D context unless the native canvas package is added. */
5
+ export declare const canPaint: () => boolean;
@@ -0,0 +1,34 @@
1
+ import { type ReactNode } from "react";
2
+ /** Languages the library speaks out of the box; any other code works with your own messages. */
3
+ export type Locale = "ru" | "en" | "uk" | (string & {});
4
+ /** Translations of the library's own texts. The key is the Russian original, e.g. "Закрыть". */
5
+ export type Messages = Record<string, string>;
6
+ /**
7
+ * A text of the library in the current language: `tr("Закрыть")` is "Close" in English.
8
+ * `{name}` placeholders are filled from `vars`. Unknown texts come back as they are.
9
+ */
10
+ export declare function tr(text: string, vars?: Record<string, string | number>): string;
11
+ export declare function translate(locale: Locale, text: string, vars?: Record<string, string | number>, messages?: Messages): string;
12
+ /** The language of the library's texts for everything rendered after this call. */
13
+ export declare function setLocale(locale: Locale): void;
14
+ export declare function getLocale(): Locale;
15
+ /** Your own translations (a new language, or other wording for a built-in one). */
16
+ export declare function addMessages(locale: Locale, messages: Messages): void;
17
+ /** Plural form by Slavic rules (one / few / many); English uses one / many. */
18
+ export declare function plural(n: number, one: string, few: string, many: string, locale?: Locale): string;
19
+ export interface LocaleProviderProps {
20
+ /** Built-in ru, en or uk, or a custom locale with its own messages. */
21
+ locale: Locale;
22
+ /** Overrides apply only to this provider's descendants. Keys are Russian source texts. */
23
+ messages?: Messages;
24
+ children?: ReactNode;
25
+ }
26
+ /**
27
+ * Sets the language of every library text inside it. Changing `locale` re-renders the tree
28
+ * under it in the new language; `messages` overrides translations only in this tree.
29
+ */
30
+ export declare function LocaleProvider({ locale, messages, children }: LocaleProviderProps): import("react").JSX.Element;
31
+ /** The language set by the nearest LocaleProvider. */
32
+ export declare function useLocale(): Locale;
33
+ /** A translator bound to the nearest provider, safe across independent React roots. */
34
+ export declare function useTr(): (text: string, vars?: Record<string, string | number>) => string;
@@ -0,0 +1 @@
1
+ export declare const messages: Record<string, Record<string, string>>;
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ /** One scheduler in the engine; every observer and subscription is detached on unmount. */
3
+ export declare function useDecoration(ref: React.RefObject<Element | null>, paint: (time: number) => void): void;
4
+ export declare function useBorder(ref: React.RefObject<HTMLElement | null>, enabled?: boolean, shell?: boolean, round?: boolean): void;
5
+ /**
6
+ * Runs a callback on the shared motion clock while `active`: positions, meters and other live
7
+ * read-outs update in step with every animation instead of asking for frames of their own.
8
+ */
9
+ export declare function useTick(callback: (now: number) => void, active?: boolean): void;
10
+ /** Pauses the animations of a block (and everything in it) while it is outside the viewport. */
11
+ export declare function usePauseOffscreen(ref: React.RefObject<Element | null>): void;
12
+ export declare function useTabShape(ref: React.RefObject<HTMLButtonElement | null>): void;
13
+ /**
14
+ * Mouse-wheel notches glide to their target instead of jumping. Trackpads already glide and
15
+ * keep native scrolling; an inner scroller that can still move takes the wheel itself.
16
+ */
17
+ export declare function useSmoothWheel(ref: React.RefObject<HTMLElement | null>): void;
@@ -0,0 +1,13 @@
1
+ export function refreshMotion(): void;
2
+ /** Diagnostic snapshot for lifecycle tests; not used to render the UI. */
3
+ export function getMotionStats(): {
4
+ scopes: number;
5
+ running: number;
6
+ scheduled: boolean;
7
+ callbacks: any;
8
+ };
9
+ export const createMotion: any;
10
+ export const attachBorder: any;
11
+ export const attachTabShape: any;
12
+ export const setMotionFrameRate: any;
13
+ export const subscribeTick: any;
@@ -0,0 +1,20 @@
1
+ /** Deterministic randomness and value noise for procedural artwork (same picture on every render). */
2
+ export declare const clamp01: (value: number, minimum?: number, maximum?: number) => number;
3
+ /** Seeded generator (mulberry32): returns a function giving numbers in [0, 1). */
4
+ export declare function seeded(initialSeed: number): () => number;
5
+ /** Smooth 2D value noise in [0, 1]. */
6
+ export declare function noise(x: number, y: number): number;
7
+ /** Fractal noise: several octaves of value noise. */
8
+ export declare function fbm(initialX: number, initialY: number, octaves?: number): number;
9
+ /** A procedural picture: rows of pixels computed one by one, then optional vector strokes. */
10
+ export interface Painting {
11
+ /** Fill rows `from`..`to` of the image; scale from `image.width` to stay resolution-free. */
12
+ pixels(image: ImageData, from: number, to: number): void;
13
+ /** Draw on top of the pixels (stars, glows, outlines). */
14
+ finish?(context: CanvasRenderingContext2D, width: number, height: number): void;
15
+ }
16
+ /**
17
+ * Paints a picture into an offscreen canvas in short idle-time slices, so even a large
18
+ * one stays responsive, and keeps it: every instance of the same size reuses the result.
19
+ */
20
+ export declare function paintCanvas(key: string, width: number, height: number, painting: Painting): Promise<HTMLCanvasElement>;
@@ -0,0 +1,4 @@
1
+ export declare function useReducedMotion(): boolean;
2
+ /** Read the current motion setting only when an interaction needs it. */
3
+ export declare function motionEnabled(): boolean;
4
+ export declare function useMotion(): boolean;
@@ -0,0 +1,13 @@
1
+ import type { CSSProperties } from "react";
2
+ export type Breakpoint = "base" | "sm" | "md" | "lg" | "xl";
3
+ export type Responsive<T> = T | Partial<Record<Breakpoint, T>>;
4
+ export type Spacing = number | string;
5
+ /** Numbers are steps of the spacing scale; strings are raw CSS lengths. */
6
+ export declare function spacing(value: Spacing): string;
7
+ /**
8
+ * `--ad-<name>` plus `--ad-<name>-<bp>` for every breakpoint, each carrying the nearest
9
+ * smaller value forward (starting from `fallback`). Every layout sets all of its own
10
+ * variables, so nested layouts never inherit a parent's and CSS reads one variable per
11
+ * breakpoint without fallback chains.
12
+ */
13
+ export declare function responsiveVars<T>(name: string, value: Responsive<T> | undefined, format?: (item: T) => string, fallback?: T): CSSProperties;
package/dist/core.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ export { ThemeProvider, themes, } from "./components/foundation/ThemeProvider/ThemeProvider";
2
+ export type { ThemeName, ThemeProviderProps, } from "./components/foundation/ThemeProvider/ThemeProvider";
3
+ export { useReducedMotion, useMotion } from "./core/providers/context";
4
+ export { useBorder, usePauseOffscreen, useTick, useDecoration, useSmoothWheel, useTabShape, } from "./core/motion/hooks";
5
+ export { getMotionStats, setMotionFrameRate, subscribeTick } from "./core/motion-engine.js";
6
+ export { LocaleProvider, addMessages, getLocale, plural, setLocale, tr, translate, useLocale, useTr } from "./core/i18n";
7
+ export type { Locale, LocaleProviderProps, Messages } from "./core/i18n";
8
+ export { messages as builtInMessages } from "./core/messages";
package/dist/core.js ADDED
@@ -0,0 +1,56 @@
1
+ import {
2
+ ThemeProvider,
3
+ themes
4
+ } from "./chunks/chunk-JZ4GDTH5.js";
5
+ import {
6
+ getMotionStats,
7
+ setMotionFrameRate,
8
+ subscribeTick,
9
+ useBorder,
10
+ useDecoration,
11
+ usePauseOffscreen,
12
+ useSmoothWheel,
13
+ useTabShape,
14
+ useTick
15
+ } from "./chunks/chunk-YKCUOZ7V.js";
16
+ import {
17
+ LocaleProvider,
18
+ addMessages,
19
+ getLocale,
20
+ messages,
21
+ plural,
22
+ setLocale,
23
+ tr,
24
+ translate,
25
+ useLocale,
26
+ useTr
27
+ } from "./chunks/chunk-BJSFN52W.js";
28
+ import {
29
+ useMotion,
30
+ useReducedMotion
31
+ } from "./chunks/chunk-FCOU3ODR.js";
32
+ export {
33
+ LocaleProvider,
34
+ ThemeProvider,
35
+ addMessages,
36
+ messages as builtInMessages,
37
+ getLocale,
38
+ getMotionStats,
39
+ plural,
40
+ setLocale,
41
+ setMotionFrameRate,
42
+ subscribeTick,
43
+ themes,
44
+ tr,
45
+ translate,
46
+ useBorder,
47
+ useDecoration,
48
+ useLocale,
49
+ useMotion,
50
+ usePauseOffscreen,
51
+ useReducedMotion,
52
+ useSmoothWheel,
53
+ useTabShape,
54
+ useTick,
55
+ useTr
56
+ };
@@ -0,0 +1,2 @@
1
+ export { PianoRoll } from "./components/editor/PianoRoll/PianoRoll";
2
+ export type { PianoRollProps, PianoRollNote, PianoRollWord, PianoRollGesture } from "./components/editor/PianoRoll/PianoRoll";
package/dist/editor.js ADDED
@@ -0,0 +1,8 @@
1
+ import {
2
+ PianoRoll
3
+ } from "./chunks/chunk-VK6GHRLV.js";
4
+ import "./chunks/chunk-BJSFN52W.js";
5
+ import "./chunks/chunk-FCOU3ODR.js";
6
+ export {
7
+ PianoRoll
8
+ };
@@ -0,0 +1,93 @@
1
+ Copyright 2017 The Playfair Display Project Authors (https://github.com/clauseggers/Playfair-Display), with Reserved Font Name "Playfair Display"
2
+
3
+ This Font Software is licensed under the SIL Open Font License, Version 1.1.
4
+ This license is copied below, and is also available with a FAQ at:
5
+ http://scripts.sil.org/OFL
6
+
7
+
8
+ -----------------------------------------------------------
9
+ SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
10
+ -----------------------------------------------------------
11
+
12
+ PREAMBLE
13
+ The goals of the Open Font License (OFL) are to stimulate worldwide
14
+ development of collaborative font projects, to support the font creation
15
+ efforts of academic and linguistic communities, and to provide a free and
16
+ open framework in which fonts may be shared and improved in partnership
17
+ with others.
18
+
19
+ The OFL allows the licensed fonts to be used, studied, modified and
20
+ redistributed freely as long as they are not sold by themselves. The
21
+ fonts, including any derivative works, can be bundled, embedded,
22
+ redistributed and/or sold with any software provided that any reserved
23
+ names are not used by derivative works. The fonts and derivatives,
24
+ however, cannot be released under any other type of license. The
25
+ requirement for fonts to remain under this license does not apply
26
+ to any document created using the fonts or their derivatives.
27
+
28
+ DEFINITIONS
29
+ "Font Software" refers to the set of files released by the Copyright
30
+ Holder(s) under this license and clearly marked as such. This may
31
+ include source files, build scripts and documentation.
32
+
33
+ "Reserved Font Name" refers to any names specified as such after the
34
+ copyright statement(s).
35
+
36
+ "Original Version" refers to the collection of Font Software components as
37
+ distributed by the Copyright Holder(s).
38
+
39
+ "Modified Version" refers to any derivative made by adding to, deleting,
40
+ or substituting -- in part or in whole -- any of the components of the
41
+ Original Version, by changing formats or by porting the Font Software to a
42
+ new environment.
43
+
44
+ "Author" refers to any designer, engineer, programmer, technical
45
+ writer or other person who contributed to the Font Software.
46
+
47
+ PERMISSION & CONDITIONS
48
+ Permission is hereby granted, free of charge, to any person obtaining
49
+ a copy of the Font Software, to use, study, copy, merge, embed, modify,
50
+ redistribute, and sell modified and unmodified copies of the Font
51
+ Software, subject to the following conditions:
52
+
53
+ 1) Neither the Font Software nor any of its individual components,
54
+ in Original or Modified Versions, may be sold by itself.
55
+
56
+ 2) Original or Modified Versions of the Font Software may be bundled,
57
+ redistributed and/or sold with any software, provided that each copy
58
+ contains the above copyright notice and this license. These can be
59
+ included either as stand-alone text files, human-readable headers or
60
+ in the appropriate machine-readable metadata fields within text or
61
+ binary files as long as those fields can be easily viewed by the user.
62
+
63
+ 3) No Modified Version of the Font Software may use the Reserved Font
64
+ Name(s) unless explicit written permission is granted by the corresponding
65
+ Copyright Holder. This restriction only applies to the primary font name as
66
+ presented to the users.
67
+
68
+ 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
69
+ Software shall not be used to promote, endorse or advertise any
70
+ Modified Version, except to acknowledge the contribution(s) of the
71
+ Copyright Holder(s) and the Author(s) or with their explicit written
72
+ permission.
73
+
74
+ 5) The Font Software, modified or unmodified, in part or in whole,
75
+ must be distributed entirely under this license, and must not be
76
+ distributed under any other license. The requirement for fonts to
77
+ remain under this license does not apply to any document created
78
+ using the Font Software.
79
+
80
+ TERMINATION
81
+ This license becomes null and void if any of the above conditions are
82
+ not met.
83
+
84
+ DISCLAIMER
85
+ THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
86
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
87
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
88
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
89
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
90
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
91
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
92
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
93
+ OTHER DEALINGS IN THE FONT SOFTWARE.
@@ -0,0 +1,123 @@
1
+ /* Melodix: the musical display typeface, in nine weights (100 Thin … 900 Black). Records, piano
2
+ keys, note heads, strings and waveforms are part of the letters themselves; the Latin S carries a
3
+ treble clef (a loop above, a hook with a note head below). Capitals of Cyrillic (Russian and
4
+ Ukrainian) and Latin, digits, ! ? : ; , … and ♩ ♪ ♫ ♬ 𝄞 ♥ #; lowercase letters are the same shapes
5
+ as small capitals. Traced from the large Melodix sheet, weights grown or slimmed from it.
6
+ "Melodix Text" is the cut for small sizes (body text, menus, labels under ~24 px): the engraving
7
+ finer than a screen pixel is filled in so the letters stay clear, records and notes stay.
8
+ Greek and the remaining punctuation come from Playfair Display (SIL Open Font License 1.1, see
9
+ melodix/OFL-PlayfairDisplay.txt). Each weight downloads only when some text uses it. */
10
+ @font-face {
11
+ font-family: "Melodix";
12
+ src: url("./melodix/Melodix-100.woff2") format("woff2");
13
+ font-weight: 100;
14
+ font-display: swap;
15
+ }
16
+ @font-face {
17
+ font-family: "Melodix";
18
+ src: url("./melodix/Melodix-200.woff2") format("woff2");
19
+ font-weight: 200;
20
+ font-display: swap;
21
+ }
22
+ @font-face {
23
+ font-family: "Melodix";
24
+ src: url("./melodix/Melodix-300.woff2") format("woff2");
25
+ font-weight: 300;
26
+ font-display: swap;
27
+ }
28
+ @font-face {
29
+ font-family: "Melodix";
30
+ src: url("./melodix/Melodix-400.woff2") format("woff2");
31
+ font-weight: 400;
32
+ font-display: swap;
33
+ }
34
+ @font-face {
35
+ font-family: "Melodix";
36
+ src: url("./melodix/Melodix-500.woff2") format("woff2");
37
+ font-weight: 500;
38
+ font-display: swap;
39
+ }
40
+ @font-face {
41
+ font-family: "Melodix";
42
+ src: url("./melodix/Melodix-600.woff2") format("woff2");
43
+ font-weight: 600;
44
+ font-display: swap;
45
+ }
46
+ @font-face {
47
+ font-family: "Melodix";
48
+ src: url("./melodix/Melodix-700.woff2") format("woff2");
49
+ font-weight: 700;
50
+ font-display: swap;
51
+ }
52
+ @font-face {
53
+ font-family: "Melodix";
54
+ src: url("./melodix/Melodix-800.woff2") format("woff2");
55
+ font-weight: 800;
56
+ font-display: swap;
57
+ }
58
+ @font-face {
59
+ font-family: "Melodix";
60
+ src: url("./melodix/Melodix-900.woff2") format("woff2");
61
+ font-weight: 900;
62
+ font-display: swap;
63
+ }
64
+ @font-face {
65
+ font-family: "Melodix Text";
66
+ src: url("./melodix/MelodixText-100.woff2") format("woff2");
67
+ font-weight: 100;
68
+ font-display: swap;
69
+ }
70
+ @font-face {
71
+ font-family: "Melodix Text";
72
+ src: url("./melodix/MelodixText-200.woff2") format("woff2");
73
+ font-weight: 200;
74
+ font-display: swap;
75
+ }
76
+ @font-face {
77
+ font-family: "Melodix Text";
78
+ src: url("./melodix/MelodixText-300.woff2") format("woff2");
79
+ font-weight: 300;
80
+ font-display: swap;
81
+ }
82
+ @font-face {
83
+ font-family: "Melodix Text";
84
+ src: url("./melodix/MelodixText-400.woff2") format("woff2");
85
+ font-weight: 400;
86
+ font-display: swap;
87
+ }
88
+ @font-face {
89
+ font-family: "Melodix Text";
90
+ src: url("./melodix/MelodixText-500.woff2") format("woff2");
91
+ font-weight: 500;
92
+ font-display: swap;
93
+ }
94
+ @font-face {
95
+ font-family: "Melodix Text";
96
+ src: url("./melodix/MelodixText-600.woff2") format("woff2");
97
+ font-weight: 600;
98
+ font-display: swap;
99
+ }
100
+ @font-face {
101
+ font-family: "Melodix Text";
102
+ src: url("./melodix/MelodixText-700.woff2") format("woff2");
103
+ font-weight: 700;
104
+ font-display: swap;
105
+ }
106
+ @font-face {
107
+ font-family: "Melodix Text";
108
+ src: url("./melodix/MelodixText-800.woff2") format("woff2");
109
+ font-weight: 800;
110
+ font-display: swap;
111
+ }
112
+ @font-face {
113
+ font-family: "Melodix Text";
114
+ src: url("./melodix/MelodixText-900.woff2") format("woff2");
115
+ font-weight: 900;
116
+ font-display: swap;
117
+ }
118
+ :root,
119
+ .ad-theme {
120
+ --ad-font-family-melodix: "Melodix", Georgia, serif;
121
+ /* the same letters cut for small sizes: use it for running text, menus and labels */
122
+ --ad-font-family-melodix-text: "Melodix Text", "Melodix", Georgia, serif;
123
+ }
@@ -0,0 +1,4 @@
1
+ export { Form, useForm, useFormContext } from "./components/forms/Form/Form";
2
+ export type { FormApi, FormErrors, FormProps, UseFormOptions, } from "./components/forms/Form/Form";
3
+ export { FormFields, defaultFieldRegistry, } from "./components/forms/FormFields/FormFields";
4
+ export type { FormFieldsProps, FormFieldDefinition, FieldKind, FieldRegistry, } from "./components/forms/FormFields/FormFields";
package/dist/forms.js ADDED
@@ -0,0 +1,17 @@
1
+ import {
2
+ Form,
3
+ FormFields,
4
+ defaultFieldRegistry,
5
+ useForm,
6
+ useFormContext
7
+ } from "./chunks/chunk-UGDRXR7P.js";
8
+ import "./chunks/chunk-YKCUOZ7V.js";
9
+ import "./chunks/chunk-BJSFN52W.js";
10
+ import "./chunks/chunk-FCOU3ODR.js";
11
+ export {
12
+ Form,
13
+ FormFields,
14
+ defaultFieldRegistry,
15
+ useForm,
16
+ useFormContext
17
+ };