sindresorhus / query-string

Parse and stringify URL query strings
MIT License
6.76k stars 450 forks source link

Decode-uri-component requirement forces CommonJS #359

Closed void-spark closed 1 year ago

void-spark commented 1 year ago

Decode-uri-component is CommonJS, which means I can't use it (webpack converts it, but web-dev-server which we use doesn't support it out of the box, and the rollup plugin which would add conversion is horribly broken in it). Can decode-uri-component be made inline or such? Or can we have a -lite version which only does stringify (I only need that), and which doesn't require Decode-uri-component ? :)

sindresorhus commented 1 year ago

I'm not interested in inlining it because that means I have to maintain it.

I'm sure @SamVerschueren would be happy to convert the package to ESM if someone did a pull request.

SamVerschueren commented 1 year ago

Yes, I would be happy to accept a PR which converts it to ESM.

void-spark commented 1 year ago

@SamVerschueren Well, I'm this far: https://github.com/void-spark/decode-uri-component/actions/runs/3685140334 Note I'm not a experiences js developer :) 'downside' is that older node versions don't work, which makes sense, full esm support is since 12/14. 12 fails on something like a ?? in a library? Not sure what happens there, could actually be the newer test dependencies failing on that version. Mind anything below 14 is no longer supported: https://endoflife.date/nodejs

See what you think of it, and if the loss of older node versions is acceptable, if you like it I'll create a PR (and remove older node versions from the git workflow).

SamVerschueren commented 1 year ago

Dropping older versions is definitely ok. As long as it supports everything query-string supports 👍 .

void-spark commented 1 year ago

@SamVerschueren Well, this is the PR to the best of my abilities then: https://github.com/SamVerschueren/decode-uri-component/pull/11 :)