jsona icon indicating copy to clipboard operation
jsona copied to clipboard

Add support for both esm and cjs output using rollup bundler, update node to 21, replace mocha test runner with native node test runner

Open anthony-y-zhu14 opened this issue 11 months ago • 2 comments

  • use rollup to produce both comonjs and esm output
  • remove mocha dependencies and use native node test runner
  • upversion dev dependencies to latest
  • update package-lock.json using node 21

output files:

.
├── LICENSE
├── README.md
├── README_0_2.md
├── lib
│   ├── Jsona.cjs
│   ├── Jsona.cjs.map
│   ├── Jsona.d.ts
│   ├── Jsona.js
│   ├── Jsona.js.map
│   ├── JsonaTypes.d.ts
│   ├── builders
│   │   ├── JsonDeserializer.cjs
│   │   ├── JsonDeserializer.cjs.map
│   │   ├── JsonDeserializer.d.ts
│   │   ├── JsonDeserializer.js
│   │   ├── JsonDeserializer.js.map
│   │   ├── ModelsSerializer.cjs
│   │   ├── ModelsSerializer.cjs.map
│   │   ├── ModelsSerializer.d.ts
│   │   ├── ModelsSerializer.js
│   │   ├── ModelsSerializer.js.map
│   │   ├── ReduxObjectDenormalizer.cjs
│   │   ├── ReduxObjectDenormalizer.cjs.map
│   │   ├── ReduxObjectDenormalizer.d.ts
│   │   ├── ReduxObjectDenormalizer.js
│   │   └── ReduxObjectDenormalizer.js.map
│   ├── cache.cjs
│   ├── cache.cjs.map
│   ├── cache.d.ts
│   ├── cache.js
│   ├── cache.js.map
│   ├── index.cjs
│   ├── index.cjs.map
│   ├── index.d.ts
│   ├── index.js
│   ├── index.js.map
│   ├── simplePropertyMappers.cjs
│   ├── simplePropertyMappers.cjs.map
│   ├── simplePropertyMappers.d.ts
│   ├── simplePropertyMappers.js
│   ├── simplePropertyMappers.js.map
│   ├── switchCasePropertyMappers.cjs
│   ├── switchCasePropertyMappers.cjs.map
│   ├── switchCasePropertyMappers.d.ts
│   ├── switchCasePropertyMappers.js
│   ├── switchCasePropertyMappers.js.map
│   ├── utils.cjs
│   ├── utils.cjs.map
│   ├── utils.d.ts
│   ├── utils.js
│   └── utils.js.map
├── package-lock.json
├── package.json
├── rollup.config.js
├── src
│   ├── Jsona.ts
│   ├── JsonaTypes.ts
│   ├── builders
│   │   ├── JsonDeserializer.ts
│   │   ├── ModelsSerializer.ts
│   │   └── ReduxObjectDenormalizer.ts
│   ├── cache.ts
│   ├── index.ts
│   ├── simplePropertyMappers.ts
│   ├── switchCasePropertyMappers.ts
│   └── utils.ts
├── tests
│   ├── Jsona.test.ts
│   ├── ModelsSerializer.test.ts
│   ├── ReduxObjectDenormalizer.test.ts
│   ├── mocks.ts
│   └── switchCasePropertyMappers.test.ts
└── tsconfig.json

anthony-y-zhu14 avatar Mar 02 '25 14:03 anthony-y-zhu14

this may also fix #66

anthony-y-zhu14 avatar Mar 02 '25 14:03 anthony-y-zhu14

@olosegres could you please review the changes to see if it's okay? I happy to explain our usecases but basically we are hoping to have a esm distribution of this library 🙂

anthony-y-zhu14 avatar Mar 14 '25 20:03 anthony-y-zhu14