-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[V6] Native ESM-støtte 🎉 #2677
[V6] Native ESM-støtte 🎉 #2677
Conversation
🦋 Changeset detectedLatest commit: 497bdfd The changes in this PR will be included in the next version bump. This PR includes changesets to release 7 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
"sideEffects": [ | ||
"*.svg" | ||
], | ||
"sideEffects": false, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Siden endring av SVG i publisert versjon ikke vil påvirke bygd js-kode er sideEffects false
"types": "./dist/react/esm/index.d.ts", | ||
"import": "./dist/react/esm/index.js", | ||
"require": "./dist/react/cjs/index.js" | ||
"import": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@@ -55,7 +59,8 @@ | |||
"parse-svg": "node -e 'require(\"./config/parse-svg.js\").main()'", | |||
"copy": "copyfiles util/* src", | |||
"update-metadata": "node config/metadata.js", | |||
"build": "yarn copy && yarn create-icons && concurrently \"tsc\" \"tsc -p tsconfig.esm.json\" && node config/cleanTypes.js && yarn update-metadata && yarn parse-svg", | |||
"write-packagejson": "echo '{\"type\": \"module\"}' > dist/react/esm/package.json", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Trengs for at filer under /esm
skal tolkes som ESM-filer. Alternativet ville vært at alle filer i /esm
får .mjs
-extension
@@ -75,6 +80,7 @@ | |||
"lodash.startcase": "4.4.0", | |||
"react": "^18.0.0", | |||
"rehype-parse": "8.0.4", | |||
"tsc-alias": "1.8.8", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Endrer export * from "./accordion"
-> export * from "./accordion/index.js"
@@ -3,7 +3,11 @@ | |||
"compilerOptions": { | |||
"outDir": "./dist/react/esm", | |||
"module": "esnext", | |||
"sourceMap": false, | |||
"sourceMap": true, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Vet ikke hvorfor denne har vært disablet tidligere, er jo bare +++ å ha sourcemap tilgjengelig 🤔
"clsx": "^1.2.1", | ||
"date-fns": "^2.30.0", | ||
"react-day-picker": "8.3.4" | ||
"clsx": "^2.1.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
https://github.com/lukeed/clsx/releases/tag/v2.0.0
Denne dependencien er forsåvidt så liten at vi liksågodt kunne inlinet den i en egen PR
…2707) * 🎉 use-client blir lagt til på export av ds-react og aksel-icons * 🎉 La til nextjs med appdir for testing * ⚡ Tom yarn.lock med i git * 📝 changeset * 📝 Oppdatert migration-guide * Update @navikt/aksel-icons/config/index-template.js
* [V6] Deprecated Grid og ContentContainer (#2622) * 🔥 Fjernet grid css * 🔥 Fjernet grid tsx * 🔥 Fjernet content-container fra systemet * 🐛 la til deprecatePrefix-tag for stylelint * 📝 Changeset * Textarea: Fjern wrapper (#2635) * [V6] Chat-props deprecation (#2631) * 🎨 Satt opp codemod boilerplate for chat deprecation * 🐛 v5 -> v6 i codemod * 🧪 Tester for alias-import av chat * 🧪 idempotent codemod-test * 🔥 Fjernet deprecated props fra Chat * 📝 Changeset * 📝 Bedre advarsel i chat-codemod * 📝 v6-migration update * 🧪 Tester vanlig import av Chat * 📝 Oppdatert tekster i codemod * 🔥 Fjernet return fra removeProps * Update @navikt/aksel/src/codemod/migrations.ts * [V6] 1440px breakpoint (#2632) * ✨ La til nytt brekkpunkt 1440px * 🎉 Bleed støtter 2xl breakpoint * 🎉 Bleed box 2xl breakpoint * 🎉 hgrid 2xl breakpoint * 🎉 resterende primitives støtter 1440px * 📝 tailwind migreringsdocs * 🔥 Fjernet navno-mal fra chromatic snapshot * 📝 Changeset * 🐛 2xl hgrid css brakk * 📝 Oppdatert changset med tailwind-ref * Update @navikt/core/react/src/layout/bleed/Bleed.tsx * Update @navikt/core/react/src/layout/bleed/Bleed.tsx * 📝 Mer konsekvent story for breakpoints i box * 🐛 JSDOC for Bleed matcher nå syntax * [V6] Fjernet z-index-modal token (#2637) * 🔥 Fjernet zindex-modal token * 📝 Oppdatert docs * 📝 Changeset * [V6] ErrorSummary magic (#2642) * ♻️ Flyttet li-tag fra ErrorSummary-parent til child * 🏷️ Bedre typer * 🔒 Heading er nå required i ErrorSummary * 🎨 Egen prop for ErrorSummary fokus * 📝 Changeset * 🎨 Bedre fokushåndtering i ErrorSummary * ♻️ focusTarget -> focusTargetRef * 📝 Fikset jsdoc * 📝 Migreringstekst * 📝 changeset * 📝 Migration-text * 📝 JSDoc-staving * 📝 Oppdatert migreringsguide for z-index + tailwind * 🐛 Fikset bruk av z-modal i tailwind * 🔥 Fjernet openOnFocus-prop fra date * [V6] Modal: strengere prop-typer (#2718) * 🎨 SortState i Table har nå none tilgjengelig (#2726) * [V6] Oppdatert bruk av action-farger (#2717) * 💄 Button secondary hover * 💄 Radio/Checkbox action-farger * :WIP: combobox action-farger * 🐛 Tilpasset hover-farge på checkbox i confirmationpanel * 💄 copybutton hover-text action * 💄 dropdown, helptext hover-text * 💄 link og linkpanel actionsfarger * 💄 Search action-farger * 💄 select action-farger * 💄 Stepper action * 💄 Textarea action * 💄 Textarea og textfield colors * 🐛 Riktig hover-bakgrunn på combobox selected option * 📝 Changeset * 📝 changeset tokens * 📝 Dokumentert nye tokens * [V6] Native ESM-støtte 🎉 (#2677) * 🎨 Fungerende cjs/esm bundle med use-client * 🎨 Oppdatert dir-output i for esm * ⬆️ Bump date-fns og react-day-picker * 🎨 oppdatert date-fns imports * 🐛 Endret bruk av reat-day-picker i monthpicker * 🐛 Fikset rendring av button i Datepicker-row * ♻️ Bruker date-fns imports ssom støtter v2 og v3 * ⬆️ Synced date-fns versions * ✨ Astro testmiljø * 📝 Changeset * 🎨 Skriver packagejson med type for esm * 🔥 Fjernet .yarn/* fra astro * 🎨 La til .yarn i gitignore for astro * ⏪ Bruker riktig ds-react versjon * ⬆️ Lik tsconfig som ds-react i aksel-icons * 🐛 La tilbake provernance * 🐛 Undo Day/Row fix fra main * 🔥 Fjernet mulighet til å laste date-fns v2 * 🔥 Fjernet fs-extra dependency * 🐛 Fikset feil versjon på core/react * [V6] React-pakker støtter nå native SSR ved å bruke `use-client` 🎉 (#2707) * 🎉 use-client blir lagt til på export av ds-react og aksel-icons * 🎉 La til nextjs med appdir for testing * ⚡ Tom yarn.lock med i git * 📝 changeset * 📝 Oppdatert migration-guide * Update @navikt/aksel-icons/config/index-template.js * 🐛 Async-lasting av date-fns er nå v3 esm compliant v3 av date-fns støtter ikke default export/import, noe som brakk async-lasting da vi brukte .default * Search: Ekskluder 'type' fra SearchProps (#2736) * 🎉 Ny token icon-action-hover * 🔥 Fjernet v6-endringer for ErrorSummary. Endringer vil bli gjort i en senere major-versjon * OverridableComponent: Fikset feil som tillot vilkårlige props (#2739) * 🔥 Fjernet migration.md --------- Co-authored-by: Halvor Haugan <[email protected]>
* 🎉 Ny hook og API 'descendants' * 📝 Bedre storiers * 🎉 Setup for ny tabs * 🎨 Setup context * 🎨 useTabs-hook * 🎨 Tablist hook * 🚚 Flyttet tablist i egen mappe * 🎨 TabList * 🐛 Fikset import av tabList * 🎨 Tabs.Tab implementert * 🎨 Tabs.TabPanel implementert * 🐛 Fikset import av tabpanel * 🐛 onOnClick -> onClick * 🐛 Fikset keydown-håndtering i tablist * 🐛 Fikset plassering av scrollbuttons i overflow * ♿ Scrollbutton er nå * ✨ Fitted variant * 🐛 Fikset imports * 🔥 Fjernet radix-tabs import * 🎨 Panel-children rendres bare hvis selected * 🎨 lazy-prop for å bare rendre children i panel hvis selected * 🎨 Tabs.Tab håndterer nå tab-key og tabindex riktig * 📝 Changeset * 📝 Changeset * [V6] Deprecated Grid og ContentContainer (#2622) * 🔥 Fjernet grid css * 🔥 Fjernet grid tsx * 🔥 Fjernet content-container fra systemet * 🐛 la til deprecatePrefix-tag for stylelint * 📝 Changeset * Textarea: Fjern wrapper (#2635) * [V6] Chat-props deprecation (#2631) * 🎨 Satt opp codemod boilerplate for chat deprecation * 🐛 v5 -> v6 i codemod * 🧪 Tester for alias-import av chat * 🧪 idempotent codemod-test * 🔥 Fjernet deprecated props fra Chat * 📝 Changeset * 📝 Bedre advarsel i chat-codemod * 📝 v6-migration update * 🧪 Tester vanlig import av Chat * 📝 Oppdatert tekster i codemod * 🔥 Fjernet return fra removeProps * Update @navikt/aksel/src/codemod/migrations.ts * [V6] 1440px breakpoint (#2632) * ✨ La til nytt brekkpunkt 1440px * 🎉 Bleed støtter 2xl breakpoint * 🎉 Bleed box 2xl breakpoint * 🎉 hgrid 2xl breakpoint * 🎉 resterende primitives støtter 1440px * 📝 tailwind migreringsdocs * 🔥 Fjernet navno-mal fra chromatic snapshot * 📝 Changeset * 🐛 2xl hgrid css brakk * 📝 Oppdatert changset med tailwind-ref * Update @navikt/core/react/src/layout/bleed/Bleed.tsx * Update @navikt/core/react/src/layout/bleed/Bleed.tsx * 📝 Mer konsekvent story for breakpoints i box * 🐛 JSDOC for Bleed matcher nå syntax * [V6] Fjernet z-index-modal token (#2637) * 🔥 Fjernet zindex-modal token * 📝 Oppdatert docs * 📝 Changeset * [V6] ErrorSummary magic (#2642) * ♻️ Flyttet li-tag fra ErrorSummary-parent til child * 🏷️ Bedre typer * 🔒 Heading er nå required i ErrorSummary * 🎨 Egen prop for ErrorSummary fokus * 📝 Changeset * 🎨 Bedre fokushåndtering i ErrorSummary * ♻️ focusTarget -> focusTargetRef * 📝 Fikset jsdoc * 📝 Migreringstekst * 📝 changeset * 📝 Migration-text * 📝 JSDoc-staving * 📝 Oppdatert migreringsguide for z-index + tailwind * 🐛 Fikset bruk av z-modal i tailwind * 🔥 Fjernet descendants-filer * 📝 Rename context og types til namespace * 🔥 Fjernet openOnFocus-prop fra date * [V6] Modal: strengere prop-typer (#2718) * 🎨 SortState i Table har nå none tilgjengelig (#2726) * [V6] Oppdatert bruk av action-farger (#2717) * 💄 Button secondary hover * 💄 Radio/Checkbox action-farger * :WIP: combobox action-farger * 🐛 Tilpasset hover-farge på checkbox i confirmationpanel * 💄 copybutton hover-text action * 💄 dropdown, helptext hover-text * 💄 link og linkpanel actionsfarger * 💄 Search action-farger * 💄 select action-farger * 💄 Stepper action * 💄 Textarea action * 💄 Textarea og textfield colors * 🐛 Riktig hover-bakgrunn på combobox selected option * 📝 Changeset * 📝 changeset tokens * 📝 Dokumentert nye tokens * [V6] Native ESM-støtte 🎉 (#2677) * 🎨 Fungerende cjs/esm bundle med use-client * 🎨 Oppdatert dir-output i for esm * ⬆️ Bump date-fns og react-day-picker * 🎨 oppdatert date-fns imports * 🐛 Endret bruk av reat-day-picker i monthpicker * 🐛 Fikset rendring av button i Datepicker-row * ♻️ Bruker date-fns imports ssom støtter v2 og v3 * ⬆️ Synced date-fns versions * ✨ Astro testmiljø * 📝 Changeset * 🎨 Skriver packagejson med type for esm * 🔥 Fjernet .yarn/* fra astro * 🎨 La til .yarn i gitignore for astro * ⏪ Bruker riktig ds-react versjon * ⬆️ Lik tsconfig som ds-react i aksel-icons * 🐛 La tilbake provernance * 🐛 Undo Day/Row fix fra main * 🔥 Fjernet mulighet til å laste date-fns v2 * 🔥 Fjernet fs-extra dependency * 🐛 Fikset feil versjon på core/react * [V6] React-pakker støtter nå native SSR ved å bruke `use-client` 🎉 (#2707) * 🎉 use-client blir lagt til på export av ds-react og aksel-icons * 🎉 La til nextjs med appdir for testing * ⚡ Tom yarn.lock med i git * 📝 changeset * 📝 Oppdatert migration-guide * Update @navikt/aksel-icons/config/index-template.js * 🚚 rename fitted -> fill in tabs * 🐛 Async-lasting av date-fns er nå v3 esm compliant v3 av date-fns støtter ikke default export/import, noe som brakk async-lasting da vi brukte .default * 🧪 Forbedret Tabs-tester Lagt til flere test-caser, men implementert testing av keyboard-nav og tabbing * ⬆️ yarn sync * ⬆️ Yarn lock * ⬇️ Reversert duplikate endringer som kom fra v6 * 🎨 Aria-hidden blir nå satt på ikon hvis label allerede er satt på tab * Update @navikt/core/react/src/tabs/Tabs.types.ts * 📝 Testnavn for tabs * ⚡ Skipper unødvendig memo for tab-context, punktum etter all jsdoc * 🔥 Fjernet TabsContextProps * 📝 Fjernet comma på changeset * 📝 Fill-demo for aksel.nav.no * 📝 Changeset for lazy-prop * Update @navikt/core/react/src/tabs/parts/tabpanel/TabPanel.tsx Co-authored-by: Halvor Haugan <[email protected]> * 🐛 Beholder attr fra radix med i ny implementasjon * ⚡ Flyttet fokus-state update ut av useeffect, fjernet unødvendig klasse for hidden * ⚡ Unngår unødvendig sjekk for disabled i onFocus for useTab2 * ♻️ tab og tabpanel støtter nå egne id-er * Update @navikt/core/react/src/tabs/useTabs.ts * 🐛 I none tilfeller førte setFocusedValue utenfor useEffect til infinite re-renders * Update @navikt/core/react/src/tabs/parts/tab/Tab.tsx Co-authored-by: Halvor Haugan <[email protected]> * 🐛 bruker-id var satt på feil attrb * 📝 Dokumentert custom-ids for tabs * ⚡ Chroamtic-format for tabs-stories * ♻️ Omskrevet tabs-stories for ny syntax * 📝 Bruker bold markdown istedenfor note syntax * 📝 Flyttet warning til newline * 📝 Bruker bare ett linjeskift for jsdoc --------- Co-authored-by: Halvor Haugan <[email protected]>
* 🎉 Ny hook og API 'descendants' * 📝 Bedre storiers * 🎨 implementert togglegroup med descendants * 🎨 Implemented togglegroup.item * 🎨 Fjernet gammel togglegroup * 🐛 Fikset keydown * 🔥 Fjernet comment * 🎉 RowingFocus resetter nå ved focus-exit * 🔥 Fjernet radix toggleroup fra dependencies * 📝 Changeset * [V6] Deprecated Grid og ContentContainer (#2622) * 🔥 Fjernet grid css * 🔥 Fjernet grid tsx * 🔥 Fjernet content-container fra systemet * 🐛 la til deprecatePrefix-tag for stylelint * 📝 Changeset * Textarea: Fjern wrapper (#2635) * [V6] Chat-props deprecation (#2631) * 🎨 Satt opp codemod boilerplate for chat deprecation * 🐛 v5 -> v6 i codemod * 🧪 Tester for alias-import av chat * 🧪 idempotent codemod-test * 🔥 Fjernet deprecated props fra Chat * 📝 Changeset * 📝 Bedre advarsel i chat-codemod * 📝 v6-migration update * 🧪 Tester vanlig import av Chat * 📝 Oppdatert tekster i codemod * 🔥 Fjernet return fra removeProps * Update @navikt/aksel/src/codemod/migrations.ts * [V6] 1440px breakpoint (#2632) * ✨ La til nytt brekkpunkt 1440px * 🎉 Bleed støtter 2xl breakpoint * 🎉 Bleed box 2xl breakpoint * 🎉 hgrid 2xl breakpoint * 🎉 resterende primitives støtter 1440px * 📝 tailwind migreringsdocs * 🔥 Fjernet navno-mal fra chromatic snapshot * 📝 Changeset * 🐛 2xl hgrid css brakk * 📝 Oppdatert changset med tailwind-ref * Update @navikt/core/react/src/layout/bleed/Bleed.tsx * Update @navikt/core/react/src/layout/bleed/Bleed.tsx * 📝 Mer konsekvent story for breakpoints i box * 🐛 JSDOC for Bleed matcher nå syntax * [V6] Fjernet z-index-modal token (#2637) * 🔥 Fjernet zindex-modal token * 📝 Oppdatert docs * 📝 Changeset * [V6] ErrorSummary magic (#2642) * ♻️ Flyttet li-tag fra ErrorSummary-parent til child * 🏷️ Bedre typer * 🔒 Heading er nå required i ErrorSummary * 🎨 Egen prop for ErrorSummary fokus * 📝 Changeset * 🎨 Bedre fokushåndtering i ErrorSummary * ♻️ focusTarget -> focusTargetRef * 📝 Fikset jsdoc * 📝 Migreringstekst * 📝 changeset * 📝 Migration-text * 📝 JSDoc-staving * 📝 Oppdatert migreringsguide for z-index + tailwind * 🐛 Fikset bruk av z-modal i tailwind * 🔥 Fjernet descendants-filer * 📝 Rename context og types til namespace * 🔥 Fjernet openOnFocus-prop fra date * [V6] Modal: strengere prop-typer (#2718) * 🎨 SortState i Table har nå none tilgjengelig (#2726) * [V6] Oppdatert bruk av action-farger (#2717) * 💄 Button secondary hover * 💄 Radio/Checkbox action-farger * :WIP: combobox action-farger * 🐛 Tilpasset hover-farge på checkbox i confirmationpanel * 💄 copybutton hover-text action * 💄 dropdown, helptext hover-text * 💄 link og linkpanel actionsfarger * 💄 Search action-farger * 💄 select action-farger * 💄 Stepper action * 💄 Textarea action * 💄 Textarea og textfield colors * 🐛 Riktig hover-bakgrunn på combobox selected option * 📝 Changeset * 📝 changeset tokens * 📝 Dokumentert nye tokens * [V6] Native ESM-støtte 🎉 (#2677) * 🎨 Fungerende cjs/esm bundle med use-client * 🎨 Oppdatert dir-output i for esm * ⬆️ Bump date-fns og react-day-picker * 🎨 oppdatert date-fns imports * 🐛 Endret bruk av reat-day-picker i monthpicker * 🐛 Fikset rendring av button i Datepicker-row * ♻️ Bruker date-fns imports ssom støtter v2 og v3 * ⬆️ Synced date-fns versions * ✨ Astro testmiljø * 📝 Changeset * 🎨 Skriver packagejson med type for esm * 🔥 Fjernet .yarn/* fra astro * 🎨 La til .yarn i gitignore for astro * ⏪ Bruker riktig ds-react versjon * ⬆️ Lik tsconfig som ds-react i aksel-icons * 🐛 La tilbake provernance * 🐛 Undo Day/Row fix fra main * 🔥 Fjernet mulighet til å laste date-fns v2 * 🔥 Fjernet fs-extra dependency * 🐛 Fikset feil versjon på core/react * [V6] React-pakker støtter nå native SSR ved å bruke `use-client` 🎉 (#2707) * 🎉 use-client blir lagt til på export av ds-react og aksel-icons * 🎉 La til nextjs med appdir for testing * ⚡ Tom yarn.lock med i git * 📝 changeset * 📝 Oppdatert migration-guide * Update @navikt/aksel-icons/config/index-template.js * 🎉 ToggleGroup-prop fill * 🐛 Async-lasting av date-fns er nå v3 esm compliant v3 av date-fns støtter ikke default export/import, noe som brakk async-lasting da vi brukte .default * 🧪 Forbedret ToggleGroup-tester * ⬆️ yarn sync * 🐛 Fikset import av parts * 🔥 Fjernet duplikate changesets * ⬇️ Reversert duplikate endringer som kom fra v6 * 📝 rowing -> roving * 📝 Bedre test-navn * 📝 Bedre navngivning for tester * ⚡ Fjernet useEffect for state update * 📝 Oppdatert changeset og jsdoc * ♻️ Inlinet aria-desribedby * 📝 Demo for fill-prop på aksel.nav.no * 🐛 Togglegroup krever onChange-prop * 📝 ToggleGroup story for chromatic * ⬆️ yarn lock * 🎉 Bedre visning av eksempel på aksel.nav.no --------- Co-authored-by: Halvor Haugan <[email protected]>
Description
Løser alle punkter under
Package exports
Endringen gjør slik at
@navikt/ds-react
og@navikt/aksel-icons
støtter native ESM 🎉Change summary
export * from "./button
brukestsc-alias
som endrer tilexport * from "./button.js
La til Astro i /eksempler som lar oss teste ESM-support av pakkene
TODO
package.json
-fil med innhold{ "type": "module }
bli lagt til på root i/esm
-output. Dette gjør at node tolker mappen som ESM siden filene ikke har extension.mjs