{"_id":"fiscal-year-calendar","_rev":"12-e5ebb953961da3392ec58374246cc5ab","name":"fiscal-year-calendar","dist-tags":{"latest":"3.2.1"},"versions":{"0.0.3":{"name":"fiscal-year-calendar","version":"0.0.3","keywords":["custom","fiscal","year","calendar","financial","year","calendar"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@0.0.3","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"ddbca94518d9a7de8143df318326140f65eb1915","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-0.0.3.tgz","fileCount":8,"integrity":"sha512-4KN27qgMM8PHsppLTLCDNQDYCbuqQKnTFhanhkYFnp8od8P+6VzKUrRt7gt6jy9qbNg2q65FmhvaoZGKepEHSw==","signatures":[{"sig":"MEUCIQDHJhCykiEATYSqd+WHUMlaKCLlSmgtGx4PXB0ND09tIQIgKEdVlhLwIlD2MQwMLs5//3FotoK8CNdYNfZFFhzBYQg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23814},"jest":{"verbose":true},"main":"src/index.js","gitHead":"c5c37c7fd5d525058fd4ac9e0b0512ca709f1794","scripts":{"test":"jest"},"_npmUser":{"name":"yc5518","email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"16.20.2","dependencies":{"moment":"^2.29.0","moment-recur":"^1.0.7","moment-timezone":"^0.5.25"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^23.6.0","eslint":"^5.3.0","babel-core":"^6.26.3","babel-jest":"^23.6.0","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^6.2.4","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.11.0","regenerator-runtime":"^0.13.1","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^17.1.0","eslint-plugin-import":"^2.14.0","eslint-plugin-jsx-a11y":"^6.1.1","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_0.0.3_1743241645602_0.18265975321143002","host":"s3://npm-registry-packages-npm-production"}},"0.0.1":{"name":"fiscal-year-calendar","version":"0.0.1","keywords":["custom","fiscal","year","calendar","financial","year","calendar"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@0.0.1","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"1fbb33b7f894ef63b2ca792d3e120ba4f962d7d0","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-0.0.1.tgz","fileCount":8,"integrity":"sha512-Xolq9G5LChBf9F4Hon+dSp/7BqXi/NAZ8Iws2pXa2R3yh/2PIDvZUSzjI7CV+JWici9aR28M0JY5BLKj2tmMyQ==","signatures":[{"sig":"MEUCIH/7tyeLaztM30HW0mxqI6BCftK+c89TrZO0KdkTrgsSAiEAlGfWJpnPYGsvrjqDI+zLDMCPRehtqI/RBxBfd3mFCCc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23814},"jest":{"verbose":true},"main":"src/index.js","gitHead":"c5c37c7fd5d525058fd4ac9e0b0512ca709f1794","scripts":{"test":"jest"},"_npmUser":{"name":"yc5518","email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"16.20.2","dependencies":{"moment":"^2.29.0","moment-recur":"^1.0.7","moment-timezone":"^0.5.25"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^23.6.0","eslint":"^5.3.0","babel-core":"^6.26.3","babel-jest":"^23.6.0","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^6.2.4","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.11.0","regenerator-runtime":"^0.13.1","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^17.1.0","eslint-plugin-import":"^2.14.0","eslint-plugin-jsx-a11y":"^6.1.1","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_0.0.1_1743241655077_0.6904114876179201","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"fiscal-year-calendar","version":"1.0.0","keywords":["custom","fiscal year calendar","financial year calendar"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@1.0.0","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"216ff1a3012b7f62a3ea983f99c005204fdaf702","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-1.0.0.tgz","fileCount":8,"integrity":"sha512-rCdB64whUM46TmtTAuZBp9jushfZJ0krbIfm1hg7PzswksrKZL9qXWbINB8J57/+rdSEn7MAYz/qour8+Wdg/g==","signatures":[{"sig":"MEUCIQD7vrAaepxuCviVrPoIY3g1Bzo1zBzvW9u1E7811ftVFgIgAkds6CAt0flCO9YN++XF9Ib+xIMssIBKFHVugAaD5MM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23786},"jest":{"verbose":true},"main":"src/index.js","gitHead":"a03b91a1d5e28e8d74a9c0cd4efd1a29a9ffb557","scripts":{"test":"jest"},"_npmUser":{"name":"yc5518","email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"16.20.2","dependencies":{"moment":"^2.29.0","moment-recur":"^1.0.7","moment-timezone":"^0.5.25"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^23.6.0","eslint":"^5.3.0","babel-core":"^6.26.3","babel-jest":"^23.6.0","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^6.2.4","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.11.0","regenerator-runtime":"^0.13.1","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^17.1.0","eslint-plugin-import":"^2.14.0","eslint-plugin-jsx-a11y":"^6.1.1","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_1.0.0_1743287180361_0.05846575870218973","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"fiscal-year-calendar","version":"1.0.1","keywords":["customized fiscal year calendar","financial year calendar"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@1.0.1","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"06f885f2c79c7c78e620d5dc17a9c6f8d351106d","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-1.0.1.tgz","fileCount":8,"integrity":"sha512-Yndqb0PfH+wVKOSwUQGH9HRVCF9JB1hiXT0NlgicCZwQU6ZYXK50GQdFxTdOO2fS89ic1kqMoyyO3zKP+yWAJQ==","signatures":[{"sig":"MEUCIDhfgGRT+DP7qfCm0u/P4oU7KYYSBzLFyc1iQNegWflhAiEAktAups1fvavCNkf5zcP3V3k7VdpB+nJ9W1I2VtER8u0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23783},"jest":{"verbose":true},"main":"src/index.js","gitHead":"8d3eff31de75ed63a20c04028f0bbfca9dcf3f2e","scripts":{"test":"jest"},"_npmUser":{"name":"yc5518","email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"16.20.2","dependencies":{"moment":"^2.29.0","moment-recur":"^1.0.7","moment-timezone":"^0.5.25"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^23.6.0","eslint":"^5.3.0","babel-core":"^6.26.3","babel-jest":"^23.6.0","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^6.2.4","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.11.0","regenerator-runtime":"^0.13.1","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^17.1.0","eslint-plugin-import":"^2.14.0","eslint-plugin-jsx-a11y":"^6.1.1","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_1.0.1_1743287385823_0.47674511769001304","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"fiscal-year-calendar","version":"1.1.0","keywords":["customized fiscal year calendar","financial year calendar"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@1.1.0","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"1ccf5835a8861ac516c1d3ee0f43475e244f2f24","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-1.1.0.tgz","fileCount":9,"integrity":"sha512-8lU/MjRLgg80GynHpiSr3JJzSBr4yG5WieV2iylAl6nc5Eb0grL+a07EQHMNDm3sw3UlKBMqq1v3TbWhJAuhqQ==","signatures":[{"sig":"MEQCIAqXBFpHnNq+vi169CmoQwGenZIfQBqVlYxPzWHxLSxbAiBH6zJEUXUK84uizzzQmcE/Hboyl9qydY8F22EKdWfiNA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45935},"jest":{"verbose":true},"main":"index.js","gitHead":"b5570f015444b087800d8b618a3b38117fbea424","scripts":{"test":"jest"},"_npmUser":{"name":"yc5518","actor":{"name":"yc5518","type":"user","email":"c.yang0211@gmail.com"},"email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"16.20.2","dependencies":{"moment":"^2.30.1","moment-timezone":"^0.5.48"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^23.6.0","eslint":"^5.3.0","babel-core":"^6.26.3","babel-jest":"^23.6.0","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^6.2.4","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.11.0","regenerator-runtime":"^0.13.1","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^17.1.0","eslint-plugin-import":"^2.14.0","eslint-plugin-jsx-a11y":"^6.1.1","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_1.1.0_1751078820963_0.8093019676602087","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"fiscal-year-calendar","version":"2.0.0","keywords":["customized fiscal year calendar","financial year calendar","4-4-5 calendar","4-5-4 calendar","5-4-4 calendar","fiscal year","financial year"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@2.0.0","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"12086706ed8cbf07798604a554ee588de361e9e5","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-2.0.0.tgz","fileCount":59,"integrity":"sha512-4h9TDxWmQ8pWWlpkzkqrt0DapH3D4GbnboLSYn1un4c1DhlFAVjJVYo7hWljwDlijqos10cmJpX76VftLnuGug==","signatures":[{"sig":"MEYCIQCqmosB60wpVLutIExqRhTG7Vp9bX+rnxzO6aLQKOcudAIhANdkHkK9Pq1Y3EhICvUW1yNKCIxYfswJ4PxNKY/zNqe+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274780},"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","module":"dist/esm/index.js","exports":{".":{"types":"./dist/cjs/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"844194105d584defc710b30b5a26b446b3d5fc9c","scripts":{"test":"jest --config jest.config.js","build":"npm run build:cjs && npm run build:esm","clean":"rimraf dist","prepare":"npm run build","prebuild":"npm run clean","build:cjs":"tsc -p tsconfig.json","build:esm":"tsc -p tsconfig.esm.json"},"_npmUser":{"name":"yc5518","actor":{"name":"yc5518","type":"user","email":"c.yang0211@gmail.com"},"email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"16.20.2","dependencies":{"moment":"^2.30.1","date-fns":"^2.30.0","date-fns-tz":"^2.0.0","moment-timezone":"^0.5.48"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^29.7.0","eslint":"^8.50.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","babel-core":"^6.26.3","babel-jest":"^29.7.0","typescript":"^5.2.2","@types/jest":"^29.5.5","@types/node":"^20.8.2","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^9.1.3","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.33.2","regenerator-runtime":"^0.14.0","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.28.1","eslint-plugin-jsx-a11y":"^6.7.1","@typescript-eslint/parser":"^6.7.4","@typescript-eslint/eslint-plugin":"^6.7.4","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_2.0.0_1751420627959_0.6600584862443779","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"fiscal-year-calendar","version":"2.0.1","keywords":["customized fiscal year calendar","financial year calendar","4-4-5 calendar","4-5-4 calendar","5-4-4 calendar","fiscal year","financial year"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@2.0.1","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"7545e9bf80c715aadc139e1864ebd3dbbdea1834","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-2.0.1.tgz","fileCount":59,"integrity":"sha512-c4nZi2/5nz3lW8T+Q/XS+8Exfcd6gf7/feVZfljHMw8IvB+ZCJ4aQHQh9jgBiTBpO4GU5Zi9NEemKztnXq5w7w==","signatures":[{"sig":"MEUCIHVfkFGUw8M4s50M8pBOrGbv0sbLLQUKRvBNNAJWL5R8AiEAyiAXIJBQY99OA7oglJWJyiv8/2GXfwM3lRbaVhe8MJE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":275446},"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","module":"dist/esm/index.js","exports":{".":{"types":"./dist/cjs/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"f38e09cfd9c1988f03899b58117a017567537c31","scripts":{"test":"jest --config jest.config.js","build":"npm run build:cjs && npm run build:esm","clean":"rimraf dist","prepare":"npm run build","prebuild":"npm run clean","build:cjs":"tsc -p tsconfig.json","build:esm":"tsc -p tsconfig.esm.json"},"_npmUser":{"name":"yc5518","actor":{"name":"yc5518","type":"user","email":"c.yang0211@gmail.com"},"email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"16.20.2","dependencies":{"moment":"^2.30.1","date-fns":"^2.30.0","date-fns-tz":"^2.0.0","moment-timezone":"^0.5.48"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^29.7.0","eslint":"^8.50.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","babel-core":"^6.26.3","babel-jest":"^29.7.0","typescript":"^5.2.2","@types/jest":"^29.5.5","@types/node":"^20.8.2","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^9.1.3","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.33.2","regenerator-runtime":"^0.14.0","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.28.1","eslint-plugin-jsx-a11y":"^6.7.1","@typescript-eslint/parser":"^6.7.4","@typescript-eslint/eslint-plugin":"^6.7.4","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_2.0.1_1751498799567_0.447687307960845","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"fiscal-year-calendar","version":"2.0.2","keywords":["customized fiscal year calendar","financial year calendar","4-4-5 calendar","4-5-4 calendar","5-4-4 calendar","fiscal year","financial year"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@2.0.2","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"e134048b76eef041779728da2cb5308dd37c3a75","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-2.0.2.tgz","fileCount":59,"integrity":"sha512-b5lM1IMF1ClSavR2IDiEMoRFCgdm0PGhdgXdKz4md9afCQBkuhNQUTJIEbL3nRGr4Pld08sf3/RwE9lt50c62w==","signatures":[{"sig":"MEQCIHjIcs8njE3EYUhj9zEWERuwI+qTglCoQWOvqwd/G3MQAiAd5e/cGc5jSjQtHd/QdLbMZNiPJu81SzIOciRL1tIqXA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":275446},"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","module":"dist/esm/index.js","exports":{".":{"types":"./dist/cjs/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"1a507459c1dc616694e9a8ab0cc920c8de23a47b","scripts":{"test":"jest --config jest.config.js","build":"npm run build:cjs && npm run build:esm","clean":"rimraf dist","prepare":"npm run build","prebuild":"npm run clean","build:cjs":"tsc -p tsconfig.json","build:esm":"tsc -p tsconfig.esm.json"},"_npmUser":{"name":"yc5518","actor":{"name":"yc5518","type":"user","email":"c.yang0211@gmail.com"},"email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"16.20.2","dependencies":{"moment":"^2.30.1","date-fns":"^2.30.0","date-fns-tz":"^2.0.0","moment-timezone":"^0.5.48"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^29.7.0","eslint":"^8.50.0","rimraf":"^5.0.5","ts-jest":"^29.1.1","babel-core":"^6.26.3","babel-jest":"^29.7.0","typescript":"^5.2.2","@types/jest":"^29.5.5","@types/node":"^20.8.2","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^9.1.3","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.33.2","regenerator-runtime":"^0.14.0","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.28.1","eslint-plugin-jsx-a11y":"^6.7.1","@typescript-eslint/parser":"^6.7.4","@typescript-eslint/eslint-plugin":"^6.7.4","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_2.0.2_1751578716491_0.253392439357528","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"fiscal-year-calendar","version":"2.0.3","keywords":["customized fiscal year calendar","financial year calendar","4-4-5 calendar","4-5-4 calendar","5-4-4 calendar","fiscal year","financial year"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@2.0.3","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"7562243dba548c87013f04584c46deb72f51e347","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-2.0.3.tgz","fileCount":44,"integrity":"sha512-uf3btpRTzn1h7MYxHoCOr4Tp/jDl39oykRqdwsctFVYNH4CSdDTZ24kkaCA1ENLNZhEtp3RhM53uAcqZK3RqoA==","signatures":[{"sig":"MEQCIAii3II7HIGoqFFXbqVfpwO/tMWu/ddyO02J3y+/uvcSAiBjVdicy/HPG+231JTPuZ5moU2/5GTK9q1dkYrCul1oMw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":186640},"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","module":"dist/esm/index.js","exports":{".":{"types":"./dist/cjs/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"1fa013fa4824eadabbe41e897555257a22a856cc","scripts":{"lint":"eslint . --ext .js,.ts","test":"jest --config jest.config.js","build":"npm run build:cjs && npm run build:esm","clean":"rimraf dist","prepare":"npm run build","coverage":"jest --config jest.config.js --coverage","prebuild":"npm run clean","build:cjs":"tsc -p tsconfig.json","build:esm":"tsc -p tsconfig.esm.json"},"_npmUser":{"name":"yc5518","actor":{"name":"yc5518","type":"user","email":"c.yang0211@gmail.com"},"email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"10.8.2","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"_nodeVersion":"18.20.8","dependencies":{"moment":"^2.30.1","date-fns":"^2.30.0","date-fns-tz":"^2.0.0","moment-timezone":"^0.6.0"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^29.7.0","eslint":"^8.50.0","rimraf":"^6.0.1","ts-jest":"^29.1.1","babel-core":"^6.26.3","babel-jest":"^30.0.4","typescript":"^5.2.2","@types/jest":"^29.5.5","@types/node":"^24.0.10","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^10.0.0","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.33.2","regenerator-runtime":"^0.14.0","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.28.1","eslint-plugin-jsx-a11y":"^6.7.1","@typescript-eslint/parser":"^6.7.4","@typescript-eslint/eslint-plugin":"^7.0.0","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_2.0.3_1752057877948_0.638478042244381","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"fiscal-year-calendar","version":"3.0.0","keywords":["customized fiscal year calendar","financial year calendar","4-4-5 calendar","4-5-4 calendar","5-4-4 calendar","fiscal year","financial year"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@3.0.0","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"51adc0007b650ca937303e46fb7346b5b2e5cc29","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-3.0.0.tgz","fileCount":68,"integrity":"sha512-DbNsfm5dG7TWuggiaqTGpUihJnJ5qSgdKN3PToo0ZHz/J6NO2T9Em/bqjf/8woGz8T6pIPQUqPS7ydQ+ImhvIQ==","signatures":[{"sig":"MEUCIAuSGWbfNhEsRqyWdolzm1kG49cHaFZIh1+kbfg2psvvAiEAltHq8nab1tBR3O9Sam3VlxdeW0CS2FBItL93qiqa1U8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304718},"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","module":"dist/esm/index.js","exports":{".":{"types":"./dist/cjs/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./types":{"types":"./dist/cjs/types/index.d.ts","import":"./dist/esm/types/index.js","require":"./dist/cjs/types/index.js"},"./utils":{"types":"./dist/cjs/utils/index.d.ts","import":"./dist/esm/utils/index.js","require":"./dist/cjs/utils/index.js"},"./calendar":{"types":"./dist/cjs/calendar/index.d.ts","import":"./dist/esm/calendar/index.js","require":"./dist/cjs/calendar/index.js"}},"gitHead":"0d3f1469be1d122a9afac1d5e2c2366174e3fc98","scripts":{"lint":"eslint . --ext .js,.ts","test":"jest --config jest.config.js","build":"npm run build:cjs && npm run build:esm","clean":"rimraf dist","prepare":"npm run build","coverage":"jest --config jest.config.js --coverage","prebuild":"npm run clean","build:cjs":"tsc -p tsconfig.json","build:esm":"tsc -p tsconfig.esm.json"},"_npmUser":{"name":"yc5518","email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"8.19.4","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"sideEffects":false,"_nodeVersion":"16.20.2","dependencies":{"date-fns":"^2.30.0","date-fns-tz":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^29.7.0","eslint":"^8.50.0","rimraf":"^6.0.1","ts-jest":"^29.1.1","babel-core":"^6.26.3","babel-jest":"^30.0.4","typescript":"^5.2.2","@types/jest":"^29.5.5","@types/node":"^24.0.10","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^10.0.0","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.33.2","regenerator-runtime":"^0.14.0","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.28.1","eslint-plugin-jsx-a11y":"^6.7.1","@typescript-eslint/parser":"^6.7.4","@typescript-eslint/eslint-plugin":"^7.0.0","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"peerDependencies":{"moment":"^2.30.1","moment-timezone":"^0.6.0"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_3.0.0_1753833044662_0.9071295036485376","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"fiscal-year-calendar","version":"3.1.1","keywords":["customized fiscal year calendar","financial year calendar","4-4-5 calendar","4-5-4 calendar","5-4-4 calendar","fiscal year","financial year"],"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","_id":"fiscal-year-calendar@3.1.1","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"dist":{"shasum":"e675cb7f4c1a2cd2a7635558234a36f7e12feb4e","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-3.1.1.tgz","fileCount":68,"integrity":"sha512-2wafNUPlDZxxsygiXrZPzo1i3TIOrTKXLNPtA7Msvff3E3aWAYtjczMI/PEv1iwbbaZ/dVyL1XO0TCc43DIPRQ==","signatures":[{"sig":"MEUCIQDylj7rB9d8tqTxTqdwyibLEWYUJ2xq5yAa0qVYRkStjQIgHbF/Q/AcktfF8hElFu0tTPVfl3KxQ26xKefPXcpEJyA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304718},"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","module":"dist/esm/index.js","exports":{".":{"types":"./dist/cjs/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./types":{"types":"./dist/cjs/types/index.d.ts","import":"./dist/esm/types/index.js","require":"./dist/cjs/types/index.js"},"./utils":{"types":"./dist/cjs/utils/index.d.ts","import":"./dist/esm/utils/index.js","require":"./dist/cjs/utils/index.js"},"./calendar":{"types":"./dist/cjs/calendar/index.d.ts","import":"./dist/esm/calendar/index.js","require":"./dist/cjs/calendar/index.js"}},"gitHead":"f69e8c826beacdcb845d1d5a92e4aa1ae5972d74","scripts":{"lint":"eslint . --ext .js,.ts","test":"jest --config jest.config.js","build":"npm run build:cjs && npm run build:esm","clean":"rimraf dist","prepare":"npm run build","coverage":"jest --config jest.config.js --coverage","prebuild":"npm run clean","build:cjs":"tsc -p tsconfig.json","build:esm":"tsc -p tsconfig.esm.json"},"_npmUser":{"name":"yc5518","email":"c.yang0211@gmail.com"},"repository":{"url":"git+https://github.com/yc5518/fiscal_year_calendar.git","type":"git"},"_npmVersion":"10.8.2","description":"A library to generate fiscal year calendar based on custom fiscal year start date","directories":{"test":"tests"},"sideEffects":false,"_nodeVersion":"18.20.8","dependencies":{"date-fns":"^2.30.0","date-fns-tz":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","jest":"^29.7.0","eslint":"^8.50.0","rimraf":"^6.0.1","ts-jest":"^29.1.1","babel-core":"^6.26.3","babel-jest":"^30.0.4","typescript":"^5.2.2","@types/jest":"^29.5.5","@types/node":"^24.0.10","json-loader":"^0.5.7","babel-eslint":"^10.0.1","babel-loader":"^10.0.0","babel-polyfill":"^6.9.1","babel-register":"^6.9.0","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","eslint-plugin-react":"^7.33.2","regenerator-runtime":"^0.14.0","babel-preset-stage-2":"^6.24.1","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.28.1","eslint-plugin-jsx-a11y":"^6.7.1","@typescript-eslint/parser":"^6.7.4","@typescript-eslint/eslint-plugin":"^7.0.0","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2"},"peerDependencies":{"moment":"^2.30.1","moment-timezone":"^0.6.0"},"_npmOperationalInternal":{"tmp":"tmp/fiscal-year-calendar_3.1.1_1753834291760_0.6053410863693223","host":"s3://npm-registry-packages-npm-production"}},"3.2.1":{"name":"fiscal-year-calendar","version":"3.2.1","description":"A library to generate fiscal year calendar based on custom fiscal year start date","main":"dist/cjs/index.js","module":"dist/esm/index.js","types":"dist/cjs/index.d.ts","sideEffects":false,"exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js","types":"./dist/cjs/index.d.ts"},"./calendar":{"import":"./dist/esm/calendar/index.js","require":"./dist/cjs/calendar/index.js","types":"./dist/cjs/calendar/index.d.ts"},"./utils":{"import":"./dist/esm/utils/index.js","require":"./dist/cjs/utils/index.js","types":"./dist/cjs/utils/index.d.ts"},"./types":{"import":"./dist/esm/types/index.js","require":"./dist/cjs/types/index.js","types":"./dist/cjs/types/index.d.ts"}},"keywords":["customized fiscal year calendar","financial year calendar","4-4-5 calendar","4-5-4 calendar","5-4-4 calendar","fiscal year","financial year"],"directories":{"test":"tests"},"scripts":{"build":"npm run build:cjs && npm run build:esm","build:cjs":"tsc -p tsconfig.json","build:esm":"tsc -p tsconfig.esm.json","clean":"rimraf dist","prebuild":"npm run clean","test":"jest --config jest.config.js","prepare":"npm run build","lint":"eslint . --ext .js,.ts","coverage":"jest --config jest.config.js --coverage"},"repository":{"type":"git","url":"git+https://github.com/yc5518/fiscal_year_calendar.git"},"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","dependencies":{"date-fns":"^2.30.0","date-fns-tz":"^2.0.0"},"peerDependencies":{"moment":"^2.30.1","moment-timezone":"^0.6.0"},"devDependencies":{"@types/jest":"^29.5.5","@types/node":"^24.0.10","@typescript-eslint/eslint-plugin":"^7.0.0","@typescript-eslint/parser":"^6.7.4","babel-core":"^6.26.3","babel-eslint":"^10.0.1","babel-jest":"^30.0.4","babel-loader":"^10.0.0","babel-plugin-transform-es2015-modules-commonjs":"^6.26.2","babel-polyfill":"^6.9.1","babel-preset-env":"^1.7.0","babel-preset-react":"^6.11.1","babel-preset-stage-2":"^6.24.1","babel-register":"^6.9.0","eslint":"^8.50.0","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.28.1","eslint-plugin-jsx-a11y":"^6.7.1","eslint-plugin-react":"^7.33.2","esm":"^3.2.25","jest":"^29.7.0","json-loader":"^0.5.7","regenerator-runtime":"^0.14.0","rimraf":"^6.0.1","ts-jest":"^29.1.1","typescript":"^5.2.2"},"gitHead":"ccf35c3a775a0eaf74af1dcfab86f942156455a6","_id":"fiscal-year-calendar@3.2.1","_nodeVersion":"16.20.2","_npmVersion":"8.19.4","dist":{"integrity":"sha512-R0U8j4RaOdhPj1nmAJSKPl3crVXM/MEcCbMCJWlaoMNrId35s9LA6hLoc/OTjoWeijgXwpKlJ8fVKjUqPBUk+A==","shasum":"dc4f2a0d4016047b079d83e65d060f21d0d32e34","tarball":"https://registry.npmjs.org/fiscal-year-calendar/-/fiscal-year-calendar-3.2.1.tgz","fileCount":96,"unpackedSize":458287,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICyobMf6Wc9n4xvCN7QidqLpn3z7P6GME9Hg088wmMCBAiBZ67J9iLbL7TrXoHgRN+8FpKopKmiDvV1AfAyxe/VoKg=="}]},"_npmUser":{"name":"yc5518","email":"c.yang0211@gmail.com"},"maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fiscal-year-calendar_3.2.1_1753839630356_0.08885745527539801"},"_hasShrinkwrap":false}},"time":{"created":"2025-03-29T09:47:25.526Z","modified":"2025-07-30T01:40:30.720Z","0.0.3":"2025-03-29T09:47:25.801Z","0.0.1":"2025-03-29T09:47:35.280Z","1.0.0":"2025-03-29T22:26:20.531Z","1.0.1":"2025-03-29T22:29:46.030Z","1.1.0":"2025-06-28T02:47:01.146Z","2.0.0":"2025-07-02T01:43:48.160Z","2.0.1":"2025-07-02T23:26:39.746Z","2.0.2":"2025-07-03T21:38:36.695Z","2.0.3":"2025-07-09T10:44:38.118Z","3.0.0":"2025-07-29T23:50:44.887Z","3.1.1":"2025-07-30T00:11:31.960Z","3.2.1":"2025-07-30T01:40:30.544Z"},"bugs":{"url":"https://github.com/yc5518/fiscal_year_calendar/issues"},"author":{"name":"Chao","email":"yc5518@hotmail.com"},"license":"ISC","homepage":"https://github.com/yc5518/fiscal_year_calendar#readme","keywords":["customized fiscal year calendar","financial year calendar","4-4-5 calendar","4-5-4 calendar","5-4-4 calendar","fiscal year","financial year"],"repository":{"type":"git","url":"git+https://github.com/yc5518/fiscal_year_calendar.git"},"description":"A library to generate fiscal year calendar based on custom fiscal year start date","maintainers":[{"name":"yc5518","email":"c.yang0211@gmail.com"}],"readme":"# fiscal_year_calendar\n  \nThe initiative of creating this package is to dynamically customize a fiscal year or financial year calendar based on different dates as the first day of a fiscal year.\nE.g: Some organizations would have the first Monday of October to be the start date of a financial year.\n  \nThe parameters it allows to customize are:\n\n* Start day of a week. E.g.: Set start day of a week to be Sunday/Monday/Saturday\n\n* Start date of a year. E.g.: Set a date which will be always included in the first week of a year. You may want the week including October 1st to be the first week of a year. So the first day of the week will be the first day of your customized year.\n\n* Fiscal year start month and day. E.g.: Set October 1st as the start of your fiscal year.\n\nBased on the above customized parameters, it outputs:\n\n* Whole customized year (could be tax year, fiscal year etc.)\n\n* Date range of each week, month, and quarter for a fiscal year, which can be used as query parameters\n\n* Start/end date of a fiscal year\n\n* Fiscal year, quarter, month, and day number for any given date\n\n## What's New in Version 3.0.0\n\nThis major update brings significant enhancements to the fiscal-year-calendar library:\n\n1. **Enhanced Documentation**: Expanded documentation with more real-world examples, common use cases, and interactive demos.\n\n2. **Visualization Components**: Simple visualization components for displaying fiscal calendars in web applications, including calendar grid and timeline chart views.\n\n3. **Fiscal Year Presets**: Added common fiscal year presets for different countries and industries (US Federal Government, UK, Australia, Retail Standard, etc.).\n\n4. **Localization**: Enhanced support for different languages and regional formatting of dates.\n\n5. **Export Functionality**: Added the ability to export fiscal calendars to common formats like CSV, iCal, and JSON.\n\n6. **Framework Integration Examples**: Provided examples of integrating with popular frameworks like React, Vue, and Angular.\n\n7. **TypeScript Support**: The entire library has been rewritten in TypeScript, providing better type safety and developer experience.\n\n8. **Special Calendar Systems**: Added support for retail calendar systems (4-4-5, 4-5-4, 5-4-4) as well as bi-weekly and semi-monthly periods.\n\n9. **Holiday Management**: New functions to add, track, and manage holidays, including built-in holiday sets for various countries.\n\n10. **Date Range Analysis**: Enhanced date range utilities for fiscal year-to-date, quarter-to-date, and month-to-date calculations.\n\n11. **Period Comparisons**: New functions for comparing fiscal periods and calculating year-over-year changes.\n\n12. **Financial API Integrations**: Added connectors for popular accounting software (QuickBooks, Xero) and a generic adapter for custom systems, enabling seamless integration of financial data with fiscal calendars.\n\n## Installation\n\n```bash\nnpm install fiscal-year-calendar\n```\n\n## Usage\n\n### TypeScript\n\n```typescript\nimport {\n  getFiscalYear,\n  getStartDate,\n  getEndDate,\n  getWeekOptions,\n  START_OF_WEEK,\n  FISCAL_YEAR_PRESETS\n} from 'fiscal-year-calendar';\n\n// Get week options for fiscal year 2025 with Monday as start of week\nconst weekOptions = getWeekOptions(\n    START_OF_WEEK.monday.value,\n    null, // timezone (null for local timezone)\n    2025, // year\n    9,    // fiscal year start month (0-based, 9 = October)\n    1     // fiscal year start day\n);\nconsole.log(`Total weeks: ${weekOptions.length}`);\nconsole.log(\"First week:\", weekOptions[0]);\n\n// Get start and end dates of fiscal year 2025\nconst startDate = getStartDate(null, 2025);\nconst endDate = getEndDate(null, 2025);\nconsole.log(`Start date: ${startDate.format(\"YYYY-MM-DD\")}`);\nconsole.log(`End date: ${endDate.format(\"YYYY-MM-DD\")}`);\n\n// Get fiscal year for a specific date\nconst date = \"2024-10-15\"; // October 15, 2024\nconsole.log(`Fiscal year for ${date}: ${getFiscalYear(date)}`);\n```\n\n### JavaScript\n\n```javascript\nconst {\n  getFiscalYear,\n  getStartDate,\n  getEndDate,\n  getWeekOptions,\n  START_OF_WEEK,\n  FISCAL_YEAR_PRESETS\n} = require('fiscal-year-calendar');\n\n// Get week options for fiscal year 2025 with Monday as start of week\nconst weekOptions = getWeekOptions(\n    START_OF_WEEK.monday.value,\n    null, // timezone (null for local timezone)\n    2025, // year\n    9,    // fiscal year start month (0-based, 9 = October)\n    1     // fiscal year start day\n);\nconsole.log(`Total weeks: ${weekOptions.length}`);\nconsole.log(\"First week:\", weekOptions[0]);\n```\n\nFor more examples, see the [examples directory](./examples).\n\n## APIs\n\n### Constants\n\n- **START_OF_WEEK**\n\n    Options for start of a week, with options for Monday, Saturday and Sunday.\n    \n    ```typescript\n    START_OF_WEEK.monday.value   // \"monday\"\n    START_OF_WEEK.sunday.value   // \"sunday\"\n    START_OF_WEEK.saturday.value // \"saturday\"\n    ```\n\n- **CALENDAR_SYSTEMS**\n\n    Options for different calendar systems.\n    \n    ```typescript\n    CALENDAR_SYSTEMS.STANDARD    // \"standard\"\n    CALENDAR_SYSTEMS.RETAIL_445  // \"4-4-5\"\n    CALENDAR_SYSTEMS.RETAIL_454  // \"4-5-4\"\n    CALENDAR_SYSTEMS.RETAIL_544  // \"5-4-4\"\n    ```\n\n- **FISCAL_YEAR_PRESETS**\n\n    Predefined fiscal year configurations for various countries and standards.\n    \n    ```typescript\n    FISCAL_YEAR_PRESETS[\"us-federal\"]    // US Federal Government (Oct 1 - Sep 30)\n    FISCAL_YEAR_PRESETS[\"uk-standard\"]   // UK Standard (Apr 6 - Apr 5)\n    FISCAL_YEAR_PRESETS[\"australia\"]     // Australia (Jul 1 - Jun 30)\n    FISCAL_YEAR_PRESETS[\"new-zealand\"]   // New Zealand (Apr 1 - Mar 31)\n    FISCAL_YEAR_PRESETS[\"singapore\"]     // Singapore (Apr 1 - Mar 31)\n    FISCAL_YEAR_PRESETS[\"calendar-year\"] // Calendar Year (Jan 1 - Dec 31)\n    // And more...\n    ```\n\n### Core Calendar Functions\n\n- **getWeekOptions(startOfWeek, timezone, year, fyStartMonth, fyStartDay)**\n\n    Returns week options for a fiscal year.\n    \n    Parameters:\n    - startOfWeek: Option from START_OF_WEEK, defaults to Monday\n    - timezone: Timezone string (from moment-timezone), defaults to local timezone\n    - year: Fiscal year number, defaults to current year\n    - fyStartMonth: Fiscal year start month (0-based, 0=January), defaults to 9 (October)\n    - fyStartDay: Fiscal year start day, defaults to 1\n\n    Returns an array of objects with the following properties:\n    ```typescript\n    {\n      week: \"1\",\n      startTime: \"Mon Oct 1 2024 00:00:00 GMT+1300\",\n      endTime: \"Sun Oct 7 2024 23:59:59 GMT+1300\"\n    }\n    ```\n\n- **getQuarterOptions(startOfWeek, timezone, year, fyStartMonth, fyStartDay)**\n\n    Returns quarter options for a fiscal year.\n    \n    Parameters: Same as getWeekOptions\n    \n    Returns an array of objects with the following properties:\n    ```typescript\n    {\n      quarter: \"1\",\n      startTime: \"Mon Oct 1 2024 00:00:00 GMT+1300\",\n      endTime: \"Tue Dec 31 2024 23:59:59 GMT+1300\"\n    }\n    ```\n\n- **getMonthOptions(startOfWeek, timezone, year, fyStartMonth, fyStartDay)**\n\n    Returns month options for a fiscal year.\n    \n    Parameters: Same as getWeekOptions\n    \n    Returns an array of objects with the following properties:\n    ```typescript\n    {\n      month: \"1\",\n      name: \"October\",\n      startTime: \"Mon Oct 1 2024 00:00:00 GMT+1300\",\n      endTime: \"Thu Oct 31 2024 23:59:59 GMT+1300\"\n    }\n    ```\n\n### Special Calendar Systems\n\n- **getRetailCalendarOptions(startOfWeek, timezone, year, calendarSystem, fyStartMonth, fyStartDay)**\n\n    Returns period options for a retail calendar system (4-4-5, 4-5-4, or 5-4-4).\n    \n    Parameters:\n    - calendarSystem: One of CALENDAR_SYSTEMS values\n    - Other parameters: Same as getWeekOptions\n    \n    Returns an array of objects with the following properties:\n    ```typescript\n    {\n      period: \"1\",\n      startTime: \"Mon Oct 1 2024 00:00:00 GMT+1300\",\n      endTime: \"Sun Oct 28 2024 23:59:59 GMT+1300\",\n      weeks: 4\n    }\n    ```\n\n- **getBiWeeklyOptions(startOfWeek, timezone, year, fyStartMonth, fyStartDay)**\n\n    Returns bi-weekly period options for a fiscal year.\n    \n    Parameters: Same as getWeekOptions\n    \n    Returns an array of objects with the following properties:\n    ```typescript\n    {\n      period: \"1\",\n      startTime: \"Mon Oct 1 2024 00:00:00 GMT+1300\",\n      endTime: \"Sun Oct 14 2024 23:59:59 GMT+1300\"\n    }\n    ```\n\n- **getSemiMonthlyOptions(timezone, year, fyStartMonth, fyStartDay)**\n\n    Returns semi-monthly period options for a fiscal year (1st-15th and 16th-end of each month).\n    \n    Parameters: Same as getWeekOptions (except startOfWeek is not used)\n    \n    Returns an array of objects with the following properties:\n    ```typescript\n    {\n      period: \"1\",\n      startTime: \"Mon Oct 1 2024 00:00:00 GMT+1300\",\n      endTime: \"Mon Oct 15 2024 23:59:59 GMT+1300\"\n    }\n    ```\n\n### Date Functions\n\n- **getStartDate(timezone, year, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Returns the start date of a fiscal year as a moment object.\n    \n    Parameters: Same as getWeekOptions\n\n- **getEndDate(timezone, year, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Returns the end date of a fiscal year as a moment object.\n    \n    Parameters: Same as getWeekOptions\n\n- **getDateNumber(date, timezone, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Given a date, returns the sequence number of the date within the fiscal year.\n    \n    Parameters:\n    - date: Date string or moment object\n    - Other parameters: Same as getWeekOptions\n    \n    Returns a number representing the day number within the fiscal year (1-based).\n\n- **getFiscalYear(date, timezone, fyStartMonth, fyStartDay)**\n\n    Given a date, returns the fiscal year number which may differ from calendar year.\n    \n    Parameters:\n    - date: Date string or moment object\n    - timezone: Timezone string (from moment-timezone), defaults to local timezone\n    - fyStartMonth: Fiscal year start month (0-based, 0=January), defaults to 9 (October)\n    - fyStartDay: Fiscal year start day, defaults to 1\n    \n    Returns a number representing the fiscal year.\n\n- **getFiscalQuarter(date, timezone, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Given a date, returns the quarter number of the fiscal year (1-4).\n    \n    Parameters: Same as getDateNumber\n\n- **getFiscalMonth(date, timezone, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Given a date, returns the month number of the fiscal year (1-12).\n    \n    Parameters: Same as getDateNumber\n\n### Holiday Management\n\n- **addHoliday(date, name, recurring)**\n\n    Adds a holiday to the holiday registry.\n    \n    Parameters:\n    - date: Date string or Date object\n    - name: Name of the holiday\n    - recurring: Whether the holiday recurs annually (defaults to false)\n    \n    Returns the added holiday object.\n\n- **addHolidaySet(countryCode)**\n\n    Adds a set of common holidays for a specific country.\n    \n    Parameters:\n    - countryCode: Country code (e.g., \"US\", \"UK\", \"CA\", etc.)\n    \n    Returns an array of added holiday objects.\n\n- **getHolidays()**\n\n    Gets all registered holidays.\n    \n    Returns an array of holiday objects.\n\n- **isHoliday(date)**\n\n    Checks if a date is a holiday.\n    \n    Parameters:\n    - date: Date string, Date object, or moment object\n    \n    Returns a boolean indicating whether the date is a holiday.\n\n- **getBusinessDaysInPeriod(startDate, endDate, excludeHolidays)**\n\n    Gets the number of business days in a period, optionally excluding holidays.\n    \n    Parameters:\n    - startDate: Start date string, Date object, or moment object\n    - endDate: End date string, Date object, or moment object\n    - excludeHolidays: Whether to exclude holidays (defaults to true)\n    \n    Returns the number of business days.\n\n### Date Range Utilities\n\n- **getFiscalYearToDate(date, timezone, fyStartMonth, fyStartDay)**\n\n    Gets the fiscal year-to-date range for a given date.\n    \n    Parameters:\n    - date: Date string or moment object\n    - Other parameters: Same as getFiscalYear\n    \n    Returns an object with startDate and endDate properties (both moment objects).\n\n- **getFiscalQuarterToDate(date, timezone, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Gets the fiscal quarter-to-date range for a given date.\n    \n    Parameters: Same as getDateNumber\n    \n    Returns an object with startDate and endDate properties (both moment objects).\n\n- **getFiscalMonthToDate(date, timezone, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Gets the fiscal month-to-date range for a given date.\n    \n    Parameters: Same as getDateNumber\n    \n    Returns an object with startDate and endDate properties (both moment objects).\n\n- **getDateRangeInfo(startDate, endDate, timezone, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Gets information about a date range within the fiscal calendar.\n    \n    Parameters:\n    - startDate: Start date string or moment object\n    - endDate: End date string or moment object\n    - Other parameters: Same as getWeekOptions\n    \n    Returns an object with detailed information about the date range.\n\n### Period Comparisons\n\n- **getSamePeriodLastYear(date, periodType, timezone, startOfWeek, fyStartMonth, fyStartDay)**\n\n    Gets the same period from the previous fiscal year.\n    \n    Parameters:\n    - date: Date string or moment object\n    - periodType: Type of period (\"day\", \"week\", \"month\", \"quarter\", \"year\", \"biweekly\", \"semimonthly\")\n    - Other parameters: Same as getWeekOptions\n    \n    Returns an object with currentPeriod and previousPeriod properties (both moment objects).\n\n- **compareFiscalPeriods(period1, period2)**\n\n    Compares two fiscal periods.\n    \n    Parameters:\n    - period1: Object with startDate and endDate properties (both moment objects)\n    - period2: Object with startDate and endDate properties (both moment objects)\n    \n    Returns an object with comparison information.\n\n- **getYearOverYearChange(currentValue, previousValue, currentPeriod, previousPeriod)**\n\n    Calculates the year-over-year change between two values.\n    \n    Parameters:\n    - currentValue: Current value (number)\n    - previousValue: Previous value (number)\n    - currentPeriod: Description of current period (optional)\n    - previousPeriod: Description of previous period (optional)\n    \n    Returns an object with change information.\n\n### Preset Functions\n\n- **getFiscalYearWithPreset(presetKey, timezone, year, startOfWeek)**\n\n    Gets fiscal year information using a preset.\n    \n    Parameters:\n    - presetKey: Key from FISCAL_YEAR_PRESETS\n    - Other parameters: Same as getWeekOptions\n    \n    Returns an object with fiscal year information.\n\n### Utility Functions\n\n- **getTimezone(timezone)**\n\n    An encapsulation of moment.tz() from Moment.js. Parameter timezone is exactly the same as the one from Moment.js.\n    \n    Returns a moment object for the specified timezone.\n\n### Localization Functions\n\n- **setLocale(locale)**\n\n    Sets the locale for date formatting.\n    \n    Parameters:\n    - locale: Locale string (e.g., \"en\", \"fr\", \"es\", \"de\", etc.)\n    \n    Returns the current locale.\n\n- **getLocale()**\n\n    Gets the current locale.\n    \n    Returns the current locale string.\n\n- **getAvailableLocales()**\n\n    Gets a list of available locales.\n    \n    Returns an array of locale strings.\n\n- **localizeMonthOptions(months, locale)**\n\n    Localizes month names in month options.\n    \n    Parameters:\n    - months: Array of month objects from getMonthOptions\n    - locale: Locale string\n    \n    Returns an array of month objects with localized month names.\n\n### Export Functions\n\n- **exportToCSV(data, options)**\n\n    Exports data to CSV format.\n    \n    Parameters:\n    - data: Array of objects to export\n    - options: Export options (optional)\n    \n    Returns a CSV string.\n\n- **exportToJSON(data, options)**\n\n    Exports data to JSON format.\n    \n    Parameters:\n    - data: Array of objects to export\n    - options: Export options (optional, includes pretty formatting)\n    \n    Returns a JSON string.\n\n- **exportToICalendar(data, options)**\n\n    Exports data to iCalendar format.\n    \n    Parameters:\n    - data: Array of objects with startTime and endTime properties\n    - options: Export options (optional, includes summary and description)\n    \n    Returns an iCalendar string.\n\n## Examples\n\n### Visualization Components\n\nThe library includes visualization components for displaying fiscal calendars in web applications:\n\n```html\n<!-- Include the library -->\n<script src=\"path/to/fiscal-year-calendar/dist/cjs/index.js\"></script>\n\n<!-- Use the visualization components -->\n<div id=\"fiscal-calendar\"></div>\n\n<script>\n  // Initialize a calendar grid\n  const calendar = new FiscalCalendarGrid('#fiscal-calendar', {\n    year: 2025,\n    presetKey: 'us-federal',\n    startOfWeek: 'monday'\n  });\n  \n  // Render the calendar\n  calendar.render();\n</script>\n```\n\nFor more examples of visualization components, see the [visualization examples](./examples/visualization).\n\n### Framework Integration\n\nThe library can be easily integrated with popular JavaScript frameworks:\n\n#### React\n\n```jsx\nimport React from 'react';\nimport { FiscalCalendarTable } from 'fiscal-year-calendar/react';\n\nfunction App() {\n  return (\n    <FiscalCalendarTable \n      presetKey=\"us-federal\"\n      year={2025}\n      showQuarters={true}\n      showMonths={true}\n    />\n  );\n}\n```\n\n#### Vue.js\n\n```vue\n<template>\n  <fiscal-calendar-vue \n    :preset-key=\"'us-federal'\" \n    :fiscal-year=\"2025\"\n  />\n</template>\n\n<script>\nimport { FiscalCalendarVue } from 'fiscal-year-calendar/vue';\n\nexport default {\n  components: {\n    FiscalCalendarVue\n  }\n}\n</script>\n```\n\n#### Angular\n\n```typescript\n// In your module\nimport { FiscalCalendarModule } from 'fiscal-year-calendar/angular';\n\n@NgModule({\n  imports: [FiscalCalendarModule]\n})\nexport class AppModule { }\n\n// In your component template\n<app-fiscal-calendar\n  [presetKey]=\"'us-federal'\"\n  [fiscalYear]=\"2025\"\n></app-fiscal-calendar>\n```\n\nFor more framework integration examples, see the [frameworks examples](./examples/frameworks).\n\n### Localization\n\n```typescript\nimport { setLocale, localizeMonthOptions, getMonthOptions } from 'fiscal-year-calendar';\n\n// Set locale to French\nsetLocale('fr');\n\n// Get month options with localized month names\nconst months = getMonthOptions('monday', null, 2025, 9, 1);\nconst localizedMonths = localizeMonthOptions(months, 'fr');\n\nconsole.log(localizedMonths[0].name); // \"octobre\" instead of \"October\"\n```\n\n### Export Functionality\n\n```typescript\nimport { getMonthOptions, exportToCSV, exportToJSON, exportToICalendar } from 'fiscal-year-calendar';\n\n// Get fiscal year data\nconst months = getMonthOptions('monday', null, 2025, 9, 1);\n\n// Export to CSV\nconst csv = exportToCSV(months);\nconsole.log(csv);\n// \"Month,Name,Start Date,End Date\n// 1,October,2024-10-01,2024-10-31\n// 2,November,2024-11-01,2024-11-30\n// ...\"\n\n// Export to JSON\nconst json = exportToJSON(months, { pretty: true });\nconsole.log(json);\n\n// Export to iCalendar format\nconst ical = exportToICalendar(months, {\n  summary: \"Fiscal Year 2025\",\n  description: \"Fiscal year periods\"\n});\nconsole.log(ical);\n```\n\n### Financial API Integrations\n\nThe library includes connectors for popular accounting software to integrate financial data with fiscal calendars:\n\n```typescript\nimport { QuickBooksConnector } from 'fiscal-year-calendar/integrations';\n\n// Initialize QuickBooks connector\nconst qbConnector = new QuickBooksConnector({\n  clientId: 'your-client-id',\n  clientSecret: 'your-client-secret',\n  redirectUri: 'https://your-app.com/callback'\n});\n\n// Get financial data for fiscal year 2025\nconst financialData = await qbConnector.getFinancialData({\n  fiscalYear: 2025,\n  fiscalQuarter: 2\n});\n\nconsole.log(`Q2 2025 Revenue: ${financialData.revenue}`);\nconsole.log(`Q2 2025 Expenses: ${financialData.expenses}`);\nconsole.log(`Q2 2025 Profit: ${financialData.profit}`);\n```\n\nThe library also includes a Xero connector and a generic adapter for custom accounting systems:\n\n```typescript\nimport { \n  XeroConnector, \n  GenericAccountingAdapter, \n  createRestDataSource, \n  createSimpleDataTransformer \n} from 'fiscal-year-calendar/integrations';\n\n// Create a custom adapter for any accounting system\nconst adapter = new GenericAccountingAdapter({\n  clientId: 'your-client-id',\n  clientSecret: 'your-client-secret',\n  redirectUri: 'https://your-app.com/callback'\n}, {\n  dataSource: createRestDataSource('https://api.your-accounting-system.com'),\n  dataTransformer: createSimpleDataTransformer({\n    revenue: 'data.income.total',\n    expenses: 'data.expenses.total'\n  })\n});\n\n// Get financial data for a specific date range\nconst financialData = await adapter.getFinancialData({\n  startDate: '2025-01-01',\n  endDate: '2025-03-31'\n});\n```\n\nFor more examples, see the [examples directory](./examples).\n\n## License\n\nISC\n","readmeFilename":"README.md"}