98 Commits

Author SHA1 Message Date
arthurfiorette
9bb2918607 fix: lint again 2023-04-09 12:37:05 -03:00
arthurfiorette
a2dbb5f100 test: transform response test 2023-04-09 12:21:53 -03:00
arthurfiorette
7731d7e52b fix: lint 2023-04-09 12:09:28 -03:00
arthurfiorette
083f4b7f4d fix: test open handles 2023-03-27 19:31:42 -03:00
arthurfiorette
72de39c4d3 feat: memory storage cleanup 2023-03-19 19:30:19 -03:00
arthurfiorette
360ba57348 feat: handle response interceptor errors 2023-03-19 17:30:02 -03:00
Richard Garnier
2ae4d28878
fix: Support stale-while-revalidate (#514)
* implement stale-while-revalidate

* Backward compatibility

* Fix review comments

* chore: isExpired check comment

---------

Co-authored-by: Arthur Fiorette <github@arthur.place>
2023-03-19 16:54:24 -03:00
Guilherme Mazoni
ee8b6b36a1
feat: staleIfError using stale-if-error directive (#506)
* Fix #506

* fix fmt
2023-02-24 11:25:39 -03:00
arthurfiorette
384c6b59ee
feat: hydrate option #469 2023-02-17 12:09:00 -03:00
arthurfiorette
a5ebad3d14
fix: eslint warnings 2023-02-02 20:29:21 -03:00
arthurfiorette
eddff579c5
fix: axios headers 2023-02-02 20:14:46 -03:00
Dimitris-Rafail Katsampas
7ea3023e95
fix: prevent response storage calls if method is not supported (#464)
* fix: Prevent response storage calls if method is not supported

* fix: Added missing import

* chore: File formatting

* fix: Ensure updateCache gets called before method check

* chore: Removed unnecessary optional chaining

* fix: Added methods check for reject callback

* test: Added tests that cover cache.methods cases

* test: Added assertions to axios rejecting tests

* chore: Added more details to debugging logs
2023-01-18 08:33:28 -03:00
arthurfiorette
002e065695
fix: double registration check and interceptors tests 2023-01-04 09:15:27 -03:00
arthurfiorette
7d82c5a46f
feat: cache takeover #437 2022-12-25 16:56:25 -03:00
Dimitris-Rafail Katsampas
ee25b394da
chore: default prefix parameter for web storage (#425)
* chore: Added default prefix param for web storage

* chore: Minor default prefix correction

* test: add test

Co-authored-by: arthurfiorette <arthur.fiorette@gmail.com>
2022-12-11 19:00:32 -03:00
Arthur Fiorette
88c9655ba3
Axios cache interceptor v1 roadmap (#368)
* chore(deps-dev): bump axios from 0.27.2 to 1.0.0

Bumps [axios](https://github.com/axios/axios) from 0.27.2 to 1.0.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.27.2...v1.0.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* feat: initial changes

* feat: more docs

* docs: global config

* feat: comparison

* chore: more docs

* docs: migrate docs generator to vitepress (#403)

* chore(vitepress): add basic files

* chore(vitepress): add dev deps & scripts for use

* chore(vitepress config): change to ts for type checks

* chore(vitepress config): remove js file

* chore(vitepress theme): add custom theme css

* chore(vitepress docs): add simple home page

* chore(gitignore): ignore doc dist

* chore(favicon): add icon to head

* feat(doc-features): add features spotlight

* chore(doc footer): made with ❤️

* chore(structure): move md files into `./src`

* chore(config): re-organise

* chore: custom dev port

* feat: documentation pages

* refactor: modified config

* feat: social links

* style: formatted code

* feat: removed code groups temporarily

* fix: fixed bundlephobia svg

* docs: general documentation remake

* docs: more rewritting

Co-authored-by: arthurfiorette <arthur.fiorette@gmail.com>

* fix: change headers usage

* fix: adapters exporting changes

* fix: request doesnt execute after abortion

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Cain <75994858+cainthebest@users.noreply.github.com>
2022-12-05 22:36:31 -03:00
arthurfiorette
491fb011a3
test: added #317 test 2022-08-17 23:03:22 -03:00
dependabot[bot]
ed17fa2683
chore(deps-dev): bump prettier-plugin-organize-imports from 3.0.0 to 3.0.1 (#310)
* chore(deps-dev): bump prettier-plugin-organize-imports

Bumps [prettier-plugin-organize-imports](https://github.com/simonhaenisch/prettier-plugin-organize-imports) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/simonhaenisch/prettier-plugin-organize-imports/releases)
- [Commits](https://github.com/simonhaenisch/prettier-plugin-organize-imports/compare/v3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: prettier-plugin-organize-imports
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: increase maximum test time

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: arthurfiorette <arthur.fiorette@gmail.com>
2022-08-02 09:25:05 -03:00
Arthur Fiorette
f0cd5d1af2
feat: cache updater function for multiple keys. (#304)
* feat: implemented general cache updater function

* test: added tests

* docs: included cache update warning
2022-07-28 23:00:37 -03:00
Arthur Fiorette
cf97535d33
fix: cache update not being executed correctly (#283)
* test: added flaky test

* fix: fixed flaky test

* style: formatted code
2022-06-29 22:04:28 -03:00
arthurfiorette
268fccb935
feat: override cache option 2022-06-05 11:26:00 -03:00
arthurfiorette
d87307ae93
feat: remove remnant x-axios-headers from server response 2022-06-05 09:50:02 -03:00
dependabot[bot]
ce5900b23c
chore(deps-dev): bump @types/jest from 27.5.1 to 28.1.0 (#252) 2022-06-03 03:30:12 +00:00
Heiko Rothkranz
728b69d71a
fix: Interpret max-age=0 as a valid cache-control header (#253)
* fix: Interpret `max-age=0` as a valid `cache-control` header

* tests: added max-age=0 test

* fix: fixed linting

Co-authored-by: arthurfiorette <arthur.fiorette@gmail.com>
2022-06-02 21:57:51 -03:00
arthurfiorette
f4f4be1cd2
chore(deps): update jest to 28 2022-05-07 15:37:52 -03:00
Arthur Fiorette
17682ca0b9
Pass currentRequest on each access to storages (#220) (#226)
* feat: initial working code

* fix: better usage of currentRequest on storages

* feat: added tests
2022-05-01 10:03:30 -03:00
arthurfiorette
0a00778065
fix: fixed bug when a pending request had it cached empty (#165) 2022-03-24 19:03:40 -03:00
arthurfiorette
a0e05e8d30
tests: fixed memory storage clone test 2022-03-11 17:14:40 -03:00
Arthur Fiorette
f699e194f8
fix: memory storage copy data to avoid reference changes (#164)
* tests: added initial unit test

* fix: added fix

* tests: fixed tests

* style: formatted code
2022-03-11 13:29:13 -03:00
arthurfiorette
ab45164287
fix: defaultKeyGenerator keeps response unchanged (#161) 2022-03-03 18:50:43 -03:00
Christos Kopanos
6db89530c1
feat: handle web storage DOMExceptions (#148) 2022-02-21 14:10:32 -03:00
arthurfiorette
ea4ab4c4eb
refactor: added ACI prefix to avoid external conflicts 2022-01-23 16:18:00 -03:00
arthurfiorette
0ba6025fb5
feat: debug mode & fixed tests 2022-01-23 16:13:22 -03:00
arthurfiorette
d14750ee63
refactor: moved header file 2022-01-19 07:48:33 -03:00
arthurfiorette
7217eaff02
fix: removed breaking behaviour 2022-01-18 12:48:49 -03:00
arthurfiorette
66f29c92c7
deps: updated axios to v0.25 2022-01-18 12:25:31 -03:00
arthurfiorette
edb32bdea3
feat: add staleIfError support 2022-01-18 12:06:20 -03:00
arthurfiorette
9379fce100
feat: buildKeyGenerator and ids with req.data by default 2022-01-14 18:46:20 -03:00
arthurfiorette
fa2c6e3204
perf: only execute one generateKey per request 2022-01-13 21:23:36 -03:00
arthurfiorette
6f9ef36e75
fix: include data at keyGenerator (#116) 2022-01-13 20:48:21 -03:00
Arthur Fiorette
4734c5f7a8
build: Yarn v2 and ESM & CJS bundles (#114) 2022-01-13 18:57:50 -03:00
arthurfiorette
ff73ad5c69
fix: await unawaited promises and eslint more severe 2022-01-10 13:30:31 -03:00
arthurfiorette
88d45cc0fb
feat: cache predicate now supports async functions 2022-01-10 13:00:35 -03:00
arthurfiorette
38a5ecd365
refactor: simplified cachePredicate 2022-01-09 17:27:51 -03:00
arthurfiorette
1b93070db4
refactor: used triple equal sign 2022-01-09 13:33:44 -03:00
arthurfiorette
37431a9d34
refactor!: removed isAxiosCacheInterceptor function 2022-01-08 12:57:19 -03:00
arthurfiorette
cd2f14c446
refactor: removed classes to decrease bundle size 2022-01-08 12:27:52 -03:00
arthurfiorette
4f938a4793
tests: splited header interpreter tests into multiple files 2022-01-08 12:26:37 -03:00
arthurfiorette
85336da8b1
docs: fixed baseURL casing in examples & documentation 2022-01-08 12:26:07 -03:00
arthurfiorette
ed1e163472
chore: bundles exports everything and webpack bundles everything 2022-01-07 15:45:06 -03:00