cronofy-elements 1.48.0 → 1.49.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 (349) hide show
  1. package/dist/.gitkeep +0 -0
  2. package/dist/CronofyElements.js +2 -0
  3. package/{build/CronofyElements.v1.48.0.js.LICENSE.txt → dist/CronofyElements.js.LICENSE.txt} +0 -0
  4. package/package.json +8 -5
  5. package/.babelrc +0 -20
  6. package/.eslintrc.yaml +0 -43
  7. package/.prettierignore +0 -4
  8. package/.prettierrc +0 -7
  9. package/Makefile +0 -92
  10. package/brainstorm.md +0 -76
  11. package/build/CronofyElements.v1.48.0.js +0 -2
  12. package/build/npm/CronofyElements.js +0 -2
  13. package/compat.config.js +0 -25
  14. package/demo/agenda.ejs +0 -71
  15. package/demo/availability-viewer.ejs +0 -316
  16. package/demo/calendar-sync.ejs +0 -149
  17. package/demo/crossbrowser.ejs +0 -228
  18. package/demo/date-time-picker.ejs +0 -213
  19. package/demo/demo-styles.css +0 -134
  20. package/demo/index.ejs +0 -249
  21. package/demo/integration.ejs +0 -482
  22. package/demo/load-elements.ejs +0 -12
  23. package/demo/nav.ejs +0 -14
  24. package/demo/rules.ejs +0 -121
  25. package/demo/server.js +0 -425
  26. package/demo/slot-picker.ejs +0 -197
  27. package/git.README.md +0 -71
  28. package/notes.style.md +0 -197
  29. package/postcss.config.js +0 -3
  30. package/script/i18n-export +0 -11
  31. package/script/i18n-helpers/split_write.rb +0 -25
  32. package/script/i18n-import +0 -22
  33. package/script/i18n-reference-update +0 -241
  34. package/src/js/components/Agenda/Agenda.js +0 -243
  35. package/src/js/components/Agenda/AllDayEventsList.js +0 -37
  36. package/src/js/components/Agenda/Calendar.js +0 -100
  37. package/src/js/components/Agenda/CalendarHeader.js +0 -187
  38. package/src/js/components/Agenda/Event.js +0 -34
  39. package/src/js/components/Agenda/EventAllDay.js +0 -76
  40. package/src/js/components/Agenda/EventAttendees.js +0 -30
  41. package/src/js/components/Agenda/EventDetail.js +0 -111
  42. package/src/js/components/Agenda/EventMessages.js +0 -24
  43. package/src/js/components/Agenda/EventMeta.js +0 -48
  44. package/src/js/components/Agenda/EventTime.js +0 -34
  45. package/src/js/components/Agenda/EventWrapper.js +0 -271
  46. package/src/js/components/Agenda/Location.js +0 -29
  47. package/src/js/components/Agenda/Message.js +0 -22
  48. package/src/js/components/Agenda/TimedEventsList.js +0 -29
  49. package/src/js/components/AvailabilityRules/AddButton.js +0 -60
  50. package/src/js/components/AvailabilityRules/AvailabilityRules.js +0 -45
  51. package/src/js/components/AvailabilityRules/Calendar.js +0 -31
  52. package/src/js/components/AvailabilityRules/CalendarListItem.js +0 -53
  53. package/src/js/components/AvailabilityRules/CalendarProfiles.js +0 -67
  54. package/src/js/components/AvailabilityRules/CalendarSelector.js +0 -104
  55. package/src/js/components/AvailabilityRules/Calendars.js +0 -145
  56. package/src/js/components/AvailabilityRules/Checkmark.js +0 -51
  57. package/src/js/components/AvailabilityRules/DayLabels.js +0 -91
  58. package/src/js/components/AvailabilityRules/Footer.js +0 -109
  59. package/src/js/components/AvailabilityRules/Legend.js +0 -57
  60. package/src/js/components/AvailabilityRules/Loading.js +0 -53
  61. package/src/js/components/AvailabilityRules/RemoveButton.js +0 -57
  62. package/src/js/components/AvailabilityRules/Slot.js +0 -195
  63. package/src/js/components/AvailabilityRules/SlotDisplay.js +0 -27
  64. package/src/js/components/AvailabilityRules/Slots.js +0 -81
  65. package/src/js/components/AvailabilityRules/SlotsDisplay.js +0 -68
  66. package/src/js/components/AvailabilityRules/TimeExpander.js +0 -119
  67. package/src/js/components/AvailabilityRules/TimeLabels.js +0 -89
  68. package/src/js/components/AvailabilityRules/TimeZoneDisplay.js +0 -41
  69. package/src/js/components/AvailabilityRules/ToggleIcon.js +0 -41
  70. package/src/js/components/AvailabilityRules/Tooltip.js +0 -63
  71. package/src/js/components/AvailabilityRules/UnknownCalendar.js +0 -33
  72. package/src/js/components/AvailabilityRules/Week.js +0 -115
  73. package/src/js/components/AvailabilityRules/WeekGrid.js +0 -80
  74. package/src/js/components/AvailabilityRules/Wrapper.js +0 -414
  75. package/src/js/components/AvailabilityRules/contexts/drag-context.js +0 -15
  76. package/src/js/components/AvailabilityRules/scss/_base.buttons.scss +0 -58
  77. package/src/js/components/AvailabilityRules/scss/_base.theme.scss +0 -4
  78. package/src/js/components/AvailabilityRules/scss/_components.timezoneselector.scss +0 -74
  79. package/src/js/components/AvailabilityRules/scss/_generic.reset.scss +0 -13
  80. package/src/js/components/AvailabilityRules/scss/_settings.colours.scss +0 -12
  81. package/src/js/components/AvailabilityRules/scss/availabilityrules.scss +0 -5
  82. package/src/js/components/AvailabilityRules/utils/tz-utils.js +0 -44
  83. package/src/js/components/AvailabilityViewer/AvailabilityViewer.js +0 -520
  84. package/src/js/components/AvailabilityViewer/ColumnHeader.js +0 -35
  85. package/src/js/components/AvailabilityViewer/DayColumn.js +0 -36
  86. package/src/js/components/AvailabilityViewer/DayColumnDisplay.js +0 -33
  87. package/src/js/components/AvailabilityViewer/DayColumnWrapper.js +0 -29
  88. package/src/js/components/AvailabilityViewer/DayLabels.js +0 -41
  89. package/src/js/components/AvailabilityViewer/EmptyColumn.js +0 -29
  90. package/src/js/components/AvailabilityViewer/Footer.js +0 -36
  91. package/src/js/components/AvailabilityViewer/GridFreeSelect.js +0 -33
  92. package/src/js/components/AvailabilityViewer/HoverSlot.js +0 -35
  93. package/src/js/components/AvailabilityViewer/HoverTooltip.js +0 -34
  94. package/src/js/components/AvailabilityViewer/LabelColumn.js +0 -53
  95. package/src/js/components/AvailabilityViewer/LabelItem.js +0 -73
  96. package/src/js/components/AvailabilityViewer/Legend.js +0 -79
  97. package/src/js/components/AvailabilityViewer/Loading.js +0 -57
  98. package/src/js/components/AvailabilityViewer/MonthLabels.js +0 -43
  99. package/src/js/components/AvailabilityViewer/Navigation.js +0 -138
  100. package/src/js/components/AvailabilityViewer/Overlay.js +0 -60
  101. package/src/js/components/AvailabilityViewer/Preloading.js +0 -66
  102. package/src/js/components/AvailabilityViewer/SelectedSlot.js +0 -106
  103. package/src/js/components/AvailabilityViewer/SelectedSlots.js +0 -72
  104. package/src/js/components/AvailabilityViewer/SelectionMask.js +0 -44
  105. package/src/js/components/AvailabilityViewer/Slot.js +0 -237
  106. package/src/js/components/AvailabilityViewer/SlotFreeSelect.js +0 -115
  107. package/src/js/components/AvailabilityViewer/Slots.js +0 -57
  108. package/src/js/components/AvailabilityViewer/TimeExpander.js +0 -93
  109. package/src/js/components/AvailabilityViewer/TimeLines.js +0 -74
  110. package/src/js/components/AvailabilityViewer/TimeSelector.js +0 -243
  111. package/src/js/components/AvailabilityViewer/TimeSelectorTrigger.js +0 -42
  112. package/src/js/components/AvailabilityViewer/TimeZoneDisplay.js +0 -28
  113. package/src/js/components/AvailabilityViewer/ToggleIcon.js +0 -41
  114. package/src/js/components/AvailabilityViewer/Tooltip.js +0 -65
  115. package/src/js/components/AvailabilityViewer/Week.js +0 -255
  116. package/src/js/components/AvailabilityViewer/WeekWrapper.js +0 -132
  117. package/src/js/components/AvailabilityViewer/contexts/page-context.js +0 -17
  118. package/src/js/components/AvailabilityViewer/contexts/page-reducer.js +0 -28
  119. package/src/js/components/AvailabilityViewer/contexts/selection-context.js +0 -25
  120. package/src/js/components/AvailabilityViewer/contexts/selection-reducer.js +0 -18
  121. package/src/js/components/CalendarSync/Active.js +0 -57
  122. package/src/js/components/CalendarSync/AddToggle.js +0 -72
  123. package/src/js/components/CalendarSync/CalendarSync.js +0 -215
  124. package/src/js/components/CalendarSync/EditToggle.js +0 -71
  125. package/src/js/components/CalendarSync/Footer.js +0 -31
  126. package/src/js/components/CalendarSync/Inactive.js +0 -66
  127. package/src/js/components/CalendarSync/Loading.js +0 -52
  128. package/src/js/components/CalendarSync/Pending.js +0 -74
  129. package/src/js/components/CalendarSync/ProfileStatus.js +0 -33
  130. package/src/js/components/CalendarSync/Profiles.js +0 -109
  131. package/src/js/components/CalendarSync/ProviderLogo.js +0 -28
  132. package/src/js/components/CalendarSync/Providers.js +0 -80
  133. package/src/js/components/CalendarSync/RemoveLink.js +0 -96
  134. package/src/js/components/CalendarSync/SelectProvider.js +0 -25
  135. package/src/js/components/CalendarSync/contexts/status-reducer.js +0 -74
  136. package/src/js/components/DateTimePicker/Calendar.js +0 -127
  137. package/src/js/components/DateTimePicker/CalendarHeader.js +0 -80
  138. package/src/js/components/DateTimePicker/Confirm.js +0 -106
  139. package/src/js/components/DateTimePicker/DateTimePicker.js +0 -131
  140. package/src/js/components/DateTimePicker/DayButton.js +0 -38
  141. package/src/js/components/DateTimePicker/DayHeadings.js +0 -33
  142. package/src/js/components/DateTimePicker/Details.js +0 -33
  143. package/src/js/components/DateTimePicker/Error.js +0 -39
  144. package/src/js/components/DateTimePicker/Loading.js +0 -20
  145. package/src/js/components/DateTimePicker/LoadingCalendar.js +0 -21
  146. package/src/js/components/DateTimePicker/NoSlotsFound.js +0 -16
  147. package/src/js/components/DateTimePicker/SequencedSlotButton.js +0 -97
  148. package/src/js/components/DateTimePicker/SlotButton.js +0 -55
  149. package/src/js/components/DateTimePicker/SlotsList.js +0 -45
  150. package/src/js/components/DateTimePicker/Wrapper.js +0 -281
  151. package/src/js/components/DateTimePicker/contexts/status-context.js +0 -19
  152. package/src/js/components/DateTimePicker/contexts/status-reducer.js +0 -276
  153. package/src/js/components/DateTimePicker/contexts/theme-context.js +0 -33
  154. package/src/js/components/DateTimePicker/helpers/theming.js +0 -49
  155. package/src/js/components/DateTimePicker/scss/_base.buttons.scss +0 -58
  156. package/src/js/components/DateTimePicker/scss/_base.layout.scss +0 -28
  157. package/src/js/components/DateTimePicker/scss/_base.theme.scss +0 -17
  158. package/src/js/components/DateTimePicker/scss/_components.calendargrid.scss +0 -78
  159. package/src/js/components/DateTimePicker/scss/_components.calendarheader.scss +0 -71
  160. package/src/js/components/DateTimePicker/scss/_components.confirm.scss +0 -40
  161. package/src/js/components/DateTimePicker/scss/_components.details.scss +0 -20
  162. package/src/js/components/DateTimePicker/scss/_components.error.scss +0 -34
  163. package/src/js/components/DateTimePicker/scss/_components.loading.scss +0 -36
  164. package/src/js/components/DateTimePicker/scss/_components.slotslist.scss +0 -43
  165. package/src/js/components/DateTimePicker/scss/_components.timezoneselector.scss +0 -73
  166. package/src/js/components/DateTimePicker/scss/_generic.reset.scss +0 -18
  167. package/src/js/components/DateTimePicker/scss/_settings.colours.scss +0 -17
  168. package/src/js/components/DateTimePicker/scss/datetimepicker.scss +0 -5
  169. package/src/js/components/DateTimePicker/utils/calendar-keyboard.js +0 -109
  170. package/src/js/components/DateTimePicker/utils/calendar.js +0 -125
  171. package/src/js/components/DateTimePicker/utils/slots.js +0 -288
  172. package/src/js/components/SlotPicker/Confirm.js +0 -160
  173. package/src/js/components/SlotPicker/Days.js +0 -58
  174. package/src/js/components/SlotPicker/Slot.js +0 -72
  175. package/src/js/components/SlotPicker/SlotPicker.js +0 -292
  176. package/src/js/components/SlotPicker/Slots.js +0 -66
  177. package/src/js/components/SlotPicker/TimeSlots.js +0 -91
  178. package/src/js/components/generic/Button.js +0 -26
  179. package/src/js/components/generic/Container.js +0 -33
  180. package/src/js/components/generic/Error.js +0 -77
  181. package/src/js/components/generic/Loading.js +0 -51
  182. package/src/js/components/generic/LoadingSpinner.js +0 -30
  183. package/src/js/components/generic/ShadowScrollbars.js +0 -70
  184. package/src/js/components/generic/TimeZoneSelector.js +0 -158
  185. package/src/js/components/generic/TransitionSlide.js +0 -72
  186. package/src/js/contexts/i18n-context.js +0 -25
  187. package/src/js/contexts/log-context.js +0 -18
  188. package/src/js/contexts/tz-context.js +0 -18
  189. package/src/js/env.example.js +0 -8
  190. package/src/js/helpers/colors.js +0 -33
  191. package/src/js/helpers/comparators.AvailabilityViewer.js +0 -27
  192. package/src/js/helpers/connections.js +0 -370
  193. package/src/js/helpers/events.js +0 -166
  194. package/src/js/helpers/functional.js +0 -4
  195. package/src/js/helpers/generator.js +0 -107
  196. package/src/js/helpers/i18n.js +0 -153
  197. package/src/js/helpers/init.Agenda.js +0 -55
  198. package/src/js/helpers/init.AvailabilityRules.js +0 -195
  199. package/src/js/helpers/init.AvailabilityViewer.js +0 -215
  200. package/src/js/helpers/init.CalendarSync.js +0 -83
  201. package/src/js/helpers/init.DateTimePicker.js +0 -219
  202. package/src/js/helpers/init.SlotPicker.js +0 -89
  203. package/src/js/helpers/init.js +0 -308
  204. package/src/js/helpers/logging.js +0 -78
  205. package/src/js/helpers/mocks.js +0 -871
  206. package/src/js/helpers/slots.js +0 -340
  207. package/src/js/helpers/slots.rules.js +0 -220
  208. package/src/js/helpers/theming.js +0 -93
  209. package/src/js/helpers/translations.js +0 -42
  210. package/src/js/helpers/tz-list.js +0 -136
  211. package/src/js/helpers/utils.AvailabilityRules.js +0 -110
  212. package/src/js/helpers/utils.AvailabilityViewer.js +0 -789
  213. package/src/js/helpers/utils.CalendarSync.js +0 -199
  214. package/src/js/helpers/utils.js +0 -76
  215. package/src/js/hooks/useWindowSize.js +0 -20
  216. package/src/js/main.js +0 -133
  217. package/src/js/next.js +0 -37
  218. package/src/js/styles/_settings.utils.scss +0 -82
  219. package/src/js/styles/colors.js +0 -13
  220. package/src/js/styles/global.js +0 -49
  221. package/src/js/styles/utils.js +0 -81
  222. package/src/js/translations/de/agenda.json +0 -12
  223. package/src/js/translations/de/availability_rules.json +0 -18
  224. package/src/js/translations/de/availability_viewer.json +0 -14
  225. package/src/js/translations/de/calendar_sync.json +0 -14
  226. package/src/js/translations/de/core.json +0 -15
  227. package/src/js/translations/de/date_time_picker.json +0 -14
  228. package/src/js/translations/de/slot_picker.json +0 -9
  229. package/src/js/translations/de/time_zones.json +0 -135
  230. package/src/js/translations/en/agenda.json +0 -12
  231. package/src/js/translations/en/availability_rules.json +0 -18
  232. package/src/js/translations/en/availability_viewer.json +0 -14
  233. package/src/js/translations/en/calendar_sync.json +0 -14
  234. package/src/js/translations/en/core.json +0 -23
  235. package/src/js/translations/en/date_time_picker.json +0 -15
  236. package/src/js/translations/en/slot_picker.json +0 -9
  237. package/src/js/translations/en/time_zones.json +0 -17
  238. package/src/js/translations/es/agenda.json +0 -12
  239. package/src/js/translations/es/availability_rules.json +0 -18
  240. package/src/js/translations/es/availability_viewer.json +0 -14
  241. package/src/js/translations/es/calendar_sync.json +0 -14
  242. package/src/js/translations/es/core.json +0 -15
  243. package/src/js/translations/es/date_time_picker.json +0 -14
  244. package/src/js/translations/es/slot_picker.json +0 -9
  245. package/src/js/translations/es/time_zones.json +0 -203
  246. package/src/js/translations/fr/agenda.json +0 -12
  247. package/src/js/translations/fr/availability_rules.json +0 -18
  248. package/src/js/translations/fr/availability_viewer.json +0 -14
  249. package/src/js/translations/fr/calendar_sync.json +0 -14
  250. package/src/js/translations/fr/core.json +0 -15
  251. package/src/js/translations/fr/date_time_picker.json +0 -14
  252. package/src/js/translations/fr/slot_picker.json +0 -9
  253. package/src/js/translations/fr/time_zones.json +0 -161
  254. package/src/js/translations/fr-CA/agenda.json +0 -12
  255. package/src/js/translations/fr-CA/availability_rules.json +0 -18
  256. package/src/js/translations/fr-CA/availability_viewer.json +0 -14
  257. package/src/js/translations/fr-CA/calendar_sync.json +0 -14
  258. package/src/js/translations/fr-CA/core.json +0 -23
  259. package/src/js/translations/fr-CA/date_time_picker.json +0 -14
  260. package/src/js/translations/fr-CA/slot_picker.json +0 -9
  261. package/src/js/translations/fr-CA/time_zones.json +0 -163
  262. package/src/js/translations/it/agenda.json +0 -12
  263. package/src/js/translations/it/availability_rules.json +0 -18
  264. package/src/js/translations/it/availability_viewer.json +0 -14
  265. package/src/js/translations/it/calendar_sync.json +0 -14
  266. package/src/js/translations/it/core.json +0 -15
  267. package/src/js/translations/it/date_time_picker.json +0 -14
  268. package/src/js/translations/it/slot_picker.json +0 -9
  269. package/src/js/translations/it/time_zones.json +0 -126
  270. package/src/js/translations/ja/agenda.json +0 -12
  271. package/src/js/translations/ja/availability_rules.json +0 -18
  272. package/src/js/translations/ja/availability_viewer.json +0 -14
  273. package/src/js/translations/ja/calendar_sync.json +0 -14
  274. package/src/js/translations/ja/core.json +0 -15
  275. package/src/js/translations/ja/date_formats.json +0 -5
  276. package/src/js/translations/ja/date_time_picker.json +0 -14
  277. package/src/js/translations/ja/slot_picker.json +0 -9
  278. package/src/js/translations/ja/time_zones.json +0 -435
  279. package/src/js/translations/nl/agenda.json +0 -12
  280. package/src/js/translations/nl/availability_rules.json +0 -18
  281. package/src/js/translations/nl/availability_viewer.json +0 -14
  282. package/src/js/translations/nl/calendar_sync.json +0 -14
  283. package/src/js/translations/nl/core.json +0 -15
  284. package/src/js/translations/nl/date_time_picker.json +0 -14
  285. package/src/js/translations/nl/slot_picker.json +0 -9
  286. package/src/js/translations/nl/time_zones.json +0 -118
  287. package/src/js/translations/ru/agenda.json +0 -12
  288. package/src/js/translations/ru/availability_rules.json +0 -18
  289. package/src/js/translations/ru/availability_viewer.json +0 -14
  290. package/src/js/translations/ru/calendar_sync.json +0 -14
  291. package/src/js/translations/ru/core.json +0 -15
  292. package/src/js/translations/ru/date_time_picker.json +0 -14
  293. package/src/js/translations/ru/slot_picker.json +0 -9
  294. package/src/js/translations/ru/time_zones.json +0 -435
  295. package/src/js/translations/sv/agenda.json +0 -12
  296. package/src/js/translations/sv/availability_rules.json +0 -18
  297. package/src/js/translations/sv/availability_viewer.json +0 -14
  298. package/src/js/translations/sv/calendar_sync.json +0 -14
  299. package/src/js/translations/sv/core.json +0 -15
  300. package/src/js/translations/sv/date_time_picker.json +0 -14
  301. package/src/js/translations/sv/slot_picker.json +0 -9
  302. package/src/js/translations/sv/time_zones.json +0 -136
  303. package/tests/AvailabilityRules/AvailabilityRules.test.js +0 -39
  304. package/tests/AvailabilityRules/__snapshots__/AvailabilityRules.test.js.snap +0 -1045
  305. package/tests/AvailabilityViewer/Navigation.test.js +0 -130
  306. package/tests/AvailabilityViewer/contexts/page-reducer.test.js +0 -87
  307. package/tests/AvailabilityViewer/reducer.test.js +0 -73
  308. package/tests/CalendarSync/Active.test.js +0 -25
  309. package/tests/CalendarSync/AddToggle.test.js +0 -57
  310. package/tests/CalendarSync/EditToggle.test.js +0 -57
  311. package/tests/CalendarSync/Inactive.test.js +0 -26
  312. package/tests/CalendarSync/Pending.test.js +0 -25
  313. package/tests/CalendarSync/ProviderLogo.test.js +0 -95
  314. package/tests/CalendarSync/__snapshots__/Active.test.js.snap +0 -61
  315. package/tests/CalendarSync/__snapshots__/Inactive.test.js.snap +0 -78
  316. package/tests/CalendarSync/__snapshots__/Pending.test.js.snap +0 -90
  317. package/tests/CalendarSync/__snapshots__/ProviderLogo.test.js.snap +0 -267
  318. package/tests/CalendarSync/init.CalendarSync.test.js +0 -302
  319. package/tests/CalendarSync/mocks/theme.js +0 -14
  320. package/tests/CalendarSync/status-reducer.test.js +0 -435
  321. package/tests/DateTimePicker/SequencedSlotButton.test.js +0 -157
  322. package/tests/DateTimePicker/SlotButton.test.js +0 -118
  323. package/tests/DateTimePicker/contexts/status-reducer.test.js +0 -1036
  324. package/tests/DateTimePicker/dummy-data.js +0 -883
  325. package/tests/DateTimePicker/utils.test.js +0 -515
  326. package/tests/colors.test.js +0 -70
  327. package/tests/components/TimezoneSelector.test.js +0 -124
  328. package/tests/components/main.test.js +0 -203
  329. package/tests/components/rtl-utils.js +0 -32
  330. package/tests/connections.test.js +0 -684
  331. package/tests/events.test.js +0 -472
  332. package/tests/generator.test.js +0 -74
  333. package/tests/i18n.test.js +0 -255
  334. package/tests/init.Agenda.test.js +0 -122
  335. package/tests/init.AvailabilityRules.test.js +0 -279
  336. package/tests/init.AvailabilityViewer.test.js +0 -740
  337. package/tests/init.SlotPicker.test.js +0 -166
  338. package/tests/init.test.js +0 -231
  339. package/tests/logging.test.js +0 -235
  340. package/tests/mocks/i18n.js +0 -3
  341. package/tests/mocks/theme.js +0 -3
  342. package/tests/setupJest.js +0 -8
  343. package/tests/slots.rules.test.js +0 -195
  344. package/tests/slots.test.js +0 -278
  345. package/tests/utils.AvailabilityRules.test.js +0 -221
  346. package/tests/utils.AvailabilityViewer.test.js +0 -1800
  347. package/tests/utils.CalendarSync.test.js +0 -277
  348. package/tests/utils.test.js +0 -119
  349. package/webpack.config.js +0 -114
@@ -1,199 +0,0 @@
1
- import React from "react";
2
-
3
- export const parseAuthOptions = authorizationOptions => {
4
- return { ...authorizationOptions };
5
- };
6
-
7
- export const buildAuthUrl = ({ authUrl, authOptions, provider, appDomain, singleProfile }) => {
8
- let url;
9
-
10
- if (authUrl) {
11
- url = new URL(authUrl, "http://cronofy-default");
12
- } else {
13
- url = new URL(`${appDomain}/oauth/authorize`);
14
-
15
- // The "response_type" is always "code", so let's add that
16
- url.searchParams.append("response_type", "code");
17
- }
18
-
19
- // The "provider" is set internally, so let's add that
20
- url.searchParams.append("provider_name", provider);
21
-
22
- // If we're in singleProfile mode, set avoid_linking
23
- if (singleProfile) {
24
- url.searchParams.append("avoid_linking", true);
25
- }
26
-
27
- // Then add each of the authOptions as url params
28
- for (let param in authOptions) {
29
- if (authOptions.hasOwnProperty(param)) {
30
- url.searchParams.append(param, authOptions[param]);
31
- }
32
- }
33
- let link = url.href;
34
-
35
- if (link.startsWith("http://cronofy-default")) {
36
- link = link.replace("http://cronofy-default", "");
37
- }
38
- return link;
39
- };
40
-
41
- export const buildProviderData = (
42
- slug,
43
- name,
44
- auth,
45
- authUrl,
46
- appDomain,
47
- singleProfile,
48
- useBuildAuthUrl = buildAuthUrl
49
- ) => ({
50
- slug: slug,
51
- name: name,
52
- authlink: useBuildAuthUrl({
53
- authUrl,
54
- authOptions: auth,
55
- provider: slug,
56
- appDomain,
57
- singleProfile,
58
- }),
59
- });
60
-
61
- export const setupProviderData = (
62
- auth,
63
- appDomain,
64
- authUrl = false,
65
- singleProfile = false,
66
- useBuildProviderData = buildProviderData
67
- ) => [
68
- useBuildProviderData("google", "Google", auth, authUrl, appDomain, singleProfile),
69
- useBuildProviderData("apple", "iCloud", auth, authUrl, appDomain, singleProfile),
70
- useBuildProviderData("office365", "Office 365", auth, authUrl, appDomain, singleProfile),
71
- useBuildProviderData("exchange", "Exchange", auth, authUrl, appDomain, singleProfile),
72
- useBuildProviderData("live_connect", "Outlook.com", auth, authUrl, appDomain, singleProfile),
73
- ];
74
-
75
- export const getProviderIcon = (provider, fill) => {
76
- if (provider === "google") {
77
- if (fill) {
78
- return (
79
- <React.Fragment>
80
- <defs>
81
- <path d="M19.674 8.682h-9.318v3.863h5.364c-.5 2.455-2.591 3.864-5.364 3.864A5.897 5.897 0 0 1 4.447 10.5a5.897 5.897 0 0 1 5.91-5.91c1.408 0 2.68.5 3.68 1.32L16.948 3C15.174 1.455 12.902.5 10.357.5c-5.546 0-10 4.455-10 10s4.454 10 10 10c5 0 9.545-3.636 9.545-10 0-.59-.091-1.227-.228-1.818z" />
82
- <path
83
- d="M19.318 8.182H10v3.863h5.364c-.5 2.455-2.591 3.864-5.364 3.864A5.897 5.897 0 0 1 4.09 10 5.897 5.897 0 0 1 10 4.09c1.41 0 2.682.5 3.682 1.32L16.59 2.5C14.818.955 12.545 0 10 0 4.455 0 0 4.455 0 10s4.455 10 10 10c5 0 9.545-3.636 9.545-10 0-.59-.09-1.227-.227-1.818z"
84
- id="google_a"
85
- />
86
- <path
87
- d="M19.318 8.182H10v3.863h5.364c-.5 2.455-2.591 3.864-5.364 3.864A5.897 5.897 0 0 1 4.09 10 5.897 5.897 0 0 1 10 4.09c1.41 0 2.682.5 3.682 1.32L16.59 2.5C14.818.955 12.545 0 10 0 4.455 0 0 4.455 0 10s4.455 10 10 10c5 0 9.545-3.636 9.545-10 0-.59-.09-1.227-.227-1.818z"
88
- id="google_c"
89
- />
90
- <path
91
- d="M19.318 8.182H10v3.863h5.364c-.5 2.455-2.591 3.864-5.364 3.864A5.897 5.897 0 0 1 4.09 10 5.897 5.897 0 0 1 10 4.09c1.41 0 2.682.5 3.682 1.32L16.59 2.5C14.818.955 12.545 0 10 0 4.455 0 0 4.455 0 10s4.455 10 10 10c5 0 9.545-3.636 9.545-10 0-.59-.09-1.227-.227-1.818z"
92
- id="google_e"
93
- />
94
- <path
95
- d="M19.318 8.182H10v3.863h5.364c-.5 2.455-2.591 3.864-5.364 3.864A5.897 5.897 0 0 1 4.09 10 5.897 5.897 0 0 1 10 4.09c1.41 0 2.682.5 3.682 1.32L16.59 2.5C14.818.955 12.545 0 10 0 4.455 0 0 4.455 0 10s4.455 10 10 10c5 0 9.545-3.636 9.545-10 0-.59-.09-1.227-.227-1.818z"
96
- id="google_g"
97
- />
98
- </defs>
99
- <g fill="none" fillRule="evenodd">
100
- <g transform="translate(0 .498)">
101
- <mask id="google_b" fill="#fff">
102
- <use xlinkHref="#google_a" />
103
- </mask>
104
- <path
105
- fill="#FBBC05"
106
- mask="url(#google_b)"
107
- d="M-.91 15.91V4.09L6.819 10z"
108
- />
109
- </g>
110
- <g transform="translate(0 .498)">
111
- <mask id="google_d" fill="#fff">
112
- <use xlinkHref="#google_c" />
113
- </mask>
114
- <path
115
- fill="#EA4335"
116
- fillRule="nonzero"
117
- mask="url(#google_d)"
118
- d="M-.91 4.09L6.819 10 10 7.227l10.91-1.772V-.91H-.91z"
119
- />
120
- </g>
121
- <g transform="translate(0 .498)">
122
- <mask id="google_f" fill="#fff">
123
- <use xlinkHref="#google_e" />
124
- </mask>
125
- <path
126
- fill="#34A853"
127
- fillRule="nonzero"
128
- mask="url(#google_f)"
129
- d="M-.91 15.91L12.728 5.454l3.591.454L20.91-.909v21.818H-.909z"
130
- />
131
- </g>
132
- <g transform="translate(0 .498)">
133
- <mask id="google_h" fill="#fff">
134
- <use xlinkHref="#google_g" />
135
- </mask>
136
- <path
137
- fill="#4285F4"
138
- fillRule="nonzero"
139
- mask="url(#google_h)"
140
- d="M20.91 20.91L6.817 10 5 8.636l15.91-4.545z"
141
- />
142
- </g>
143
- </g>
144
- </React.Fragment>
145
- );
146
- } else {
147
- return (
148
- <path d="M19.674 8.682h-9.318v3.863h5.364c-.5 2.455-2.591 3.864-5.364 3.864A5.897 5.897 0 0 1 4.447 10.5a5.897 5.897 0 0 1 5.91-5.91c1.408 0 2.68.5 3.68 1.32L16.948 3C15.174 1.455 12.902.5 10.357.5c-5.546 0-10 4.455-10 10s4.454 10 10 10c5 0 9.545-3.636 9.545-10 0-.59-.091-1.227-.228-1.818z" />
149
- );
150
- }
151
- }
152
- if (provider === "live_connect") {
153
- if (fill) {
154
- return (
155
- <path
156
- fill="#0071C5"
157
- d="M11.591.54h1.385v4.633c2.4.004 4.797-.007 7.195 0 .472-.024 1.119.113 1.11.708.087 2.93.002 5.867.041 8.8.01.519-.007 1.336-.713 1.343-2.541.088-5.09.007-7.633.035v4.4H11.54c-3.53-.64-7.069-1.231-10.603-1.852C.934 13.203.934 7.799.934 2.397 4.487 1.776 8.041 1.173 11.591.54zm1.385 5.327v2.56c.906.845 1.8 1.705 2.72 2.536 1.528-1.434 3.053-2.87 4.586-4.299.255-.19.347-.488.391-.792-2.566-.011-5.13-.002-7.697-.005zm3.447 5.302c-.257.213-.512.54-.89.47-.917-.697-1.69-1.568-2.554-2.332-.005 2.018-.003 4.037-.003 6.057h7.644c-.002-2.715.005-5.431-.002-8.146-1.4 1.315-2.803 2.629-4.195 3.951zM5.9 6.715c-2.223.795-2.626 3.778-1.797 5.717.63 1.681 2.948 2.355 4.331 1.172 1.501-1.314 1.608-3.69.853-5.427-.554-1.263-2.08-1.955-3.387-1.462zm.225 1.392c.616-.294 1.387.005 1.677.614.463.917.46 2.036.157 3.004-.215.688-.968 1.256-1.697.985-.91-.288-1.186-1.367-1.196-2.212-.011-.876.19-1.967 1.059-2.39z"
158
- />
159
- );
160
- } else {
161
- return (
162
- <path d="M11.591.54h1.385v4.633c2.4.004 4.797-.007 7.195 0 .472-.024 1.119.113 1.11.708.087 2.93.002 5.867.041 8.8.01.519-.007 1.336-.713 1.343-2.541.088-5.09.007-7.633.035v4.4H11.54c-3.53-.64-7.069-1.231-10.603-1.852C.934 13.203.934 7.799.934 2.397 4.487 1.776 8.041 1.173 11.591.54zm1.385 5.327v2.56c.906.845 1.8 1.705 2.72 2.536 1.528-1.434 3.053-2.87 4.586-4.299.255-.19.347-.488.391-.792-2.566-.011-5.13-.002-7.697-.005zm3.447 5.302c-.257.213-.512.54-.89.47-.917-.697-1.69-1.568-2.554-2.332-.005 2.018-.003 4.037-.003 6.057h7.644c-.002-2.715.005-5.431-.002-8.146-1.4 1.315-2.803 2.629-4.195 3.951zM5.9 6.715c-2.223.795-2.626 3.778-1.797 5.717.63 1.681 2.948 2.355 4.331 1.172 1.501-1.314 1.608-3.69.853-5.427-.554-1.263-2.08-1.955-3.387-1.462zm.225 1.392c.616-.294 1.387.005 1.677.614.463.917.46 2.036.157 3.004-.215.688-.968 1.256-1.697.985-.91-.288-1.186-1.367-1.196-2.212-.011-.876.19-1.967 1.059-2.39z" />
163
- );
164
- }
165
- }
166
- if (provider === "apple") {
167
- return (
168
- <path d="M17.1 16.018c-.298.69-.652 1.326-1.061 1.91-.559.796-1.016 1.347-1.369 1.654-.546.502-1.131.76-1.758.774-.45 0-.993-.128-1.625-.388-.633-.258-1.216-.386-1.748-.386-.559 0-1.158.128-1.799.386-.641.26-1.158.395-1.554.409-.6.025-1.2-.24-1.798-.795-.382-.333-.86-.904-1.431-1.713-.614-.863-1.118-1.864-1.513-3.006-.424-1.233-.636-2.427-.636-3.582 0-1.324.286-2.466.86-3.423a5.04 5.04 0 0 1 1.799-1.82 4.84 4.84 0 0 1 2.432-.687c.478 0 1.104.148 1.882.438.776.291 1.274.439 1.492.439.164 0 .717-.173 1.655-.517.887-.32 1.636-.452 2.25-.4 1.662.135 2.91.79 3.741 1.97-1.487.901-2.222 2.163-2.207 3.781.013 1.26.47 2.31 1.37 3.143a4.5 4.5 0 0 0 1.368.897c-.11.319-.226.623-.35.916zM13.29 1.017c0 .988-.361 1.91-1.08 2.764-.87 1.016-1.92 1.602-3.058 1.51a3.076 3.076 0 0 1-.023-.375c0-.948.413-1.963 1.146-2.793.366-.42.832-.77 1.396-1.049.564-.274 1.097-.426 1.598-.452.014.132.02.264.02.395z" />
169
- );
170
- }
171
- if (provider === "office365") {
172
- if (fill) {
173
- return (
174
- <path
175
- fill="#DC3E15"
176
- d="M11.51 2.976c.031.192.039 14.085.01 14.388l-7.085-1.688V5.883L.788 4.458c-.007.005-.014.007-.02.011-.006.004-.013.01-.013.016-.004.036-.009.073-.009.11v11.863c.054.067.124.075.185.098l10.41 3.896c.12.045.229.067.362.028 1.904-.553 3.81-1.099 5.714-1.647l.095-.031V2.122l-1.632-.454c-1.381-.38-2.764-.758-4.144-1.142a.59.59 0 0 0-.386.014C7.937 1.8 4.523 3.058 1.11 4.316a.463.463 0 0 0-.19.113l10.59-1.453z"
177
- />
178
- );
179
- } else {
180
- return (
181
- <path d="M11.51 2.976c.031.192.039 14.085.01 14.388l-7.085-1.688V5.883L.788 4.458c-.007.005-.014.007-.02.011-.006.004-.013.01-.013.016-.004.036-.009.073-.009.11v11.863c.054.067.124.075.185.098l10.41 3.896c.12.045.229.067.362.028 1.904-.553 3.81-1.099 5.714-1.647l.095-.031V2.122l-1.632-.454c-1.381-.38-2.764-.758-4.144-1.142a.59.59 0 0 0-.386.014C7.937 1.8 4.523 3.058 1.11 4.316a.463.463 0 0 0-.19.113l10.59-1.453z" />
182
- );
183
- }
184
- }
185
- if (provider === "exchange") {
186
- if (fill) {
187
- return (
188
- <path
189
- fill="#0071C5"
190
- d="M11.772.701L.234 3.01v15.384l11.538 2.308v-20zm.77 4.616V6.71h.312c.078 0 .144-.006.144.072l1.01.985c.078.079.078.163 0 .24l-.385.385c-.078.079-.162.079-.24 0l-.457-.456h-.385v2.692c.691.616 1.313 1.067 1.082 1.298-.078.153-.544-.078-1.082-.385v2.765h.144c1.232-.923 2.242-2.614 2.549-2.308.384.307-2.074 3.558-2.38 3.558h-.313v1.298h6.683c.538 0 1.01-.472 1.01-1.01V6.326c0-.538-.472-1.01-1.01-1.01H12.54zm-4.688.312v1.683l-2.62.168v1.923l2.38-.096v1.707h-2.38v1.995l2.764.144v1.707l-4.375-.385v-8.39l4.23-.456zm8.149 1.082h2.62c.153 0 .216.063.216.216v2.476c0 .078.006.144-.072.144l-.985 1.01c-.079.078-.163.078-.24 0l-.385-.313c-.079-.078-.079-.162 0-.24l.456-.457v-1.61h-1.37c-1.232.922-2.241 2.614-2.548 2.307-.385-.306 2.001-3.455 2.308-3.533zm-.53 3.557c.61-.045 3.462 2.14 3.462 2.356v1.61h-.096v1.01c0 .154-.063.217-.216.217h-2.476c-.078 0-.144.006-.144-.072l-1.01-.986c-.078-.078-.078-.162 0-.24l.385-.385c.078-.078.162-.078.24 0l.457.457h1.61v-1.37c-.922-1.232-2.614-2.242-2.307-2.548a.141.141 0 0 1 .096-.049z"
191
- />
192
- );
193
- } else {
194
- return (
195
- <path d="M11.772.701L.234 3.01v15.384l11.538 2.308v-20zm.77 4.616V6.71h.312c.078 0 .144-.006.144.072l1.01.985c.078.079.078.163 0 .24l-.385.385c-.078.079-.162.079-.24 0l-.457-.456h-.385v2.692c.691.616 1.313 1.067 1.082 1.298-.078.153-.544-.078-1.082-.385v2.765h.144c1.232-.923 2.242-2.614 2.549-2.308.384.307-2.074 3.558-2.38 3.558h-.313v1.298h6.683c.538 0 1.01-.472 1.01-1.01V6.326c0-.538-.472-1.01-1.01-1.01H12.54zm-4.688.312v1.683l-2.62.168v1.923l2.38-.096v1.707h-2.38v1.995l2.764.144v1.707l-4.375-.385v-8.39l4.23-.456zm8.149 1.082h2.62c.153 0 .216.063.216.216v2.476c0 .078.006.144-.072.144l-.985 1.01c-.079.078-.163.078-.24 0l-.385-.313c-.079-.078-.079-.162 0-.24l.456-.457v-1.61h-1.37c-1.232.922-2.241 2.614-2.548 2.307-.385-.306 2.001-3.455 2.308-3.533zm-.53 3.557c.61-.045 3.462 2.14 3.462 2.356v1.61h-.096v1.01c0 .154-.063.217-.216.217h-2.476c-.078 0-.144.006-.144-.072l-1.01-.986c-.078-.078-.078-.162 0-.24l.385-.385c.078-.078.162-.078.24 0l.457.457h1.61v-1.37c-.922-1.232-2.614-2.242-2.307-2.548a.141.141 0 0 1 .096-.049z" />
196
- );
197
- }
198
- }
199
- };
@@ -1,76 +0,0 @@
1
- import { compose } from "./functional";
2
-
3
- // Convert object into map-able array of key/value objects
4
- export const objectToArray = (object, keepKey = true) => {
5
- let items = [];
6
- for (let key in object) {
7
- if (keepKey) {
8
- items.push({ key, value: object[key] });
9
- } else {
10
- items.push(object[key]);
11
- }
12
- }
13
- return items;
14
- };
15
-
16
- export const truncateString = (str, length = 240) =>
17
- str.length <= length - 2 ? str : `${str.slice(0, length)}...`;
18
-
19
- export const uniqueItems = array => {
20
- if (!Array.isArray(array)) {
21
- return [];
22
- }
23
-
24
- return [...new Set(array)];
25
- };
26
-
27
- export const objectIsEmpty = obj => {
28
- for (let key in obj) {
29
- if (obj.hasOwnProperty(key)) return false;
30
- }
31
- return true;
32
- };
33
-
34
- export const capitalizeFirstLetter = string => string.charAt(0).toUpperCase() + string.slice(1);
35
-
36
- export const replaceUnderscores = string => string.replace(/_/g, " ");
37
-
38
- export const turnSlugIntoString = slug => compose(capitalizeFirstLetter, replaceUnderscores)(slug);
39
-
40
- // Some tricksy ES7 destructuring... Essentially Array.filter() but for an object.
41
- // Might there be a more elegant way to do this?
42
- export const filterObject = (key, { [key]: _, ...rest }) => rest;
43
-
44
- export const hours = [
45
- "00:00",
46
- "01:00",
47
- "02:00",
48
- "03:00",
49
- "04:00",
50
- "05:00",
51
- "06:00",
52
- "07:00",
53
- "08:00",
54
- "09:00",
55
- "10:00",
56
- "11:00",
57
- "12:00",
58
- "13:00",
59
- "14:00",
60
- "15:00",
61
- "16:00",
62
- "17:00",
63
- "18:00",
64
- "19:00",
65
- "20:00",
66
- "21:00",
67
- "22:00",
68
- "23:00",
69
- "24:00",
70
- ];
71
-
72
- export const deepCopy = object => JSON.parse(JSON.stringify(object));
73
-
74
- export const humanizeTzName = tzid => tzid.split("/").slice(-1)[0].replace(/_/g, " ");
75
-
76
- export const nestedValue = (path, obj) => path.reduce((xs, x) => (xs && xs[x] ? xs[x] : null), obj);
@@ -1,20 +0,0 @@
1
- import { useState, useEffect } from "react";
2
-
3
- export const useWindowSize = () => {
4
- const [windowSize, setWindowSize] = useState(() => ({
5
- width: window.innerWidth,
6
- height: window.innerHeight,
7
- }));
8
-
9
- useEffect(() => {
10
- const onResize = () =>
11
- setWindowSize({
12
- width: window.innerWidth,
13
- height: window.innerHeight,
14
- });
15
- window.addEventListener("resize", onResize);
16
- return () => window.removeEventListener("resize", onResize);
17
- });
18
-
19
- return windowSize;
20
- };
package/src/js/main.js DELETED
@@ -1,133 +0,0 @@
1
- import React from "react";
2
-
3
- import * as InternalMoment from "moment-timezone";
4
-
5
- import AgendaApp from "./components/Agenda/Agenda";
6
- import SlotPickerApp from "./components/SlotPicker/SlotPicker";
7
- import AvailabilityViewerApp from "./components/AvailabilityViewer/AvailabilityViewer";
8
- import AvailabilityRulesApp from "./components/AvailabilityRules/AvailabilityRules";
9
- import CalendarSyncApp from "./components/CalendarSync/CalendarSync";
10
- import DateTimePickerApp from "./components/DateTimePicker/DateTimePicker";
11
-
12
- import { parseAgendaOptions } from "./helpers/init.Agenda";
13
- import { parseSlotPickerOptions } from "./helpers/init.SlotPicker";
14
- import { parseAvailabilityViewerOptions } from "./helpers/init.AvailabilityViewer";
15
- import { parseAvailabilityRulesOptions } from "./helpers/init.AvailabilityRules";
16
- import { parseCalendarSyncOptions } from "./helpers/init.CalendarSync";
17
- import { parseDateTimePickerOptions } from "./helpers/init.DateTimePicker";
18
-
19
- import { generateElementAPI } from "./helpers/generator";
20
- import { getNavigatorLanguage } from "./helpers/i18n";
21
-
22
- const LOCALE = getNavigatorLanguage();
23
-
24
- const globalOptionFallbacks = {
25
- locale: LOCALE,
26
- };
27
-
28
- export const moment = InternalMoment;
29
-
30
- export const Agenda = options => {
31
- // Make sure the correct props are passed to the component
32
- const renderAgenda = (key, options) => (
33
- <AgendaApp key={key} options={{ ...globalOptionFallbacks, ...options }} />
34
- );
35
- // Generate and render the component. The `return` is important
36
- // here, as it exposes the `update` method (which can be used
37
- // after the inital page-load).
38
- return generateElementAPI(renderAgenda, options, parseAgendaOptions, "Agenda View");
39
- };
40
-
41
- export const SlotPicker = options => {
42
- // Make sure the correct props are passed to the component
43
- const renderSlotPicker = (key, options) => (
44
- <SlotPickerApp key={key} options={{ ...globalOptionFallbacks, ...options }} view={"days"} />
45
- );
46
- // Generate and render the component. The `return` is important
47
- // here, as it exposes the `update` method (which can be used
48
- // after the inital page-load).
49
- return generateElementAPI(renderSlotPicker, options, parseSlotPickerOptions, "Slot Picker");
50
- };
51
-
52
- export const AvailabilityViewer = options => {
53
- let cb;
54
-
55
- // Make sure the correct props are passed to the component
56
- const renderElement = (key, options) => (
57
- <AvailabilityViewerApp
58
- key={key}
59
- options={{ ...globalOptionFallbacks, ...options }}
60
- error={options.error}
61
- eventCallback={ecb => (cb = ecb)}
62
- />
63
- );
64
- // Generate and render the component. The `return` is important
65
- // here, as it exposes the `update` method (which can be used
66
- // after the inital page-load).
67
-
68
- const elementApi = generateElementAPI(
69
- renderElement,
70
- options,
71
- parseAvailabilityViewerOptions,
72
- "Availability Viewer"
73
- );
74
-
75
- if (!elementApi) {
76
- return false;
77
- }
78
-
79
- return {
80
- ...elementApi,
81
- navigate: {
82
- next: () => cb("SET_NEXT_PAGE"),
83
- prev: () => cb("SET_PREV_PAGE"),
84
- },
85
- };
86
- };
87
-
88
- export const AvailabilityRules = options => {
89
- // Make sure the correct props are passed to the component
90
- const renderElement = (key, options) => (
91
- <AvailabilityRulesApp
92
- key={key}
93
- options={{ ...globalOptionFallbacks, ...options }}
94
- error={options.error}
95
- />
96
- );
97
- // Generate and render the component. The `return` is important
98
- // here, as it exposes the `update` method (which can be used
99
- // after the inital page-load).
100
- return generateElementAPI(
101
- renderElement,
102
- options,
103
- parseAvailabilityRulesOptions,
104
- "Availability Rules"
105
- );
106
- };
107
-
108
- export const CalendarSync = options => {
109
- // Make sure the correct props are passed to the component
110
- const renderElement = (key, options) => (
111
- <CalendarSyncApp key={key} options={options} error={options.error} />
112
- );
113
- // Generate and render the component. The `return` is important
114
- // here, as it exposes the `update` method (which can be used
115
- // after the inital page-load).
116
- return generateElementAPI(renderElement, options, parseCalendarSyncOptions, "Calendar Sync");
117
- };
118
-
119
- export const DateTimePicker = options => {
120
- // Make sure the correct props are passed to the component
121
- const renderDateTimePicker = (key, options) => (
122
- <DateTimePickerApp key={key} options={{ ...globalOptionFallbacks, ...options }} />
123
- );
124
- // Generate and render the component. The `return` is important
125
- // here, as it exposes the `update` method (which can be used
126
- // after the inital page-load).
127
- return generateElementAPI(
128
- renderDateTimePicker,
129
- options,
130
- parseDateTimePickerOptions,
131
- "Date Time Picker"
132
- );
133
- };
package/src/js/next.js DELETED
@@ -1,37 +0,0 @@
1
- import React from "react";
2
-
3
- import * as InternalMoment from "moment-timezone";
4
-
5
- import DateTimePickerApp from "./components/DateTimePicker/DateTimePicker";
6
- import { parseDateTimePickerOptions } from "./helpers/init.DateTimePicker";
7
-
8
- import { generateElementAPI } from "./helpers/generator";
9
- import { getNavigatorLanguage } from "./helpers/i18n";
10
-
11
- const LOCALE = getNavigatorLanguage();
12
-
13
- const globalOptionFallbacks = {
14
- locale: LOCALE,
15
- };
16
-
17
- export const moment = InternalMoment;
18
-
19
- export const DateTimePicker = options => {
20
- // Make sure the correct props are passed to the component
21
- const renderSlotPicker = (key, options) => (
22
- <DateTimePickerApp
23
- key={key}
24
- options={{ ...globalOptionFallbacks, ...options }}
25
- view={"days"}
26
- />
27
- );
28
- // Generate and render the component. The `return` is important
29
- // here, as it exposes the `update` method (which can be used
30
- // after the inital page-load).
31
- return generateElementAPI(
32
- renderSlotPicker,
33
- options,
34
- parseDateTimePickerOptions,
35
- "Date Time Picker"
36
- );
37
- };
@@ -1,82 +0,0 @@
1
- %buttonReset {
2
- appearance: none;
3
- background: none;
4
- display: inline-block;
5
- border: none;
6
- border-radius: 0;
7
- font-family: inherit;
8
- font-size: 1em;
9
- }
10
-
11
- %globals {
12
- box-sizing: border-box;
13
- *,
14
- *:before,
15
- *:after {
16
- box-sizing: inherit;
17
- }
18
-
19
- font-size: 16px;
20
-
21
- button {
22
- @extend %buttonReset;
23
- }
24
-
25
- a {
26
- text-decoration: none;
27
- transition: color 0.2s;
28
- }
29
-
30
- h1,
31
- h2,
32
- h3,
33
- h4,
34
- h5,
35
- h6,
36
- p {
37
- margin: 0;
38
- padding: 0;
39
- border: 0;
40
- font-size: 100%;
41
- font: inherit;
42
- vertical-align: baseline;
43
- }
44
-
45
- li {
46
- padding: 0;
47
- margin: 0;
48
- }
49
- }
50
-
51
- // Hiding things sensibly
52
- // Hide from both screenreaders and browsers
53
- %hidden {
54
- display: none !important;
55
- visibility: hidden;
56
- }
57
- // Hide only visually, but have it available for screenreaders
58
- %hidden--visually {
59
- border: 0;
60
- clip: rect(0 0 0 0);
61
- height: 1px;
62
- margin: -1px;
63
- overflow: hidden;
64
- padding: 0;
65
- position: absolute;
66
- width: 1px;
67
- // Extends the .hidden--visually class to allow the element to be focusable
68
- // when navigated to via the keyboard
69
- &.focusable:active,
70
- &.focusable:focus {
71
- clip: auto;
72
- height: auto;
73
- margin: 0;
74
- overflow: visible;
75
- position: static;
76
- width: auto;
77
- }
78
- }
79
- // Hide visually and from screenreaders, but maintain layout
80
- %invisible {
81
- visibility: hidden;
82
- }
@@ -1,13 +0,0 @@
1
- const colors = {
2
- calendars: ["#cdf0f4", "#ffc18d"],
3
- black: "#4D4D4D",
4
- blackSoft: "#666",
5
- white: "#fff",
6
- cream: "#efeeeb",
7
- grey: "#dad8d2",
8
- grey__dark: "#bbbbbb",
9
- primary: "#98F4F1",
10
- red: "red",
11
- };
12
-
13
- export default colors;
@@ -1,49 +0,0 @@
1
- import { css } from "@emotion/core";
2
-
3
- import * as utils from "./utils";
4
- import defaultColors from "../styles/colors";
5
-
6
- const globals = css`
7
- .visuallyhidden {
8
- ${utils.visuallyhidden};
9
- }
10
-
11
- // Global Box Sizing
12
- box-sizing: border-box;
13
- *,
14
- *:before,
15
- *:after {
16
- box-sizing: inherit;
17
- }
18
-
19
- font-size: 16px;
20
- // color: ${defaultColors.black};
21
-
22
- button {
23
- font-family: inherit;
24
- }
25
-
26
- a {
27
- text-decoration: none;
28
- // color: ${defaultColors.black};
29
- transition: color 0.2s;
30
- &:hover {
31
- // color: ${defaultColors.black};
32
- }
33
- }
34
- h1,
35
- h2,
36
- h3,
37
- h4,
38
- h5,
39
- h6 {
40
- margin: 0;
41
- padding: 0;
42
- border: 0;
43
- font-size: 100%;
44
- font: inherit;
45
- vertical-align: baseline;
46
- }
47
- `;
48
-
49
- export default globals;