diff --git a/.idx/dev.nix b/.idx/dev.nix new file mode 100644 index 0000000000..5f229d7167 --- /dev/null +++ b/.idx/dev.nix @@ -0,0 +1,51 @@ +# To learn more about how to use Nix to configure your environment +# see: https://developers.google.com/idx/guides/customize-idx-env +{ pkgs, ... }: { + # Which nixpkgs channel to use. + channel = "stable-24.05"; # or "unstable" + + # Use https://search.nixos.org/packages to find packages + packages = [ + pkgs.nodejs_22 + pkgs.pnpm + ]; + + # Sets environment variables in the workspace + env = {}; + idx = { + # Search for the extensions you want on https://open-vsx.org/ and use "publisher.id" + extensions = [ + "Dart-Code.flutter" + "Dart-Code.dart-code" + ]; + + # Enable previews + previews = { + enable = true; + previews = { + web = { + command = ["./dash_site" "serve"]; + manager = "web"; + env = { + # Environment variables to set for your server + PORT = "$PORT"; + }; + }; + }; + }; + + # Workspace lifecycle hooks + workspace = { + # Runs when a workspace is first created + onCreate = { + get-submodule = "git submodule update --init --recursive"; + pnpm-install = "pnpm install"; + }; + # Runs when the workspace is (re)started + onStart = { + # Example: start a background task to watch and re-build backend code + # watch-backend = "npm run watch-backend"; + }; + }; + }; +} diff --git a/README.md b/README.md index de75eebed0..8eadeeca2a 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,21 @@ [![Build Status SVG][]][Repo on GitHub Actions] [![OpenSSF Scorecard SVG][]][Scorecard Results] + + + + + Open in IDX + + + The documentation site for the [Dart programming language](https://dart.dev), built with [Eleventy][] and hosted on [Firebase][]. @@ -69,7 +84,7 @@ If you prefer, you can use a version manager such as [nvm][], and run `nvm install` from the repository's root directory. If you already have Node installed, verify it's available on your path -and already the latest stable version _(currently `20.12` or later)_: +and already the latest stable version _(currently `20.14` or later)_: ```terminal node --version @@ -143,7 +158,7 @@ following the instructions in [Get the prerequisites](#get-the-prerequisites). If you already have `pnpm`, verify you have the latest stable version. We recommend using [`corepack`][] to install and manage `pnpm` versions, since it is bundled with most installations of Node. - + If you haven't used `corepack` before, you'll need to first enable it with `corepack enable`. Then, to install the correct `pnpm` version, from the @@ -181,7 +196,7 @@ following the instructions in [Get the prerequisites](#get-the-prerequisites). 7. View your changes in the browser by navigating to . Note the port might be different if `4000` is taken. - + If you want to check the raw, generated HTML output and structure, view the `_site` directory in a file explorer or an IDE. @@ -274,7 +289,7 @@ you can build a full version and upload it to Firebase. ./dash_site build ``` - This will build the site and copy it to your local `_site` directory. + This builds the site and copy it to your local `_site` directory. If that directory previously existed, it will be replaced. 3. Deploy to your activated Firebase project's default hosting site: diff --git a/dash_site b/dash_site index 63e77d583c..b4d386184f 100755 --- a/dash_site +++ b/dash_site @@ -1,8 +1,8 @@ #!/bin/bash REQUIRED_DART_VERSION="3.5" -REQUIRED_NODE_VERSION="20.12" -REQUIRED_PNPM_VERSION="9.1" +REQUIRED_NODE_VERSION="20.14" +REQUIRED_PNPM_VERSION="9.4" # Check that the 'dart' command is available on the user's path. if ! command -v dart &> /dev/null; then diff --git a/examples/misc/lib/language_tour/built_in_types.dart b/examples/misc/lib/language_tour/built_in_types.dart index 1ee3cae3c9..0410e76283 100644 --- a/examples/misc/lib/language_tour/built_in_types.dart +++ b/examples/misc/lib/language_tour/built_in_types.dart @@ -37,6 +37,17 @@ void miscDeclAnalyzedButNotTested() { // #enddocregion const-num } + // Uncomment when feature is stable: + // { + // // #docregion digit-separators + // var n1 = 1_000_000; + // var n2 = 0.000_000_000_01; + // var n3 = 0x00_14_22_01_23_45; // MAC address + // var n4 = 555_123_4567; // US Phone number + // var n5 = 100__000_000__000_000; // one hundred million million! + // // #enddocregion digit-separators + // } + { // #docregion quoting var s1 = 'Single quotes work well for string literals.'; diff --git a/firebase.json b/firebase.json index 98dbc04f09..5283f78452 100644 --- a/firebase.json +++ b/firebase.json @@ -241,6 +241,82 @@ { "source": "/install/**", "destination": "/get-dart", "type": 301 }, { "source": "/install/archive", "destination": "/get-dart/archive", "type": 301 }, { "source": "/jobs", "destination": "https://docs.flutter.dev/jobs", "type": 301 }, + + { "source": "/keyword", "destination": "/language/keywords", "type": 301 }, + { "source": "/keyword/abstract", "destination": "/language/class-modifiers#abstract", "type": 301 }, + { "source": "/keyword/as", "destination": "/language/operators#type-test-operators", "type": 301 }, + { "source": "/keyword/assert", "destination": "/language/error-handling#assert", "type": 301 }, + { "source": "/keyword/async", "destination": "/language/async", "type": 301 }, + { "source": "/keyword/async-star", "destination": "/language/functions#generators", "type": 301 }, + { "source": "/keyword/await", "destination": "/language/async", "type": 301 }, + { "source": "/keyword/base", "destination": "/language/class-modifiers#base", "type": 301 }, + { "source": "/keyword/break", "destination": "/language/loops#break-and-continue", "type": 301 }, + { "source": "/keyword/case", "destination": "/language/branches#switch", "type": 301 }, + { "source": "/keyword/catch", "destination": "/language/error-handling#catch", "type": 301 }, + { "source": "/keyword/class", "destination": "/language/classes#instance-variables", "type": 301 }, + { "source": "/keyword/const", "destination": "/language/variables#final-and-const", "type": 301 }, + { "source": "/keyword/continue", "destination": "/language/loops#break-and-continue", "type": 301 }, + { "source": "/keyword/covariant", "destination": "/guides/language/sound-problems#the-covariant-keyword", "type": 301 }, + { "source": "/keyword/default", "destination": "/language/branches#switch", "type": 301 }, + { "source": "/keyword/deferred", "destination": "/language/libraries#lazily-loading-a-library", "type": 301 }, + { "source": "/keyword/do", "destination": "/language/loops#while-and-do-while", "type": 301 }, + { "source": "/keyword/dynamic", "destination": "/effective-dart/design#avoid-using-dynamic-unless-you-want-to-disable-static-checking", "type": 301 }, + { "source": "/keyword/else", "destination": "/language/branches#if", "type": 301 }, + { "source": "/keyword/enum", "destination": "/language/enums", "type": 301 }, + { "source": "/keyword/export", "destination": "/guides/libraries/create-packages", "type": 301 }, + { "source": "/keyword/extends", "destination": "/language/extend", "type": 301 }, + { "source": "/keyword/extension", "destination": "/language/extension-methods", "type": 301 }, + { "source": "/keyword/extension-type", "destination": "/language/extension-types", "type": 301 }, + { "source": "/keyword/external", "destination": "/language/functions#external", "type": 301 }, + { "source": "/keyword/factory", "destination": "/language/constructors#factory-constructors", "type": 301 }, + { "source": "/keyword/false", "destination": "/language/built-in-types#booleans", "type": 301 }, + { "source": "/keyword/final", "destination": "/language/variables#final-and-const", "type": 301 }, + { "source": "/keyword/final-var", "destination": "/language/variables#final-and-const", "type": 301 }, + { "source": "/keyword/final-class", "destination": "/language/class-modifiers#final", "type": 301 }, + { "source": "/keyword/finally", "destination": "/language/error-handling#finally", "type": 301 }, + { "source": "/keyword/for", "destination": "/language/loops#for-loops", "type": 301 }, + { "source": "/keyword/Function", "destination": "/language/functions", "type": 301 }, + { "source": "/keyword/get", "destination": "/language/methods#getters-and-setters", "type": 301 }, + { "source": "/keyword/hide", "destination": "/language/libraries#importing-only-part-of-a-library", "type": 301 }, + { "source": "/keyword/if", "destination": "/language/branches#if", "type": 301 }, + { "source": "/keyword/implements", "destination": "/language/classes#implicit-interfaces", "type": 301 }, + { "source": "/keyword/import", "destination": "/language/libraries#using-libraries", "type": 301 }, + { "source": "/keyword/in", "destination": "/language/loops#for-loops", "type": 301 }, + { "source": "/keyword/interface", "destination": "/language/class-modifiers#interface", "type": 301 }, + { "source": "/keyword/is", "destination": "/language/operators#type-test-operators", "type": 301 }, + { "source": "/keyword/late", "destination": "/language/variables#late-variables", "type": 301 }, + { "source": "/keyword/library", "destination": "/language/libraries", "type": 301 }, + { "source": "/keyword/mixin", "destination": "/language/mixins", "type": 301 }, + { "source": "/keyword/new", "destination": "/language/classes#using-constructors", "type": 301 }, + { "source": "/keyword/null", "destination": "/language/variables#default-value", "type": 301 }, + { "source": "/keyword/of", "destination": "/guides/libraries/create-packages#organizing-a-package", "type": 301 }, + { "source": "/keyword/on", "destination": "/language/error-handling#catch", "type": 301 }, + { "source": "/keyword/operator", "destination": "/language/methods#operators", "type": 301 }, + { "source": "/keyword/part", "destination": "/guides/libraries/create-packages#organizing-a-package", "type": 301 }, + { "source": "/keyword/required", "destination": "/language/functions#named-parameters", "type": 301 }, + { "source": "/keyword/rethrow", "destination": "/language/error-handling#catch", "type": 301 }, + { "source": "/keyword/return", "destination": "/language/functions#return-values", "type": 301 }, + { "source": "/keyword/sealed", "destination": "/language/class-modifiers#sealed", "type": 301 }, + { "source": "/keyword/set", "destination": "/language/methods#getters-and-setters", "type": 301 }, + { "source": "/keyword/show", "destination": "/language/libraries#importing-only-part-of-a-library", "type": 301 }, + { "source": "/keyword/static", "destination": "/language/classes#class-variables-and-methods", "type": 301 }, + { "source": "/keyword/super", "destination": "/language/extend", "type": 301 }, + { "source": "/keyword/switch", "destination": "/language/branches#switch", "type": 301 }, + { "source": "/keyword/sync{,-star}", "destination": "/language/functions#generators", "type": 301 }, + { "source": "/keyword/this", "destination": "/language/constructors", "type": 301 }, + { "source": "/keyword/throw", "destination": "/language/error-handling#throw", "type": 301 }, + { "source": "/keyword/true", "destination": "/language/built-in-types#booleans", "type": 301 }, + { "source": "/keyword/try", "destination": "/language/error-handling#catch", "type": 301 }, + { "source": "/keyword/type", "destination": "/language/extension-types", "type": 301 }, + { "source": "/keyword/typedef", "destination": "/language/typedefs", "type": 301 }, + { "source": "/keyword/var", "destination": "/language/variables", "type": 301 }, + { "source": "/keyword/void", "destination": "/language/built-in-types", "type": 301 }, + { "source": "/keyword/when", "destination": "/language/branches#when", "type": 301 }, + { "source": "/keyword/with", "destination": "/language/mixins", "type": 301 }, + { "source": "/keyword/while", "destination": "/language/loops#while-and-do-while", "type": 301 }, + { "source": "/keyword/yield", "destination": "/language/functions#generators", "type": 301 }, + { "source": "/keyword/:page*", "destination": "/language/keywords", "type": 301 }, + { "source": "/language-tour", "destination": "/language", "type": 301 }, { "source": "/language/basics", "destination": "/language", "type": 301 }, { "source": "/language/callable-classes", "destination": "/language/callable-objects", "type": 301 }, diff --git a/package.json b/package.json index 9ea732b5b2..2838cec6ab 100644 --- a/package.json +++ b/package.json @@ -14,28 +14,27 @@ "build-site-for-production": "PRODUCTION=true OPTIMIZE=true eleventy" }, "engines": { - "node": ">=20.12.0", - "pnpm": ">=9.1.0" + "node": ">=20.14.0", + "pnpm": ">=9.4.0" }, - "packageManager": "pnpm@9.10.0", + "packageManager": "pnpm@9.12.3", "dependencies": { "bootstrap-scss": "^4.6.2" }, "devDependencies": { - "@11ty/eleventy": "3.0.0", - "firebase-tools": "^13.23.1", + "@11ty/eleventy": "^3.0.0", + "firebase-tools": "^13.24.1", "hast-util-from-html": "^2.0.3", "hast-util-select": "^6.0.3", "hast-util-to-text": "^4.0.2", "html-minifier-terser": "^7.2.0", "js-yaml": "^4.1.0", - "liquidjs": "^10.18.0", "markdown-it": "^14.1.0", "markdown-it-anchor": "^9.2.0", "markdown-it-attrs": "^4.2.0", "markdown-it-container": "^4.0.0", "markdown-it-deflist": "^3.0.0", - "sass": "^1.80.5", + "sass": "^1.80.6", "shiki": "^1.22.2" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 22829e2141..35937765a4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -13,11 +13,11 @@ importers: version: 4.6.2 devDependencies: '@11ty/eleventy': - specifier: 3.0.0 + specifier: ^3.0.0 version: 3.0.0 firebase-tools: - specifier: ^13.23.1 - version: 13.23.1(encoding@0.1.13) + specifier: ^13.24.1 + version: 13.24.1(encoding@0.1.13) hast-util-from-html: specifier: ^2.0.3 version: 2.0.3 @@ -33,9 +33,6 @@ importers: js-yaml: specifier: ^4.1.0 version: 4.1.0 - liquidjs: - specifier: ^10.18.0 - version: 10.18.0 markdown-it: specifier: ^14.1.0 version: 14.1.0 @@ -52,8 +49,8 @@ importers: specifier: ^3.0.0 version: 3.0.0 sass: - specifier: ^1.80.5 - version: 1.80.5 + specifier: ^1.80.6 + version: 1.80.6 shiki: specifier: ^1.22.2 version: 1.22.2 @@ -109,11 +106,11 @@ packages: '@dabh/diagnostics@2.0.3': resolution: {integrity: sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==} - '@electric-sql/pglite@0.2.8': - resolution: {integrity: sha512-0wSmQu22euBRzR5ghqyIHnBH4MfwlkL5WstOrrA3KOsjEWEglvoL/gH92JajEUA6Ufei/+qbkB2hVloC/K/RxQ==} + '@electric-sql/pglite@0.2.12': + resolution: {integrity: sha512-J/X42ujcoFEbOkgRyoNqZB5qcqrnJRWVlwpH3fKYoJkTz49N91uAK/rDSSG/85WRas9nC9mdV4FnMTxnQWE/rw==} - '@google-cloud/cloud-sql-connector@1.3.4': - resolution: {integrity: sha512-Lw05ME/W9mDzJuQwGwzHl9dqJtN1zBpyK6A3NbjhBi/V1WZpsIk1RgqR6+5LIbMurcNRia9ITOlCjsgJY+H92A==} + '@google-cloud/cloud-sql-connector@1.4.0': + resolution: {integrity: sha512-OUXs2f91u3afbFjufCJom9lF+GgS9if4F/eKxrLvdkbwkYAQrQUOY6Jw4YfVXUxF3oNDioTgZ4fpwt1MQXwfKg==} engines: {node: '>=14'} '@google-cloud/paginator@5.0.2': @@ -132,16 +129,16 @@ packages: resolution: {integrity: sha512-Orxzlfb9c67A15cq2JQEyVc7wEsmFBmHjZWZYQMUyJ1qivXyMwdyNOs9odi79hze+2zqdTtu1E19IM/FtqZ10g==} engines: {node: '>=14'} - '@google-cloud/pubsub@4.7.1': - resolution: {integrity: sha512-g6RN//1WjEg5pUqAT1xJZDFmhC5nitFVHYyS52THSl7VKubWv+T9cHkeHp/+cc1HDUbkMRjs5hwVSoa0bRR+8Q==} + '@google-cloud/pubsub@4.8.0': + resolution: {integrity: sha512-H9S4i5mAeQg5A4MZox8XfWnoxlMehlIn8QHWZ3iOj7Kz/yaHufsI5JtSGaezjZv+wF4elur5Yycygnl6pWHSyg==} engines: {node: '>=14.0.0'} - '@googleapis/sqladmin@19.0.0': - resolution: {integrity: sha512-65zgEpQLhpTZqUic+pm4BbdDByN9NsHkphfCIwzpx3fccHPc6OuKsW0XexYCq9oTUtTC4QRjFisBDLV9fChRtg==} + '@googleapis/sqladmin@24.0.0': + resolution: {integrity: sha512-Sj2MerYrr4Z6ksK81Scj0gIdFjC3bC0vcqdM+TSfnOskg6d9iIALWdFDc3xgNHQWO58rUb6HjBzr1XbuNjYlPg==} engines: {node: '>=12.0.0'} - '@grpc/grpc-js@1.11.2': - resolution: {integrity: sha512-DWp92gDD7/Qkj7r8kus6/HCINeo3yPZWZ3paKgDgsbKbSpoxKg1yvN8xe2Q8uE3zOsPe3bX8FQX2+XValq2yTw==} + '@grpc/grpc-js@1.12.2': + resolution: {integrity: sha512-bgxdZmgTrJZX50OjyVwz3+mNEnCTNkh3cIqGPWVNeW9jX6bn1ZkU80uPd+67/ZpIJIjRQ9qaHCjhavyoWYxumg==} engines: {node: '>=12.10.0'} '@grpc/proto-loader@0.7.13': @@ -388,8 +385,8 @@ packages: '@types/mdurl@2.0.0': resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} - '@types/node@22.5.4': - resolution: {integrity: sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==} + '@types/node@22.8.6': + resolution: {integrity: sha512-tosuJYKrIqjQIlVCM4PEGxOmyg3FCPa/fViuJChnGeEIhjA46oy8FMVoF9su1/v8PNs2a8Q0iFNyOx0uOF91nw==} '@types/request@2.48.12': resolution: {integrity: sha512-G3sY+NpsA9jnwm0ixhAFQSJ3Q9JkpLZpJbI3GMv0mIAT0y3mRabYeINzal5WOChIiaTEGQYlHOKgkaM9EisWHw==} @@ -425,8 +422,8 @@ packages: resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} engines: {node: '>=0.4.0'} - acorn@8.12.1: - resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} + acorn@8.14.0: + resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} hasBin: true @@ -552,14 +549,14 @@ packages: asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - b4a@1.6.6: - resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} + b4a@1.6.7: + resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==} balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - bare-events@2.4.2: - resolution: {integrity: sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q==} + bare-events@2.5.0: + resolution: {integrity: sha512-/E8dDe9dsbLyh2qrZ64PEPadOQ0F4gbl1sUJOrmph7xOiIxfY8vwab/4bFLh4Y88/Hk/ujKcrQKc+ps0mv873A==} base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -634,10 +631,6 @@ packages: buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} - bytes@3.0.0: - resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} - engines: {node: '>= 0.8'} - bytes@3.1.2: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} @@ -691,8 +684,8 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} - chokidar@4.0.0: - resolution: {integrity: sha512-mxIojEAQcuEvT/lyXq+jf/3cO/KoA6z4CeNDGGevTybECPOMFCnQy3OPahluUkbqgPNGw5Bi78UC7Po6Lhy+NA==} + chokidar@4.0.1: + resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==} engines: {node: '>= 14.16.0'} chownr@2.0.0: @@ -813,8 +806,8 @@ packages: resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} engines: {node: '>= 0.6'} - compression@1.7.4: - resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} + compression@1.7.5: + resolution: {integrity: sha512-bQJ0YRck5ak3LgtnpKkiabX5pNF7tMUh1BSy2ZBOTh0Dim0BUu6aPPwByIns6/A5Prh8PufSPerMDUklpzes2Q==} engines: {node: '>= 0.8.0'} concat-map@0.0.1: @@ -842,8 +835,8 @@ packages: cookie-signature@1.0.6: resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} + cookie@0.7.1: + resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==} engines: {node: '>= 0.6'} core-util-is@1.0.3: @@ -1165,8 +1158,8 @@ packages: exponential-backoff@3.1.1: resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==} - express@4.21.0: - resolution: {integrity: sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==} + express@4.21.1: + resolution: {integrity: sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==} engines: {node: '>= 0.10.0'} extend-shallow@2.0.1: @@ -1193,8 +1186,8 @@ packages: fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - fast-uri@3.0.1: - resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} + fast-uri@3.0.3: + resolution: {integrity: sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==} fast-url-parser@1.1.3: resolution: {integrity: sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==} @@ -1225,16 +1218,12 @@ packages: resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} engines: {node: '>= 0.8'} - finalhandler@1.3.0: - resolution: {integrity: sha512-bmwQPHFq/qiWp9CbNbCQU73klT+i5qwP/0tah3MGHp26vUt2YV4WkdtXRqOZo+H+4m38k8epFHOvO4BRuAuohw==} - engines: {node: '>= 0.8'} - finalhandler@1.3.1: resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==} engines: {node: '>= 0.8'} - firebase-tools@13.23.1: - resolution: {integrity: sha512-nMaI9fsW+Eeavm1qfp3iRUP4BhEJlSTiMiUCCw2Pf0FhooIRjvoWjfTWmt4zsBUDxe3blRfrgHsukE9pYst5rw==} + firebase-tools@13.24.1: + resolution: {integrity: sha512-diyFquC0A+njoVK5+h6y5I+2eEo/APzD92RmC8O4tGROIg9DuUsmBu8pHWsQ4TqkAGUhi6HyF85zrFXxFAaw5w==} engines: {node: '>=18.0.0 || >=20.0.0'} hasBin: true @@ -1245,12 +1234,12 @@ packages: resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} engines: {node: '>=14'} - form-data@2.5.1: - resolution: {integrity: sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==} + form-data@2.5.2: + resolution: {integrity: sha512-GgwY0PS7DbXqajuGf4OYlsrIu3zgxD6Vvql43IBhm6MahqA5SK/7mwhtNj2AdH2z35YR34ujJ7BN+3fFC3jP5Q==} engines: {node: '>= 0.12'} - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + form-data@4.0.1: + resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} forwarded@0.2.0: @@ -1331,8 +1320,8 @@ packages: resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} engines: {node: '>=10'} - google-auth-library@9.14.1: - resolution: {integrity: sha512-Rj+PMjoNFGFTmtItH7gHfbHpGVSb3vmnGK3nwNBqxQF9NoBpttSZI/rc0WiM63ma2uGDQtYEkMHkK9U6937NiA==} + google-auth-library@9.14.2: + resolution: {integrity: sha512-R+FRIfk1GBo3RdlRYWPdwk8nmtVUOn6+BkDomAC46KoU8kzXzE1HLmOasSCbWUByMMAGkknVF0G5kQ69Vj7dlA==} engines: {node: '>=14'} google-gax@4.4.1: @@ -1404,8 +1393,8 @@ packages: hast-util-to-html@9.0.3: resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} - hast-util-to-string@3.0.0: - resolution: {integrity: sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==} + hast-util-to-string@3.0.1: + resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==} hast-util-to-text@4.0.2: resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==} @@ -1839,11 +1828,11 @@ packages: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true - marked-terminal@7.1.0: - resolution: {integrity: sha512-+pvwa14KZL74MVXjYdPR3nSInhGhNvPce/3mqLVZT2oUvt654sL1XImFuLZ1pkA866IYZ3ikDTOFUIC7XzpZZg==} + marked-terminal@7.2.1: + resolution: {integrity: sha512-rQ1MoMFXZICWNsKMiiHwP/Z+92PLKskTPXj+e7uwXmuMPkNn7iTqC+IvDekVm1MPeC9wYQeLxeFaOvudRR/XbQ==} engines: {node: '>=16.0.0'} peerDependencies: - marked: '>=1 <14' + marked: '>=1 <15' marked@13.0.3: resolution: {integrity: sha512-rqRix3/TWzE9rIoFGIn8JmsVfhiuC8VIQ8IdX5TfzmeBucdY05/0UlzKaw0eVtpcN/OdVFpBk7CjKGo9iHJ/zA==} @@ -2018,8 +2007,8 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nan@2.20.0: - resolution: {integrity: sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==} + nan@2.22.0: + resolution: {integrity: sha512-nbajikzWTMwsW+eSsNm3QwlOs7het9gGJU5dDZzRTQGk03vyBOauxgI4VakDzE0PtsGTmXPsXTbbjVhRwR5mpw==} nearley@2.20.1: resolution: {integrity: sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==} @@ -2029,6 +2018,10 @@ packages: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} engines: {node: '>= 0.6'} + negotiator@0.6.4: + resolution: {integrity: sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==} + engines: {node: '>= 0.6'} + netmask@2.0.2: resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} engines: {node: '>= 0.4.0'} @@ -2169,8 +2162,8 @@ packages: resolution: {integrity: sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==} engines: {node: '>= 14'} - package-json-from-dist@1.0.0: - resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} param-case@3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} @@ -2187,8 +2180,8 @@ packages: parse5@6.0.1: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - parse5@7.1.2: - resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + parse5@7.2.1: + resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} @@ -2215,33 +2208,33 @@ packages: path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} - path-to-regexp@1.8.0: - resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} + path-to-regexp@1.9.0: + resolution: {integrity: sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g==} pg-cloudflare@1.1.1: resolution: {integrity: sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==} - pg-connection-string@2.6.4: - resolution: {integrity: sha512-v+Z7W/0EO707aNMaAEfiGnGL9sxxumwLl2fJvCQtMn9Fxsg+lPpPkdcyBSv/KFgpGdYkMfn+EI1Or2EHjpgLCA==} + pg-connection-string@2.7.0: + resolution: {integrity: sha512-PI2W9mv53rXJQEOb8xNR8lH7Hr+EKa6oJa38zsK0S/ky2er16ios1wLKhZyxzD7jUReiWokc9WK5nxSnC7W1TA==} pg-int8@1.0.1: resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} engines: {node: '>=4.0.0'} - pg-pool@3.6.2: - resolution: {integrity: sha512-Htjbg8BlwXqSBQ9V8Vjtc+vzf/6fVUuak/3/XXKA9oxZprwW3IMDQTGHP+KDmVL7rtd+R1QjbnCFPuTHm3G4hg==} + pg-pool@3.7.0: + resolution: {integrity: sha512-ZOBQForurqh4zZWjrgSwwAtzJ7QiRX0ovFkZr2klsen3Nm0aoh33Ls0fzfv3imeH/nw/O27cjdz5kzYJfeGp/g==} peerDependencies: pg: '>=8.0' - pg-protocol@1.6.1: - resolution: {integrity: sha512-jPIlvgoD63hrEuihvIg+tJhoGjUsLPn6poJY9N5CnlPd91c2T18T/9zBtLxZSb1EhYxBRoZJtzScCaWlYLtktg==} + pg-protocol@1.7.0: + resolution: {integrity: sha512-hTK/mE36i8fDDhgDFjy6xNOG+LCorxLG3WO17tku+ij6sVHXh1jQUJ8hYAnRhNla4QVD2H8er/FOjc/+EgC6yQ==} pg-types@2.2.0: resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==} engines: {node: '>=4'} - pg@8.12.0: - resolution: {integrity: sha512-A+LHUSnwnxrnL/tZ+OLfqR1SxLN3c/pgDztZ47Rpbsd4jUytsTtwQo/TLPRzPJMp/1pbhYVhH9cuSZLAajNfjQ==} + pg@8.13.1: + resolution: {integrity: sha512-OUir1A0rPNZlX//c7ksiu7crsGZTKSOXJPgtNiHGIlC9H0lO+NC6ZDYksSgBYY/thSWhnSRBv8w1lieNNGATNQ==} engines: {node: '>= 8.0.0'} peerDependencies: pg-native: '>=3.0.1' @@ -2252,8 +2245,8 @@ packages: pgpass@1.0.5: resolution: {integrity: sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==} - picocolors@1.1.0: - resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} @@ -2357,8 +2350,8 @@ packages: prr@1.0.1: resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} - pump@3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} + pump@3.0.2: + resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} punycode.js@2.3.1: resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} @@ -2425,12 +2418,12 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - readdirp@4.0.1: - resolution: {integrity: sha512-GkMg9uOTpIWWKbSsgwb5fA4EavTR+SG/PMPoAY8hkhHfEEY0/vqljY+XHqtDf2cr2IJtoNRDbrrEpZUiZCkYRw==} + readdirp@4.0.2: + resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} engines: {node: '>= 14.16.0'} - regex@4.3.2: - resolution: {integrity: sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw==} + regex@4.4.0: + resolution: {integrity: sha512-uCUSuobNVeqUupowbdZub6ggI5/JZkYyJdDogddJr60L764oxC2pMZov1fQ3wM9bdyzUILDG+Sqx6NAKAz9rKQ==} registry-auth-token@5.0.2: resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} @@ -2507,8 +2500,8 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - sass@1.80.5: - resolution: {integrity: sha512-TQd2aoQl/+zsxRMEDSxVdpPIqeq9UFc6pr7PzkugiTx3VYCFPUaa3P4RrBQsqok4PO200Vkz0vXQBNlg7W907g==} + sass@1.80.6: + resolution: {integrity: sha512-ccZgdHNiBF1NHBsWvacvT5rju3y1d/Eu+8Ex6c21nHp2lZGLBEtuwc415QfiI1PJa1TpCo3iXwwSRjRpn2Ckjg==} engines: {node: '>=14.0.0'} hasBin: true @@ -2540,6 +2533,10 @@ packages: resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} engines: {node: '>= 0.8.0'} + send@0.19.1: + resolution: {integrity: sha512-p4rRk4f23ynFEfcD9LA0xRYngj+IyGiEYyqqOak8kaN0TvNmuxC2dcVeBn62GpCeR2CpWqyHCNScTP91QbAVFg==} + engines: {node: '>= 0.8.0'} + serve-static@1.16.2: resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} engines: {node: '>= 0.8.0'} @@ -2635,8 +2632,8 @@ packages: sprintf-js@1.1.3: resolution: {integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==} - sql-formatter@15.4.2: - resolution: {integrity: sha512-Pw4aAgfuyml/SHMlhbJhyOv+GR+Z1HNb9sgX3CVBVdN5YNM+v2VWkYJ3NNbYS7cu37GY3vP/PgnwoVynCuXRxg==} + sql-formatter@15.4.5: + resolution: {integrity: sha512-dxYn0OzEmB19/9Y+yh8bqD8kJx2S/4pOTM4QLKxQDh7K6lp1Sx9MhmiF9RUJHSVjfV72KihW5R1h6Kecy6O5qA==} hasBin: true ssri@10.0.6: @@ -2664,14 +2661,14 @@ packages: stream-events@1.0.5: resolution: {integrity: sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==} - stream-json@1.8.0: - resolution: {integrity: sha512-HZfXngYHUAr1exT4fxlbc1IOce1RYxp2ldeaf97LYCOPSoOqY/1Psp7iGvpb+6JIOgkra9zDYnPX01hGAHzEPw==} + stream-json@1.9.0: + resolution: {integrity: sha512-TqnfW7hRTKje7UobBzXZJ2qOEDJvdcSVgVIK/fopC03xINFuFqQs8RVjyDT4ry7TmOo2ueAXwpXXXG4tNgtvoQ==} stream-shift@1.0.3: resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} - streamx@2.20.0: - resolution: {integrity: sha512-ZGd1LhDeGFucr1CUCTBOS58ZhEendd0ttpGT3usTvosS4ntIwKN9LJFp+OeCSprsCPL14BXVRZlHGRY1V9PVzQ==} + streamx@2.20.1: + resolution: {integrity: sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==} string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} @@ -2736,13 +2733,13 @@ packages: resolution: {integrity: sha512-resvxdc6Mgb7YEThw6G6bExlXKkv6+YbuzGg9xuXxSgxJF7Ozs+o8Y9+2R3sArdWdW8nOokoQb1yrpFB0pQK2g==} engines: {node: '>=14'} - terser@5.32.0: - resolution: {integrity: sha512-v3Gtw3IzpBJ0ugkxEX8U0W6+TnPKRRCWGh1jC/iM/e3Ki5+qvO1L1EAZ56bZasc64aXHwRHNIQEzm6//i5cemQ==} + terser@5.36.0: + resolution: {integrity: sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==} engines: {node: '>=10'} hasBin: true - text-decoder@1.1.1: - resolution: {integrity: sha512-8zll7REEv4GDD3x4/0pW+ppIxSNs7H1J10IKFZsuOMscumCdM2a+toDGLPA3T+1+fLBql4zbt5z83GEQGGV5VA==} + text-decoder@1.2.1: + resolution: {integrity: sha512-x9v3H/lTKIJKQQe7RPQkLfKAnc9lUTkWDypIQgTzPJAq+5/GCDHonmshfvlsNSj58yyshbIJJDLmU15qNERrXQ==} text-hex@1.0.0: resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} @@ -2789,8 +2786,8 @@ packages: resolution: {integrity: sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==} engines: {node: '>= 14.0.0'} - tslib@2.7.0: - resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} tsscmp@1.0.6: resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==} @@ -2943,12 +2940,12 @@ packages: resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} engines: {node: '>=8'} - winston-transport@4.7.1: - resolution: {integrity: sha512-wQCXXVgfv/wUPOfb2x0ruxzwkcZfxcktz6JIMUaPLmcNhO4bZTwA/WtDWK74xV3F2dKu8YadrFv0qhwYjVEwhA==} + winston-transport@4.8.0: + resolution: {integrity: sha512-qxSTKswC6llEMZKgCQdaWgDuMJQnhuvF5f2Nk3SNXc4byfQ+voo2mX1Px9dkNOuR8p0KAjfPG29PuYUSIb+vSA==} engines: {node: '>= 12.0.0'} - winston@3.14.2: - resolution: {integrity: sha512-CO8cdpBB2yqzEf8v895L+GNKYJiEq8eKlHU38af3snQBQ+sdAIUepjMSguOIJC7ICbzm0ZI+Af2If4vIJrtmOg==} + winston@3.16.0: + resolution: {integrity: sha512-xz7+cyGN5M+4CmmD4Npq1/4T+UZaz7HaeTlAruFUTjk79CNMq+P6H30vlE4z0qfqJ01VHYQwd7OZo03nYm/+lg==} engines: {node: '>= 12.0.0'} wrap-ansi@6.2.0: @@ -3008,8 +3005,8 @@ packages: yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - yaml@2.5.1: - resolution: {integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==} + yaml@2.6.0: + resolution: {integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==} engines: {node: '>= 14'} hasBin: true @@ -3045,7 +3042,7 @@ snapshots: '@11ty/dependency-tree-esm@1.0.0': dependencies: '@11ty/eleventy-utils': 1.0.3 - acorn: 8.12.1 + acorn: 8.14.0 dependency-graph: 0.11.0 normalize-path: 3.0.0 @@ -3059,12 +3056,12 @@ snapshots: chokidar: 3.6.0 debug: 4.3.7 dev-ip: 1.0.1 - finalhandler: 1.3.0 + finalhandler: 1.3.1 mime: 3.0.0 minimist: 1.2.8 morphdom: 2.7.4 please-upgrade-node: 3.2.0 - send: 0.19.0 + send: 0.19.1 ssri: 11.0.0 urlpattern-polyfill: 10.0.0 ws: 8.18.0 @@ -3170,13 +3167,13 @@ snapshots: enabled: 2.0.0 kuler: 2.0.0 - '@electric-sql/pglite@0.2.8': {} + '@electric-sql/pglite@0.2.12': {} - '@google-cloud/cloud-sql-connector@1.3.4(encoding@0.1.13)': + '@google-cloud/cloud-sql-connector@1.4.0(encoding@0.1.13)': dependencies: - '@googleapis/sqladmin': 19.0.0(encoding@0.1.13) + '@googleapis/sqladmin': 24.0.0(encoding@0.1.13) gaxios: 6.7.1(encoding@0.1.13) - google-auth-library: 9.14.1(encoding@0.1.13) + google-auth-library: 9.14.2(encoding@0.1.13) p-throttle: 5.1.0 transitivePeerDependencies: - encoding @@ -3193,7 +3190,7 @@ snapshots: '@google-cloud/promisify@4.0.0': {} - '@google-cloud/pubsub@4.7.1(encoding@0.1.13)': + '@google-cloud/pubsub@4.8.0(encoding@0.1.13)': dependencies: '@google-cloud/paginator': 5.0.2 '@google-cloud/precise-date': 4.0.0 @@ -3203,7 +3200,7 @@ snapshots: '@opentelemetry/semantic-conventions': 1.26.0 arrify: 2.0.1 extend: 3.0.2 - google-auth-library: 9.14.1(encoding@0.1.13) + google-auth-library: 9.14.2(encoding@0.1.13) google-gax: 4.4.1(encoding@0.1.13) heap-js: 2.5.0 is-stream-ended: 0.1.4 @@ -3213,14 +3210,14 @@ snapshots: - encoding - supports-color - '@googleapis/sqladmin@19.0.0(encoding@0.1.13)': + '@googleapis/sqladmin@24.0.0(encoding@0.1.13)': dependencies: googleapis-common: 7.2.0(encoding@0.1.13) transitivePeerDependencies: - encoding - supports-color - '@grpc/grpc-js@1.11.2': + '@grpc/grpc-js@1.12.2': dependencies: '@grpc/proto-loader': 0.7.13 '@js-sdsl/ordered-map': 4.4.2 @@ -3354,6 +3351,7 @@ snapshots: '@parcel/watcher-win32-arm64': 2.4.1 '@parcel/watcher-win32-ia32': 2.4.1 '@parcel/watcher-win32-x64': 2.4.1 + optional: true '@pkgjs/parseargs@0.11.0': optional: true @@ -3458,16 +3456,16 @@ snapshots: '@types/mdurl@2.0.0': {} - '@types/node@22.5.4': + '@types/node@22.8.6': dependencies: undici-types: 6.19.8 '@types/request@2.48.12': dependencies: '@types/caseless': 0.12.5 - '@types/node': 22.5.4 + '@types/node': 22.8.6 '@types/tough-cookie': 4.0.5 - form-data: 2.5.1 + form-data: 2.5.2 '@types/tough-cookie@4.0.5': {} @@ -3493,9 +3491,9 @@ snapshots: acorn-walk@8.3.4: dependencies: - acorn: 8.12.1 + acorn: 8.14.0 - acorn@8.12.1: {} + acorn@8.14.0: {} agent-base@6.0.2: dependencies: @@ -3529,7 +3527,7 @@ snapshots: ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.0.1 + fast-uri: 3.0.3 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 @@ -3610,7 +3608,7 @@ snapshots: ast-types@0.13.4: dependencies: - tslib: 2.7.0 + tslib: 2.8.1 async-lock@1.4.1: {} @@ -3622,11 +3620,11 @@ snapshots: asynckit@0.4.0: {} - b4a@1.6.6: {} + b4a@1.6.7: {} balanced-match@1.0.2: {} - bare-events@2.4.2: + bare-events@2.5.0: optional: true base64-js@1.5.1: {} @@ -3725,8 +3723,6 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 - bytes@3.0.0: {} - bytes@3.1.2: {} cacache@18.0.4: @@ -3758,7 +3754,7 @@ snapshots: camel-case@4.1.2: dependencies: pascal-case: 3.1.2 - tslib: 2.7.0 + tslib: 2.8.1 camelcase@6.3.0: {} @@ -3793,9 +3789,9 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - chokidar@4.0.0: + chokidar@4.0.1: dependencies: - readdirp: 4.0.1 + readdirp: 4.0.2 chownr@2.0.0: {} @@ -3912,14 +3908,14 @@ snapshots: dependencies: mime-db: 1.53.0 - compression@1.7.4: + compression@1.7.5: dependencies: - accepts: 1.3.8 - bytes: 3.0.0 + bytes: 3.1.2 compressible: 2.0.18 debug: 2.6.9 + negotiator: 0.6.4 on-headers: 1.0.2 - safe-buffer: 5.1.2 + safe-buffer: 5.2.1 vary: 1.1.2 transitivePeerDependencies: - supports-color @@ -3957,7 +3953,7 @@ snapshots: cookie-signature@1.0.6: {} - cookie@0.6.0: {} + cookie@0.7.1: {} core-util-is@1.0.3: {} @@ -4060,7 +4056,8 @@ snapshots: destroy@1.2.0: {} - detect-libc@1.0.3: {} + detect-libc@1.0.3: + optional: true dev-ip@1.0.1: {} @@ -4093,7 +4090,7 @@ snapshots: dot-case@3.0.4: dependencies: no-case: 3.0.4 - tslib: 2.7.0 + tslib: 2.8.1 dot-prop@5.3.0: dependencies: @@ -4185,7 +4182,7 @@ snapshots: esm-import-transformer@3.0.2: dependencies: - acorn: 8.12.1 + acorn: 8.14.0 esprima@4.0.1: {} @@ -4224,7 +4221,7 @@ snapshots: lodash: 4.17.21 openapi3-ts: 3.2.0 promise-breaker: 6.0.0 - pump: 3.0.0 + pump: 3.0.2 qs: 6.13.0 raw-body: 2.5.2 semver: 7.6.3 @@ -4234,14 +4231,14 @@ snapshots: exponential-backoff@3.1.1: optional: true - express@4.21.0: + express@4.21.1: dependencies: accepts: 1.3.8 array-flatten: 1.1.1 body-parser: 1.20.3 content-disposition: 0.5.4 content-type: 1.0.5 - cookie: 0.6.0 + cookie: 0.7.1 cookie-signature: 1.0.6 debug: 2.6.9 depd: 2.0.0 @@ -4296,7 +4293,7 @@ snapshots: fast-json-stable-stringify@2.1.0: {} - fast-uri@3.0.1: {} + fast-uri@3.0.3: {} fast-url-parser@1.1.3: dependencies: @@ -4332,18 +4329,6 @@ snapshots: transitivePeerDependencies: - supports-color - finalhandler@1.3.0: - dependencies: - debug: 2.6.9 - encodeurl: 1.0.2 - escape-html: 1.0.3 - on-finished: 2.4.1 - parseurl: 1.3.3 - statuses: 2.0.1 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - finalhandler@1.3.1: dependencies: debug: 2.6.9 @@ -4356,11 +4341,11 @@ snapshots: transitivePeerDependencies: - supports-color - firebase-tools@13.23.1(encoding@0.1.13): + firebase-tools@13.24.1(encoding@0.1.13): dependencies: - '@electric-sql/pglite': 0.2.8 - '@google-cloud/cloud-sql-connector': 1.3.4(encoding@0.1.13) - '@google-cloud/pubsub': 4.7.1(encoding@0.1.13) + '@electric-sql/pglite': 0.2.12 + '@google-cloud/cloud-sql-connector': 1.4.0(encoding@0.1.13) + '@google-cloud/pubsub': 4.8.0(encoding@0.1.13) abort-controller: 3.0.0 ajv: 6.12.6 archiver: 7.0.1 @@ -4379,14 +4364,14 @@ snapshots: deep-equal-in-any-order: 2.0.6 exegesis: 4.2.0 exegesis-express: 4.0.0 - express: 4.21.0 + express: 4.21.1 filesize: 6.4.0 - form-data: 4.0.0 + form-data: 4.0.1 fs-extra: 10.1.0 fuzzy: 0.1.3 gaxios: 6.7.1(encoding@0.1.13) glob: 10.4.5 - google-auth-library: 9.14.1(encoding@0.1.13) + google-auth-library: 9.14.2(encoding@0.1.13) inquirer: 8.2.6 inquirer-autocomplete-prompt: 2.0.1(inquirer@8.2.6) jsonwebtoken: 9.0.2 @@ -4395,7 +4380,7 @@ snapshots: lodash: 4.17.21 lsofi: 1.0.0 marked: 13.0.3 - marked-terminal: 7.1.0(marked@13.0.3) + marked-terminal: 7.2.1(marked@13.0.3) mime: 2.6.0 minimatch: 3.1.2 morgan: 1.10.0 @@ -4403,15 +4388,15 @@ snapshots: open: 6.4.0 ora: 5.4.1 p-limit: 3.1.0 - pg: 8.12.0 + pg: 8.13.1 portfinder: 1.0.32 progress: 2.0.3 proxy-agent: 6.4.0 retry: 0.13.1 semver: 7.6.3 - sql-formatter: 15.4.2 + sql-formatter: 15.4.5 stream-chain: 2.2.5 - stream-json: 1.8.0 + stream-json: 1.9.0 superstatic: 9.0.3(encoding@0.1.13) tar: 6.2.1 tcp-port-used: 1.0.2 @@ -4420,10 +4405,10 @@ snapshots: universal-analytics: 0.5.3 update-notifier-cjs: 5.1.6(encoding@0.1.13) uuid: 8.3.2 - winston: 3.14.2 - winston-transport: 4.7.1 + winston: 3.16.0 + winston-transport: 4.8.0 ws: 7.5.10 - yaml: 2.5.1 + yaml: 2.6.0 transitivePeerDependencies: - bufferutil - encoding @@ -4438,13 +4423,14 @@ snapshots: cross-spawn: 7.0.3 signal-exit: 4.1.0 - form-data@2.5.1: + form-data@2.5.2: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 mime-types: 2.1.35 + safe-buffer: 5.2.1 - form-data@4.0.0: + form-data@4.0.1: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 @@ -4540,14 +4526,14 @@ snapshots: jackspeak: 3.4.3 minimatch: 9.0.5 minipass: 7.1.2 - package-json-from-dist: 1.0.0 + package-json-from-dist: 1.0.1 path-scurry: 1.11.1 global-dirs@3.0.1: dependencies: ini: 2.0.0 - google-auth-library@9.14.1(encoding@0.1.13): + google-auth-library@9.14.2(encoding@0.1.13): dependencies: base64-js: 1.5.1 ecdsa-sig-formatter: 1.0.11 @@ -4561,12 +4547,12 @@ snapshots: google-gax@4.4.1(encoding@0.1.13): dependencies: - '@grpc/grpc-js': 1.11.2 + '@grpc/grpc-js': 1.12.2 '@grpc/proto-loader': 0.7.13 '@types/long': 4.0.2 abort-controller: 3.0.0 duplexify: 4.1.3 - google-auth-library: 9.14.1(encoding@0.1.13) + google-auth-library: 9.14.2(encoding@0.1.13) node-fetch: 2.7.0(encoding@0.1.13) object-hash: 3.0.0 proto3-json-serializer: 2.0.2 @@ -4581,7 +4567,7 @@ snapshots: dependencies: extend: 3.0.2 gaxios: 6.7.1(encoding@0.1.13) - google-auth-library: 9.14.1(encoding@0.1.13) + google-auth-library: 9.14.2(encoding@0.1.13) qs: 6.13.0 url-template: 2.0.8 uuid: 9.0.1 @@ -4633,7 +4619,7 @@ snapshots: '@types/hast': 3.0.4 devlop: 1.1.0 hast-util-from-parse5: 8.0.1 - parse5: 7.1.2 + parse5: 7.2.1 vfile: 6.0.3 vfile-message: 4.0.2 @@ -4670,7 +4656,7 @@ snapshots: devlop: 1.1.0 direction: 2.0.1 hast-util-has-property: 3.0.0 - hast-util-to-string: 3.0.0 + hast-util-to-string: 3.0.1 hast-util-whitespace: 3.0.0 nth-check: 2.1.1 property-information: 6.5.0 @@ -4692,7 +4678,7 @@ snapshots: stringify-entities: 4.0.4 zwitch: 2.0.4 - hast-util-to-string@3.0.0: + hast-util-to-string@3.0.1: dependencies: '@types/hast': 3.0.4 @@ -4727,7 +4713,7 @@ snapshots: entities: 4.5.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.32.0 + terser: 5.36.0 html-void-elements@3.0.0: {} @@ -4811,7 +4797,7 @@ snapshots: ansi-escapes: 4.3.2 figures: 3.2.0 inquirer: 8.2.6 - picocolors: 1.1.0 + picocolors: 1.1.1 run-async: 2.4.1 rxjs: 7.8.1 @@ -5098,7 +5084,7 @@ snapshots: lower-case@2.0.2: dependencies: - tslib: 2.7.0 + tslib: 2.8.1 lru-cache@10.4.3: {} @@ -5125,7 +5111,7 @@ snapshots: minipass-fetch: 3.0.5 minipass-flush: 1.0.5 minipass-pipeline: 1.2.4 - negotiator: 0.6.3 + negotiator: 0.6.4 proc-log: 4.2.0 promise-retry: 2.0.1 ssri: 10.0.6 @@ -5155,9 +5141,10 @@ snapshots: punycode.js: 2.3.1 uc.micro: 2.1.0 - marked-terminal@7.1.0(marked@13.0.3): + marked-terminal@7.2.1(marked@13.0.3): dependencies: ansi-escapes: 7.0.0 + ansi-regex: 6.1.0 chalk: 5.3.0 cli-highlight: 2.1.11 cli-table3: 0.6.5 @@ -5330,7 +5317,7 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - nan@2.20.0: + nan@2.22.0: optional: true nearley@2.20.1: @@ -5342,6 +5329,8 @@ snapshots: negotiator@0.6.3: {} + negotiator@0.6.4: {} + netmask@2.0.2: {} nice-try@1.0.5: {} @@ -5349,9 +5338,10 @@ snapshots: no-case@3.0.4: dependencies: lower-case: 2.0.2 - tslib: 2.7.0 + tslib: 2.8.1 - node-addon-api@7.1.1: {} + node-addon-api@7.1.1: + optional: true node-emoji@2.1.3: dependencies: @@ -5384,7 +5374,7 @@ snapshots: node-retrieve-globals@6.0.0: dependencies: - acorn: 8.12.1 + acorn: 8.14.0 acorn-walk: 8.3.4 esm-import-transformer: 3.0.2 @@ -5445,7 +5435,7 @@ snapshots: oniguruma-to-js@0.4.3: dependencies: - regex: 4.3.2 + regex: 4.4.0 open@6.4.0: dependencies: @@ -5453,7 +5443,7 @@ snapshots: openapi3-ts@3.2.0: dependencies: - yaml: 2.5.1 + yaml: 2.6.0 ora@5.4.1: dependencies: @@ -5500,12 +5490,12 @@ snapshots: degenerator: 5.0.1 netmask: 2.0.2 - package-json-from-dist@1.0.0: {} + package-json-from-dist@1.0.1: {} param-case@3.0.4: dependencies: dot-case: 3.0.4 - tslib: 2.7.0 + tslib: 2.8.1 parse-srcset@1.0.2: {} @@ -5517,7 +5507,7 @@ snapshots: parse5@6.0.1: {} - parse5@7.1.2: + parse5@7.2.1: dependencies: entities: 4.5.0 @@ -5526,7 +5516,7 @@ snapshots: pascal-case@3.1.2: dependencies: no-case: 3.0.4 - tslib: 2.7.0 + tslib: 2.8.1 path-key@2.0.1: {} @@ -5541,22 +5531,22 @@ snapshots: path-to-regexp@0.1.7: {} - path-to-regexp@1.8.0: + path-to-regexp@1.9.0: dependencies: isarray: 0.0.1 pg-cloudflare@1.1.1: optional: true - pg-connection-string@2.6.4: {} + pg-connection-string@2.7.0: {} pg-int8@1.0.1: {} - pg-pool@3.6.2(pg@8.12.0): + pg-pool@3.7.0(pg@8.13.1): dependencies: - pg: 8.12.0 + pg: 8.13.1 - pg-protocol@1.6.1: {} + pg-protocol@1.7.0: {} pg-types@2.2.0: dependencies: @@ -5566,11 +5556,11 @@ snapshots: postgres-date: 1.0.7 postgres-interval: 1.2.0 - pg@8.12.0: + pg@8.13.1: dependencies: - pg-connection-string: 2.6.4 - pg-pool: 3.6.2(pg@8.12.0) - pg-protocol: 1.6.1 + pg-connection-string: 2.7.0 + pg-pool: 3.7.0(pg@8.13.1) + pg-protocol: 1.7.0 pg-types: 2.2.0 pgpass: 1.0.5 optionalDependencies: @@ -5580,7 +5570,7 @@ snapshots: dependencies: split2: 4.2.0 - picocolors@1.1.0: {} + picocolors@1.1.1: {} picomatch@2.3.1: {} @@ -5666,7 +5656,7 @@ snapshots: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 - '@types/node': 22.5.4 + '@types/node': 22.8.6 long: 5.2.3 proxy-addr@2.0.7: @@ -5691,7 +5681,7 @@ snapshots: prr@1.0.1: {} - pump@3.0.0: + pump@3.0.2: dependencies: end-of-stream: 1.4.4 once: 1.4.0 @@ -5740,7 +5730,7 @@ snapshots: re2@1.21.4: dependencies: install-artifact-from-github: 1.3.5 - nan: 2.20.0 + nan: 2.22.0 node-gyp: 10.2.0 transitivePeerDependencies: - supports-color @@ -5778,9 +5768,9 @@ snapshots: dependencies: picomatch: 2.3.1 - readdirp@4.0.1: {} + readdirp@4.0.2: {} - regex@4.3.2: {} + regex@4.4.0: {} registry-auth-token@5.0.2: dependencies: @@ -5843,7 +5833,7 @@ snapshots: rxjs@7.8.1: dependencies: - tslib: 2.7.0 + tslib: 2.8.1 safe-buffer@5.1.2: {} @@ -5853,12 +5843,13 @@ snapshots: safer-buffer@2.1.2: {} - sass@1.80.5: + sass@1.80.6: dependencies: - '@parcel/watcher': 2.4.1 - chokidar: 4.0.0 + chokidar: 4.0.1 immutable: 4.3.7 source-map-js: 1.2.1 + optionalDependencies: + '@parcel/watcher': 2.4.1 section-matter@1.0.0: dependencies: @@ -5895,6 +5886,24 @@ snapshots: transitivePeerDependencies: - supports-color + send@0.19.1: + dependencies: + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 0.5.2 + http-errors: 2.0.0 + mime: 1.6.0 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.2.1 + statuses: 2.0.1 + transitivePeerDependencies: + - supports-color + serve-static@1.16.2: dependencies: encodeurl: 2.0.0 @@ -5995,7 +6004,7 @@ snapshots: sprintf-js@1.1.3: {} - sql-formatter@15.4.2: + sql-formatter@15.4.5: dependencies: argparse: 2.0.1 get-stdin: 8.0.0 @@ -6022,19 +6031,19 @@ snapshots: dependencies: stubs: 3.0.0 - stream-json@1.8.0: + stream-json@1.9.0: dependencies: stream-chain: 2.2.5 stream-shift@1.0.3: {} - streamx@2.20.0: + streamx@2.20.1: dependencies: fast-fifo: 1.3.2 queue-tick: 1.0.1 - text-decoder: 1.1.1 + text-decoder: 1.2.1 optionalDependencies: - bare-events: 2.4.2 + bare-events: 2.5.0 string-width@4.2.3: dependencies: @@ -6079,7 +6088,7 @@ snapshots: dependencies: basic-auth-connect: 1.1.0 commander: 10.0.1 - compression: 1.7.4 + compression: 1.7.5 connect: 3.7.0 destroy: 1.2.0 fast-url-parser: 1.1.3 @@ -6092,7 +6101,7 @@ snapshots: morgan: 1.10.0 on-finished: 2.4.1 on-headers: 1.0.2 - path-to-regexp: 1.8.0 + path-to-regexp: 1.9.0 router: 1.3.8 update-notifier-cjs: 5.1.6(encoding@0.1.13) optionalDependencies: @@ -6112,9 +6121,9 @@ snapshots: tar-stream@3.1.7: dependencies: - b4a: 1.6.6 + b4a: 1.6.7 fast-fifo: 1.3.2 - streamx: 2.20.0 + streamx: 2.20.1 tar@6.2.1: dependencies: @@ -6143,16 +6152,14 @@ snapshots: - encoding - supports-color - terser@5.32.0: + terser@5.36.0: dependencies: '@jridgewell/source-map': 0.3.6 - acorn: 8.12.1 + acorn: 8.14.0 commander: 2.20.3 source-map-support: 0.5.21 - text-decoder@1.1.1: - dependencies: - b4a: 1.6.6 + text-decoder@1.2.1: {} text-hex@1.0.0: {} @@ -6193,7 +6200,7 @@ snapshots: triple-beam@1.4.1: {} - tslib@2.7.0: {} + tslib@2.8.1: {} tsscmp@1.0.6: {} @@ -6359,13 +6366,13 @@ snapshots: dependencies: string-width: 4.2.3 - winston-transport@4.7.1: + winston-transport@4.8.0: dependencies: logform: 2.6.1 - readable-stream: 3.6.2 + readable-stream: 4.5.2 triple-beam: 1.4.1 - winston@3.14.2: + winston@3.16.0: dependencies: '@colors/colors': 1.6.0 '@dabh/diagnostics': 2.0.3 @@ -6377,7 +6384,7 @@ snapshots: safe-stable-stringify: 2.5.0 stack-trace: 0.0.10 triple-beam: 1.4.1 - winston-transport: 4.7.1 + winston-transport: 4.8.0 wrap-ansi@6.2.0: dependencies: @@ -6418,7 +6425,7 @@ snapshots: yallist@4.0.0: {} - yaml@2.5.1: {} + yaml@2.6.0: {} yargs-parser@20.2.9: {} diff --git a/src/_data/glossary.yml b/src/_data/glossary.yml index 4808711b46..56dcd9bedc 100644 --- a/src/_data/glossary.yml +++ b/src/_data/glossary.yml @@ -1,3 +1,21 @@ +- term: "Assist" + short_description: |- + An automated, local code edit targeted at making common improvements to code. + long_description: |- + An assist is an automated, local code edit targeted at making common + improvements to code. + Examples of assists include converting `switch` statements to `switch` + expressions, reversing the `then` and `else` blocks in an `if` statement, + and inserting widgets into a widget structure. + related_links: + - text: "Refactor" + link: "#refactor" + labels: + - "tools" + - "analyzer" + alternate: + - "Quick assist" + - term: "Constant context" short_description: |- A region of code where the const keyword is implied and @@ -371,6 +389,36 @@ - "language" - "libraries" +- term: "Quick fix" + short_description: |- + An automated, local code edit targeted at fixing the issue reported by a + specific diagnostic. + related_links: + - text: "Quick fixes for analysis issues" + link: "https://medium.com/dartlang/quick-fixes-for-analysis-issues-c10df084971a" + - text: "Diagnostic messages" + link: "/tools/diagnostic-messages" + - text: "Linter rules" + link: "/tools/linter-rules" + labels: + - "tools" + - "understanding diagnostics" + +- term: "Refactor" + short_description: |- + A code edit targeted at modifications that are either non-local or that + require user interaction. + long_description: |- + A refactor is a code edit targeted at modifications that are either non-local + or that require user interaction. + Examples of refactors include renaming, removing, or extracting code. + related_links: + - text: "Assist" + link: "#assist" + labels: + - "tools" + - "analysis" + - term: "Refutable pattern" short_description: |- A pattern that can be tested against a value. diff --git a/src/content/community/index.md b/src/content/community/index.md index e3bc6a8370..b88b85fec5 100644 --- a/src/content/community/index.md +++ b/src/content/community/index.md @@ -38,6 +38,9 @@ Get answers and connect with Dart developers. [Dart on Reddit](https://www.reddit.com/r/dartlang) : The subreddit for all things related to Dart. +[It's All Widgets Flutter Forum](https://forum.itsallwidgets.com/) +: Asynchronously discuss anything Flutter or Dart related. + [Flutter communities]({{site.flutter}}/community#community-grid) : Discuss and get help with Flutter. diff --git a/src/content/effective-dart/design.md b/src/content/effective-dart/design.md index 47f6c6ca31..cf5e3d5b94 100644 --- a/src/content/effective-dart/design.md +++ b/src/content/effective-dart/design.md @@ -1200,10 +1200,10 @@ makeGreeting(String who) { } ``` -Note that this guideline only applies to *named* function declarations: -top-level functions, methods, and local functions. Anonymous function -expressions infer a return type from their body. In fact, the syntax doesn't -even allow a return type annotation. +Note that this guideline only applies to *non-local* function declarations: +top-level, static, and instance methods and getters. Local functions and +anonymous function expressions infer a return type from their body. In fact, the +anonymous function syntax doesn't even allow a return type annotation. ### DO annotate parameter types on function declarations diff --git a/src/content/language/built-in-types.md b/src/content/language/built-in-types.md index 1b2f628e56..175af33b06 100644 --- a/src/content/language/built-in-types.md +++ b/src/content/language/built-in-types.md @@ -159,7 +159,7 @@ assert((3 & 4) == 0); // 0011 & 0100 == 0000 For more examples, see the [bitwise and shift operator][] section. -Literal numbers are compile-time constants. +Number literals are compile-time constants. Many arithmetic expressions are also compile-time constants, as long as their operands are compile-time constants that evaluate to numbers. @@ -173,6 +173,26 @@ const msUntilRetry = secondsUntilRetry * msPerSecond; For more information, see [Numbers in Dart][dart-numbers]. +You can use one or more underscores (`_`) as digit separators +to make long number literals more readable. +Multiple digit separators allow for higher level grouping. + +{% comment %} +Attach code excerpt misc/lib/language_tour/built_in_types.dart (digit-separators) +when feature is stable: +{% endcomment %} + +```dart +var n1 = 1_000_000; +var n2 = 0.000_000_000_01; +var n3 = 0x00_14_22_01_23_45; // MAC address +var n4 = 555_123_4567; // US Phone number +var n5 = 100__000_000__000_000; // one hundred million million! +``` + +:::version-note +Using digit separators requires a [language version][] of at least 3.6.0. +::: ## Strings @@ -254,7 +274,7 @@ var s = r'In a raw string, not even \n gets special treatment.'; See [Runes and grapheme clusters](#runes-and-grapheme-clusters) for details on how to express Unicode characters in a string. -Literal strings are compile-time constants, +String literals are compile-time constants, as long as any interpolated expression is a compile-time constant that evaluates to null or a numeric, string, or boolean value. @@ -415,3 +435,4 @@ Symbol literals are compile-time constants. [characters API]: {{site.pub-api}}/characters [characters example]: {{site.pub-pkg}}/characters/example [`Symbol`]: {{site.dart-api}}/{{site.sdkInfo.channel}}/dart-core/Symbol-class.html +[language version]: /guides/language/evolution#language-versioning \ No newline at end of file diff --git a/src/content/resources/glossary.md b/src/content/resources/glossary.md index c427870a6c..535257f436 100644 --- a/src/content/resources/glossary.md +++ b/src/content/resources/glossary.md @@ -4,6 +4,10 @@ description: A glossary reference for terminology used across dart.dev. body_class: glossary-page --- +{% comment %} + Write glossary entries into the src/_data/glossary.yml file. +{% endcomment -%} + The following are definitions of terms used across the Dart documentation. {% assign sorted_terms = glossary | sort: "term" %} diff --git a/src/content/tools/pub/cmd/pub-upgrade.md b/src/content/tools/pub/cmd/pub-upgrade.md index ccbb5b420b..98955f7d39 100644 --- a/src/content/tools/pub/cmd/pub-upgrade.md +++ b/src/content/tools/pub/cmd/pub-upgrade.md @@ -56,12 +56,21 @@ $ dart pub upgrade test args Dependencies upgraded! ``` -Upgrading a dependency upgrades its transitive dependencies to their latest -versions as well. Usually, no other dependencies are updated; they stay at the +Usually, no other dependencies are upgraded; they stay at the versions that are locked in the lockfile. However, if the requested upgrades cause incompatibilities with these locked versions, they are selectively unlocked until a compatible set of versions is found. +This means that upgrading a specific dependency does not by default upgrade its +transitive dependencies. + +To upgrade a specific dependency and all its transitive dependencies to their +latest versions use the `--unlock-transitive` flag. + +```console +$ dart pub upgrade --unlock-transitive test args +``` + ## Getting a new dependency @@ -145,5 +154,10 @@ Updates the lower bounds of dependencies in `pubspec.yaml` to match the resolved versions, and returns a list of the changed constraints. Can be applied to [specific dependencies](#upgrading-specific-dependencies). +### `--unlock-transitive` + +When used with a list of packages to unlock, first the transitive closure of +those packages' dependencies (in the current resolution) is computed, +and then all those packages are unlocked. {% render 'pub-problems.md' %} diff --git a/src/content/tools/pub/custom-package-repositories.md b/src/content/tools/pub/custom-package-repositories.md index 954002f3f9..463870971a 100644 --- a/src/content/tools/pub/custom-package-repositories.md +++ b/src/content/tools/pub/custom-package-repositories.md @@ -215,10 +215,6 @@ your own custom package repository:
  • Inedo ProGet logo Inedo ProGet -
  • -
  • - JetBrains Space logo - JetBrains Space
  • JFrog logo diff --git a/tool/dart_site/lib/src/commands/serve.dart b/tool/dart_site/lib/src/commands/serve.dart index 8d73041728..80c68b7e35 100644 --- a/tool/dart_site/lib/src/commands/serve.dart +++ b/tool/dart_site/lib/src/commands/serve.dart @@ -13,7 +13,12 @@ final class ServeSiteCommand extends Command { Future run() async { final process = await Process.start( 'npx', - const ['eleventy', '--serve', '--incremental'], + [ + 'eleventy', + '--serve', + '--incremental', + '--port=${Platform.environment['PORT'] ?? 4000}' + ], environment: const { 'PRODUCTION': 'false', },