@opalkelly/frontpanel-react-components 0.1.0

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 (334) hide show
  1. package/LICENSE +45 -0
  2. package/README.md +26 -0
  3. package/dist/cjs/index.js +2 -0
  4. package/dist/cjs/index.js.map +1 -0
  5. package/dist/cjs/types/components/FrontPanel/FrontPanel.d.ts +10 -0
  6. package/dist/cjs/types/components/FrontPanel/FrontPanel.props.d.ts +23 -0
  7. package/dist/cjs/types/components/FrontPanel/index.d.ts +7 -0
  8. package/dist/cjs/types/components/FrontPanelIndicator/FrontPanelIndicator.d.ts +30 -0
  9. package/dist/cjs/types/components/FrontPanelIndicator/FrontPanelIndicator.props.d.ts +17 -0
  10. package/dist/cjs/types/components/FrontPanelIndicator/index.d.ts +8 -0
  11. package/dist/cjs/types/components/FrontPanelNumberDisplay/FrontPanelNumberDisplay.d.ts +33 -0
  12. package/dist/cjs/types/components/FrontPanelNumberDisplay/FrontPanelNumberDisplay.props.d.ts +23 -0
  13. package/dist/cjs/types/components/FrontPanelNumberDisplay/index.d.ts +8 -0
  14. package/dist/cjs/types/components/FrontPanelNumberEntry/FrontPanelNumberEntry.d.ts +33 -0
  15. package/dist/cjs/types/components/FrontPanelNumberEntry/FrontPanelNumberEntry.props.d.ts +27 -0
  16. package/dist/cjs/types/components/FrontPanelNumberEntry/index.d.ts +8 -0
  17. package/dist/cjs/types/components/FrontPanelPushButton/FrontPanelPushButton.d.ts +31 -0
  18. package/dist/cjs/types/components/FrontPanelPushButton/FrontPanelPushButton.props.d.ts +17 -0
  19. package/dist/cjs/types/components/FrontPanelPushButton/index.d.ts +8 -0
  20. package/dist/cjs/types/components/FrontPanelRangeSlider/FrontPanelRangeSlider.d.ts +31 -0
  21. package/dist/cjs/types/components/FrontPanelRangeSlider/FrontPanelRangeSlider.props.d.ts +21 -0
  22. package/dist/cjs/types/components/FrontPanelRangeSlider/index.d.ts +8 -0
  23. package/dist/cjs/types/components/FrontPanelSelectEntry/FrontPanelSelectEntry.d.ts +17 -0
  24. package/dist/cjs/types/components/FrontPanelSelectEntry/FrontPanelSelectEntryRoot.d.ts +43 -0
  25. package/dist/cjs/types/components/FrontPanelSelectEntry/FrontPanelSelectEntryRoot.props.d.ts +21 -0
  26. package/dist/cjs/types/components/FrontPanelSelectEntry/index.d.ts +15 -0
  27. package/dist/cjs/types/components/FrontPanelToggleSwitch/FrontPanelToggleSwitch.d.ts +31 -0
  28. package/dist/cjs/types/components/FrontPanelToggleSwitch/FrontPanelToggleSwitch.props.d.ts +17 -0
  29. package/dist/cjs/types/components/FrontPanelToggleSwitch/index.d.ts +8 -0
  30. package/dist/cjs/types/components/FrontPanelTriggerButton/FrontPanelTriggerButton.d.ts +32 -0
  31. package/dist/cjs/types/components/FrontPanelTriggerButton/FrontPanelTriggerButton.props.d.ts +18 -0
  32. package/dist/cjs/types/components/FrontPanelTriggerButton/index.d.ts +8 -0
  33. package/dist/cjs/types/components/Icons/ChevronIcon.d.ts +17 -0
  34. package/dist/cjs/types/components/Icons/IndicatorArrowIcon.d.ts +17 -0
  35. package/dist/cjs/types/components/Icons/IndicatorBarIcon.d.ts +10 -0
  36. package/dist/cjs/types/components/Icons/IndicatorStateIcon.d.ts +14 -0
  37. package/dist/cjs/types/components/Icons/RadioToggleStateIcon.d.ts +14 -0
  38. package/dist/cjs/types/components/Icons/SwitchToggleStateIcon.d.ts +14 -0
  39. package/dist/cjs/types/components/Icons/index.d.ts +12 -0
  40. package/dist/cjs/types/components/Icons/types.d.ts +17 -0
  41. package/dist/cjs/types/components/index.d.ts +16 -0
  42. package/dist/cjs/types/components/types.d.ts +11 -0
  43. package/dist/cjs/types/contexts/FrontPanelContext.d.ts +15 -0
  44. package/dist/cjs/types/contexts/index.d.ts +8 -0
  45. package/dist/cjs/types/core/Binary.d.ts +7 -0
  46. package/dist/cjs/types/core/Numeric.d.ts +80 -0
  47. package/dist/cjs/types/core/Types.d.ts +34 -0
  48. package/dist/cjs/types/core/index.d.ts +9 -0
  49. package/dist/cjs/types/index.d.ts +10 -0
  50. package/dist/cjs/types/primitives/Application/Application.d.ts +10 -0
  51. package/dist/cjs/types/primitives/Application/Application.props.d.ts +10 -0
  52. package/dist/cjs/types/primitives/Application/index.d.ts +1 -0
  53. package/dist/cjs/types/primitives/Button/Button.d.ts +33 -0
  54. package/dist/cjs/types/primitives/Button/Button.props.d.ts +44 -0
  55. package/dist/cjs/types/primitives/Button/index.d.ts +3 -0
  56. package/dist/cjs/types/primitives/DigitEntry/DigitEntry.d.ts +33 -0
  57. package/dist/cjs/types/primitives/DigitEntry/DigitEntry.props.d.ts +51 -0
  58. package/dist/cjs/types/primitives/DigitEntry/index.d.ts +9 -0
  59. package/dist/cjs/types/primitives/Indicator/Indicator.d.ts +29 -0
  60. package/dist/cjs/types/primitives/Indicator/Indicator.props.d.ts +35 -0
  61. package/dist/cjs/types/primitives/Indicator/index.d.ts +9 -0
  62. package/dist/cjs/types/primitives/Label/Label.d.ts +31 -0
  63. package/dist/cjs/types/primitives/Label/Label.props.d.ts +33 -0
  64. package/dist/cjs/types/primitives/Label/index.d.ts +9 -0
  65. package/dist/cjs/types/primitives/NumberDisplay/NumberDisplay.d.ts +31 -0
  66. package/dist/cjs/types/primitives/NumberDisplay/NumberDisplay.props.d.ts +52 -0
  67. package/dist/cjs/types/primitives/NumberDisplay/index.d.ts +9 -0
  68. package/dist/cjs/types/primitives/NumberEntry/NumberEntry.d.ts +34 -0
  69. package/dist/cjs/types/primitives/NumberEntry/NumberEntry.props.d.ts +69 -0
  70. package/dist/cjs/types/primitives/NumberEntry/NumberEntryDigits.d.ts +27 -0
  71. package/dist/cjs/types/primitives/NumberEntry/NumberEntryDigits.props.d.ts +43 -0
  72. package/dist/cjs/types/primitives/NumberEntry/index.d.ts +9 -0
  73. package/dist/cjs/types/primitives/RangeSlider/RangeSlider.d.ts +33 -0
  74. package/dist/cjs/types/primitives/RangeSlider/RangeSlider.props.d.ts +77 -0
  75. package/dist/cjs/types/primitives/RangeSlider/index.d.ts +9 -0
  76. package/dist/cjs/types/primitives/SelectEntry/SelectEntry.d.ts +17 -0
  77. package/dist/cjs/types/primitives/SelectEntry/SelectEntryContent.d.ts +16 -0
  78. package/dist/cjs/types/primitives/SelectEntry/SelectEntryGroup.d.ts +15 -0
  79. package/dist/cjs/types/primitives/SelectEntry/SelectEntryItem.d.ts +15 -0
  80. package/dist/cjs/types/primitives/SelectEntry/SelectEntryLabel.d.ts +15 -0
  81. package/dist/cjs/types/primitives/SelectEntry/SelectEntryRoot.d.ts +39 -0
  82. package/dist/cjs/types/primitives/SelectEntry/SelectEntryRoot.props.d.ts +31 -0
  83. package/dist/cjs/types/primitives/SelectEntry/SelectEntrySeparator.d.ts +15 -0
  84. package/dist/cjs/types/primitives/SelectEntry/SelectEntryTrigger.d.ts +16 -0
  85. package/dist/cjs/types/primitives/SelectEntry/SelectEntryTrigger.props.d.ts +16 -0
  86. package/dist/cjs/types/primitives/SelectEntry/index.d.ts +17 -0
  87. package/dist/cjs/types/primitives/Toggle/Toggle.d.ts +35 -0
  88. package/dist/cjs/types/primitives/Toggle/Toggle.props.d.ts +37 -0
  89. package/dist/cjs/types/primitives/Toggle/index.d.ts +9 -0
  90. package/dist/cjs/types/primitives/ToggleSwitch/ToggleSwitch.d.ts +32 -0
  91. package/dist/cjs/types/primitives/ToggleSwitch/ToggleSwitch.props.d.ts +22 -0
  92. package/dist/cjs/types/primitives/ToggleSwitch/index.d.ts +8 -0
  93. package/dist/cjs/types/primitives/Tooltip/Tooltip.d.ts +35 -0
  94. package/dist/cjs/types/primitives/Tooltip/Tooltip.props.d.ts +17 -0
  95. package/dist/cjs/types/primitives/Tooltip/index.d.ts +8 -0
  96. package/dist/cjs/types/primitives/TooltipUtility.d.ts +12 -0
  97. package/dist/cjs/types/primitives/index.d.ts +24 -0
  98. package/dist/esm/index.js +2 -0
  99. package/dist/esm/index.js.map +1 -0
  100. package/dist/esm/types/components/FrontPanel/FrontPanel.d.ts +10 -0
  101. package/dist/esm/types/components/FrontPanel/FrontPanel.props.d.ts +23 -0
  102. package/dist/esm/types/components/FrontPanel/index.d.ts +7 -0
  103. package/dist/esm/types/components/FrontPanelIndicator/FrontPanelIndicator.d.ts +30 -0
  104. package/dist/esm/types/components/FrontPanelIndicator/FrontPanelIndicator.props.d.ts +17 -0
  105. package/dist/esm/types/components/FrontPanelIndicator/index.d.ts +8 -0
  106. package/dist/esm/types/components/FrontPanelNumberDisplay/FrontPanelNumberDisplay.d.ts +33 -0
  107. package/dist/esm/types/components/FrontPanelNumberDisplay/FrontPanelNumberDisplay.props.d.ts +23 -0
  108. package/dist/esm/types/components/FrontPanelNumberDisplay/index.d.ts +8 -0
  109. package/dist/esm/types/components/FrontPanelNumberEntry/FrontPanelNumberEntry.d.ts +33 -0
  110. package/dist/esm/types/components/FrontPanelNumberEntry/FrontPanelNumberEntry.props.d.ts +27 -0
  111. package/dist/esm/types/components/FrontPanelNumberEntry/index.d.ts +8 -0
  112. package/dist/esm/types/components/FrontPanelPushButton/FrontPanelPushButton.d.ts +31 -0
  113. package/dist/esm/types/components/FrontPanelPushButton/FrontPanelPushButton.props.d.ts +17 -0
  114. package/dist/esm/types/components/FrontPanelPushButton/index.d.ts +8 -0
  115. package/dist/esm/types/components/FrontPanelRangeSlider/FrontPanelRangeSlider.d.ts +31 -0
  116. package/dist/esm/types/components/FrontPanelRangeSlider/FrontPanelRangeSlider.props.d.ts +21 -0
  117. package/dist/esm/types/components/FrontPanelRangeSlider/index.d.ts +8 -0
  118. package/dist/esm/types/components/FrontPanelSelectEntry/FrontPanelSelectEntry.d.ts +17 -0
  119. package/dist/esm/types/components/FrontPanelSelectEntry/FrontPanelSelectEntryRoot.d.ts +43 -0
  120. package/dist/esm/types/components/FrontPanelSelectEntry/FrontPanelSelectEntryRoot.props.d.ts +21 -0
  121. package/dist/esm/types/components/FrontPanelSelectEntry/index.d.ts +15 -0
  122. package/dist/esm/types/components/FrontPanelToggleSwitch/FrontPanelToggleSwitch.d.ts +31 -0
  123. package/dist/esm/types/components/FrontPanelToggleSwitch/FrontPanelToggleSwitch.props.d.ts +17 -0
  124. package/dist/esm/types/components/FrontPanelToggleSwitch/index.d.ts +8 -0
  125. package/dist/esm/types/components/FrontPanelTriggerButton/FrontPanelTriggerButton.d.ts +32 -0
  126. package/dist/esm/types/components/FrontPanelTriggerButton/FrontPanelTriggerButton.props.d.ts +18 -0
  127. package/dist/esm/types/components/FrontPanelTriggerButton/index.d.ts +8 -0
  128. package/dist/esm/types/components/Icons/ChevronIcon.d.ts +17 -0
  129. package/dist/esm/types/components/Icons/IndicatorArrowIcon.d.ts +17 -0
  130. package/dist/esm/types/components/Icons/IndicatorBarIcon.d.ts +10 -0
  131. package/dist/esm/types/components/Icons/IndicatorStateIcon.d.ts +14 -0
  132. package/dist/esm/types/components/Icons/RadioToggleStateIcon.d.ts +14 -0
  133. package/dist/esm/types/components/Icons/SwitchToggleStateIcon.d.ts +14 -0
  134. package/dist/esm/types/components/Icons/index.d.ts +12 -0
  135. package/dist/esm/types/components/Icons/types.d.ts +17 -0
  136. package/dist/esm/types/components/index.d.ts +16 -0
  137. package/dist/esm/types/components/types.d.ts +11 -0
  138. package/dist/esm/types/contexts/FrontPanelContext.d.ts +15 -0
  139. package/dist/esm/types/contexts/index.d.ts +8 -0
  140. package/dist/esm/types/core/Binary.d.ts +7 -0
  141. package/dist/esm/types/core/Numeric.d.ts +80 -0
  142. package/dist/esm/types/core/Types.d.ts +34 -0
  143. package/dist/esm/types/core/index.d.ts +9 -0
  144. package/dist/esm/types/index.d.ts +10 -0
  145. package/dist/esm/types/primitives/Application/Application.d.ts +10 -0
  146. package/dist/esm/types/primitives/Application/Application.props.d.ts +10 -0
  147. package/dist/esm/types/primitives/Application/index.d.ts +1 -0
  148. package/dist/esm/types/primitives/Button/Button.d.ts +33 -0
  149. package/dist/esm/types/primitives/Button/Button.props.d.ts +44 -0
  150. package/dist/esm/types/primitives/Button/index.d.ts +3 -0
  151. package/dist/esm/types/primitives/DigitEntry/DigitEntry.d.ts +33 -0
  152. package/dist/esm/types/primitives/DigitEntry/DigitEntry.props.d.ts +51 -0
  153. package/dist/esm/types/primitives/DigitEntry/index.d.ts +9 -0
  154. package/dist/esm/types/primitives/Indicator/Indicator.d.ts +29 -0
  155. package/dist/esm/types/primitives/Indicator/Indicator.props.d.ts +35 -0
  156. package/dist/esm/types/primitives/Indicator/index.d.ts +9 -0
  157. package/dist/esm/types/primitives/Label/Label.d.ts +31 -0
  158. package/dist/esm/types/primitives/Label/Label.props.d.ts +33 -0
  159. package/dist/esm/types/primitives/Label/index.d.ts +9 -0
  160. package/dist/esm/types/primitives/NumberDisplay/NumberDisplay.d.ts +31 -0
  161. package/dist/esm/types/primitives/NumberDisplay/NumberDisplay.props.d.ts +52 -0
  162. package/dist/esm/types/primitives/NumberDisplay/index.d.ts +9 -0
  163. package/dist/esm/types/primitives/NumberEntry/NumberEntry.d.ts +34 -0
  164. package/dist/esm/types/primitives/NumberEntry/NumberEntry.props.d.ts +69 -0
  165. package/dist/esm/types/primitives/NumberEntry/NumberEntryDigits.d.ts +27 -0
  166. package/dist/esm/types/primitives/NumberEntry/NumberEntryDigits.props.d.ts +43 -0
  167. package/dist/esm/types/primitives/NumberEntry/index.d.ts +9 -0
  168. package/dist/esm/types/primitives/RangeSlider/RangeSlider.d.ts +33 -0
  169. package/dist/esm/types/primitives/RangeSlider/RangeSlider.props.d.ts +77 -0
  170. package/dist/esm/types/primitives/RangeSlider/index.d.ts +9 -0
  171. package/dist/esm/types/primitives/SelectEntry/SelectEntry.d.ts +17 -0
  172. package/dist/esm/types/primitives/SelectEntry/SelectEntryContent.d.ts +16 -0
  173. package/dist/esm/types/primitives/SelectEntry/SelectEntryGroup.d.ts +15 -0
  174. package/dist/esm/types/primitives/SelectEntry/SelectEntryItem.d.ts +15 -0
  175. package/dist/esm/types/primitives/SelectEntry/SelectEntryLabel.d.ts +15 -0
  176. package/dist/esm/types/primitives/SelectEntry/SelectEntryRoot.d.ts +39 -0
  177. package/dist/esm/types/primitives/SelectEntry/SelectEntryRoot.props.d.ts +31 -0
  178. package/dist/esm/types/primitives/SelectEntry/SelectEntrySeparator.d.ts +15 -0
  179. package/dist/esm/types/primitives/SelectEntry/SelectEntryTrigger.d.ts +16 -0
  180. package/dist/esm/types/primitives/SelectEntry/SelectEntryTrigger.props.d.ts +16 -0
  181. package/dist/esm/types/primitives/SelectEntry/index.d.ts +17 -0
  182. package/dist/esm/types/primitives/Toggle/Toggle.d.ts +35 -0
  183. package/dist/esm/types/primitives/Toggle/Toggle.props.d.ts +37 -0
  184. package/dist/esm/types/primitives/Toggle/index.d.ts +9 -0
  185. package/dist/esm/types/primitives/ToggleSwitch/ToggleSwitch.d.ts +32 -0
  186. package/dist/esm/types/primitives/ToggleSwitch/ToggleSwitch.props.d.ts +22 -0
  187. package/dist/esm/types/primitives/ToggleSwitch/index.d.ts +8 -0
  188. package/dist/esm/types/primitives/Tooltip/Tooltip.d.ts +35 -0
  189. package/dist/esm/types/primitives/Tooltip/Tooltip.props.d.ts +17 -0
  190. package/dist/esm/types/primitives/Tooltip/index.d.ts +8 -0
  191. package/dist/esm/types/primitives/TooltipUtility.d.ts +12 -0
  192. package/dist/esm/types/primitives/index.d.ts +24 -0
  193. package/dist/index.d.ts +1456 -0
  194. package/package.json +81 -0
  195. package/src/components/FrontPanel/FrontPanel.props.ts +25 -0
  196. package/src/components/FrontPanel/FrontPanel.tsx +33 -0
  197. package/src/components/FrontPanel/index.ts +8 -0
  198. package/src/components/FrontPanelIndicator/FrontPanelIndicator.css +0 -0
  199. package/src/components/FrontPanelIndicator/FrontPanelIndicator.props.ts +20 -0
  200. package/src/components/FrontPanelIndicator/FrontPanelIndicator.stories.tsx +44 -0
  201. package/src/components/FrontPanelIndicator/FrontPanelIndicator.tsx +81 -0
  202. package/src/components/FrontPanelIndicator/index.ts +10 -0
  203. package/src/components/FrontPanelNumberDisplay/FrontPanelNumberDisplay.css +0 -0
  204. package/src/components/FrontPanelNumberDisplay/FrontPanelNumberDisplay.props.ts +27 -0
  205. package/src/components/FrontPanelNumberDisplay/FrontPanelNumberDisplay.stories.tsx +67 -0
  206. package/src/components/FrontPanelNumberDisplay/FrontPanelNumberDisplay.tsx +130 -0
  207. package/src/components/FrontPanelNumberDisplay/index.ts +10 -0
  208. package/src/components/FrontPanelNumberEntry/FrontPanelNumberEntry.css +0 -0
  209. package/src/components/FrontPanelNumberEntry/FrontPanelNumberEntry.props.ts +32 -0
  210. package/src/components/FrontPanelNumberEntry/FrontPanelNumberEntry.stories.tsx +104 -0
  211. package/src/components/FrontPanelNumberEntry/FrontPanelNumberEntry.tsx +195 -0
  212. package/src/components/FrontPanelNumberEntry/index.ts +10 -0
  213. package/src/components/FrontPanelPushButton/FrontPanelPushButton.css +0 -0
  214. package/src/components/FrontPanelPushButton/FrontPanelPushButton.props.ts +20 -0
  215. package/src/components/FrontPanelPushButton/FrontPanelPushButton.stories.tsx +46 -0
  216. package/src/components/FrontPanelPushButton/FrontPanelPushButton.tsx +80 -0
  217. package/src/components/FrontPanelPushButton/index.ts +10 -0
  218. package/src/components/FrontPanelRangeSlider/FrontPanelRangeSlider.css +0 -0
  219. package/src/components/FrontPanelRangeSlider/FrontPanelRangeSlider.props.ts +25 -0
  220. package/src/components/FrontPanelRangeSlider/FrontPanelRangeSlider.stories.tsx +92 -0
  221. package/src/components/FrontPanelRangeSlider/FrontPanelRangeSlider.tsx +108 -0
  222. package/src/components/FrontPanelRangeSlider/index.ts +10 -0
  223. package/src/components/FrontPanelSelectEntry/FrontPanelSelectEntry.css +0 -0
  224. package/src/components/FrontPanelSelectEntry/FrontPanelSelectEntry.stories.tsx +107 -0
  225. package/src/components/FrontPanelSelectEntry/FrontPanelSelectEntry.tsx +30 -0
  226. package/src/components/FrontPanelSelectEntry/FrontPanelSelectEntryRoot.props.ts +25 -0
  227. package/src/components/FrontPanelSelectEntry/FrontPanelSelectEntryRoot.tsx +175 -0
  228. package/src/components/FrontPanelSelectEntry/index.ts +17 -0
  229. package/src/components/FrontPanelToggleSwitch/FrontPanelToggleSwitch.css +0 -0
  230. package/src/components/FrontPanelToggleSwitch/FrontPanelToggleSwitch.props.ts +20 -0
  231. package/src/components/FrontPanelToggleSwitch/FrontPanelToggleSwitch.stories.tsx +46 -0
  232. package/src/components/FrontPanelToggleSwitch/FrontPanelToggleSwitch.tsx +108 -0
  233. package/src/components/FrontPanelToggleSwitch/index.ts +10 -0
  234. package/src/components/FrontPanelTriggerButton/FrontPanelTriggerButton.css +0 -0
  235. package/src/components/FrontPanelTriggerButton/FrontPanelTriggerButton.props.ts +21 -0
  236. package/src/components/FrontPanelTriggerButton/FrontPanelTriggerButton.stories.tsx +46 -0
  237. package/src/components/FrontPanelTriggerButton/FrontPanelTriggerButton.tsx +65 -0
  238. package/src/components/FrontPanelTriggerButton/index.ts +10 -0
  239. package/src/components/Icons/ChevronIcon.tsx +69 -0
  240. package/src/components/Icons/IndicatorArrowIcon.tsx +59 -0
  241. package/src/components/Icons/IndicatorBarIcon.tsx +34 -0
  242. package/src/components/Icons/IndicatorStateIcon.tsx +82 -0
  243. package/src/components/Icons/RadioToggleStateIcon.tsx +62 -0
  244. package/src/components/Icons/SwitchToggleStateIcon.tsx +68 -0
  245. package/src/components/Icons/index.ts +15 -0
  246. package/src/components/Icons/types.ts +20 -0
  247. package/src/components/index.ts +31 -0
  248. package/src/components/types.ts +13 -0
  249. package/src/contexts/FrontPanelContext.ts +23 -0
  250. package/src/contexts/index.ts +10 -0
  251. package/src/core/Binary.ts +23 -0
  252. package/src/core/Numeric.ts +168 -0
  253. package/src/core/Types.ts +39 -0
  254. package/src/core/index.ts +11 -0
  255. package/src/fonts/Inter-VariableFont_slnt,wght.ttf +0 -0
  256. package/src/index.css +11 -0
  257. package/src/index.ts +11 -0
  258. package/src/primitives/Application/Application.props.ts +10 -0
  259. package/src/primitives/Application/Application.tsx +24 -0
  260. package/src/primitives/Application/index.ts +1 -0
  261. package/src/primitives/Button/Button.css +60 -0
  262. package/src/primitives/Button/Button.props.ts +53 -0
  263. package/src/primitives/Button/Button.stories.tsx +54 -0
  264. package/src/primitives/Button/Button.tsx +75 -0
  265. package/src/primitives/Button/index.ts +4 -0
  266. package/src/primitives/DigitEntry/DigitEntry.css +120 -0
  267. package/src/primitives/DigitEntry/DigitEntry.props.ts +62 -0
  268. package/src/primitives/DigitEntry/DigitEntry.stories.tsx +84 -0
  269. package/src/primitives/DigitEntry/DigitEntry.tsx +226 -0
  270. package/src/primitives/DigitEntry/index.ts +15 -0
  271. package/src/primitives/Indicator/Indicator.css +66 -0
  272. package/src/primitives/Indicator/Indicator.props.ts +42 -0
  273. package/src/primitives/Indicator/Indicator.stories.tsx +44 -0
  274. package/src/primitives/Indicator/Indicator.tsx +64 -0
  275. package/src/primitives/Indicator/index.ts +11 -0
  276. package/src/primitives/Label/Label.css +49 -0
  277. package/src/primitives/Label/Label.props.ts +38 -0
  278. package/src/primitives/Label/Label.stories.tsx +53 -0
  279. package/src/primitives/Label/Label.tsx +66 -0
  280. package/src/primitives/Label/index.ts +11 -0
  281. package/src/primitives/NumberDisplay/NumberDisplay.css +63 -0
  282. package/src/primitives/NumberDisplay/NumberDisplay.props.ts +65 -0
  283. package/src/primitives/NumberDisplay/NumberDisplay.stories.tsx +83 -0
  284. package/src/primitives/NumberDisplay/NumberDisplay.tsx +155 -0
  285. package/src/primitives/NumberDisplay/index.ts +11 -0
  286. package/src/primitives/NumberEntry/NumberEntry.css +71 -0
  287. package/src/primitives/NumberEntry/NumberEntry.props.ts +86 -0
  288. package/src/primitives/NumberEntry/NumberEntry.stories.tsx +129 -0
  289. package/src/primitives/NumberEntry/NumberEntry.tsx +249 -0
  290. package/src/primitives/NumberEntry/NumberEntryDigits.props.ts +57 -0
  291. package/src/primitives/NumberEntry/NumberEntryDigits.tsx +117 -0
  292. package/src/primitives/NumberEntry/index.ts +11 -0
  293. package/src/primitives/RangeSlider/RangeSlider.css +110 -0
  294. package/src/primitives/RangeSlider/RangeSlider.props.ts +93 -0
  295. package/src/primitives/RangeSlider/RangeSlider.stories.tsx +76 -0
  296. package/src/primitives/RangeSlider/RangeSlider.tsx +168 -0
  297. package/src/primitives/RangeSlider/index.ts +14 -0
  298. package/src/primitives/SelectEntry/SelectEntry.stories.tsx +86 -0
  299. package/src/primitives/SelectEntry/SelectEntry.tsx +29 -0
  300. package/src/primitives/SelectEntry/SelectEntryContent.css +94 -0
  301. package/src/primitives/SelectEntry/SelectEntryContent.tsx +63 -0
  302. package/src/primitives/SelectEntry/SelectEntryGroup.css +17 -0
  303. package/src/primitives/SelectEntry/SelectEntryGroup.tsx +37 -0
  304. package/src/primitives/SelectEntry/SelectEntryItem.css +35 -0
  305. package/src/primitives/SelectEntry/SelectEntryItem.tsx +51 -0
  306. package/src/primitives/SelectEntry/SelectEntryLabel.css +16 -0
  307. package/src/primitives/SelectEntry/SelectEntryLabel.tsx +43 -0
  308. package/src/primitives/SelectEntry/SelectEntryRoot.css +10 -0
  309. package/src/primitives/SelectEntry/SelectEntryRoot.props.ts +38 -0
  310. package/src/primitives/SelectEntry/SelectEntryRoot.tsx +69 -0
  311. package/src/primitives/SelectEntry/SelectEntrySeparator.css +12 -0
  312. package/src/primitives/SelectEntry/SelectEntrySeparator.tsx +38 -0
  313. package/src/primitives/SelectEntry/SelectEntryTrigger.css +49 -0
  314. package/src/primitives/SelectEntry/SelectEntryTrigger.props.ts +18 -0
  315. package/src/primitives/SelectEntry/SelectEntryTrigger.tsx +111 -0
  316. package/src/primitives/SelectEntry/index.ts +20 -0
  317. package/src/primitives/Toggle/Toggle.css +67 -0
  318. package/src/primitives/Toggle/Toggle.props.ts +44 -0
  319. package/src/primitives/Toggle/Toggle.stories.tsx +61 -0
  320. package/src/primitives/Toggle/Toggle.tsx +90 -0
  321. package/src/primitives/Toggle/index.ts +11 -0
  322. package/src/primitives/ToggleSwitch/ToggleSwitch.css +118 -0
  323. package/src/primitives/ToggleSwitch/ToggleSwitch.props.ts +26 -0
  324. package/src/primitives/ToggleSwitch/ToggleSwitch.stories.tsx +85 -0
  325. package/src/primitives/ToggleSwitch/ToggleSwitch.tsx +73 -0
  326. package/src/primitives/ToggleSwitch/index.ts +10 -0
  327. package/src/primitives/Tooltip/Tooltip.css +93 -0
  328. package/src/primitives/Tooltip/Tooltip.props.ts +20 -0
  329. package/src/primitives/Tooltip/Tooltip.tsx +91 -0
  330. package/src/primitives/Tooltip/index.ts +10 -0
  331. package/src/primitives/TooltipUtility.tsx +24 -0
  332. package/src/primitives/index.ts +44 -0
  333. package/src/stories/decorators/Application.decorator.tsx +20 -0
  334. package/src/stories/decorators/FrontPanel.decorator.tsx +47 -0
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export { default } from "./FrontPanelPushButton";
8
+ export { default as FrontPanelPushButtonProps } from "./FrontPanelPushButton.props";
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import React from "react";
8
+ import { RangeSlider } from "../../primitives";
9
+ import FrontPanelRangeSliderProps from "./FrontPanelRangeSlider.props";
10
+ interface FrontPanelRangeSliderCombinedProps extends Omit<React.ComponentPropsWithoutRef<typeof RangeSlider>, "defaultValue" | "value" | "maximumValue" | "onValueChange" | "onValueCommit">, FrontPanelRangeSliderProps {
11
+ }
12
+ export type { FrontPanelRangeSliderCombinedProps };
13
+ /**
14
+ * `FrontPanelRangeSlider` is a React component that renders a range slider to allow setting the value of a WireIn endpoint
15
+ * within a specified range of values by clicking and dragging the slider thumb or by using the arrow keys.
16
+ *
17
+ * @component
18
+ * @param {object} props - Properties passed to component
19
+ * @param {React.Ref} forwardedRef - Forwarded ref for the range slider
20
+ *
21
+ * @returns {React.Node} The rendered FrontPanelRangeSlider component
22
+ *
23
+ * @example
24
+ * ```jsx
25
+ * <FrontPanelRangeSlider
26
+ * fpEndpoint={{epAddress: 0x00, bitOffset: 1}}
27
+ * maximumValue=0xff />
28
+ * ```
29
+ */
30
+ declare const FrontPanelRangeSlider: React.ForwardRefExoticComponent<FrontPanelRangeSliderCombinedProps & React.RefAttributes<HTMLSpanElement>>;
31
+ export default FrontPanelRangeSlider;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import { EndpointAddressProps } from "../types";
8
+ /**
9
+ * Interface for the properties of the `FrontPanelRangeSlider` component.
10
+ */
11
+ interface FrontPanelRangeSliderProps {
12
+ /**
13
+ * Address of the frontpanel endpoint
14
+ */
15
+ fpEndpoint: EndpointAddressProps;
16
+ /**
17
+ * Maximum value that the range slider will allow
18
+ */
19
+ maximumValue: number;
20
+ }
21
+ export default FrontPanelRangeSliderProps;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export { default } from "./FrontPanelRangeSlider";
8
+ export { default as FrontPanelRangeSliderProps } from "./FrontPanelRangeSlider.props";
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ /// <reference types="react" />
8
+ declare const FrontPanelSelectEntry: {
9
+ Root: import("react").FC<import("./FrontPanelSelectEntryRoot").FrontPanelSelectEntryRootCombinedProps>;
10
+ Trigger: import("react").ForwardRefExoticComponent<import("../../primitives/SelectEntry/SelectEntryTrigger").SelectEntryTriggerCombinedProps & import("react").RefAttributes<HTMLButtonElement>>;
11
+ Content: import("react").ForwardRefExoticComponent<import("../../primitives/SelectEntry/SelectEntryContent").SelectContentCombinedProps & import("react").RefAttributes<HTMLDivElement>>;
12
+ Item: import("react").ForwardRefExoticComponent<import("../../primitives/SelectEntry/SelectEntryItem").SelectEntryItemCombinedProps & import("react").RefAttributes<HTMLDivElement>>;
13
+ Group: import("react").ForwardRefExoticComponent<import("../../primitives/SelectEntry/SelectEntryGroup").SelectEntryGroupCombinedProps & import("react").RefAttributes<HTMLDivElement>>;
14
+ Label: import("react").ForwardRefExoticComponent<import("../../primitives/SelectEntry/SelectEntryLabel").SelectEntryLabelCombinedProps & import("react").RefAttributes<HTMLDivElement>>;
15
+ Separator: import("react").ForwardRefExoticComponent<import("../../primitives/SelectEntry/SelectEntrySeparator").SelectEntrySeparatorCombinedProps & import("react").RefAttributes<HTMLDivElement>>;
16
+ };
17
+ export default FrontPanelSelectEntry;
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import React from "react";
8
+ import { SelectEntry } from "../../primitives";
9
+ import FrontPanelSelectEntryRootProps from "./FrontPanelSelectEntryRoot.props";
10
+ interface FrontPanelSelectEntryRootCombinedProps extends React.ComponentPropsWithoutRef<typeof SelectEntry.Root>, FrontPanelSelectEntryRootProps {
11
+ }
12
+ export type { FrontPanelSelectEntryRootCombinedProps };
13
+ /**
14
+ * `FrontPanelSelectEntryRoot` is a React component that is the root component of a select entry that
15
+ * allows setting a WireIn endpoint. The children of this component are used to specify the component
16
+ * parts. The parts include the trigger that can be clicked on to show a list of options to select from,
17
+ * and the content that is the list of options.
18
+ *
19
+ * @component
20
+ * @param {object} props - Properties passed to component
21
+ * @param {object} rootProps - Any additional properties to pass to the root component
22
+ *
23
+ * @returns {React.Node} The rendered FrontPanelSelectEntryRoot component
24
+ *
25
+ * @example
26
+ * ```jsx
27
+ * <FrontPanelSelectEntryRoot
28
+ * fpEndpoint={{epAddress: 0x00, bitOffset: 1}}
29
+ * maximumValue=2 />
30
+ * <FrontPanelSelectEntry.Trigger />
31
+ * <FrontPanelSelectEntry.Content>
32
+ * <FrontPanelSelectEntry.Group>
33
+ * <FrontPanelSelectEntry.Label>Options</FrontPanelSelectEntry.Label>
34
+ * <FrontPanelSelectEntry.Item value="0">Option 0</FrontPanelSelectEntry.Option>
35
+ * <FrontPanelSelectEntry.Item value="1">Option 1</FrontPanelSelectEntry.Option>
36
+ * <FrontPanelSelectEntry.Item value="2">Option 2</FrontPanelSelectEntry.Option>
37
+ * </FrontPanelSelectEntry.Group>
38
+ * </FrontPanelSelectEntry.Content>
39
+ * </FrontPanelSelectEntryRoot>
40
+ * ```
41
+ */
42
+ declare const FrontPanelSelectEntryRoot: React.FC<FrontPanelSelectEntryRootCombinedProps>;
43
+ export default FrontPanelSelectEntryRoot;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import { EndpointAddressProps } from "../types";
8
+ /**
9
+ * Interface for the properties of the `FrontPanelSelectEntryRoot` component.
10
+ */
11
+ interface FrontPanelSelectEntryRootProps {
12
+ /**
13
+ * Address of the frontpanel endpoint
14
+ */
15
+ fpEndpoint: EndpointAddressProps;
16
+ /**
17
+ * Maximum value that the select entry will allow
18
+ */
19
+ maximumValue: bigint;
20
+ }
21
+ export default FrontPanelSelectEntryRootProps;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export { default as FrontPanelSelectEntry } from "./FrontPanelSelectEntry";
8
+ export { default as FrontPanelSelectEntryRoot } from "./FrontPanelSelectEntryRoot";
9
+ export { default as FrontPanelSelectEntryTrigger } from "../../primitives/SelectEntry/SelectEntryTrigger";
10
+ export { default as FrontPanelSelectEntryContent } from "../../primitives/SelectEntry/SelectEntryContent";
11
+ export { default as FrontPanelSelectEntryItem } from "../../primitives/SelectEntry/SelectEntryItem";
12
+ export { default as FrontPanelSelectEntryGroup } from "../../primitives/SelectEntry/SelectEntryGroup";
13
+ export { default as FrontPanelSelectEntryLabel } from "../../primitives/SelectEntry/SelectEntryLabel";
14
+ export { default as FrontPanelSelectEntrySeparator } from "../../primitives/SelectEntry/SelectEntrySeparator";
15
+ export { default as FrontPanelSelectEntryRootProps } from "./FrontPanelSelectEntryRoot.props";
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import React from "react";
8
+ import { ToggleSwitch } from "../../primitives";
9
+ import FrontPanelToggleSwitchProps from "./FrontPanelToggleSwitch.props";
10
+ interface FrontPanelToggleSwitchCombinedProps extends Omit<React.ComponentPropsWithoutRef<typeof ToggleSwitch>, "state" | "onToggleStateChanged">, FrontPanelToggleSwitchProps {
11
+ }
12
+ export type { FrontPanelToggleSwitchCombinedProps };
13
+ /**
14
+ * `FrontPanelToggleSwitch` is a React component that renders a toggle switch with an optional label and or tooltip
15
+ * to toggle the state of a WireIn endpoint.
16
+ *
17
+ * @component
18
+ * @param {Object} props - The properties that define the `FrontPanelToggleSwitch` component.
19
+ * @param {React.Ref<FrontPanelToggleSwitchElement>} forwardedRef - A ref that is forwarded to the `FrontPanelToggleSwitch` component.
20
+ *
21
+ * @returns {React.ReactElement} The `FrontPanelToggleSwitch` component.
22
+ *
23
+ * @example
24
+ * ```jsx
25
+ * <FrontPanelToggleSwitch
26
+ * label="Toggle"
27
+ * fpEndpoint={{epAddress: 0x00, bitOffset: 1}} />
28
+ * ```
29
+ */
30
+ declare const FrontPanelToggleSwitch: React.ForwardRefExoticComponent<FrontPanelToggleSwitchCombinedProps & React.RefAttributes<HTMLButtonElement>>;
31
+ export default FrontPanelToggleSwitch;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import { EndpointAddressProps } from "../types";
8
+ /**
9
+ * Interface for the properties of the `FrontPanelToggleSwitch` component.
10
+ */
11
+ interface FrontPanelToggleSwitchProps {
12
+ /**
13
+ * Address of the frontpanel endpoint
14
+ */
15
+ fpEndpoint: EndpointAddressProps;
16
+ }
17
+ export default FrontPanelToggleSwitchProps;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export { default } from "./FrontPanelToggleSwitch";
8
+ export { default as FrontPanelToggleSwitchProps } from "./FrontPanelToggleSwitch.props";
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import React from "react";
8
+ import "./FrontPanelTriggerButton.css";
9
+ import FrontPanelTriggerButtonProps from "./FrontPanelTriggerButton.props";
10
+ import Button from "../../primitives/Button";
11
+ interface FrontPanelTriggerButtonCombinedProps extends Omit<React.ComponentPropsWithoutRef<typeof Button>, "asChild" | "onButtonClick" | "onButtonDown" | "onButtonUp">, FrontPanelTriggerButtonProps {
12
+ }
13
+ export type { FrontPanelTriggerButtonCombinedProps };
14
+ /**
15
+ * `FrontPanelTriggerButton` is a React component that renders a trigger button that asserts a TriggerIn endpoint when
16
+ * it is pressed.
17
+ *
18
+ * @component
19
+ * @param {Object} props - Properties passed to component
20
+ * @param {React.Ref<FrontPanelTriggerButtonElement>} forwardedRef - Forwarded ref for the button
21
+ *
22
+ * @returns {React.ReactElement} The rendered FrontPanelTriggerButton component
23
+ *
24
+ * @example
25
+ * ```jsx
26
+ * <FrontPanelTriggerButton
27
+ * label="Trigger"
28
+ * fpEndpoint={{epAddress: 0x00, bitOffset: 1}} />
29
+ * ```
30
+ */
31
+ declare const FrontPanelTriggerButton: React.ForwardRefExoticComponent<FrontPanelTriggerButtonCombinedProps & React.RefAttributes<HTMLButtonElement>>;
32
+ export default FrontPanelTriggerButton;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import { EndpointAddressProps } from "../types";
8
+ /**
9
+ * Interface for the properties of the FrontPanelTriggerButton component.
10
+ * This interface extends the properties of the TriggerButton component.
11
+ */
12
+ interface FrontPanelTriggerButtonProps {
13
+ /**
14
+ * Address of the frontpanel endpoint
15
+ */
16
+ fpEndpoint: EndpointAddressProps;
17
+ }
18
+ export default FrontPanelTriggerButtonProps;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export { default } from "./FrontPanelTriggerButton";
8
+ export { default as FrontPanelTriggerButtonProps } from "./FrontPanelTriggerButton.props";
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import * as React from "react";
8
+ import { IconProps } from "./types";
9
+ export declare enum ChevronDirection {
10
+ Up = 0,
11
+ Down = 1
12
+ }
13
+ export interface ChevronIconProps extends IconProps {
14
+ direction: ChevronDirection;
15
+ }
16
+ declare const ChevronIcon: React.ForwardRefExoticComponent<ChevronIconProps & React.RefAttributes<SVGSVGElement>>;
17
+ export default ChevronIcon;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import * as React from "react";
8
+ import { IconProps } from "./types";
9
+ export declare enum IndicatorArrowDirection {
10
+ Up = 0,
11
+ Down = 1
12
+ }
13
+ export interface IndicatorArrowIconProps extends IconProps {
14
+ direction: IndicatorArrowDirection;
15
+ }
16
+ declare const IndicatorArrowIcon: React.ForwardRefExoticComponent<IndicatorArrowIconProps & React.RefAttributes<SVGSVGElement>>;
17
+ export default IndicatorArrowIcon;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import * as React from "react";
8
+ import { IconProps } from "./types";
9
+ declare const IndicatorBarIcon: React.ForwardRefExoticComponent<IconProps & React.RefAttributes<SVGSVGElement>>;
10
+ export default IndicatorBarIcon;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import * as React from "react";
8
+ import { StateIconProps } from "./types";
9
+ import { ToggleState } from "../../core";
10
+ export interface IndicatorStateIconProps extends StateIconProps {
11
+ state: ToggleState;
12
+ }
13
+ declare const IndicatorStateIcon: React.ForwardRefExoticComponent<IndicatorStateIconProps & React.RefAttributes<SVGSVGElement>>;
14
+ export default IndicatorStateIcon;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import * as React from "react";
8
+ import { StateIconProps } from "./types";
9
+ import { ToggleState } from "../../core";
10
+ export interface RadioToggleStateIconProps extends StateIconProps {
11
+ state: ToggleState;
12
+ }
13
+ declare const RadioToggleStateIcon: React.ForwardRefExoticComponent<RadioToggleStateIconProps & React.RefAttributes<SVGSVGElement>>;
14
+ export default RadioToggleStateIcon;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import * as React from "react";
8
+ import { StateIconProps } from "./types";
9
+ import { ToggleState } from "../../core";
10
+ export interface SwitchToggleStateIconProps extends StateIconProps {
11
+ state: ToggleState;
12
+ }
13
+ declare const SwitchToggleStateIcon: React.ForwardRefExoticComponent<SwitchToggleStateIconProps & React.RefAttributes<SVGSVGElement>>;
14
+ export default SwitchToggleStateIcon;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export { default as ChevronIcon, ChevronDirection } from "./ChevronIcon";
8
+ export { default as IndicatorArrowIcon, IndicatorArrowDirection } from "./IndicatorArrowIcon";
9
+ export { default as IndicatorBarIcon } from "./IndicatorBarIcon";
10
+ export { default as IndicatorStateIcon } from "./IndicatorStateIcon";
11
+ export { default as RadioToggleStateIcon } from "./RadioToggleStateIcon";
12
+ export { default as SwitchToggleStateIcon } from "./SwitchToggleStateIcon";
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import * as React from "react";
8
+ export interface IconProps extends React.SVGAttributes<SVGElement> {
9
+ children?: never;
10
+ color?: string;
11
+ }
12
+ export interface StateIconProps extends React.SVGAttributes<SVGElement> {
13
+ children?: never;
14
+ color?: string;
15
+ colorOnState?: string;
16
+ colorOffState?: string;
17
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export { EndpointAddressProps } from "./types";
8
+ export { default as FrontPanel } from "./FrontPanel";
9
+ export { default as FrontPanelNumberEntry } from "./FrontPanelNumberEntry";
10
+ export { default as FrontPanelNumberDisplay } from "./FrontPanelNumberDisplay";
11
+ export { default as FrontPanelIndicator } from "./FrontPanelIndicator";
12
+ export { default as FrontPanelPushButton } from "./FrontPanelPushButton";
13
+ export { default as FrontPanelToggleSwitch } from "./FrontPanelToggleSwitch";
14
+ export { default as FrontPanelTriggerButton } from "./FrontPanelTriggerButton";
15
+ export { default as FrontPanelRangeSlider } from "./FrontPanelRangeSlider";
16
+ export { FrontPanelSelectEntry, FrontPanelSelectEntryRoot } from "./FrontPanelSelectEntry";
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import { BitCount } from "@opalkelly/frontpanel-alloy-core";
8
+ export interface EndpointAddressProps {
9
+ epAddress: number;
10
+ bitOffset: BitCount;
11
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import React from "react";
8
+ import { IFrontPanel, IFrontPanelEventSource, WorkQueue } from "@opalkelly/frontpanel-alloy-core";
9
+ export type FrontPanelContextValue = {
10
+ device: IFrontPanel;
11
+ workQueue: WorkQueue;
12
+ eventSource?: IFrontPanelEventSource;
13
+ };
14
+ declare const FrontPanelContext: React.Context<FrontPanelContextValue>;
15
+ export default FrontPanelContext;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export { default as FrontPanelContext } from "./FrontPanelContext";
8
+ export { FrontPanelContextValue } from "./FrontPanelContext";
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export declare function CalculateBitLength(value: bigint): number;
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import { NumeralSystem } from "./Types";
8
+ /**
9
+ * Class representing numeric digits in various numeral systems.
10
+ */
11
+ export declare class NumericDigits {
12
+ /**
13
+ * Maximum number of digits.
14
+ */
15
+ static readonly MAX_DIGITS: number;
16
+ /**
17
+ * Binary digit values.
18
+ */
19
+ static readonly BINARY_DIGITVALUES: string[];
20
+ /**
21
+ * Octal digit values.
22
+ */
23
+ static readonly OCTAL_DIGITVALUES: string[];
24
+ /**
25
+ * Decimal digit values.
26
+ */
27
+ static readonly DECIMAL_DIGITVALUES: string[];
28
+ /**
29
+ * Hexadecimal digit values.
30
+ */
31
+ static readonly HEXADECIMAL_DIGITVALUES: string[];
32
+ private readonly _DigitCount;
33
+ private readonly _NumeralSystem;
34
+ private readonly _DigitChars;
35
+ /**
36
+ * Gets the count of digits.
37
+ */
38
+ get DigitCount(): bigint;
39
+ /**
40
+ * Gets the numeral system.
41
+ */
42
+ get NumeralSystem(): NumeralSystem;
43
+ /**
44
+ * Gets the digit characters.
45
+ */
46
+ get DigitChars(): string[];
47
+ /**
48
+ * Creates a new instance of NumericDigits.
49
+ * @param digitCount - The count of digits.
50
+ * @param numeralSystem - The numeral system.
51
+ */
52
+ constructor(digitCount: bigint, numeralSystem: NumeralSystem);
53
+ /**
54
+ * Gets the character representation of the digit corresponding
55
+ * to the value specified.
56
+ * @param value - The value.
57
+ * @returns {string} - The digit as represented in the numeral system.
58
+ */
59
+ GetDigitFromValue(value: number): string;
60
+ /**
61
+ * Gets the digit characters from the numeral.
62
+ * @param numeral - The numeral system.
63
+ * @returns {string[]} - The digit characters.
64
+ */
65
+ static GetDigitChars(numeral: NumeralSystem): string[];
66
+ /**
67
+ * Computes the digit count from the bits.
68
+ * @param bitcount - The bit count.
69
+ * @param numeral - The numeral.
70
+ * @returns {bigint} - The digit count.
71
+ */
72
+ static ComputeDigitCountFromBits(bitcount: number, numeral: NumeralSystem): bigint;
73
+ /**
74
+ * Computes the digit count from the value.
75
+ * @param value - The value.
76
+ * @param numeral - The numeral.
77
+ * @returns {bigint} - The digit count.
78
+ */
79
+ static ComputeDigitCountFromValue(value: bigint, numeral: NumeralSystem): bigint;
80
+ }
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ /**
8
+ * Enumeration representing numeral systems.
9
+ */
10
+ export declare enum NumeralSystem {
11
+ /**
12
+ * Binary numeral system (base 2).
13
+ */
14
+ Binary = 2,
15
+ /**
16
+ * Octal numeral system (base 8).
17
+ */
18
+ Octal = 8,
19
+ /**
20
+ * Decimal numeral system (base 10).
21
+ */
22
+ Decimal = 10,
23
+ /**
24
+ * Hexadecimal numeral system (base 16).
25
+ */
26
+ Hexadecimal = 16
27
+ }
28
+ /**
29
+ * Enumeration representing toggle states.
30
+ */
31
+ export declare enum ToggleState {
32
+ Off = 0,
33
+ On = 1
34
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export * from "./Types";
8
+ export * from "./Numeric";
9
+ export * from "./Binary";
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ export * from "./core";
8
+ export * from "./components";
9
+ export * from "./contexts";
10
+ export * from "./primitives";
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ import * as React from "react";
8
+ import { ApplicationProps } from "./Application.props";
9
+ declare const Application: React.ForwardRefExoticComponent<ApplicationProps & React.RefAttributes<HTMLDivElement>>;
10
+ export default Application;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright (c) 2024 Opal Kelly Incorporated
3
+ *
4
+ * This source code is licensed under the FrontPanel license.
5
+ * See the LICENSE file found in the root directory of this project.
6
+ */
7
+ /// <reference types="react" />
8
+ interface ApplicationProps extends React.PropsWithChildren<NonNullable<unknown>> {
9
+ }
10
+ export { ApplicationProps };