@opentrons/components 0.2.0-alpha.0 → 0.2.0-alpha.4

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 (582) hide show
  1. package/lib/atoms/StyledText/index.d.ts +0 -1
  2. package/lib/hardware-sim/BaseDeck/BaseDeck.d.ts +2 -4
  3. package/lib/hardware-sim/Deck/RobotCoordsForeignDiv.d.ts +5 -6
  4. package/lib/hardware-sim/Deck/RobotCoordsForeignObject.d.ts +5 -8
  5. package/lib/hardware-sim/Deck/RobotWorkSpace.d.ts +3 -2
  6. package/lib/hardware-sim/Labware/LabwareRender.d.ts +2 -1
  7. package/lib/hardware-sim/Labware/labwareInternals/FilledWells.d.ts +2 -1
  8. package/lib/hardware-sim/Labware/labwareInternals/LabwareOutline.d.ts +1 -1
  9. package/lib/hardware-sim/Labware/labwareInternals/Well.d.ts +2 -1
  10. package/lib/hardware-sim/Module/index.d.ts +0 -14
  11. package/lib/hardware-sim/RobotCoordinateSpace/RobotCoordinateSpace.d.ts +3 -5
  12. package/lib/icons/ModuleIcon.d.ts +3 -4
  13. package/lib/index.d.ts +1 -0
  14. package/lib/index.mjs +34341 -0
  15. package/lib/legacy-hardware-sim/ModuleItem.d.ts +17 -0
  16. package/lib/legacy-hardware-sim/index.d.ts +1 -0
  17. package/lib/molecules/DeckInfoLabel/index.d.ts +20 -8
  18. package/lib/organisms/FixtureOption/index.d.ts +1 -0
  19. package/lib/primitives/ForeignObject.d.ts +18 -8
  20. package/lib/style.css +1 -0
  21. package/package.json +25 -6
  22. package/Makefile +0 -51
  23. package/babel.config.cjs +0 -21
  24. package/cssModuleSideEffect.ts +0 -22
  25. package/lib/atoms/StyledText/PlaceholderStyledText.d.ts +0 -14
  26. package/src/Components.mdx +0 -12
  27. package/src/__mocks__/file.js +0 -10
  28. package/src/__tests__/utils.test.ts +0 -28
  29. package/src/alerts/AlertItem.stories.tsx +0 -49
  30. package/src/alerts/AlertItem.tsx +0 -86
  31. package/src/alerts/alerts.module.css +0 -103
  32. package/src/alerts/index.ts +0 -3
  33. package/src/assets/localization/en/deck_configuration.json +0 -12
  34. package/src/assets/localization/en/index.ts +0 -10
  35. package/src/assets/localization/en/protocol_command_text.json +0 -116
  36. package/src/assets/localization/index.ts +0 -7
  37. package/src/assets/localization/zh/index.ts +0 -8
  38. package/src/assets/localization/zh/protocol_command_text.json +0 -80
  39. package/src/atoms/AnimationVideo/__tests__/AnimationVideo.test.tsx +0 -40
  40. package/src/atoms/AnimationVideo/index.tsx +0 -44
  41. package/src/atoms/Checkbox/Checkbox.stories.tsx +0 -24
  42. package/src/atoms/Checkbox/__tests__/Checkbox.test.tsx +0 -58
  43. package/src/atoms/Checkbox/index.tsx +0 -134
  44. package/src/atoms/CheckboxField/CheckboxField.stories.tsx +0 -31
  45. package/src/atoms/CheckboxField/__tests__/CheckboxField.test.tsx +0 -125
  46. package/src/atoms/CheckboxField/index.tsx +0 -183
  47. package/src/atoms/Chip/Chip.stories.tsx +0 -67
  48. package/src/atoms/Chip/__tests__/Chip.test.tsx +0 -468
  49. package/src/atoms/Chip/index.tsx +0 -198
  50. package/src/atoms/Divider/index.tsx +0 -16
  51. package/src/atoms/InlineNotification/InlineNotification.stories.tsx +0 -107
  52. package/src/atoms/InlineNotification/__tests__/InlineNotification.test.tsx +0 -66
  53. package/src/atoms/InlineNotification/index.tsx +0 -213
  54. package/src/atoms/InputField/InputField.stories.tsx +0 -80
  55. package/src/atoms/InputField/__tests__/InputField.test.tsx +0 -65
  56. package/src/atoms/InputField/index.tsx +0 -384
  57. package/src/atoms/ListButton/ListButton.stories.tsx +0 -156
  58. package/src/atoms/ListButton/ListButtonChildren/ListButtonAccordion.tsx +0 -66
  59. package/src/atoms/ListButton/ListButtonChildren/ListButtonAccordionContainer.tsx +0 -24
  60. package/src/atoms/ListButton/ListButtonChildren/index.ts +0 -2
  61. package/src/atoms/ListButton/__tests__/ListButton.test.tsx +0 -55
  62. package/src/atoms/ListButton/__tests__/ListButtonAccordion.test.tsx +0 -36
  63. package/src/atoms/ListButton/index.tsx +0 -147
  64. package/src/atoms/ListItem/ListItem.stories.tsx +0 -128
  65. package/src/atoms/ListItem/ListItemChildren/ListItemCustomize.tsx +0 -84
  66. package/src/atoms/ListItem/ListItemChildren/ListItemDescriptor.tsx +0 -46
  67. package/src/atoms/ListItem/ListItemChildren/index.ts +0 -2
  68. package/src/atoms/ListItem/__tests__/ListItem.test.tsx +0 -104
  69. package/src/atoms/ListItem/index.tsx +0 -107
  70. package/src/atoms/ListTable/ListTable.stories.tsx +0 -70
  71. package/src/atoms/ListTable/__tests__/ListTable.test.tsx +0 -81
  72. package/src/atoms/ListTable/index.tsx +0 -92
  73. package/src/atoms/MenuList/MenuItem.stories.tsx +0 -30
  74. package/src/atoms/MenuList/MenuItem.tsx +0 -58
  75. package/src/atoms/MenuList/MenuList.stories.tsx +0 -32
  76. package/src/atoms/MenuList/OverflowBtn.stories.tsx +0 -17
  77. package/src/atoms/MenuList/OverflowBtn.tsx +0 -76
  78. package/src/atoms/MenuList/__tests__/MenuItem.test.tsx +0 -50
  79. package/src/atoms/MenuList/__tests__/MenuList.test.tsx +0 -37
  80. package/src/atoms/MenuList/__tests__/OverflowBtn.test.tsx +0 -34
  81. package/src/atoms/MenuList/index.tsx +0 -50
  82. package/src/atoms/Snackbar/Snackbar.stories.tsx +0 -105
  83. package/src/atoms/Snackbar/__tests__/Snackbar.test.tsx +0 -77
  84. package/src/atoms/Snackbar/index.tsx +0 -102
  85. package/src/atoms/StepMeter/__tests__/StepMeter.test.tsx +0 -45
  86. package/src/atoms/StepMeter/index.tsx +0 -62
  87. package/src/atoms/StyledText/LegacyStyledText.stories.tsx +0 -107
  88. package/src/atoms/StyledText/LegacyStyledText.tsx +0 -96
  89. package/src/atoms/StyledText/PlaceholderStyledText.tsx +0 -46
  90. package/src/atoms/StyledText/StyledText.stories.tsx +0 -47
  91. package/src/atoms/StyledText/StyledText.tsx +0 -333
  92. package/src/atoms/StyledText/index.ts +0 -3
  93. package/src/atoms/StyledText/placeholderstyledtext.module.css +0 -25
  94. package/src/atoms/SubListTable/SubListTable.stories.tsx +0 -72
  95. package/src/atoms/SubListTable/__tests__/SubListTable.test.tsx +0 -81
  96. package/src/atoms/SubListTable/index.tsx +0 -71
  97. package/src/atoms/Tag/Tag.stories.tsx +0 -50
  98. package/src/atoms/Tag/__tests__/Tag.test.tsx +0 -57
  99. package/src/atoms/Tag/index.tsx +0 -133
  100. package/src/atoms/Toast/ODDToast.stories.tsx +0 -78
  101. package/src/atoms/Toast/Toast.stories.tsx +0 -65
  102. package/src/atoms/Toast/__tests__/ODDToast.test.tsx +0 -182
  103. package/src/atoms/Toast/__tests__/Toast.test.tsx +0 -178
  104. package/src/atoms/Toast/index.tsx +0 -434
  105. package/src/atoms/ToggleGroup/ToggleGroup.stories.tsx +0 -41
  106. package/src/atoms/ToggleGroup/__tests__/ToggleGroup.test.tsx +0 -30
  107. package/src/atoms/ToggleGroup/index.tsx +0 -91
  108. package/src/atoms/Tooltip/Tooltip.stories.tsx +0 -100
  109. package/src/atoms/Tooltip/__tests__/Tooltip.test.tsx +0 -80
  110. package/src/atoms/Tooltip/index.tsx +0 -37
  111. package/src/atoms/buttons/AlertPrimaryButton.tsx +0 -27
  112. package/src/atoms/buttons/AltPrimaryButton.tsx +0 -31
  113. package/src/atoms/buttons/BasicButton.tsx +0 -100
  114. package/src/atoms/buttons/EmptySelectorButton.stories.tsx +0 -37
  115. package/src/atoms/buttons/EmptySelectorButton.tsx +0 -89
  116. package/src/atoms/buttons/LargeButton.stories.tsx +0 -106
  117. package/src/atoms/buttons/LargeButton.tsx +0 -322
  118. package/src/atoms/buttons/PrimaryButton.tsx +0 -40
  119. package/src/atoms/buttons/RadioButton.stories.tsx +0 -109
  120. package/src/atoms/buttons/RadioButton.tsx +0 -327
  121. package/src/atoms/buttons/SecondaryButton.tsx +0 -97
  122. package/src/atoms/buttons/TertiaryButton.tsx +0 -89
  123. package/src/atoms/buttons/__tests__/AlertPrimaryButton.test.tsx +0 -49
  124. package/src/atoms/buttons/__tests__/AltPrimaryButton.test.tsx +0 -60
  125. package/src/atoms/buttons/__tests__/BasicButton.test.tsx +0 -87
  126. package/src/atoms/buttons/__tests__/EmptySelectorButton.test.tsx +0 -45
  127. package/src/atoms/buttons/__tests__/LargeButton.test.tsx +0 -94
  128. package/src/atoms/buttons/__tests__/PrimaryButton.test.tsx +0 -67
  129. package/src/atoms/buttons/__tests__/RadioButton.test.tsx +0 -119
  130. package/src/atoms/buttons/__tests__/SecondaryButton.test.tsx +0 -56
  131. package/src/atoms/buttons/buttons.stories.tsx +0 -114
  132. package/src/atoms/buttons/index.ts +0 -8
  133. package/src/atoms/index.ts +0 -24
  134. package/src/barrel.ts +0 -10
  135. package/src/buttons/Button.tsx +0 -95
  136. package/src/buttons/DeprecatedPrimaryButton.tsx +0 -24
  137. package/src/buttons/FlatButton.tsx +0 -21
  138. package/src/buttons/IconButton.tsx +0 -36
  139. package/src/buttons/OutlineButton.tsx +0 -24
  140. package/src/buttons/buttons.module.css +0 -428
  141. package/src/buttons/index.ts +0 -7
  142. package/src/controls/ControlInfo.tsx +0 -13
  143. package/src/controls/LabeledButton.tsx +0 -28
  144. package/src/controls/LabeledCheckbox.tsx +0 -36
  145. package/src/controls/LabeledControl.tsx +0 -24
  146. package/src/controls/LabeledRadioGroup.tsx +0 -26
  147. package/src/controls/StackedLabeledControl.tsx +0 -28
  148. package/src/controls/ToggleButton.tsx +0 -69
  149. package/src/controls/index.ts +0 -8
  150. package/src/controls/styles.module.css +0 -103
  151. package/src/forms/DeprecatedCheckboxField.stories.tsx +0 -31
  152. package/src/forms/DeprecatedCheckboxField.tsx +0 -95
  153. package/src/forms/FormGroup.stories.tsx +0 -30
  154. package/src/forms/FormGroup.tsx +0 -55
  155. package/src/forms/InputField.stories.tsx +0 -42
  156. package/src/forms/LegacyInputField.tsx +0 -130
  157. package/src/forms/RadioGroup.stories.tsx +0 -45
  158. package/src/forms/RadioGroup.tsx +0 -89
  159. package/src/forms/Select.module.css +0 -118
  160. package/src/forms/Select.stories.tsx +0 -116
  161. package/src/forms/Select.tsx +0 -132
  162. package/src/forms/SelectField.module.css +0 -16
  163. package/src/forms/SelectField.tsx +0 -94
  164. package/src/forms/ToggleField.stories.tsx +0 -31
  165. package/src/forms/ToggleField.tsx +0 -60
  166. package/src/forms/__tests__/DeprecatedCheckboxField.test.tsx +0 -5
  167. package/src/forms/__tests__/InputField.test.tsx +0 -5
  168. package/src/forms/__tests__/Select.test.tsx +0 -5
  169. package/src/forms/__tests__/SelectField.test.tsx +0 -5
  170. package/src/forms/__tests__/ToggleField.test.tsx +0 -5
  171. package/src/forms/forms.module.css +0 -240
  172. package/src/forms/index.ts +0 -7
  173. package/src/hardware-sim/BaseDeck/BaseDeck.stories.tsx +0 -94
  174. package/src/hardware-sim/BaseDeck/BaseDeck.tsx +0 -565
  175. package/src/hardware-sim/BaseDeck/SingleSlotFixture.tsx +0 -198
  176. package/src/hardware-sim/BaseDeck/SlotBase.tsx +0 -5
  177. package/src/hardware-sim/BaseDeck/SlotClip.tsx +0 -15
  178. package/src/hardware-sim/BaseDeck/StagingAreaFixture.tsx +0 -113
  179. package/src/hardware-sim/BaseDeck/WasteChuteFixture.tsx +0 -152
  180. package/src/hardware-sim/BaseDeck/WasteChuteStagingAreaFixture.tsx +0 -73
  181. package/src/hardware-sim/BaseDeck/__fixtures__/index.ts +0 -165
  182. package/src/hardware-sim/BaseDeck/basedeck.module.css +0 -20
  183. package/src/hardware-sim/BaseDeck/index.ts +0 -5
  184. package/src/hardware-sim/Deck/DeckFromLayers.tsx +0 -61
  185. package/src/hardware-sim/Deck/FlexTrash.tsx +0 -168
  186. package/src/hardware-sim/Deck/MoveLabwareOnDeck.stories.tsx +0 -98
  187. package/src/hardware-sim/Deck/MoveLabwareOnDeck.tsx +0 -253
  188. package/src/hardware-sim/Deck/OT2Layers.tsx +0 -160
  189. package/src/hardware-sim/Deck/RobotCoordsForeignDiv.tsx +0 -59
  190. package/src/hardware-sim/Deck/RobotCoordsForeignObject.tsx +0 -47
  191. package/src/hardware-sim/Deck/RobotCoordsText.tsx +0 -34
  192. package/src/hardware-sim/Deck/RobotWorkSpace.tsx +0 -120
  193. package/src/hardware-sim/Deck/SlotLabels.tsx +0 -113
  194. package/src/hardware-sim/Deck/__mocks__/getDeckDefinitions.ts +0 -29
  195. package/src/hardware-sim/Deck/__tests__/resolveLabwareLocation.test.ts +0 -138
  196. package/src/hardware-sim/Deck/constants.ts +0 -12
  197. package/src/hardware-sim/Deck/deck.module.css +0 -54
  198. package/src/hardware-sim/Deck/index.tsx +0 -8
  199. package/src/hardware-sim/Deck/resolveLabwareLocation.ts +0 -154
  200. package/src/hardware-sim/DeckConfigurator/AbsorbanceReaderItem.tsx +0 -102
  201. package/src/hardware-sim/DeckConfigurator/DeckConfigurator.stories.tsx +0 -109
  202. package/src/hardware-sim/DeckConfigurator/EmptyConfigItem.tsx +0 -160
  203. package/src/hardware-sim/DeckConfigurator/FlexStackerItem.tsx +0 -110
  204. package/src/hardware-sim/DeckConfigurator/HeaterShakerItem.tsx +0 -114
  205. package/src/hardware-sim/DeckConfigurator/MagneticBlockItem.tsx +0 -113
  206. package/src/hardware-sim/DeckConfigurator/StagingAreaConfigItem.tsx +0 -107
  207. package/src/hardware-sim/DeckConfigurator/StaticItem.tsx +0 -61
  208. package/src/hardware-sim/DeckConfigurator/TemperatureModuleItem.tsx +0 -119
  209. package/src/hardware-sim/DeckConfigurator/ThermocyclerItem.tsx +0 -99
  210. package/src/hardware-sim/DeckConfigurator/TrashBinConfigItem.tsx +0 -114
  211. package/src/hardware-sim/DeckConfigurator/WasteChuteConfigItem.tsx +0 -107
  212. package/src/hardware-sim/DeckConfigurator/constants.ts +0 -77
  213. package/src/hardware-sim/DeckConfigurator/index.tsx +0 -348
  214. package/src/hardware-sim/DeckSlotLocation/index.tsx +0 -88
  215. package/src/hardware-sim/Labware/CalibrationBlockRender.stories.tsx +0 -49
  216. package/src/hardware-sim/Labware/CalibrationBlockRender.tsx +0 -172
  217. package/src/hardware-sim/Labware/Labware.tsx +0 -188
  218. package/src/hardware-sim/Labware/LabwareAdapter/Opentrons96DeepWellAdapter.tsx +0 -23
  219. package/src/hardware-sim/Labware/LabwareAdapter/Opentrons96FlatBottomAdapter.tsx +0 -7
  220. package/src/hardware-sim/Labware/LabwareAdapter/OpentronsAluminumFlatBottomPlate.tsx +0 -13
  221. package/src/hardware-sim/Labware/LabwareAdapter/OpentronsAutoclavableDeckRiser.tsx +0 -100
  222. package/src/hardware-sim/Labware/LabwareAdapter/OpentronsFlex96TiprackAdapter.tsx +0 -13
  223. package/src/hardware-sim/Labware/LabwareAdapter/OpentronsToughPCRAutoSealingLid.tsx +0 -83
  224. package/src/hardware-sim/Labware/LabwareAdapter/OpentronsUniversalFlatAdapter.tsx +0 -13
  225. package/src/hardware-sim/Labware/LabwareAdapter/index.tsx +0 -74
  226. package/src/hardware-sim/Labware/LabwareRender.stories.tsx +0 -110
  227. package/src/hardware-sim/Labware/LabwareRender.tsx +0 -228
  228. package/src/hardware-sim/Labware/__tests__/Labware.test.tsx +0 -52
  229. package/src/hardware-sim/Labware/__tests__/LabwareRender.test.tsx +0 -67
  230. package/src/hardware-sim/Labware/index.ts +0 -6
  231. package/src/hardware-sim/Labware/labware.module.css +0 -8
  232. package/src/hardware-sim/Labware/labwareInternals/FilledWells.tsx +0 -41
  233. package/src/hardware-sim/Labware/labwareInternals/LabwareOutline.tsx +0 -163
  234. package/src/hardware-sim/Labware/labwareInternals/LabwareWellLabels.tsx +0 -120
  235. package/src/hardware-sim/Labware/labwareInternals/StaticLabware.tsx +0 -122
  236. package/src/hardware-sim/Labware/labwareInternals/StrokedWells.tsx +0 -41
  237. package/src/hardware-sim/Labware/labwareInternals/StyledWells.tsx +0 -80
  238. package/src/hardware-sim/Labware/labwareInternals/Well.tsx +0 -77
  239. package/src/hardware-sim/Labware/labwareInternals/WellLabels.tsx +0 -123
  240. package/src/hardware-sim/Labware/labwareInternals/__tests__/LabwareWellLabels.test.tsx +0 -69
  241. package/src/hardware-sim/Labware/labwareInternals/__tests__/StrokedWells.test.tsx +0 -35
  242. package/src/hardware-sim/Labware/labwareInternals/__tests__/WellLabels.test.tsx +0 -95
  243. package/src/hardware-sim/Labware/labwareInternals/getTiprackBackgroundColor.ts +0 -32
  244. package/src/hardware-sim/Labware/labwareInternals/index.ts +0 -8
  245. package/src/hardware-sim/Labware/labwareInternals/types.ts +0 -18
  246. package/src/hardware-sim/Module/FlexStacker.tsx +0 -54
  247. package/src/hardware-sim/Module/HeaterShaker.tsx +0 -83
  248. package/src/hardware-sim/Module/MagneticBlock.tsx +0 -49
  249. package/src/hardware-sim/Module/MagneticModule.tsx +0 -51
  250. package/src/hardware-sim/Module/Module.stories.tsx +0 -121
  251. package/src/hardware-sim/Module/ModuleTag.tsx +0 -39
  252. package/src/hardware-sim/Module/PlateReader.tsx +0 -208
  253. package/src/hardware-sim/Module/Temperature.tsx +0 -54
  254. package/src/hardware-sim/Module/Thermocycler/ThermocyclerGEN1.tsx +0 -249
  255. package/src/hardware-sim/Module/Thermocycler/ThermocyclerGEN2.tsx +0 -286
  256. package/src/hardware-sim/Module/Thermocycler/index.tsx +0 -49
  257. package/src/hardware-sim/Module/index.tsx +0 -253
  258. package/src/hardware-sim/Pipette/EightEmanatingNozzles.tsx +0 -24
  259. package/src/hardware-sim/Pipette/EmanatingNozzle.tsx +0 -54
  260. package/src/hardware-sim/Pipette/PipetteRender.stories.tsx +0 -73
  261. package/src/hardware-sim/Pipette/PipetteRender.tsx +0 -86
  262. package/src/hardware-sim/Pipette/__tests__/EightEmanatingNozzles.test.tsx +0 -17
  263. package/src/hardware-sim/Pipette/__tests__/EmanatingNozzle.test.tsx +0 -69
  264. package/src/hardware-sim/Pipette/__tests__/PipetteRender.test.tsx +0 -101
  265. package/src/hardware-sim/Pipette/constants.ts +0 -10
  266. package/src/hardware-sim/Pipette/index.ts +0 -1
  267. package/src/hardware-sim/RobotCoordinateSpace/RobotCoordinateSpace.tsx +0 -31
  268. package/src/hardware-sim/RobotCoordinateSpace/RobotCoordinateSpaceWithRef.tsx +0 -52
  269. package/src/hardware-sim/RobotCoordinateSpace/index.ts +0 -2
  270. package/src/hardware-sim/RobotCoordinateSpace/robotcoordinatespace.module.css +0 -3
  271. package/src/hardware-sim/index.ts +0 -9
  272. package/src/helix-design-system/borders.ts +0 -32
  273. package/src/helix-design-system/colors.ts +0 -101
  274. package/src/helix-design-system/index.ts +0 -4
  275. package/src/helix-design-system/product/index.ts +0 -1
  276. package/src/helix-design-system/product/typography.ts +0 -151
  277. package/src/helix-design-system/style.ts +0 -2
  278. package/src/hocs/withStyleProps.ts +0 -53
  279. package/src/hooks/__tests__/useConditionalConfirm.test.tsx +0 -5
  280. package/src/hooks/__tests__/useDrag.test.ts +0 -48
  281. package/src/hooks/__tests__/useInterval.test.tsx +0 -5
  282. package/src/hooks/__tests__/useLongPress.test.ts +0 -26
  283. package/src/hooks/__tests__/useMountEffect.test.tsx +0 -5
  284. package/src/hooks/__tests__/usePrevious.test.tsx +0 -5
  285. package/src/hooks/__tests__/useScrolling.test.tsx +0 -47
  286. package/src/hooks/__tests__/useSwipe.test.tsx +0 -27
  287. package/src/hooks/__tests__/useTimeout.test.tsx +0 -5
  288. package/src/hooks/__tests__/useToggle.test.tsx +0 -5
  289. package/src/hooks/index.ts +0 -14
  290. package/src/hooks/useConditionalConfirm.ts +0 -80
  291. package/src/hooks/useDrag.ts +0 -91
  292. package/src/hooks/useInterval.ts +0 -38
  293. package/src/hooks/useLongPress.ts +0 -84
  294. package/src/hooks/useMenuHandleClickOutside.tsx +0 -47
  295. package/src/hooks/useMountEffect.ts +0 -14
  296. package/src/hooks/usePrevious.ts +0 -19
  297. package/src/hooks/useScrolling.ts +0 -33
  298. package/src/hooks/useSelectDeckLocation/SelectDeckLocation.stories.tsx +0 -57
  299. package/src/hooks/useSelectDeckLocation/index.tsx +0 -333
  300. package/src/hooks/useSwipe.ts +0 -87
  301. package/src/hooks/useTimeout.ts +0 -33
  302. package/src/hooks/useToggle.ts +0 -27
  303. package/src/i18n.ts +0 -63
  304. package/src/icons/Icon.stories.tsx +0 -45
  305. package/src/icons/Icon.tsx +0 -88
  306. package/src/icons/IconList.stories.tsx +0 -109
  307. package/src/icons/ModuleIcon.tsx +0 -54
  308. package/src/icons/NotificationIcon.tsx +0 -41
  309. package/src/icons/icon-data.ts +0 -850
  310. package/src/icons/icon.module.css +0 -10
  311. package/src/icons/index.ts +0 -6
  312. package/src/images/index.ts +0 -1
  313. package/src/images/labware/index.ts +0 -1
  314. package/src/images/labware/measurement-guide/images/depth/depth-plate-flat@3x.png +0 -0
  315. package/src/images/labware/measurement-guide/images/depth/depth-plate-round@3x.png +0 -0
  316. package/src/images/labware/measurement-guide/images/depth/depth-plate-v@3x.png +0 -0
  317. package/src/images/labware/measurement-guide/images/depth/depth-reservoir-and-tubes-flat@3x.png +0 -0
  318. package/src/images/labware/measurement-guide/images/depth/depth-reservoir-and-tubes-round@3x.png +0 -0
  319. package/src/images/labware/measurement-guide/images/depth/depth-reservoir-and-tubes-v@3x.png +0 -0
  320. package/src/images/labware/measurement-guide/images/depth/length-tip-rack@3x.png +0 -0
  321. package/src/images/labware/measurement-guide/images/dimensions/footprint@3x.png +0 -0
  322. package/src/images/labware/measurement-guide/images/dimensions/height-alum-block-plate@3x.png +0 -0
  323. package/src/images/labware/measurement-guide/images/dimensions/height-alum-block-tubes@3x.png +0 -0
  324. package/src/images/labware/measurement-guide/images/dimensions/height-plate-and-reservoir@3x.png +0 -0
  325. package/src/images/labware/measurement-guide/images/dimensions/height-tip-rack@3x.png +0 -0
  326. package/src/images/labware/measurement-guide/images/dimensions/height-tube-rack-irregular@3x.png +0 -0
  327. package/src/images/labware/measurement-guide/images/dimensions/height-tube-rack@3x.png +0 -0
  328. package/src/images/labware/measurement-guide/images/offset/offset-reservoir@3x.png +0 -0
  329. package/src/images/labware/measurement-guide/images/offset/offset-well-circular@3x.png +0 -0
  330. package/src/images/labware/measurement-guide/images/offset/offset-well-rectangular@3x.png +0 -0
  331. package/src/images/labware/measurement-guide/images/shape/shape-circular@3x.png +0 -0
  332. package/src/images/labware/measurement-guide/images/shape/shape-rectangular@3x.png +0 -0
  333. package/src/images/labware/measurement-guide/images/spacing/spacing-reservoir-multi-row@3x.png +0 -0
  334. package/src/images/labware/measurement-guide/images/spacing/spacing-reservoir@3x.png +0 -0
  335. package/src/images/labware/measurement-guide/images/spacing/spacing-well-circular@3x.png +0 -0
  336. package/src/images/labware/measurement-guide/images/spacing/spacing-well-rectangular@3x.png +0 -0
  337. package/src/images/labware/measurement-guide/index.ts +0 -272
  338. package/src/index.module.css +0 -10
  339. package/src/index.ts +0 -41
  340. package/src/instrument/InstrumentDiagram.tsx +0 -57
  341. package/src/instrument/PipetteSelect.module.css +0 -14
  342. package/src/instrument/eight-channel-flex.png +0 -0
  343. package/src/instrument/index.ts +0 -1
  344. package/src/instrument/multi-channel_GEN1_800px.png +0 -0
  345. package/src/instrument/multi-channel_GEN2_800px.png +0 -0
  346. package/src/instrument/ninety-six-channel-gen1.png +0 -0
  347. package/src/instrument/pipetteGEN2Multi.png +0 -0
  348. package/src/instrument/pipetteGEN2Single.png +0 -0
  349. package/src/instrument/pipetteMulti.png +0 -0
  350. package/src/instrument/pipetteSingle.png +0 -0
  351. package/src/instrument/single-channel-flex.png +0 -0
  352. package/src/instrument/single-channel_GEN2_800px.png +0 -0
  353. package/src/instrument/single_channel_GEN1_800px.png +0 -0
  354. package/src/interaction-enhancers/ClickOutside.ts +0 -59
  355. package/src/interaction-enhancers/HandleKeypress.tsx +0 -72
  356. package/src/interaction-enhancers/__tests__/useHover.test.tsx +0 -5
  357. package/src/interaction-enhancers/index.ts +0 -4
  358. package/src/interaction-enhancers/useHover.ts +0 -84
  359. package/src/interaction-enhancers/useOnClickOutside.ts +0 -42
  360. package/src/legacy-hardware-sim/LabwareNameOverlay.module.css +0 -20
  361. package/src/legacy-hardware-sim/LabwareNameOverlay.tsx +0 -23
  362. package/src/legacy-hardware-sim/ModuleItem.module.css +0 -98
  363. package/src/legacy-hardware-sim/index.ts +0 -1
  364. package/src/lists/SidePanelGroup.tsx +0 -48
  365. package/src/lists/index.ts +0 -2
  366. package/src/lists/lists.module.css +0 -171
  367. package/src/modals/AlertModal.tsx +0 -89
  368. package/src/modals/ContinueModal.tsx +0 -32
  369. package/src/modals/LegacyModal.tsx +0 -61
  370. package/src/modals/Modal.stories.tsx +0 -45
  371. package/src/modals/Modal.tsx +0 -101
  372. package/src/modals/ModalHeader.tsx +0 -110
  373. package/src/modals/ModalShell.tsx +0 -158
  374. package/src/modals/Overlay.tsx +0 -39
  375. package/src/modals/SpinnerModal.tsx +0 -35
  376. package/src/modals/SpinnerModalPage.tsx +0 -29
  377. package/src/modals/__tests__/Modal.test.tsx +0 -68
  378. package/src/modals/__tests__/ModalHeader.test.tsx +0 -71
  379. package/src/modals/__tests__/ModalShell.test.tsx +0 -48
  380. package/src/modals/index.ts +0 -10
  381. package/src/modals/modals.module.css +0 -275
  382. package/src/molecules/Banner/Banner.stories.tsx +0 -51
  383. package/src/molecules/Banner/__tests__/Banner.test.tsx +0 -95
  384. package/src/molecules/Banner/index.tsx +0 -149
  385. package/src/molecules/CustomizeExpandButton/__tests__/CustomizeExpandButton.test.tsx +0 -88
  386. package/src/molecules/CustomizeExpandButton/index.tsx +0 -189
  387. package/src/molecules/DeckInfoLabel/DeckInfoLabel.stories.tsx +0 -69
  388. package/src/molecules/DeckInfoLabel/__tests__/DeckInfoLabel.test.tsx +0 -54
  389. package/src/molecules/DeckInfoLabel/deckinfolabel.module.css +0 -42
  390. package/src/molecules/DeckInfoLabel/index.tsx +0 -69
  391. package/src/molecules/DeckLabel/DeckLabel.stories.tsx +0 -31
  392. package/src/molecules/DeckLabel/__tests__/DeckLabel.test.tsx +0 -71
  393. package/src/molecules/DeckLabel/index.tsx +0 -84
  394. package/src/molecules/DropdownMenu/DropdownMenu.stories.tsx +0 -30
  395. package/src/molecules/DropdownMenu/__tests__/DropdownMenu.test.tsx +0 -86
  396. package/src/molecules/DropdownMenu/index.tsx +0 -439
  397. package/src/molecules/InfoScreen/InfoScreen.stories.tsx +0 -51
  398. package/src/molecules/InfoScreen/__tests__/InfoScreen.test.tsx +0 -57
  399. package/src/molecules/InfoScreen/index.tsx +0 -58
  400. package/src/molecules/LiquidIcon/LiquidIcon.stories.tsx +0 -54
  401. package/src/molecules/LiquidIcon/__tests__/LiquidIcon.test.tsx +0 -51
  402. package/src/molecules/LiquidIcon/index.tsx +0 -74
  403. package/src/molecules/ListAccordion/ListAccordion.stories.tsx +0 -128
  404. package/src/molecules/ListAccordion/__tests__/ListAccordion.test.tsx +0 -123
  405. package/src/molecules/ListAccordion/index.tsx +0 -182
  406. package/src/molecules/ParametersTable/ParametersTable.stories.tsx +0 -173
  407. package/src/molecules/ParametersTable/__tests__/ParametersTable.test.tsx +0 -127
  408. package/src/molecules/ParametersTable/index.tsx +0 -200
  409. package/src/molecules/ReleaseNotes/index.tsx +0 -70
  410. package/src/molecules/ReleaseNotes/styles.module.css +0 -66
  411. package/src/molecules/Tabs/Tabs.stories.tsx +0 -76
  412. package/src/molecules/Tabs/__tests__/Tabs.test.tsx +0 -92
  413. package/src/molecules/Tabs/index.tsx +0 -116
  414. package/src/molecules/TextListTableContent/TextListTableContent.stories.tsx +0 -114
  415. package/src/molecules/TextListTableContent/__tests__/TextListTableContent.test.tsx +0 -44
  416. package/src/molecules/TextListTableContent/index.tsx +0 -45
  417. package/src/molecules/index.ts +0 -12
  418. package/src/nav/SidePanel.module.css +0 -34
  419. package/src/nav/SidePanel.stories.tsx +0 -30
  420. package/src/nav/SidePanel.tsx +0 -22
  421. package/src/nav/index.ts +0 -2
  422. package/src/organisms/CommandText/CommandText.stories.tsx +0 -79
  423. package/src/organisms/CommandText/__tests__/CommandText.test.tsx +0 -1671
  424. package/src/organisms/CommandText/fixtures/index.ts +0 -5
  425. package/src/organisms/CommandText/fixtures/mockRobotSideAnalysis.json +0 -6609
  426. package/src/organisms/CommandText/index.tsx +0 -280
  427. package/src/organisms/CommandText/useCommandTextString/index.ts +0 -338
  428. package/src/organisms/CommandText/useCommandTextString/utils/__tests__/formatDuration.test.tsx +0 -93
  429. package/src/organisms/CommandText/useCommandTextString/utils/__tests__/getFinalLabwareLocation.test.ts +0 -133
  430. package/src/organisms/CommandText/useCommandTextString/utils/__tests__/getLabwareDisplayLocation.test.tsx +0 -186
  431. package/src/organisms/CommandText/useCommandTextString/utils/commandText/__tests__/getFlexStackerCommandText.test.tsx +0 -179
  432. package/src/organisms/CommandText/useCommandTextString/utils/commandText/__tests__/getPipettingCommandText.test.tsx +0 -188
  433. package/src/organisms/CommandText/useCommandTextString/utils/commandText/__tests__/getRobotCommandText.test.tsx +0 -118
  434. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getAbsorbanceReaderCommandText.ts +0 -53
  435. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getCommentCommandText.ts +0 -10
  436. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getConfigureForVolumeCommandText.ts +0 -21
  437. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getConfigureNozzleLayoutCommandText.ts +0 -29
  438. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getCustomCommandText.ts +0 -16
  439. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getDelayCommandText.ts +0 -20
  440. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getDirectTranslationCommandText.ts +0 -44
  441. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getFlexStackerCommandText.ts +0 -166
  442. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getHSShakeSpeedCommandText.ts +0 -11
  443. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getLiquidProbeCommandText.ts +0 -61
  444. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getLoadCommandText.ts +0 -173
  445. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getMoveLabwareCommandText.ts +0 -108
  446. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getMoveRelativeCommandText.ts +0 -11
  447. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getMoveToAddressableAreaCommandText.ts +0 -19
  448. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getMoveToAddressableAreaForDropTipCommandText.ts +0 -19
  449. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getMoveToCoordinatesCommandText.ts +0 -11
  450. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getMoveToSlotCommandText.ts +0 -11
  451. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getMoveToWellCommandText.ts +0 -62
  452. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getPipettingCommandText.ts +0 -206
  453. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getPrepareToAspirateCommandText.ts +0 -20
  454. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getRailLightsCommandText.ts +0 -15
  455. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getRobotCommandText.ts +0 -87
  456. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getTCRunExtendedProfileCommandText.ts +0 -68
  457. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getTCRunProfileCommandText.ts +0 -30
  458. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getTemperatureCommandText.ts +0 -49
  459. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getUnknownCommandText.ts +0 -5
  460. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getWaitForDurationCommandText.ts +0 -11
  461. package/src/organisms/CommandText/useCommandTextString/utils/commandText/getWaitForResumeCommandText.ts +0 -11
  462. package/src/organisms/CommandText/useCommandTextString/utils/commandText/index.ts +0 -28
  463. package/src/organisms/CommandText/useCommandTextString/utils/formatDuration.ts +0 -46
  464. package/src/organisms/CommandText/useCommandTextString/utils/getAddressableAreaDisplayName.ts +0 -62
  465. package/src/organisms/CommandText/useCommandTextString/utils/getFinalAddressableAreaCmd.ts +0 -22
  466. package/src/organisms/CommandText/useCommandTextString/utils/getFinalLabwareLocation.ts +0 -46
  467. package/src/organisms/CommandText/useCommandTextString/utils/getLabwareDefinitionsFromCommands.ts +0 -59
  468. package/src/organisms/CommandText/useCommandTextString/utils/getLabwareDisplayLocation.tsx +0 -163
  469. package/src/organisms/CommandText/useCommandTextString/utils/getLabwareLocation.tsx +0 -280
  470. package/src/organisms/CommandText/useCommandTextString/utils/getLabwareName.ts +0 -41
  471. package/src/organisms/CommandText/useCommandTextString/utils/getLiquidDisplayName.ts +0 -10
  472. package/src/organisms/CommandText/useCommandTextString/utils/getLoadedLabware.tsx +0 -12
  473. package/src/organisms/CommandText/useCommandTextString/utils/getLoadedModule.ts +0 -12
  474. package/src/organisms/CommandText/useCommandTextString/utils/getModuleDisplayLocation.ts +0 -11
  475. package/src/organisms/CommandText/useCommandTextString/utils/getModuleModel.ts +0 -12
  476. package/src/organisms/CommandText/useCommandTextString/utils/getPipetteNameOnMount.ts +0 -20
  477. package/src/organisms/CommandText/useCommandTextString/utils/getWellRange.ts +0 -65
  478. package/src/organisms/CommandText/useCommandTextString/utils/helpers.ts +0 -15
  479. package/src/organisms/CommandText/useCommandTextString/utils/index.ts +0 -10
  480. package/src/organisms/CommandText/useCommandTextString/utils/types.ts +0 -19
  481. package/src/organisms/DeckLabelSet/DeckLabelSet.stories.tsx +0 -48
  482. package/src/organisms/DeckLabelSet/__tests__/DeckLabelSet.test.tsx +0 -52
  483. package/src/organisms/DeckLabelSet/index.tsx +0 -124
  484. package/src/organisms/FixtureOption/__tests__/FixtureOption.test.tsx +0 -40
  485. package/src/organisms/FixtureOption/index.tsx +0 -63
  486. package/src/organisms/ProtocolDeck/index.tsx +0 -118
  487. package/src/organisms/ProtocolTimelineScrubber/CommandItem.tsx +0 -115
  488. package/src/organisms/ProtocolTimelineScrubber/PipetteVisuals.tsx +0 -213
  489. package/src/organisms/ProtocolTimelineScrubber/index.tsx +0 -312
  490. package/src/organisms/ProtocolTimelineScrubber/types.ts +0 -6
  491. package/src/organisms/ProtocolTimelineScrubber/utils.ts +0 -160
  492. package/src/organisms/Toolbox/Toolbox.stories.tsx +0 -34
  493. package/src/organisms/Toolbox/__tests__/Toolbox.test.tsx +0 -37
  494. package/src/organisms/Toolbox/index.tsx +0 -149
  495. package/src/organisms/index.ts +0 -6
  496. package/src/primitives/Box.stories.tsx +0 -25
  497. package/src/primitives/Box.tsx +0 -17
  498. package/src/primitives/Btn.stories.tsx +0 -105
  499. package/src/primitives/Btn.tsx +0 -267
  500. package/src/primitives/Flex.stories.tsx +0 -50
  501. package/src/primitives/Flex.tsx +0 -17
  502. package/src/primitives/ForeignObject.tsx +0 -28
  503. package/src/primitives/Link.stories.tsx +0 -27
  504. package/src/primitives/Link.tsx +0 -33
  505. package/src/primitives/README.md +0 -179
  506. package/src/primitives/Svg.stories.tsx +0 -36
  507. package/src/primitives/Svg.tsx +0 -69
  508. package/src/primitives/Text.stories.tsx +0 -17
  509. package/src/primitives/Text.tsx +0 -18
  510. package/src/primitives/__tests__/Box.test.tsx +0 -5
  511. package/src/primitives/__tests__/Btn.test.tsx +0 -5
  512. package/src/primitives/__tests__/Flex.test.tsx +0 -5
  513. package/src/primitives/__tests__/Link.test.tsx +0 -5
  514. package/src/primitives/__tests__/Svg.test.tsx +0 -5
  515. package/src/primitives/__tests__/Text.test.tsx +0 -5
  516. package/src/primitives/__tests__/primitives.test.tsx +0 -5
  517. package/src/primitives/__tests__/style-props.test.tsx +0 -5
  518. package/src/primitives/index.ts +0 -10
  519. package/src/primitives/style-props.ts +0 -199
  520. package/src/primitives/types.ts +0 -120
  521. package/src/robot-types.ts +0 -4
  522. package/src/slotmap/OT2SlotMap.tsx +0 -74
  523. package/src/slotmap/__tests__/OT2SlotMap.test.tsx +0 -5
  524. package/src/slotmap/index.ts +0 -1
  525. package/src/slotmap/styles.module.css +0 -18
  526. package/src/structure/LabeledValue.stories.tsx +0 -17
  527. package/src/structure/LabeledValue.tsx +0 -31
  528. package/src/structure/Pill.module.css +0 -16
  529. package/src/structure/Pill.tsx +0 -43
  530. package/src/structure/Splash.module.css +0 -16
  531. package/src/structure/Splash.stories.tsx +0 -25
  532. package/src/structure/Splash.tsx +0 -22
  533. package/src/structure/TitleBar.stories.tsx +0 -43
  534. package/src/structure/TitleBar.tsx +0 -80
  535. package/src/structure/index.ts +0 -5
  536. package/src/structure/structure.module.css +0 -114
  537. package/src/styles/borders.module.css +0 -20
  538. package/src/styles/borders.ts +0 -16
  539. package/src/styles/colors.module.css +0 -58
  540. package/src/styles/colors.ts +0 -58
  541. package/src/styles/cursor.ts +0 -12
  542. package/src/styles/flexbox.ts +0 -39
  543. package/src/styles/global.css +0 -179
  544. package/src/styles/index.module.css +0 -8
  545. package/src/styles/index.ts +0 -8
  546. package/src/styles/layout.ts +0 -31
  547. package/src/styles/position.ts +0 -5
  548. package/src/styles/spacing.ts +0 -11
  549. package/src/styles/typography.module.css +0 -23
  550. package/src/styles/typography.ts +0 -90
  551. package/src/testing/utils/index.ts +0 -2
  552. package/src/testing/utils/matchers.ts +0 -32
  553. package/src/testing/utils/renderWithProviders.tsx +0 -56
  554. package/src/tooltips/DeprecatedTooltip.tsx +0 -112
  555. package/src/tooltips/HoverTooltip.tsx +0 -84
  556. package/src/tooltips/LegacyTooltip.stories.tsx +0 -99
  557. package/src/tooltips/LegacyTooltip.tsx +0 -151
  558. package/src/tooltips/__tests__/Tooltip.test.tsx +0 -5
  559. package/src/tooltips/__tests__/useHoverTooltip.test.tsx +0 -5
  560. package/src/tooltips/__tests__/usePopper.test.tsx +0 -5
  561. package/src/tooltips/__tests__/useTooltip.test.tsx +0 -5
  562. package/src/tooltips/constants.ts +0 -28
  563. package/src/tooltips/index.ts +0 -10
  564. package/src/tooltips/styles.ts +0 -20
  565. package/src/tooltips/tooltips.module.css +0 -72
  566. package/src/tooltips/types.ts +0 -71
  567. package/src/tooltips/useHoverTooltip.ts +0 -47
  568. package/src/tooltips/usePopper.ts +0 -87
  569. package/src/tooltips/useTooltip.ts +0 -101
  570. package/src/ui-style-constants/animation.ts +0 -1
  571. package/src/ui-style-constants/index.ts +0 -5
  572. package/src/ui-style-constants/responsiveness.ts +0 -15
  573. package/src/ui-style-constants/spacing.ts +0 -18
  574. package/src/ui-style-constants/typography.ts +0 -259
  575. package/src/ui-style-constants/viewport.ts +0 -18
  576. package/src/utils.ts +0 -56
  577. package/tsconfig-data.json +0 -13
  578. package/tsconfig.json +0 -21
  579. package/typings/css-module.d.ts +0 -5
  580. package/typings/global.d.ts +0 -1
  581. package/typings/images.d.ts +0 -10
  582. package/vite.config.mts +0 -69
@@ -0,0 +1,17 @@
1
+ import type { DeckSlot, ModuleModel } from '@opentrons/shared-data';
2
+ export interface ModuleProps {
3
+ /** module model */
4
+ model: ModuleModel;
5
+ /** display mode: 'default', 'present', 'missing', or 'info' */
6
+ mode: 'default' | 'present' | 'missing' | 'info';
7
+ /** slot details of the location of this module */
8
+ slot: DeckSlot;
9
+ /** USB port detail of the connected module */
10
+ usbInfoString?: string;
11
+ }
12
+ /**
13
+ * Legacy App-specific Module Rendering. Removable after Protocol Upload Revamp release
14
+ *
15
+ * @deprecated Use {@link Module}
16
+ */
17
+ export declare function ModuleItem(props: ModuleProps): JSX.Element;
@@ -1 +1,2 @@
1
1
  export * from './LabwareNameOverlay';
2
+ export * from './ModuleItem';
@@ -1,11 +1,23 @@
1
- export interface DeckInfoLabelProps {
1
+ import type { IconName, ModuleIconName } from '../../icons';
2
+ import type { StyleProps } from '../../primitives';
3
+ interface DeckLabelProps extends StyleProps {
4
+ /** deck label to display */
5
+ deckLabel: string;
6
+ /** deck info label icon name */
7
+ iconName?: IconName;
8
+ /** deck info label size large is for header text */
9
+ /** when use large, need to set svgSize to 1.25rem */
10
+ size?: 'default' | 'large';
11
+ }
12
+ interface HardwareIconProps extends StyleProps {
13
+ /** hardware icon name */
14
+ iconName: ModuleIconName | 'stacked';
2
15
  deckLabel?: string;
3
- iconName?: string;
16
+ }
17
+ export type DeckInfoLabelProps = (DeckLabelProps | HardwareIconProps) & {
4
18
  highlight?: boolean;
5
- size?: 'large' | 'default';
6
- height?: string | number;
7
- width?: string | number;
8
19
  svgSize?: string | number;
9
- transform?: string;
10
- }
11
- export declare function DeckInfoLabel({ deckLabel, iconName, highlight, size, height, width, transform, svgSize, }: DeckInfoLabelProps): JSX.Element;
20
+ };
21
+ export declare const DeckInfoLabel: import("styled-components").StyledComponent<typeof DeckInfoLabelComponent, any, {}, never>;
22
+ declare function DeckInfoLabelComponent({ deckLabel, iconName, highlight, size, ...styleProps }: DeckInfoLabelProps): JSX.Element;
23
+ export {};
@@ -5,6 +5,7 @@ interface FixtureOptionProps {
5
5
  optionName: string;
6
6
  secondaryButtonText?: string;
7
7
  buttonText: string;
8
+ isOnDevice: boolean;
8
9
  }
9
10
  export declare function FixtureOption(props: FixtureOptionProps): JSX.Element;
10
11
  export {};
@@ -1,13 +1,23 @@
1
- import type { ReactElement, ReactNode } from 'react';
2
- export interface ForeignObjectProps {
3
- width: string | number;
4
- height: string | number;
5
- x: string | number;
6
- y: string | number;
7
- children?: ReactNode;
1
+ import type { PrimitiveComponent, StyleProps } from './types';
2
+ export interface ForeignObjectProps extends StyleProps {
3
+ /** attach a width attribute to the <svg> element */
4
+ svgWidth?: string | number;
5
+ /** attach a height attribute to the <svg> element */
6
+ svgHeight?: string | number;
7
+ /**
8
+ * internal helper prop to remap width style-prop to CSS
9
+ * @internal
10
+ */
11
+ _cssWidth?: string | number;
12
+ /**
13
+ * internal helper prop to remap height style-prop to CSS
14
+ * @internal
15
+ */
16
+ _cssHeight?: string | number;
8
17
  }
9
18
  /**
10
19
  * Foreign Object styled atomic component
20
+ *
11
21
  * @component
12
22
  */
13
- export declare const ForeignObject: ({ width, height, x, y, children, }: ForeignObjectProps) => ReactElement;
23
+ export declare const ForeignObject: PrimitiveComponent<'foreignObject', ForeignObjectProps>;
package/lib/style.css ADDED
@@ -0,0 +1 @@
1
+ :root{--green-60: #03683e;--green-35: #afedd3;--green-20: #e8f7ed;--green-50-non-touchscreen: #04aa65;--green-50-touchscreen: #1ca850;--green-50: var(--green-50-non-touchscreen);--green-40-non-touchscreen: #91e2c0;--green-40-touchscreen: #8ef3a8;--green-40: var(--green-40-non-touchscreen);--green-30-non-touchscreen: #c4f6e0;--green-30-touchscreen: #8afbab;--green-30: var(--green-30-non-touchscreen);--red-60: #941313;--red-55: #c71a1b;--red-50: #de1b1b;--red-40: #f5b2b3;--red-35: #f8c8c9;--red-30: #fad6d6;--red-20: #fce9e9;--yellow-60: #825512;--yellow-50: #f09d20;--yellow-40: #fcd48b;--yellow-35: #ffe1a4;--yellow-30: #ffe9be;--yellow-20: #fdf3e2;--purple-60-non-touchscreen: #562566;--purple-60-touchscreen: #612367;--purple-60: var(--purple-60-non-touchscreen);--purple-55-non-touchscreen: #713187;--purple-55-touchscreen: #822e89;--purple-55: var(--purple-55-non-touchscreen);--purple-50-non-touchscreen: #893ba4;--purple-50-touchscreen: #9e39a8;--purple-50: var(--purple-50-non-touchscreen);--purple-40-non-touchscreen: #cea4df;--purple-40-touchscreen: #e2a9ea;--purple-40: var(--purple-40-non-touchscreen);--purple-35-non-touchscreen: #dbbce7;--purple-35-touchscreen: #ecc2f2;--purple-35: var(--purple-35-non-touchscreen);--purple-30-non-touchscreen: #e6d5ec;--purple-30-touchscreen: #f4def7;--purple-30: var(--purple-30-non-touchscreen);--purple-20-non-touchscreen: #f1e8f5;--purple-20-touchscreen: #fff3fe;--purple-20: var(--purple-20-non-touchscreen);--blue-60: #004196;--blue-55: #0056c8;--blue-40: #a9cefd;--blue-35: #bfdcfd;--blue-30: #d0e6fe;--blue-20: #e1efff;--blue-10: #f1f8ff;--grey-60: #4a4c4e;--grey-55: #626467;--grey-50: #737578;--grey-40: #b7b8b9;--grey-35: #cbcccc;--grey-30: #dedede;--grey-20: #e9e9e9;--grey-10: #f3f3f3;--black-90: #16212d;--black-80: #24313f;--black-70: #39495b;--white: #fff;--blue-50: #006cfa;--transparent-white-80: rgba(255,255,255,.8);--transparent-white-50: rgba(255,255,255,.50196);--transparent-black-80: rgba(22,33,45,.50196);--flex-55: #0297cc;--flex-50: #00bdff;--flex-40: #aae3fc;--transparent: rgba(0,0,0,0);--spacing-2: .125rem;--spacing-4: .25rem;--spacing-6: .375rem;--spacing-8: .5rem;--spacing-10: .625rem;--spacing-12: .75rem;--spacing-16: 1rem;--spacing-20: 1.25rem;--spacing-24: 1.5rem;--spacing-32: 2rem;--spacing-40: 2.5rem;--spacing-44: 2.75rem;--spacing-48: 3rem;--spacing-60: 3.75rem;--spacing-68: 4.25rem;--spacing-80: 5rem;--spacing-120: 7.5rem;--border-radius-2: .125rem;--border-radius-4: .25rem;--border-radius-8: .5rem;--border-radius-12: .75rem;--border-radius-16: 1rem;--border-radius-40: 2.5rem;--border-radius-200: 50rem;--font-size-80: 5rem;--font-size-38: 2.375rem;--font-size-32: 2rem;--font-size-28: 1.75rem;--font-size-22: 1.375rem;--font-size-20: 1.25rem;--font-size-h1: 1.1875rem;--font-size-h2: .9375rem;--font-size-h3: .875rem;--font-size-h4: .8125rem;--font-size-h6: .5625rem;--font-size-p: .8125rem;--font-size-label: .6875rem;--font-size-caption: .625rem;--line-height-96: 6rem;--line-height-48: 3rem;--line-height-42: 2.625rem;--line-height-36: 2.25rem;--line-height-28: 1.75rem;--line-height-24: 1.5rem;--line-height-20: 1.25rem;--line-height-18: 1.125rem;--line-height-16: 1rem;--line-height-12: .75rem;--font-weight-bold: 700;--font-weight-semi-bold: 600;--font-weight-regular: 400;--font-weight-light: 300}.enable_touchscreen_colors{--green-50: var(--green-50-touchscreen);--green-40: var(--green-40-touchscreen);--green-30: var(--green-30-touchscreen);--purple-60: var(--purple-60-touchscreen);--purple-55: var(--purple-55-touchscreen);--purple-50: var(--purple-50-touchscreen);--purple-40: var(--purple-40-touchscreen);--purple-35: var(--purple-35-touchscreen);--purple-30: var(--purple-30-touchscreen);--purple-20: var(--purple-20-touchscreen)}@keyframes icon-module__spin___olUKz{to{transform:rotate(360deg)}}.icon-module__spin___olUKz{animation:icon-module__spin___olUKz .8s steps(8) infinite;transform-origin:center}.tooltips-module__tooltip_box___jYDx5{z-index:9001;padding:8px;background-color:#4a4a4a;background-color:var(--c-bg-dark);box-shadow:0 3px 6px #00000021,0 3px 6px #0000003b;color:#fff;color:var(--c-font-light);cursor:pointer;font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular)}.tooltips-module__arrow___A5Qms{position:absolute;bottom:0;left:0;width:1em;height:.5em;margin-bottom:-.5em}.tooltips-module__arrow___A5Qms:before{display:block;width:0;height:0;border-width:.5em .5em 0 .5em;border-style:solid;border-color:#4a4a4a transparent transparent transparent;border-color:var(--c-bg-dark) transparent transparent transparent;margin:auto;content:""}.tooltips-module__arrow___A5Qms.tooltips-module__bottom___wl7Zh{top:0;left:0;width:1em;height:.5em;margin-top:-.5em}.tooltips-module__arrow___A5Qms.tooltips-module__bottom___wl7Zh:before{border-width:0 .5em .5em .5em;border-color:transparent transparent #4a4a4a transparent;border-color:transparent transparent var(--c-bg-dark) transparent}.tooltips-module__arrow___A5Qms.tooltips-module__right___oFKgm{top:0;left:0;width:.5em;height:1em;margin-left:-.5em}.tooltips-module__arrow___A5Qms.tooltips-module__right___oFKgm:before{border-width:.5em .5em .5em 0;border-color:transparent #4a4a4a transparent transparent;border-color:transparent var(--c-bg-dark) transparent transparent}.tooltips-module__arrow___A5Qms.tooltips-module__left___-YwAj{top:0;right:0;width:.5em;height:1em;margin-right:-.5em}.tooltips-module__arrow___A5Qms.tooltips-module__left___-YwAj:before{border-width:.5em 0 .5em .5em;border-color:transparent transparent transparent #4a4a4a;border-color:transparent transparent transparent var(--c-bg-dark)}:root{--button-pad: .5rem}:root --button-inverted:{border-color:var(--c-font-light);color:var(--c-font-light)}:root --button-inverted::active{background-color:#5c5c5c;font-weight:var(--fw-regular)}:root --button-inverted::focus{background-color:#535353}:root --button-inverted::hover{background-color:#535353}:root --button-inverted::disabled,:root --button-inverted:.disabled{border-color:var(--c-font-disabled);background-color:transparent;color:var(--c-font-disabled);cursor:default;fill:var(--c-font-disabled);font-weight:400;pointer-events:none}:root --button-inverted:.hover{background-color:#535353}.buttons-module__button_primary___f2Ik6{position:relative;display:inline-block;width:100%;padding:.5rem;padding:var(--button-pad);border:none;border-radius:2px;border-radius:var(--bd-radius-default);background:transparent;background-color:#4a4a4a;background-color:var(--c-bg-dark);box-shadow:0 0 2px #0000001f,0 2px 2px #0000003d;color:#fff;color:var(--c-font-light);cursor:pointer;font-size:.875rem;font-size:var(--fs-body-2);font-weight:600;font-weight:var(--fw-semibold);line-height:1.4;text-align:center;-webkit-text-decoration:none;text-decoration:none;text-transform:uppercase}.buttons-module__button_primary___f2Ik6:focus{background-color:#343434}.buttons-module__button_primary___f2Ik6:hover,.buttons-module__button_primary___f2Ik6.buttons-module__hover___-N37J{background-color:#343434}.buttons-module__button_primary___f2Ik6:active{background-color:gray;box-shadow:0 0 8px #0000001f,0 8px 8px #0000003d;font-weight:400;font-weight:var(--fw-regular)}.buttons-module__button_primary___f2Ik6.buttons-module__inverted___C5Tr9{background-color:#fafafa;background-color:var(--c-bg-light);color:#4a4a4a;color:var(--c-font-dark)}.buttons-module__button_primary___f2Ik6.buttons-module__inverted___C5Tr9:focus,.buttons-module__button_primary___f2Ik6.buttons-module__inverted___C5Tr9:hover,.buttons-module__button_primary___f2Ik6.buttons-module__inverted___C5Tr9.buttons-module__hover___-N37J{background-color:#eee}.buttons-module__button_primary___f2Ik6.buttons-module__inverted___C5Tr9:active{background-color:#e1e1e1}.buttons-module__button_primary___f2Ik6:disabled,.buttons-module__button_primary___f2Ik6.buttons-module__disabled___xQ5zg{border-color:#9c9c9c;border-color:var(--c-font-disabled);background-color:#c9c9c9;box-shadow:none;color:#9c9c9c;color:var(--c-font-disabled);cursor:default;fill:#9c9c9c;fill:var(--c-font-disabled);font-weight:400;pointer-events:none}.buttons-module__button_flat___u3SMd{position:relative;display:inline-block;width:9rem;padding:.5rem;padding:var(--button-pad);border:none;border-radius:2px;border-radius:var(--bd-radius-default);background:transparent;color:#4a4a4a;color:var(--c-font-dark);cursor:pointer;font-size:.875rem;font-size:var(--fs-body-2);font-weight:600;font-weight:var(--fw-semibold);line-height:1.4;text-align:center;-webkit-text-decoration:none;text-decoration:none;text-transform:uppercase}.buttons-module__button_flat___u3SMd:active{background-color:#e1e1e1;font-weight:400;font-weight:var(--fw-regular)}.buttons-module__button_flat___u3SMd:disabled,.buttons-module__button_flat___u3SMd.buttons-module__disabled___xQ5zg{border-color:#9c9c9c;border-color:var(--c-font-disabled);background-color:transparent;color:#9c9c9c;color:var(--c-font-disabled);cursor:default;fill:#9c9c9c;fill:var(--c-font-disabled);font-weight:400;pointer-events:none}.buttons-module__button_flat___u3SMd:focus{background-color:#9b9b9b40}.buttons-module__button_flat___u3SMd:hover,.buttons-module__button_flat___u3SMd.buttons-module__hover___-N37J{background-color:#9b9b9b40}.buttons-module__button_flat___u3SMd.buttons-module__inverted___C5Tr9{border-color:#fff;border-color:var(--c-font-light);color:#fff;color:var(--c-font-light)}.buttons-module__button_flat___u3SMd.buttons-module__inverted___C5Tr9:active{background-color:#5c5c5c;font-weight:400;font-weight:var(--fw-regular)}.buttons-module__button_flat___u3SMd.buttons-module__inverted___C5Tr9:disabled,.buttons-module__button_flat___u3SMd.buttons-module__inverted___C5Tr9.buttons-module__disabled___xQ5zg{border-color:#9c9c9c;border-color:var(--c-font-disabled);background-color:transparent;color:#9c9c9c;color:var(--c-font-disabled);cursor:default;fill:#9c9c9c;fill:var(--c-font-disabled);font-weight:400;pointer-events:none}.buttons-module__button_flat___u3SMd.buttons-module__inverted___C5Tr9:focus{background-color:#535353}.buttons-module__button_flat___u3SMd.buttons-module__inverted___C5Tr9:hover,.buttons-module__button_flat___u3SMd.buttons-module__inverted___C5Tr9.buttons-module__hover___-N37J{background-color:#535353}.buttons-module__button_outline___vZ22p{position:relative;display:inline-block;width:9rem;padding:.5rem;padding:var(--button-pad);border:1px solid #4a4a4a;border:1px solid var(--c-font-dark);border-radius:2px;border-radius:var(--bd-radius-default);background:transparent;color:#4a4a4a;color:var(--c-font-dark);cursor:pointer;font-size:.875rem;font-size:var(--fs-body-2);font-weight:600;font-weight:var(--fw-semibold);line-height:1.4;text-align:center;-webkit-text-decoration:none;text-decoration:none;text-transform:uppercase}.buttons-module__button_outline___vZ22p:active{background-color:#e1e1e1;font-weight:400;font-weight:var(--fw-regular)}.buttons-module__button_outline___vZ22p:disabled,.buttons-module__button_outline___vZ22p.buttons-module__disabled___xQ5zg{border-color:#9c9c9c;border-color:var(--c-font-disabled);background-color:transparent;color:#9c9c9c;color:var(--c-font-disabled);cursor:default;fill:#9c9c9c;fill:var(--c-font-disabled);font-weight:400;pointer-events:none}.buttons-module__button_outline___vZ22p:focus{background-color:#9b9b9b40}.buttons-module__button_outline___vZ22p:hover,.buttons-module__button_outline___vZ22p.buttons-module__hover___-N37J{background-color:#9b9b9b40}.buttons-module__button_outline___vZ22p.buttons-module__inverted___C5Tr9{border-color:#fff;border-color:var(--c-font-light);color:#fff;color:var(--c-font-light)}.buttons-module__button_outline___vZ22p.buttons-module__inverted___C5Tr9:active{background-color:#5c5c5c;font-weight:400;font-weight:var(--fw-regular)}.buttons-module__button_outline___vZ22p.buttons-module__inverted___C5Tr9:disabled,.buttons-module__button_outline___vZ22p.buttons-module__inverted___C5Tr9.buttons-module__disabled___xQ5zg{border-color:#9c9c9c;border-color:var(--c-font-disabled);background-color:transparent;color:#9c9c9c;color:var(--c-font-disabled);cursor:default;fill:#9c9c9c;fill:var(--c-font-disabled);font-weight:400;pointer-events:none}.buttons-module__button_outline___vZ22p.buttons-module__inverted___C5Tr9:focus{background-color:#535353}.buttons-module__button_outline___vZ22p.buttons-module__inverted___C5Tr9:hover,.buttons-module__button_outline___vZ22p.buttons-module__inverted___C5Tr9.buttons-module__hover___-N37J{background-color:#535353}.buttons-module__button_icon___BsXTh{width:auto}.buttons-module__button_icon___BsXTh>*{display:block;width:100%;height:100%}.buttons-module__button_icon___BsXTh.buttons-module__inverted___C5Tr9{color:#fff;fill:#fff;stroke:#fff}.buttons-module__button_icon___BsXTh.buttons-module__inverted___C5Tr9:disabled,.buttons-module__button_icon___BsXTh.buttons-module__inverted___C5Tr9.buttons-module__disabled___xQ5zg{border-color:#9c9c9c;border-color:var(--c-font-disabled);background-color:transparent;color:#9c9c9c;color:var(--c-font-disabled);cursor:default;fill:#9c9c9c;fill:var(--c-font-disabled);font-weight:400;pointer-events:none}.buttons-module__icon___og1yg{position:absolute;top:.5rem;top:var(--button-pad);left:.5rem;left:var(--button-pad);height:calc(100% - 1rem);height:calc(100% - 2 * var(--button-pad))}.modals-module__modal___yhvHl{position:fixed;z-index:1;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;align-items:flex-start;justify-content:center;padding:4rem}.modals-module__modal_page___LwPsX{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:4.5rem 3rem 1rem}.modals-module__overlay___OZMiy{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#000000e6}.modals-module__title_bar___scAdV{position:absolute;z-index:3;top:0;right:0;left:0;width:100%}.modals-module__modal_contents___CXHub{z-index:1;width:100%;max-width:38rem;padding:1rem;border-radius:.5rem;margin:0 auto;background-color:#fff}.modals-module__modal_page_contents___kv-as{z-index:1;width:100%;max-width:38rem;max-height:100%;padding:1rem;border-radius:.5rem;margin:0 auto;background-color:#fff;overflow-y:auto}.modals-module__modal_heading___tLYK-{margin-top:0;margin-bottom:1rem;color:#4a4a4a;color:var(--c-font-dark);font-size:1.125rem;font-size:var(--fs-header);font-weight:600;font-weight:var(--fw-semibold);text-transform:capitalize}.modals-module__alert_modal_wrapper___CXPbz{position:relative;max-height:100%;padding-top:4rem;border-radius:0}.modals-module__alert_modal_heading___wtjDm.modals-module__no_icon_heading___T6meP{padding-left:2rem}.modals-module__no_alert_header___LrlKY{padding-top:1.5rem}.modals-module__spinner_modal_contents___EPTC9{z-index:4;width:100%;max-width:30rem;flex-direction:column;padding:3rem 1rem 1rem;border-radius:.5rem;margin:0 auto;background-color:transparent;color:#fff;color:var(--c-font-light);font-size:.875rem;font-size:var(--fs-body-2);font-style:italic;font-weight:400;font-weight:var(--fw-regular);text-align:center}.modals-module__spinner_modal_icon___gPxu2{width:7.5rem;margin-bottom:3rem}.modals-module__clickable___uSH4v{cursor:pointer}.modals-module__alert_modal___9scZs{z-index:10}.modals-module__alert_modal_overlay___ubs9w{background-color:#737373e6}.modals-module__alert_modal_contents___uksSz{width:100%;max-height:100%;padding:1rem;color:#4a4a4a;color:var(--c-font-dark);font-size:.875rem;font-size:var(--fs-body-2);font-weight:400;font-weight:var(--fw-regular)}.modals-module__alert_modal_contents___uksSz>p{padding-bottom:1rem}.modals-module__alert_modal_heading___wtjDm{position:absolute;top:0;right:0;left:0;display:flex;align-items:center;padding:1rem;background-color:#e0e0e0;color:#4a4a4a;color:var(--c-font-dark);font-size:1.125rem;font-size:var(--fs-header);font-weight:400}.modals-module__alert_modal_icon___5TjB3{height:1.125rem;margin-right:.75rem}.modals-module__alert_modal_buttons___BSjom{margin-top:1rem;float:right}.modals-module__alert_button___CMl2s{margin-left:1rem}.structure-module__title_bar___aThX7{display:flex;height:3rem;align-items:center;background-color:#4a4a4a;background-color:var(--c-dark-gray);text-transform:uppercase}.structure-module__title_bar___aThX7,.structure-module__title_bar___aThX7 a{color:#fff}.structure-module__title___Ml8PZ,.structure-module__subtitle___DPXFy,.structure-module__separator___GTNl1{margin:0;font-size:1.125rem;font-size:var(--fs-header)}.structure-module__title___Ml8PZ,.structure-module__separator___GTNl1{font-weight:600;font-weight:var(--fw-semibold)}.structure-module__title___Ml8PZ{overflow:hidden;min-width:0;padding:0 1.5rem;text-overflow:ellipsis;white-space:nowrap}.structure-module__subtitle___DPXFy{padding:0 1.5rem;font-weight:400}.structure-module__title___Ml8PZ.structure-module__right___3sDPu{margin-left:auto}.structure-module__title_button___upv1k{flex:none}.structure-module__page_tabs___s-9ZJ{width:100%;text-align:center}.structure-module__tab_link___wigsH{display:inline-block;width:50%;padding:.25rem 0;background-color:#9b9b9b;background-color:var(--c-med-gray);color:#fff;font-size:3rem;font-size:var(--fs-huge);opacity:.2;text-transform:uppercase}.structure-module__active_tab_link___B3CHL{opacity:1}.structure-module__tab_title___yX3tj{font-weight:400}.structure-module__active_tab_link___B3CHL .structure-module__tab_title___yX3tj{font-weight:800;font-weight:var(--fw-bold)}.structure-module__disabled___XXREv{background-color:transparent;pointer-events:none}.structure-module__disabled___XXREv *{background-color:transparent;color:#9c9c9c;color:var(--c-font-disabled);fill:#9c9c9c;fill:var(--c-font-disabled)}.structure-module__labeled_value___Nny1e{color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular);line-height:1.5}.structure-module__labeled_value___Nny1e svg{height:.875rem;height:var(--fs-body-2)}.structure-module__labeled_value_label___EWOH-{margin-top:0;margin-bottom:.25rem;font-weight:600;font-weight:var(--fw-semibold)}.structure-module__labeled_value_value___Xdl42{margin:0}.structure-module__right_node___vpN0U{display:flex;justify-content:flex-end;margin-left:auto}.Pill-module__pill___ip6EY{padding:.5em;border-radius:12px;border-radius:var(--bd-radius-pill);color:#fff;color:var(--c-white)}.Pill-module__pill___ip6EY:empty:before{content:"​"}.Pill-module__invert_text___BJjMt{color:#000;color:var(--c-black)}.Splash-module__splash___XdeJG{position:relative;width:100%;height:100%;color:#e5e2e2;color:var(--c-light-gray)}.Splash-module__splash___XdeJG>*{position:absolute;top:50%;left:50%;max-height:100%;transform:translate(-50%,-50%)}.styles-module__release_notes___od-dn{width:100%;max-height:100%;padding:0 .5rem}.styles-module__release_notes___od-dn>h1{margin-bottom:1rem;color:#4a4a4a;color:var(--c-font-dark);font-size:1.125rem;font-size:var(--fs-header);font-weight:600;font-weight:var(--fw-semibold)}.styles-module__release_notes___od-dn>h2{margin-top:1rem;margin-bottom:.75rem;color:#4a4a4a;color:var(--c-font-dark);font-size:1.125rem;font-size:var(--fs-header);font-weight:400;font-weight:var(--fw-regular)}.styles-module__release_notes___od-dn>h3{margin-top:.75rem;margin-bottom:.5rem;color:#4a4a4a;color:var(--c-font-dark);font-size:.875rem;font-size:var(--fs-body-2);font-weight:600;font-weight:var(--fw-semibold)}.styles-module__release_notes___od-dn ul,.styles-module__release_notes___od-dn ol{margin-bottom:.25rem;margin-left:1.25rem;color:#4a4a4a;color:var(--c-font-dark);font-size:.875rem;font-size:var(--fs-body-2)}.styles-module__release_notes___od-dn li{margin:.25rem 0;color:#4a4a4a;color:var(--c-font-dark);font-size:.875rem;font-size:var(--fs-body-2)}.styles-module__release_notes___od-dn code{color:#4a4a4a;color:var(--c-font-dark);font-family:monospace}.styles-module__release_notes___od-dn pre{padding:.5rem .75rem;margin:.5rem 0;background-color:#4a4a4a;background-color:var(--c-font-dark)}.styles-module__release_notes___od-dn pre code{color:#fff;color:var(--c-font-light)}.styles-module__release_notes___od-dn p{margin-bottom:1rem;color:#4a4a4a;color:var(--c-font-dark);font-size:.875rem;font-size:var(--fs-body-2);font-weight:400;font-weight:var(--fw-regular)}.alerts-module__alert___g105D{font-size:.875rem;font-size:var(--fs-body-2);font-weight:400;font-weight:var(--fw-regular)}.alerts-module__alert___g105D:not(:first-of-type){border-top:none}.alerts-module__title_bar___-o-3n{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:.5rem 1rem;font-weight:600;font-weight:var(--fw-semibold)}.alerts-module__title___aiHC5{width:100%}.alerts-module__success___WuTxb{border:1px solid #60b120;border:1px solid var(--c-success)}.alerts-module__success___WuTxb>.alerts-module__title_bar___-o-3n{background-color:#b6febc;background-color:var(--c-bg-success);color:#60b120;color:var(--c-success)}.alerts-module__success___WuTxb>.alerts-module__title_bar___-o-3n svg{color:#60b120;color:var(--c-success)}.alerts-module__info___CvwSE{border:1px solid #5fd8ee;border:1px solid var(--c-highlight)}.alerts-module__info___CvwSE>.alerts-module__title_bar___-o-3n{background-color:#f0f3ff;background-color:var(--c-bg-selected);color:#00c3e6;color:var(--c-selected-dark)}.alerts-module__info___CvwSE>.alerts-module__title_bar___-o-3n svg{color:#5fd8ee;color:var(--c-highlight)}.alerts-module__warning___WH7kv{border:1px solid #e28200;border:1px solid var(--c-warning)}.alerts-module__warning___WH7kv>.alerts-module__title_bar___-o-3n{background-color:#ffd58f;background-color:var(--c-warning-light);color:#9e5e00;color:var(--c-warning-dark)}.alerts-module__warning___WH7kv>.alerts-module__title_bar___-o-3n svg{fill:#e28200;fill:var(--c-warning)}.alerts-module__error___-yRV3{border:1px solid #d12929;border:1px solid var(--c-error)}.alerts-module__error___-yRV3>.alerts-module__title_bar___-o-3n{background-color:#ffc0c0;background-color:var(--c-error-light);color:#ac0505;color:var(--c-error-dark)}.alerts-module__error___-yRV3>.alerts-module__title_bar___-o-3n svg{fill:#d12929;fill:var(--c-error)}.alerts-module__message___Jy0ne{padding:1rem 3rem;background-color:#fff}.alerts-module__message___Jy0ne a{color:inherit;-webkit-text-decoration:underline;text-decoration:underline}.alerts-module__message___Jy0ne:empty{padding:0}.alerts-module__icon___mq-6x{width:1.5rem;margin-right:.5rem}.alerts-module__close___bcdYi{width:2rem;padding:.125rem}.alerts-module__close___bcdYi:hover{background-color:#6464641a}:root{--mw-labeled-toggle: 25rem}.styles-module__toggled_on___MdTWy{color:#0ec9eb;fill:#0ec9eb}.styles-module__toggled_off___JAlN-{fill:#4a4a4a;fill:var(--c-dark-gray)}.styles-module__labeled_control_wrapper___kR9kv{display:block;width:100%;padding:1rem}.styles-module__labeled_control_wrapper___kR9kv:not(:last-child){border-bottom:1px solid #e5e2e2;border-bottom:1px solid var(--c-light-gray)}.styles-module__labeled_control___1kGsb{display:block}.styles-module__stacked_labeled_control___Lbis-{display:block;margin-top:.5rem;margin-left:1rem}.styles-module__stacked_labeled_control_label___PXonJ{display:inline-block;color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:600;font-weight:var(--fw-semibold)}.styles-module__labeled_control_label___JWPRU{display:inline-block;max-width:25rem;max-width:var(--mw-labeled-toggle);color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:600;font-weight:var(--fw-semibold)}.styles-module__labeled_toggle_button___c4bSG{width:2rem;padding:0;margin-right:1rem;float:right}.styles-module__labeled_toggle_button___c4bSG:hover{background-color:transparent}.styles-module__labeled_button___erkDy,.styles-module__labeled_select___cyTr0{width:9rem;margin-top:.5rem;float:right}.styles-module__labeled_select___cyTr0{color:#4a4a4a;color:var(--c-font-dark);font-size:.875rem;font-size:var(--fs-body-2);font-weight:400;font-weight:var(--fw-regular)}.styles-module__labeled_checkbox___pYmph{float:right}.styles-module__stacked_control_info___HsLlz{color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular)}.styles-module__stacked_control_info___HsLlz>p{margin-top:.5rem;margin-bottom:0;line-height:1.5}.styles-module__control_info___1cX9H{max-width:25rem;max-width:var(--mw-labeled-toggle);color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular)}.styles-module__control_info___1cX9H>p{margin-top:.5rem;margin-bottom:0;line-height:1.5}.forms-module__accessibly_hidden___gosAV{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip:rect(0 0 0 0)}.forms-module__form_field___onbAk{display:flex;align-items:center;color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular);line-height:1}.forms-module__label_text___eYVHX{flex:0 0 auto;padding:0 .5rem}.forms-module__label_text___eYVHX:empty{padding:0}.forms-module__form_group_label___jicAp{margin-bottom:.15rem;color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:600;font-weight:var(--fw-semibold);text-transform:capitalize}.forms-module__form_group_label___jicAp:after{content:":"}.forms-module__form_group_label_pipette_settings_slideout___FPY7D{margin-bottom:.5rem;color:#16212d;font-size:13px;font-weight:600;font-weight:var(--fw-semibold);text-transform:capitalize}.forms-module__checkbox_icon___r8cnN{display:flex;width:1.25rem;min-width:1.25rem;align-items:center;justify-content:center;color:#4a4a4a;color:var(--c-font-dark)}.forms-module__checkbox_icon___r8cnN:not(.forms-module__checkbox_disabled___tacwo):hover{cursor:pointer}.forms-module__checkbox_icon___r8cnN.forms-module__error___RvDUX{color:#9e5e00;color:var(--c-warning-dark)}.forms-module__checkbox_icon___r8cnN.forms-module__checked___7tVO1{color:#006cfa;color:var(--c-blue)}.forms-module__toggle_icon___BHl3R{display:block;width:2rem;min-width:2rem;color:#4a4a4a;color:var(--c-font-dark)}.forms-module__toggle_icon___BHl3R:not(.forms-module__toggle_disabled___FHlPq):hover{cursor:pointer}.forms-module__dropdown_disabled___DJqXm,.forms-module__checkbox_disabled___tacwo,.forms-module__toggle_disabled___FHlPq{opacity:.5}.forms-module__input_field_container___4zMtR{width:100%}.forms-module__input_field___c3wAH{display:flex;flex:1 1;padding:.25rem .25rem .25rem .5rem;border-radius:3px;border-radius:var(--bd-radius-form-field);background-color:#e5e2e2;background-color:var(--c-light-gray)}.forms-module__input_field___c3wAH input{width:100%;height:1rem;flex:1 1 auto;border:none;border-radius:inherit;background-color:inherit;color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular)}.forms-module__input_field___c3wAH input:focus{outline:none}.forms-module__input_field___c3wAH input::placeholder{color:#9b9b9b;color:var(--c-med-gray)}.forms-module__input_field___c3wAH:focus-within{background-color:#fff;background-color:var(--c-white);box-shadow:0 .125rem .25rem #00000080}.forms-module__input_field___c3wAH .forms-module__suffix___BVdzU{display:inline-block;flex:1 0;align-self:center;color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:600;font-weight:var(--fw-semibold);text-align:right}.forms-module__input_caption___5W7Sy{color:#9b9b9b;color:var(--c-med-gray);font-size:.625rem;font-size:var(--fs-caption);font-weight:600;font-weight:var(--fw-semibold);line-height:1.2}.forms-module__input_caption___5W7Sy .forms-module__right___hUbzm{float:right}.forms-module__inline___eOmRP{display:flex}.forms-module__inline___eOmRP .forms-module__label_text___eYVHX{padding-right:1.5rem}.forms-module__inline_item___zOTj7{flex:1}.forms-module__error___RvDUX div,.forms-module__error___RvDUX span{color:#9e5e00;color:var(--c-warning-dark)}.forms-module__error___RvDUX select,.forms-module__error___RvDUX .forms-module__input_field___c3wAH{background-color:#ffd58f;background-color:var(--c-warning-light)}.forms-module__dropdown___AS5fB{background-color:#e5e2e2;background-color:var(--c-light-gray)}.forms-module__dropdown_field___oMX7b{position:relative}.forms-module__dropdown_field___oMX7b select{overflow:hidden;width:100%;height:1.5rem;padding:.25rem .5rem;border:0;border-radius:3px;border-radius:var(--bd-radius-form-field);-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#4a4a4a;color:var(--c-font-dark);font-family:inherit;font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular);outline:none}.forms-module__dropdown_field___oMX7b select:focus{background-color:#fff;background-color:var(--c-white);box-shadow:0 .125rem .25rem #00000080}.forms-module__dropdown_field___oMX7b .forms-module__dropdown_icon___l0UqQ{position:absolute;top:.2rem;right:.25rem;width:1.25rem;pointer-events:none}.forms-module__dropdown_field___oMX7b .forms-module__dropdown_icon___l0UqQ svg{color:#4a4a4a;color:var(--c-dark-gray)}.forms-module__error_icon___XN06X{display:inline-block;width:1.5rem;min-width:1.5rem;padding-right:.5rem}.forms-module__disabled___81PLn{pointer-events:none}.forms-module__disabled___81PLn .forms-module__form_group_label___jicAp{color:#e5e2e2;color:var(--c-light-gray)}.forms-module__disabled___81PLn input,.forms-module__disabled___81PLn .forms-module__suffix___BVdzU{color:#9b9b9b;color:var(--c-med-gray)}.Select-module__example_select_override___LlZd3 .ot_select__control{background-color:#00f}.Select-module__select___KKUl6{position:relative}.Select-module__select___KKUl6 .ot_select__control{position:relative;display:flex;height:1.75rem;padding:.25rem 0;border:none;border-radius:3px;border-radius:var(--bd-radius-form-field);background-color:#e5e2e2;background-color:var(--c-light-gray);box-shadow:none;color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular);outline:none}.Select-module__select___KKUl6 .ot_select__control--menu-is-open{border-bottom-left-radius:0;border-bottom-right-radius:0}.Select-module__select___KKUl6 .ot_select__control--menu-is-open,.Select-module__select___KKUl6 .ot_select__control--is-focused{background-color:#fff;background-color:var(--c-white);box-shadow:0 .125rem .25rem #00000080}.Select-module__select___KKUl6 .ot_select__option{display:flex;padding:.25rem .75rem;cursor:default}.Select-module__select___KKUl6 .ot_select__option--is-focused{background-color:#e5e2e2;background-color:var(--c-light-gray)}.Select-module__select___KKUl6 .ot_select__option--is-disabled{color:#9c9c9c;color:var(--c-font-disabled)}.Select-module__select___KKUl6 .ot_select__group-heading{margin-left:.5rem;color:#9b9b9b;color:var(--c-med-gray);font-size:.625rem;font-size:var(--fs-caption);font-weight:600;font-weight:var(--fw-semibold);text-transform:uppercase}.Select-module__select___KKUl6 .ot_select__single-value{display:flex}.Select-module__select___KKUl6 .ot_select__group:not(:first-child){padding-top:.25rem;border-top:1px solid rgba(155,155,155,.4);margin-top:.25rem}.Select-module__dropdown_indicator___u4SGq{position:absolute;top:.25rem;right:.25rem;width:1.25rem;pointer-events:none}.Select-module__dropdown_indicator___u4SGq>svg{color:#4a4a4a;color:var(--c-dark-gray)}.Select-module__dropdown_indicator___u4SGq.Select-module__flipped___2O1dT>svg{transform:rotate(180deg)}.Select-module__dropdown_indicator_icon___YZsx7{width:100%}.Select-module__menu___0Uuo2{position:absolute;z-index:99;top:100%;right:0;left:0;padding-top:.25rem;padding-bottom:.25rem;background-color:#fff;background-color:var(--c-white);border-bottom-left-radius:3px;border-bottom-left-radius:var(--bd-radius-form-field);border-bottom-right-radius:3px;border-bottom-right-radius:var(--bd-radius-form-field);box-shadow:0 .125rem .25rem #00000080;color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular)}.Select-module__menu_control_bridge___WUNDT{position:absolute;z-index:99;top:calc(100% - 2px);right:0;left:0;height:4px;background-color:#fff;background-color:var(--c-white)}.SelectField-module__select_field___ZUrcY.SelectField-module__error___-SE1k .ot_select__control{background-color:#ffd58f;background-color:var(--c-warning-light)}.SelectField-module__select_caption___i3BBB{font-size:.625rem;font-size:var(--fs-caption)}.SelectField-module__select_caption___i3BBB.SelectField-module__error___-SE1k{color:#9e5e00;color:var(--c-warning-dark);font-weight:600;font-weight:var(--fw-semibold)}.LabwareNameOverlay-module__name_overlay___XitKl{width:100%;padding:.25rem;border-radius:0 0 .5rem .5rem;background-color:#000000bf;color:#fff;color:var(--c-font-light);font-size:.5rem}.LabwareNameOverlay-module__display_name___vck-x{color:#fff;color:var(--c-font-light);font-weight:600;font-weight:var(--fw-semibold);word-wrap:break-word}.LabwareNameOverlay-module__deck_slot___xFyBZ:active{cursor:grabbing}.ModuleItem-module__module___pGuMg{display:flex;width:100%;height:100%;border-radius:6px;background-color:#000;background-color:var(--c-black);color:#000;color:var(--c-black);opacity:.9}.ModuleItem-module__module_review_icon___i3UVi{width:12px;height:12px;margin:0 .25rem 0 0;color:#fff;color:var(--c-white)}.ModuleItem-module__module_review_icon_missing___Mf03Q{color:#f00000;color:var(--c-red)}.ModuleItem-module__module_review_icon_present___1SQGm{color:#7ed321;color:var(--c-green)}.ModuleItem-module__module_review_text___-9tRP{margin-bottom:.75rem;color:#fff;color:var(--c-white);fill:currentColor;font-size:.55rem;font-weight:600;font-weight:var(--fw-semibold);text-transform:capitalize;white-space:pre}.ModuleItem-module__module_name_overlay___Olq1z{color:#000;color:var(--c-black);opacity:.7}.ModuleItem-module__module_connect_info_wrapper___u3JMo{display:flex;flex-direction:row;color:#fff;color:var(--c-white);font-size:.5rem}.ModuleItem-module__module_port_text___Qm6D-{color:#fff;color:var(--c-white);fill:currentColor;font-size:.65rem;font-weight:600;font-weight:var(--fw-semibold);text-transform:uppercase}.ModuleItem-module__module_port_text_na___1QRvV{color:#9b9b9b;color:var(--c-med-gray);fill:currentColor;font-size:.65rem;font-weight:600;font-weight:var(--fw-semibold);text-transform:uppercase}.ModuleItem-module__module_wrapper___Bo6r1{display:flex;width:100%;flex-direction:column;align-items:flex-end;justify-content:center;padding:1.15rem}.ModuleItem-module__flipped_module_wrapper___hks1M{display:flex;width:100%;flex-direction:column;align-items:flex-start;justify-content:center;padding:1.15rem}.ModuleItem-module__module_name_text___zzobt{color:#fff;color:var(--c-white);fill:currentColor;font-size:.5rem;font-weight:600;font-weight:var(--fw-semibold);text-transform:uppercase}.ModuleItem-module__flipped___g-E3y{transform:rotate(180deg)}.ModuleItem-module__right_icon___cmgU-{margin:0 0 0 1rem}:root{--list-padding-large: 1rem;--list-padding-small: .75rem}.lists-module__clickable___xmuhv{cursor:pointer}.lists-module__disabled___lX9y-{background-color:transparent}.lists-module__disabled___lX9y- *{background-color:transparent;color:#9c9c9c;color:var(--c-font-disabled);fill:#9c9c9c;fill:var(--c-font-disabled);outline-color:#eee}.lists-module__panel_group___n4iBS,.lists-module__titled_list___rjc0y,.lists-module__list_item___DFjr8{background-color:#fff}.lists-module__panel_group___n4iBS{box-shadow:0 1px 2px #00000054}.lists-module__hover_border___lqFaV{outline:1px solid #5fd8ee;outline:var(--bd-width-default) solid var(--c-highlight)}.lists-module__header_text___fZ-zF{color:#9c9c9c;color:var(--c-font-disabled);font-size:.625rem;font-size:var(--fs-caption);font-weight:600;font-weight:var(--fw-semibold);text-transform:uppercase}.lists-module__title_bar___hW80Q{position:relative;display:flex;flex-direction:column;padding:1rem .75rem;padding:var(--list-padding-large) var(--list-padding-small);-webkit-text-decoration:none;text-decoration:none}.lists-module__titled_list_title_bar___LaZ1p{position:relative;display:flex;flex-direction:row;align-items:center;padding:1rem .75rem;padding:var(--list-padding-large) var(--list-padding-small);-webkit-text-decoration:none;text-decoration:none}.lists-module__titled_list_selected___455mA .lists-module__title_bar___hW80Q{background-color:#f0f3ff;background-color:var(--c-bg-selected)}.lists-module__titled_list_selected___455mA .lists-module__title_bar___hW80Q *{color:#00c3e6;color:var(--c-selected-dark);font-weight:600;font-weight:var(--fw-semibold)}.lists-module__title___AN80u{margin:0;font-size:.875rem;font-size:var(--fs-body-2);font-weight:400;font-weight:var(--fw-regular);text-transform:uppercase}.lists-module__title_enabled___ngQlu{color:#4a4a4a;color:var(--c-font-dark)}.lists-module__title_disabled___Ox4bE{color:#9c9c9c;color:var(--c-font-disabled)}.lists-module__title_bar_icon___A-L0-{height:1.5rem;color:#4a4a4a;color:var(--c-font-dark)}.lists-module__title_bar_error___41Xw7{background-color:#ffc0c0;background-color:var(--c-error-light)}.lists-module__icon_left_of_title___-yn3K{height:1.2rem;margin-right:.5rem}.lists-module__icon_left_of_title_container___JomEt{display:flex;justify-content:flex-start}.lists-module__title_bar_carat___hcJ6l{position:absolute;top:0;right:0;bottom:0;padding:calc(.75rem - 1px);padding:calc(var(--list-padding-small) - var(--bd-width-default));padding-top:1rem}.lists-module__title_bar_carat___hcJ6l:hover{background-color:#0000000d}.lists-module__list___08Rv3{padding-left:0;margin:0;list-style-type:none}.lists-module__list_item___DFjr8{display:flex;width:100%;flex-direction:row;align-items:center;padding:.75rem;padding:var(--list-padding-small);margin:0;color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-weight:400;font-weight:var(--fw-regular);line-height:1.25}.lists-module__list_item___DFjr8:hover{background-color:#f1f1f1;background-color:var(--c-bg-hover)}.lists-module__list_item___DFjr8.lists-module__active___rVnya{background-color:#f0f3ff;background-color:var(--c-bg-selected)}a.lists-module__list_item___DFjr8{-webkit-text-decoration:none;text-decoration:none}.lists-module__list_alert___U5vI2{width:100%;padding:.75rem;padding:var(--list-padding-small);background-color:#fafafa;background-color:var(--c-bg-light);color:#4a4a4a;color:var(--c-font-dark);font-size:.75rem;font-size:var(--fs-body-1);font-style:italic;font-weight:400;font-weight:var(--fw-regular)}.lists-module__item_icon___zyl-J{height:.9375rem;height:calc(1.25 * var(--fs-body-1));flex:none;margin-right:.5rem}:root{--sidebar-width: 18.25rem}.SidePanel-module__panel___4qNNn{position:relative;overflow:visible;flex-shrink:0;padding:0 4px;border-right:1px solid #e5e2e2;border-right:var(--bd-light);background-color:#fafafa;background-color:var(--c-bg-light)}.SidePanel-module__title_bar___8yh9F{display:flex;width:18.25rem;width:var(--sidebar-width);align-items:center}.SidePanel-module__title___xHJWW{margin:1rem auto;color:#4a4a4a;color:var(--c-font-dark);font-size:1.125rem;font-size:var(--fs-header);font-weight:600;font-weight:var(--fw-semibold)}.SidePanel-module__panel_contents___DbmrS{width:18.25rem;width:var(--sidebar-width);height:calc(100vh - 3.5rem);overflow-x:hidden;overflow-y:auto}:root{--c-mustard: #ffd252;--c-blue: #006cfa;--c-light-blue: hsl(214.08, 100%, 85%);--c-near-black: #a4a4a4;--c-dark-gray: #4a4a4a;--c-charcoal: #979797;--c-med-gray: #9b9b9b;--c-light-gray: #e5e2e2;--c-lightest-gray: #ededed;--c-bg-dark: #4a4a4a;--c-bg-light: #fafafa;--c-bg-selected: #f0f3ff;--c-bg-hover: #f1f1f1;--c-bg-success: #b6febc;--c-highlight: #5fd8ee;--c-selected-dark: #00c3e6;--c-warning-dark: #9e5e00;--c-warning: #e28200;--c-warning-light: #ffd58f;--c-error-dark: #ac0505;--c-error: #d12929;--c-error-light: #ffc0c0;--c-success: #60b120;--c-blue-enabled: #006cfa;--c-light-grey-hover: #c6c6c6;--c-selection-overlay: rgba(95, 216, 238, .3);--c-plate-bg: #ccc;--c-white: #fff;--c-black: #000;--c-green: #7ed321;--c-red: #f00000;--c-orange: #f5a623}:root --transition-color:{transition:color .15s ease-in-out}:root --transition-background-color:{transition:background-color .15s ease-in-out}:root{--c-font-dark: #4a4a4a;--c-font-icon: #6f6f6f;--c-font-light: white;--c-font-disabled: #9c9c9c;--fs-huge: 3rem;--fs-header: 1.125rem;--fs-default: 1rem;--fs-body-2: .875rem;--fs-body-1: .75rem;--fs-caption: .625rem;--fs-tiny: .325rem;--fs-micro: .2rem;--fw-bold: 800;--fw-semibold: 600;--fw-regular: 400;--fw-light: 300;--ff-code: Consolas, monaco, monospace;--lh-solid: 1;--lh-title: 1.25;--lh-copy: 1.5}:root{--bd-radius-default: 2px;--bd-radius-form-field: 3px;--bd-radius-pill: 12px;--bd-width-default: 1px;--bd-light: var(--bd-width-default) solid var(--c-light-gray);--shadow-lvl-1: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .2);--shadow-lvl-2: 0 3px 6px 0 rgba(0, 0, 0, .13), 0 3px 6px 0 rgba(0, 0, 0, .23)}*{box-sizing:border-box}.styles-module__slot_rect___8v5MA{fill:none;stroke:#9b9b9b;stroke:var(--c-med-gray)}.styles-module__slot_occupied___kbyCd{fill:#e5e2e2;fill:var(--c-light-gray)}.styles-module__slot_occupied___kbyCd.styles-module__slot_error___mM6Kj{fill:#ffd58f;fill:var(--c-warning-light)}.styles-module__collision_icon___6XuQc{color:#9b9b9b;color:var(--c-med-gray)}
package/package.json CHANGED
@@ -1,14 +1,20 @@
1
1
  {
2
2
  "name": "@opentrons/components",
3
- "version": "0.2.0-alpha.0",
3
+ "version": "0.2.0-alpha.4",
4
4
  "description": "React components library for Opentrons' projects",
5
5
  "source": "src/index.ts",
6
6
  "types": "lib/index.d.ts",
7
7
  "style": "src/index.module.css",
8
- "main": "src/index.ts",
9
- "module": "src/index.ts",
8
+ "main": "lib/index.mjs",
9
+ "module": "lib/index.mjs",
10
10
  "exports": {
11
- "./styles": "./src/styles/global.css"
11
+ ".": {
12
+ "types": "./lib/index.d.ts",
13
+ "import": "./lib/index.mjs",
14
+ "require": "./lib/index.mjs",
15
+ "default": "./lib/index.mjs"
16
+ },
17
+ "./styles": "./lib/style.css"
12
18
  },
13
19
  "repository": {
14
20
  "type": "git",
@@ -21,11 +27,12 @@
21
27
  },
22
28
  "homepage": "https://github.com/Opentrons/opentrons#readme",
23
29
  "peerDependencies": {
30
+ "@opentrons/shared-data": "*",
24
31
  "react": "18.2.0",
25
32
  "react-dom": "18.2.0"
26
33
  },
27
34
  "dependencies": {
28
- "@opentrons/shared-data": "0.2.0-alpha.0",
35
+ "@opentrons/shared-data": "0.2.0-alpha.4",
29
36
  "@popperjs/core": "2.1.1",
30
37
  "@react-spring/types": "9.6.1",
31
38
  "@react-spring/web": "9.6.1",
@@ -47,6 +54,18 @@
47
54
  "styled-components": "5.3.6"
48
55
  },
49
56
  "devDependencies": {
57
+ "@opentrons/step-generation": "link:../step-generation",
50
58
  "react-redux": "8.1.2"
51
- }
59
+ },
60
+ "scripts": {
61
+ "build": "npm run build-ts && npm run build-lib",
62
+ "build-lib": "NODE_ENV=production vite build",
63
+ "build-ts": "tsc --build --emitDeclarationOnly",
64
+ "prepublishOnly": "npm run build",
65
+ "postpack": "echo 'Package ready for publishing with bundled step-generation'"
66
+ },
67
+ "files": [
68
+ "lib/",
69
+ "README.md"
70
+ ]
52
71
  }
package/Makefile DELETED
@@ -1,51 +0,0 @@
1
- # opentrons component library makefile
2
-
3
- # dev server port
4
- port ?= 6060
5
-
6
- # These variables can be overriden when make is invoked to customize the
7
- # behavior of jest
8
- tests ?= src
9
- cov_opts ?= --coverage=true
10
- test_opts ?=
11
-
12
- # standard targets
13
- #####################################################################
14
-
15
- .PHONY: all
16
- all: clean dist
17
-
18
- .PHONY: clean
19
- clean:
20
- cd .. && yarn shx rm -rf storybook-static
21
-
22
- # artifacts
23
- #####################################################################
24
-
25
- .PHONY: dist
26
- dist:
27
- cd .. && yarn sb build
28
-
29
- .PHONY: lib
30
- lib: export NODE_ENV := production
31
- lib:
32
- yarn vite build
33
-
34
- .PHONY: build-ts
35
- build-ts:
36
- yarn tsc --build --emitDeclarationOnly
37
-
38
- # development
39
- #####################################################################
40
-
41
- .PHONY: dev
42
- dev:
43
- cd .. && yarn sb dev --port $(port)
44
-
45
- .PHONY: test
46
- test:
47
- $(MAKE) -C .. test-js-components tests="$(tests)" test_opts="$(test_opts)"
48
-
49
- .PHONY: test-cov
50
- test-cov:
51
- make -C .. test-js-components tests=$(tests) test_opts="$(test_opts)" cov_opts="$(cov_opts)"
package/babel.config.cjs DELETED
@@ -1,21 +0,0 @@
1
- 'use strict'
2
-
3
- module.exports = {
4
- env: {
5
- // Note(isk: 3/2/20): Must have babel-plugin-styled-components in each env,
6
- // see here for further details: s https://styled-components.com/docs/tooling#babel-plugin
7
- production: {
8
- plugins: ['babel-plugin-styled-components', 'babel-plugin-unassert'],
9
- },
10
- development: {
11
- plugins: ['babel-plugin-styled-components'],
12
- },
13
- test: {
14
- plugins: [
15
- // NOTE(mc, 2020-05-08): disable ssr, displayName to fix toHaveStyleRule
16
- // https://github.com/styled-components/jest-styled-components/issues/294
17
- ['babel-plugin-styled-components', { ssr: false, displayName: false }],
18
- ],
19
- },
20
- },
21
- }
@@ -1,22 +0,0 @@
1
- import type { Plugin } from 'vite'
2
-
3
- /**
4
- * Plugin to make sure CSS modules do not get tree shaked out of the dist.
5
- * see https://github.com/vitejs/vite/pull/16051
6
- *
7
- * @returns {Plugin} The Vite plugin object.
8
- */
9
-
10
- export const cssModuleSideEffect = (): Plugin => {
11
- return {
12
- name: 'css-module-side-effectful',
13
- enforce: 'post',
14
- transform(_: string, id: string) {
15
- if (id.includes('.module.')) {
16
- return {
17
- moduleSideEffects: 'no-treeshake', // or true, which also works with slightly better treeshake
18
- }
19
- }
20
- },
21
- }
22
- }
@@ -1,14 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- interface PlaceholderStyledTextProps {
3
- children: ReactNode;
4
- color?: string;
5
- desktopStyle?: string;
6
- oddStyle?: string;
7
- }
8
- /**
9
- * @deprecated: NOTE: YOU SHOULD NOT BE USING THIS - THIS IS A TEMP COMPONENT
10
- * USED FOR PROTOCOL LIBRARY TO NOT USE STYLED-COMPONENTS. USE THIS
11
- * UNTIL WE MIGRATE STYLEDTEXT PROPERLY
12
- */
13
- export declare const PlaceholderStyledText: (props: PlaceholderStyledTextProps) => JSX.Element;
14
- export {};
@@ -1,12 +0,0 @@
1
- import { Meta } from '@storybook/blocks'
2
-
3
- <Meta title="Helix/AboutHelix" />
4
-
5
- # About Helix
6
-
7
- Helix is a design system for building user interfaces for Opentrons.
8
- Currently, it is used by the Desktop app, Touchscreen app, Protocol Designer, and Opentrons AI client.
9
-
10
- Figma: <a href="https://www.figma.com/design/1ot18My22DALIcjdLl5LJh/Helix-Design-System?node-id=302-1785&m=dev" target="_blank">Helix Design System</a>
11
-
12
- Contents will be added soon.
@@ -1,10 +0,0 @@
1
- // File transformer for Jest
2
- // Makes asset filenames appear in snapshots
3
- // see https://facebook.github.io/jest/docs/en/webpack.html
4
- const path = require('path')
5
-
6
- module.exports = {
7
- process(src, filename, config, options) {
8
- return 'module.exports = ' + JSON.stringify(path.basename(filename))
9
- },
10
- }
@@ -1,28 +0,0 @@
1
- import { describe, expect, it } from 'vitest'
2
-
3
- import { truncateString } from '../utils'
4
-
5
- describe('truncateString', () => {
6
- it('when an input string less than max length, return the original input', () => {
7
- // Note (kj:05/03/2023) the max length and breakPoints are the same as what we use for the Desktop app
8
- const str = 'opentrons-dev'
9
- const result = truncateString(str, 80, 65)
10
- expect(result).toEqual(str)
11
- })
12
-
13
- it('when an input string is more than 80 characters, return the truncated string', () => {
14
- const str = `Lorem Ipsum Is Simply Dummy Text Of The Printing And Typesetting Industry. Lorem Ipsum Has Been The Industry's Standard Dummy Text Ever Since The 1500s, When An Unknown Printer Took A Galley Of Type And Scrambled It To Make A Type Specimen Book.Py`
15
- const result = truncateString(str, 80, 65)
16
- const truncatedStr =
17
- 'Lorem Ipsum Is Simply Dummy Text Of The Printing And Typesetting ...imen Book.Py'
18
- expect(result).toEqual(truncatedStr)
19
- })
20
-
21
- it('when an input string is more than 80 characters without specifying the break point, return the truncated string', () => {
22
- const str = `Lorem Ipsum Is Simply Dummy Text Of The Printing And Typesetting Industry. Lorem Ipsum Has Been The Industry's Standard Dummy Text Ever Since The 1500s, When An Unknown Printer Took A Galley Of Type And Scrambled It To Make A Type Specimen Book.Py`
23
- const result = truncateString(str, 80)
24
- const truncatedStr =
25
- 'Lorem Ipsum Is Simply Dummy Text Of The Printing And Typesetting Industry. Lo...'
26
- expect(result).toEqual(truncatedStr)
27
- })
28
- })
@@ -1,49 +0,0 @@
1
- import { AlertItem } from './AlertItem'
2
-
3
- import type { Meta, Story } from '@storybook/react'
4
- import type * as React from 'react'
5
-
6
- export default {
7
- title: 'Library/Molecules/AlertItem',
8
- component: AlertItem,
9
- argTypes: { onCloseClick: { action: 'clicked' } },
10
- } as Meta
11
-
12
- const Template: Story<React.ComponentProps<typeof AlertItem>> = args => (
13
- <AlertItem {...args} />
14
- )
15
-
16
- export const Basic = Template.bind({})
17
- Basic.args = {
18
- type: 'success',
19
- title: 'good job!',
20
- }
21
-
22
- export const OverriddenIcon = Template.bind({})
23
- OverriddenIcon.args = {
24
- type: 'info',
25
- title: 'Alert with overridden icon',
26
- icon: { name: 'pause-circle' },
27
- }
28
-
29
- export const Stackable: Story<
30
- React.ComponentProps<typeof AlertItem>
31
- > = args => (
32
- <div>
33
- <Template {...args} type="warning" title={'Warning with close button'} />
34
- <Template
35
- {...args}
36
- onCloseClick={undefined}
37
- type="warning"
38
- title={'Warning with no close button'}
39
- />
40
- <Template {...args} type="warning" title={'Warning with no children'} />
41
- <Template
42
- {...args}
43
- type="warning"
44
- title={'Warning with React Node children'}
45
- >
46
- <p>Some additional info</p>
47
- </Template>
48
- </div>
49
- )
@@ -1,86 +0,0 @@
1
- import cx from 'classnames'
2
-
3
- import { IconButton } from '../buttons'
4
- import { Icon } from '../icons'
5
- import styles from './alerts.module.css'
6
-
7
- import type { ReactNode } from 'react'
8
- import type { IconProps } from '../icons'
9
-
10
- export type AlertType = 'success' | 'warning' | 'error' | 'info'
11
-
12
- export interface AlertItemProps {
13
- /** name constant of the icon to display */
14
- type: AlertType
15
- /** title/main message of colored alert bar */
16
- title: ReactNode
17
- /** Alert message body contents */
18
- children?: ReactNode
19
- /** Additional class name */
20
- className?: string
21
- /** optional handler to show close button/clear alert */
22
- onCloseClick?: () => unknown
23
- /** Override the default Alert Icon */
24
- icon?: IconProps
25
- }
26
-
27
- /**
28
- * Alert overlay,
29
- * change style and icon by using type 'success' 'warning' 'error'
30
- */
31
-
32
- const ALERT_PROPS_BY_TYPE: Record<
33
- AlertType,
34
- { icon: IconProps; className: string }
35
- > = {
36
- success: {
37
- icon: { name: 'check-circle' },
38
- className: styles.success,
39
- },
40
- error: {
41
- icon: { name: 'alert-circle' },
42
- className: styles.error,
43
- },
44
- warning: {
45
- icon: { name: 'alert-circle' },
46
- className: styles.warning,
47
- },
48
- info: {
49
- icon: { name: 'information' },
50
- className: styles.info,
51
- },
52
- }
53
-
54
- /**
55
- * @deprecated Use 'Banner' instead
56
- */
57
-
58
- export function AlertItem(props: AlertItemProps): JSX.Element {
59
- const alertProps = ALERT_PROPS_BY_TYPE[props.type]
60
- const icon = props.icon ? props.icon : alertProps.icon
61
- const className = cx(styles.alert, alertProps.className, props.className)
62
-
63
- const iconProps = {
64
- ...icon,
65
- className: styles.icon,
66
- }
67
-
68
- return (
69
- <div className={className}>
70
- <div className={styles.title_bar}>
71
- <Icon {...iconProps} />
72
- <span className={styles.title} data-testid="alert_item_title">
73
- {props.title}
74
- </span>
75
- {props.onCloseClick && (
76
- <IconButton
77
- name="close"
78
- onClick={props.onCloseClick}
79
- className={styles.close}
80
- />
81
- )}
82
- </div>
83
- {props.children && <div className={styles.message}>{props.children}</div>}
84
- </div>
85
- )
86
- }
@@ -1,103 +0,0 @@
1
- @import '../index.module.css';
2
-
3
- .alert {
4
- font-size: var(--fs-body-2);
5
- font-weight: var(--fw-regular);
6
- }
7
-
8
- .alert:not(:first-of-type) {
9
- border-top: none;
10
- }
11
-
12
- .title_bar {
13
- display: flex;
14
- flex-direction: row;
15
- align-items: center;
16
- justify-content: space-between;
17
- padding: 0.5rem 1rem;
18
- font-weight: var(--fw-semibold);
19
- }
20
-
21
- .title {
22
- width: 100%;
23
- }
24
-
25
- .success {
26
- border: 1px solid var(--c-success);
27
-
28
- & > .title_bar {
29
- background-color: var(--c-bg-success);
30
- color: var(--c-success);
31
-
32
- & svg {
33
- color: var(--c-success);
34
- }
35
- }
36
- }
37
-
38
- .info {
39
- border: 1px solid var(--c-highlight);
40
-
41
- & > .title_bar {
42
- background-color: var(--c-bg-selected);
43
- color: var(--c-selected-dark);
44
-
45
- & svg {
46
- color: var(--c-highlight);
47
- }
48
- }
49
- }
50
-
51
- .warning {
52
- border: 1px solid var(--c-warning);
53
-
54
- & > .title_bar {
55
- background-color: var(--c-warning-light);
56
- color: var(--c-warning-dark);
57
-
58
- & svg {
59
- fill: var(--c-warning);
60
- }
61
- }
62
- }
63
-
64
- .error {
65
- border: 1px solid var(--c-error);
66
-
67
- & > .title_bar {
68
- background-color: var(--c-error-light);
69
- color: var(--c-error-dark);
70
-
71
- & svg {
72
- fill: var(--c-error);
73
- }
74
- }
75
- }
76
-
77
- .message {
78
- padding: 1rem 3rem;
79
- background-color: white;
80
-
81
- & a {
82
- color: inherit;
83
- text-decoration: underline;
84
- }
85
-
86
- &:empty {
87
- padding: 0;
88
- }
89
- }
90
-
91
- .icon {
92
- width: 1.5rem;
93
- margin-right: 0.5rem;
94
- }
95
-
96
- .close {
97
- width: 2rem;
98
- padding: 0.125rem;
99
-
100
- &:hover {
101
- background-color: rgba(100, 100, 100, 0.1);
102
- }
103
- }
@@ -1,3 +0,0 @@
1
- // alert components
2
-
3
- export * from './AlertItem'