@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,38 @@
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
+ export type LabelVerticalPosition = "top" | "bottom";
9
+ export type LabelHorizontalPosition = "left" | "right";
10
+
11
+ /**
12
+ * Interface for the properties of the `Label` component.
13
+ */
14
+ interface LabelProps extends React.PropsWithChildren<NonNullable<unknown>> {
15
+ /**
16
+ * Text to be displayed on the label
17
+ */
18
+ text: string;
19
+
20
+ /**
21
+ * Optional CSS class to apply to the label
22
+ */
23
+ className?: string;
24
+
25
+ /**
26
+ * Optional horizontal position of the label, defined in LabelHorizontalPosition
27
+ * @default "left"
28
+ */
29
+ horizontalPosition?: LabelHorizontalPosition;
30
+
31
+ /**
32
+ * Optional vertical position of the label, defined in LabelVerticalPosition
33
+ * @default "top"
34
+ */
35
+ verticalPosition?: LabelVerticalPosition;
36
+ }
37
+
38
+ export default LabelProps;
@@ -0,0 +1,53 @@
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
+ import React from "react";
9
+
10
+ import type { Meta, StoryObj } from "@storybook/react";
11
+
12
+ import Label from "./Label";
13
+
14
+ // Configure Story metadata
15
+ const meta = {
16
+ title: "Components/Label",
17
+ component: Label,
18
+ parameters: {
19
+ layout: "centered" // Center the component in the Canvas
20
+ },
21
+ tags: ["autodocs"], // Automatically generate documentation
22
+ argTypes: {
23
+ horizontalPosition: {
24
+ control: "radio",
25
+ options: ["left", "right"]
26
+ },
27
+ verticalPosition: {
28
+ control: "radio",
29
+ options: ["top", "bottom"]
30
+ }
31
+ }
32
+ } satisfies Meta<typeof Label>;
33
+
34
+ export default meta;
35
+
36
+ type Story = StoryObj<typeof meta>;
37
+
38
+ // Primary Story
39
+ export const Primary: Story = {
40
+ render: ({ ...args }) => {
41
+ return (
42
+ <Label {...args}>
43
+ <input type="text" />
44
+ </Label>
45
+ );
46
+ },
47
+ args: {
48
+ text: "Label Text",
49
+ // Optional Properties
50
+ horizontalPosition: "left",
51
+ verticalPosition: "top"
52
+ }
53
+ };
@@ -0,0 +1,66 @@
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
+ import React from "react";
9
+
10
+ import classNames from "classnames";
11
+
12
+ import LabelProps from "./Label.props";
13
+
14
+ import "../../index.css";
15
+
16
+ import "./Label.css";
17
+
18
+ type LabelElement = React.ElementRef<"div">;
19
+
20
+ /**
21
+ * `Label` is a React component that renders a label with optional positioning.
22
+ *
23
+ * @component
24
+ * @param {object} props - Properties passed to component
25
+ * @param {React.Ref} forwardedRef - Forwarded ref for the indicator
26
+ *
27
+ * @returns {ReactNode} The rendered Label component
28
+ *
29
+ * @example
30
+ * ```jsx
31
+ * <Label
32
+ * text="Label"
33
+ * horizontalPosition="left"
34
+ * verticalPosition="top">
35
+ * <input type="text" />
36
+ * </Label>
37
+ * ```
38
+ */
39
+ const Label = React.forwardRef<LabelElement, LabelProps>((props, forwardedRef) => {
40
+ const {
41
+ className,
42
+ text,
43
+ horizontalPosition = "left",
44
+ verticalPosition = "top",
45
+ children,
46
+ ...labelProps
47
+ } = props;
48
+
49
+ return (
50
+ <div
51
+ {...labelProps}
52
+ ref={forwardedRef}
53
+ className={classNames(
54
+ "okLabel",
55
+ className,
56
+ "ok-pos-" + horizontalPosition + "-" + verticalPosition
57
+ )}>
58
+ <span className={classNames("okLabelText")}>{text}</span>
59
+ {children}
60
+ </div>
61
+ );
62
+ });
63
+
64
+ Label.displayName = "Label";
65
+
66
+ export default Label;
@@ -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
+
8
+ export { default } from "./Label";
9
+
10
+ export { default as LabelProps } from "./Label.props";
11
+ export { LabelHorizontalPosition, LabelVerticalPosition } from "./Label.props";
@@ -0,0 +1,63 @@
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
+ .okNumberDisplay {
9
+ /* Layout */
10
+ display: flex;
11
+ padding: var(--number-display-padding, 6px 12px);
12
+ justify-content: flex-end;
13
+ align-items: center;
14
+ gap: 4px;
15
+
16
+ /* Style */
17
+ border-radius: 4px;
18
+ border: 1px solid var(--Gray-2, #d0d7df);
19
+ background: #f5f5f5;
20
+
21
+ /* Content Style */
22
+ .okNumberDisplayContent {
23
+ display: flex;
24
+ padding: var(--spacing-0, 0px);
25
+ align-items: center;
26
+ justify-content: flex-end;
27
+ gap: 8px;
28
+ flex: 1 0 0;
29
+ }
30
+
31
+ /* Text Style */
32
+ .okNumberDisplayText {
33
+ /* Typography */
34
+ color: var(--Dark, #343434);
35
+ text-align: center;
36
+ font-family: Monaco;
37
+ font-size: var(--number-display-font-size, 12px);
38
+ font-style: normal;
39
+ font-weight: 400;
40
+ line-height: var(--number-display-line-height, 12px); /* 100% */
41
+ }
42
+
43
+ /* Size 1 */
44
+ &:where(.ok-r-size-1) {
45
+ --number-display-padding: 6px 6px;
46
+ --number-display-font-size: 12px;
47
+ --number-display-line-height: 12px;
48
+ }
49
+
50
+ /* Sizes 2 */
51
+ &:where(.ok-r-size-2) {
52
+ --number-display-padding: 6px 10px;
53
+ --number-display-font-size: 14px;
54
+ --number-display-line-height: 14px;
55
+ }
56
+
57
+ /* Sizes 3 */
58
+ &:where(.ok-r-size-3) {
59
+ --number-display-padding: 6px 18px;
60
+ --number-display-font-size: 20px;
61
+ --number-display-line-height: 20px;
62
+ }
63
+ }
@@ -0,0 +1,65 @@
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
+ import { NumeralSystem } from "../../core";
9
+
10
+ import { LabelProps } from "../Label";
11
+
12
+ export type NumberDisplaySize = 1 | 2 | 3;
13
+
14
+ /**
15
+ * Interface for the properties of the `NumberDisplay` component.
16
+ */
17
+ interface NumberDisplayProps {
18
+ /**
19
+ * Current value to be displayed
20
+ */
21
+ value: bigint;
22
+
23
+ /**
24
+ * Maximum value that can be displayed
25
+ */
26
+ maximumValue: bigint;
27
+
28
+ /**
29
+ * Minimum value that can be displayed
30
+ */
31
+ minimumValue: bigint;
32
+
33
+ /**
34
+ * Optional CSS class to apply to the number display
35
+ */
36
+ className?: string;
37
+
38
+ /**
39
+ * Optional label properties for the number display
40
+ */
41
+ label?: LabelProps;
42
+
43
+ /**
44
+ * Optional size of the number display
45
+ * @default 1
46
+ */
47
+ size?: NumberDisplaySize;
48
+
49
+ /**
50
+ * Optional tooltip text to be displayed on hover
51
+ */
52
+ tooltip?: string;
53
+
54
+ /**
55
+ * Optional numeral system to be used for the number display, defined in NumeralSystem
56
+ */
57
+ numeralSystem?: NumeralSystem;
58
+
59
+ /**
60
+ * Optional decimal scale for the number entry (Only used when numeral system is NumeralSystem.Decimal)
61
+ */
62
+ decimalScale?: number;
63
+ }
64
+
65
+ export default NumberDisplayProps;
@@ -0,0 +1,83 @@
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
+ import React from "react";
9
+
10
+ import type { Meta, StoryObj } from "@storybook/react";
11
+
12
+ import withApplication from "../../stories/decorators/Application.decorator";
13
+
14
+ import NumberDisplay from "./NumberDisplay";
15
+
16
+ import { NumeralSystem } from "../../core";
17
+
18
+ // Configure Story metadata
19
+ const meta = {
20
+ title: "Components/NumberDisplay",
21
+ component: NumberDisplay,
22
+ parameters: {
23
+ layout: "centered" // Center the component in the Canvas
24
+ },
25
+ tags: ["autodocs"], // Automatically generate documentation
26
+ argTypes: {
27
+ size: {
28
+ control: { type: "range", min: 1, max: 3, step: 1 }
29
+ },
30
+ numeralSystem: {
31
+ control: "radio",
32
+ options: ["Decimal", "Hexadecimal", "Binary", "Octal"],
33
+ mapping: {
34
+ Decimal: NumeralSystem.Decimal,
35
+ Hexadecimal: NumeralSystem.Hexadecimal,
36
+ Binary: NumeralSystem.Binary,
37
+ Octal: NumeralSystem.Octal
38
+ }
39
+ },
40
+ valueString: { control: "text" },
41
+ maximumValueString: { control: "text" },
42
+ minimumValueString: { control: "text" }
43
+ }
44
+ } satisfies Meta<typeof NumberDisplay>;
45
+
46
+ export default meta;
47
+
48
+ type Story = StoryObj<typeof meta>;
49
+
50
+ const convertToBigInt = (value: string) => {
51
+ return BigInt(value);
52
+ };
53
+
54
+ // Primary Story
55
+ export const Primary: Story = {
56
+ decorators: [withApplication],
57
+ render: (args) => {
58
+ const { valueString, maximumValueString, minimumValueString } = args;
59
+
60
+ const value = convertToBigInt(valueString);
61
+ const maximum = convertToBigInt(maximumValueString);
62
+ const minimum = convertToBigInt(minimumValueString);
63
+
64
+ return (
65
+ <NumberDisplay {...args} value={value} maximumValue={maximum} minimumValue={minimum} />
66
+ );
67
+ },
68
+ args: {
69
+ valueString: "8000",
70
+ maximumValueString: "1000000",
71
+ minimumValueString: "-1000000",
72
+ // Optional Properties
73
+ numeralSystem: NumeralSystem.Decimal,
74
+ decimalScale: 3,
75
+ label: {
76
+ text: "Decimal Value",
77
+ verticalPosition: "top",
78
+ horizontalPosition: "left"
79
+ },
80
+ size: 1,
81
+ tooltip: "Set the decimal value"
82
+ }
83
+ };
@@ -0,0 +1,155 @@
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
+ import React from "react";
9
+
10
+ import classnames from "classnames";
11
+
12
+ import NumberDisplayProps from "./NumberDisplay.props";
13
+
14
+ import "../../index.css";
15
+
16
+ import "./NumberDisplay.css";
17
+
18
+ import Label from "../Label";
19
+
20
+ import { withTooltip } from "../TooltipUtility";
21
+
22
+ import { NumeralSystem, NumericDigits } from "../../core";
23
+
24
+ function FormatValueString(
25
+ value: bigint | null,
26
+ digitCount: bigint,
27
+ numeralSystem: NumeralSystem,
28
+ decimalScale: number
29
+ ): string {
30
+ let retval: string;
31
+
32
+ if (value != null) {
33
+ const outputValue: bigint = value >= 0n ? value : -value;
34
+ const outputDigitCount: number = Number(digitCount);
35
+
36
+ const outputValueStr: string = outputValue
37
+ .toString(numeralSystem)
38
+ .padStart(outputDigitCount, "0");
39
+
40
+ if (numeralSystem === NumeralSystem.Decimal && decimalScale > 0) {
41
+ const integerDigitCount: number = outputDigitCount - decimalScale;
42
+
43
+ if (integerDigitCount > 0) {
44
+ retval =
45
+ outputValueStr.slice(0, integerDigitCount) +
46
+ "." +
47
+ outputValueStr.slice(integerDigitCount);
48
+ } else {
49
+ const prefixString: string = "0.";
50
+ const paddedPrefixString = prefixString.padEnd(
51
+ prefixString.length - integerDigitCount,
52
+ "0"
53
+ );
54
+
55
+ retval = paddedPrefixString + outputValueStr;
56
+ }
57
+ } else {
58
+ retval = outputValueStr;
59
+ }
60
+ } else {
61
+ retval = "Error"; //ERROR: Value is null
62
+ }
63
+
64
+ return retval;
65
+ }
66
+
67
+ type NumberDisplayElement = React.ElementRef<"div">;
68
+
69
+ /**
70
+ * `NumberDisplay` is a React component that renders a number represented in binary, octal,
71
+ * decimal, or hexadecimal numeral systems with optional tooltip. It also allows to
72
+ * optionally set the decimal scale of the number when using the decimal numeral system.
73
+ *
74
+ * @component
75
+ * @param {object} props - Properties passed to component
76
+ * @param {React.Ref} forwardedRef - Forwarded ref for the NumberDisplay
77
+ * @returns {React.Node} The rendered NumberDisplay component
78
+ *
79
+ * @example
80
+ * ```jsx
81
+ * <NumberDisplay
82
+ * label="Number Display"
83
+ * value={23456}
84
+ * maximumValue={65535}
85
+ * minimumValue={0} />
86
+ * ```
87
+ */
88
+ const NumberDisplay = React.forwardRef<NumberDisplayElement, NumberDisplayProps>(
89
+ (props, forwardedRef) => {
90
+ const {
91
+ className,
92
+ label,
93
+ size = 1,
94
+ numeralSystem = NumeralSystem.Decimal,
95
+ decimalScale = 0,
96
+ maximumValue,
97
+ minimumValue,
98
+ value
99
+ } = props;
100
+
101
+ const digitCount: bigint = React.useMemo(() => {
102
+ const maximumValueDigitCount: bigint = NumericDigits.ComputeDigitCountFromValue(
103
+ maximumValue,
104
+ numeralSystem
105
+ );
106
+ const minimumValueDigitCount: bigint = NumericDigits.ComputeDigitCountFromValue(
107
+ minimumValue,
108
+ numeralSystem
109
+ );
110
+
111
+ const maximumDigitCount: bigint =
112
+ maximumValueDigitCount > minimumValueDigitCount
113
+ ? maximumValueDigitCount
114
+ : minimumValueDigitCount;
115
+
116
+ return maximumDigitCount;
117
+ }, [maximumValue, minimumValue, numeralSystem]);
118
+
119
+ const negativeSign = React.useMemo(
120
+ () => <span className={classnames("okNumberDisplayText", "ok-r-size-" + size)}>-</span>,
121
+ [size]
122
+ );
123
+
124
+ const NumberDisplayWithTooltip = withTooltip(
125
+ <div
126
+ ref={forwardedRef}
127
+ className={classnames("okNumberDisplay", className, "ok-r-size-" + size)}>
128
+ <div className="okNumberDisplayContent">
129
+ {value < 0n && negativeSign}
130
+ <span className="okNumberDisplayText">
131
+ {FormatValueString(value, digitCount, numeralSystem, decimalScale)}
132
+ </span>
133
+ </div>
134
+ </div>
135
+ );
136
+
137
+ const showLabel = label != null;
138
+
139
+ if (showLabel) {
140
+ return (
141
+ <Label {...label}>
142
+ <div style={{ width: "100%" }}>
143
+ <NumberDisplayWithTooltip {...props} />
144
+ </div>
145
+ </Label>
146
+ );
147
+ } else {
148
+ <NumberDisplayWithTooltip {...props} />;
149
+ }
150
+ }
151
+ );
152
+
153
+ NumberDisplay.displayName = "NumberDisplay";
154
+
155
+ export default NumberDisplay;
@@ -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
+
8
+ export { default } from "./NumberDisplay";
9
+
10
+ export { default as NumberDisplayProps } from "./NumberDisplay.props";
11
+ export { NumberDisplaySize } from "./NumberDisplay.props";
@@ -0,0 +1,71 @@
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
+ .okNumberEntry {
9
+ /* Layout */
10
+ display: flex;
11
+ padding: var(--number-entry-padding, 6px);
12
+ justify-content: flex-end;
13
+ align-items: center;
14
+
15
+ /* Style */
16
+ border-radius: 4px;
17
+ border: 1px solid var(--brand-12, #44bd84);
18
+ background: var(--Light, #fff);
19
+
20
+ /* Content Style */
21
+ .okNumberEntryContent {
22
+ display: flex;
23
+ height: auto; /*32px;*/
24
+ justify-content: flex-end;
25
+ align-items: center;
26
+ gap: var(--spacing-0, 0px);
27
+ align-self: stretch;
28
+ }
29
+
30
+ /* Text Style */
31
+ .okNumberEntryText {
32
+ /* Typography */
33
+ color: var(--Dark, #343434);
34
+ text-align: center;
35
+ font-family: Monaco;
36
+ font-size: var(--number-entry-font-size, 12px);
37
+ font-style: normal;
38
+ font-weight: 400;
39
+ line-height: var(--number-entry-line-height, 12px); /* 100% */
40
+ letter-spacing: 1.26px;
41
+ }
42
+
43
+ /* Size 1 */
44
+ &:where(.ok-r-size-1) {
45
+ --number-entry-padding: 1px 6px;
46
+ --number-entry-font-size: 12px;
47
+ --number-entry-line-height: 12px;
48
+ }
49
+
50
+ /* Sizes 2 */
51
+ &:where(.ok-r-size-2) {
52
+ --number-entry-padding: 1px 10px;
53
+ --number-entry-font-size: 14px;
54
+ --number-entry-line-height: 14px;
55
+ }
56
+
57
+ /* Sizes 3 */
58
+ &:where(.ok-r-size-3) {
59
+ --number-entry-padding: 1px 18px;
60
+ --number-entry-font-size: 20px;
61
+ --number-entry-line-height: 20px;
62
+ }
63
+ }
64
+
65
+ .okNumberEntry[data-disabled="true"] {
66
+ border: 1px solid var(--Gray-2, #d0d7df);
67
+ opacity: 0.5;
68
+ background: var(--Gray-3, #e7ebef);
69
+
70
+ pointer-events: none;
71
+ }