diff --git a/README.md b/README.md index 62005a9..e8266a9 100644 --- a/README.md +++ b/README.md @@ -25,9 +25,9 @@ Or using yarn: yarn add react-calendar-plus ``` -## Usage +## Example Usage -```javascript +```typescript import React from 'react'; import { Calendar, CalendarEvent, CalendarEventStore } from 'react-calendar-plus'; @@ -67,13 +67,32 @@ function CalendarDemo() { // Support for listening for calendar events: calenderEventStore.onAdd((event: CalendarEvent) => { - console.log("Added event:", event); + // Call server to add event + fetch('https://api.example.com/events', { + method: 'POST', + headers: { + 'Content-Type': 'application/json' + }, + body: JSON.stringify(event) + }); }); calenderEventStore.onUpdate((event: CalendarEvent) => { - console.log("Updated event:", event); + // Call server to add event + fetch(`https://api.example.com/events/${event.id}`, { + method: 'PUT', + headers: { + 'Content-Type': 'application/json' + }, + body: JSON.stringify(event) + }); }); calenderEventStore.onDelete((event: CalendarEvent) => { - console.log("Deleted event:", event); + fetch(`https://api.example.com/events/${event.id}`, { + method: 'DELETE', + headers: { + 'Content-Type': 'application/json' + } + }); }); return ( diff --git a/package.json b/package.json index fb7e552..12a3b7a 100644 --- a/package.json +++ b/package.json @@ -14,8 +14,8 @@ ], "scripts": { "build": "npm run build:cjs && npm run build:esm && npm run build:umd && npm run build:types && npm run build:demo", - "build:cjs": "tsc -p tsconfig.cjs.json", - "build:esm": "tsc -p tsconfig.esm.json", + "build:cjs": "tsc -p tsconfig.cjs.json && cp ./src/calendar.css ./dist/cjs/", + "build:esm": "tsc -p tsconfig.esm.json && cp ./src/calendar.css ./dist/esm/", "build:umd": "webpack --mode production", "build:types": "tsc -p tsconfig.types.json", "build:demo": "webpack --config webpack.demo.config.js --mode production && cp demo/index.html dist/demo", diff --git a/src/calendar.css b/src/calendar.css index 3b874e9..634d308 100644 --- a/src/calendar.css +++ b/src/calendar.css @@ -75,22 +75,31 @@ border-left: 3px solid rgb(101, 219, 57); } -.calendar-event.success { - background-color: #28a745; - border-color: #269940; +.calendar-month-view { + display: grid; + grid-template-columns: repeat(7, 1fr); } -.calendar-event.warning { - background-color: #ffc107; - border-color: #ffb507; +.weekdays-row { + display: contents; /* makes the children of this div to respect the parent grid */ } -.calendar-event.danger { - background-color: #dc3545; - border-color: #d2253a; +.weekday { + background-color: #f7f7f7; + padding: 5px; + text-align: center; + font-weight: bold; } -.calendar-event.primary { - background-color: #007bff; - border-color: #006fee; +.calendar-day { + background-color: #ffffff; + padding: 5px; + border: 1px solid #e0e0e0; + min-height: 120px; +} + +.calendar-day.inactive { + background-color: #f7f7f7; + border: none; + cursor: none; } \ No newline at end of file diff --git a/src/views/month-view.css b/src/views/month-view.css deleted file mode 100644 index 6588f33..0000000 --- a/src/views/month-view.css +++ /dev/null @@ -1,28 +0,0 @@ -.calendar-month-view { - display: grid; - grid-template-columns: repeat(7, 1fr); -} - -.weekdays-row { - display: contents; /* makes the children of this div to respect the parent grid */ -} - -.weekday { - background-color: #f7f7f7; - padding: 5px; - text-align: center; - font-weight: bold; -} - -.calendar-day { - background-color: #ffffff; - padding: 5px; - border: 1px solid #e0e0e0; - min-height: 120px; -} - -.calendar-day.inactive { - background-color: #f7f7f7; - border: none; - cursor: none; -} \ No newline at end of file diff --git a/src/views/month-view.tsx b/src/views/month-view.tsx index 81ff32a..7ac1a38 100644 --- a/src/views/month-view.tsx +++ b/src/views/month-view.tsx @@ -1,7 +1,6 @@ import React from 'react'; import CalendarEventStore from "../calendar-event-store"; import { areDatesEqual } from "../utils/date"; -import "./month-view.css"; interface Props { activeDate: Date;