navikt/sokos-shared-dependencies · Archived

bump-shared-dependencies

Bump React, React-DOM og Scheduler til ny versjon — hent fra esm.sh, skriv om import-stier til Nav CDN

Installation

$ npx skills add navikt/sokos-shared-dependencies --skill bump-shared-dependencies

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1
License LICENSE
Default branch main
Open issues 0
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 6,892 B
  • docs SUMMARY.md 136 B

History

  1. First recorded snapshot · 1 installs

SKILL.md

Bump shared dependencies

Denne skillen hjelper deg bumpe React, React-DOM og Scheduler til ny versjon i CDN-repoet.

Hva du trenger fra utvikleren

Når utvikleren ber om å sjekke eller bumpe React og/eller React-DOM, sjekk alltid alle tre pakker (react, react-dom, scheduler) — de henger sammen.

Still disse spørsmålene før du starter:

  1. React-versjon (påkrevd) — f.eks. 19.2.6. Hvis utvikleren ikke vet, kjør Steg 1 for å finne siste versjon.
  2. Scheduler-versjon (valgfri) — f.eks. 0.28.0. Hvis ikke oppgitt, kjør Steg 1 for å sjekke om ny versjon finnes.

React og React-DOM bruker alltid samme versjon.


Steg 1 — Finn siste versjon fra esm.sh

Sjekk alltid alle tre pakker:

curl --noproxy '*' -s "https://esm.sh/react" | head -1
# Output: /* esm.sh - [email protected] */  ← dette er siste versjon

curl --noproxy '*' -s "https://esm.sh/react-dom" | head -1
# Output: /* esm.sh - [email protected] */

curl --noproxy '*' -s "https://esm.sh/scheduler" | head -1
# Output: /* esm.sh - [email protected] */  ← sjekk om nyere enn det som finnes

Parse versjonen fra kommentaren. Sammenlign med nåværende versjoner i repoet (se AGENTS.md eller sjekk siste mappe):

ls packages/react/ | sort -V | tail -1      # Nåværende React-versjon
ls packages/scheduler/ | sort -V | tail -1   # Nåværende Scheduler-versjon

Hvis esm.sh-versjonen er nyere enn det som finnes i repoet, fortsett med bumpen. Hvis ikke, informer utvikleren om at repoet allerede er oppdatert.


Steg 2 — Opprett versjonsmapper

mkdir -p packages/react/{REACT_VERSJON}
mkdir -p packages/react-dom/{REACT_VERSJON}
mkdir -p packages/scheduler/{SCHEDULER_VERSJON}

Hopp over scheduler-mappen hvis versjonen allerede finnes.


Steg 3 — Hent bundler fra esm.sh (to-trinns prosess)

esm.sh returnerer først en barrel-fil som viser stien til den faktiske bundelen. Du må hente den faktiske filen.

3.1 — Finn faktiske stier

curl --noproxy '*' -s "https://esm.sh/react@{REACT_VERSJON}"

Output:

/* esm.sh - [email protected] */
export * from "/[email protected]/es2022/react.mjs";
export { default } from "/[email protected]/es2022/react.mjs";

Stien du trenger er det som står i from "..." — legg den etter https://esm.sh.

Gjør det samme for alle pakker:

curl --noproxy '*' -s "https://esm.sh/react@{REACT_VERSJON}"             # → /react@X/es2022/react.mjs
curl --noproxy '*' -s "https://esm.sh/react@{REACT_VERSJON}/jsx-runtime" # → /react@X/es2022/jsx-runtime.mjs
curl --noproxy '*' -s "https://esm.sh/react-dom@{REACT_VERSJON}"         # → /react-dom@X/es2022/react-dom.mjs
curl --noproxy '*' -s "https://esm.sh/react-dom@{REACT_VERSJON}/client"  # → /react-dom@X/es2022/client.mjs
curl --noproxy '*' -s "https://esm.sh/scheduler@{SCHEDULER_VERSJON}"     # → /scheduler@X/es2022/scheduler.mjs

3.2 — Hent de faktiske bundlene

Bruk stiene fra 3.1 til å hente det faktiske innholdet:

# React
curl --noproxy '*' -s "https://esm.sh/react@{REACT_VERSJON}/es2022/react.mjs" -o packages/react/{REACT_VERSJON}/react.mjs
curl --noproxy '*' -s "https://esm.sh/react@{REACT_VERSJON}/es2022/jsx-runtime.mjs" -o packages/react/{REACT_VERSJON}/jsx-runtime.mjs

# React-DOM
curl --noproxy '*' -s "https://esm.sh/react-dom@{REACT_VERSJON}/es2022/react-dom.mjs" -o packages/react-dom/{REACT_VERSJON}/react-dom.mjs
curl --noproxy '*' -s "https://esm.sh/react-dom@{REACT_VERSJON}/es2022/client.mjs" -o packages/react-dom/{REACT_VERSJON}/client.mjs

# Scheduler (kun hvis ny versjon)
curl --noproxy '*' -s "https://esm.sh/scheduler@{SCHEDULER_VERSJON}/es2022/scheduler.mjs" -o packages/scheduler/{SCHEDULER_VERSJON}/scheduler.mjs

Merk: Stien (f.eks. es2022) kan variere mellom versjoner. Sjekk alltid barrel-filen i steg 3.1 for korrekt sti.


Steg 4 — Skriv om import-stier i react-dom.mjs

Åpne packages/react-dom/{REACT_VERSJON}/react-dom.mjs.

Finn den første import-linjen (starter med import * as __0$). Erstatt den med:

import * as __0$ from "https://cdn.nav.no/okonomi/sokos-shared-dependencies/packages/react/{REACT_VERSJON}/react.mjs";

Resten av filen forblir uendret.


Steg 5 — Skriv om import-stier i client.mjs

Åpne packages/react-dom/{REACT_VERSJON}/client.mjs.

Finn de tre første import-linjene (starter med import * as 0$, 1$, __2$). Erstatt dem med:

import * as __0$ from "https://cdn.nav.no/okonomi/sokos-shared-dependencies/packages/scheduler/{SCHEDULER_VERSJON}/scheduler.mjs";
import * as __1$ from "https://cdn.nav.no/okonomi/sokos-shared-dependencies/packages/react/{REACT_VERSJON}/react.mjs";
import * as __2$ from "https://cdn.nav.no/okonomi/sokos-shared-dependencies/packages/react-dom/{REACT_VERSJON}/react-dom.mjs";

Resten av filen forblir uendret.


Steg 6 — Verifiser

Sjekk at:

  1. react-dom.mjs sin import peker på react/{REACT_VERSJON}/react.mjs
  2. client.mjs sine imports peker på:

- react-dom/{REACTVERSJON}/react-dom.mjs - react/{REACTVERSJON}/react.mjs - scheduler/{SCHEDULER_VERSJON}/scheduler.mjs

  1. ✅ Alle filer starter med / esm.sh - {pakke}@{versjon} /
  2. ✅ Alle fem filer finnes: react.mjs, jsx-runtime.mjs, react-dom.mjs, client.mjs, scheduler.mjs

Steg 7 — Oppdater AGENTS.md

Oppdater tabellen «Nåværende versjoner» i AGENTS.md:

| Pakke | Versjon |
|-------|---------|
| react | {REACT_VERSJON} |
| react-dom | {REACT_VERSJON} |
| scheduler | {SCHEDULER_VERSJON} |

Eksempel: Slik utleder du versjoner dynamisk

Ikke hardkod versjoner. Bruk alltid steg 1 til å finne gjeldende og nyeste versjon:

# Nåværende versjon i repoet
CURRENT=$(ls packages/react/ | sort -V | tail -1)

# Nyeste versjon fra esm.sh
LATEST=$(curl --noproxy '*' -s "https://esm.sh/react" | head -1 | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+')

echo "Nåværende: $CURRENT"
echo "Tilgjengelig: $LATEST"

Bruk $LATEST som {REACT_VERSJON} i alle påfølgende steg. Sjekk scheduler på samme måte:

CURRENT_SCHEDULER=$(ls packages/scheduler/ | sort -V | tail -1)
LATEST_SCHEDULER=$(curl --noproxy '*' -s "https://esm.sh/scheduler" | head -1 | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+')

Commit-melding

⚠️ Agenten skal ikke kjøre git commit eller git push. Presenter forslag til commit-melding og la utvikleren committe selv.

Forslag til commit-melding:

chore: bump React til {REACT_VERSJON}

Legger til React {REACT_VERSJON}, React-DOM {REACT_VERSJON} og Scheduler {SCHEDULER_VERSJON}
i CDN. Import-stier skrevet om til Nav CDN URL-er.