@codecademy/gamut
68.2.268.2.3-alpha.93a7da.0
dist/DatePicker/DatePickerContext/index.js+
dist/DatePicker/DatePickerContext/index.jsNew file+18
Index: package/dist/DatePicker/DatePickerContext/index.js
===================================================================
--- package/dist/DatePicker/DatePickerContext/index.js
+++ package/dist/DatePicker/DatePickerContext/index.js
@@ -0,0 +1,18 @@
+import { useContext } from 'react';
+import { DatePickerContext } from './types';
+
+/** Provider component; DatePicker uses this to set the context value. */
+export const DatePickerProvider = DatePickerContext.Provider;
+
+/**
+ * Returns the DatePicker context value (shared state and callbacks).
+ * Must be used inside a DatePicker. For composed layouts, use this to get
+ * openCalendar, closeCalendar, isCalendarOpen, inputRef, calendarDialogId, etc.
+ */
+export const useDatePicker = () => {
+ const value = useContext(DatePickerContext);
+ if (value === null) {
+ throw new Error('useDatePickerContext must be used within a DatePicker.');
+ }
+ return value;
+};
\ No newline at end of file