@arkyn/components 3.0.1-beta.201 → 3.0.1-beta.204
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.
- package/LICENSE.txt +184 -1
- package/README.md +12 -1
- package/dist/components/alert/alertContainer/index.d.ts.map +1 -1
- package/dist/components/cardTab/cardTabContext.d.ts.map +1 -1
- package/dist/components/drawer/drawerContext.d.ts.map +1 -1
- package/dist/components/modal/modalContext.d.ts.map +1 -1
- package/dist/components/tab/tabContext.d.ts.map +1 -1
- package/dist/index.js +85 -62
- package/dist/index.js.map +1 -0
- package/dist/modules/components/alert/alertContainer/index.js +17 -15
- package/dist/modules/components/alert/alertContainer/index.js.map +1 -0
- package/dist/modules/components/alert/alertContainer/styles.css +3 -0
- package/dist/modules/components/alert/alertContent/index.js +2 -0
- package/dist/modules/components/alert/alertContent/index.js.map +1 -0
- package/dist/modules/components/alert/alertContent/styles.css +1 -0
- package/dist/modules/components/alert/alertDescription/index.js +2 -0
- package/dist/modules/components/alert/alertDescription/index.js.map +1 -0
- package/dist/modules/components/alert/alertDescription/styles.css +1 -0
- package/dist/modules/components/alert/alertIcon/index.js +2 -0
- package/dist/modules/components/alert/alertIcon/index.js.map +1 -0
- package/dist/modules/components/alert/alertIcon/styles.css +7 -0
- package/dist/modules/components/alert/alertTitle/index.js +2 -0
- package/dist/modules/components/alert/alertTitle/index.js.map +1 -0
- package/dist/modules/components/alert/alertTitle/styles.css +1 -0
- package/dist/modules/components/audioPlayer/index.js +2 -0
- package/dist/modules/components/audioPlayer/index.js.map +1 -0
- package/dist/modules/components/audioPlayer/styles.css +3 -0
- package/dist/modules/components/audioUpload/hasFileContent/index.js +2 -0
- package/dist/modules/components/audioUpload/hasFileContent/index.js.map +1 -0
- package/dist/modules/components/audioUpload/hasFileContent/styles.css +1 -0
- package/dist/modules/components/audioUpload/index.js +2 -0
- package/dist/modules/components/audioUpload/index.js.map +1 -0
- package/dist/modules/components/audioUpload/noFileContent/index.js +2 -0
- package/dist/modules/components/audioUpload/noFileContent/index.js.map +1 -0
- package/dist/modules/components/audioUpload/noFileContent/styles.css +1 -0
- package/dist/modules/components/audioUpload/styles.css +25 -0
- package/dist/modules/components/badge/index.js +2 -0
- package/dist/modules/components/badge/index.js.map +1 -0
- package/dist/modules/components/badge/styles.css +1 -0
- package/dist/modules/components/button/index.js +2 -0
- package/dist/modules/components/button/index.js.map +1 -0
- package/dist/modules/components/button/styles.css +1 -0
- package/dist/modules/components/calendar/_calendarProvider.js +2 -0
- package/dist/modules/components/calendar/_calendarProvider.js.map +1 -0
- package/dist/modules/components/calendar/_viewService.js +2 -0
- package/dist/modules/components/calendar/_viewService.js.map +1 -0
- package/dist/modules/components/calendar/calendarContainer/index.js +2 -0
- package/dist/modules/components/calendar/calendarContainer/index.js.map +1 -0
- package/dist/modules/components/calendar/calendarContainer/styles.css +1 -0
- package/dist/modules/components/calendar/calendarHeader/index.js +2 -0
- package/dist/modules/components/calendar/calendarHeader/index.js.map +1 -0
- package/dist/modules/components/calendar/calendarHeader/styles.css +1 -0
- package/dist/modules/components/calendar/calendarTableBody/index.js +2 -0
- package/dist/modules/components/calendar/calendarTableBody/index.js.map +1 -0
- package/dist/modules/components/calendar/calendarTableBody/styles.css +1 -0
- package/dist/modules/components/calendar/calendarTableContainer/index.js +2 -0
- package/dist/modules/components/calendar/calendarTableContainer/index.js.map +1 -0
- package/dist/modules/components/calendar/calendarTableContainer/styles.css +1 -0
- package/dist/modules/components/calendar/calendarTableHeader/index.js +2 -0
- package/dist/modules/components/calendar/calendarTableHeader/index.js.map +1 -0
- package/dist/modules/components/calendar/calendarTableHeader/styles.css +1 -0
- package/dist/modules/components/calendar/calendarTableTd/index.js +2 -0
- package/dist/modules/components/calendar/calendarTableTd/index.js.map +1 -0
- package/dist/modules/components/calendar/calendarTableTd/styles.css +1 -0
- package/dist/modules/components/calendar/index.js +2 -0
- package/dist/modules/components/calendar/index.js.map +1 -0
- package/dist/modules/components/calendar/styles.css +33 -0
- package/dist/modules/components/cardTab/cardTabButton/index.js +2 -0
- package/dist/modules/components/cardTab/cardTabButton/index.js.map +1 -0
- package/dist/modules/components/cardTab/cardTabButton/styles.css +1 -0
- package/dist/modules/components/cardTab/cardTabContainer/index.js +2 -0
- package/dist/modules/components/cardTab/cardTabContainer/index.js.map +1 -0
- package/dist/modules/components/cardTab/cardTabContainer/styles.css +1 -0
- package/dist/modules/components/cardTab/cardTabContext.js +20 -9
- package/dist/modules/components/cardTab/cardTabContext.js.map +1 -0
- package/dist/modules/components/checkbox/index.js +2 -0
- package/dist/modules/components/checkbox/index.js.map +1 -0
- package/dist/modules/components/checkbox/styles.css +7 -0
- package/dist/modules/components/clientOnly.js +2 -0
- package/dist/modules/components/clientOnly.js.map +1 -0
- package/dist/modules/components/currencyInput/index.js +2 -0
- package/dist/modules/components/currencyInput/index.js.map +1 -0
- package/dist/modules/components/currencyInput/style.css +1 -0
- package/dist/modules/components/currencyInput/styles.css +7 -0
- package/dist/modules/components/divider/index.js +2 -0
- package/dist/modules/components/divider/index.js.map +1 -0
- package/dist/modules/components/divider/styles.css +1 -0
- package/dist/modules/components/drawer/drawerContainer/index.js +2 -0
- package/dist/modules/components/drawer/drawerContainer/index.js.map +1 -0
- package/dist/modules/components/drawer/drawerContainer/styles.css +1 -0
- package/dist/modules/components/drawer/drawerContext.js +12 -9
- package/dist/modules/components/drawer/drawerContext.js.map +1 -0
- package/dist/modules/components/drawer/drawerHeader/index.js +2 -0
- package/dist/modules/components/drawer/drawerHeader/index.js.map +1 -0
- package/dist/modules/components/drawer/drawerHeader/styles.css +1 -0
- package/dist/modules/components/facebookPixel/facebookPixel.client.js +2 -0
- package/dist/modules/components/facebookPixel/facebookPixel.client.js.map +1 -0
- package/dist/modules/components/facebookPixel/index.js +2 -0
- package/dist/modules/components/facebookPixel/index.js.map +1 -0
- package/dist/modules/components/facebookPixel/pixel.js +2 -0
- package/dist/modules/components/facebookPixel/pixel.js.map +1 -0
- package/dist/modules/components/fieldError/index.js +2 -0
- package/dist/modules/components/fieldError/index.js.map +1 -0
- package/dist/modules/components/fieldError/styles.css +1 -0
- package/dist/modules/components/fieldLabel/index.js +2 -0
- package/dist/modules/components/fieldLabel/index.js.map +1 -0
- package/dist/modules/components/fieldLabel/styles.css +1 -0
- package/dist/modules/components/fieldWrapper/index.js +2 -0
- package/dist/modules/components/fieldWrapper/index.js.map +1 -0
- package/dist/modules/components/fieldWrapper/styles.css +1 -0
- package/dist/modules/components/fileUpload/hasFileContent/index.js +2 -0
- package/dist/modules/components/fileUpload/hasFileContent/index.js.map +1 -0
- package/dist/modules/components/fileUpload/hasFileContent/styles.css +1 -0
- package/dist/modules/components/fileUpload/index.js +2 -0
- package/dist/modules/components/fileUpload/index.js.map +1 -0
- package/dist/modules/components/fileUpload/noFileContent/index.js +2 -0
- package/dist/modules/components/fileUpload/noFileContent/index.js.map +1 -0
- package/dist/modules/components/fileUpload/noFileContent/styles.css +1 -0
- package/dist/modules/components/fileUpload/styles.css +19 -0
- package/dist/modules/components/fullCalendar/_fullCalendarProvider.js +2 -0
- package/dist/modules/components/fullCalendar/_fullCalendarProvider.js.map +1 -0
- package/dist/modules/components/fullCalendar/_viewService.js +2 -0
- package/dist/modules/components/fullCalendar/_viewService.js.map +1 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarContainer/index.js +2 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarContainer/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarContainer/styles.css +1 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarEvent/index.js +2 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarEvent/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarEvent/styles.css +1 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarRow/index.js +2 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarRow/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/dayCalendar/dayCalendarRow/styles.css +1 -0
- package/dist/modules/components/fullCalendar/dayCalendar/index.js +2 -0
- package/dist/modules/components/fullCalendar/dayCalendar/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/fullCalendarContainer/index.js +2 -0
- package/dist/modules/components/fullCalendar/fullCalendarContainer/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/fullCalendarContainer/styles.css +1 -0
- package/dist/modules/components/fullCalendar/fullCalendarHeader/index.js +2 -0
- package/dist/modules/components/fullCalendar/fullCalendarHeader/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/fullCalendarHeader/styles.css +1 -0
- package/dist/modules/components/fullCalendar/index.js +2 -0
- package/dist/modules/components/fullCalendar/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/index.js +2 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarEvent/index.js +2 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarEvent/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarEvent/styles.css +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableBody/index.js +2 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableBody/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableBody/styles.css +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableContainer/index.js +2 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableContainer/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableContainer/styles.css +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableHeader/index.js +2 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableHeader/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableHeader/styles.css +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableTd/index.js +2 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableTd/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableTd/styles.css +1 -0
- package/dist/modules/components/fullCalendar/styles.css +35 -0
- package/dist/modules/components/fullCalendar/weekCalendar/index.js +2 -0
- package/dist/modules/components/fullCalendar/weekCalendar/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarEvent/index.js +2 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarEvent/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarEvent/styles.css +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableBody/index.js +2 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableBody/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableBody/styles.css +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableContainer/index.js +2 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableContainer/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableContainer/styles.css +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableHeader/index.js +2 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableHeader/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableHeader/styles.css +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableTd/index.js +2 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableTd/index.js.map +1 -0
- package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableTd/styles.css +1 -0
- package/dist/modules/components/googleAnalytics/googleAnalytics.client.js +2 -0
- package/dist/modules/components/googleAnalytics/googleAnalytics.client.js.map +1 -0
- package/dist/modules/components/googleAnalytics/googleAnalytics.js +2 -0
- package/dist/modules/components/googleAnalytics/googleAnalytics.js.map +1 -0
- package/dist/modules/components/googleAnalytics/index.js +2 -0
- package/dist/modules/components/googleAnalytics/index.js.map +1 -0
- package/dist/modules/components/googleAnalytics/snippets/generateGAElements.js +2 -0
- package/dist/modules/components/googleAnalytics/snippets/generateGAElements.js.map +1 -0
- package/dist/modules/components/googleTagManager/googleTagManager.client.js +2 -0
- package/dist/modules/components/googleTagManager/googleTagManager.client.js.map +1 -0
- package/dist/modules/components/googleTagManager/googleTagManager.js +2 -0
- package/dist/modules/components/googleTagManager/googleTagManager.js.map +1 -0
- package/dist/modules/components/googleTagManager/index.js +2 -0
- package/dist/modules/components/googleTagManager/index.js.map +1 -0
- package/dist/modules/components/googleTagManager/snippets/appendToDataLayer.js +2 -0
- package/dist/modules/components/googleTagManager/snippets/appendToDataLayer.js.map +1 -0
- package/dist/modules/components/googleTagManager/snippets/generateGTMElements.js +2 -0
- package/dist/modules/components/googleTagManager/snippets/generateGTMElements.js.map +1 -0
- package/dist/modules/components/iconButton/index.js +2 -0
- package/dist/modules/components/iconButton/index.js.map +1 -0
- package/dist/modules/components/iconButton/styles.css +1 -0
- package/dist/modules/components/imageUpload/hasFileContent/index.js +2 -0
- package/dist/modules/components/imageUpload/hasFileContent/index.js.map +1 -0
- package/dist/modules/components/imageUpload/hasFileContent/styles.css +1 -0
- package/dist/modules/components/imageUpload/index.js +2 -0
- package/dist/modules/components/imageUpload/index.js.map +1 -0
- package/dist/modules/components/imageUpload/noFileContent/index.js +2 -0
- package/dist/modules/components/imageUpload/noFileContent/index.js.map +1 -0
- package/dist/modules/components/imageUpload/noFileContent/styles.css +1 -0
- package/dist/modules/components/imageUpload/styles.css +17 -0
- package/dist/modules/components/input/index.js +2 -0
- package/dist/modules/components/input/index.js.map +1 -0
- package/dist/modules/components/input/style.css +1 -0
- package/dist/modules/components/input/styles.css +7 -0
- package/dist/modules/components/mapView/index.js +2 -0
- package/dist/modules/components/mapView/index.js.map +1 -0
- package/dist/modules/components/mapView/mapView.client.js +2 -0
- package/dist/modules/components/mapView/mapView.client.js.map +1 -0
- package/dist/modules/components/mapView/mapbox.css +1 -0
- package/dist/modules/components/mapView/styles.css +1 -0
- package/dist/modules/components/maskedInput/index.js +2 -0
- package/dist/modules/components/maskedInput/index.js.map +1 -0
- package/dist/modules/components/maskedInput/style.css +1 -0
- package/dist/modules/components/maskedInput/styles.css +7 -0
- package/dist/modules/components/modal/modalContainer/index.js +2 -0
- package/dist/modules/components/modal/modalContainer/index.js.map +1 -0
- package/dist/modules/components/modal/modalContainer/styles.css +1 -0
- package/dist/modules/components/modal/modalContext.js +12 -9
- package/dist/modules/components/modal/modalContext.js.map +1 -0
- package/dist/modules/components/modal/modalFooter/index.js +2 -0
- package/dist/modules/components/modal/modalFooter/index.js.map +1 -0
- package/dist/modules/components/modal/modalFooter/styles.css +1 -0
- package/dist/modules/components/modal/modalHeader/index.js +2 -0
- package/dist/modules/components/modal/modalHeader/index.js.map +1 -0
- package/dist/modules/components/modal/modalHeader/styles.css +1 -0
- package/dist/modules/components/multiSelect/index.js +2 -0
- package/dist/modules/components/multiSelect/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectChevron/index.js +2 -0
- package/dist/modules/components/multiSelect/multiSelectChevron/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectChevron/styles.css +1 -0
- package/dist/modules/components/multiSelect/multiSelectContainer/index.js +2 -0
- package/dist/modules/components/multiSelect/multiSelectContainer/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectContainer/styles.css +1 -0
- package/dist/modules/components/multiSelect/multiSelectContent/index.js +2 -0
- package/dist/modules/components/multiSelect/multiSelectContent/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectContent/styles.css +1 -0
- package/dist/modules/components/multiSelect/multiSelectMark/index.js +2 -0
- package/dist/modules/components/multiSelect/multiSelectMark/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectMark/styles.css +1 -0
- package/dist/modules/components/multiSelect/multiSelectOption/index.js +2 -0
- package/dist/modules/components/multiSelect/multiSelectOption/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectOption/styles.css +1 -0
- package/dist/modules/components/multiSelect/multiSelectOptionsContainer/index.js +2 -0
- package/dist/modules/components/multiSelect/multiSelectOptionsContainer/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectOptionsContainer/styles.css +1 -0
- package/dist/modules/components/multiSelect/multiSelectOverlay/index.js +2 -0
- package/dist/modules/components/multiSelect/multiSelectOverlay/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectOverlay/styles.css +1 -0
- package/dist/modules/components/multiSelect/multiSelectSpinner/index.js +2 -0
- package/dist/modules/components/multiSelect/multiSelectSpinner/index.js.map +1 -0
- package/dist/modules/components/multiSelect/multiSelectSpinner/styles.css +1 -0
- package/dist/modules/components/multiSelect/styles.css +31 -0
- package/dist/modules/components/pagination/chevronButton/index.js +2 -0
- package/dist/modules/components/pagination/chevronButton/index.js.map +1 -0
- package/dist/modules/components/pagination/chevronButton/styles.css +1 -0
- package/dist/modules/components/pagination/currentButton/index.js +2 -0
- package/dist/modules/components/pagination/currentButton/index.js.map +1 -0
- package/dist/modules/components/pagination/currentButton/styles.css +1 -0
- package/dist/modules/components/pagination/index.js +2 -0
- package/dist/modules/components/pagination/index.js.map +1 -0
- package/dist/modules/components/pagination/pageButton/index.js +2 -0
- package/dist/modules/components/pagination/pageButton/index.js.map +1 -0
- package/dist/modules/components/pagination/pageButton/styles.css +1 -0
- package/dist/modules/components/pagination/paginationService.js +2 -0
- package/dist/modules/components/pagination/paginationService.js.map +1 -0
- package/dist/modules/components/pagination/spread/index.js +2 -0
- package/dist/modules/components/pagination/spread/index.js.map +1 -0
- package/dist/modules/components/pagination/spread/styles.css +1 -0
- package/dist/modules/components/pagination/styles.css +9 -0
- package/dist/modules/components/phoneInput/index.js +2 -0
- package/dist/modules/components/phoneInput/index.js.map +1 -0
- package/dist/modules/components/phoneInput/phoneInputContainer/index.js +2 -0
- package/dist/modules/components/phoneInput/phoneInputContainer/index.js.map +1 -0
- package/dist/modules/components/phoneInput/phoneInputContainer/styles.css +1 -0
- package/dist/modules/components/phoneInput/phoneInputCountriesOverlay/index.js +2 -0
- package/dist/modules/components/phoneInput/phoneInputCountriesOverlay/index.js.map +1 -0
- package/dist/modules/components/phoneInput/phoneInputCountriesOverlay/styles.css +1 -0
- package/dist/modules/components/phoneInput/phoneInputCountryOption/index.js +2 -0
- package/dist/modules/components/phoneInput/phoneInputCountryOption/index.js.map +1 -0
- package/dist/modules/components/phoneInput/phoneInputCountryOption/styles.css +1 -0
- package/dist/modules/components/phoneInput/phoneInputCountryOptionsContainer/index.js +2 -0
- package/dist/modules/components/phoneInput/phoneInputCountryOptionsContainer/index.js.map +1 -0
- package/dist/modules/components/phoneInput/phoneInputCountryOptionsContainer/styles.css +1 -0
- package/dist/modules/components/phoneInput/phoneInputCountrySelector/index.js +2 -0
- package/dist/modules/components/phoneInput/phoneInputCountrySelector/index.js.map +1 -0
- package/dist/modules/components/phoneInput/phoneInputCountrySelector/styles.css +1 -0
- package/dist/modules/components/phoneInput/phoneInputMask/index.js +2 -0
- package/dist/modules/components/phoneInput/phoneInputMask/index.js.map +1 -0
- package/dist/modules/components/phoneInput/phoneInputMask/style.css +1 -0
- package/dist/modules/components/phoneInput/styles.css +19 -0
- package/dist/modules/components/popover/index.js +2 -0
- package/dist/modules/components/popover/index.js.map +1 -0
- package/dist/modules/components/popover/styles.css +1 -0
- package/dist/modules/components/radio/radioBox/index.js +2 -0
- package/dist/modules/components/radio/radioBox/index.js.map +1 -0
- package/dist/modules/components/radio/radioBox/styles.css +1 -0
- package/dist/modules/components/radio/radioContext.js +2 -0
- package/dist/modules/components/radio/radioContext.js.map +1 -0
- package/dist/modules/components/radio/radioGroup/index.js +2 -0
- package/dist/modules/components/radio/radioGroup/index.js.map +1 -0
- package/dist/modules/components/radio/radioGroup/styles.css +7 -0
- package/dist/modules/components/richText/blockButton/index.js +2 -0
- package/dist/modules/components/richText/blockButton/index.js.map +1 -0
- package/dist/modules/components/richText/blockButton/styles.css +1 -0
- package/dist/modules/components/richText/element/index.js +2 -0
- package/dist/modules/components/richText/element/index.js.map +1 -0
- package/dist/modules/components/richText/element/styles.css +1 -0
- package/dist/modules/components/richText/index.js +2 -0
- package/dist/modules/components/richText/index.js.map +1 -0
- package/dist/modules/components/richText/insertImage/index.js +2 -0
- package/dist/modules/components/richText/insertImage/index.js.map +1 -0
- package/dist/modules/components/richText/insertImage/styles.css +1 -0
- package/dist/modules/components/richText/insertVideo/index.js +2 -0
- package/dist/modules/components/richText/insertVideo/index.js.map +1 -0
- package/dist/modules/components/richText/insertVideo/styles.css +1 -0
- package/dist/modules/components/richText/leaf/index.js +2 -0
- package/dist/modules/components/richText/leaf/index.js.map +1 -0
- package/dist/modules/components/richText/markButton/index.js +2 -0
- package/dist/modules/components/richText/markButton/index.js.map +1 -0
- package/dist/modules/components/richText/markButton/styles.css +1 -0
- package/dist/modules/components/richText/styles.css +67 -0
- package/dist/modules/components/richText/toolbar/index.js +2 -0
- package/dist/modules/components/richText/toolbar/index.js.map +1 -0
- package/dist/modules/components/richText/toolbar/styles.css +1 -0
- package/dist/modules/components/searchPlaces.js +2 -0
- package/dist/modules/components/searchPlaces.js.map +1 -0
- package/dist/modules/components/select/index.js +2 -0
- package/dist/modules/components/select/index.js.map +1 -0
- package/dist/modules/components/select/selectChevron/index.js +2 -0
- package/dist/modules/components/select/selectChevron/index.js.map +1 -0
- package/dist/modules/components/select/selectChevron/styles.css +1 -0
- package/dist/modules/components/select/selectContainer/index.js +2 -0
- package/dist/modules/components/select/selectContainer/index.js.map +1 -0
- package/dist/modules/components/select/selectContainer/styles.css +1 -0
- package/dist/modules/components/select/selectContent/index.js +2 -0
- package/dist/modules/components/select/selectContent/index.js.map +1 -0
- package/dist/modules/components/select/selectContent/styles.css +1 -0
- package/dist/modules/components/select/selectOption/index.js +2 -0
- package/dist/modules/components/select/selectOption/index.js.map +1 -0
- package/dist/modules/components/select/selectOption/styles.css +1 -0
- package/dist/modules/components/select/selectOptionsContainer/index.js +2 -0
- package/dist/modules/components/select/selectOptionsContainer/index.js.map +1 -0
- package/dist/modules/components/select/selectOptionsContainer/styles.css +1 -0
- package/dist/modules/components/select/selectOverlay/index.js +2 -0
- package/dist/modules/components/select/selectOverlay/index.js.map +1 -0
- package/dist/modules/components/select/selectOverlay/styles.css +1 -0
- package/dist/modules/components/select/selectSpinner/index.js +2 -0
- package/dist/modules/components/select/selectSpinner/index.js.map +1 -0
- package/dist/modules/components/select/selectSpinner/styles.css +1 -0
- package/dist/modules/components/select/styles.css +29 -0
- package/dist/modules/components/slider/index.js +2 -0
- package/dist/modules/components/slider/index.js.map +1 -0
- package/dist/modules/components/slider/styles.css +1 -0
- package/dist/modules/components/switch/index.js +2 -0
- package/dist/modules/components/switch/index.js.map +1 -0
- package/dist/modules/components/switch/styles.css +7 -0
- package/dist/modules/components/tab/tabButton/index.js +2 -0
- package/dist/modules/components/tab/tabButton/index.js.map +1 -0
- package/dist/modules/components/tab/tabButton/styles.css +1 -0
- package/dist/modules/components/tab/tabContainer/index.js +2 -0
- package/dist/modules/components/tab/tabContainer/index.js.map +1 -0
- package/dist/modules/components/tab/tabContainer/styles.css +1 -0
- package/dist/modules/components/tab/tabContext.js +20 -9
- package/dist/modules/components/tab/tabContext.js.map +1 -0
- package/dist/modules/components/table/tableBody/index.js +2 -0
- package/dist/modules/components/table/tableBody/index.js.map +1 -0
- package/dist/modules/components/table/tableBody/styles.css +1 -0
- package/dist/modules/components/table/tableCaption/index.js +2 -0
- package/dist/modules/components/table/tableCaption/index.js.map +1 -0
- package/dist/modules/components/table/tableCaption/styles.css +1 -0
- package/dist/modules/components/table/tableContainer/index.js +2 -0
- package/dist/modules/components/table/tableContainer/index.js.map +1 -0
- package/dist/modules/components/table/tableContainer/styles.css +1 -0
- package/dist/modules/components/table/tableFooter/index.js +2 -0
- package/dist/modules/components/table/tableFooter/index.js.map +1 -0
- package/dist/modules/components/table/tableFooter/styles.css +1 -0
- package/dist/modules/components/table/tableHeader/index.js +2 -0
- package/dist/modules/components/table/tableHeader/index.js.map +1 -0
- package/dist/modules/components/table/tableHeader/styles.css +1 -0
- package/dist/modules/components/textarea/index.js +2 -0
- package/dist/modules/components/textarea/index.js.map +1 -0
- package/dist/modules/components/textarea/styles.css +7 -0
- package/dist/modules/components/tooltip/index.js +2 -0
- package/dist/modules/components/tooltip/index.js.map +1 -0
- package/dist/modules/components/tooltip/styles.css +1 -0
- package/dist/modules/hooks/useAutomation.js +2 -0
- package/dist/modules/hooks/useAutomation.js.map +1 -0
- package/dist/modules/hooks/useDrawer.js +2 -0
- package/dist/modules/hooks/useDrawer.js.map +1 -0
- package/dist/modules/hooks/useForm.js +2 -0
- package/dist/modules/hooks/useForm.js.map +1 -0
- package/dist/modules/hooks/useHydrated.js +2 -0
- package/dist/modules/hooks/useHydrated.js.map +1 -0
- package/dist/modules/hooks/useModal.js +2 -0
- package/dist/modules/hooks/useModal.js.map +1 -0
- package/dist/modules/hooks/useScopedParams.js +2 -0
- package/dist/modules/hooks/useScopedParams.js.map +1 -0
- package/dist/modules/hooks/useScrollLock.js +2 -0
- package/dist/modules/hooks/useScrollLock.js.map +1 -0
- package/dist/modules/hooks/useSearchAutomation.js +2 -0
- package/dist/modules/hooks/useSearchAutomation.js.map +1 -0
- package/dist/modules/hooks/useSlider.js +2 -0
- package/dist/modules/hooks/useSlider.js.map +1 -0
- package/dist/modules/hooks/useToast.js +2 -0
- package/dist/modules/hooks/useToast.js.map +1 -0
- package/dist/modules/providers/drawerProvider.js +2 -0
- package/dist/modules/providers/drawerProvider.js.map +1 -0
- package/dist/modules/providers/formProvider.js +11 -9
- package/dist/modules/providers/formProvider.js.map +1 -0
- package/dist/modules/providers/modalProvider.js +2 -0
- package/dist/modules/providers/modalProvider.js.map +1 -0
- package/dist/modules/providers/placesProvider.js +2 -0
- package/dist/modules/providers/placesProvider.js.map +1 -0
- package/dist/modules/providers/toastProvider.js +41 -38
- package/dist/modules/providers/toastProvider.js.map +1 -0
- package/dist/modules/services/extractTextFromNode.js +2 -0
- package/dist/modules/services/extractTextFromNode.js.map +1 -0
- package/dist/modules/services/fieldTemplate.js +2 -0
- package/dist/modules/services/fieldTemplate.js.map +1 -0
- package/dist/modules/services/iconRenderer.js +2 -0
- package/dist/modules/services/iconRenderer.js.map +1 -0
- package/dist/modules/services/isBlockActive.js +2 -0
- package/dist/modules/services/isBlockActive.js.map +1 -0
- package/dist/modules/services/isMarkActive.js +2 -0
- package/dist/modules/services/isMarkActive.js.map +1 -0
- package/dist/modules/services/maskCurrencyValues.js +2 -0
- package/dist/modules/services/maskCurrencyValues.js.map +1 -0
- package/dist/modules/services/toHtml.js +2 -0
- package/dist/modules/services/toHtml.js.map +1 -0
- package/dist/modules/services/toRichTextValue.js +2 -0
- package/dist/modules/services/toRichTextValue.js.map +1 -0
- package/dist/modules/services/toggleBlock.js +2 -0
- package/dist/modules/services/toggleBlock.js.map +1 -0
- package/dist/modules/services/toggleMark.js +2 -0
- package/dist/modules/services/toggleMark.js.map +1 -0
- package/dist/modules/templates/badResponses.js +2 -0
- package/dist/modules/templates/badResponses.js.map +1 -0
- package/dist/modules/templates/richTextTemplates.js +2 -0
- package/dist/modules/templates/richTextTemplates.js.map +1 -0
- package/dist/modules/templates/successResponses.js +2 -0
- package/dist/modules/templates/successResponses.js.map +1 -0
- package/dist/modules/utils/phoneInputUtilities.js +2 -0
- package/dist/modules/utils/phoneInputUtilities.js.map +1 -0
- package/dist/modules/utils/richTextUtilities.js +2 -0
- package/dist/modules/utils/richTextUtilities.js.map +1 -0
- package/dist/providers/formProvider.d.ts.map +1 -1
- package/dist/providers/toastProvider.d.ts.map +1 -1
- package/dist/style.css +0 -1
- package/package.json +637 -8
- package/dist/modules/index.js +0 -72
- package/dist/modules/style.css +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_fullCalendarProvider.js","names":[],"sources":["../../../../src/components/fullCalendar/_fullCalendarProvider.tsx"],"sourcesContent":["import { createContext, type ReactNode, useContext, useState } from \"react\";\nimport {\n\ttype FullCalendarMatrix,\n\ttype FullCalendarWeekMatrix,\n\tViewService,\n} from \"./_viewService\";\n\ntype FullCalendarEvent = {\n\tinitialDate: Date;\n\tendDate?: Date;\n\ttitle: string;\n\t// biome-ignore lint/suspicious/noExplicitAny: intentional\n\tdata?: any;\n\tscheme?: \"primary\" | \"success\" | \"warning\" | \"danger\" | \"info\";\n\t// biome-ignore lint/suspicious/noExplicitAny: intentional\n\tonClick?: (data: any) => void;\n};\n\ntype BlockTimestamp = {\n\tinitialDate: Date;\n\tendDate: Date;\n};\n\ntype FullCalendarContextProps = {\n\tevents: FullCalendarEvent[];\n\tblockedTimestamps: BlockTimestamp[];\n\tviewDate: Date;\n\tlistHours: number[];\n\tlistWeek: string[];\n\tlistMonthlyMatrix: FullCalendarMatrix;\n\tlistWeeklyMatrix: FullCalendarWeekMatrix;\n\tnextMonth: () => void;\n\tnextWeek: () => void;\n\tnextDay: () => void;\n\tpreviousMonth: () => void;\n\tpreviousWeek: () => void;\n\tpreviousDay: () => void;\n\tonClickDate?: (date: Date) => void;\n};\n\ntype FullCalendarProviderProps = {\n\tevents: FullCalendarEvent[];\n\tblockedTimestamps: BlockTimestamp[];\n\tchildren: ReactNode;\n\tlanguage?: string;\n\tviewValue?: Date;\n\tdefaultViewValue?: Date;\n\tonChangeView?: (date: Date) => void;\n\tonClickDate?: (date: Date) => void;\n};\n\nconst FullCalendarContext = createContext({} as FullCalendarContextProps);\n\nfunction useFullCalendar() {\n\treturn useContext(FullCalendarContext);\n}\n\nfunction FullCalendarProvider(props: FullCalendarProviderProps) {\n\tconst {\n\t\tblockedTimestamps,\n\t\tchildren,\n\t\tevents,\n\t\tdefaultViewValue = new Date(),\n\t\tlanguage = \"pt-BR\",\n\t\tonChangeView,\n\t\tonClickDate,\n\t\tviewValue,\n\t} = props;\n\n\tconst viewService = new ViewService();\n\tconst listHours = viewService.listHours([8, 18]);\n\n\tconst [rawViewDate, rawSetViewDate] = useState(defaultViewValue);\n\tconst viewDate = viewValue || rawViewDate;\n\n\tfunction setViewDate(date: Date) {\n\t\tif (onChangeView) onChangeView(date);\n\t\trawSetViewDate(date);\n\t}\n\n\treturn (\n\t\t<FullCalendarContext.Provider\n\t\t\tvalue={{\n\t\t\t\tevents,\n\t\t\t\tblockedTimestamps,\n\t\t\t\tviewDate,\n\t\t\t\tlistHours,\n\t\t\t\tlistWeek: viewService.listWeek(viewDate, language),\n\t\t\t\tlistMonthlyMatrix: viewService.listMonthlyMatrix(viewDate),\n\t\t\t\tlistWeeklyMatrix: viewService.listWeeklyMatrix(viewDate, listHours),\n\t\t\t\tnextMonth: () => viewService.nextMonth(viewDate, setViewDate),\n\t\t\t\tnextWeek: () => viewService.nextWeek(viewDate, setViewDate),\n\t\t\t\tnextDay: () => viewService.nextDay(viewDate, setViewDate),\n\t\t\t\tpreviousMonth: () => viewService.previousMonth(viewDate, setViewDate),\n\t\t\t\tpreviousWeek: () => viewService.previousWeek(viewDate, setViewDate),\n\t\t\t\tpreviousDay: () => viewService.previousDay(viewDate, setViewDate),\n\t\t\t\tonClickDate,\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</FullCalendarContext.Provider>\n\t);\n}\n\nexport { FullCalendarProvider, useFullCalendar };\n"],"mappings":";;;;AAmDA,IAAM,IAAsB,EAAc,CAAC,CAA6B;AAExE,SAAS,IAAkB;CAC1B,OAAO,EAAW,CAAmB;AACtC;AAEA,SAAS,EAAqB,GAAkC;CAC/D,IAAM,EACL,sBACA,aACA,WACA,sCAAmB,IAAI,KAAK,GAC5B,cAAW,SACX,iBACA,gBACA,iBACG,GAEE,IAAc,IAAI,EAAY,GAC9B,IAAY,EAAY,UAAU,CAAC,GAAG,EAAE,CAAC,GAEzC,CAAC,GAAa,KAAkB,EAAS,CAAgB,GACzD,IAAW,KAAa;CAE9B,SAAS,EAAY,GAAY;EAEhC,AADI,KAAc,EAAa,CAAI,GACnC,EAAe,CAAI;CACpB;CAEA,OACC,kBAAC,EAAoB,UAArB;EACC,OAAO;GACN;GACA;GACA;GACA;GACA,UAAU,EAAY,SAAS,GAAU,CAAQ;GACjD,mBAAmB,EAAY,kBAAkB,CAAQ;GACzD,kBAAkB,EAAY,iBAAiB,GAAU,CAAS;GAClE,iBAAiB,EAAY,UAAU,GAAU,CAAW;GAC5D,gBAAgB,EAAY,SAAS,GAAU,CAAW;GAC1D,eAAe,EAAY,QAAQ,GAAU,CAAW;GACxD,qBAAqB,EAAY,cAAc,GAAU,CAAW;GACpE,oBAAoB,EAAY,aAAa,GAAU,CAAW;GAClE,mBAAmB,EAAY,YAAY,GAAU,CAAW;GAChE;EACD;EAEC;CAC4B,CAAA;AAEhC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_viewService.js","names":[],"sources":["../../../../src/components/fullCalendar/_viewService.ts"],"sourcesContent":["import { formatToCapitalizeFirstWordLetter } from \"@arkyn/shared\";\n\ntype FullCalendarCell = {\n\tday: number;\n\tmonth: number;\n\tyear: number;\n\tdayOwner: \"previous\" | \"current\" | \"next\";\n};\n\ntype FullCalendarMatrix = FullCalendarCell[][];\ntype FullCalendarWeekCell = FullCalendarCell & {\n\ttimeInMinutes: number;\n};\n\ntype FullCalendarWeekMatrix = FullCalendarWeekCell[][];\n\nclass ViewService {\n\tcapitalize(text: string) {\n\t\treturn formatToCapitalizeFirstWordLetter(text);\n\t}\n\n\tlistHours(range: [number, number]) {\n\t\tconst [startHour, endHour] = range;\n\t\tconst hours = [];\n\n\t\tfor (\n\t\t\tlet timeInMinutes = startHour * 60;\n\t\t\ttimeInMinutes <= endHour * 60;\n\t\t\ttimeInMinutes += 30\n\t\t) {\n\t\t\thours.push(timeInMinutes);\n\t\t}\n\n\t\treturn hours;\n\t}\n\n\tformatHourLabel(timeInMinutes: number) {\n\t\tconst hour = Math.floor(timeInMinutes / 60);\n\t\tconst minutes = timeInMinutes % 60;\n\n\t\treturn `${String(hour).padStart(2, \"0\")}:${String(minutes).padStart(2, \"0\")}`;\n\t}\n\n\tgetStartOfWeek(viewDate: Date) {\n\t\tconst firstDayOfWeek = new Date(viewDate);\n\t\tfirstDayOfWeek.setHours(0, 0, 0, 0);\n\t\tfirstDayOfWeek.setDate(firstDayOfWeek.getDate() - firstDayOfWeek.getDay());\n\n\t\treturn firstDayOfWeek;\n\t}\n\n\tlistWeek(viewDate: Date, language: string) {\n\t\tconst weekDays = [];\n\t\tconst firstDayOfWeek = this.getStartOfWeek(viewDate);\n\n\t\tfor (let i = 0; i < 7; i++) {\n\t\t\tconst day = new Date(firstDayOfWeek);\n\t\t\tday.setDate(firstDayOfWeek.getDate() + i);\n\t\t\tconst dayName = day.toLocaleDateString(language, {\n\t\t\t\tweekday: \"short\",\n\t\t\t});\n\t\t\tweekDays.push(dayName);\n\t\t}\n\n\t\treturn weekDays;\n\t}\n\n\tlistWeeklyMatrix(viewDate: Date, hours: number[]): FullCalendarWeekMatrix {\n\t\tconst firstDayOfWeek = this.getStartOfWeek(viewDate);\n\t\tconst viewMonth = viewDate.getMonth();\n\n\t\treturn hours.map((hour) => {\n\t\t\treturn Array.from({ length: 7 }, (_, index) => {\n\t\t\t\tconst cellDate = new Date(firstDayOfWeek);\n\t\t\t\tcellDate.setDate(firstDayOfWeek.getDate() + index);\n\n\t\t\t\tlet dayOwner: FullCalendarCell[\"dayOwner\"] = \"current\";\n\n\t\t\t\tif (\n\t\t\t\t\tcellDate.getMonth() < viewMonth ||\n\t\t\t\t\tcellDate.getFullYear() < viewDate.getFullYear()\n\t\t\t\t) {\n\t\t\t\t\tdayOwner = \"previous\";\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tcellDate.getMonth() > viewMonth ||\n\t\t\t\t\tcellDate.getFullYear() > viewDate.getFullYear()\n\t\t\t\t) {\n\t\t\t\t\tdayOwner = \"next\";\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\tday: cellDate.getDate(),\n\t\t\t\t\tmonth: cellDate.getMonth(),\n\t\t\t\t\tyear: cellDate.getFullYear(),\n\t\t\t\t\tdayOwner,\n\t\t\t\t\ttimeInMinutes: hour,\n\t\t\t\t};\n\t\t\t});\n\t\t});\n\t}\n\n\tlistMonthlyMatrix(viewDate: Date) {\n\t\tconst year = viewDate.getFullYear();\n\t\tconst monthIndex = viewDate.getMonth();\n\n\t\tconst firstDayOfMonth = new Date(year, monthIndex, 1);\n\t\tconst firstWeekday = firstDayOfMonth.getDay();\n\n\t\tconst daysInCurrentMonth = new Date(year, monthIndex + 1, 0).getDate();\n\t\tconst daysInPreviousMonth = new Date(year, monthIndex, 0).getDate();\n\n\t\tconst totalCells = Math.ceil((firstWeekday + daysInCurrentMonth) / 7) * 7;\n\n\t\tconst weeks: FullCalendarMatrix = [];\n\t\tlet currentMonthDay = 1;\n\t\tlet nextMonthDay = 1;\n\n\t\tfor (let i = 0; i < totalCells; i++) {\n\t\t\tconst weekIndex = Math.floor(i / 7);\n\t\t\tif (!weeks[weekIndex]) weeks[weekIndex] = [];\n\n\t\t\tif (i < firstWeekday) {\n\t\t\t\tconst day = daysInPreviousMonth - (firstWeekday - i - 1);\n\t\t\t\tconst month = monthIndex === 0 ? 11 : monthIndex - 1;\n\t\t\t\tconst cellYear = monthIndex === 0 ? year - 1 : year;\n\n\t\t\t\tweeks[weekIndex].push({\n\t\t\t\t\tday,\n\t\t\t\t\tmonth,\n\t\t\t\t\tyear: cellYear,\n\t\t\t\t\tdayOwner: \"previous\",\n\t\t\t\t});\n\t\t\t} else if (currentMonthDay <= daysInCurrentMonth) {\n\t\t\t\tweeks[weekIndex].push({\n\t\t\t\t\tday: currentMonthDay,\n\t\t\t\t\tmonth: monthIndex,\n\t\t\t\t\tyear: year,\n\t\t\t\t\tdayOwner: \"current\",\n\t\t\t\t});\n\t\t\t\tcurrentMonthDay++;\n\t\t\t} else {\n\t\t\t\tconst month = monthIndex === 11 ? 0 : monthIndex + 1;\n\t\t\t\tconst cellYear = monthIndex === 11 ? year + 1 : year;\n\n\t\t\t\tweeks[weekIndex].push({\n\t\t\t\t\tday: nextMonthDay,\n\t\t\t\t\tmonth,\n\t\t\t\t\tyear: cellYear,\n\t\t\t\t\tdayOwner: \"next\",\n\t\t\t\t});\n\t\t\t\tnextMonthDay++;\n\t\t\t}\n\t\t}\n\n\t\treturn weeks;\n\t}\n\n\tnextMonth(viewDate: Date, setViewDate: (date: Date) => void) {\n\t\tconst nextViewDate = new Date(viewDate);\n\t\tnextViewDate.setMonth(nextViewDate.getMonth() + 1);\n\t\tsetViewDate(nextViewDate);\n\t}\n\n\tnextWeek(viewDate: Date, setViewDate: (date: Date) => void) {\n\t\tconst nextViewDate = new Date(viewDate);\n\t\tnextViewDate.setDate(nextViewDate.getDate() + 7);\n\t\tsetViewDate(nextViewDate);\n\t}\n\n\tnextDay(viewDate: Date, setViewDate: (date: Date) => void) {\n\t\tconst nextViewDate = new Date(viewDate);\n\t\tnextViewDate.setDate(nextViewDate.getDate() + 1);\n\t\tsetViewDate(nextViewDate);\n\t}\n\n\tpreviousMonth(viewDate: Date, setViewDate: (date: Date) => void) {\n\t\tconst nextViewDate = new Date(viewDate);\n\t\tnextViewDate.setMonth(nextViewDate.getMonth() - 1);\n\t\tsetViewDate(nextViewDate);\n\t}\n\n\tpreviousWeek(viewDate: Date, setViewDate: (date: Date) => void) {\n\t\tconst nextViewDate = new Date(viewDate);\n\t\tnextViewDate.setDate(nextViewDate.getDate() - 7);\n\t\tsetViewDate(nextViewDate);\n\t}\n\n\tpreviousDay(viewDate: Date, setViewDate: (date: Date) => void) {\n\t\tconst nextViewDate = new Date(viewDate);\n\t\tnextViewDate.setDate(nextViewDate.getDate() - 1);\n\t\tsetViewDate(nextViewDate);\n\t}\n}\n\nexport { type FullCalendarMatrix, type FullCalendarWeekMatrix, ViewService };\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/dayCalendar/dayCalendarContainer/index.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport \"./styles.css\";\n\ntype DayCalendarContainerProps = {\n\tchildren: ReactNode;\n};\n\nfunction DayCalendarContainer({ children }: DayCalendarContainerProps) {\n\treturn <div className=\"arkynDayCalendarContainer\">{children}</div>;\n}\n\nexport { DayCalendarContainer };\n"],"mappings":";;;AAOA,SAAS,EAAqB,EAAE,eAAuC;CACtE,OAAO,kBAAC,OAAD;EAAK,WAAU;EAA6B;CAAc,CAAA;AAClE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynDayCalendarContainer{background-color:var(--background-foreground);border:1px solid var(--border);border-radius:8px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/dayCalendar/dayCalendarEvent/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport \"./styles.css\";\n\ntype DayCalendarEventProps = {\n\ttimeInMinutes: number;\n};\n\nconst SLOT_DURATION_MINUTES = 30;\nconst OVERLAP_OFFSET_PX = 205;\n\nfunction DayCalendarEvent(props: DayCalendarEventProps) {\n\tconst { events, viewDate } = useFullCalendar();\n\n\tconst day = viewDate.getDate();\n\tconst month = viewDate.getMonth();\n\tconst year = viewDate.getFullYear();\n\n\tconst dayEvents = events\n\t\t.map((event, sourceIndex) => ({ event, sourceIndex }))\n\t\t.filter(({ event }) => {\n\t\t\treturn (\n\t\t\t\tevent.initialDate.getDate() === day &&\n\t\t\t\tevent.initialDate.getMonth() === month &&\n\t\t\t\tevent.initialDate.getFullYear() === year\n\t\t\t);\n\t\t})\n\t\t.sort((a, b) => {\n\t\t\tconst startA = a.event.initialDate.getTime();\n\t\t\tconst startB = b.event.initialDate.getTime();\n\n\t\t\tif (startA !== startB) return startA - startB;\n\n\t\t\tconst endA =\n\t\t\t\ta.event.endDate?.getTime() ?? startA + SLOT_DURATION_MINUTES * 60_000;\n\t\t\tconst endB =\n\t\t\t\tb.event.endDate?.getTime() ?? startB + SLOT_DURATION_MINUTES * 60_000;\n\n\t\t\tif (endA !== endB) return endA - endB;\n\t\t\treturn a.sourceIndex - b.sourceIndex;\n\t\t});\n\n\tconst dayEventOrderBySourceIndex = new Map(\n\t\tdayEvents.map((item, orderIndex) => [item.sourceIndex, orderIndex]),\n\t);\n\n\tconst filteredEvents = dayEvents.filter(({ event }) => {\n\t\tconst dayHour = Math.floor(props.timeInMinutes / 60);\n\t\tconst dayMinute = props.timeInMinutes % 60;\n\n\t\tfunction isEventInInterval() {\n\t\t\tconst eventHour = event.initialDate.getHours();\n\t\t\tconst eventMinute = event.initialDate.getMinutes();\n\n\t\t\tif (eventHour !== dayHour) return false;\n\t\t\tif (dayMinute === 0) return eventMinute < 30 && eventMinute >= 0;\n\t\t\tif (dayMinute === 30) return eventMinute >= 30 && eventMinute < 60;\n\t\t}\n\n\t\treturn (\n\t\t\tisEventInInterval() &&\n\t\t\tevent.initialDate.getDate() === day &&\n\t\t\tevent.initialDate.getMonth() === month &&\n\t\t\tevent.initialDate.getFullYear() === year\n\t\t);\n\t});\n\n\tif (filteredEvents.length === 0) return null;\n\n\tfunction makeEventKey(index: number, sourceIndex: number) {\n\t\treturn `${day}-${month}-${year}-${sourceIndex}-${index}`;\n\t}\n\n\tfunction makeHour(date: Date) {\n\t\tconst hours = date.getHours();\n\t\tconst minutes = date.getMinutes();\n\n\t\tif (minutes === 0) return `${hours}h`;\n\t\treturn `${hours}h${minutes}`;\n\t}\n\n\tfunction getEventRangeInMinutes(event: {\n\t\tinitialDate: Date;\n\t\tendDate?: Date;\n\t}) {\n\t\tconst startMinutes =\n\t\t\tevent.initialDate.getHours() * 60 + event.initialDate.getMinutes();\n\n\t\tconst endMinutes = event.endDate\n\t\t\t? event.endDate.getHours() * 60 + event.endDate.getMinutes()\n\t\t\t: startMinutes + SLOT_DURATION_MINUTES;\n\n\t\treturn {\n\t\t\tstartMinutes,\n\t\t\tendMinutes: Math.max(endMinutes, startMinutes + 1),\n\t\t};\n\t}\n\n\tfunction countOverlappingPreviousEvents(\n\t\tcurrentEvent: { initialDate: Date; endDate?: Date },\n\t\tsourceIndex: number,\n\t) {\n\t\tconst current = getEventRangeInMinutes(currentEvent);\n\t\tconst currentOrderIndex = dayEventOrderBySourceIndex.get(sourceIndex);\n\n\t\tif (currentOrderIndex == null) return 0;\n\n\t\treturn dayEvents.reduce((count, item, orderIndex) => {\n\t\t\tif (orderIndex >= currentOrderIndex) return count;\n\n\t\t\tconst candidate = getEventRangeInMinutes(item.event);\n\t\t\tconst intersects =\n\t\t\t\tcandidate.startMinutes < current.endMinutes &&\n\t\t\t\tcandidate.endMinutes > current.startMinutes;\n\n\t\t\tif (!intersects) return count;\n\t\t\treturn count + 1;\n\t\t}, 0);\n\t}\n\n\tfunction getEventStyle(\n\t\tevent: { initialDate: Date; endDate?: Date },\n\t\tsourceIndex: number,\n\t) {\n\t\tconst { startMinutes, endMinutes } = getEventRangeInMinutes(event);\n\t\tconst startOffsetInCell = startMinutes - props.timeInMinutes;\n\n\t\tconst durationInMinutes = Math.max(endMinutes - startMinutes, 1);\n\t\tconst top = (startOffsetInCell / SLOT_DURATION_MINUTES) * 100;\n\t\tconst height = (durationInMinutes / SLOT_DURATION_MINUTES) * 100;\n\t\tconst overlapOffset =\n\t\t\tcountOverlappingPreviousEvents(event, sourceIndex) * OVERLAP_OFFSET_PX;\n\n\t\treturn {\n\t\t\ttop: `${top}%`,\n\t\t\theight: `${height}%`,\n\t\t\tleft: `${overlapOffset}px`,\n\t\t};\n\t}\n\n\t// biome-ignore lint/suspicious/noExplicitAny: intentional\n\tfunction handleEventClick(event: React.MouseEvent, eventData: any) {\n\t\tevent.stopPropagation();\n\t\teventData.onClick?.(eventData.data);\n\t}\n\n\treturn filteredEvents.map(({ event, sourceIndex }, index) => (\n\t\t<div\n\t\t\tkey={makeEventKey(index, sourceIndex)}\n\t\t\tclassName={`arkynDayCalendarEvent ${event?.scheme || \"primary\"}`}\n\t\t\tstyle={getEventStyle(event, sourceIndex)}\n\t\t\tonClick={(e) => handleEventClick(e, event)}\n\t\t>\n\t\t\t<strong>\n\t\t\t\t{makeHour(event.initialDate)}{\" \"}\n\t\t\t\t{event?.endDate && `- ${makeHour(event.endDate)}`}\n\t\t\t</strong>\n\t\t\t<p>{event.title}</p>\n\t\t</div>\n\t));\n}\n\nexport { DayCalendarEvent };\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynDayCalendarEvent{z-index:2;box-sizing:border-box;border-radius:8px;flex-direction:column;gap:4px;min-width:200px;max-width:200px;min-height:28px;padding:8px;display:flex;position:absolute;left:0;right:0;overflow:hidden}.arkynDayCalendarEvent:not(:first-child){box-shadow:0 0 2px #0000001a}.arkynDayCalendarEvent:hover{z-index:3}.arkynDayCalendarEvent:before{content:" ";border-radius:8px 0 0 8px;width:4px;position:absolute;top:0;bottom:0;left:0}.arkynDayCalendarEvent.primary{background-color:rgb(var(--spotlight-primary-foreground))}.arkynDayCalendarEvent.primary:before{background-color:rgb(var(--spotlight-primary))}.arkynDayCalendarEvent.danger{background-color:rgb(var(--spotlight-danger-foreground))}.arkynDayCalendarEvent.danger:before{background-color:rgb(var(--spotlight-danger))}.arkynDayCalendarEvent.warning{background-color:rgb(var(--spotlight-warning-foreground))}.arkynDayCalendarEvent.warning:before{background-color:rgb(var(--spotlight-warning))}.arkynDayCalendarEvent.info{background-color:rgb(var(--spotlight-info-foreground))}.arkynDayCalendarEvent.info:before{background-color:rgb(var(--spotlight-info))}.arkynDayCalendarEvent.success{background-color:rgb(var(--spotlight-success-foreground))}.arkynDayCalendarEvent.success:before{background-color:rgb(var(--spotlight-success))}.arkynDayCalendarEvent>strong{letter-spacing:0%;color:var(--text-heading);font-size:14px;font-weight:600}.arkynDayCalendarEvent>p{letter-spacing:0%;color:var(--text-heading);font-size:12px;font-weight:400}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/dayCalendar/dayCalendarRow/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport { ViewService } from \"../../_viewService\";\nimport { DayCalendarEvent } from \"../dayCalendarEvent\";\nimport \"./styles.css\";\n\ntype DayCalendarRowProps = {\n\thour: number;\n\ttimeInMinutes: number;\n};\n\nfunction DayCalendarRow({ hour, timeInMinutes }: DayCalendarRowProps) {\n\tconst viewService = new ViewService();\n\tconst { blockedTimestamps, viewDate, onClickDate } = useFullCalendar();\n\n\tfunction isBlocked() {\n\t\treturn blockedTimestamps.some(\n\t\t\t(timestamp) =>\n\t\t\t\tviewDate >= timestamp.initialDate && viewDate <= timestamp.endDate,\n\t\t);\n\t}\n\n\tfunction handleClick(event: React.MouseEvent) {\n\t\tevent.stopPropagation();\n\t\tif (isBlocked()) return;\n\n\t\tif (onClickDate) {\n\t\t\tconst date = new Date(viewDate);\n\t\t\tdate.setHours(0, timeInMinutes, 0, 0);\n\t\t\tonClickDate(date);\n\t\t}\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={`arkynDayCalendarRow ${isBlocked() ? \"blocked\" : \"\"}`}\n\t\t\tdata-time={timeInMinutes}\n\t\t\tonClick={handleClick}\n\t\t>\n\t\t\t<p>{viewService.formatHourLabel(hour)}</p>\n\n\t\t\t<div className=\"arkynDayCalendarRowContent\">\n\t\t\t\t<DayCalendarEvent timeInMinutes={timeInMinutes} />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport { DayCalendarRow, type DayCalendarRowProps };\n"],"mappings":";;;;;;AAUA,SAAS,EAAe,EAAE,SAAM,oBAAsC;CACrE,IAAM,IAAc,IAAI,EAAY,GAC9B,EAAE,sBAAmB,aAAU,mBAAgB,EAAgB;CAErE,SAAS,IAAY;EACpB,OAAO,EAAkB,MACvB,MACA,KAAY,EAAU,eAAe,KAAY,EAAU,OAC7D;CACD;CAEA,SAAS,EAAY,GAAyB;EAC7C,MAAM,gBAAgB,GAClB,GAAU,KAEV,GAAa;GAChB,IAAM,IAAO,IAAI,KAAK,CAAQ;GAE9B,AADA,EAAK,SAAS,GAAG,GAAe,GAAG,CAAC,GACpC,EAAY,CAAI;EACjB;CACD;CAEA,OACC,kBAAC,OAAD;EACC,WAAW,uBAAuB,EAAU,IAAI,YAAY;EAC5D,aAAW;EACX,SAAS;YAHV,CAKC,kBAAC,KAAD,EAAA,UAAI,EAAY,gBAAgB,CAAI,EAAK,CAAA,GAEzC,kBAAC,OAAD;GAAK,WAAU;aACd,kBAAC,GAAD,EAAiC,iBAAgB,CAAA;EAC7C,CAAA,CACD;;AAEP"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynDayCalendarRow{align-items:stretch;display:flex;position:relative}.arkynDayCalendarRow:first-child{border-top-right-radius:14px}.arkynDayCalendarRow:last-child{border-bottom-right-radius:14px}.arkynDayCalendarRow.blocked{background-color:rgb(var(--spotlight-danger-foreground))}.arkynDayCalendarRow.blocked:before{content:" ";background-color:rgb(var(--spotlight-danger));width:4px;position:absolute;top:0;bottom:0;left:0}.arkynDayCalendarRow:first-child:before{border-top-left-radius:14px}.arkynDayCalendarRow.blocked:hover{cursor:not-allowed}.arkynDayCalendarRow:not(:first-child){border-top:1px solid var(--border)}.arkynDayCalendarRow>p{letter-spacing:0%;color:var(--text-body);align-items:center;padding:24px 20px;font-size:14px;font-weight:400;line-height:24px;display:flex}.arkynDayCalendarRow .arkynDayCalendarRowContent{flex:1;min-height:100%;margin:3px;position:relative}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/fullCalendar/dayCalendar/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../_fullCalendarProvider\";\nimport { DayCalendarContainer } from \"./dayCalendarContainer\";\nimport { DayCalendarRow } from \"./dayCalendarRow\";\n\nfunction DayCalendar() {\n\tconst { listHours } = useFullCalendar();\n\treturn (\n\t\t<DayCalendarContainer>\n\t\t\t{listHours.map((hour) => (\n\t\t\t\t<DayCalendarRow key={hour} hour={hour} timeInMinutes={hour} />\n\t\t\t))}\n\t\t</DayCalendarContainer>\n\t);\n}\n\nexport { DayCalendar };\n"],"mappings":";;;;;AAIA,SAAS,IAAc;CACtB,IAAM,EAAE,iBAAc,EAAgB;CACtC,OACC,kBAAC,GAAD,EAAA,UACE,EAAU,KAAK,MACf,kBAAC,GAAD;EAAiC;EAAM,eAAe;CAAO,GAAxC,CAAwC,CAC7D,EACoB,CAAA;AAExB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/fullCalendar/fullCalendarContainer/index.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport \"./styles.css\";\n\ntype FullCalendarContainerProps = {\n\tchildren?: ReactNode;\n};\n\nfunction FullCalendarContainer({ children }: FullCalendarContainerProps) {\n\treturn <div className=\"arkynFullCalendarContainer\">{children}</div>;\n}\n\nexport { FullCalendarContainer };\n"],"mappings":";;;AAOA,SAAS,EAAsB,EAAE,eAAwC;CACxE,OAAO,kBAAC,OAAD;EAAK,WAAU;EAA8B;CAAc,CAAA;AACnE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynFullCalendarContainer{flex-direction:column;gap:32px;display:flex}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/fullCalendar/fullCalendarHeader/index.tsx"],"sourcesContent":["import { ChevronLeft, ChevronRight } from \"lucide-react\";\n\nimport { CardTabButton } from \"../../cardTab/cardTabButton\";\nimport { CardTabContainer } from \"../../cardTab/cardTabContainer\";\nimport { IconButton } from \"../../iconButton\";\n\nimport { useFullCalendar } from \"../_fullCalendarProvider\";\nimport \"./styles.css\";\n\ntype FullCalendarHeaderProps = {\n\tviewType: \"day\" | \"week\" | \"month\";\n\tsetViewType: (viewType: \"day\" | \"week\" | \"month\") => void;\n};\n\nfunction FullCalendarHeader(props: FullCalendarHeaderProps) {\n\tconst { setViewType, viewType } = props;\n\tconst fullCalendar = useFullCalendar();\n\n\tfunction handlePrevious() {\n\t\tswitch (viewType) {\n\t\t\tcase \"day\":\n\t\t\t\treturn fullCalendar.previousDay();\n\t\t\tcase \"week\":\n\t\t\t\treturn fullCalendar.previousWeek();\n\t\t\tcase \"month\":\n\t\t\t\treturn fullCalendar.previousMonth();\n\t\t}\n\t}\n\n\tfunction handleNext() {\n\t\tswitch (viewType) {\n\t\t\tcase \"day\":\n\t\t\t\treturn fullCalendar.nextDay();\n\t\t\tcase \"week\":\n\t\t\t\treturn fullCalendar.nextWeek();\n\t\t\tcase \"month\":\n\t\t\t\treturn fullCalendar.nextMonth();\n\t\t}\n\t}\n\n\treturn (\n\t\t<div className=\"arkynFullCalendarHeader\">\n\t\t\t<CardTabContainer\n\t\t\t\tdefaultValue={viewType}\n\t\t\t\tonChange={(value) => setViewType(value as \"day\" | \"week\" | \"month\")}\n\t\t\t>\n\t\t\t\t<CardTabButton value=\"day\">Dia</CardTabButton>\n\t\t\t\t<CardTabButton value=\"week\">Semana</CardTabButton>\n\t\t\t\t<CardTabButton value=\"month\">Mês</CardTabButton>\n\t\t\t</CardTabContainer>\n\n\t\t\t<div className=\"arkynFullCalendarHeaderActions\">\n\t\t\t\t<IconButton\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\ticon={ChevronLeft}\n\t\t\t\t\taria-label=\"Handle previous\"\n\t\t\t\t\tonClick={() => handlePrevious()}\n\t\t\t\t/>\n\n\t\t\t\t<p>\n\t\t\t\t\t{fullCalendar.viewDate.toLocaleDateString(\"pt-BR\", {\n\t\t\t\t\t\tday: \"2-digit\",\n\t\t\t\t\t\tmonth: \"long\",\n\t\t\t\t\t\tyear: \"numeric\",\n\t\t\t\t\t})}\n\t\t\t\t</p>\n\n\t\t\t\t<IconButton\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\ticon={ChevronRight}\n\t\t\t\t\taria-label=\"Handle next\"\n\t\t\t\t\tonClick={() => handleNext()}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport { FullCalendarHeader };\n"],"mappings":";;;;;;;;AAcA,SAAS,EAAmB,GAAgC;CAC3D,IAAM,EAAE,gBAAa,gBAAa,GAC5B,IAAe,EAAgB;CAErC,SAAS,IAAiB;EACzB,QAAQ,GAAR;GACC,KAAK,OACJ,OAAO,EAAa,YAAY;GACjC,KAAK,QACJ,OAAO,EAAa,aAAa;GAClC,KAAK,SACJ,OAAO,EAAa,cAAc;EACpC;CACD;CAEA,SAAS,IAAa;EACrB,QAAQ,GAAR;GACC,KAAK,OACJ,OAAO,EAAa,QAAQ;GAC7B,KAAK,QACJ,OAAO,EAAa,SAAS;GAC9B,KAAK,SACJ,OAAO,EAAa,UAAU;EAChC;CACD;CAEA,OACC,kBAAC,OAAD;EAAK,WAAU;YAAf,CACC,kBAAC,GAAD;GACC,cAAc;GACd,WAAW,MAAU,EAAY,CAAiC;aAFnE;IAIC,kBAAC,GAAD;KAAe,OAAM;eAAM;IAAkB,CAAA;IAC7C,kBAAC,GAAD;KAAe,OAAM;eAAO;IAAqB,CAAA;IACjD,kBAAC,GAAD;KAAe,OAAM;eAAQ;IAAkB,CAAA;GAC9B;MAElB,kBAAC,OAAD;GAAK,WAAU;aAAf;IACC,kBAAC,GAAD;KACC,SAAQ;KACR,MAAM;KACN,cAAW;KACX,eAAe,EAAe;IAC9B,CAAA;IAED,kBAAC,KAAD,EAAA,UACE,EAAa,SAAS,mBAAmB,SAAS;KAClD,KAAK;KACL,OAAO;KACP,MAAM;IACP,CAAC,EACC,CAAA;IAEH,kBAAC,GAAD;KACC,SAAQ;KACR,MAAM;KACN,cAAW;KACX,eAAe,EAAW;IAC1B,CAAA;GACG;IACD;;AAEP"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynFullCalendarHeader{align-items:center;gap:16px;display:flex}.arkynFullCalendarHeader>p{color:var(--text-body);font-size:14px;font-weight:500}.arkynFullCalendarHeader .arkynFullCalendarButton{border:unset;background-color:unset;color:var(--text-muted);cursor:pointer;align-items:center;gap:4px;display:flex}.arkynFullCalendarHeader .arkynFullCalendarButton:hover svg{color:rgb(var(--spotlight-primary))}.arkynFullCalendarHeader>div{align-items:center;gap:12px;display:flex}.arkynFullCalendarHeader .arkynFullCalendarHeaderActions{background-color:var(--background-underground);border-radius:8px;align-items:center;gap:50px;width:max-content;padding:4px;display:flex;overflow:hidden}.arkynFullCalendarHeader .arkynFullCalendarHeaderActions p{letter-spacing:0%;color:var(--text-heading);font-size:14px;font-weight:600;line-height:24px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/fullCalendar/index.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport { FullCalendarProvider } from \"./_fullCalendarProvider\";\nimport { DayCalendar } from \"./dayCalendar\";\nimport { FullCalendarContainer } from \"./fullCalendarContainer\";\nimport { FullCalendarHeader } from \"./fullCalendarHeader\";\nimport { MonthlyCalendar } from \"./monthlyCalendar\";\nimport { WeekCalendar } from \"./weekCalendar\";\n\n/**\n * Represents a single event rendered on the calendar.\n */\ntype FullCalendarEvent = {\n\t/** Display label shown on the event block. */\n\ttitle: string;\n\t/** Start date and time of the event. */\n\tinitialDate: Date;\n\t/** End date and time of the event. */\n\tendDate?: Date;\n\t/** Arbitrary payload forwarded to the `onClick` callback. */\n\t// biome-ignore lint/suspicious/noExplicitAny: intentional\n\tdata?: any;\n\t/**\n\t * Color scheme applied to the event block.\n\t * - `primary`: default blue.\n\t * - `success`: green.\n\t * - `warning`: yellow.\n\t * - `danger`: red.\n\t * - `info`: light blue.\n\t *\n\t * @default \"primary\"\n\t */\n\tscheme?: \"primary\" | \"success\" | \"warning\" | \"danger\" | \"info\";\n\t/** Callback fired when the user clicks the event. Receives `data` as argument. */\n\t// biome-ignore lint/suspicious/noExplicitAny: intentional\n\tonClick?: (data: any) => void;\n};\n\n/**\n * Represents a blocked (unavailable) time range on the calendar.\n */\ntype BlockTimestamp = {\n\t/** Start of the blocked range. */\n\tinitialDate: Date;\n\t/** End of the blocked range. */\n\tendDate: Date;\n};\n\n/**\n * Props for the FullCalendar component.\n */\ntype FullCalendarProps = {\n\t/** Controlled value for the currently focused date. */\n\tviewValue?: Date;\n\t/** Initial focused date when the calendar mounts. */\n\tdefaultViewValue?: Date;\n\t/** List of events to display across day, week, and month views. */\n\tevents?: FullCalendarEvent[];\n\t/** Time ranges that should be visually marked as unavailable. */\n\tblockedTimestamps?: BlockTimestamp[];\n\t/** Callback fired when the user navigates to a different period. */\n\tonChangeView?: (date: Date) => void;\n\t/** Callback fired when the user clicks a date cell. */\n\tonClickDate?: (date: Date) => void;\n};\n\n/**\n * Full-featured calendar component with day, week, and month views.\n *\n * Renders a switchable calendar that supports event display, blocked time\n * ranges, and date navigation. Internal state and business logic are managed\n * by `FullCalendarProvider`, keeping the public API minimal.\n *\n * @param props FullCalendar properties.\n * @returns Calendar UI with a view switcher header and the active view grid.\n *\n * @example\n * // Basic usage with events\n * <FullCalendar\n * defaultValue={new Date()}\n * events={[\n * {\n * title: \"Team standup\",\n * initialDate: new Date(2026, 5, 22, 9, 0),\n * endDate: new Date(2026, 5, 22, 9, 30),\n * scheme: \"primary\",\n * onClick: (data) => console.log(\"Event clicked:\", data),\n * },\n * ]}\n * onChangeView={(date) => console.log(\"Viewing:\", date)}\n * onClickDate={(date) => console.log(\"Date clicked:\", date)}\n * />\n *\n * @example\n * // With blocked timestamps\n * <FullCalendar\n * defaultValue={new Date()}\n * blockedTimestamps={[\n * {\n * initialDate: new Date(2026, 5, 22, 12, 0),\n * endDate: new Date(2026, 5, 22, 13, 0),\n * },\n * ]}\n * />\n */\nfunction FullCalendar(props: FullCalendarProps) {\n\tconst [viewType, setViewType] = useState<\"day\" | \"week\" | \"month\">(\"month\");\n\n\treturn (\n\t\t<FullCalendarProvider\n\t\t\tevents={props.events || []}\n\t\t\tviewValue={props.viewValue}\n\t\t\tdefaultViewValue={props.defaultViewValue}\n\t\t\tonChangeView={props.onChangeView}\n\t\t\tblockedTimestamps={props.blockedTimestamps || []}\n\t\t\tonClickDate={props.onClickDate}\n\t\t>\n\t\t\t<FullCalendarContainer>\n\t\t\t\t<FullCalendarHeader viewType={viewType} setViewType={setViewType} />\n\t\t\t\t{viewType === \"day\" && <DayCalendar />}\n\t\t\t\t{viewType === \"month\" && <MonthlyCalendar />}\n\t\t\t\t{viewType === \"week\" && <WeekCalendar />}\n\t\t\t</FullCalendarContainer>\n\t\t</FullCalendarProvider>\n\t);\n}\n\nexport { FullCalendar };\n"],"mappings":";;;;;;;;;AAwGA,SAAS,EAAa,GAA0B;CAC/C,IAAM,CAAC,GAAU,KAAe,EAAmC,OAAO;CAE1E,OACC,kBAAC,GAAD;EACC,QAAQ,EAAM,UAAU,CAAC;EACzB,WAAW,EAAM;EACjB,kBAAkB,EAAM;EACxB,cAAc,EAAM;EACpB,mBAAmB,EAAM,qBAAqB,CAAC;EAC/C,aAAa,EAAM;YAEnB,kBAAC,GAAD,EAAA,UAAA;GACC,kBAAC,GAAD;IAA8B;IAAuB;GAAc,CAAA;GAClE,MAAa,SAAS,kBAAC,GAAD,CAAc,CAAA;GACpC,MAAa,WAAW,kBAAC,GAAD,CAAkB,CAAA;GAC1C,MAAa,UAAU,kBAAC,GAAD,CAAe,CAAA;EACjB,EAAA,CAAA;CACF,CAAA;AAExB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/fullCalendar/monthlyCalendar/index.tsx"],"sourcesContent":["import { MonthlyCalendarTableBody } from \"./monthlyCalendarTableBody\";\nimport { MonthlyCalendarTableContainer } from \"./monthlyCalendarTableContainer\";\nimport { MonthlyCalendarTableHeader } from \"./monthlyCalendarTableHeader\";\n\nfunction MonthlyCalendar() {\n\treturn (\n\t\t<MonthlyCalendarTableContainer>\n\t\t\t<MonthlyCalendarTableHeader />\n\t\t\t<MonthlyCalendarTableBody />\n\t\t</MonthlyCalendarTableContainer>\n\t);\n}\n\nexport { MonthlyCalendar };\n"],"mappings":";;;;;AAIA,SAAS,IAAkB;CAC1B,OACC,kBAAC,GAAD,EAAA,UAAA,CACC,kBAAC,GAAD,CAA6B,CAAA,GAC7B,kBAAC,GAAD,CAA2B,CAAA,CACG,EAAA,CAAA;AAEjC"}
|
package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarEvent/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/monthlyCalendar/monthlyCalendarEvent/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport \"./styles.css\";\n\ntype MonthlyCalendarEventProps = {\n\tday: number;\n\tmonth: number;\n\tyear: number;\n};\n\nfunction MonthlyCalendarEvent(props: MonthlyCalendarEventProps) {\n\tconst { events } = useFullCalendar();\n\n\tconst filteredEvents = events.filter((event) => {\n\t\treturn (\n\t\t\tevent.initialDate.getDate() === props.day &&\n\t\t\tevent.initialDate.getMonth() === props.month &&\n\t\t\tevent.initialDate.getFullYear() === props.year\n\t\t);\n\t});\n\n\tif (filteredEvents.length === 0) return null;\n\n\tfunction makeEventKey(index: number) {\n\t\treturn `${props.day}-${props.month}-${props.year}-${index}`;\n\t}\n\n\tfunction makeHour(date: Date) {\n\t\tconst hours = date.getHours();\n\t\tconst minutes = date.getMinutes();\n\n\t\tif (minutes === 0) return `${hours}h`;\n\t\treturn `${hours}h${minutes}`;\n\t}\n\n\t// biome-ignore lint/suspicious/noExplicitAny: intentional\n\tfunction handleEventClick(event: React.MouseEvent, eventData: any) {\n\t\tevent.stopPropagation();\n\t\teventData.onClick?.(eventData.data);\n\t}\n\n\treturn filteredEvents.map((event, index) => (\n\t\t<div\n\t\t\tkey={makeEventKey(index)}\n\t\t\tclassName={`arkynMonthlyCalendarEvent ${event?.scheme || \"primary\"}`}\n\t\t\tonClick={(e) => handleEventClick(e, event)}\n\t\t>\n\t\t\t<strong>\n\t\t\t\t{makeHour(event.initialDate)}{\" \"}\n\t\t\t\t{event?.endDate && `- ${makeHour(event.endDate)}`}\n\t\t\t</strong>\n\t\t\t<p>{event.title}</p>\n\t\t</div>\n\t));\n}\n\nexport { MonthlyCalendarEvent };\n"],"mappings":";;;;AASA,SAAS,EAAqB,GAAkC;CAC/D,IAAM,EAAE,cAAW,EAAgB,GAE7B,IAAiB,EAAO,QAAQ,MAEpC,EAAM,YAAY,QAAQ,MAAM,EAAM,OACtC,EAAM,YAAY,SAAS,MAAM,EAAM,SACvC,EAAM,YAAY,YAAY,MAAM,EAAM,IAE3C;CAED,IAAI,EAAe,WAAW,GAAG,OAAO;CAExC,SAAS,EAAa,GAAe;EACpC,OAAO,GAAG,EAAM,IAAI,GAAG,EAAM,MAAM,GAAG,EAAM,KAAK,GAAG;CACrD;CAEA,SAAS,EAAS,GAAY;EAC7B,IAAM,IAAQ,EAAK,SAAS,GACtB,IAAU,EAAK,WAAW;EAGhC,OADI,MAAY,IAAU,GAAG,EAAM,KAC5B,GAAG,EAAM,GAAG;CACpB;CAGA,SAAS,EAAiB,GAAyB,GAAgB;EAElE,AADA,EAAM,gBAAgB,GACtB,EAAU,UAAU,EAAU,IAAI;CACnC;CAEA,OAAO,EAAe,KAAK,GAAO,MACjC,kBAAC,OAAD;EAEC,WAAW,6BAA6B,GAAO,UAAU;EACzD,UAAU,MAAM,EAAiB,GAAG,CAAK;YAH1C,CAKC,kBAAC,UAAD,EAAA,UAAA;GACE,EAAS,EAAM,WAAW;GAAG;GAC7B,GAAO,WAAW,KAAK,EAAS,EAAM,OAAO;EACvC,EAAA,CAAA,GACR,kBAAC,KAAD,EAAA,UAAI,EAAM,MAAS,CAAA,CACf;IATC,EAAa,CAAK,CASnB,CACL;AACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynMonthlyCalendarEvent{border-radius:8px;flex-direction:column;gap:4px;padding:8px;display:flex;position:relative}.arkynMonthlyCalendarEvent:before{content:" ";border-radius:8px 0 0 8px;width:4px;position:absolute;top:0;bottom:0;left:0}.arkynMonthlyCalendarEvent.primary{background-color:rgb(var(--spotlight-primary-foreground))}.arkynMonthlyCalendarEvent.primary:before{background-color:rgb(var(--spotlight-primary))}.arkynMonthlyCalendarEvent.danger{background-color:rgb(var(--spotlight-danger-foreground))}.arkynMonthlyCalendarEvent.danger:before{background-color:rgb(var(--spotlight-danger))}.arkynMonthlyCalendarEvent.warning{background-color:rgb(var(--spotlight-warning-foreground))}.arkynMonthlyCalendarEvent.warning:before{background-color:rgb(var(--spotlight-warning))}.arkynMonthlyCalendarEvent.info{background-color:rgb(var(--spotlight-info-foreground))}.arkynMonthlyCalendarEvent.info:before{background-color:rgb(var(--spotlight-info))}.arkynMonthlyCalendarEvent.success{background-color:rgb(var(--spotlight-success-foreground))}.arkynMonthlyCalendarEvent.success:before{background-color:rgb(var(--spotlight-success))}.arkynMonthlyCalendarEvent>strong{letter-spacing:0%;color:var(--text-heading);font-size:14px;font-weight:600}.arkynMonthlyCalendarEvent>p{letter-spacing:0%;color:var(--text-heading);font-size:12px;font-weight:400}}
|
package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableBody/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/monthlyCalendar/monthlyCalendarTableBody/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport { MonthlyCalendarTableTd } from \"../monthlyCalendarTableTd\";\nimport \"./styles.css\";\n\nfunction MonthlyCalendarTableBody() {\n\tconst fullCalendar = useFullCalendar();\n\n\treturn (\n\t\t<tbody className=\"arkynMonthlyCalendarTableBody\">\n\t\t\t{fullCalendar.listMonthlyMatrix.map((week, weekIndex) => (\n\t\t\t\t// biome-ignore lint/suspicious/noArrayIndexKey: week position is stable in monthly matrix\n\t\t\t\t<tr key={weekIndex}>\n\t\t\t\t\t{week.map((props, dayIndex) => (\n\t\t\t\t\t\t// biome-ignore lint/suspicious/noArrayIndexKey: day position is stable in week\n\t\t\t\t\t\t<MonthlyCalendarTableTd key={dayIndex} {...props} />\n\t\t\t\t\t))}\n\t\t\t\t</tr>\n\t\t\t))}\n\t\t</tbody>\n\t);\n}\n\nexport { MonthlyCalendarTableBody };\n"],"mappings":";;;;;AAIA,SAAS,IAA2B;CAGnC,OACC,kBAAC,SAAD;EAAO,WAAU;YAHG,EAIlB,CAAA,CAAa,kBAAkB,KAAK,GAAM,MAE1C,kBAAC,MAAD,EAAA,UACE,EAAK,KAAK,GAAO,MAEjB,kBAAC,GAAD,EAAuC,GAAI,EAAQ,GAAtB,CAAsB,CACnD,EACE,GALK,CAKL,CACJ;CACK,CAAA;AAET"}
|
package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableBody/styles.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynMonthlyCalendarTableBody td>p{text-align:center;padding:16px;font-size:14px}.arkynMonthlyCalendarTableBody tr{border-top:1px solid var(--border)}.arkynMonthlyCalendarTableBody tr td:not(:first-child){border-left:1px solid var(--border)}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/monthlyCalendar/monthlyCalendarTableContainer/index.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport \"./styles.css\";\n\ntype MonthlyCalendarTableContainerProps = {\n\tchildren: ReactNode;\n};\n\nfunction MonthlyCalendarTableContainer({\n\tchildren,\n}: MonthlyCalendarTableContainerProps) {\n\treturn (\n\t\t<div className=\"arkynMonthlyCalendarTableContainer\">\n\t\t\t<table>{children}</table>\n\t\t</div>\n\t);\n}\n\nexport { MonthlyCalendarTableContainer };\n"],"mappings":";;;AAOA,SAAS,EAA8B,EACtC,eACsC;CACtC,OACC,kBAAC,OAAD;EAAK,WAAU;YACd,kBAAC,SAAD,EAAQ,YAAgB,CAAA;CACpB,CAAA;AAEP"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynMonthlyCalendarTableContainer{background-color:var(--background-foreground);border:1px solid var(--border);border-radius:8px;overflow:hidden}.arkynMonthlyCalendarTableContainer table{border-collapse:collapse;border-spacing:0;table-layout:fixed;width:100%}}
|
package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableHeader/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/monthlyCalendar/monthlyCalendarTableHeader/index.tsx"],"sourcesContent":["import { formatToCapitalizeFirstWordLetter } from \"@arkyn/shared\";\nimport { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport \"./styles.css\";\n\nfunction MonthlyCalendarTableHeader() {\n\tconst { listWeek } = useFullCalendar();\n\n\treturn (\n\t\t<thead className=\"arkynMonthlyCalendarTableHeader\">\n\t\t\t<tr>\n\t\t\t\t{listWeek.map((day) => (\n\t\t\t\t\t<th key={day}>{formatToCapitalizeFirstWordLetter(day)}</th>\n\t\t\t\t))}\n\t\t\t</tr>\n\t\t</thead>\n\t);\n}\n\nexport { MonthlyCalendarTableHeader };\n"],"mappings":";;;;;AAIA,SAAS,IAA6B;CACrC,IAAM,EAAE,gBAAa,EAAgB;CAErC,OACC,kBAAC,SAAD;EAAO,WAAU;YAChB,kBAAC,MAAD,EAAA,UACE,EAAS,KAAK,MACd,kBAAC,MAAD,EAAA,UAAe,EAAkC,CAAG,EAAM,GAAjD,CAAiD,CAC1D,EACE,CAAA;CACE,CAAA;AAET"}
|
package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableHeader/styles.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynMonthlyCalendarTableHeader th{color:var(--text-heading);letter-spacing:0%;padding:20px 0;font-size:16px;font-weight:600;line-height:24px}.arkynMonthlyCalendarTableHeader tr th:not(:first-child){border-left:1px solid var(--border)}}
|
package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableTd/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/monthlyCalendar/monthlyCalendarTableTd/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport { MonthlyCalendarEvent } from \"../monthlyCalendarEvent\";\nimport \"./styles.css\";\n\ntype MonthlyCalendarTableTdProps = {\n\tday: number;\n\tmonth: number;\n\tyear: number;\n\tdayOwner: \"previous\" | \"current\" | \"next\";\n};\n\nfunction MonthlyCalendarTableTd(props: MonthlyCalendarTableTdProps) {\n\tconst { day, month, year, dayOwner } = props;\n\tconst { blockedTimestamps, onClickDate } = useFullCalendar();\n\n\tfunction isToday() {\n\t\tconst today = new Date();\n\t\treturn (\n\t\t\tday === today.getDate() &&\n\t\t\tmonth === today.getMonth() &&\n\t\t\tyear === today.getFullYear()\n\t\t);\n\t}\n\n\tfunction isBlocked() {\n\t\tconst currentDate = new Date(year, month, day);\n\n\t\treturn blockedTimestamps.some(\n\t\t\t(timestamp) =>\n\t\t\t\tcurrentDate >= timestamp.initialDate &&\n\t\t\t\tcurrentDate <= timestamp.endDate,\n\t\t);\n\t}\n\n\tfunction handleClick(event: React.MouseEvent) {\n\t\tevent.stopPropagation();\n\t\tif (isBlocked()) return;\n\n\t\tif (onClickDate) {\n\t\t\tconst date = new Date(year, month, day);\n\t\t\tonClickDate(date);\n\t\t}\n\t}\n\n\treturn (\n\t\t<td\n\t\t\tclassName={`arkynMonthlyCalendarTableTd ${dayOwner} ${isBlocked() ? \"blocked\" : \"\"}`}\n\t\t\tonClick={handleClick}\n\t\t>\n\t\t\t<p className={isToday() ? \"today\" : \"\"}>{day}</p>\n\t\t\t<div className=\"arkynMonthlyCalendarEventContainer\">\n\t\t\t\t<MonthlyCalendarEvent day={day} month={month} year={year} />\n\t\t\t</div>\n\t\t</td>\n\t);\n}\n\nexport { MonthlyCalendarTableTd };\n"],"mappings":";;;;;AAWA,SAAS,EAAuB,GAAoC;CACnE,IAAM,EAAE,QAAK,UAAO,SAAM,gBAAa,GACjC,EAAE,sBAAmB,mBAAgB,EAAgB;CAE3D,SAAS,IAAU;EAClB,IAAM,oBAAQ,IAAI,KAAK;EACvB,OACC,MAAQ,EAAM,QAAQ,KACtB,MAAU,EAAM,SAAS,KACzB,MAAS,EAAM,YAAY;CAE7B;CAEA,SAAS,IAAY;EACpB,IAAM,IAAc,IAAI,KAAK,GAAM,GAAO,CAAG;EAE7C,OAAO,EAAkB,MACvB,MACA,KAAe,EAAU,eACzB,KAAe,EAAU,OAC3B;CACD;CAEA,SAAS,EAAY,GAAyB;EAC7C,EAAM,gBAAgB,GAClB,GAAU,KAEV,KAEH,EAAY,IADK,KAAK,GAAM,GAAO,CACvB,CAAI;CAElB;CAEA,OACC,kBAAC,MAAD;EACC,WAAW,+BAA+B,EAAS,GAAG,EAAU,IAAI,YAAY;EAChF,SAAS;YAFV,CAIC,kBAAC,KAAD;GAAG,WAAW,EAAQ,IAAI,UAAU;aAAK;EAAO,CAAA,GAChD,kBAAC,OAAD;GAAK,WAAU;aACd,kBAAC,GAAD;IAA2B;IAAY;IAAa;GAAO,CAAA;EACvD,CAAA,CACF;;AAEN"}
|
package/dist/modules/components/fullCalendar/monthlyCalendar/monthlyCalendarTableTd/styles.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynMonthlyCalendarTableTd{-webkit-user-select:none;user-select:none;cursor:pointer;height:120px;position:relative}.arkynMonthlyCalendarTableTd.blocked{background-color:rgb(var(--spotlight-danger-foreground))}.arkynMonthlyCalendarTableTd.blocked:before{content:" ";background-color:rgb(var(--spotlight-danger));width:4px;position:absolute;top:0;bottom:0;left:0}.arkynMonthlyCalendarTableTd.blocked:hover{cursor:not-allowed}.arkynMonthlyCalendarTableTd>p{text-align:center;border-radius:8px;margin-bottom:auto;margin-right:auto;font-size:14px;position:absolute;top:0;left:0}.arkynMonthlyCalendarTableTd.previous,.arkynMonthlyCalendarTableTd.next{color:var(--text-muted);background-color:var(--card-foreground-primary)}.arkynMonthlyCalendarTableTd>p{color:var(--text-body)}.arkynMonthlyCalendarTableTd>p.today{color:var(--text-heading);font-weight:700}.arkynMonthlyCalendarTableTd .arkynMonthlyCalendarEventContainer{flex-direction:column;gap:4px;height:calc(100% - 32px);margin-top:32px;padding:16px;display:flex}}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
@layer arkyn{.arkynDayCalendarContainer{background-color:var(--background-foreground);border:1px solid var(--border);border-radius:8px}}
|
|
2
|
+
|
|
3
|
+
@layer arkyn{.arkynDayCalendarRow{align-items:stretch;display:flex;position:relative}.arkynDayCalendarRow:first-child{border-top-right-radius:14px}.arkynDayCalendarRow:last-child{border-bottom-right-radius:14px}.arkynDayCalendarRow.blocked{background-color:rgb(var(--spotlight-danger-foreground))}.arkynDayCalendarRow.blocked:before{content:" ";background-color:rgb(var(--spotlight-danger));width:4px;position:absolute;top:0;bottom:0;left:0}.arkynDayCalendarRow:first-child:before{border-top-left-radius:14px}.arkynDayCalendarRow.blocked:hover{cursor:not-allowed}.arkynDayCalendarRow:not(:first-child){border-top:1px solid var(--border)}.arkynDayCalendarRow>p{letter-spacing:0%;color:var(--text-body);align-items:center;padding:24px 20px;font-size:14px;font-weight:400;line-height:24px;display:flex}.arkynDayCalendarRow .arkynDayCalendarRowContent{flex:1;min-height:100%;margin:3px;position:relative}}
|
|
4
|
+
|
|
5
|
+
@layer arkyn{.arkynDayCalendarEvent{z-index:2;box-sizing:border-box;border-radius:8px;flex-direction:column;gap:4px;min-width:200px;max-width:200px;min-height:28px;padding:8px;display:flex;position:absolute;left:0;right:0;overflow:hidden}.arkynDayCalendarEvent:not(:first-child){box-shadow:0 0 2px #0000001a}.arkynDayCalendarEvent:hover{z-index:3}.arkynDayCalendarEvent:before{content:" ";border-radius:8px 0 0 8px;width:4px;position:absolute;top:0;bottom:0;left:0}.arkynDayCalendarEvent.primary{background-color:rgb(var(--spotlight-primary-foreground))}.arkynDayCalendarEvent.primary:before{background-color:rgb(var(--spotlight-primary))}.arkynDayCalendarEvent.danger{background-color:rgb(var(--spotlight-danger-foreground))}.arkynDayCalendarEvent.danger:before{background-color:rgb(var(--spotlight-danger))}.arkynDayCalendarEvent.warning{background-color:rgb(var(--spotlight-warning-foreground))}.arkynDayCalendarEvent.warning:before{background-color:rgb(var(--spotlight-warning))}.arkynDayCalendarEvent.info{background-color:rgb(var(--spotlight-info-foreground))}.arkynDayCalendarEvent.info:before{background-color:rgb(var(--spotlight-info))}.arkynDayCalendarEvent.success{background-color:rgb(var(--spotlight-success-foreground))}.arkynDayCalendarEvent.success:before{background-color:rgb(var(--spotlight-success))}.arkynDayCalendarEvent>strong{letter-spacing:0%;color:var(--text-heading);font-size:14px;font-weight:600}.arkynDayCalendarEvent>p{letter-spacing:0%;color:var(--text-heading);font-size:12px;font-weight:400}}
|
|
6
|
+
|
|
7
|
+
@layer arkyn{.arkynFullCalendarContainer{flex-direction:column;gap:32px;display:flex}}
|
|
8
|
+
|
|
9
|
+
@layer arkyn{.arkynFullCalendarHeader{align-items:center;gap:16px;display:flex}.arkynFullCalendarHeader>p{color:var(--text-body);font-size:14px;font-weight:500}.arkynFullCalendarHeader .arkynFullCalendarButton{border:unset;background-color:unset;color:var(--text-muted);cursor:pointer;align-items:center;gap:4px;display:flex}.arkynFullCalendarHeader .arkynFullCalendarButton:hover svg{color:rgb(var(--spotlight-primary))}.arkynFullCalendarHeader>div{align-items:center;gap:12px;display:flex}.arkynFullCalendarHeader .arkynFullCalendarHeaderActions{background-color:var(--background-underground);border-radius:8px;align-items:center;gap:50px;width:max-content;padding:4px;display:flex;overflow:hidden}.arkynFullCalendarHeader .arkynFullCalendarHeaderActions p{letter-spacing:0%;color:var(--text-heading);font-size:14px;font-weight:600;line-height:24px}}
|
|
10
|
+
|
|
11
|
+
@layer arkyn{.arkynIconButton{background:0 0;border:1px solid #0000;outline:1px solid #0000;position:relative}.arkynIconButton:hover{cursor:pointer;filter:brightness(.9);transition:all .15s ease-out}html.dark .arkynIconButton:hover{cursor:pointer;filter:brightness(1.2)}.arkynIconButton:disabled{cursor:not-allowed;opacity:.5}.arkynIconButtonContent{justify-content:center;align-items:center;display:flex}.arkynIconButton.solid{color:var(--white)}.arkynIconButton.solid.primary{background-color:rgb(var(--spotlight-primary))}.arkynIconButton.solid.secondary{background-color:rgb(var(--spotlight-secondary))}.arkynIconButton.solid.danger{background-color:rgb(var(--spotlight-danger))}.arkynIconButton.solid.success{background-color:rgb(var(--spotlight-success))}.arkynIconButton.solid.warning{background-color:rgb(var(--spotlight-warning))}.arkynIconButton.solid.info{background-color:rgb(var(--spotlight-info))}.arkynIconButton.outline{background-color:var(--background-underground);border-color:var(--border)}.arkynIconButton.outline.primary{color:rgb(var(--spotlight-primary))}.arkynIconButton.outline.secondary{color:rgb(var(--spotlight-secondary))}.arkynIconButton.outline.danger{color:rgb(var(--spotlight-danger))}.arkynIconButton.outline.success{color:rgb(var(--spotlight-success))}.arkynIconButton.outline.warning{color:rgb(var(--spotlight-warning))}.arkynIconButton.outline.info{color:rgb(var(--spotlight-info))}.arkynIconButton.ghost:hover{filter:brightness(.8)}.arkynIconButton.ghost.primary{color:rgb(var(--spotlight-primary));background-color:rgb(var(--spotlight-primary-foreground))}.arkynIconButton.ghost.secondary{color:rgb(var(--spotlight-secondary));background-color:rgb(var(--spotlight-secondary-foreground))}.arkynIconButton.ghost.danger{color:rgb(var(--spotlight-danger));background-color:rgb(var(--spotlight-danger-foreground))}.arkynIconButton.ghost.success{color:rgb(var(--spotlight-success));background-color:rgb(var(--spotlight-success-foreground))}.arkynIconButton.ghost.warning{color:rgb(var(--spotlight-warning));background-color:rgb(var(--spotlight-warning-foreground))}.arkynIconButton.ghost.info{color:rgb(var(--spotlight-info));background-color:rgb(var(--spotlight-info-foreground))}.arkynIconButton.invisible.primary{color:rgb(var(--spotlight-primary))}.arkynIconButton.invisible.secondary{color:rgb(var(--spotlight-secondary))}.arkynIconButton.invisible.danger{color:rgb(var(--spotlight-danger))}.arkynIconButton.invisible.success{color:rgb(var(--spotlight-success))}.arkynIconButton.invisible.warning{color:rgb(var(--spotlight-warning))}.arkynIconButton.invisible.info{color:rgb(var(--spotlight-info))}.arkynIconButton.lg{border-radius:6px;width:44px;height:44px}.arkynIconButton.md{border-radius:6px;width:40px;height:40px}.arkynIconButton.sm{border-radius:6px;width:32px;height:32px}.arkynIconButton.xs{border-radius:4px;width:24px;height:24px}.arkynIconButtonSpinner{opacity:0;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.arkynIconButtonSpinner>svg{animation:2s linear infinite spin}.arkynIconButton.loadingTrue .arkynIconButtonSpinner{opacity:1}.arkynIconButton.loadingTrue .arkynIconButtonContent{opacity:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}}
|
|
12
|
+
|
|
13
|
+
@layer arkyn{.arkynCardTabButton{letter-spacing:0%;color:var(--text-heading);cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;height:40px;padding:8px 16px;font-size:14px;font-weight:600;display:flex}.arkynCardTabButton.isDisabled{cursor:not-allowed;opacity:.2}.arkynCardTabButton:hover:not(:disabled),.arkynCardTabButton.isActive{background-color:var(--background-foreground);border-color:var(--border)}}
|
|
14
|
+
|
|
15
|
+
@layer arkyn{.arkynCardTabContainer{background-color:var(--background-underground);border-radius:8px;align-items:center;gap:4px;width:max-content;padding:4px;display:flex;overflow:hidden}}
|
|
16
|
+
|
|
17
|
+
@layer arkyn{.arkynMonthlyCalendarTableBody td>p{text-align:center;padding:16px;font-size:14px}.arkynMonthlyCalendarTableBody tr{border-top:1px solid var(--border)}.arkynMonthlyCalendarTableBody tr td:not(:first-child){border-left:1px solid var(--border)}}
|
|
18
|
+
|
|
19
|
+
@layer arkyn{.arkynMonthlyCalendarTableTd{-webkit-user-select:none;user-select:none;cursor:pointer;height:120px;position:relative}.arkynMonthlyCalendarTableTd.blocked{background-color:rgb(var(--spotlight-danger-foreground))}.arkynMonthlyCalendarTableTd.blocked:before{content:" ";background-color:rgb(var(--spotlight-danger));width:4px;position:absolute;top:0;bottom:0;left:0}.arkynMonthlyCalendarTableTd.blocked:hover{cursor:not-allowed}.arkynMonthlyCalendarTableTd>p{text-align:center;border-radius:8px;margin-bottom:auto;margin-right:auto;font-size:14px;position:absolute;top:0;left:0}.arkynMonthlyCalendarTableTd.previous,.arkynMonthlyCalendarTableTd.next{color:var(--text-muted);background-color:var(--card-foreground-primary)}.arkynMonthlyCalendarTableTd>p{color:var(--text-body)}.arkynMonthlyCalendarTableTd>p.today{color:var(--text-heading);font-weight:700}.arkynMonthlyCalendarTableTd .arkynMonthlyCalendarEventContainer{flex-direction:column;gap:4px;height:calc(100% - 32px);margin-top:32px;padding:16px;display:flex}}
|
|
20
|
+
|
|
21
|
+
@layer arkyn{.arkynMonthlyCalendarEvent{border-radius:8px;flex-direction:column;gap:4px;padding:8px;display:flex;position:relative}.arkynMonthlyCalendarEvent:before{content:" ";border-radius:8px 0 0 8px;width:4px;position:absolute;top:0;bottom:0;left:0}.arkynMonthlyCalendarEvent.primary{background-color:rgb(var(--spotlight-primary-foreground))}.arkynMonthlyCalendarEvent.primary:before{background-color:rgb(var(--spotlight-primary))}.arkynMonthlyCalendarEvent.danger{background-color:rgb(var(--spotlight-danger-foreground))}.arkynMonthlyCalendarEvent.danger:before{background-color:rgb(var(--spotlight-danger))}.arkynMonthlyCalendarEvent.warning{background-color:rgb(var(--spotlight-warning-foreground))}.arkynMonthlyCalendarEvent.warning:before{background-color:rgb(var(--spotlight-warning))}.arkynMonthlyCalendarEvent.info{background-color:rgb(var(--spotlight-info-foreground))}.arkynMonthlyCalendarEvent.info:before{background-color:rgb(var(--spotlight-info))}.arkynMonthlyCalendarEvent.success{background-color:rgb(var(--spotlight-success-foreground))}.arkynMonthlyCalendarEvent.success:before{background-color:rgb(var(--spotlight-success))}.arkynMonthlyCalendarEvent>strong{letter-spacing:0%;color:var(--text-heading);font-size:14px;font-weight:600}.arkynMonthlyCalendarEvent>p{letter-spacing:0%;color:var(--text-heading);font-size:12px;font-weight:400}}
|
|
22
|
+
|
|
23
|
+
@layer arkyn{.arkynMonthlyCalendarTableContainer{background-color:var(--background-foreground);border:1px solid var(--border);border-radius:8px;overflow:hidden}.arkynMonthlyCalendarTableContainer table{border-collapse:collapse;border-spacing:0;table-layout:fixed;width:100%}}
|
|
24
|
+
|
|
25
|
+
@layer arkyn{.arkynMonthlyCalendarTableHeader th{color:var(--text-heading);letter-spacing:0%;padding:20px 0;font-size:16px;font-weight:600;line-height:24px}.arkynMonthlyCalendarTableHeader tr th:not(:first-child){border-left:1px solid var(--border)}}
|
|
26
|
+
|
|
27
|
+
@layer arkyn{.arkynWeekCalendarTableBody td>p{text-align:center;padding:16px;font-size:14px}.arkynWeekCalendarTableBody tr{border-top:1px solid var(--border)}.arkynWeekCalendarTableBody tr td:not(:first-child){border-left:1px solid var(--border)}.arkynWeekCalendarTableBody .hourTd>p{letter-spacing:0%;text-align:center;color:var(--text-body);margin:auto;font-size:16px;font-weight:400;line-height:24px}}
|
|
28
|
+
|
|
29
|
+
@layer arkyn{.arkynWeekCalendarTableTd{-webkit-user-select:none;user-select:none;cursor:pointer;height:73px;position:relative}.arkynWeekCalendarTableTd.blocked{background-color:rgb(var(--spotlight-danger-light))}.arkynWeekCalendarTableTd.blocked:before{content:" ";background-color:rgb(var(--spotlight-danger));width:4px;position:absolute;top:0;bottom:0;left:0}.arkynWeekCalendarTableTd.blocked:hover{cursor:not-allowed}.arkynWeekCalendarTableTd>p{text-align:center;border-radius:8px;margin-bottom:auto;margin-right:auto;font-size:14px;position:absolute;top:0;left:0}.arkynWeekCalendarTableTd.previous,.arkynWeekCalendarTableTd.next{color:var(--text-muted);background-color:var(--card-foreground-primary)}.arkynWeekCalendarTableTd.current>p{color:var(--text-body)}.arkynWeekCalendarTableTd .arkynWeekCalendarTableTdContent{height:100%;margin:3px;position:relative}}
|
|
30
|
+
|
|
31
|
+
@layer arkyn{.arkynWeekCalendarEvent{z-index:2;box-sizing:border-box;border-radius:8px;flex-direction:column;gap:4px;min-height:28px;padding:8px;display:flex;position:absolute;left:0;right:0;overflow:hidden}.arkynWeekCalendarEvent:not(:first-child){box-shadow:-4px 0 2px #0000001a}.arkynWeekCalendarEvent:hover{z-index:3}.arkynWeekCalendarEvent:before{content:" ";border-radius:8px 0 0 8px;width:4px;position:absolute;top:0;bottom:0;left:0}.arkynWeekCalendarEvent.primary{background-color:rgb(var(--spotlight-primary-foreground))}.arkynWeekCalendarEvent.primary:before{background-color:rgb(var(--spotlight-primary))}.arkynWeekCalendarEvent.danger{background-color:rgb(var(--spotlight-danger-foreground))}.arkynWeekCalendarEvent.danger:before{background-color:rgb(var(--spotlight-danger))}.arkynWeekCalendarEvent.warning{background-color:rgb(var(--spotlight-warning-foreground))}.arkynWeekCalendarEvent.warning:before{background-color:rgb(var(--spotlight-warning))}.arkynWeekCalendarEvent.info{background-color:rgb(var(--spotlight-info-foreground))}.arkynWeekCalendarEvent.info:before{background-color:rgb(var(--spotlight-info))}.arkynWeekCalendarEvent.success{background-color:rgb(var(--spotlight-success-foreground))}.arkynWeekCalendarEvent.success:before{background-color:rgb(var(--spotlight-success))}.arkynWeekCalendarEvent>strong{letter-spacing:0%;color:var(--text-heading);font-size:14px;font-weight:600}.arkynWeekCalendarEvent>p{letter-spacing:0%;color:var(--text-heading);font-size:12px;font-weight:400}}
|
|
32
|
+
|
|
33
|
+
@layer arkyn{.arkynWeekCalendarTableContainer{background-color:var(--background-foreground);border:1px solid var(--border);border-radius:8px;overflow:hidden}.arkynWeekCalendarTableContainer table{border-collapse:collapse;border-spacing:0;table-layout:fixed;width:100%}}
|
|
34
|
+
|
|
35
|
+
@layer arkyn{.arkynWeekCalendarTableHeader th{color:var(--text-heading);letter-spacing:0%;padding:20px 0;font-size:16px;font-weight:600;line-height:24px}.arkynWeekCalendarTableHeader tr th:not(:first-child){border-left:1px solid var(--border)}.arkynWeekCalendarTableHeaderContent{flex-direction:column;align-items:center;gap:4px;display:flex}.arkynWeekCalendarTableHeaderContent>span{color:var(--text-muted);font-size:14px;font-weight:400;line-height:20px}.arkynWeekCalendarTableHeaderContent>strong{color:var(--text-heading);font-size:24px;font-weight:500;line-height:28px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/fullCalendar/weekCalendar/index.tsx"],"sourcesContent":["import { WeekCalendarTableBody } from \"./weekCalendarTableBody\";\nimport { WeekCalendarTableContainer } from \"./weekCalendarTableContainer\";\nimport { WeekCalendarTableHeader } from \"./weekCalendarTableHeader\";\n\nfunction WeekCalendar() {\n\treturn (\n\t\t<WeekCalendarTableContainer>\n\t\t\t<WeekCalendarTableHeader />\n\t\t\t<WeekCalendarTableBody />\n\t\t</WeekCalendarTableContainer>\n\t);\n}\n\nexport { WeekCalendar };\n"],"mappings":";;;;;AAIA,SAAS,IAAe;CACvB,OACC,kBAAC,GAAD,EAAA,UAAA,CACC,kBAAC,GAAD,CAA0B,CAAA,GAC1B,kBAAC,GAAD,CAAwB,CAAA,CACG,EAAA,CAAA;AAE9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/weekCalendar/weekCalendarEvent/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport \"./styles.css\";\n\ntype WeekCalendarEventProps = {\n\tday: number;\n\tmonth: number;\n\tyear: number;\n\ttimeInMinutes: number;\n};\n\nconst SLOT_DURATION_MINUTES = 30;\nconst OVERLAP_OFFSET_PX = 40;\n\nfunction WeekCalendarEvent(props: WeekCalendarEventProps) {\n\tconst { events } = useFullCalendar();\n\n\tconst dayEvents = events\n\t\t.map((event, sourceIndex) => ({ event, sourceIndex }))\n\t\t.filter(({ event }) => {\n\t\t\treturn (\n\t\t\t\tevent.initialDate.getDate() === props.day &&\n\t\t\t\tevent.initialDate.getMonth() === props.month &&\n\t\t\t\tevent.initialDate.getFullYear() === props.year\n\t\t\t);\n\t\t})\n\t\t.sort((a, b) => {\n\t\t\tconst startA = a.event.initialDate.getTime();\n\t\t\tconst startB = b.event.initialDate.getTime();\n\n\t\t\tif (startA !== startB) return startA - startB;\n\n\t\t\tconst endA =\n\t\t\t\ta.event.endDate?.getTime() ?? startA + SLOT_DURATION_MINUTES * 60_000;\n\t\t\tconst endB =\n\t\t\t\tb.event.endDate?.getTime() ?? startB + SLOT_DURATION_MINUTES * 60_000;\n\n\t\t\tif (endA !== endB) return endA - endB;\n\t\t\treturn a.sourceIndex - b.sourceIndex;\n\t\t});\n\n\tconst dayEventOrderBySourceIndex = new Map(\n\t\tdayEvents.map((item, orderIndex) => [item.sourceIndex, orderIndex]),\n\t);\n\n\tconst filteredEvents = dayEvents.filter(({ event }) => {\n\t\tconst dayHour = Math.floor(props.timeInMinutes / 60);\n\t\tconst dayMinute = props.timeInMinutes % 60;\n\n\t\tfunction isEventInInterval() {\n\t\t\tconst eventHour = event.initialDate.getHours();\n\t\t\tconst eventMinute = event.initialDate.getMinutes();\n\n\t\t\tif (eventHour !== dayHour) return false;\n\t\t\tif (dayMinute === 0) return eventMinute < 30 && eventMinute >= 0;\n\t\t\tif (dayMinute === 30) return eventMinute >= 30 && eventMinute < 60;\n\t\t}\n\n\t\treturn (\n\t\t\tisEventInInterval() &&\n\t\t\tevent.initialDate.getDate() === props.day &&\n\t\t\tevent.initialDate.getMonth() === props.month &&\n\t\t\tevent.initialDate.getFullYear() === props.year\n\t\t);\n\t});\n\n\tif (filteredEvents.length === 0) return null;\n\n\tfunction makeEventKey(index: number, sourceIndex: number) {\n\t\treturn `${props.day}-${props.month}-${props.year}-${sourceIndex}-${index}`;\n\t}\n\n\tfunction makeHour(date: Date) {\n\t\tconst hours = date.getHours();\n\t\tconst minutes = date.getMinutes();\n\n\t\tif (minutes === 0) return `${hours}h`;\n\t\treturn `${hours}h${minutes}`;\n\t}\n\n\tfunction getEventRangeInMinutes(event: {\n\t\tinitialDate: Date;\n\t\tendDate?: Date;\n\t}) {\n\t\tconst startMinutes =\n\t\t\tevent.initialDate.getHours() * 60 + event.initialDate.getMinutes();\n\n\t\tconst endMinutes = event.endDate\n\t\t\t? event.endDate.getHours() * 60 + event.endDate.getMinutes()\n\t\t\t: startMinutes + SLOT_DURATION_MINUTES;\n\n\t\treturn {\n\t\t\tstartMinutes,\n\t\t\tendMinutes: Math.max(endMinutes, startMinutes + 1),\n\t\t};\n\t}\n\n\tfunction countOverlappingPreviousEvents(\n\t\tcurrentEvent: { initialDate: Date; endDate?: Date },\n\t\tsourceIndex: number,\n\t) {\n\t\tconst current = getEventRangeInMinutes(currentEvent);\n\t\tconst currentOrderIndex = dayEventOrderBySourceIndex.get(sourceIndex);\n\n\t\tif (currentOrderIndex == null) return 0;\n\n\t\treturn dayEvents.reduce((count, item, orderIndex) => {\n\t\t\tif (orderIndex >= currentOrderIndex) return count;\n\n\t\t\tconst candidate = getEventRangeInMinutes(item.event);\n\t\t\tconst intersects =\n\t\t\t\tcandidate.startMinutes < current.endMinutes &&\n\t\t\t\tcandidate.endMinutes > current.startMinutes;\n\n\t\t\tif (!intersects) return count;\n\t\t\treturn count + 1;\n\t\t}, 0);\n\t}\n\n\tfunction getEventStyle(\n\t\tevent: { initialDate: Date; endDate?: Date },\n\t\tsourceIndex: number,\n\t) {\n\t\tconst { startMinutes, endMinutes } = getEventRangeInMinutes(event);\n\t\tconst startOffsetInCell = startMinutes - props.timeInMinutes;\n\n\t\tconst durationInMinutes = Math.max(endMinutes - startMinutes, 1);\n\t\tconst top = (startOffsetInCell / SLOT_DURATION_MINUTES) * 100;\n\t\tconst height = (durationInMinutes / SLOT_DURATION_MINUTES) * 100;\n\t\tconst overlapOffset =\n\t\t\tcountOverlappingPreviousEvents(event, sourceIndex) * OVERLAP_OFFSET_PX;\n\n\t\treturn {\n\t\t\ttop: `${top}%`,\n\t\t\theight: `${height}%`,\n\t\t\tleft: `${overlapOffset}px`,\n\t\t};\n\t}\n\n\t// biome-ignore lint/suspicious/noExplicitAny: intentional\n\tfunction handleEventClick(event: React.MouseEvent, eventData: any) {\n\t\tevent.stopPropagation();\n\t\teventData.onClick?.(eventData.data);\n\t}\n\n\treturn filteredEvents.map(({ event, sourceIndex }, index) => (\n\t\t<div\n\t\t\tkey={makeEventKey(index, sourceIndex)}\n\t\t\tclassName={`arkynWeekCalendarEvent ${event?.scheme || \"primary\"}`}\n\t\t\tstyle={getEventStyle(event, sourceIndex)}\n\t\t\tonClick={(e) => handleEventClick(e, event)}\n\t\t>\n\t\t\t<strong>\n\t\t\t\t{makeHour(event.initialDate)}{\" \"}\n\t\t\t\t{event?.endDate && `- ${makeHour(event.endDate)}`}\n\t\t\t</strong>\n\t\t\t<p>{event.title}</p>\n\t\t</div>\n\t));\n}\n\nexport { WeekCalendarEvent };\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynWeekCalendarEvent{z-index:2;box-sizing:border-box;border-radius:8px;flex-direction:column;gap:4px;min-height:28px;padding:8px;display:flex;position:absolute;left:0;right:0;overflow:hidden}.arkynWeekCalendarEvent:not(:first-child){box-shadow:-4px 0 2px #0000001a}.arkynWeekCalendarEvent:hover{z-index:3}.arkynWeekCalendarEvent:before{content:" ";border-radius:8px 0 0 8px;width:4px;position:absolute;top:0;bottom:0;left:0}.arkynWeekCalendarEvent.primary{background-color:rgb(var(--spotlight-primary-foreground))}.arkynWeekCalendarEvent.primary:before{background-color:rgb(var(--spotlight-primary))}.arkynWeekCalendarEvent.danger{background-color:rgb(var(--spotlight-danger-foreground))}.arkynWeekCalendarEvent.danger:before{background-color:rgb(var(--spotlight-danger))}.arkynWeekCalendarEvent.warning{background-color:rgb(var(--spotlight-warning-foreground))}.arkynWeekCalendarEvent.warning:before{background-color:rgb(var(--spotlight-warning))}.arkynWeekCalendarEvent.info{background-color:rgb(var(--spotlight-info-foreground))}.arkynWeekCalendarEvent.info:before{background-color:rgb(var(--spotlight-info))}.arkynWeekCalendarEvent.success{background-color:rgb(var(--spotlight-success-foreground))}.arkynWeekCalendarEvent.success:before{background-color:rgb(var(--spotlight-success))}.arkynWeekCalendarEvent>strong{letter-spacing:0%;color:var(--text-heading);font-size:14px;font-weight:600}.arkynWeekCalendarEvent>p{letter-spacing:0%;color:var(--text-heading);font-size:12px;font-weight:400}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/weekCalendar/weekCalendarTableBody/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport { ViewService } from \"../../_viewService\";\nimport { WeekCalendarTableTd } from \"../weekCalendarTableTd\";\nimport \"./styles.css\";\n\nfunction WeekCalendarTableBody() {\n\tconst fullCalendar = useFullCalendar();\n\tconst viewService = new ViewService();\n\n\treturn (\n\t\t<tbody className=\"arkynWeekCalendarTableBody\">\n\t\t\t{fullCalendar.listWeeklyMatrix.map((hourRow) => (\n\t\t\t\t<tr key={hourRow[0].timeInMinutes}>\n\t\t\t\t\t<td className=\"hourTd\">\n\t\t\t\t\t\t<p>{viewService.formatHourLabel(hourRow[0].timeInMinutes)}</p>\n\t\t\t\t\t</td>\n\n\t\t\t\t\t{hourRow.map((cell) => (\n\t\t\t\t\t\t<WeekCalendarTableTd\n\t\t\t\t\t\t\tkey={`${cell.year}-${cell.month}-${cell.day}-${cell.timeInMinutes}`}\n\t\t\t\t\t\t\t{...cell}\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\t\t\t\t</tr>\n\t\t\t))}\n\t\t</tbody>\n\t);\n}\n\nexport { WeekCalendarTableBody };\n"],"mappings":";;;;;;AAKA,SAAS,IAAwB;CAChC,IAAM,IAAe,EAAgB,GAC/B,IAAc,IAAI,EAAY;CAEpC,OACC,kBAAC,SAAD;EAAO,WAAU;YACf,EAAa,iBAAiB,KAAK,MACnC,kBAAC,MAAD,EAAA,UAAA,CACC,kBAAC,MAAD;GAAI,WAAU;aACb,kBAAC,KAAD,EAAA,UAAI,EAAY,gBAAgB,EAAQ,EAAE,CAAC,aAAa,EAAK,CAAA;EAC1D,CAAA,GAEH,EAAQ,KAAK,MACb,kBAAC,GAAD,EAEC,GAAI,EACJ,GAFK,GAAG,EAAK,KAAK,GAAG,EAAK,MAAM,GAAG,EAAK,IAAI,GAAG,EAAK,eAEpD,CACD,CACE,EAAA,GAXK,EAAQ,EAAE,CAAC,aAWhB,CACJ;CACK,CAAA;AAET"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynWeekCalendarTableBody td>p{text-align:center;padding:16px;font-size:14px}.arkynWeekCalendarTableBody tr{border-top:1px solid var(--border)}.arkynWeekCalendarTableBody tr td:not(:first-child){border-left:1px solid var(--border)}.arkynWeekCalendarTableBody .hourTd>p{letter-spacing:0%;text-align:center;color:var(--text-body);margin:auto;font-size:16px;font-weight:400;line-height:24px}}
|
package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableContainer/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/weekCalendar/weekCalendarTableContainer/index.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport \"./styles.css\";\n\ntype WeekCalendarTableContainerProps = {\n\tchildren: ReactNode;\n};\n\nfunction WeekCalendarTableContainer({\n\tchildren,\n}: WeekCalendarTableContainerProps) {\n\treturn (\n\t\t<div className=\"arkynWeekCalendarTableContainer\">\n\t\t\t<table>{children}</table>\n\t\t</div>\n\t);\n}\n\nexport { WeekCalendarTableContainer };\n"],"mappings":";;;AAOA,SAAS,EAA2B,EACnC,eACmC;CACnC,OACC,kBAAC,OAAD;EAAK,WAAU;YACd,kBAAC,SAAD,EAAQ,YAAgB,CAAA;CACpB,CAAA;AAEP"}
|
package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableContainer/styles.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynWeekCalendarTableContainer{background-color:var(--background-foreground);border:1px solid var(--border);border-radius:8px;overflow:hidden}.arkynWeekCalendarTableContainer table{border-collapse:collapse;border-spacing:0;table-layout:fixed;width:100%}}
|
package/dist/modules/components/fullCalendar/weekCalendar/weekCalendarTableHeader/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/weekCalendar/weekCalendarTableHeader/index.tsx"],"sourcesContent":["import { formatToCapitalizeFirstWordLetter } from \"@arkyn/shared\";\nimport { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport \"./styles.css\";\n\nfunction WeekCalendarTableHeader() {\n\tconst { listWeek, listWeeklyMatrix } = useFullCalendar();\n\tconst firstHourRow = listWeeklyMatrix[0] || [];\n\n\treturn (\n\t\t<thead className=\"arkynWeekCalendarTableHeader\">\n\t\t\t<tr>\n\t\t\t\t<th />\n\t\t\t\t{listWeek.map((day, index) => (\n\t\t\t\t\t<th key={day}>\n\t\t\t\t\t\t<div className=\"arkynWeekCalendarTableHeaderContent\">\n\t\t\t\t\t\t\t<span>{formatToCapitalizeFirstWordLetter(day)}</span>\n\t\t\t\t\t\t\t<strong>{firstHourRow[index]?.day}</strong>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</th>\n\t\t\t\t))}\n\t\t\t</tr>\n\t\t</thead>\n\t);\n}\n\nexport { WeekCalendarTableHeader };\n"],"mappings":";;;;;AAIA,SAAS,IAA0B;CAClC,IAAM,EAAE,aAAU,wBAAqB,EAAgB,GACjD,IAAe,EAAiB,MAAM,CAAC;CAE7C,OACC,kBAAC,SAAD;EAAO,WAAU;YAChB,kBAAC,MAAD,EAAA,UAAA,CACC,kBAAC,MAAD,CAAK,CAAA,GACJ,EAAS,KAAK,GAAK,MACnB,kBAAC,MAAD,EAAA,UACC,kBAAC,OAAD;GAAK,WAAU;aAAf,CACC,kBAAC,QAAD,EAAA,UAAO,EAAkC,CAAG,EAAQ,CAAA,GACpD,kBAAC,UAAD,EAAA,UAAS,EAAa,EAAM,EAAE,IAAY,CAAA,CACtC;KACF,GALK,CAKL,CACJ,CACE,EAAA,CAAA;CACE,CAAA;AAET"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynWeekCalendarTableHeader th{color:var(--text-heading);letter-spacing:0%;padding:20px 0;font-size:16px;font-weight:600;line-height:24px}.arkynWeekCalendarTableHeader tr th:not(:first-child){border-left:1px solid var(--border)}.arkynWeekCalendarTableHeaderContent{flex-direction:column;align-items:center;gap:4px;display:flex}.arkynWeekCalendarTableHeaderContent>span{color:var(--text-muted);font-size:14px;font-weight:400;line-height:20px}.arkynWeekCalendarTableHeaderContent>strong{color:var(--text-heading);font-size:24px;font-weight:500;line-height:28px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/fullCalendar/weekCalendar/weekCalendarTableTd/index.tsx"],"sourcesContent":["import { useFullCalendar } from \"../../_fullCalendarProvider\";\nimport { WeekCalendarEvent } from \"../weekCalendarEvent\";\nimport \"./styles.css\";\n\ntype WeekCalendarTableTdProps = {\n\tday: number;\n\tmonth: number;\n\tyear: number;\n\tdayOwner: \"previous\" | \"current\" | \"next\";\n\ttimeInMinutes: number;\n};\n\nfunction WeekCalendarTableTd(props: WeekCalendarTableTdProps) {\n\tconst { day, month, year, dayOwner, timeInMinutes } = props;\n\tconst { blockedTimestamps, onClickDate } = useFullCalendar();\n\n\tfunction isBlocked() {\n\t\tconst currentDate = new Date(year, month, day);\n\n\t\treturn blockedTimestamps.some(\n\t\t\t(timestamp) =>\n\t\t\t\tcurrentDate >= timestamp.initialDate &&\n\t\t\t\tcurrentDate <= timestamp.endDate,\n\t\t);\n\t}\n\n\tfunction handleClick(event: React.MouseEvent) {\n\t\tevent.stopPropagation();\n\t\tif (isBlocked()) return;\n\n\t\tif (onClickDate) {\n\t\t\tconst date = new Date(year, month, day);\n\t\t\tdate.setHours(0, timeInMinutes, 0, 0);\n\t\t\tonClickDate(date);\n\t\t}\n\t}\n\n\treturn (\n\t\t<td\n\t\t\tclassName={`arkynWeekCalendarTableTd ${dayOwner} ${isBlocked() ? \"blocked\" : \"\"}`}\n\t\t\tdata-day={day}\n\t\t\tdata-time={timeInMinutes}\n\t\t\tonClick={handleClick}\n\t\t>\n\t\t\t<div className=\"arkynWeekCalendarTableTdContent\">\n\t\t\t\t<WeekCalendarEvent\n\t\t\t\t\tday={day}\n\t\t\t\t\tmonth={month}\n\t\t\t\t\tyear={year}\n\t\t\t\t\ttimeInMinutes={timeInMinutes}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</td>\n\t);\n}\n\nexport { WeekCalendarTableTd };\n"],"mappings":";;;;;AAYA,SAAS,EAAoB,GAAiC;CAC7D,IAAM,EAAE,QAAK,UAAO,SAAM,aAAU,qBAAkB,GAChD,EAAE,sBAAmB,mBAAgB,EAAgB;CAE3D,SAAS,IAAY;EACpB,IAAM,IAAc,IAAI,KAAK,GAAM,GAAO,CAAG;EAE7C,OAAO,EAAkB,MACvB,MACA,KAAe,EAAU,eACzB,KAAe,EAAU,OAC3B;CACD;CAEA,SAAS,EAAY,GAAyB;EAC7C,MAAM,gBAAgB,GAClB,GAAU,KAEV,GAAa;GAChB,IAAM,IAAO,IAAI,KAAK,GAAM,GAAO,CAAG;GAEtC,AADA,EAAK,SAAS,GAAG,GAAe,GAAG,CAAC,GACpC,EAAY,CAAI;EACjB;CACD;CAEA,OACC,kBAAC,MAAD;EACC,WAAW,4BAA4B,EAAS,IAAI,EAAU,IAAI,YAAY;EAC9E,YAAU;EACV,aAAW;EACX,SAAS;YAET,kBAAC,OAAD;GAAK,WAAU;aACd,kBAAC,GAAD;IACM;IACE;IACD;IACS;GACf,CAAA;EACG,CAAA;CACF,CAAA;AAEN"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer arkyn{.arkynWeekCalendarTableTd{-webkit-user-select:none;user-select:none;cursor:pointer;height:73px;position:relative}.arkynWeekCalendarTableTd.blocked{background-color:rgb(var(--spotlight-danger-light))}.arkynWeekCalendarTableTd.blocked:before{content:" ";background-color:rgb(var(--spotlight-danger));width:4px;position:absolute;top:0;bottom:0;left:0}.arkynWeekCalendarTableTd.blocked:hover{cursor:not-allowed}.arkynWeekCalendarTableTd>p{text-align:center;border-radius:8px;margin-bottom:auto;margin-right:auto;font-size:14px;position:absolute;top:0;left:0}.arkynWeekCalendarTableTd.previous,.arkynWeekCalendarTableTd.next{color:var(--text-muted);background-color:var(--card-foreground-primary)}.arkynWeekCalendarTableTd.current>p{color:var(--text-body)}.arkynWeekCalendarTableTd .arkynWeekCalendarTableTdContent{height:100%;margin:3px;position:relative}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"googleAnalytics.client.js","names":[],"sources":["../../../../src/components/googleAnalytics/googleAnalytics.client.tsx"],"sourcesContent":["import { GoogleAnalytics } from \"./googleAnalytics\";\n\ntype GoogleAnalyticsClientProps = {\n\tmeasurementId: string;\n};\n\nfunction GoogleAnalyticsClient(props: GoogleAnalyticsClientProps) {\n\tconst googleAnalytics = new GoogleAnalytics();\n\tgoogleAnalytics.initialize(props);\n\n\treturn null;\n}\n\nexport { GoogleAnalyticsClient };\n"],"mappings":";;AAMA,SAAS,EAAsB,GAAmC;CAIjE,OAFA,IAD4B,EAC5B,CAAA,CAAgB,WAAW,CAAK,GAEzB;AACR"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"googleAnalytics.js","names":[],"sources":["../../../../src/components/googleAnalytics/googleAnalytics.tsx"],"sourcesContent":["import { generateGAElements } from \"./snippets/generateGAElements\";\n\ntype InitializeProps = {\n\tmeasurementId: string;\n};\n\nclass GoogleAnalytics {\n\tprivate initializeAsyncScript(src: string) {\n\t\tconst script = document.createElement(\"script\");\n\t\tscript.async = true;\n\t\tscript.src = src;\n\t\treturn script;\n\t}\n\n\tprivate initializeInlineScript(content: string) {\n\t\tconst script = document.createElement(\"script\");\n\t\tscript.innerHTML = content;\n\t\treturn script;\n\t}\n\n\tinitialize(props: InitializeProps) {\n\t\tconst { measurementId } = props;\n\n\t\tconst elements = generateGAElements({ measurementId });\n\n\t\tconst asyncScript = this.initializeAsyncScript(elements.src);\n\t\tconst inlineScript = this.initializeInlineScript(elements.script);\n\n\t\tdocument.head.appendChild(asyncScript);\n\t\tdocument.head.appendChild(inlineScript);\n\t}\n}\n\nexport { GoogleAnalytics };\n"],"mappings":";;AAMA,IAAM,IAAN,MAAsB;CACrB,sBAA8B,GAAa;EAC1C,IAAM,IAAS,SAAS,cAAc,QAAQ;EAG9C,OAFA,EAAO,QAAQ,IACf,EAAO,MAAM,GACN;CACR;CAEA,uBAA+B,GAAiB;EAC/C,IAAM,IAAS,SAAS,cAAc,QAAQ;EAE9C,OADA,EAAO,YAAY,GACZ;CACR;CAEA,WAAW,GAAwB;EAClC,IAAM,EAAE,qBAAkB,GAEpB,IAAW,EAAmB,EAAE,iBAAc,CAAC,GAE/C,IAAc,KAAK,sBAAsB,EAAS,GAAG,GACrD,IAAe,KAAK,uBAAuB,EAAS,MAAM;EAGhE,AADA,SAAS,KAAK,YAAY,CAAW,GACrC,SAAS,KAAK,YAAY,CAAY;CACvC;AACD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/googleAnalytics/index.tsx"],"sourcesContent":["import type { JSX } from \"react\";\nimport { ClientOnly } from \"../clientOnly\";\nimport { GoogleAnalyticsClient } from \"./googleAnalytics.client\";\n\ntype GoogleAnalyticsProps = {\n\t/** Google Analytics 4 Measurement ID (e.g. `\"G-XXXXXXXXXX\"`). Required. */\n\tmeasurementId: string;\n\t/** When true, renders the GA4 snippet in development mode (bypasses the production check). @default false */\n\tshowInDevMode?: boolean;\n};\n\n/**\n * GoogleAnalytics — injects the Google Analytics 4 script into the page client-side.\n *\n * Renders nothing in development mode unless `showInDevMode` is `true`.\n * Wrapped in `ClientOnly` to avoid SSR errors.\n *\n * @param props.measurementId - GA4 Measurement ID (e.g. `\"G-XXXXXXXXXX\"`). Required.\n * @param props.showInDevMode - Renders in development mode. Default: false\n *\n * @returns GoogleAnalytics JSX element, or an empty fragment in dev mode.\n *\n * @example\n * ```tsx\n * // In your root layout\n * <GoogleAnalytics measurementId=\"G-XXXXXXXXXX\" />\n *\n * // Enable in development for testing\n * <GoogleAnalytics measurementId=\"G-XXXXXXXXXX\" showInDevMode />\n * ```\n */\n\nfunction GoogleAnalytics(props: GoogleAnalyticsProps): JSX.Element | null {\n\tconst { measurementId, showInDevMode = false } = props;\n\n\tif (process.env.NODE_ENV !== \"production\" && !showInDevMode) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ClientOnly>\n\t\t\t{() => <GoogleAnalyticsClient measurementId={measurementId} />}\n\t\t</ClientOnly>\n\t);\n}\n\nexport { GoogleAnalytics };\n"],"mappings":";;;;AAgCA,SAAS,EAAgB,GAAiD;CACzE,IAAM,EAAE,kBAAe,mBAAgB,OAAU;CAMjD,OAJA,QAAA,IAAA,aAA6B,gBAAgB,CAAC,IACtC,OAIP,kBAAC,GAAD,EAAA,gBACQ,kBAAC,GAAD,EAAsC,iBAAgB,CAAA,EAClD,CAAA;AAEd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateGAElements.js","names":[],"sources":["../../../../../src/components/googleAnalytics/snippets/generateGAElements.ts"],"sourcesContent":["type GenerateGAElementsProps = {\n\tmeasurementId: string;\n};\n\nfunction generateGAElements(props: GenerateGAElementsProps) {\n\tconst { measurementId } = props;\n\n\tif (!measurementId)\n\t\tconsole.warn(\"Google Analytics Measurement ID is required\");\n\n\tconst src = `https://www.googletagmanager.com/gtag/js?id=${measurementId}`;\n\n\tconst script = `\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', '${measurementId}');`;\n\n\treturn {\n\t\tsrc,\n\t\tscript,\n\t};\n}\n\nexport { generateGAElements };\n"],"mappings":";AAIA,SAAS,EAAmB,GAAgC;CAC3D,IAAM,EAAE,qBAAkB;CAa1B,OAXK,KACJ,QAAQ,KAAK,6CAA6C,GAUpD;EACN,KAAA,+CAT0D;EAU1D,QAAA;;;;sBAJoB,EAAc;CAKnC;AACD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"googleTagManager.client.js","names":[],"sources":["../../../../src/components/googleTagManager/googleTagManager.client.tsx"],"sourcesContent":["import { GoogleTagManager } from \"./googleTagManager\";\n\ntype GoogleTagManagerClientProps = {\n\tgtmId: string;\n\tevents: Record<string, string>;\n\tdataLayer: Record<string, string>;\n\tdataLayerName: string;\n\tauth: string;\n\tpreview: string;\n};\n\nfunction GoogleTagManagerClient(props: GoogleTagManagerClientProps) {\n\tconst googleTagManager = new GoogleTagManager();\n\tgoogleTagManager.initialize(props);\n\n\treturn null;\n}\n\nexport { GoogleTagManagerClient };\n"],"mappings":";;AAWA,SAAS,EAAuB,GAAoC;CAInE,OAFA,IAD6B,EAC7B,CAAA,CAAiB,WAAW,CAAK,GAE1B;AACR"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"googleTagManager.js","names":[],"sources":["../../../../src/components/googleTagManager/googleTagManager.tsx"],"sourcesContent":["import { appendToDataLayer } from \"./snippets/appendToDataLayer\";\nimport { generateGTMElements } from \"./snippets/generateGTMElements\";\n\ntype InitializeDataLayerProps = {\n\tdataLayerName: string;\n\tdataLayer: Record<string, string>;\n};\n\ntype InitializeGTMProps = {\n\tid: string;\n\tevents: Record<string, string>;\n\tdataLayer: Record<string, string>;\n\tdataLayerName: string;\n\tpreview: string;\n\tauth: string;\n};\n\ntype InitializeProps = {\n\tgtmId: string;\n\tevents: Record<string, string>;\n\tdataLayer: Record<string, string>;\n\tdataLayerName: string;\n\tauth: string;\n\tpreview: string;\n};\n\ninterface Window {\n\t// biome-ignore lint/suspicious/noExplicitAny: intentional\n\t[key: string]: any;\n}\n\ndeclare var window: Window;\n\nclass GoogleTagManager {\n\tprivate initializeDataScript(dataLayer: string) {\n\t\tconst script = document.createElement(\"script\");\n\t\tscript.innerHTML = dataLayer;\n\t\treturn script;\n\t}\n\n\tprivate initializeGTMElements(props: InitializeGTMProps) {\n\t\tconst snippets = generateGTMElements(props);\n\n\t\tconst noScript = () => {\n\t\t\tconst noscript = document.createElement(\"noscript\");\n\t\t\tnoscript.innerHTML = snippets.iframe;\n\t\t\treturn noscript;\n\t\t};\n\n\t\tconst script = () => {\n\t\t\tconst script = document.createElement(\"script\");\n\t\t\tscript.innerHTML = snippets.script;\n\t\t\treturn script;\n\t\t};\n\n\t\tconst dataScript = this.initializeDataScript(snippets.dataLayerVar);\n\n\t\treturn {\n\t\t\tnoScript,\n\t\t\tscript,\n\t\t\tdataScript,\n\t\t};\n\t}\n\n\tinitializeDataLayer(props: InitializeDataLayerProps) {\n\t\tconst { dataLayer, dataLayerName } = props;\n\n\t\tif (window[dataLayerName]) return window[dataLayerName].push(dataLayer);\n\n\t\tconst snippets = appendToDataLayer({ dataLayer, dataLayerName });\n\t\tconst dataScript = this.initializeDataScript(snippets);\n\n\t\tdocument.head.insertBefore(dataScript, document.head.childNodes[0]);\n\t}\n\n\tinitialize(props: InitializeProps) {\n\t\tconst {\n\t\t\tevents,\n\t\t\tgtmId,\n\t\t\tdataLayer,\n\t\t\tauth = \"\",\n\t\t\tpreview = \"\",\n\t\t\tdataLayerName = \"dataLayer\",\n\t\t} = props;\n\n\t\tconst gtm = this.initializeGTMElements({\n\t\t\tid: gtmId,\n\t\t\tevents: events,\n\t\t\tdataLayer: dataLayer || undefined,\n\t\t\tdataLayerName: dataLayerName,\n\t\t\tauth,\n\t\t\tpreview,\n\t\t});\n\n\t\tif (dataLayer) document.head.appendChild(gtm.dataScript);\n\t\tdocument.head.insertBefore(gtm.script(), document.head.childNodes[0]);\n\t\tdocument.body.insertBefore(gtm.noScript(), document.body.childNodes[0]);\n\t}\n}\n\nexport { GoogleTagManager };\n"],"mappings":";;;AAiCA,IAAM,IAAN,MAAuB;CACtB,qBAA6B,GAAmB;EAC/C,IAAM,IAAS,SAAS,cAAc,QAAQ;EAE9C,OADA,EAAO,YAAY,GACZ;CACR;CAEA,sBAA8B,GAA2B;EACxD,IAAM,IAAW,EAAoB,CAAK;EAgB1C,OAAO;GACN,gBAfsB;IACtB,IAAM,IAAW,SAAS,cAAc,UAAU;IAElD,OADA,EAAS,YAAY,EAAS,QACvB;GACR;GAYC,cAVoB;IACpB,IAAM,IAAS,SAAS,cAAc,QAAQ;IAE9C,OADA,EAAO,YAAY,EAAS,QACrB;GACR;GAOC,YALkB,KAAK,qBAAqB,EAAS,YAKrD;EACD;CACD;CAEA,oBAAoB,GAAiC;EACpD,IAAM,EAAE,cAAW,qBAAkB;EAErC,IAAI,OAAO,IAAgB,OAAO,OAAO,EAAc,CAAC,KAAK,CAAS;EAEtE,IAAM,IAAW,EAAkB;GAAE;GAAW;EAAc,CAAC,GACzD,IAAa,KAAK,qBAAqB,CAAQ;EAErD,SAAS,KAAK,aAAa,GAAY,SAAS,KAAK,WAAW,EAAE;CACnE;CAEA,WAAW,GAAwB;EAClC,IAAM,EACL,WACA,UACA,cACA,UAAO,IACP,aAAU,IACV,mBAAgB,gBACb,GAEE,IAAM,KAAK,sBAAsB;GACtC,IAAI;GACI;GACR,WAAW,KAAa,KAAA;GACT;GACf;GACA;EACD,CAAC;EAID,AAFI,KAAW,SAAS,KAAK,YAAY,EAAI,UAAU,GACvD,SAAS,KAAK,aAAa,EAAI,OAAO,GAAG,SAAS,KAAK,WAAW,EAAE,GACpE,SAAS,KAAK,aAAa,EAAI,SAAS,GAAG,SAAS,KAAK,WAAW,EAAE;CACvE;AACD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/googleTagManager/index.tsx"],"sourcesContent":["import { ClientOnly } from \"../clientOnly\";\nimport { GoogleTagManagerClient } from \"./googleTagManager.client\";\n\ntype GoogleTagManagerProps = {\n\t/** Google Tag Manager container ID (e.g. `\"GTM-XXXXXXX\"`). Required. */\n\tgtmId: string;\n\t/** Additional key-value pairs pushed to the dataLayer on initialization. */\n\tevents?: Record<string, string>;\n\t/** Initial key-value pairs added to the dataLayer before GTM loads. */\n\tdataLayer?: Record<string, string>;\n\t/** Global variable name for the dataLayer array. @default \"dataLayer\" */\n\tdataLayerName?: string;\n\t/** GTM environment auth token (for staging/testing environments). */\n\tauth?: string;\n\t/** GTM environment preview token (e.g. `\"env-3\"`). */\n\tpreview?: string;\n\t/** When true, renders the GTM snippet in development mode (bypasses the production check). @default false */\n\tshowInDevMode?: boolean;\n};\n\n/**\n * GoogleTagManager — injects the GTM `<script>` and `<noscript>` snippets into the page client-side.\n *\n * Renders nothing in development mode unless `showInDevMode` is `true`.\n * Wrapped in `ClientOnly` to avoid SSR errors.\n *\n * @param props.gtmId - GTM container ID (e.g. `\"GTM-XXXXXXX\"`). Required.\n * @param props.dataLayer - Initial key-value pairs for the dataLayer.\n * @param props.dataLayerName - Global dataLayer variable name. Default: \"dataLayer\"\n * @param props.events - Additional key-value pairs pushed on initialization.\n * @param props.auth - GTM environment auth token.\n * @param props.preview - GTM environment preview token (e.g. `\"env-3\"`).\n * @param props.showInDevMode - Renders in development mode. Default: false\n *\n * @returns GoogleTagManager JSX element, or an empty fragment in dev mode.\n *\n * @example\n * ```tsx\n * // Basic setup in your root layout\n * <GoogleTagManager gtmId=\"GTM-XXXXXXX\" />\n *\n * // With initial dataLayer values\n * <GoogleTagManager\n * gtmId=\"GTM-XXXXXXX\"\n * dataLayer={{ pageType: \"home\", userType: \"anonymous\" }}\n * />\n *\n * // Staging/preview environment\n * <GoogleTagManager\n * gtmId=\"GTM-XXXXXXX\"\n * auth=\"your-auth-token\"\n * preview=\"env-3\"\n * showInDevMode\n * />\n * ```\n */\n\nfunction GoogleTagManager(props: GoogleTagManagerProps) {\n\tconst {\n\t\tgtmId,\n\t\tauth = \"\",\n\t\tpreview = \"\",\n\t\tdataLayerName = \"dataLayer\",\n\t\tevents = {},\n\t\tdataLayer = {},\n\t\tshowInDevMode = false,\n\t} = props;\n\n\tif (process.env.NODE_ENV !== \"production\" && !showInDevMode) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ClientOnly>\n\t\t\t{() => (\n\t\t\t\t<GoogleTagManagerClient\n\t\t\t\t\tauth={auth}\n\t\t\t\t\tdataLayer={dataLayer}\n\t\t\t\t\tdataLayerName={dataLayerName}\n\t\t\t\t\tevents={events}\n\t\t\t\t\tgtmId={gtmId}\n\t\t\t\t\tpreview={preview}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</ClientOnly>\n\t);\n}\n\nexport { GoogleTagManager };\n"],"mappings":";;;;AAyDA,SAAS,EAAiB,GAA8B;CACvD,IAAM,EACL,UACA,UAAO,IACP,aAAU,IACV,mBAAgB,aAChB,YAAS,CAAC,GACV,eAAY,CAAC,GACb,mBAAgB,OACb;CAMJ,OAJA,QAAA,IAAA,aAA6B,gBAAgB,CAAC,IACtC,OAIP,kBAAC,GAAD,EAAA,gBAEE,kBAAC,GAAD;EACO;EACK;EACI;EACP;EACD;EACE;CACT,CAAA,EAES,CAAA;AAEd"}
|