@terraware/web-components 4.2.13 → 4.2.14-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (302) hide show
  1. package/components/AntSwitch/index.js +8 -14
  2. package/components/Autocomplete/Autocomplete.js +67 -70
  3. package/components/Badge/index.js +16 -20
  4. package/components/BusySpinner/index.js +30 -35
  5. package/components/Button/Button.js +23 -27
  6. package/components/Button/button.test.js +8 -10
  7. package/components/Checkbox.js +10 -19
  8. package/components/Confirm/index.js +44 -51
  9. package/components/DatePicker/DatePicker.js +116 -117
  10. package/components/DialogBox/DialogBox.js +76 -66
  11. package/components/Divisor.js +15 -20
  12. package/components/Dropdown.js +54 -61
  13. package/components/EditableTable/index.js +129 -135
  14. package/components/ErrorBox/ErrorBox.js +37 -36
  15. package/components/FileChooser/index.js +73 -77
  16. package/components/FormBottomBar/index.js +63 -69
  17. package/components/Icon/Icon.js +14 -21
  18. package/components/Icon/icons/index.js +251 -257
  19. package/components/IconTooltip/index.js +29 -34
  20. package/components/Map/MapBox.js +199 -220
  21. package/components/Map/MapContainer.js +14 -18
  22. package/components/Map/MapDateSliderControl.js +44 -46
  23. package/components/Map/MapDrawer.js +32 -33
  24. package/components/Map/MapLegend.js +96 -95
  25. package/components/Map/MapViewStyleControl.js +38 -48
  26. package/components/Map/ReactMapboxWrapper.js +2 -9
  27. package/components/Map/index.js +47 -55
  28. package/components/Map/types.js +2 -8
  29. package/components/Map/useMaintainLayerOrder.js +4 -11
  30. package/components/Markdown/index.js +14 -21
  31. package/components/Message/Message.js +59 -51
  32. package/components/MultiSelect/MultiSelect.test.js +22 -24
  33. package/components/MultiSelect/index.js +73 -69
  34. package/components/Navbar/NavFooter.js +8 -13
  35. package/components/Navbar/NavItem.js +43 -37
  36. package/components/Navbar/NavSection.js +13 -17
  37. package/components/Navbar/Navbar.js +35 -38
  38. package/components/Navbar/SubNavbar.js +8 -13
  39. package/components/Note.js +14 -19
  40. package/components/OverlayModal/OverlayModal.js +36 -37
  41. package/components/PageForm/index.js +30 -35
  42. package/components/PhotoChooser/index.js +93 -98
  43. package/components/Pill/index.js +29 -31
  44. package/components/PillList/index.js +16 -22
  45. package/components/PlacementWrapper/index.js +20 -25
  46. package/components/PopoverMenu/Popover.js +33 -37
  47. package/components/PopoverMenu/index.js +41 -46
  48. package/components/PopoverMultiSelect/index.js +18 -21
  49. package/components/ProgressCircle/ProgressCircle.js +23 -26
  50. package/components/RadioButton.js +7 -14
  51. package/components/Select/Select.js +8 -13
  52. package/components/Select/SelectT.js +110 -108
  53. package/components/Separator/index.js +8 -14
  54. package/components/Size.js +1 -5
  55. package/components/Slider/index.js +7 -13
  56. package/components/SummaryBox.js +36 -39
  57. package/components/Tabs/index.js +75 -77
  58. package/components/TextTruncated/index.js +64 -65
  59. package/components/Textfield/Textfield.js +100 -95
  60. package/components/Textfield/TruncatedTextArea.js +44 -46
  61. package/components/TimelineSlider/TimelineMarker.js +24 -28
  62. package/components/TimelineSlider/TimelineRail.js +5 -11
  63. package/components/TimelineSlider/index.js +47 -51
  64. package/components/Tooltip/Tooltip.js +21 -26
  65. package/components/ViewPhotosDialog/index.js +58 -62
  66. package/components/VirtualWalkthrough/Annotation.d.ts +41 -0
  67. package/components/VirtualWalkthrough/Annotation.d.ts.map +1 -0
  68. package/components/VirtualWalkthrough/Annotation.js +197 -0
  69. package/components/VirtualWalkthrough/AnnotationEditPane.d.ts +20 -0
  70. package/components/VirtualWalkthrough/AnnotationEditPane.d.ts.map +1 -0
  71. package/components/VirtualWalkthrough/AnnotationEditPane.js +136 -0
  72. package/components/VirtualWalkthrough/AnnotationPanel.d.ts +13 -0
  73. package/components/VirtualWalkthrough/AnnotationPanel.d.ts.map +1 -0
  74. package/components/VirtualWalkthrough/AnnotationPanel.js +196 -0
  75. package/components/VirtualWalkthrough/Application.d.ts +9 -0
  76. package/components/VirtualWalkthrough/Application.d.ts.map +1 -0
  77. package/components/VirtualWalkthrough/Application.js +32 -0
  78. package/components/VirtualWalkthrough/AutoRotator.d.ts +109 -0
  79. package/components/VirtualWalkthrough/AutoRotator.d.ts.map +1 -0
  80. package/components/VirtualWalkthrough/AutoRotator.js +217 -0
  81. package/components/VirtualWalkthrough/BlockingSpinner.d.ts +3 -0
  82. package/components/VirtualWalkthrough/BlockingSpinner.d.ts.map +1 -0
  83. package/components/VirtualWalkthrough/BlockingSpinner.js +27 -0
  84. package/components/VirtualWalkthrough/BoundaryRing.d.ts +9 -0
  85. package/components/VirtualWalkthrough/BoundaryRing.d.ts.map +1 -0
  86. package/components/VirtualWalkthrough/BoundaryRing.js +33 -0
  87. package/components/VirtualWalkthrough/CameraInfo.d.ts +16 -0
  88. package/components/VirtualWalkthrough/CameraInfo.d.ts.map +1 -0
  89. package/components/VirtualWalkthrough/CameraInfo.js +88 -0
  90. package/components/VirtualWalkthrough/ControlsInfoPane.d.ts +37 -0
  91. package/components/VirtualWalkthrough/ControlsInfoPane.d.ts.map +1 -0
  92. package/components/VirtualWalkthrough/ControlsInfoPane.js +196 -0
  93. package/components/VirtualWalkthrough/GradientSky.d.ts +9 -0
  94. package/components/VirtualWalkthrough/GradientSky.d.ts.map +1 -0
  95. package/components/VirtualWalkthrough/GradientSky.js +73 -0
  96. package/components/VirtualWalkthrough/SplatControls.d.ts +50 -0
  97. package/components/VirtualWalkthrough/SplatControls.d.ts.map +1 -0
  98. package/components/VirtualWalkthrough/SplatControls.js +252 -0
  99. package/components/VirtualWalkthrough/SplatCrop.d.ts +8 -0
  100. package/components/VirtualWalkthrough/SplatCrop.d.ts.map +1 -0
  101. package/components/VirtualWalkthrough/SplatCrop.js +18 -0
  102. package/components/VirtualWalkthrough/SplatFadeCrop.d.ts +8 -0
  103. package/components/VirtualWalkthrough/SplatFadeCrop.d.ts.map +1 -0
  104. package/components/VirtualWalkthrough/SplatFadeCrop.js +18 -0
  105. package/components/VirtualWalkthrough/SplatModel.d.ts +15 -0
  106. package/components/VirtualWalkthrough/SplatModel.d.ts.map +1 -0
  107. package/components/VirtualWalkthrough/SplatModel.js +60 -0
  108. package/components/VirtualWalkthrough/SplatRevealRain.d.ts +18 -0
  109. package/components/VirtualWalkthrough/SplatRevealRain.d.ts.map +1 -0
  110. package/components/VirtualWalkthrough/SplatRevealRain.js +38 -0
  111. package/components/VirtualWalkthrough/TfAnnotationManager.d.ts +110 -0
  112. package/components/VirtualWalkthrough/TfAnnotationManager.d.ts.map +1 -0
  113. package/components/VirtualWalkthrough/TfAnnotationManager.js +368 -0
  114. package/components/VirtualWalkthrough/TfXrNavigation.d.ts +15 -0
  115. package/components/VirtualWalkthrough/TfXrNavigation.d.ts.map +1 -0
  116. package/components/VirtualWalkthrough/TfXrNavigation.js +24 -0
  117. package/components/VirtualWalkthrough/VirtualWalkthroughViewer.d.ts +27 -0
  118. package/components/VirtualWalkthrough/VirtualWalkthroughViewer.d.ts.map +1 -0
  119. package/components/VirtualWalkthrough/VirtualWalkthroughViewer.js +282 -0
  120. package/components/VirtualWalkthrough/annotation-styles.css +5 -0
  121. package/components/VirtualWalkthrough/application-styles.css +4 -0
  122. package/components/VirtualWalkthrough/boundary-ring.d.ts +47 -0
  123. package/components/VirtualWalkthrough/boundary-ring.d.ts.map +1 -0
  124. package/components/VirtualWalkthrough/boundary-ring.js +125 -0
  125. package/components/VirtualWalkthrough/boundary-ring.test.js +109 -0
  126. package/components/VirtualWalkthrough/groundPlane.d.ts +14 -0
  127. package/components/VirtualWalkthrough/groundPlane.d.ts.map +1 -0
  128. package/components/VirtualWalkthrough/groundPlane.js +47 -0
  129. package/components/VirtualWalkthrough/groundPlane.test.js +45 -0
  130. package/components/VirtualWalkthrough/gsplat-fade-crop-effect.d.ts +19 -0
  131. package/components/VirtualWalkthrough/gsplat-fade-crop-effect.d.ts.map +1 -0
  132. package/components/VirtualWalkthrough/gsplat-fade-crop-effect.js +119 -0
  133. package/components/VirtualWalkthrough/walkthrough-camera.d.ts +77 -0
  134. package/components/VirtualWalkthrough/walkthrough-camera.d.ts.map +1 -0
  135. package/components/VirtualWalkthrough/walkthrough-camera.js +320 -0
  136. package/components/svg/BlobbyGrayIconImage.js +36 -41
  137. package/components/svg/BlobbyGrayIconImport.js +36 -41
  138. package/components/svg/BlobbyGrayIconUploadToTheCloud.js +36 -41
  139. package/components/svg/BlobbyIconCloudChecked.js +161 -158
  140. package/components/svg/BlobbyIconExportOrUploadPhoto.js +161 -158
  141. package/components/svg/BlobbyIconFolder.js +161 -158
  142. package/components/svg/BlobbyIconGraphReport.js +161 -158
  143. package/components/svg/BlobbyIconHappy.js +161 -158
  144. package/components/svg/BlobbyIconHeartMonitor.js +161 -158
  145. package/components/svg/BlobbyIconLeaf.js +161 -158
  146. package/components/svg/BlobbyIconLibrary.js +161 -158
  147. package/components/svg/BlobbyIconNursery.js +163 -160
  148. package/components/svg/BlobbyIconOrganization.js +161 -158
  149. package/components/svg/BlobbyIconParchment.js +161 -158
  150. package/components/svg/BlobbyIconPeople.js +161 -158
  151. package/components/svg/BlobbyIconSeedBank.js +161 -158
  152. package/components/svg/BlobbyIconSeedling.js +161 -158
  153. package/components/svg/BlobbyIconSeeds.js +161 -158
  154. package/components/svg/BlobbyIconSite.js +164 -161
  155. package/components/svg/BlobbyIconSparkles.js +161 -158
  156. package/components/svg/BlobbyIconWrench.js +161 -158
  157. package/components/svg/Bug.js +18 -27
  158. package/components/svg/Calendar.js +18 -27
  159. package/components/svg/CaretDown.js +18 -27
  160. package/components/svg/CaretLeft.js +18 -27
  161. package/components/svg/CaretRight.js +18 -27
  162. package/components/svg/CaretUp.js +18 -27
  163. package/components/svg/ChevronDown.js +18 -27
  164. package/components/svg/ChevronUp.js +18 -27
  165. package/components/svg/Close.js +18 -27
  166. package/components/svg/Critical.js +18 -27
  167. package/components/svg/Edit.js +161 -158
  168. package/components/svg/Error.js +18 -27
  169. package/components/svg/Filter.js +18 -27
  170. package/components/svg/Folder.js +18 -27
  171. package/components/svg/Help.js +18 -27
  172. package/components/svg/Home.js +18 -27
  173. package/components/svg/IconAdd.js +18 -27
  174. package/components/svg/IconArrowRight.js +19 -28
  175. package/components/svg/IconBusinessNetwork.js +18 -27
  176. package/components/svg/IconCalendar.js +18 -27
  177. package/components/svg/IconCancel.js +18 -27
  178. package/components/svg/IconChargingBattery.js +18 -27
  179. package/components/svg/IconChecklist.js +19 -28
  180. package/components/svg/IconCheckmark.js +18 -27
  181. package/components/svg/IconCoinInHand.js +18 -27
  182. package/components/svg/IconColumns.js +18 -27
  183. package/components/svg/IconComment.js +18 -27
  184. package/components/svg/IconDashboard.js +18 -27
  185. package/components/svg/IconDataMigration.js +18 -27
  186. package/components/svg/IconDocument.js +19 -28
  187. package/components/svg/IconDownloadFromTheCloud.js +19 -28
  188. package/components/svg/IconEdit.js +19 -28
  189. package/components/svg/IconExpand.js +19 -28
  190. package/components/svg/IconExport.js +18 -27
  191. package/components/svg/IconExternalLink.js +18 -27
  192. package/components/svg/IconEye.js +18 -27
  193. package/components/svg/IconEyeOff.js +18 -27
  194. package/components/svg/IconFile.js +18 -27
  195. package/components/svg/IconFolder.js +18 -27
  196. package/components/svg/IconFullScreen.js +18 -27
  197. package/components/svg/IconFutures.js +18 -27
  198. package/components/svg/IconGraphReport.js +18 -27
  199. package/components/svg/IconHeartMonitor.js +18 -27
  200. package/components/svg/IconHelp.js +19 -28
  201. package/components/svg/IconHistory.js +18 -27
  202. package/components/svg/IconImport.js +18 -27
  203. package/components/svg/IconIndex.js +18 -27
  204. package/components/svg/IconLayers.js +18 -27
  205. package/components/svg/IconLibrary.js +18 -27
  206. package/components/svg/IconList.js +18 -27
  207. package/components/svg/IconLivePlant.js +18 -27
  208. package/components/svg/IconLocations.js +18 -27
  209. package/components/svg/IconMail.js +18 -27
  210. package/components/svg/IconManager.js +18 -27
  211. package/components/svg/IconMarker.js +18 -27
  212. package/components/svg/IconMenu.js +18 -27
  213. package/components/svg/IconMenuHorizontal.js +18 -27
  214. package/components/svg/IconModule.js +18 -27
  215. package/components/svg/IconMyLocation.js +18 -27
  216. package/components/svg/IconNote.js +19 -28
  217. package/components/svg/IconNursery.js +18 -27
  218. package/components/svg/IconOrg.js +18 -27
  219. package/components/svg/IconParchment.js +18 -27
  220. package/components/svg/IconPhoto.js +18 -27
  221. package/components/svg/IconPlantsFilled.js +18 -27
  222. package/components/svg/IconRedo.js +18 -27
  223. package/components/svg/IconRestorationSite.js +18 -27
  224. package/components/svg/IconSeedBank.js +18 -27
  225. package/components/svg/IconSeedling.js +18 -27
  226. package/components/svg/IconSettings.js +18 -27
  227. package/components/svg/IconSlice.js +18 -27
  228. package/components/svg/IconSubmit.js +18 -27
  229. package/components/svg/IconSubtract.js +19 -28
  230. package/components/svg/IconSynced.js +18 -27
  231. package/components/svg/IconTrashCan.js +18 -27
  232. package/components/svg/IconTreasureMap.js +18 -27
  233. package/components/svg/IconUnavailable.js +18 -27
  234. package/components/svg/IconUndo.js +18 -27
  235. package/components/svg/IconVariable.js +18 -27
  236. package/components/svg/IconVideo.js +19 -28
  237. package/components/svg/IconWifi.js +18 -27
  238. package/components/svg/Info.js +18 -27
  239. package/components/svg/Key.js +18 -27
  240. package/components/svg/Leaf.js +18 -27
  241. package/components/svg/Lock.js +18 -27
  242. package/components/svg/Logo.js +40 -45
  243. package/components/svg/MenuVertical.js +18 -27
  244. package/components/svg/Notification.js +18 -27
  245. package/components/svg/Person.js +18 -27
  246. package/components/svg/Plus.js +18 -27
  247. package/components/svg/RestorationSite.js +18 -27
  248. package/components/svg/Search.js +18 -27
  249. package/components/svg/Seeds.js +18 -27
  250. package/components/svg/Site.js +18 -27
  251. package/components/svg/Sparkles.js +18 -27
  252. package/components/svg/Species.js +18 -27
  253. package/components/svg/Species2.js +161 -158
  254. package/components/svg/Spinner.js +27 -36
  255. package/components/svg/Star.js +18 -27
  256. package/components/svg/Success.js +18 -27
  257. package/components/svg/SuccessFilled.js +18 -27
  258. package/components/svg/TerrawareLogoDesktop.js +44 -49
  259. package/components/svg/TerrawareLogoMobile.js +20 -29
  260. package/components/svg/Touchscreen.js +18 -27
  261. package/components/svg/UploadCloud.js +161 -158
  262. package/components/svg/Warning.js +18 -27
  263. package/components/svg/WelcomeClipboard.js +130 -135
  264. package/components/svg/index.js +127 -895
  265. package/components/table/EnhancedTableToolbar.js +45 -47
  266. package/components/table/EnhancedTableToolbarV2.js +18 -26
  267. package/components/table/TableCellRenderer.js +137 -143
  268. package/components/table/TableHeader.js +45 -47
  269. package/components/table/TableHeaderItem.js +65 -64
  270. package/components/table/density.js +3 -11
  271. package/components/table/index.js +225 -218
  272. package/components/table/sort.js +8 -18
  273. package/components/table/sort.test.js +6 -8
  274. package/components/table/types.js +1 -5
  275. package/components/types/index.js +1 -5
  276. package/hooks/useBoolean.d.ts +4 -0
  277. package/hooks/useBoolean.d.ts.map +1 -0
  278. package/hooks/useBoolean.js +12 -0
  279. package/hooks/useCameraPosition.d.ts +8 -0
  280. package/hooks/useCameraPosition.d.ts.map +1 -0
  281. package/hooks/useCameraPosition.js +33 -0
  282. package/hooks/useDevicePerformance.d.ts +9 -0
  283. package/hooks/useDevicePerformance.d.ts.map +1 -0
  284. package/hooks/useDevicePerformance.js +16 -0
  285. package/index.js +57 -398
  286. package/license-report.html +1 -1
  287. package/package.json +10 -3
  288. package/style-dictionary-dist/TerrawareTheme.js +1 -7
  289. package/theme.js +7 -14
  290. package/utils/color.d.ts +2 -0
  291. package/utils/color.d.ts.map +1 -0
  292. package/utils/color.js +14 -0
  293. package/utils/date.js +13 -24
  294. package/utils/date.test.js +40 -43
  295. package/utils/index.js +5 -53
  296. package/utils/preventDefaultEvent.js +1 -7
  297. package/utils/text.js +2 -9
  298. package/utils/text.test.js +9 -11
  299. package/utils/useDeviceInfo.js +10 -16
  300. package/virtualWalkthrough.d.ts +34 -0
  301. package/virtualWalkthrough.d.ts.map +1 -0
  302. package/virtualWalkthrough.js +30 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@terraware/web-components",
3
- "version": "4.2.13",
3
+ "version": "4.2.14-rc.1",
4
4
  "author": "Terraformation Inc.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -12,7 +12,7 @@
12
12
  },
13
13
  "homepage": "https://github.com/terraware/web-components#readme",
14
14
  "private": false,
15
- "main": "dist/index.js",
15
+ "main": "./index.js",
16
16
  "dependencies": {
17
17
  "@dnd-kit/core": "^6.0.7",
18
18
  "@dnd-kit/sortable": "^10.0.0",
@@ -22,11 +22,13 @@
22
22
  "@mui/lab": "^6.0.1-beta.36",
23
23
  "@mui/material": "^6.0.0",
24
24
  "@mui/x-date-pickers": "^7.22.0",
25
+ "@playcanvas/react": "0.11.3",
25
26
  "classnames": "^2.3.2",
26
27
  "geojson": "^0.5.0",
27
28
  "luxon": "^3.3.0",
28
29
  "marked": "^16.2.1",
29
30
  "material-react-table": "^3.2.1",
31
+ "playcanvas": "2.15.1",
30
32
  "prettier": "^3.8.1",
31
33
  "react-intersection-observer": "^9.5.2",
32
34
  "react-multi-carousel": "^2.8.2",
@@ -36,10 +38,15 @@
36
38
  "web-vitals": "^3.5.2"
37
39
  },
38
40
  "peerDependencies": {
41
+ "@playcanvas/react": "0.11.3",
39
42
  "mapbox-gl": "^3.13.0",
43
+ "playcanvas": "2.15.1",
40
44
  "react": "^19.0.0",
41
45
  "react-dom": "^19.0.0",
42
46
  "react-map-gl": "^8.0.4"
43
47
  },
44
- "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
48
+ "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
49
+ "type": "module",
50
+ "module": "./index.js",
51
+ "types": "./index.d.ts"
45
52
  }
@@ -1,9 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
1
  const TerrawareTheme = {
8
2
  'palette': {
9
3
  'TwClrBaseBlack': '#000000',
@@ -190,4 +184,4 @@ const TerrawareTheme = {
190
184
  'TwClrTxtAccentAux': '#7473BA'
191
185
  }
192
186
  };
193
- var _default = exports.default = TerrawareTheme;
187
+ export default TerrawareTheme;
package/theme.js CHANGED
@@ -1,13 +1,5 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
9
- var _styles = require("@mui/material/styles");
10
- var _TerrawareTheme = _interopRequireDefault(require("./style-dictionary-dist/TerrawareTheme"));
1
+ import { createTheme } from '@mui/material/styles';
2
+ import TerrawareTheme from './style-dictionary-dist/TerrawareTheme';
11
3
  const defaultTheme = {
12
4
  breakpoints: {
13
5
  values: {
@@ -40,7 +32,7 @@ const defaultTheme = {
40
32
  }
41
33
  }
42
34
  },
43
- palette: (0, _objectSpread2.default)({
35
+ palette: {
44
36
  primary: {
45
37
  main: '#0067C8'
46
38
  },
@@ -80,7 +72,8 @@ const defaultTheme = {
80
72
  gray: {
81
73
  200: '#CAD2D3',
82
74
  800: '#3A4445'
83
- }
84
- }, _TerrawareTheme.default.palette)
75
+ },
76
+ ...TerrawareTheme.palette
77
+ }
85
78
  };
86
- var _default = exports.default = (0, _styles.createTheme)(defaultTheme);
79
+ export default createTheme(defaultTheme);
@@ -0,0 +1,2 @@
1
+ export declare const getRgbaFromHex: (hex: string, opacity: number) => string;
2
+ //# sourceMappingURL=color.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../src/utils/color.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,EAAE,SAAS,MAAM,WAK1D,CAAC"}
package/utils/color.js ADDED
@@ -0,0 +1,14 @@
1
+ import hexRgb from 'hex-rgb';
2
+ export const getRgbaFromHex = (hex, opacity) => {
3
+ const rgba = hexRgb(hex, {
4
+ alpha: opacity,
5
+ format: 'object'
6
+ });
7
+ const {
8
+ red,
9
+ green,
10
+ blue,
11
+ alpha
12
+ } = rgba;
13
+ return `rgba(${red}, ${green}, ${blue}, ${alpha})`;
14
+ };
package/utils/date.js CHANGED
@@ -1,12 +1,6 @@
1
- "use strict";
1
+ import _ from 'lodash';
2
+ import { DateTime } from 'luxon';
2
3
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.tz = exports.isInTheFuture = exports.getTodaysDateFormatted = exports.getShortDate = exports.getDate = exports.default = void 0;
8
- var _lodash = _interopRequireDefault(require("lodash"));
9
- var _luxon = require("luxon");
10
4
  /**
11
5
  * Accepted date types for input are:
12
6
  * - string for any date ISO string representation
@@ -18,15 +12,14 @@ var _luxon = require("luxon");
18
12
  /**
19
13
  * Helper util that returns default time zone as a fallback.
20
14
  */
21
- const tz = timeZoneId => timeZoneId || 'Etc/UTC';
15
+ export const tz = timeZoneId => timeZoneId || 'Etc/UTC';
22
16
 
23
17
  /**
24
18
  * Parse a date ISO string with zone implied.
25
19
  * eg. '2023-01-10 in 'America/Los_Angeles'
26
20
  */
27
- exports.tz = tz;
28
21
  const getDateFromISOString = (date, timeZoneId) => {
29
- return _luxon.DateTime.fromISO(date, {
22
+ return DateTime.fromISO(date, {
30
23
  zone: tz(timeZoneId)
31
24
  });
32
25
  };
@@ -36,7 +29,7 @@ const getDateFromISOString = (date, timeZoneId) => {
36
29
  */
37
30
  const getDateFromMillis = (date, timeZoneId) => {
38
31
  const millis = new Date(date).getTime();
39
- return _luxon.DateTime.fromMillis(millis, {
32
+ return DateTime.fromMillis(millis, {
40
33
  zone: tz(timeZoneId)
41
34
  });
42
35
  };
@@ -54,7 +47,7 @@ const getDisplayValue = date => {
54
47
  /**
55
48
  * Returns <Month> <Year> (eg. July 2023).
56
49
  */
57
- const getShortDate = date => {
50
+ export const getShortDate = date => {
58
51
  if (date.isValid) {
59
52
  return date.toFormat('LLLL yyyy');
60
53
  }
@@ -66,8 +59,7 @@ const getShortDate = date => {
66
59
  * any DateType value passed in (ISO string or epoch milliseconds or DateTime object).
67
60
  * Note: the DateTime object input support is mostly for ease of use and will essentially be a pass-through.
68
61
  */
69
- exports.getShortDate = getShortDate;
70
- const getDate = (date, timeZoneId) => {
62
+ export const getDate = (date, timeZoneId) => {
71
63
  if (typeof date === 'string') {
72
64
  const fromString = getDateFromISOString(date, timeZoneId);
73
65
  if (fromString.isValid) {
@@ -80,8 +72,8 @@ const getDate = (date, timeZoneId) => {
80
72
  return fromMillis;
81
73
  }
82
74
  }
83
- if (_lodash.default.isDate(date) || typeof date === 'string' || typeof date === 'number') {
84
- return _luxon.DateTime.fromJSDate(new Date(date), {
75
+ if (_.isDate(date) || typeof date === 'string' || typeof date === 'number') {
76
+ return DateTime.fromJSDate(new Date(date), {
85
77
  zone: tz(timeZoneId)
86
78
  });
87
79
  }
@@ -92,7 +84,6 @@ const getDate = (date, timeZoneId) => {
92
84
  * Default export function that provides a display value for a date
93
85
  * with optional implied time zone.
94
86
  */
95
- exports.getDate = getDate;
96
87
  const getDateDisplayValue = (date, timeZoneId) => {
97
88
  if (typeof date === 'string' && date.match(/^\d\d\d\d-\d\d-\d\d$/)) {
98
89
  // if already in display format, return as-is, do not apply time zone
@@ -105,20 +96,18 @@ const getDateDisplayValue = (date, timeZoneId) => {
105
96
  /**
106
97
  * Exported function that returns todays date in a specific (optional) time zone.
107
98
  */
108
- const getTodaysDateFormatted = timeZoneId => {
109
- return getDisplayValue(_luxon.DateTime.now().setZone(tz(timeZoneId)));
99
+ export const getTodaysDateFormatted = timeZoneId => {
100
+ return getDisplayValue(DateTime.now().setZone(tz(timeZoneId)));
110
101
  };
111
102
 
112
103
  /**
113
104
  * Checks if a date is in the future, time zone for date is optional.
114
105
  */
115
- exports.getTodaysDateFormatted = getTodaysDateFormatted;
116
- const isInTheFuture = (date, timeZoneId) => {
106
+ export const isInTheFuture = (date, timeZoneId) => {
117
107
  const d = getDate(date, timeZoneId);
118
108
  if (d.isValid) {
119
109
  return d.toMillis() > Date.now();
120
110
  }
121
111
  return false;
122
112
  };
123
- exports.isInTheFuture = isInTheFuture;
124
- var _default = exports.default = getDateDisplayValue;
113
+ export default getDateDisplayValue;
@@ -1,87 +1,84 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
- var _luxon = require("luxon");
5
- var _date = _interopRequireWildcard(require("./date"));
1
+ import { DateTime } from 'luxon';
2
+ import getDateDisplayValue, { getTodaysDateFormatted, isInTheFuture } from './date';
6
3
  test('isInTheFuture should handle date ISO string and specified time zones', () => {
7
- expect((0, _date.isInTheFuture)('2023-01-10', 'Asia/Bangkok')).toBe(false);
8
- expect((0, _date.isInTheFuture)('2023-01-10', 'America/Los_Angeles')).toBe(false);
9
- expect((0, _date.isInTheFuture)('3023-01-10', 'America/Los_Angeles')).toBe(true);
4
+ expect(isInTheFuture('2023-01-10', 'Asia/Bangkok')).toBe(false);
5
+ expect(isInTheFuture('2023-01-10', 'America/Los_Angeles')).toBe(false);
6
+ expect(isInTheFuture('3023-01-10', 'America/Los_Angeles')).toBe(true);
10
7
  });
11
8
  test('isInTheFuture should handle date ISO string and default time zone', () => {
12
- expect((0, _date.isInTheFuture)('2023-01-10')).toBe(false);
13
- expect((0, _date.isInTheFuture)('3023-01-10')).toBe(true);
9
+ expect(isInTheFuture('2023-01-10')).toBe(false);
10
+ expect(isInTheFuture('3023-01-10')).toBe(true);
14
11
  });
15
12
  test('isInTheFuture should handle millis and specified time zones', () => {
16
- expect((0, _date.isInTheFuture)(Date.now(), 'Asia/Bangkok')).toBe(false);
17
- expect((0, _date.isInTheFuture)(new Date('3023-01-10').getTime(), 'Asia/Bangkok')).toBe(true);
13
+ expect(isInTheFuture(Date.now(), 'Asia/Bangkok')).toBe(false);
14
+ expect(isInTheFuture(new Date('3023-01-10').getTime(), 'Asia/Bangkok')).toBe(true);
18
15
  });
19
16
  test('isInTheFuture should handle millis and default time zone', () => {
20
- expect((0, _date.isInTheFuture)(Date.now())).toBe(false);
21
- expect((0, _date.isInTheFuture)(new Date('3023-01-10').getTime())).toBe(true);
17
+ expect(isInTheFuture(Date.now())).toBe(false);
18
+ expect(isInTheFuture(new Date('3023-01-10').getTime())).toBe(true);
22
19
  });
23
20
  test('isInTheFuture should handle JS Date object and specified time zones', () => {
24
- expect((0, _date.isInTheFuture)(new Date(), 'Asia/Bangkok')).toBe(false);
25
- expect((0, _date.isInTheFuture)(new Date('3023-01-10'), 'Asia/Bangkok')).toBe(true);
21
+ expect(isInTheFuture(new Date(), 'Asia/Bangkok')).toBe(false);
22
+ expect(isInTheFuture(new Date('3023-01-10'), 'Asia/Bangkok')).toBe(true);
26
23
  });
27
24
  test('isInTheFuture should handle JS Date object and default time zone', () => {
28
- expect((0, _date.isInTheFuture)(new Date())).toBe(false);
29
- expect((0, _date.isInTheFuture)(new Date('3023-01-10'))).toBe(true);
25
+ expect(isInTheFuture(new Date())).toBe(false);
26
+ expect(isInTheFuture(new Date('3023-01-10'))).toBe(true);
30
27
  });
31
28
  test('isInTheFuture should handle DateTime object and specified time zones', () => {
32
- expect((0, _date.isInTheFuture)(_luxon.DateTime.now(), 'Asia/Bangkok')).toBe(false);
33
- expect((0, _date.isInTheFuture)(_luxon.DateTime.fromISO('3023-01-10'), 'Asia/Bangkok')).toBe(true);
29
+ expect(isInTheFuture(DateTime.now(), 'Asia/Bangkok')).toBe(false);
30
+ expect(isInTheFuture(DateTime.fromISO('3023-01-10'), 'Asia/Bangkok')).toBe(true);
34
31
  // check that a DateTime with preset zone is a no-op
35
- expect((0, _date.isInTheFuture)(_luxon.DateTime.now().setZone('Asia/Bangkok'), 'Asia/Bangkok')).toBe(false);
36
- expect((0, _date.isInTheFuture)(_luxon.DateTime.fromISO('3023-01-10').setZone('Asia/Bangkok'), 'Asia/Bangkok')).toBe(true);
32
+ expect(isInTheFuture(DateTime.now().setZone('Asia/Bangkok'), 'Asia/Bangkok')).toBe(false);
33
+ expect(isInTheFuture(DateTime.fromISO('3023-01-10').setZone('Asia/Bangkok'), 'Asia/Bangkok')).toBe(true);
37
34
  });
38
35
  test('isInTheFuture should handle JS Date object and default time zone', () => {
39
- expect((0, _date.isInTheFuture)(_luxon.DateTime.now())).toBe(false);
40
- expect((0, _date.isInTheFuture)(_luxon.DateTime.fromISO('3023-01-10'))).toBe(true);
36
+ expect(isInTheFuture(DateTime.now())).toBe(false);
37
+ expect(isInTheFuture(DateTime.fromISO('3023-01-10'))).toBe(true);
41
38
  });
42
39
  test('should show todays date formatted for a time zone', () => {
43
- const formatted = (0, _date.getTodaysDateFormatted)('Asia/Bangkok');
40
+ const formatted = getTodaysDateFormatted('Asia/Bangkok');
44
41
  expect(!!formatted.match(/\d\d\d\d-\d\d-\d\d/)).toBe(true);
45
42
  });
46
43
  test('should show todays date formatted for default time zone', () => {
47
- const formatted = (0, _date.getTodaysDateFormatted)();
44
+ const formatted = getTodaysDateFormatted();
48
45
  expect(!!formatted.match(/\d\d\d\d-\d\d-\d\d/)).toBe(true);
49
46
  });
50
47
  test('should return valid date display value for ISO date string with time zones', () => {
51
- expect((0, _date.default)('2021-08-05T19:39:16Z', 'America/Los_Angeles')).toBe('2021-08-05');
52
- expect((0, _date.default)('2021-08-05T19:39:16Z', 'Asia/Bangkok')).toBe('2021-08-06');
48
+ expect(getDateDisplayValue('2021-08-05T19:39:16Z', 'America/Los_Angeles')).toBe('2021-08-05');
49
+ expect(getDateDisplayValue('2021-08-05T19:39:16Z', 'Asia/Bangkok')).toBe('2021-08-06');
53
50
  });
54
51
  test('should return valid date display value for ISO date string with default time zone', () => {
55
- expect((0, _date.default)('2021-08-05T19:39:16Z')).toBe('2021-08-05');
52
+ expect(getDateDisplayValue('2021-08-05T19:39:16Z')).toBe('2021-08-05');
56
53
  });
57
54
  test('should return valid date display value for default date ISO string with time zones', () => {
58
- expect((0, _date.default)('2021-08-05', 'America/Los_Angeles')).toBe('2021-08-05');
59
- expect((0, _date.default)('2021-08-05', 'Asia/Bangkok')).toBe('2021-08-05');
55
+ expect(getDateDisplayValue('2021-08-05', 'America/Los_Angeles')).toBe('2021-08-05');
56
+ expect(getDateDisplayValue('2021-08-05', 'Asia/Bangkok')).toBe('2021-08-05');
60
57
  });
61
58
  test('should return valid date display value for default date string with default time zone', () => {
62
- expect((0, _date.default)('2021-08-05')).toBe('2021-08-05');
59
+ expect(getDateDisplayValue('2021-08-05')).toBe('2021-08-05');
63
60
  });
64
61
  test('should return valid date display value for millis with default time zone', () => {
65
- expect((0, _date.default)(new Date('2021-08-05T19:39:16Z').getTime())).toBe('2021-08-05');
62
+ expect(getDateDisplayValue(new Date('2021-08-05T19:39:16Z').getTime())).toBe('2021-08-05');
66
63
  });
67
64
  test('should return valid date display value for JS Date object with default time zone', () => {
68
- expect((0, _date.default)(new Date('2021-08-05T19:39:16Z'))).toBe('2021-08-05');
65
+ expect(getDateDisplayValue(new Date('2021-08-05T19:39:16Z'))).toBe('2021-08-05');
69
66
  });
70
67
  test('should return valid date display value for DateTime object with default time zone', () => {
71
- expect((0, _date.default)(_luxon.DateTime.fromISO('2021-08-05T19:39:16Z'))).toBe('2021-08-05');
68
+ expect(getDateDisplayValue(DateTime.fromISO('2021-08-05T19:39:16Z'))).toBe('2021-08-05');
72
69
  });
73
70
  test('should return valid date display value for millis with time zones', () => {
74
- expect((0, _date.default)(new Date('2021-08-05T19:39:16Z').getTime(), 'America/Los_Angeles')).toBe('2021-08-05');
75
- expect((0, _date.default)(new Date('2021-08-05T19:39:16Z').getTime(), 'Asia/Bangkok')).toBe('2021-08-06');
71
+ expect(getDateDisplayValue(new Date('2021-08-05T19:39:16Z').getTime(), 'America/Los_Angeles')).toBe('2021-08-05');
72
+ expect(getDateDisplayValue(new Date('2021-08-05T19:39:16Z').getTime(), 'Asia/Bangkok')).toBe('2021-08-06');
76
73
  });
77
74
  test('should return valid date display value for JS Date object with time zones', () => {
78
- expect((0, _date.default)(new Date('2021-08-05T19:39:16Z'), 'America/Los_Angeles')).toBe('2021-08-05');
79
- expect((0, _date.default)(new Date('2021-08-05T19:39:16Z'), 'Asia/Bangkok')).toBe('2021-08-06');
75
+ expect(getDateDisplayValue(new Date('2021-08-05T19:39:16Z'), 'America/Los_Angeles')).toBe('2021-08-05');
76
+ expect(getDateDisplayValue(new Date('2021-08-05T19:39:16Z'), 'Asia/Bangkok')).toBe('2021-08-06');
80
77
  });
81
78
  test('should return valid date display value for DateTime object with time zones', () => {
82
- expect((0, _date.default)(_luxon.DateTime.fromISO('2021-08-05T19:39:16Z'), 'America/Los_Angeles')).toBe('2021-08-05');
83
- expect((0, _date.default)(_luxon.DateTime.fromISO('2021-08-05T19:39:16Z'), 'Asia/Bangkok')).toBe('2021-08-06');
79
+ expect(getDateDisplayValue(DateTime.fromISO('2021-08-05T19:39:16Z'), 'America/Los_Angeles')).toBe('2021-08-05');
80
+ expect(getDateDisplayValue(DateTime.fromISO('2021-08-05T19:39:16Z'), 'Asia/Bangkok')).toBe('2021-08-06');
84
81
  // check that a DateTime with preset zone is a no-op
85
- expect((0, _date.default)(_luxon.DateTime.fromISO('2021-08-05T19:39:16Z').setZone('America/Los_Angeles'), 'America/Los_Angeles')).toBe('2021-08-05');
86
- expect((0, _date.default)(_luxon.DateTime.fromISO('2021-08-05T19:39:16Z').setZone('America/Los_Angeles'), 'Asia/Bangkok')).toBe('2021-08-06');
82
+ expect(getDateDisplayValue(DateTime.fromISO('2021-08-05T19:39:16Z').setZone('America/Los_Angeles'), 'America/Los_Angeles')).toBe('2021-08-05');
83
+ expect(getDateDisplayValue(DateTime.fromISO('2021-08-05T19:39:16Z').setZone('America/Los_Angeles'), 'Asia/Bangkok')).toBe('2021-08-06');
87
84
  });
package/utils/index.js CHANGED
@@ -1,53 +1,5 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- Object.defineProperty(exports, "getDate", {
9
- enumerable: true,
10
- get: function () {
11
- return _date.getDate;
12
- }
13
- });
14
- Object.defineProperty(exports, "getDateDisplayValue", {
15
- enumerable: true,
16
- get: function () {
17
- return _date.default;
18
- }
19
- });
20
- Object.defineProperty(exports, "getTodaysDateFormatted", {
21
- enumerable: true,
22
- get: function () {
23
- return _date.getTodaysDateFormatted;
24
- }
25
- });
26
- Object.defineProperty(exports, "isInTheFuture", {
27
- enumerable: true,
28
- get: function () {
29
- return _date.isInTheFuture;
30
- }
31
- });
32
- Object.defineProperty(exports, "isWhitespaces", {
33
- enumerable: true,
34
- get: function () {
35
- return _text.default;
36
- }
37
- });
38
- Object.defineProperty(exports, "preventDefaultEvent", {
39
- enumerable: true,
40
- get: function () {
41
- return _preventDefaultEvent.default;
42
- }
43
- });
44
- Object.defineProperty(exports, "useDeviceInfo", {
45
- enumerable: true,
46
- get: function () {
47
- return _useDeviceInfo.default;
48
- }
49
- });
50
- var _date = _interopRequireWildcard(require("./date"));
51
- var _preventDefaultEvent = _interopRequireDefault(require("./preventDefaultEvent"));
52
- var _text = _interopRequireDefault(require("./text"));
53
- var _useDeviceInfo = _interopRequireDefault(require("./useDeviceInfo"));
1
+ import getDateDisplayValue, { getDate, getTodaysDateFormatted, isInTheFuture } from './date';
2
+ import preventDefaultEvent from './preventDefaultEvent';
3
+ import isWhitespaces from './text';
4
+ import useDeviceInfo from './useDeviceInfo';
5
+ export { getDate, getDateDisplayValue, getTodaysDateFormatted, isInTheFuture, isWhitespaces, preventDefaultEvent, useDeviceInfo };
@@ -1,8 +1,2 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
1
  const preventDefault = event => event.preventDefault();
8
- var _default = exports.default = preventDefault;
2
+ export default preventDefault;
package/utils/text.js CHANGED
@@ -1,11 +1,5 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.titleCase = exports.default = void 0;
7
1
  const isWhitespaces = str => str.match(/^\s+$/);
8
- const titleCase = str => str.split(' ').map(word => {
2
+ export const titleCase = str => str.split(' ').map(word => {
9
3
  if (word !== word.toUpperCase()) {
10
4
  const lowerCaseWord = word.toLowerCase();
11
5
  return lowerCaseWord.replace(lowerCaseWord.charAt(0), lowerCaseWord.charAt(0).toUpperCase());
@@ -13,5 +7,4 @@ const titleCase = str => str.split(' ').map(word => {
13
7
  return word;
14
8
  }
15
9
  }).join(' ');
16
- exports.titleCase = titleCase;
17
- var _default = exports.default = isWhitespaces;
10
+ export default isWhitespaces;
@@ -1,23 +1,21 @@
1
- "use strict";
2
-
3
- var _text = require("./text");
1
+ import { titleCase } from './text';
4
2
  test('titleCase for a single word', () => {
5
- const lowerCaseWord = (0, _text.titleCase)('species');
3
+ const lowerCaseWord = titleCase('species');
6
4
  expect(lowerCaseWord === 'Species').toBe(true);
7
- const capitalizedWord = (0, _text.titleCase)('Species');
5
+ const capitalizedWord = titleCase('Species');
8
6
  expect(capitalizedWord === 'Species').toBe(true);
9
- const allCapsWord = (0, _text.titleCase)('SPECIES');
7
+ const allCapsWord = titleCase('SPECIES');
10
8
  expect(allCapsWord === 'SPECIES').toBe(true);
11
- const reverseCapWord = (0, _text.titleCase)('sPECIES');
9
+ const reverseCapWord = titleCase('sPECIES');
12
10
  expect(reverseCapWord === 'Species').toBe(true);
13
11
  });
14
12
  test('titleCase for multiple words', () => {
15
- const lowerCaseString = (0, _text.titleCase)('common name');
13
+ const lowerCaseString = titleCase('common name');
16
14
  expect(lowerCaseString === 'Common Name').toBe(true);
17
- const capitalizedString = (0, _text.titleCase)('Common Name');
15
+ const capitalizedString = titleCase('Common Name');
18
16
  expect(capitalizedString === 'Common Name').toBe(true);
19
- const allCapsString = (0, _text.titleCase)('common NAME');
17
+ const allCapsString = titleCase('common NAME');
20
18
  expect(allCapsString === 'Common NAME').toBe(true);
21
- const reverseCapString = (0, _text.titleCase)('cOMMON nAME');
19
+ const reverseCapString = titleCase('cOMMON nAME');
22
20
  expect(reverseCapString === 'Common Name').toBe(true);
23
21
  });
@@ -1,10 +1,5 @@
1
- "use strict";
1
+ import { useMediaQuery } from 'react-responsive';
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _reactResponsive = require("react-responsive");
8
3
  /**
9
4
  * Device widths categorized for our purposes.
10
5
  * Device widths
@@ -31,29 +26,28 @@ var _reactResponsive = require("react-responsive");
31
26
  * if there's a change in any of our interested device properties.
32
27
  */
33
28
 
34
- const useDeviceInfo = function () {
35
- let {
36
- onChange
37
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
29
+ const useDeviceInfo = ({
30
+ onChange
31
+ } = {}) => {
38
32
  const deviceChangeCallback = matches => {
39
33
  if (matches && onChange) {
40
34
  onChange();
41
35
  }
42
36
  };
43
- const isDesktop = (0, _reactResponsive.useMediaQuery)({
37
+ const isDesktop = useMediaQuery({
44
38
  minWidth: 1024
45
39
  }, undefined, deviceChangeCallback);
46
- const isTablet = (0, _reactResponsive.useMediaQuery)({
40
+ const isTablet = useMediaQuery({
47
41
  maxWidth: 1023,
48
42
  minWidth: 768
49
43
  }, undefined, deviceChangeCallback);
50
- const isMobile = (0, _reactResponsive.useMediaQuery)({
44
+ const isMobile = useMediaQuery({
51
45
  maxWidth: 767
52
46
  }, undefined, deviceChangeCallback);
53
- const isPortrait = (0, _reactResponsive.useMediaQuery)({
47
+ const isPortrait = useMediaQuery({
54
48
  orientation: 'portrait'
55
49
  }, undefined, deviceChangeCallback);
56
- const isRetina = (0, _reactResponsive.useMediaQuery)({
50
+ const isRetina = useMediaQuery({
57
51
  query: '(min-resolution: 2dppx)'
58
52
  }, undefined, deviceChangeCallback);
59
53
  const getDeviceType = () => {
@@ -82,4 +76,4 @@ const useDeviceInfo = function () {
82
76
  isLandscape: !isPortrait
83
77
  };
84
78
  };
85
- var _default = exports.default = useDeviceInfo;
79
+ export default useDeviceInfo;
@@ -0,0 +1,34 @@
1
+ import Annotation from './components/VirtualWalkthrough/Annotation';
2
+ import AnnotationEditPane from './components/VirtualWalkthrough/AnnotationEditPane';
3
+ import AnnotationPanel from './components/VirtualWalkthrough/AnnotationPanel';
4
+ import Application from './components/VirtualWalkthrough/Application';
5
+ import { AutoRotator } from './components/VirtualWalkthrough/AutoRotator';
6
+ import BlockingSpinner from './components/VirtualWalkthrough/BlockingSpinner';
7
+ import BoundaryRing from './components/VirtualWalkthrough/BoundaryRing';
8
+ import CameraInfo from './components/VirtualWalkthrough/CameraInfo';
9
+ import ControlsInfoPane from './components/VirtualWalkthrough/ControlsInfoPane';
10
+ import GradientSky from './components/VirtualWalkthrough/GradientSky';
11
+ import SplatControls from './components/VirtualWalkthrough/SplatControls';
12
+ import SplatCrop from './components/VirtualWalkthrough/SplatCrop';
13
+ import SplatFadeCrop from './components/VirtualWalkthrough/SplatFadeCrop';
14
+ import SplatModel from './components/VirtualWalkthrough/SplatModel';
15
+ import SplatRevealRain from './components/VirtualWalkthrough/SplatRevealRain';
16
+ import { TfAnnotationManager } from './components/VirtualWalkthrough/TfAnnotationManager';
17
+ import { TfXrNavigation } from './components/VirtualWalkthrough/TfXrNavigation';
18
+ import VirtualWalkthroughViewer from './components/VirtualWalkthrough/VirtualWalkthroughViewer';
19
+ import { BoundaryRingScript, boundaryRingMesh } from './components/VirtualWalkthrough/boundary-ring';
20
+ import { computeGroundPlane, yOnPlane } from './components/VirtualWalkthrough/groundPlane';
21
+ import { WalkthroughCamera } from './components/VirtualWalkthrough/walkthrough-camera';
22
+ import { useDevicePerformance } from './hooks/useDevicePerformance';
23
+ export type { AnnotationProps, AnnotationIconType } from './components/VirtualWalkthrough/Annotation';
24
+ export type { AnnotationEditPaneStrings } from './components/VirtualWalkthrough/AnnotationEditPane';
25
+ export type { CameraInfoStrings, CameraState } from './components/VirtualWalkthrough/CameraInfo';
26
+ export type { ControlsInfoPaneStrings } from './components/VirtualWalkthrough/ControlsInfoPane';
27
+ export type { SplatControlsProps, SplatControlsStrings } from './components/VirtualWalkthrough/SplatControls';
28
+ export type { BoundaryRingGeometry, BoundaryRingGeometryParams } from './components/VirtualWalkthrough/boundary-ring';
29
+ export type { GroundPlane } from './components/VirtualWalkthrough/groundPlane';
30
+ export type { BoundaryRingProps } from './components/VirtualWalkthrough/BoundaryRing';
31
+ export type { SplatModelProps } from './components/VirtualWalkthrough/SplatModel';
32
+ export type { VirtualWalkthroughViewerProps } from './components/VirtualWalkthrough/VirtualWalkthroughViewer';
33
+ export { Annotation, AnnotationEditPane, AnnotationPanel, Application, AutoRotator, BlockingSpinner, BoundaryRing, boundaryRingMesh, BoundaryRingScript, CameraInfo, computeGroundPlane, ControlsInfoPane, GradientSky, SplatControls, SplatCrop, SplatFadeCrop, SplatModel, SplatRevealRain, TfAnnotationManager, TfXrNavigation, useDevicePerformance, VirtualWalkthroughViewer, WalkthroughCamera, yOnPlane, };
34
+ //# sourceMappingURL=virtualWalkthrough.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtualWalkthrough.d.ts","sourceRoot":"","sources":["../src/virtualWalkthrough.ts"],"names":[],"mappings":"AAOA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,kBAAkB,MAAM,oDAAoD,CAAC;AACpF,OAAO,eAAe,MAAM,iDAAiD,CAAC;AAC9E,OAAO,WAAW,MAAM,6CAA6C,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAC;AAC1E,OAAO,eAAe,MAAM,iDAAiD,CAAC;AAC9E,OAAO,YAAY,MAAM,8CAA8C,CAAC;AACxE,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,gBAAgB,MAAM,kDAAkD,CAAC;AAChF,OAAO,WAAW,MAAM,6CAA6C,CAAC;AACtE,OAAO,aAAa,MAAM,+CAA+C,CAAC;AAC1E,OAAO,SAAS,MAAM,2CAA2C,CAAC;AAClE,OAAO,aAAa,MAAM,+CAA+C,CAAC;AAC1E,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,eAAe,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAChF,OAAO,wBAAwB,MAAM,0DAA0D,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACrG,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AACtG,YAAY,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AACpG,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACjG,YAAY,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAChG,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAC9G,YAAY,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,+CAA+C,CAAC;AACtH,YAAY,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAC;AAC/E,YAAY,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACtF,YAAY,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAClF,YAAY,EAAE,6BAA6B,EAAE,MAAM,0DAA0D,CAAC;AAE9G,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,WAAW,EACX,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,SAAS,EACT,aAAa,EACb,UAAU,EACV,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EACpB,wBAAwB,EACxB,iBAAiB,EACjB,QAAQ,GACT,CAAC"}
@@ -0,0 +1,30 @@
1
+ /*
2
+ * Public entry point for the PlayCanvas-based virtual walkthrough components.
3
+ *
4
+ * These are kept out of the main index so that importing the core component
5
+ * library does not pull in playcanvas. Import them from
6
+ * `@terraware/web-components/virtualWalkthrough`.
7
+ */
8
+ import Annotation from './components/VirtualWalkthrough/Annotation';
9
+ import AnnotationEditPane from './components/VirtualWalkthrough/AnnotationEditPane';
10
+ import AnnotationPanel from './components/VirtualWalkthrough/AnnotationPanel';
11
+ import Application from './components/VirtualWalkthrough/Application';
12
+ import { AutoRotator } from './components/VirtualWalkthrough/AutoRotator';
13
+ import BlockingSpinner from './components/VirtualWalkthrough/BlockingSpinner';
14
+ import BoundaryRing from './components/VirtualWalkthrough/BoundaryRing';
15
+ import CameraInfo from './components/VirtualWalkthrough/CameraInfo';
16
+ import ControlsInfoPane from './components/VirtualWalkthrough/ControlsInfoPane';
17
+ import GradientSky from './components/VirtualWalkthrough/GradientSky';
18
+ import SplatControls from './components/VirtualWalkthrough/SplatControls';
19
+ import SplatCrop from './components/VirtualWalkthrough/SplatCrop';
20
+ import SplatFadeCrop from './components/VirtualWalkthrough/SplatFadeCrop';
21
+ import SplatModel from './components/VirtualWalkthrough/SplatModel';
22
+ import SplatRevealRain from './components/VirtualWalkthrough/SplatRevealRain';
23
+ import { TfAnnotationManager } from './components/VirtualWalkthrough/TfAnnotationManager';
24
+ import { TfXrNavigation } from './components/VirtualWalkthrough/TfXrNavigation';
25
+ import VirtualWalkthroughViewer from './components/VirtualWalkthrough/VirtualWalkthroughViewer';
26
+ import { BoundaryRingScript, boundaryRingMesh } from './components/VirtualWalkthrough/boundary-ring';
27
+ import { computeGroundPlane, yOnPlane } from './components/VirtualWalkthrough/groundPlane';
28
+ import { WalkthroughCamera } from './components/VirtualWalkthrough/walkthrough-camera';
29
+ import { useDevicePerformance } from './hooks/useDevicePerformance';
30
+ export { Annotation, AnnotationEditPane, AnnotationPanel, Application, AutoRotator, BlockingSpinner, BoundaryRing, boundaryRingMesh, BoundaryRingScript, CameraInfo, computeGroundPlane, ControlsInfoPane, GradientSky, SplatControls, SplatCrop, SplatFadeCrop, SplatModel, SplatRevealRain, TfAnnotationManager, TfXrNavigation, useDevicePerformance, VirtualWalkthroughViewer, WalkthroughCamera, yOnPlane };