{"_rev":"2-067d2b579b15398e9c5e5d0f1df61759","time":{"created":"2023-09-28T08:38:06.095Z","1.1301.0":"2023-09-28T08:24:03.107Z","modified":"2023-09-28T08:38:06.586Z","1.1301.1":"2023-09-28T08:38:06.339Z"},"_id":"@apercky/nt-react-native-calendars","name":"@apercky/nt-react-native-calendars","dist-tags":{"latest":"1.1301.1"},"versions":{"1.1301.1":{"name":"@apercky/nt-react-native-calendars","version":"1.1301.1","main":"src/index.ts","types":"src/index.d.ts","description":"React Native Calendar Components","scripts":{"build":"xcodebuild -project ios/CalendarsExample.xcodeproj build","build:ts":"tsc","build:dev":"tsc --noEmit","build:docs":"node ./scripts/build-docs.js","e2e":"node ./scripts/test-e2e.js --release","test":"npm run lint && npm run unit","test:perf":"TEST_RUNNER_ARGS='--testMatch **/*.perf.js' reassure measure","unit":"jest","lint":"eslint src/ example/src --ext .tsx,.ts,.js","release":"node ./scripts/release.js","start":"react-native start","ios":"react-native run-ios","android":"react-native run-android","xcode":"open ios/CalendarsExample.xcworkspace/","clean":"rm package-lock.json && rm -rf ./node_modules && npm i","pod-install":"pod install --project-directory=ios"},"repository":{"type":"git","url":"git+https://github.com/apercky/nt-react-native-calendars.git"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"author":{"name":"Wix.com"},"license":"MIT","dependencies":{"hoist-non-react-statics":"^3.3.1","lodash":"^4.17.15","memoize-one":"^5.2.1","prop-types":"^15.5.10","react-native-swipe-gestures":"^1.0.5","recyclerlistview":"^4.0.0","xdate":"^0.8.0","moment":"^2.29.4"},"devDependencies":{"@babel/core":"^7.20.0","@babel/eslint-parser":"^7.13.4","@babel/preset-env":"^7.20.0","@babel/runtime":"^7.20.0","@react-native-community/eslint-config":"^3.2.0","@testing-library/react-native":"^11.0.0","@tsconfig/docusaurus":"^1.0.4","@tsconfig/react-native":"^2.0.2","@types/jest":"^29.2.1","@types/lodash":"^4.14.170","@types/react":"^18.0.24","@types/react-test-renderer":"^18.0.0","@types/react-native":"^0.64.19","@types/xdate":"^0.8.32","@typescript-eslint/eslint-plugin":"^5.27.1","@typescript-eslint/parser":"^5.27.1","@welldone-software/why-did-you-render":"^6.0.3","babel-eslint":"^10.1.0","babel-jest":"^29.2.1","detox":"^18.0.0","eslint":"^8.19.0","eslint-config-prettier":"^6.11.0","eslint-plugin-jest":"^26.0.0","eslint-plugin-react":"^7.24.0","eslint-plugin-react-native":"^4.0.0","husky":"^4.2.5","jest":"^29.2.1","jest-date-mock":"^1.0.8","lint-staged":"^10.2.11","metro-react-native-babel-preset":"0.73.7","mocha":"^7.1.0","prettier":"^2.4.1","react":"18.2.0","react-component-driver":"^0.10.0","react-native":"0.71.2","react-native-navigation":"7.32.1","react-recipes":"^1.4.0","react-test-renderer":"18.2.0","reassure":"^0.4.1","semver":"5.x.x","shell-utils":"1.x.x","typescript":"4.8.4"},"optionalDependencies":{"moment":"^2.29.4"},"jest":{"preset":"react-native","setupFiles":["jest-date-mock","./jest-setup.js"],"testMatch":["<rootDir>/src/**/?(*.)(spec|test).{js,jsx,ts}"],"transformIgnorePatterns":["node_modules/(?!(@react-native|react-native|react-native-swipe-gestures)/)"]},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.js":"eslint --cache --fix","*.{js,css,md}":"prettier --write"},"gitHead":"da5bfcb716dea0b728395655002f23e3129afadf","bugs":{"url":"https://github.com/apercky/nt-react-native-calendars/issues"},"homepage":"https://github.com/apercky/nt-react-native-calendars#readme","_id":"@apercky/nt-react-native-calendars@1.1301.1","_nodeVersion":"14.18.1","_npmVersion":"6.14.15","dist":{"integrity":"sha512-PzRfw2RCbiufpgTsNTZOX19dUHQ9/W+oBgfb4j2xVnPOdoFJdzjy7qXmE3eUoWDcQaSf92q/NksTlYqg1OAzpQ==","shasum":"87fda043945312e0916f37432928a0558451013b","tarball":"https://registry.npmjs.org/@apercky/nt-react-native-calendars/-/nt-react-native-calendars-1.1301.1.tgz","fileCount":178,"unpackedSize":423380,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEk4owB3+INnSkETtX3mV/O9Jg0Uu5fBFCxEL/KbV+m0AiAjzOw7hw+35WbPICAy3SjZU65nYx+YdaYCK5gzdChJdw=="}]},"_npmUser":{"name":"apercky","email":"antonioperchinumio@gmail.com"},"directories":{},"maintainers":[{"name":"apercky","email":"antonioperchinumio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nt-react-native-calendars_1.1301.1_1695890286167_0.16488306787204765"},"_hasShrinkwrap":false}},"maintainers":[{"name":"apercky","email":"antonioperchinumio@gmail.com"}],"description":"React Native Calendar Components","homepage":"https://github.com/apercky/nt-react-native-calendars#readme","repository":{"type":"git","url":"git+https://github.com/apercky/nt-react-native-calendars.git"},"author":{"name":"Wix.com"},"bugs":{"url":"https://github.com/apercky/nt-react-native-calendars/issues"},"license":"MIT","readme":"[![Stand With Ukraine](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/banner2-direct.svg)](https://stand-with-ukraine.pp.ua)\n\n# React Native Calendars 🗓️ 📆\n\n## A declarative cross-platform React Native calendar component for iOS and Android.\n\n[![Version](https://img.shields.io/npm/v/react-native-calendars.svg)](https://www.npmjs.com/package/react-native-calendars)\n[![Build Status](https://travis-ci.org/wix/react-native-calendars.svg?branch=master)](https://travis-ci.org/wix/react-native-calendars)\n\n<br>\n\nThis module includes information on how to use this customizable **React Native** calendar component.\n\nThe package is compatible with both **Android** and **iOS**\n\n<br>\n\n> ### **Official documentation**\n>\n> This README provides basic examples of how to get started with `react-native-calendars`. For detailed information, refer to the [official documentation site](https://wix.github.io/react-native-calendars/docs/Intro).\n\n## Features ✨\n\n- Pure JS. No Native code required\n- Date marking - dot, multi-dot, period, multi-period and custom marking\n- Customization of style, content (days, months, etc) and dates\n- Detailed documentation and examples\n- Swipeable calendar with flexible custom rendering\n- Scrolling to today, selecting dates, and more\n- Allowing or blocking certain dates\n- Accessibility support\n- Automatic date formatting for different locales\n\n## Try it out ⚡\n\nYou can run a sample module using these steps:\n\n```\n$ git clone git@github.com:wix/react-native-calendars.git\n\n$ cd react-native-calendars\n\n$ npm install\n\n$ cd ios && pod install && cd ..\n\n$ react-native run-ios\n```\n\nYou can check example screens source code in [example module screens](https://github.com/wix-private/wix-react-native-calendar/tree/master/example/src/screens)\n\nThis project is compatible with Expo/CRNA (without ejecting), and the examples have been [published on Expo](https://expo.io/@community/react-native-calendars-example)\n\n## Getting Started 🔧\n\nHere's how to get started with react-native-calendars in your React Native project:\n\n### Install the package:\n\nUsing `npm`:\n\n```\n$ npm install --save react-native-calendars\n```\n\nUsing `Yarn`:\n\n```\n$ yarn add react-native-calendars\n```\n\n**RN Calendars is implemented in JavaScript, so no native module linking is required.**\n\n## Usage 🚀\n\nBasic usage examples of the library\n\n##### **For detailed information on using this component, see the [official documentation site](https://wix.github.io/react-native-calendars/docs/Intro)**\n\n### Importing the `Calendar` component\n\n```javascript\nimport {`[Calendar](#calendar), [CalendarList](#calendarlist), [Agenda](#agenda)`} from 'react-native-calendars';\n```\n\n### Use the `Calendar` component in your app:\n\n```javascript\n<Calendar\n  onDayPress={day => {\n    console.log('selected day', day);\n  }}\n/>\n```\n\n## Some Code Examples\n\nHere are a few code snippets that demonstrate how to use some of the key features of react-native-calendars:\n\n### Creating a basic calendar with default settings:\n\n```javascript\nimport React, {useState} from 'react';\nimport {Calendar, LocaleConfig} from 'react-native-calendars';\n\nconst App = () => {\n  const [selected, setSelected] = useState('');\n\n  return (\n    <Calendar\n      onDayPress={day => {\n        setSelected(day.dateString);\n      }}\n      markedDates={{\n        [selected]: {selected: true, disableTouchEvent: true, selectedDotColor: 'orange'}\n      }}\n    />\n  );\n};\n\nexport default App;\n```\n\n### Customize the appearance of the calendar:\n\n```javascript\n<Calendar\n  // Customize the appearance of the calendar\n  style={{\n    borderWidth: 1,\n    borderColor: 'gray',\n    height: 350\n  }}\n  // Specify the current date\n  current={'2012-03-01'}\n  // Callback that gets called when the user selects a day\n  onDayPress={day => {\n    console.log('selected day', day);\n  }}\n  // Mark specific dates as marked\n  markedDates={{\n    '2012-03-01': {selected: true, marked: true, selectedColor: 'blue'},\n    '2012-03-02': {marked: true},\n    '2012-03-03': {selected: true, marked: true, selectedColor: 'blue'}\n  }}\n/>\n```\n\n### Configuring the locale:\n\n```javascript\nimport {LocaleConfig} from 'react-native-calendars';\nimport React, {useState} from 'react';\nimport {Calendar, LocaleConfig} from 'react-native-calendars';\n\nLocaleConfig.locales['fr'] = {\n  monthNames: [\n    'Janvier',\n    'Février',\n    'Mars',\n    'Avril',\n    'Mai',\n    'Juin',\n    'Juillet',\n    'Août',\n    'Septembre',\n    'Octobre',\n    'Novembre',\n    'Décembre'\n  ],\n  monthNames: [\n    'Janvier',\n    'Février',\n    'Mars',\n    'Avril',\n    'Mai',\n    'Juin',\n    'Juillet',\n    'Août',\n    'Septembre',\n    'Octobre',\n    'Novembre',\n    'Décembre'\n  ],\n  monthNamesShort: ['Janv.', 'Févr.', 'Mars', 'Avril', 'Mai', 'Juin', 'Juil.', 'Août', 'Sept.', 'Oct.', 'Nov.', 'Déc.'],\n  dayNames: ['Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'],\n  dayNamesShort: ['Dim.', 'Lun.', 'Mar.', 'Mer.', 'Jeu.', 'Ven.', 'Sam.'],\n  today: \"Aujourd'hui\"\n};\n\nLocaleConfig.defaultLocale = 'fr';\n\nconst App = () => {\n  const [selected, setSelected] = useState('');\n\n  return (\n    <Calendar\n      onDayPress={day => {\n        setSelected(day.dateString);\n      }}\n      markedDates={{\n        [selected]: {selected: true, disableTouchEvent: true, selectedDotColor: 'orange'}\n      }}\n    />\n  );\n};\n\nexport default App;\n```\n\n### Adding a global theme to the calendar:\n\n```javascript\nimport React, { useState } from 'react';\nimport { Calendar, LocaleConfig } from 'react-native-calendars';\n\nconst App = () => {\n  const [selected, setSelected] = useState('');\n\n  return (\n    <Calendar\n      style={{\n        borderWidth: 1,\n        borderColor: 'gray',\n        height: 350,\n      }}\n      theme={{\n        backgroundColor: '#ffffff',\n        calendarBackground: '#ffffff',\n        textSectionTitleColor: '#b6c1cd',\n        selectedDayBackgroundColor: '#00adf5',\n        selectedDayTextColor: '#ffffff',\n        todayTextColor: '#00adf5',\n        dayTextColor: '#2d4150',\n        textDisabledColor: '#d9e\n```\n\n## Customized Calendar Examples\n\n### Calendar\n\n  <img src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/calendar.gif?raw=true\">\n\n### Dot marking\n\n  <img height={50} src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/marking1.png?raw=true\">\n\n### Multi-Dot marking\n\n <img height=50 src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/marking4.png?raw=true\">\n\n### Period Marking\n\n  <img height=50 src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/marking2.png?raw=true\">\n\n  <img height=50 src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/marking3.png?raw=true\">\n\n### Multi-Period marking\n\n  <img height=50 src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/marking6.png?raw=true\">\n\n### Custom marking\n\n  <img height=50 src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/marking5.png?raw=true\">\n\n  <img height=350 src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/multi-marking.png?raw=true\">\n\n### Date loading indicator\n\n  <img height=50 src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/loader.png?raw=true\">\n\n### Scrollable semi-infinite calendar\n\n  <img src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/calendar-list.gif?raw=true\">\n\n### Horizontal calendar\n\n  <img src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/horizontal-calendar-list.gif?raw=true\">\n\n### Agenda\n\n  <img src=\"https://github.com/wix-private/wix-react-native-calendar/blob/master/demo/assets/agenda.gif?raw=true\">\n\n<br>\n\n## Authors\n\n- [Tautvilas Mecinskas](https://github.com/tautvilas/) - Initial code - [@tautvilas](https://twitter.com/Tautvilas)\n- Katrin Zotchev - Initial design - [@katrin_zot](https://twitter.com/katrin_zot)\n\nSee also the list of [contributors](https://github.com/wix/react-native-calendar-components/contributors) who participated in this project.\n\n## Contributing\n\nWe welcome contributions to react-native-calendars.\n\nIf you have an idea for a new feature or have discovered a bug, please open an issue.\n\nPlease `npm run test` and `npm run lint` before pushing changes.\n\nDon't forget to add a **title** and a **description** explaining the issue you're trying to solve and your proposed solution.\n\nScreenshots and Gifs are VERY helpful to add to the PR for reviews.\n\nPlease DO NOT format the files - we're trying to keep a unified syntax and keep the reviewing process fast and simple.\n\n## License\n\nReact Native Calendars is MIT licensed\n","readmeFilename":"README.md"}