square / maker

Maker Design System by Square
https://square.github.io/maker/styleguide/latest-stable/
Other
63 stars 14 forks source link

build: convert .cjs to .js #547

Closed stephanos-square closed 1 year ago

stephanos-square commented 1 year ago

Describe the problem this PR addresses

The code was using a mix of .js ("import") and .cjs ("require") files. This makes it impossible to use from Vite/Vitess and harder to migrate from CommonJS to ESM in the near future.

Describe the changes in this PR

This converts all .cjs files to .js. Most of the change involves just renaming the files and changing require to import and module.exports to export default. But the .postcssrc.js file required an extra build step. That's because it's not capable of dealing with imports (I tried using .mjs and .ts - which both failed). Now the code it needs is pre-bundled so it can be required.

Using the "Compare Directories" feature in IntelliJ to compare the build output before and after the change, we can see that the only files that changed are:

Taking a closer look at these two, it appears that this change caused Webpack to bundle these two files slightly differently. But the content appears to effectively be the same.

github-actions[bot] commented 1 year ago

This PR has been automatically closed because it hasn't received any activity in over 3 months.