@longline/aqua-ui 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (410) hide show
  1. package/README.md +7 -0
  2. package/Types.d.ts +6 -0
  3. package/Types.js +5 -0
  4. package/containers/Anchor/Anchor.d.ts +63 -0
  5. package/containers/Anchor/Anchor.js +113 -0
  6. package/containers/Anchor/index.d.ts +1 -0
  7. package/containers/Anchor/index.js +1 -0
  8. package/containers/Dock/Dock.d.ts +45 -0
  9. package/containers/Dock/Dock.js +61 -0
  10. package/containers/Dock/Dockable.d.ts +60 -0
  11. package/containers/Dock/Dockable.js +98 -0
  12. package/containers/Dock/index.d.ts +2 -0
  13. package/containers/Dock/index.js +2 -0
  14. package/containers/Form/Field.d.ts +104 -0
  15. package/containers/Form/Field.js +168 -0
  16. package/containers/Form/Form.d.ts +51 -0
  17. package/containers/Form/Form.js +89 -0
  18. package/containers/Form/Validation.d.ts +212 -0
  19. package/containers/Form/Validation.js +232 -0
  20. package/containers/Form/context/FormContext.d.ts +10 -0
  21. package/containers/Form/context/FormContext.js +3 -0
  22. package/containers/Form/context/useForm.d.ts +5 -0
  23. package/containers/Form/context/useForm.js +9 -0
  24. package/containers/Form/elements/BoxWrapper.d.ts +15 -0
  25. package/containers/Form/elements/BoxWrapper.js +35 -0
  26. package/containers/Form/elements/Hint.d.ts +21 -0
  27. package/containers/Form/elements/Hint.js +15 -0
  28. package/containers/Form/elements/Label.d.ts +22 -0
  29. package/containers/Form/elements/Label.js +15 -0
  30. package/containers/Form/elements/SimpleWrapper.d.ts +15 -0
  31. package/containers/Form/elements/SimpleWrapper.js +17 -0
  32. package/containers/GlassPane/GlassPane.d.ts +36 -0
  33. package/containers/GlassPane/GlassPane.js +66 -0
  34. package/containers/GlassPane/index.d.ts +1 -0
  35. package/containers/GlassPane/index.js +1 -0
  36. package/containers/InfoBox/InfoBox.d.ts +34 -0
  37. package/containers/InfoBox/InfoBox.js +45 -0
  38. package/containers/InfoBox/elements/Content.d.ts +23 -0
  39. package/containers/InfoBox/elements/Content.js +37 -0
  40. package/containers/InfoBox/elements/Footer.d.ts +9 -0
  41. package/containers/InfoBox/elements/Footer.js +24 -0
  42. package/containers/InfoBox/elements/Header.d.ts +9 -0
  43. package/containers/InfoBox/elements/Header.js +24 -0
  44. package/containers/List/List.d.ts +45 -0
  45. package/containers/List/List.js +47 -0
  46. package/containers/List/ListCell.d.ts +13 -0
  47. package/containers/List/ListCell.js +24 -0
  48. package/containers/List/ListRow.d.ts +15 -0
  49. package/containers/List/ListRow.js +24 -0
  50. package/containers/List/index.d.ts +3 -0
  51. package/containers/List/index.js +3 -0
  52. package/containers/Tabs/Pane.d.ts +29 -0
  53. package/containers/Tabs/Pane.js +45 -0
  54. package/containers/Tabs/Tabs.d.ts +66 -0
  55. package/containers/Tabs/Tabs.js +144 -0
  56. package/controls/Chip/Chip.d.ts +35 -0
  57. package/controls/Chip/Chip.js +83 -0
  58. package/controls/Fab/Fab.d.ts +73 -0
  59. package/controls/Fab/Fab.js +94 -0
  60. package/controls/Icon/Icon.d.ts +98 -0
  61. package/controls/Icon/Icon.js +79 -0
  62. package/controls/Icon/index.d.ts +1 -0
  63. package/controls/Icon/index.js +1 -0
  64. package/controls/Key/Key.d.ts +22 -0
  65. package/controls/Key/Key.js +74 -0
  66. package/controls/Key/index.d.ts +1 -0
  67. package/controls/Key/index.js +1 -0
  68. package/controls/LinearChart/LinearChart.d.ts +31 -0
  69. package/controls/LinearChart/LinearChart.js +58 -0
  70. package/controls/ListView/Body.d.ts +8 -0
  71. package/controls/ListView/Body.js +24 -0
  72. package/controls/ListView/Column.d.ts +55 -0
  73. package/controls/ListView/Column.js +8 -0
  74. package/controls/ListView/ColumnsManager/ColumnDraggable.d.ts +11 -0
  75. package/controls/ListView/ColumnsManager/ColumnDraggable.js +83 -0
  76. package/controls/ListView/ColumnsManager/ColumnsManager.d.ts +12 -0
  77. package/controls/ListView/ColumnsManager/ColumnsManager.js +63 -0
  78. package/controls/ListView/ColumnsManager/OrderColumns.d.ts +11 -0
  79. package/controls/ListView/ColumnsManager/OrderColumns.js +62 -0
  80. package/controls/ListView/ColumnsManager/SourceColumns.d.ts +10 -0
  81. package/controls/ListView/ColumnsManager/SourceColumns.js +45 -0
  82. package/controls/ListView/Ghost.d.ts +9 -0
  83. package/controls/ListView/Ghost.js +52 -0
  84. package/controls/ListView/Header.d.ts +12 -0
  85. package/controls/ListView/Header.js +35 -0
  86. package/controls/ListView/HeaderButton.d.ts +8 -0
  87. package/controls/ListView/HeaderButton.js +8 -0
  88. package/controls/ListView/HeaderCell.d.ts +20 -0
  89. package/controls/ListView/HeaderCell.js +47 -0
  90. package/controls/ListView/IListViewProps.d.ts +105 -0
  91. package/controls/ListView/IListViewProps.js +1 -0
  92. package/controls/ListView/ListView.d.ts +20 -0
  93. package/controls/ListView/ListView.js +97 -0
  94. package/controls/ListView/NoData.d.ts +19 -0
  95. package/controls/ListView/NoData.js +30 -0
  96. package/controls/ListView/SortButton.d.ts +16 -0
  97. package/controls/ListView/SortButton.js +26 -0
  98. package/controls/ListView/Table.d.ts +18 -0
  99. package/controls/ListView/Table.js +99 -0
  100. package/controls/ListView/Total.d.ts +9 -0
  101. package/controls/ListView/Total.js +28 -0
  102. package/controls/ListView/sortItems.d.ts +6 -0
  103. package/controls/ListView/sortItems.js +35 -0
  104. package/controls/Mouse/Mouse.d.ts +38 -0
  105. package/controls/Mouse/Mouse.js +51 -0
  106. package/controls/Mouse/index.d.ts +1 -0
  107. package/controls/Mouse/index.js +1 -0
  108. package/controls/PrimaryButton/PrimaryButton.d.ts +63 -0
  109. package/controls/PrimaryButton/PrimaryButton.js +83 -0
  110. package/controls/PrimaryButton/index.d.ts +1 -0
  111. package/controls/PrimaryButton/index.js +1 -0
  112. package/controls/Progress/Progress.d.ts +35 -0
  113. package/controls/Progress/Progress.js +49 -0
  114. package/controls/SecondaryButton/SecondaryButton.d.ts +58 -0
  115. package/controls/SecondaryButton/SecondaryButton.js +73 -0
  116. package/controls/SecondaryButton/index.d.ts +1 -0
  117. package/controls/SecondaryButton/index.js +1 -0
  118. package/controls/TabBar/Tab.d.ts +21 -0
  119. package/controls/TabBar/Tab.js +25 -0
  120. package/controls/TabBar/TabBar.d.ts +34 -0
  121. package/controls/TabBar/TabBar.js +134 -0
  122. package/controls/TabBar/Underliner.d.ts +7 -0
  123. package/controls/TabBar/Underliner.js +27 -0
  124. package/controls/TabBar/index.d.ts +1 -0
  125. package/controls/TabBar/index.js +1 -0
  126. package/controls/TertiaryButton/TertiaryButton.d.ts +28 -0
  127. package/controls/TertiaryButton/TertiaryButton.js +65 -0
  128. package/controls/TertiaryButton/index.d.ts +1 -0
  129. package/controls/TertiaryButton/index.js +1 -0
  130. package/controls/View/View.d.ts +35 -0
  131. package/controls/View/View.js +58 -0
  132. package/formatters/Date/DateTime.d.ts +45 -0
  133. package/formatters/Date/DateTime.js +64 -0
  134. package/formatters/Date/elements/Custom.d.ts +18 -0
  135. package/formatters/Date/elements/Custom.js +22 -0
  136. package/formatters/Date/elements/Distance.d.ts +24 -0
  137. package/formatters/Date/elements/Distance.js +45 -0
  138. package/formatters/Date/elements/LongDate.d.ts +17 -0
  139. package/formatters/Date/elements/LongDate.js +11 -0
  140. package/formatters/Date/elements/LongDateTime.d.ts +14 -0
  141. package/formatters/Date/elements/LongDateTime.js +10 -0
  142. package/formatters/Date/elements/LongTime.d.ts +14 -0
  143. package/formatters/Date/elements/LongTime.js +10 -0
  144. package/formatters/Date/elements/ShortDate.d.ts +14 -0
  145. package/formatters/Date/elements/ShortDate.js +10 -0
  146. package/formatters/Date/elements/ShortDateTime.d.ts +14 -0
  147. package/formatters/Date/elements/ShortDateTime.js +10 -0
  148. package/formatters/Date/elements/ShortTime.d.ts +18 -0
  149. package/formatters/Date/elements/ShortTime.js +10 -0
  150. package/formatters/Date/elements/toDate.d.ts +2 -0
  151. package/formatters/Date/elements/toDate.js +13 -0
  152. package/formatters/Filesize/Filesize.d.ts +29 -0
  153. package/formatters/Filesize/Filesize.js +54 -0
  154. package/formatters/GIS/Latitude.d.ts +23 -0
  155. package/formatters/GIS/Latitude.js +13 -0
  156. package/formatters/GIS/Longitude.d.ts +23 -0
  157. package/formatters/GIS/Longitude.js +13 -0
  158. package/formatters/GIS/index.d.ts +2 -0
  159. package/formatters/GIS/index.js +2 -0
  160. package/formatters/GIS/toDMS.d.ts +2 -0
  161. package/formatters/GIS/toDMS.js +16 -0
  162. package/formatters/Highlight/Highlight.d.ts +22 -0
  163. package/formatters/Highlight/Highlight.js +32 -0
  164. package/formatters/Highlight/index.d.ts +1 -0
  165. package/formatters/Highlight/index.js +1 -0
  166. package/formatters/Human/Human.d.ts +18 -0
  167. package/formatters/Human/Human.js +34 -0
  168. package/formatters/Human/index.d.ts +1 -0
  169. package/formatters/Human/index.js +1 -0
  170. package/formatters/Number/Number.d.ts +24 -0
  171. package/formatters/Number/Number.js +36 -0
  172. package/formatters/Number/index.d.ts +1 -0
  173. package/formatters/Number/index.js +1 -0
  174. package/helper/DMS.d.ts +22 -0
  175. package/helper/DMS.js +46 -0
  176. package/helper/HslColor.d.ts +11 -0
  177. package/helper/HslColor.js +47 -0
  178. package/helper/RgbColor.d.ts +43 -0
  179. package/helper/RgbColor.js +162 -0
  180. package/helper/SizeHelper.d.ts +10 -0
  181. package/helper/SizeHelper.js +56 -0
  182. package/helper/darken.d.ts +8 -0
  183. package/helper/darken.js +18 -0
  184. package/helper/guard.d.ts +5 -0
  185. package/helper/guard.js +7 -0
  186. package/helper/lighten.d.ts +8 -0
  187. package/helper/lighten.js +11 -0
  188. package/helper/nameToHex.d.ts +6 -0
  189. package/helper/nameToHex.js +163 -0
  190. package/inputs/DateInput/Body.d.ts +34 -0
  191. package/inputs/DateInput/Body.js +50 -0
  192. package/inputs/DateInput/Calendar.d.ts +15 -0
  193. package/inputs/DateInput/Calendar.js +60 -0
  194. package/inputs/DateInput/DateInput.d.ts +73 -0
  195. package/inputs/DateInput/DateInput.js +143 -0
  196. package/inputs/DateInput/Day.d.ts +32 -0
  197. package/inputs/DateInput/Day.js +33 -0
  198. package/inputs/DateInput/InfiniteList.d.ts +26 -0
  199. package/inputs/DateInput/InfiniteList.js +87 -0
  200. package/inputs/DateInput/Nav.d.ts +11 -0
  201. package/inputs/DateInput/Nav.js +24 -0
  202. package/inputs/DateInput/Navbar.d.ts +16 -0
  203. package/inputs/DateInput/Navbar.js +33 -0
  204. package/inputs/DateInput/NumericInput.d.ts +14 -0
  205. package/inputs/DateInput/NumericInput.js +48 -0
  206. package/inputs/DateInput/Selector.d.ts +47 -0
  207. package/inputs/DateInput/Selector.js +55 -0
  208. package/inputs/DateInput/SimpleList.d.ts +19 -0
  209. package/inputs/DateInput/SimpleList.js +31 -0
  210. package/inputs/Dropdown/Body.d.ts +25 -0
  211. package/inputs/Dropdown/Body.js +14 -0
  212. package/inputs/Dropdown/Column.d.ts +21 -0
  213. package/inputs/Dropdown/Column.js +6 -0
  214. package/inputs/Dropdown/Dropdown.d.ts +136 -0
  215. package/inputs/Dropdown/Dropdown.js +446 -0
  216. package/inputs/Dropdown/Selection.d.ts +11 -0
  217. package/inputs/Dropdown/Selection.js +23 -0
  218. package/inputs/Dropdown/Selector.d.ts +29 -0
  219. package/inputs/Dropdown/Selector.js +16 -0
  220. package/inputs/Editor/Editor.d.ts +45 -0
  221. package/inputs/Editor/Editor.js +60 -0
  222. package/inputs/Editor/buttons/BoldButton.d.ts +7 -0
  223. package/inputs/Editor/buttons/BoldButton.js +7 -0
  224. package/inputs/Editor/buttons/BulletListButton.d.ts +7 -0
  225. package/inputs/Editor/buttons/BulletListButton.js +7 -0
  226. package/inputs/Editor/buttons/CodeBlockButton.d.ts +7 -0
  227. package/inputs/Editor/buttons/CodeBlockButton.js +7 -0
  228. package/inputs/Editor/buttons/CodeButton.d.ts +7 -0
  229. package/inputs/Editor/buttons/CodeButton.js +7 -0
  230. package/inputs/Editor/buttons/ItalicButton.d.ts +7 -0
  231. package/inputs/Editor/buttons/ItalicButton.js +7 -0
  232. package/inputs/Editor/buttons/OrderedListButton.d.ts +7 -0
  233. package/inputs/Editor/buttons/OrderedListButton.js +7 -0
  234. package/inputs/Editor/buttons/StrikethroughButton.d.ts +7 -0
  235. package/inputs/Editor/buttons/StrikethroughButton.js +7 -0
  236. package/inputs/Editor/menu/MenuBar.d.ts +9 -0
  237. package/inputs/Editor/menu/MenuBar.js +44 -0
  238. package/inputs/Editor/menu/MenuButton.d.ts +35 -0
  239. package/inputs/Editor/menu/MenuButton.js +34 -0
  240. package/inputs/Editor/menu/MenuSeparator.d.ts +7 -0
  241. package/inputs/Editor/menu/MenuSeparator.js +24 -0
  242. package/inputs/Input/Clear.d.ts +7 -0
  243. package/inputs/Input/Clear.js +14 -0
  244. package/inputs/Input/Input.d.ts +133 -0
  245. package/inputs/Input/Input.js +64 -0
  246. package/inputs/Input/InputWrapper.d.ts +23 -0
  247. package/inputs/Input/InputWrapper.js +57 -0
  248. package/inputs/Input/index.d.ts +1 -0
  249. package/inputs/Input/index.js +1 -0
  250. package/inputs/Selector/ISelectorProps.d.ts +29 -0
  251. package/inputs/Selector/ISelectorProps.js +1 -0
  252. package/inputs/Selector/Selector.d.ts +29 -0
  253. package/inputs/Selector/Selector.js +77 -0
  254. package/inputs/Selector/index.d.ts +1 -0
  255. package/inputs/Selector/index.js +1 -0
  256. package/inputs/Selector/widgets/Checkbox.d.ts +6 -0
  257. package/inputs/Selector/widgets/Checkbox.js +29 -0
  258. package/inputs/Selector/widgets/Toggle.d.ts +6 -0
  259. package/inputs/Selector/widgets/Toggle.js +24 -0
  260. package/inputs/Slider/Slider.d.ts +63 -0
  261. package/inputs/Slider/Slider.js +198 -0
  262. package/inputs/Textarea/Textarea.d.ts +79 -0
  263. package/inputs/Textarea/Textarea.js +65 -0
  264. package/main.js +32 -0
  265. package/map/Map/Map.d.ts +47 -0
  266. package/map/Map/Map.js +221 -0
  267. package/map/Map/index.d.ts +1 -0
  268. package/map/Map/index.js +1 -0
  269. package/map/PositionsManager/PositionBox.d.ts +14 -0
  270. package/map/PositionsManager/PositionBox.js +86 -0
  271. package/map/PositionsManager/PositionsManager.d.ts +27 -0
  272. package/map/PositionsManager/PositionsManager.js +99 -0
  273. package/map/controls/CompassButton/CompassButton.d.ts +33 -0
  274. package/map/controls/CompassButton/CompassButton.js +88 -0
  275. package/map/controls/FullscreenButton/FullscreenButton.d.ts +21 -0
  276. package/map/controls/FullscreenButton/FullscreenButton.js +62 -0
  277. package/map/controls/Geocoder/Geocoder.d.ts +49 -0
  278. package/map/controls/Geocoder/Geocoder.js +179 -0
  279. package/map/controls/Geocoder/GeocoderApi.d.ts +59 -0
  280. package/map/controls/Geocoder/GeocoderApi.js +68 -0
  281. package/map/controls/Geocoder/GeocoderEntry.d.ts +15 -0
  282. package/map/controls/Geocoder/GeocoderEntry.js +18 -0
  283. package/map/controls/Geocoder/GeocoderList.d.ts +10 -0
  284. package/map/controls/Geocoder/GeocoderList.js +18 -0
  285. package/map/controls/Geocoder/GeocoderSelector.d.ts +16 -0
  286. package/map/controls/Geocoder/GeocoderSelector.js +25 -0
  287. package/map/controls/Graticule/Graticule.d.ts +35 -0
  288. package/map/controls/Graticule/Graticule.js +142 -0
  289. package/map/controls/MapLoader/MapLoader.d.ts +33 -0
  290. package/map/controls/MapLoader/MapLoader.js +73 -0
  291. package/map/controls/ScaleControl/ScaleControl.d.ts +24 -0
  292. package/map/controls/ScaleControl/ScaleControl.js +107 -0
  293. package/map/controls/ZoomInButton/ZoomInButton.d.ts +19 -0
  294. package/map/controls/ZoomInButton/ZoomInButton.js +56 -0
  295. package/map/controls/ZoomOutButton/ZoomOutButton.d.ts +19 -0
  296. package/map/controls/ZoomOutButton/ZoomOutButton.js +56 -0
  297. package/map/controls/base/MapButton/Hint.d.ts +17 -0
  298. package/map/controls/base/MapButton/Hint.js +34 -0
  299. package/map/controls/base/MapButton/MapButton.d.ts +46 -0
  300. package/map/controls/base/MapButton/MapButton.js +71 -0
  301. package/map/controls/base/MapButton/index.d.ts +1 -0
  302. package/map/controls/base/MapButton/index.js +1 -0
  303. package/map/controls/base/MapButtonGroup/MapButtonGroup.d.ts +17 -0
  304. package/map/controls/base/MapButtonGroup/MapButtonGroup.js +24 -0
  305. package/map/controls/base/MapControl/MapControl.d.ts +36 -0
  306. package/map/controls/base/MapControl/MapControl.js +77 -0
  307. package/map/controls/base/MapControl/index.d.ts +1 -0
  308. package/map/controls/base/MapControl/index.js +1 -0
  309. package/map/layers/ClusterLayer/ClusterLayer.d.ts +79 -0
  310. package/map/layers/ClusterLayer/ClusterLayer.js +118 -0
  311. package/map/layers/HtmlMarkerLayer/HtmlMarkerLayer.d.ts +51 -0
  312. package/map/layers/HtmlMarkerLayer/HtmlMarkerLayer.js +151 -0
  313. package/map/layers/InterpolationLayer/ContoursFragmentShader.d.ts +2 -0
  314. package/map/layers/InterpolationLayer/ContoursFragmentShader.js +2 -0
  315. package/map/layers/InterpolationLayer/ContoursVertexShader.d.ts +2 -0
  316. package/map/layers/InterpolationLayer/ContoursVertexShader.js +2 -0
  317. package/map/layers/InterpolationLayer/IGradientStop.d.ts +5 -0
  318. package/map/layers/InterpolationLayer/IGradientStop.js +1 -0
  319. package/map/layers/InterpolationLayer/InterpolationLayer.d.ts +35 -0
  320. package/map/layers/InterpolationLayer/InterpolationLayer.js +256 -0
  321. package/map/layers/InterpolationLayer/LevelsFragmentShader.d.ts +2 -0
  322. package/map/layers/InterpolationLayer/LevelsFragmentShader.js +2 -0
  323. package/map/layers/InterpolationLayer/LevelsVertexShader.d.ts +2 -0
  324. package/map/layers/InterpolationLayer/LevelsVertexShader.js +2 -0
  325. package/map/layers/ParticlesLayer/ParticlesFragmentShader.d.ts +2 -0
  326. package/map/layers/ParticlesLayer/ParticlesFragmentShader.js +2 -0
  327. package/map/layers/ParticlesLayer/ParticlesLayer.d.ts +40 -0
  328. package/map/layers/ParticlesLayer/ParticlesLayer.js +337 -0
  329. package/map/layers/ParticlesLayer/ParticlesVertexShader.d.ts +2 -0
  330. package/map/layers/ParticlesLayer/ParticlesVertexShader.js +2 -0
  331. package/map/layers/ParticlesLayer/UVFragmentShader.d.ts +2 -0
  332. package/map/layers/ParticlesLayer/UVFragmentShader.js +2 -0
  333. package/map/layers/ParticlesLayer/UVVertexShader.d.ts +2 -0
  334. package/map/layers/ParticlesLayer/UVVertexShader.js +2 -0
  335. package/map/markers/ClusterMarker/ClusterMarker.d.ts +36 -0
  336. package/map/markers/ClusterMarker/ClusterMarker.js +99 -0
  337. package/map/markers/ClusterMarker/index.d.ts +1 -0
  338. package/map/markers/ClusterMarker/index.js +1 -0
  339. package/map/markers/RiskMarker/RiskMarker.d.ts +22 -0
  340. package/map/markers/RiskMarker/RiskMarker.js +61 -0
  341. package/modules/MainMenu/Item.d.ts +42 -0
  342. package/modules/MainMenu/Item.js +94 -0
  343. package/modules/MainMenu/MainMenu.d.ts +20 -0
  344. package/modules/MainMenu/MainMenu.js +41 -0
  345. package/modules/MainMenu/index.d.ts +1 -0
  346. package/modules/MainMenu/index.js +1 -0
  347. package/modules/Root/Content.d.ts +16 -0
  348. package/modules/Root/Content.js +25 -0
  349. package/modules/Root/Overlay.d.ts +23 -0
  350. package/modules/Root/Overlay.js +33 -0
  351. package/modules/Root/Root.d.ts +7 -0
  352. package/modules/Root/Root.js +45 -0
  353. package/modules/Root/Shader.d.ts +15 -0
  354. package/modules/Root/Shader.js +24 -0
  355. package/modules/Root/Sidebar.d.ts +13 -0
  356. package/modules/Root/Sidebar.js +24 -0
  357. package/modules/Root/stories/SampleContent.d.ts +7 -0
  358. package/modules/Root/stories/SampleContent.js +44 -0
  359. package/package.json +64 -0
  360. package/services/Dialog/AlertDialog.d.ts +31 -0
  361. package/services/Dialog/AlertDialog.js +29 -0
  362. package/services/Dialog/ConfirmDialog.d.ts +34 -0
  363. package/services/Dialog/ConfirmDialog.js +30 -0
  364. package/services/Dialog/Dialog.d.ts +91 -0
  365. package/services/Dialog/Dialog.js +92 -0
  366. package/services/Dialog/DialogBackground.d.ts +7 -0
  367. package/services/Dialog/DialogBackground.js +12 -0
  368. package/services/Dialog/DialogContent.d.ts +25 -0
  369. package/services/Dialog/DialogContent.js +38 -0
  370. package/services/Dialog/DialogFooter.d.ts +24 -0
  371. package/services/Dialog/DialogFooter.js +50 -0
  372. package/services/Dialog/DialogHeader.d.ts +18 -0
  373. package/services/Dialog/DialogHeader.js +36 -0
  374. package/services/Dialog/DialogWindow.d.ts +13 -0
  375. package/services/Dialog/DialogWindow.js +12 -0
  376. package/services/Dialog/XhrDialog.d.ts +34 -0
  377. package/services/Dialog/XhrDialog.js +321 -0
  378. package/services/Toast/IToastMessage.d.ts +10 -0
  379. package/services/Toast/IToastMessage.js +1 -0
  380. package/services/Toast/IToastProps.d.ts +23 -0
  381. package/services/Toast/IToastProps.js +1 -0
  382. package/services/Toast/Toast.d.ts +21 -0
  383. package/services/Toast/Toast.js +79 -0
  384. package/services/Toast/ToastContainer.d.ts +40 -0
  385. package/services/Toast/ToastContainer.js +65 -0
  386. package/services/Toast/ToastContext.d.ts +22 -0
  387. package/services/Toast/ToastContext.js +7 -0
  388. package/services/Toast/ToastProvider.d.ts +19 -0
  389. package/services/Toast/ToastProvider.js +67 -0
  390. package/services/Toast/index.d.ts +2 -0
  391. package/services/Toast/index.js +2 -0
  392. package/services/Toast/useToast.d.ts +5 -0
  393. package/services/Toast/useToast.js +9 -0
  394. package/spritemap.svg +1 -0
  395. package/styles/NormalTheme.d.ts +3 -0
  396. package/styles/NormalTheme.js +65 -0
  397. package/styles/StyleBase.d.ts +2 -0
  398. package/styles/StyleBase.js +8 -0
  399. package/styles/StyleReset.d.ts +2 -0
  400. package/styles/StyleReset.js +8 -0
  401. package/svg/editor/index.d.ts +10 -0
  402. package/svg/editor/index.js +11 -0
  403. package/svg/file/index.d.ts +5 -0
  404. package/svg/file/index.js +6 -0
  405. package/svg/icons/index.d.ts +36 -0
  406. package/svg/icons/index.js +37 -0
  407. package/svg/index.d.ts +11 -0
  408. package/svg/index.js +5 -0
  409. package/svg/menu/index.d.ts +8 -0
  410. package/svg/menu/index.js +9 -0
@@ -0,0 +1,162 @@
1
+ import { nameToHex } from './nameToHex';
2
+ import { HslColor } from './HslColor';
3
+ /**
4
+ * `RgbColor` encapsulates an RGB color, optionally with an alpha component.
5
+ * It offers parsing from and to a HTML color string.
6
+ */
7
+ var RgbColor = /** @class */ (function () {
8
+ /** Construct an RgbColor instance.
9
+ * If alpha is not provided, it is assumed to be 1 (opaque).
10
+ */
11
+ function RgbColor(red, green, blue, alpha) {
12
+ /**
13
+ * Reduces hex values if possible e.g. #ff8866 to #f86
14
+ */
15
+ this.reduceHexValue = function (value) {
16
+ if (value.length === 7
17
+ && value[1] === value[2]
18
+ && value[3] === value[4]
19
+ && value[5] === value[6]) {
20
+ return "#".concat(value[1]).concat(value[3]).concat(value[5]);
21
+ }
22
+ return value;
23
+ };
24
+ this.red = red;
25
+ this.green = green;
26
+ this.blue = blue;
27
+ this.alpha = alpha !== null && alpha !== void 0 ? alpha : 1;
28
+ }
29
+ /** Parses a color string into an RgbColor instance.
30
+ * Color strings may be:
31
+ *
32
+ * SteelBlue (and friends)
33
+ * #RRGGBB
34
+ * #RRGGBBAA
35
+ * #RGB
36
+ * #RGBA
37
+ * rgb(r,g,b)
38
+ * rgba(r,g,b,a)
39
+ * hsl(h,s,l)
40
+ * hsla(h,s,l,a)
41
+ */
42
+ RgbColor.FromString = function (color) {
43
+ var hexRegex = /^#[a-fA-F0-9]{6}$/;
44
+ var hexRgbaRegex = /^#[a-fA-F0-9]{8}$/;
45
+ var reducedHexRegex = /^#[a-fA-F0-9]{3}$/;
46
+ var reducedRgbaHexRegex = /^#[a-fA-F0-9]{4}$/;
47
+ var rgbRegex = /^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/;
48
+ var rgbaRegex = /^rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*([-+]?[0-9]*[.]?[0-9]+)\s*\)$/;
49
+ var hslRegex = /^hsl\(\s*(\d{0,3}[.]?[0-9]+)\s*,\s*(\d{1,3})%\s*,\s*(\d{1,3})%\s*\)$/;
50
+ var hslaRegex = /^hsla\(\s*(\d{0,3}[.]?[0-9]+)\s*,\s*(\d{1,3})%\s*,\s*(\d{1,3})%\s*,\s*([-+]?[0-9]*[.]?[0-9]+)\s*\)$/;
51
+ // If the color is not even a string, make it white.
52
+ if (typeof color !== "string")
53
+ color = "#ffffff";
54
+ // This may be a named color. Convert it to hex first.
55
+ var normalizedColor = nameToHex(color);
56
+ if (normalizedColor.match(hexRegex)) {
57
+ return new RgbColor(parseInt("".concat(normalizedColor[1]).concat(normalizedColor[2]), 16), parseInt("".concat(normalizedColor[3]).concat(normalizedColor[4]), 16), parseInt("".concat(normalizedColor[5]).concat(normalizedColor[6]), 16));
58
+ }
59
+ if (normalizedColor.match(hexRgbaRegex)) {
60
+ var alpha = parseFloat((parseInt("".concat(normalizedColor[7]).concat(normalizedColor[8]), 16) / 255).toFixed(2));
61
+ return new RgbColor(parseInt("".concat(normalizedColor[1]).concat(normalizedColor[2]), 16), parseInt("".concat(normalizedColor[3]).concat(normalizedColor[4]), 16), parseInt("".concat(normalizedColor[5]).concat(normalizedColor[6]), 16), alpha);
62
+ }
63
+ if (normalizedColor.match(reducedHexRegex)) {
64
+ return new RgbColor(parseInt("".concat(normalizedColor[1]).concat(normalizedColor[1]), 16), parseInt("".concat(normalizedColor[2]).concat(normalizedColor[2]), 16), parseInt("".concat(normalizedColor[3]).concat(normalizedColor[3]), 16));
65
+ }
66
+ if (normalizedColor.match(reducedRgbaHexRegex)) {
67
+ var alpha = parseFloat((parseInt("".concat(normalizedColor[4]).concat(normalizedColor[4]), 16) / 255).toFixed(2));
68
+ return new RgbColor(parseInt("".concat(normalizedColor[1]).concat(normalizedColor[1]), 16), parseInt("".concat(normalizedColor[2]).concat(normalizedColor[2]), 16), parseInt("".concat(normalizedColor[3]).concat(normalizedColor[3]), 16), alpha);
69
+ }
70
+ var rgbMatched = rgbRegex.exec(normalizedColor);
71
+ if (rgbMatched) {
72
+ return new RgbColor(parseInt("".concat(rgbMatched[1]), 10), parseInt("".concat(rgbMatched[2]), 10), parseInt("".concat(rgbMatched[3]), 10));
73
+ }
74
+ var rgbaMatched = rgbaRegex.exec(normalizedColor);
75
+ if (rgbaMatched) {
76
+ return new RgbColor(parseInt("".concat(rgbaMatched[1]), 10), parseInt("".concat(rgbaMatched[2]), 10), parseInt("".concat(rgbaMatched[3]), 10), parseFloat("".concat(rgbaMatched[4])));
77
+ }
78
+ var hslMatched = hslRegex.exec(normalizedColor);
79
+ if (hslMatched) {
80
+ var hue = parseInt("".concat(hslMatched[1]), 10);
81
+ var saturation = parseInt("".concat(hslMatched[2]), 10) / 100;
82
+ var lightness = parseInt("".concat(hslMatched[3]), 10) / 100;
83
+ var hsl = new HslColor(hue, saturation, lightness);
84
+ return RgbColor.FromHsl(hsl);
85
+ }
86
+ var hslaMatched = hslaRegex.exec(normalizedColor);
87
+ if (hslaMatched) {
88
+ var hue = parseInt("".concat(hslaMatched[1]), 10);
89
+ var saturation = parseInt("".concat(hslaMatched[2]), 10) / 100;
90
+ var lightness = parseInt("".concat(hslaMatched[3]), 10) / 100;
91
+ var alpha = parseFloat("".concat(hslaMatched[4]));
92
+ var hsl = new HslColor(hue, saturation, lightness, alpha);
93
+ return RgbColor.FromHsl(hsl);
94
+ }
95
+ // console.error("RgbColor.FromString parse error for: " + color);
96
+ // In case of parse error, assume white.
97
+ return new RgbColor(255, 255, 255);
98
+ };
99
+ /**
100
+ * Convert a HslColor instance to an RgbColor instance.
101
+ */
102
+ RgbColor.FromHsl = function (color) {
103
+ if (color.saturation === 0) {
104
+ // achromatic
105
+ return new RgbColor(Math.round(color.lightness * 255), Math.round(color.lightness * 255), Math.round(color.lightness * 255), color.alpha);
106
+ }
107
+ // formular from https://en.wikipedia.org/wiki/HSL_and_HSV
108
+ var huePrime = color.hue % 360 / 60;
109
+ var chroma = (1 - Math.abs(2 * color.lightness - 1)) * color.saturation;
110
+ var secondComponent = chroma * (1 - Math.abs(huePrime % 2 - 1));
111
+ var red = 0;
112
+ var green = 0;
113
+ var blue = 0;
114
+ if (huePrime >= 0 && huePrime < 1) {
115
+ red = chroma;
116
+ green = secondComponent;
117
+ }
118
+ else if (huePrime >= 1 && huePrime < 2) {
119
+ red = secondComponent;
120
+ green = chroma;
121
+ }
122
+ else if (huePrime >= 2 && huePrime < 3) {
123
+ green = chroma;
124
+ blue = secondComponent;
125
+ }
126
+ else if (huePrime >= 3 && huePrime < 4) {
127
+ green = secondComponent;
128
+ blue = chroma;
129
+ }
130
+ else if (huePrime >= 4 && huePrime < 5) {
131
+ red = secondComponent;
132
+ blue = chroma;
133
+ }
134
+ else if (huePrime >= 5 && huePrime < 6) {
135
+ red = chroma;
136
+ blue = secondComponent;
137
+ }
138
+ var lightnessModification = color.lightness - chroma / 2;
139
+ var finalRed = red + lightnessModification;
140
+ var finalGreen = green + lightnessModification;
141
+ var finalBlue = blue + lightnessModification;
142
+ return new RgbColor(Math.round(finalRed * 255), Math.round(finalGreen * 255), Math.round(finalBlue * 255), color.alpha);
143
+ };
144
+ RgbColor.prototype.toHex = function (value) {
145
+ var hex = value.toString(16);
146
+ return hex.length === 1 ? "0".concat(hex) : hex;
147
+ };
148
+ /**
149
+ * Return string representation of this RgbColor instance.
150
+ */
151
+ RgbColor.prototype.toString = function () {
152
+ // Convert RGB to hex string.
153
+ var hex = "#".concat(this.toHex(this.red)).concat(this.toHex(this.green)).concat(this.toHex(this.blue));
154
+ if (this.alpha !== 1) {
155
+ hex += "".concat(this.toHex(Math.round(this.alpha * 255)));
156
+ }
157
+ // Reduce #FFFFFF to #FFF if possible:
158
+ return this.reduceHexValue(hex);
159
+ };
160
+ return RgbColor;
161
+ }());
162
+ export { RgbColor };
@@ -0,0 +1,10 @@
1
+ import { Size } from "../Types";
2
+ export type Ratio = 'minorSecond' | 'majorSecond' | 'minorThird' | 'majorThird' | 'perfectFourth' | 'augFourth' | 'perfectFifth' | 'minorSixth' | 'goldenSection' | 'majorSixth' | 'minorSeventh' | 'majorSeventh' | 'octave' | 'majorTenth' | 'majorEleventh' | 'majorTwelfth' | 'doubleOctave';
3
+ export declare function modularScale(steps: number, base: number, ratio: Ratio): number;
4
+ /**
5
+ * Scale a Size to a local unit.
6
+ * @param size Source size
7
+ * @param base Base size, in local units
8
+ * @param ratio ModularScale ratio to use
9
+ */
10
+ export declare function scaleSize(size: Size, base: number, ratio: Ratio): number;
@@ -0,0 +1,56 @@
1
+ function getRatioValue(ratio) {
2
+ switch (ratio) {
3
+ case 'minorSecond': return 1.067;
4
+ case 'majorSecond': return 1.125;
5
+ case 'minorThird': return 1.2;
6
+ case 'majorThird': return 1.25;
7
+ case 'perfectFourth': return 1.333;
8
+ case 'augFourth': return 1.414;
9
+ case 'perfectFifth': return 1.5;
10
+ case 'minorSixth': return 1.6;
11
+ case 'goldenSection': return 1.618;
12
+ case 'majorSixth': return 1.667;
13
+ case 'minorSeventh': return 1.778;
14
+ case 'majorSeventh': return 1.875;
15
+ case 'octave': return 2;
16
+ case 'majorTenth': return 2.5;
17
+ case 'majorEleventh': return 2.667;
18
+ case 'majorTwelfth': return 3;
19
+ case 'doubleOctave': return 4;
20
+ }
21
+ }
22
+ ;
23
+ export function modularScale(steps, base, ratio) {
24
+ if (base === 0)
25
+ base = 1;
26
+ var ratioValue = getRatioValue(ratio);
27
+ return base * Math.pow(ratioValue, steps);
28
+ }
29
+ /**
30
+ * Convert a Size to a scale.
31
+ *
32
+ * If size is undefined, 'medium' will be assumed.
33
+ */
34
+ function sizeToScale(size) {
35
+ if (size === void 0) { size = 'medium'; }
36
+ var sizeToScale = {
37
+ 'mini': -3,
38
+ 'tiny': -2,
39
+ 'small': -1,
40
+ 'medium': 0,
41
+ 'large': 1,
42
+ 'big': 2,
43
+ 'huge': 3,
44
+ 'massive': 4
45
+ };
46
+ return sizeToScale[size];
47
+ }
48
+ /**
49
+ * Scale a Size to a local unit.
50
+ * @param size Source size
51
+ * @param base Base size, in local units
52
+ * @param ratio ModularScale ratio to use
53
+ */
54
+ export function scaleSize(size, base, ratio) {
55
+ return modularScale(sizeToScale(size), base, ratio);
56
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Darkens an input color by an amount.
3
+ * @param amount Amount of lightness to reduce.
4
+ * @param color Color in RGB format, e.g. "red" or "#ff0000".
5
+ * @returns Darkened color in RGB format.
6
+ */
7
+ declare function darken(amount: number, color: string): string;
8
+ export { darken };
@@ -0,0 +1,18 @@
1
+ import { guard } from './guard';
2
+ import { RgbColor } from './RgbColor';
3
+ import { HslColor } from './HslColor';
4
+ /**
5
+ * Darkens an input color by an amount.
6
+ * @param amount Amount of lightness to reduce.
7
+ * @param color Color in RGB format, e.g. "red" or "#ff0000".
8
+ * @returns Darkened color in RGB format.
9
+ */
10
+ function darken(amount, color) {
11
+ if (color === 'transparent')
12
+ return color;
13
+ var rgbColor = RgbColor.FromString(color);
14
+ var hslColor = HslColor.FromRgb(rgbColor);
15
+ hslColor.lightness = guard(0, 1, hslColor.lightness - amount);
16
+ return RgbColor.FromHsl(hslColor).toString();
17
+ }
18
+ export { darken };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Forces a numeric value to fall within a range.
3
+ */
4
+ declare function guard(lowerBoundary: number, upperBoundary: number, value: number): number;
5
+ export { guard };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Forces a numeric value to fall within a range.
3
+ */
4
+ function guard(lowerBoundary, upperBoundary, value) {
5
+ return Math.max(lowerBoundary, Math.min(upperBoundary, value));
6
+ }
7
+ export { guard };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Lightens an input color by an amount.
3
+ * @param amount Amount of lightness to increase.
4
+ * @param color Color in RGB format, e.g. "red" or "#ff0000".
5
+ * @returns Lightened color in RGB format.
6
+ */
7
+ declare function lighten(amount: number, color: string): string;
8
+ export { lighten };
@@ -0,0 +1,11 @@
1
+ import { darken } from './darken';
2
+ /**
3
+ * Lightens an input color by an amount.
4
+ * @param amount Amount of lightness to increase.
5
+ * @param color Color in RGB format, e.g. "red" or "#ff0000".
6
+ * @returns Lightened color in RGB format.
7
+ */
8
+ function lighten(amount, color) {
9
+ return darken(-amount, color);
10
+ }
11
+ export { lighten };
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Checks if a string is a CSS named color and returns its equivalent hex value,
3
+ * otherwise returns the original color.
4
+ */
5
+ declare function nameToHex(color: string): string;
6
+ export { nameToHex };
@@ -0,0 +1,163 @@
1
+ var namedColorMap = {
2
+ aliceblue: 'f0f8ff',
3
+ antiquewhite: 'faebd7',
4
+ aqua: '00ffff',
5
+ aquamarine: '7fffd4',
6
+ azure: 'f0ffff',
7
+ beige: 'f5f5dc',
8
+ bisque: 'ffe4c4',
9
+ black: '000',
10
+ blanchedalmond: 'ffebcd',
11
+ blue: '0000ff',
12
+ blueviolet: '8a2be2',
13
+ brown: 'a52a2a',
14
+ burlywood: 'deb887',
15
+ cadetblue: '5f9ea0',
16
+ chartreuse: '7fff00',
17
+ chocolate: 'd2691e',
18
+ coral: 'ff7f50',
19
+ cornflowerblue: '6495ed',
20
+ cornsilk: 'fff8dc',
21
+ crimson: 'dc143c',
22
+ cyan: '00ffff',
23
+ darkblue: '00008b',
24
+ darkcyan: '008b8b',
25
+ darkgoldenrod: 'b8860b',
26
+ darkgray: 'a9a9a9',
27
+ darkgreen: '006400',
28
+ darkgrey: 'a9a9a9',
29
+ darkkhaki: 'bdb76b',
30
+ darkmagenta: '8b008b',
31
+ darkolivegreen: '556b2f',
32
+ darkorange: 'ff8c00',
33
+ darkorchid: '9932cc',
34
+ darkred: '8b0000',
35
+ darksalmon: 'e9967a',
36
+ darkseagreen: '8fbc8f',
37
+ darkslateblue: '483d8b',
38
+ darkslategray: '2f4f4f',
39
+ darkslategrey: '2f4f4f',
40
+ darkturquoise: '00ced1',
41
+ darkviolet: '9400d3',
42
+ deeppink: 'ff1493',
43
+ deepskyblue: '00bfff',
44
+ dimgray: '696969',
45
+ dimgrey: '696969',
46
+ dodgerblue: '1e90ff',
47
+ firebrick: 'b22222',
48
+ floralwhite: 'fffaf0',
49
+ forestgreen: '228b22',
50
+ fuchsia: 'ff00ff',
51
+ gainsboro: 'dcdcdc',
52
+ ghostwhite: 'f8f8ff',
53
+ gold: 'ffd700',
54
+ goldenrod: 'daa520',
55
+ gray: '808080',
56
+ green: '008000',
57
+ greenyellow: 'adff2f',
58
+ grey: '808080',
59
+ honeydew: 'f0fff0',
60
+ hotpink: 'ff69b4',
61
+ indianred: 'cd5c5c',
62
+ indigo: '4b0082',
63
+ ivory: 'fffff0',
64
+ khaki: 'f0e68c',
65
+ lavender: 'e6e6fa',
66
+ lavenderblush: 'fff0f5',
67
+ lawngreen: '7cfc00',
68
+ lemonchiffon: 'fffacd',
69
+ lightblue: 'add8e6',
70
+ lightcoral: 'f08080',
71
+ lightcyan: 'e0ffff',
72
+ lightgoldenrodyellow: 'fafad2',
73
+ lightgray: 'd3d3d3',
74
+ lightgreen: '90ee90',
75
+ lightgrey: 'd3d3d3',
76
+ lightpink: 'ffb6c1',
77
+ lightsalmon: 'ffa07a',
78
+ lightseagreen: '20b2aa',
79
+ lightskyblue: '87cefa',
80
+ lightslategray: '789',
81
+ lightslategrey: '789',
82
+ lightsteelblue: 'b0c4de',
83
+ lightyellow: 'ffffe0',
84
+ lime: '0f0',
85
+ limegreen: '32cd32',
86
+ linen: 'faf0e6',
87
+ magenta: 'f0f',
88
+ maroon: '800000',
89
+ mediumaquamarine: '66cdaa',
90
+ mediumblue: '0000cd',
91
+ mediumorchid: 'ba55d3',
92
+ mediumpurple: '9370db',
93
+ mediumseagreen: '3cb371',
94
+ mediumslateblue: '7b68ee',
95
+ mediumspringgreen: '00fa9a',
96
+ mediumturquoise: '48d1cc',
97
+ mediumvioletred: 'c71585',
98
+ midnightblue: '191970',
99
+ mintcream: 'f5fffa',
100
+ mistyrose: 'ffe4e1',
101
+ moccasin: 'ffe4b5',
102
+ navajowhite: 'ffdead',
103
+ navy: '000080',
104
+ oldlace: 'fdf5e6',
105
+ olive: '808000',
106
+ olivedrab: '6b8e23',
107
+ orange: 'ffa500',
108
+ orangered: 'ff4500',
109
+ orchid: 'da70d6',
110
+ palegoldenrod: 'eee8aa',
111
+ palegreen: '98fb98',
112
+ paleturquoise: 'afeeee',
113
+ palevioletred: 'db7093',
114
+ papayawhip: 'ffefd5',
115
+ peachpuff: 'ffdab9',
116
+ peru: 'cd853f',
117
+ pink: 'ffc0cb',
118
+ plum: 'dda0dd',
119
+ powderblue: 'b0e0e6',
120
+ purple: '800080',
121
+ rebeccapurple: '639',
122
+ red: 'f00',
123
+ rosybrown: 'bc8f8f',
124
+ royalblue: '4169e1',
125
+ saddlebrown: '8b4513',
126
+ salmon: 'fa8072',
127
+ sandybrown: 'f4a460',
128
+ seagreen: '2e8b57',
129
+ seashell: 'fff5ee',
130
+ sienna: 'a0522d',
131
+ silver: 'c0c0c0',
132
+ skyblue: '87ceeb',
133
+ slateblue: '6a5acd',
134
+ slategray: '708090',
135
+ slategrey: '708090',
136
+ snow: 'fffafa',
137
+ springgreen: '00ff7f',
138
+ steelblue: '4682b4',
139
+ tan: 'd2b48c',
140
+ teal: '008080',
141
+ thistle: 'd8bfd8',
142
+ tomato: 'ff6347',
143
+ turquoise: '40e0d0',
144
+ violet: 'ee82ee',
145
+ wheat: 'f5deb3',
146
+ white: 'fff',
147
+ whitesmoke: 'f5f5f5',
148
+ yellow: 'ff0',
149
+ yellowgreen: '9acd32',
150
+ };
151
+ /**
152
+ * Checks if a string is a CSS named color and returns its equivalent hex value,
153
+ * otherwise returns the original color.
154
+ */
155
+ function nameToHex(color) {
156
+ if (typeof color !== 'string')
157
+ return color;
158
+ var normalizedColorName = color.toLowerCase();
159
+ return namedColorMap[normalizedColorName]
160
+ ? "#".concat(namedColorMap[normalizedColorName])
161
+ : color;
162
+ }
163
+ export { nameToHex };
@@ -0,0 +1,34 @@
1
+ import * as React from 'react';
2
+ interface IProps {
3
+ /** @ignore */
4
+ className?: string;
5
+ /**
6
+ * Current value.
7
+ */
8
+ value: Date;
9
+ /**
10
+ * Is control currently open?
11
+ */
12
+ open: boolean;
13
+ /**
14
+ * This control can open upwards, which affects its styles.
15
+ */
16
+ upwards: boolean;
17
+ /**
18
+ * Is control transparent? This affects the position at which
19
+ * this Body opens.
20
+ */
21
+ transparent?: boolean;
22
+ /**
23
+ * If set, no future date (beyond today) can be selected.
24
+ */
25
+ nofuture?: boolean;
26
+ /**
27
+ * Fired when a new date is selected.
28
+ */
29
+ onSelect: (value: Date) => void;
30
+ }
31
+ declare const Body: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<IProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
32
+ ref?: React.Ref<HTMLDivElement>;
33
+ }, never>> & string & Omit<React.ForwardRefExoticComponent<IProps & React.RefAttributes<HTMLDivElement>>, keyof React.Component<any, {}, any>>;
34
+ export { Body };
@@ -0,0 +1,50 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import * as React from 'react';
6
+ import styled, { css } from 'styled-components';
7
+ import { Calendar } from './Calendar';
8
+ import { Navbar } from './Navbar';
9
+ var BodyBase = React.forwardRef(function (props, ref) {
10
+ // Parse str into Date.
11
+ // If parsing fails, return fallback value.
12
+ var checkDate = function (d, def) {
13
+ if (!d || isNaN(d.getDate()))
14
+ return def;
15
+ return d;
16
+ };
17
+ // Running date, to determine which month to show.
18
+ // If no value is specified, use today's date.
19
+ var _a = React.useState(checkDate(props.value, new Date(Date.now()))), date = _a[0], setDate = _a[1];
20
+ React.useEffect(function () {
21
+ setDate(checkDate(props.value, new Date(Date.now())));
22
+ }, [props.value]);
23
+ var handleDayClick = function (date) {
24
+ props.onSelect(date);
25
+ };
26
+ //
27
+ // Moves current view by specified number of months.
28
+ //
29
+ var handleMove = function (months) {
30
+ date.setMonth(date.getMonth() + months);
31
+ setDate(new Date(date));
32
+ };
33
+ var handlePrevYear = function () { return handleMove(-12); };
34
+ var handleNextYear = function () { return handleMove(12); };
35
+ var handlePrevMonth = function () { return handleMove(-1); };
36
+ var handleNextMonth = function () { return handleMove(1); };
37
+ var handleMonth = function (month) {
38
+ date.setMonth(month);
39
+ setDate(new Date(date));
40
+ };
41
+ var handleYear = function (year) {
42
+ date.setFullYear(year);
43
+ };
44
+ return (React.createElement("div", { className: props.className, tabIndex: -1 },
45
+ React.createElement(Navbar, { date: date, onPrevYear: handlePrevYear, onNextYear: handleNextYear, onPrevMonth: handlePrevMonth, onNextMonth: handleNextMonth, onMonth: handleMonth, onYear: handleYear }),
46
+ React.createElement(Calendar, { date: date, selectedDate: props.value, nofuture: props.nofuture, onClick: handleDayClick })));
47
+ });
48
+ var Body = styled(BodyBase)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n position: absolute;\n z-index: 100;\n box-sizing: border-box;\n overflow-y: hidden;\n outline: none;\n width: 330px;\n\n // Transparent fill be placed over thick FieldWrapper's border.\n ", "\n\n background-color: ", ";\n border-radius: ", "px;\n color: ", ";\n\n // Body can open upwards or downwards. This affects its positioning \n // relative to the parent.\n // Transparent Dropdowns have more distance from the selector so that\n // they appear outside of the FieldWrapper.\n ", "\n ", "\n\n transition: opacity ", "ms ease-in-out,\n max-height 0ms linear ", "ms;\n max-height: 0;\n opacity: 0;\n ", "\n"], ["\n position: absolute;\n z-index: 100;\n box-sizing: border-box;\n overflow-y: hidden;\n outline: none;\n width: 330px;\n\n // Transparent fill be placed over thick FieldWrapper's border.\n ", "\n\n background-color: ", ";\n border-radius: ", "px;\n color: ", ";\n\n // Body can open upwards or downwards. This affects its positioning \n // relative to the parent.\n // Transparent Dropdowns have more distance from the selector so that\n // they appear outside of the FieldWrapper.\n ", "\n ", "\n\n transition: opacity ", "ms ease-in-out,\n max-height 0ms linear ", "ms;\n max-height: 0;\n opacity: 0;\n ", "\n"])), function (p) { return p.transparent && css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["left: -2px;"], ["left: -2px;"]))); }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.radius.normal; }, function (p) { return p.theme.colors.primary[3]; }, function (p) { return p.upwards && css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n bottom: calc(100% + ", ");\n "], ["\n bottom: calc(100% + ", ");\n "])), p.transparent ? "30px" : "8px"); }, function (p) { return !p.upwards && css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n top: calc(100% + ", ");\n "], ["\n top: calc(100% + ", ");\n "])), p.transparent ? "30px" : "8px"); }, function (p) { return p.theme.animation.duration * 0; }, function (p) { return p.theme.animation.duration * 0; }, function (p) { return p.open && css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n transition: opacity ", "ms ease-in,\n max-height 0ms linear;\n max-height: 1000px;\n opacity: 1;\n "], ["\n transition: opacity ", "ms ease-in,\n max-height 0ms linear;\n max-height: 1000px;\n opacity: 1;\n "])), function (p) { return p.theme.animation.duration; }); });
49
+ export { Body };
50
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+ interface IProps {
3
+ /** @ignore */
4
+ className?: string;
5
+ /** Current date. Will be highlighted. */
6
+ date: Date;
7
+ /** Selected date. Will be highlighted. */
8
+ selectedDate: Date;
9
+ /** If set, don't allow picking days beyond today. */
10
+ nofuture?: boolean;
11
+ /** Fired when a date is clicked. */
12
+ onClick: (clickedDate: Date) => void;
13
+ }
14
+ declare const Calendar: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<IProps, never>> & string & Omit<(props: IProps) => React.JSX.Element, keyof React.Component<any, {}, any>>;
15
+ export { Calendar };
@@ -0,0 +1,60 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var _this = this;
6
+ import * as React from 'react';
7
+ import styled from 'styled-components';
8
+ import { Day } from './Day';
9
+ var CalendarBase = function (props) {
10
+ // Returns true if two dates are equal.
11
+ var isDateEqual = function (d1, d2) {
12
+ return (d1.getFullYear() === d2.getFullYear() &&
13
+ d1.getMonth() === d2.getMonth() &&
14
+ d1.getDate() === d2.getDate());
15
+ };
16
+ var handleClick = function (clickedDate, e) {
17
+ e.stopPropagation();
18
+ props.onClick(clickedDate);
19
+ };
20
+ // Save today's date.
21
+ var today = new Date(Date.now());
22
+ // Create a date for the first day of the month.
23
+ var start = new Date(props.date.getFullYear(), props.date.getMonth(), 1);
24
+ // Move backwards until it's a Monday.
25
+ while (start.getDay() !== 1) {
26
+ start.setDate(start.getDate() - 1);
27
+ }
28
+ // Create a date for the last day of the month.
29
+ var month = props.date.getMonth() + 1;
30
+ if (month > 12)
31
+ month = 1;
32
+ var end = new Date(props.date.getFullYear(), month, 0);
33
+ // Move forward until it's a Sunday.
34
+ while (end.getDay() !== 0) {
35
+ end.setDate(end.getDate() + 1);
36
+ }
37
+ // There should be a total of 6x7 = 42 days. If a month starts
38
+ // exactly on Sunday we may be a week short. Add days until
39
+ // there are 42.
40
+ var timeDiff = Math.abs(end.getTime() - start.getTime());
41
+ var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
42
+ for (var i = 0; i < 42 - diffDays; i++) {
43
+ end.setDate(end.getDate() + 1);
44
+ }
45
+ // Build array of days.
46
+ var days = [];
47
+ while (start.getTime() < end.getTime()) {
48
+ days.push(React.createElement(Day, { key: start.getTime(), grey: start.getMonth() != props.date.getMonth() || (props.nofuture && start > today), selected: props.selectedDate && isDateEqual(props.selectedDate, start), today: isDateEqual(today, start), day: start.getDate(), onClick: (!props.nofuture || start <= today) ? handleClick.bind(_this, new Date(start.getTime())) : null }));
49
+ start.setDate(start.getDate() + 1);
50
+ }
51
+ return (React.createElement("div", { className: props.className },
52
+ ["Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"].map(function (day, index) {
53
+ return React.createElement(DayName, { key: index }, day);
54
+ }),
55
+ days));
56
+ };
57
+ var DayName = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: 40px;\n height: 40px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: ", ";\n font: ", ";\n user-select: none;\n"], ["\n width: 40px;\n height: 40px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: ", ";\n font: ", ";\n user-select: none;\n"])), function (p) { return p.theme.colors.primary[3]; }, function (p) { return p.theme.font.labelSmall; });
58
+ var Calendar = styled(CalendarBase)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n flex-wrap: wrap;\n padding: 12px;\n gap: 4px;\n"], ["\n display: flex;\n flex-wrap: wrap;\n padding: 12px;\n gap: 4px;\n"])));
59
+ export { Calendar };
60
+ var templateObject_1, templateObject_2;