From b77d1b15c2d5e2abffc867ea5030c5e3e3eea649 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roger=20Bj=C3=B8rnstad?= Date: Thu, 18 Jun 2026 15:08:31 +0200 Subject: [PATCH 1/3] chore: remove Slack custom emoji integration The SLACK_TOKEN is inactive (account_inactive error). Remove: - remark-custom-emojis.js plugin - @slack/web-api and node-emoji dependencies - SLACK_TOKEN from deploy workflow - Related docs in README.md and AGENTS.md Custom Slack emojis in markdown (:naisely-done:, :texas:) will now render as plain text. --- .github/workflows/deploy.yml | 2 - AGENTS.md | 5 +- README.md | 7 - package.json | 2 - pnpm-lock.yaml | 363 +---------------------------------- remark-custom-emojis.js | 47 ----- svelte.config.js | 3 +- 7 files changed, 5 insertions(+), 424 deletions(-) delete mode 100644 remark-custom-emojis.js diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index cd81a51..a02ad81 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -33,8 +33,6 @@ jobs: cache: "pnpm" - run: pnpm install --frozen-lockfile - run: pnpm run build - env: - SLACK_TOKEN: ${{ secrets.SLACK_TOKEN }} - name: Upload artifact uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # ratchet:actions/upload-pages-artifact@v5 with: diff --git a/AGENTS.md b/AGENTS.md index b45e157..78d30cb 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -61,7 +61,6 @@ src/ static/ # Static assets served at site root svelte.config.js # SvelteKit + mdsvex configuration eslint.config.js # ESLint flat config (primary) -remark-custom-emojis.js # Custom remark plugin for Slack emojis build-rss.js # RSS feed generator (runs post-build) ``` @@ -117,7 +116,7 @@ build-rss.js # RSS feed generator (runs post-build) | CSS class names | kebab-case preferred | `.main-menu-toggle`, `.byline` | | Blog post dirs | kebab-case | `otel-from-0-to-100/` | | Log post files | `YYYY-MM-DD-kebab-slug.md` | `2026-02-24-bedre-navn.md` | -| Config/plugin files | kebab-case | `remark-custom-emojis.js` | +| Config/plugin files | kebab-case | `build-rss.js` | ### Imports @@ -169,7 +168,6 @@ Use SvelteKit path aliases: `$lib/...`, `$app/...`. Use relative paths for same- layout: log --- ``` -- Custom Slack emojis can be used inline (`:naisely-done:`, `:texas:`) - RSS feed auto-generated at build time by `build-rss.js` ### Dates @@ -195,5 +193,4 @@ From `.github/copilot_instructions.md` — applies to all content and documentat - mdsvex processes `.svelte`, `.svx`, `.md` extensions - Shiki syntax highlighting with `github-dark` theme (JS, TS, YAML, Bash, Elm, Shell, Kotlin, JSON) - `@nais` npm packages come from Google Artifact Registry (configured in `.npmrc`) -- The `SLACK_TOKEN` env var is needed at build time for custom emoji resolution (optional — degrades gracefully) - Build produces RSS at `build/log/rss.xml` via post-build `build-rss.js` step diff --git a/README.md b/README.md index 4aa382b..96c08ca 100644 --- a/README.md +++ b/README.md @@ -4,13 +4,6 @@ Dette repoet blir publisert på nais.io via Github Pages. ## Lokal utvikling -### Prerequisites - -Må legges til som collaborator på [`nais-announcements`-slackbot](https://app.slack.com/app-settings/T5LNAMWNA/A081P9QLH7D/collaborators) for å få tilgang til å hente emoticons. - -Legg til SLACK_TOKEN i en lokal .env-fil. -Token hentes på api.slack.com -> your apps -> nais-announcements -> install app - Kjør: ``` diff --git a/package.json b/package.json index 5126d7c..b54e866 100644 --- a/package.json +++ b/package.json @@ -36,11 +36,9 @@ }, "dependencies": { "@nais/ds-svelte-community": "2.0.0-next.8", - "@slack/web-api": "7.16.0", "date-fns": "4.4.0", "feed": "5.2.1", "mdast-util-find-and-replace": "3.0.2", - "node-emoji": "2.2.0", "parse-md": "3.0.3", "shiki": "4.2.0", "svelte-preprocess": "6.0.5", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d7cfe12..a05b956 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11,9 +11,6 @@ importers: '@nais/ds-svelte-community': specifier: 2.0.0-next.8 version: 2.0.0-next.8(@navikt/ds-css@8.9.1)(@navikt/ds-tokens@8.9.1)(svelte@5.56.1(@typescript-eslint/types@8.60.1)) - '@slack/web-api': - specifier: 7.16.0 - version: 7.16.0 date-fns: specifier: 4.4.0 version: 4.4.0 @@ -23,9 +20,6 @@ importers: mdast-util-find-and-replace: specifier: 3.0.2 version: 3.0.2 - node-emoji: - specifier: 2.2.0 - version: 2.2.0 parse-md: specifier: 3.0.3 version: 3.0.3 @@ -346,22 +340,6 @@ packages: '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} - '@sindresorhus/is@4.6.0': - resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} - engines: {node: '>=10'} - - '@slack/logger@4.0.1': - resolution: {integrity: sha512-6cmdPrV/RYfd2U0mDGiMK8S7OJqpCTm7enMLRR3edccsPX8j7zXTLnaEF4fhxxJJTAIOil6+qZrnUPTuaLvwrQ==} - engines: {node: '>= 18', npm: '>= 8.6.0'} - - '@slack/types@2.21.1': - resolution: {integrity: sha512-I8vmSjNYWsaxuWPx6dz4yeh0h7vRBWbgAMK14LEmblbZ404BtrPbXs6jDPx4cYgGf8msDGF4A9opLZBu21FViQ==} - engines: {node: '>= 12.13.0', npm: '>= 6.12.0'} - - '@slack/web-api@7.16.0': - resolution: {integrity: sha512-68SAV77uuGKuhyyaRytX8UijVnqSLsTSKslGXw17cjQYXn+jtNl7gbaEjHgC5x2rhCuFdahBrEC2VCLppbzReg==} - engines: {node: '>= 18', npm: '>= 8.6.0'} - '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} @@ -434,9 +412,6 @@ packages: '@types/node@25.9.1': resolution: {integrity: sha512-xfrlY7UD5rMJk3ZVJP8BNzS28J36YJg+xp+LPXV1TdWxr8uMH5A860QNxYDGQe/ylDSgjxE52Q9VnO7p75tJxg==} - '@types/retry@0.12.0': - resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} - '@types/trusted-types@2.0.7': resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} @@ -518,10 +493,6 @@ packages: engines: {node: '>=0.4.0'} hasBin: true - agent-base@6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} - ajv@6.15.0: resolution: {integrity: sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==} @@ -532,12 +503,6 @@ packages: resolution: {integrity: sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==} engines: {node: '>= 0.4'} - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - - axios@1.17.0: - resolution: {integrity: sha512-J8SwNxprqqpbfenehxWYXE7CW+wM1BB4w3+N+g+/Wx40xM4rsLrfPmHHxSWIxJLYDgSY/HqlFPIYb2/S3rxafw==} - axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} engines: {node: '>= 0.4'} @@ -553,17 +518,9 @@ packages: resolution: {integrity: sha512-kLpxurY4Z4r9sgMsyG0Z9uzsBlgiU/EFKhj/h91/8yHu0edo7XuixOIH3VcJ8kkxs6/jPzoI6U9Vj3WqbMQ94g==} engines: {node: 18 || 20 || >=22} - call-bind-apply-helpers@1.0.2: - resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} - engines: {node: '>= 0.4'} - ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - char-regex@1.0.2: - resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} - engines: {node: '>=10'} - character-entities-html4@2.1.0: resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} @@ -578,10 +535,6 @@ packages: resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} engines: {node: '>=6'} - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} @@ -617,10 +570,6 @@ packages: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} @@ -635,29 +584,6 @@ packages: devlop@1.1.0: resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} - dunder-proto@1.0.1: - resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} - engines: {node: '>= 0.4'} - - emojilib@2.4.0: - resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} - - es-define-property@1.0.1: - resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} - engines: {node: '>= 0.4'} - - es-errors@1.3.0: - resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} - engines: {node: '>= 0.4'} - - es-object-atoms@1.1.2: - resolution: {integrity: sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==} - engines: {node: '>= 0.4'} - - es-set-tostringtag@2.1.0: - resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} - engines: {node: '>= 0.4'} - escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} @@ -747,12 +673,6 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} - eventemitter3@4.0.7: - resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} - - eventemitter3@5.0.4: - resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==} - extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -793,35 +713,11 @@ packages: flatted@3.4.2: resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} - follow-redirects@1.16.0: - resolution: {integrity: sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - - form-data@4.0.5: - resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} - engines: {node: '>= 6'} - fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] - function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - - get-intrinsic@1.3.0: - resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} - engines: {node: '>= 0.4'} - - get-proto@1.0.1: - resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} - engines: {node: '>= 0.4'} - glob-parent@6.0.2: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} @@ -834,22 +730,6 @@ packages: resolution: {integrity: sha512-sepffkT8stwnIYbsMBpoCHJuJM5l98FUF2AnE07hfvE0m/qp3R586hw4jF4uadbhvg1ooIdzuu7CsfD2jzCaNA==} engines: {node: '>=18'} - gopd@1.2.0: - resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} - engines: {node: '>= 0.4'} - - has-symbols@1.1.0: - resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} - engines: {node: '>= 0.4'} - - has-tostringtag@1.0.2: - resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} - engines: {node: '>= 0.4'} - - hasown@2.0.4: - resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==} - engines: {node: '>= 0.4'} - hast-util-to-html@9.0.5: resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==} @@ -859,10 +739,6 @@ packages: html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} - https-proxy-agent@5.0.1: - resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} - engines: {node: '>= 6'} - ignore@5.3.2: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} @@ -875,9 +751,6 @@ packages: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} - is-electron@2.2.2: - resolution: {integrity: sha512-FO/Rhvz5tuw4MCWkpMzHFKWD2LsfHzIb7i6MdPYZ/KW7AlxawyLkqdy+jPZP1WubqEADE3O4FUENlJHDfQASRg==} - is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -893,10 +766,6 @@ packages: is-reference@3.0.3: resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} - is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} @@ -1018,10 +887,6 @@ packages: magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - math-intrinsics@1.1.0: - resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} - engines: {node: '>= 0.4'} - mdast-util-find-and-replace@3.0.2: resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} @@ -1051,14 +916,6 @@ packages: micromark-util-types@2.0.2: resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - minimatch@10.2.5: resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==} engines: {node: 18 || 20 || >=22} @@ -1082,10 +939,6 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - node-emoji@2.2.0: - resolution: {integrity: sha512-Z3lTE9pLaJF47NyMhd4ww1yFTAP8YhYI8SleJiHzM46Fgpm5cnNzSl9XfzFNqbaz+VlJrIj3fXQ4DeN1Rjm6cw==} - engines: {node: '>=18'} - obug@2.1.2: resolution: {integrity: sha512-AWGB9WFcRXOQs48Z/udjI5ZcZMHXwX8XPByNpOydgcGsDLIzjGizhoMWJyKAWze7AVW/2W1i+/gPX4YtKe5cyg==} engines: {node: '>=12.20.0'} @@ -1100,10 +953,6 @@ packages: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} - p-finally@1.0.0: - resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} - engines: {node: '>=4'} - p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} @@ -1112,18 +961,6 @@ packages: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} - p-queue@6.6.2: - resolution: {integrity: sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==} - engines: {node: '>=8'} - - p-retry@4.6.2: - resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==} - engines: {node: '>=8'} - - p-timeout@3.2.0: - resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} - engines: {node: '>=8'} - parse-md@3.0.3: resolution: {integrity: sha512-2kpNrrW1GBgli5VT9X9/Y6n4PVsIFVdG49tguq1PHwzsRSK0Cu0yJPTUFOwWouFT85atYNWQ1T/rmqfj7kLd8g==} @@ -1200,10 +1037,6 @@ packages: property-information@7.2.0: resolution: {integrity: sha512-IAtzIB6sUiWaJYrX9smp3V46pBGbBeLFRGdh25kg1334VcBlD8HzhPeNIWQH9zhGmo2itIe25EHt9dQP7G5hmg==} - proxy-from-env@2.1.0: - resolution: {integrity: sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==} - engines: {node: '>=10'} - punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -1221,10 +1054,6 @@ packages: regex@6.1.0: resolution: {integrity: sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==} - retry@0.13.1: - resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} - engines: {node: '>= 4'} - rolldown@1.0.3: resolution: {integrity: sha512-i00lAJ2ks1BYr7rjNjKC7BcqAS7nVfiT3QX1SI5aY+AFHblCmaUf9OE9dbdzDvW6dJxbi2ZCZiy9v3CcwOiX3g==} engines: {node: ^20.19.0 || >=22.12.0} @@ -1262,10 +1091,6 @@ packages: resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} engines: {node: '>=18'} - skin-tone@2.0.0: - resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} - engines: {node: '>=8'} - source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -1379,10 +1204,6 @@ packages: undici-types@7.24.6: resolution: {integrity: sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==} - unicode-emoji-modifier-base@1.0.0: - resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} - engines: {node: '>=4'} - unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} @@ -1730,32 +1551,6 @@ snapshots: '@shikijs/vscode-textmate@10.0.2': {} - '@sindresorhus/is@4.6.0': {} - - '@slack/logger@4.0.1': - dependencies: - '@types/node': 25.9.1 - - '@slack/types@2.21.1': {} - - '@slack/web-api@7.16.0': - dependencies: - '@slack/logger': 4.0.1 - '@slack/types': 2.21.1 - '@types/node': 25.9.1 - '@types/retry': 0.12.0 - axios: 1.17.0 - eventemitter3: 5.0.4 - form-data: 4.0.5 - is-electron: 2.2.2 - is-stream: 2.0.1 - p-queue: 6.6.2 - p-retry: 4.6.2 - retry: 0.13.1 - transitivePeerDependencies: - - debug - - supports-color - '@standard-schema/spec@1.1.0': {} '@sveltejs/acorn-typescript@1.0.10(acorn@8.16.0)': @@ -1830,8 +1625,7 @@ snapshots: '@types/node@25.9.1': dependencies: undici-types: 7.24.6 - - '@types/retry@0.12.0': {} + optional: true '@types/trusted-types@2.0.7': {} @@ -1938,12 +1732,6 @@ snapshots: acorn@8.16.0: {} - agent-base@6.0.2: - dependencies: - debug: 4.4.3 - transitivePeerDependencies: - - supports-color - ajv@6.15.0: dependencies: fast-deep-equal: 3.1.3 @@ -1955,18 +1743,6 @@ snapshots: aria-query@5.3.1: {} - asynckit@0.4.0: {} - - axios@1.17.0: - dependencies: - follow-redirects: 1.16.0 - form-data: 4.0.5 - https-proxy-agent: 5.0.1 - proxy-from-env: 2.1.0 - transitivePeerDependencies: - - debug - - supports-color - axobject-query@4.1.0: {} bail@2.0.2: {} @@ -1977,15 +1753,8 @@ snapshots: dependencies: balanced-match: 4.0.4 - call-bind-apply-helpers@1.0.2: - dependencies: - es-errors: 1.3.0 - function-bind: 1.1.2 - ccount@2.0.1: {} - char-regex@1.0.2: {} - character-entities-html4@2.1.0: {} character-entities-legacy@3.0.0: {} @@ -1996,10 +1765,6 @@ snapshots: clsx@2.1.1: {} - combined-stream@1.0.8: - dependencies: - delayed-stream: 1.0.0 - comma-separated-tokens@2.0.3: {} cookie@0.6.0: {} @@ -2022,8 +1787,6 @@ snapshots: deepmerge@4.3.1: {} - delayed-stream@1.0.0: {} - dequal@2.0.3: {} detect-libc@2.1.2: {} @@ -2034,29 +1797,6 @@ snapshots: dependencies: dequal: 2.0.3 - dunder-proto@1.0.1: - dependencies: - call-bind-apply-helpers: 1.0.2 - es-errors: 1.3.0 - gopd: 1.2.0 - - emojilib@2.4.0: {} - - es-define-property@1.0.1: {} - - es-errors@1.3.0: {} - - es-object-atoms@1.1.2: - dependencies: - es-errors: 1.3.0 - - es-set-tostringtag@2.1.0: - dependencies: - es-errors: 1.3.0 - get-intrinsic: 1.3.0 - has-tostringtag: 1.0.2 - hasown: 2.0.4 - escape-string-regexp@4.0.0: {} escape-string-regexp@5.0.0: {} @@ -2168,10 +1908,6 @@ snapshots: esutils@2.0.3: {} - eventemitter3@4.0.7: {} - - eventemitter3@5.0.4: {} - extend@3.0.2: {} fast-deep-equal@3.1.3: {} @@ -2204,39 +1940,9 @@ snapshots: flatted@3.4.2: {} - follow-redirects@1.16.0: {} - - form-data@4.0.5: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - es-set-tostringtag: 2.1.0 - hasown: 2.0.4 - mime-types: 2.1.35 - fsevents@2.3.3: optional: true - function-bind@1.1.2: {} - - get-intrinsic@1.3.0: - dependencies: - call-bind-apply-helpers: 1.0.2 - es-define-property: 1.0.1 - es-errors: 1.3.0 - es-object-atoms: 1.1.2 - function-bind: 1.1.2 - get-proto: 1.0.1 - gopd: 1.2.0 - has-symbols: 1.1.0 - hasown: 2.0.4 - math-intrinsics: 1.1.0 - - get-proto@1.0.1: - dependencies: - dunder-proto: 1.0.1 - es-object-atoms: 1.1.2 - glob-parent@6.0.2: dependencies: is-glob: 4.0.3 @@ -2245,18 +1951,6 @@ snapshots: globals@17.6.0: {} - gopd@1.2.0: {} - - has-symbols@1.1.0: {} - - has-tostringtag@1.0.2: - dependencies: - has-symbols: 1.1.0 - - hasown@2.0.4: - dependencies: - function-bind: 1.1.2 - hast-util-to-html@9.0.5: dependencies: '@types/hast': 3.0.4 @@ -2277,21 +1971,12 @@ snapshots: html-void-elements@3.0.0: {} - https-proxy-agent@5.0.1: - dependencies: - agent-base: 6.0.2 - debug: 4.4.3 - transitivePeerDependencies: - - supports-color - ignore@5.3.2: {} ignore@7.0.5: {} imurmurhash@0.1.4: {} - is-electron@2.2.2: {} - is-extglob@2.1.1: {} is-glob@4.0.3: @@ -2304,8 +1989,6 @@ snapshots: dependencies: '@types/estree': 1.0.9 - is-stream@2.0.1: {} - isexe@2.0.0: {} js-yaml@4.2.0: @@ -2394,8 +2077,6 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 - math-intrinsics@1.1.0: {} - mdast-util-find-and-replace@3.0.2: dependencies: '@types/mdast': 4.0.4 @@ -2447,12 +2128,6 @@ snapshots: micromark-util-types@2.0.2: {} - mime-db@1.52.0: {} - - mime-types@2.1.35: - dependencies: - mime-db: 1.52.0 - minimatch@10.2.5: dependencies: brace-expansion: 5.0.6 @@ -2467,13 +2142,6 @@ snapshots: natural-compare@1.4.0: {} - node-emoji@2.2.0: - dependencies: - '@sindresorhus/is': 4.6.0 - char-regex: 1.0.2 - emojilib: 2.4.0 - skin-tone: 2.0.0 - obug@2.1.2: {} oniguruma-parser@0.12.2: {} @@ -2493,8 +2161,6 @@ snapshots: type-check: 0.4.0 word-wrap: 1.2.5 - p-finally@1.0.0: {} - p-limit@3.1.0: dependencies: yocto-queue: 0.1.0 @@ -2503,20 +2169,6 @@ snapshots: dependencies: p-limit: 3.1.0 - p-queue@6.6.2: - dependencies: - eventemitter3: 4.0.7 - p-timeout: 3.2.0 - - p-retry@4.6.2: - dependencies: - '@types/retry': 0.12.0 - retry: 0.13.1 - - p-timeout@3.2.0: - dependencies: - p-finally: 1.0.0 - parse-md@3.0.3: dependencies: js-yaml: 4.2.0 @@ -2570,8 +2222,6 @@ snapshots: property-information@7.2.0: {} - proxy-from-env@2.1.0: {} - punycode@2.3.1: {} readdirp@4.1.2: {} @@ -2586,8 +2236,6 @@ snapshots: dependencies: regex-utilities: 2.3.0 - retry@0.13.1: {} - rolldown@1.0.3: dependencies: '@oxc-project/types': 0.133.0 @@ -2642,10 +2290,6 @@ snapshots: mrmime: 2.0.1 totalist: 3.0.1 - skin-tone@2.0.0: - dependencies: - unicode-emoji-modifier-base: 1.0.0 - source-map-js@1.2.1: {} space-separated-tokens@2.0.2: {} @@ -2749,9 +2393,8 @@ snapshots: typescript@6.0.3: {} - undici-types@7.24.6: {} - - unicode-emoji-modifier-base@1.0.0: {} + undici-types@7.24.6: + optional: true unified@11.0.5: dependencies: diff --git a/remark-custom-emojis.js b/remark-custom-emojis.js deleted file mode 100644 index 95e2a62..0000000 --- a/remark-custom-emojis.js +++ /dev/null @@ -1,47 +0,0 @@ -import { findAndReplace } from "mdast-util-find-and-replace"; -import { get as getEmoji } from "node-emoji"; -import { WebClient } from "@slack/web-api"; - -const token = process.env.SLACK_TOKEN; - -const web = new WebClient(token); - -console.log("Fetching custom emojis from Slack..."); - -const customEmojis = await web.emoji - .list() - .then((res) => { - const { emoji = {} } = res; - - const map = new Map(); - const getSrc = (url) => (url?.startsWith("alias:") ? getSrc(emoji[url.split(":")[1]]) : url); - - Object.entries(emoji).forEach(([name, url]) => { - const src = getSrc(url); - if (src) { - map.set(`:${name}:`, { - type: "html", - value: `${name.replace(/`, - }); - } - }); - - return map; - }) - .catch((e) => { - console.error(e); - return new Map(); - }); - -const plugin = () => { - const replaceEmoji = (match) => customEmojis.get(match) ?? getEmoji(match) ?? false; - - const transformer = (tree) => findAndReplace(tree, [[/:\+1:|:-1:|:[\w-]+:/g, replaceEmoji]]); - - return transformer; -}; - -export default plugin; diff --git a/svelte.config.js b/svelte.config.js index 3473cba..b1cb1f9 100644 --- a/svelte.config.js +++ b/svelte.config.js @@ -3,7 +3,6 @@ import path from "path"; import { mdsvex, escapeSvelte } from "mdsvex"; import { createHighlighter } from "shiki"; import remarkRelativeImages from "mdsvex-relative-images"; -import remarkCustomEmojis from "./remark-custom-emojis.js"; import { join, dirname } from "path"; import { fileURLToPath } from "url"; @@ -24,7 +23,7 @@ const config = { preprocess: [ mdsvex({ extensions: [".svx", ".md", ".mdx"], - remarkPlugins: [remarkCustomEmojis, remarkRelativeImages], + remarkPlugins: [remarkRelativeImages], layout: { log: join(__dirname, "/src/routes/(pages)/log/post.svelte"), blog: join(__dirname, "/src/routes/(pages)/blog/posts/mdsvex_layout.svelte"), From 27d199bda5b0e7ebd2da1fefdf935431fa9d4a6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roger=20Bj=C3=B8rnstad?= Date: Thu, 18 Jun 2026 15:10:04 +0200 Subject: [PATCH 2/3] fix: replace custom Slack emojis with Unicode equivalents MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - :naisely-done: → ✅ - :texas: → 🤠 --- src/routes/(pages)/log/posts/2024-11-22-texas.md | 2 +- src/routes/(pages)/log/posts/2025-06-27-texas-er-ute-av-beta.md | 2 +- .../log/posts/2025-07-05-NAIS-st\303\270tter-n\303\245-ttl.md" | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/routes/(pages)/log/posts/2024-11-22-texas.md b/src/routes/(pages)/log/posts/2024-11-22-texas.md index 9355db3..00eefaf 100644 --- a/src/routes/(pages)/log/posts/2024-11-22-texas.md +++ b/src/routes/(pages)/log/posts/2024-11-22-texas.md @@ -6,7 +6,7 @@ tags: [texas, token, oauth, jwt] layout: log --- -Token Exchange as a Service (Texas :texas: ) +Token Exchange as a Service (Texas 🤠) De fleste applikasjoner som trenger autentisering må i dag forholde seg til mange detaljer rundt OAuth og JWTer. For å gjøre det lett å gjøre rett så har vi nå laget en tjeneste som abstraherer vekk alt dette bak et enkelt HTTP API. diff --git a/src/routes/(pages)/log/posts/2025-06-27-texas-er-ute-av-beta.md b/src/routes/(pages)/log/posts/2025-06-27-texas-er-ute-av-beta.md index 9bf4cd5..2f198df 100644 --- a/src/routes/(pages)/log/posts/2025-06-27-texas-er-ute-av-beta.md +++ b/src/routes/(pages)/log/posts/2025-06-27-texas-er-ute-av-beta.md @@ -6,7 +6,7 @@ tags: [texas, token, oauth, jwt] layout: log --- -:texas: Sent [i fjor introduserte vi Texas i beta](https://nais.io/log/#2024-11-22-texas). Det er en tjeneste som gjør det meget mye enklere å navigere seg rundt alt av JWTer og OAuth. +🤠 Sent [i fjor introduserte vi Texas i beta](https://nais.io/log/#2024-11-22-texas). Det er en tjeneste som gjør det meget mye enklere å navigere seg rundt alt av JWTer og OAuth. Texas er nå automatisk tilgjengelig for alle apper som bruker minst én av: diff --git "a/src/routes/(pages)/log/posts/2025-07-05-NAIS-st\303\270tter-n\303\245-ttl.md" "b/src/routes/(pages)/log/posts/2025-07-05-NAIS-st\303\270tter-n\303\245-ttl.md" index bbf3eb7..0010fed 100644 --- "a/src/routes/(pages)/log/posts/2025-07-05-NAIS-st\303\270tter-n\303\245-ttl.md" +++ "b/src/routes/(pages)/log/posts/2025-07-05-NAIS-st\303\270tter-n\303\245-ttl.md" @@ -6,7 +6,7 @@ tags: [workloads, naisjob, ttl] layout: log --- -:naisely-done: NAIS støtter nå `spec.ttl` for automatisert opprydding i **Naisjob**! +✅ NAIS støtter nå `spec.ttl` for automatisert opprydding i **Naisjob**! Det er nå mulig å angi en **TTL (time to live)** direkte i `spec.ttl` for Naisjob — noe som tidligere kun var tilgjengelig for Application-ressurser. From b8e51e48c9d8375944e620a746f0dc17a56ee165 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roger=20Bj=C3=B8rnstad?= Date: Thu, 18 Jun 2026 15:13:14 +0200 Subject: [PATCH 3/3] chore: remove unused mdast-util-find-and-replace dependency --- package.json | 1 - pnpm-lock.yaml | 19 ------------------- 2 files changed, 20 deletions(-) diff --git a/package.json b/package.json index b54e866..8d6aa5a 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,6 @@ "@nais/ds-svelte-community": "2.0.0-next.8", "date-fns": "4.4.0", "feed": "5.2.1", - "mdast-util-find-and-replace": "3.0.2", "parse-md": "3.0.3", "shiki": "4.2.0", "svelte-preprocess": "6.0.5", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a05b956..874d461 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,9 +17,6 @@ importers: feed: specifier: 5.2.1 version: 5.2.1 - mdast-util-find-and-replace: - specifier: 3.0.2 - version: 3.0.2 parse-md: specifier: 3.0.3 version: 3.0.3 @@ -588,10 +585,6 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} - escape-string-regexp@5.0.0: - resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} - engines: {node: '>=12'} - eslint-config-prettier@10.1.8: resolution: {integrity: sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==} hasBin: true @@ -887,9 +880,6 @@ packages: magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - mdast-util-find-and-replace@3.0.2: - resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} - mdast-util-to-hast@13.2.1: resolution: {integrity: sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==} @@ -1799,8 +1789,6 @@ snapshots: escape-string-regexp@4.0.0: {} - escape-string-regexp@5.0.0: {} - eslint-config-prettier@10.1.8(eslint@10.4.1): dependencies: eslint: 10.4.1 @@ -2077,13 +2065,6 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 - mdast-util-find-and-replace@3.0.2: - dependencies: - '@types/mdast': 4.0.4 - escape-string-regexp: 5.0.0 - unist-util-is: 6.0.1 - unist-util-visit-parents: 6.0.2 - mdast-util-to-hast@13.2.1: dependencies: '@types/hast': 3.0.4