date-time-slots v1.0.0
date-time-slots (timeSlot) Library Overview:
date-time-slots
(timeSlot) is a user-friendly JavaScript library for Node.js that simplifies the handling of time slots in projects. It provides easy-to-use methods to convert, manipulate, and generate time slots. Here's a quick rundown: This library aims to make working with time slots in Node.js projects straightforward and efficient. Developers can easily integrate it into their applications for effective time management.
install package
npm i date-time-slots
npm i @krishnapawar/date-time-slots
1 Time Conversion:
railwayToNormalTimeConvert
andformatTimeIn24Hour
convert railway time to normal time and vice versa.normalToRailwayTimeConvert
changes normal time to railway time.
railwayToNormalTimeConvert("13:00");
formatTimeIn24Hour("13:00");
normalToRailwayTimeConvert("01:00 AM");
Examples.
railwayToNormalTimeConvert method covert railway time into normal time example
railwayToNormalTimeConvert("13:00");
>we can also use same as formatTimeIn24Hour method covert railway time into normal time example
```javaScript
formatTimeIn24Hour("13:00");
also apposite method same as normalToRalwayTimeConvert method covert normal time into railway time example
normalToRalwayTimeConvert("01:00 AM");
2 Generating Time Slots:
* `timeSlot` generates an array of time slots based on provided start and end times.
You can customize the duration and format of the slots.
```javaScript
let slots = timeSlot({ starting_time: '12:00', ending_time: '17:00', duration: 15 });
- Additional options include handling current time, specific dates, and blocking slots.
let slots = timeSlot({ isCurrent: true, date: "2023-11-05", starting_time: '12:00', ending_time: '17:00' });
timeSlot method covert into simple time slot it take three argument in json starting_time,ending_time,and duration, and it give output in array example '12:00','12:15','12:30','12:45','01:00','01:15' example paylode
{ duration:15, date: "2023-11-05"T10:13:02.481Z, isCurrent: true, starting_time: '12:00', ending_time: '17:00' }
let data = timeSlot({starting_time: '12:00', ending_time: '17:00' } );
>we can pass time as 12 hour format or 24 format is this method it give as same output.
```javaScript
let data = timeSlot({starting_time: '11:00 PM', ending_time: '01:00 AM' } );
If we want check time with current time and show only remening slot only. then we have to use keyword (
isCurrent:true
) in this object.
let data = timeSlot({ isCurrent: true, starting_time: '12:00', ending_time: '17:00' } );
>If we want check time with current time and current date then we have to pass date as well in the object with `{
date:"2023-10-04",
isCurrent:true
} `and it show only remening slot only in current.
```javaScript
let data = timeSlot({ date: "2023-11-05", isCurrent: true, starting_time: '12:00', ending_time: '17:00' } );
By default It make 15 minuts time slot If you want to change time slot duration you can chang using keyword =>
duration:30
,
let data = timeSlot({ duration: 15, date: "2023-11-05", isCurrent: true, starting_time: '12:00', ending_time: '17:00' } );
If you want show slot current time to next slot then use keyword
next:true
.
let data = timeSlot({
duration: 15,
date: "2023-11-05",
isCurrent: true,
starting_time: '12:00',
ending_time: '17:00',
next:true
} );
>if you want slot in 24 hour time you can use keyword =>`isNotRailwayTime:true`, It give you time slot in 24 hour time.
```javaScript
let data = timeSlot({
duration: 15,
date: "2023-11-05",
isCurrent: true,
starting_time: '12:00',
ending_time: '17:00',
next:true,
isNotRailwayTime:true,
} );
If you want to block time slot with pertitucler date we have to use =>
blockSchedule:[ // "12:15 PM", // "12:30 PM", // "12:45 PM", "12:00", "14:00", ]
with array object with block slot and date with keyword =>date:"2023-10-04"
. exmaple
let data = timeSlot({
duration: 15,
date: "2023-11-05",
isCurrent: true,
starting_time: '12:00',
ending_time: '17:00',
next:true,
isNotRailwayTime:true,
blockSchedule:[
// "12:15 PM",
// "12:30 PM",
// "12:45 PM",
"12:00",
"14:00",
]
} );
3 Pair of Time Slots:
* startToEndTimeSlot generates pairs of start and end times based on given parameters.
Similar customization options are available.
```javaScript
let timePairs = startToEndTimeSlot("11:00 PM", "01:00 AM", { isCurrent: true, date: "2023-10-04" });
startToEndTimeSlot
method covert into pair of time slot in object format. it take three argument instartToEndTimeSlot()
method,starting_time,ending_time,
andobject,
and object is optional. we can pass time as 12 hour format or 24 format is this method it give as same output. exmaple given below.12 hour format
let data =startToEndTimeSlot("11:00 PM","01:00 AM");
24 hour format
let data =startToEndTimeSlot("11:00","'17:00'");
* If we want check time with current time and show only remening slot only. then we have to use keyword (isCurrent:true) in this object.
```javaScript
let data =startToEndTimeSlot("11:00 PM","01:00 AM",{
isCurrent:true
});
- If we want check time with current time and current date then we have to pass date as well in the object with
{ date:"2023-10-04", isCurrent:true }
and it show only remening slot only in current.
let data =startToEndTimeSlot("11:00 PM","01:00 AM",{
date:"2023-10-04",
isCurrent:true
});
- If you want to block time slot with pertitucler date we have to use =>
blockSchedule:[{"slot": "9:15 PM - 9:30 PM"}]
with array object with block slot and date with keyword =>date:"2023-10-04". exmaple
let data =startToEndTimeSlot("11:00 PM","01:00 AM",{
blockSchedule:[
{
"slot": "9:15 PM - 9:30 PM"
},
{
"slot": "9:45 PM - 10:00 PM"
}
],
date:"2023-10-04",
isCurrent:true
});
- By default It make 15 minuts time slot If you want to change time slot duration you can chang using keyword =>
duration:30
,
let data =startToEndTimeSlot("11:00 PM","01:00 AM",{
blockSchedule:[
{
"slot": "9:15 PM - 9:30 PM"
},
{
"slot": "9:45 PM - 10:00 PM"
}
],
date:"2023-10-04",
isCurrent:true,
duration:30,
});
- if you want slot in 24 hour time you can use keyword =>
isNotRailwayTime:true
, It give you time slot in 24 hour time.
let data =startToEndTimeSlot("11:00 PM","01:00 AM",{
blockSchedule:[
{
"slot": "9:15 PM - 9:30 PM"
},
{
"slot": "9:45 PM - 10:00 PM"
}
],
date:"2023-10-04",
isCurrent:true,
duration:30,
isNotRailwayTime:true,
});
- If you want date with slot you can use key word =>
withDate:true
,
let data =startToEndTimeSlot("11:00 PM","01:00 AM",{
blockSchedule:[
{
"slot": "9:15 PM - 9:30 PM"
},
{
"slot": "9:45 PM - 10:00 PM"
}
],
date:"2023-10-04",
isCurrent:true,
withDate:true,
duration:30,
isNotRailwayTime:true,
});
- If we want response in start,end in form of keys and values object. then we have to use keyword =>
startToEndObj:true
,
let data =startToEndTimeSlot("11:00 PM","01:00 AM",{
blockSchedule:[
{
"start": "10:45",
"end": "11:00",
"date": "2023-11-13"
},
{
"start": "11:00",
"end": "11:15",
"date": "2023-11-13"
}
],
date:"2023-11-13",
isCurrent:true,
withDate:true,
duration:30,
isNotRailwayTime:true,
startToEndObj:true,
});
6 months ago