diff --git a/.github/workflows/docker-build-experimental.yml b/.github/workflows/docker-build-experimental.yml index 72c27f2529..714be9abdd 100644 --- a/.github/workflows/docker-build-experimental.yml +++ b/.github/workflows/docker-build-experimental.yml @@ -3,7 +3,7 @@ name: Publish experimental Docker image on: push: branches: - - span-query-optimization + - feat/annotations jobs: push_to_registry: diff --git a/.github/workflows/playwright.yaml b/.github/workflows/playwright.yaml index 02db651310..0d6381af8a 100644 --- a/.github/workflows/playwright.yaml +++ b/.github/workflows/playwright.yaml @@ -2,9 +2,9 @@ name: Playwright Tests on: push: - branches: [main, prompts] + branches: [main, feat/annotations] pull_request: - branches: [main, prompts] + branches: [main, feat/annotations] jobs: e2e-test: timeout-minutes: 60 diff --git a/.github/workflows/python-CI.yml b/.github/workflows/python-CI.yml index 642d8a758e..569141d5da 100644 --- a/.github/workflows/python-CI.yml +++ b/.github/workflows/python-CI.yml @@ -2,10 +2,11 @@ name: Python CI on: push: - branches: [main, sessions] + branches: [main, feat/annotations] pull_request: paths: - "**/*.py" + - "**/*.ipynb" - "src/**" - "tests/**" - "tutorials/**" @@ -62,6 +63,15 @@ jobs: phoenix_otel: - "packages/phoenix-otel/**" - "tox.ini" + - name: Print Filters + run: | + echo "ipynb: ${{ steps.filter.outputs.ipynb }}" + echo "ipynb_files: ${{ steps.filter.outputs.ipynb_files }}" + echo "proto: ${{ steps.filter.outputs.proto }}" + echo "phoenix: ${{ steps.filter.outputs.phoenix }}" + echo "phoenix_client: ${{ steps.filter.outputs.phoenix_client }}" + echo "phoenix_evals: ${{ steps.filter.outputs.phoenix_evals }}" + echo "phoenix_otel: ${{ steps.filter.outputs.phoenix_otel }}" phoenix-client: name: Phoenix Client @@ -70,8 +80,8 @@ jobs: if: ${{ needs.changes.outputs.phoenix_client == 'true' }} strategy: matrix: - py: [ 3.9, 3.12 ] - os: [ ubuntu-latest, windows-latest, macos-13 ] + py: [3.9, 3.12] + os: [ubuntu-latest, windows-latest, macos-13] steps: - uses: actions/checkout@v4 with: @@ -139,8 +149,8 @@ jobs: if: ${{ needs.changes.outputs.ipynb == 'true' }} strategy: matrix: - py: [ 3.13 ] - os: [ ubuntu-latest ] + py: [3.13] + os: [ubuntu-latest] runs-on: ${{ matrix.os }} steps: - name: Checkout repository @@ -506,8 +516,8 @@ jobs: strategy: fail-fast: false matrix: - py: [ 3.9 ] - pkg: [ openai, anthropic, google_generativeai ] + py: [3.9] + pkg: [openai, anthropic, google_generativeai] steps: - name: Checkout repository uses: actions/checkout@v4 diff --git a/.github/workflows/typescript-CI.yml b/.github/workflows/typescript-CI.yml index 1df6bfc3ab..89d423d999 100644 --- a/.github/workflows/typescript-CI.yml +++ b/.github/workflows/typescript-CI.yml @@ -2,7 +2,7 @@ name: Typescript CI on: push: - branches: [main, sessions] + branches: [main, feat/annotations] pull_request: paths: - "app/**" diff --git a/.github/workflows/typescript-packages-CI.yml b/.github/workflows/typescript-packages-CI.yml index a5b7ccc9e8..dd59454e01 100644 --- a/.github/workflows/typescript-packages-CI.yml +++ b/.github/workflows/typescript-packages-CI.yml @@ -2,7 +2,7 @@ name: Typescript Packages CI on: push: - branches: [main, prompts] + branches: [main, feat/annotations] pull_request: paths: - "js/**" diff --git a/app/.storybook/preview.tsx b/app/.storybook/preview.tsx index 505f4bdf6d..019661a9cb 100644 --- a/app/.storybook/preview.tsx +++ b/app/.storybook/preview.tsx @@ -30,7 +30,9 @@ const preview: Preview = { }, }, initialGlobals: { - theme: "light", + theme: window.matchMedia("(prefers-color-scheme: dark)").matches + ? "dark" + : "light", }, decorators: [ // 👇 Defining the decorator in the preview file applies it to all stories diff --git a/app/package.json b/app/package.json index 416cc335e3..ac6c0acef1 100644 --- a/app/package.json +++ b/app/package.json @@ -32,6 +32,8 @@ "@uiw/react-codemirror": "^4.23.0", "codemirror-json-schema": "^0.7.8", "copy-to-clipboard": "^3.3.3", + "cron-parser": "^5.1.1", + "cronstrue": "^2.59.0", "d3-format": "^3.1.0", "d3-scale-chromatic": "^3.1.0", "d3-time-format": "^4.1.0", @@ -40,7 +42,8 @@ "normalize.css": "^8.0.1", "polished": "^4.3.1", "react": "~18.3.1", - "react-aria-components": "^1.7.0", + "react-aria": "^3.38.1", + "react-aria-components": "^1.7.1", "react-dom": "~18.3.1", "react-error-boundary": "^4.0.13", "react-hook-form": "^7.52.1", diff --git a/app/pnpm-lock.yaml b/app/pnpm-lock.yaml index add63f896c..7ec829809f 100644 --- a/app/pnpm-lock.yaml +++ b/app/pnpm-lock.yaml @@ -93,6 +93,12 @@ importers: copy-to-clipboard: specifier: ^3.3.3 version: 3.3.3 + cron-parser: + specifier: ^5.1.1 + version: 5.1.1 + cronstrue: + specifier: ^2.59.0 + version: 2.59.0 d3-format: specifier: ^3.1.0 version: 3.1.0 @@ -117,9 +123,12 @@ importers: react: specifier: ~18.3.1 version: 18.3.1 + react-aria: + specifier: ^3.38.1 + version: 3.38.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-aria-components: - specifier: ^1.7.0 - version: 1.7.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: ^1.7.1 + version: 1.7.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-dom: specifier: ~18.3.1 version: 18.3.1(react@18.3.1) @@ -967,8 +976,8 @@ packages: engines: {node: '>=18'} hasBin: true - '@react-aria/autocomplete@3.0.0-beta.0': - resolution: {integrity: sha512-8uqLicU2QlAtXspqIPbG2H2dqndFOnEwOf1bfmqI+9EjIBjQTQKbd4YBle++ZdhSTLKTOK6DM3ZkzfsoNk5DsQ==} + '@react-aria/autocomplete@3.0.0-beta.1': + resolution: {integrity: sha512-ZeVR1tKJOZK5/RTuN8eprlP1lyeihdDfDYPBkdg2iT5h775LSZyOingPux9aLtdqt/uj6JIS5amK9ErI7+axug==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -978,8 +987,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/breadcrumbs@3.5.21': - resolution: {integrity: sha512-Sg9nQIcKqHInXqTPml4uuf/2goEi9emPa9z/IGk6nw4kkZJuQYiqYvd5nCpcSqDfB2cWiJ5QZ50JIsKuTdBQpw==} + '@react-aria/breadcrumbs@3.5.22': + resolution: {integrity: sha512-Jhx3eJqvuSUFL5/TzJ7EteluySdgKVkYGJ72Jz6AdEkiuoQAFbRZg4ferRIXQlmFL2cj7Z3jo8m8xGitebMtgw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -989,44 +998,44 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/button@3.12.0': - resolution: {integrity: sha512-obnK2vjQQdoOXMIPFy8PZSI8vET+LIeQeh3gjQfRcbtcVE6xT1drDARm6e36cunI2Up99e0yVBBWqqegNqKGQw==} + '@react-aria/button@3.12.1': + resolution: {integrity: sha512-IgCENCVUzjfI4nVgJ8T1z2oD81v3IO2Ku96jVljqZ/PWnFACsRikfLeo8xAob3F0LkRW4CTK4Tjy6BRDsy2l6A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/calendar@3.7.1': - resolution: {integrity: sha512-0GN2MJNExA5rJbciVdEysmFfmcSEeGfIcFMid1xp82nhJTyWoSpdJG76Q/bLO8ADoBEhRPHsnItyVwKdHMSVsA==} + '@react-aria/calendar@3.7.2': + resolution: {integrity: sha512-q16jWzBCoMoohOF75rJbqh+4xlKOhagPC96jsARZmaqWOEHpFYGK/1rH9steC5+Dqe7y1nipAoLRynm18rrt3w==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/checkbox@3.15.2': - resolution: {integrity: sha512-vJf91ToLN+BHfJUbulKBxN2POB7XzIb/3whF+fSk6wSld2vtFjQ80SQfz5HktYG/Af5VccxyCg70dp4moLvsTw==} + '@react-aria/checkbox@3.15.3': + resolution: {integrity: sha512-/m5JYoGsi5L0NZnacgqEcMqBo6CcTmsJ9nAY/07MDCUJBcL/Xokd8cL/1K21n6K69MiCPcxORbSBdxJDm9dR0A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/collections@3.0.0-beta.0': - resolution: {integrity: sha512-2ra5nq44Dri8BhjhPEgA2f27WJVFCXnOqJhvRYGnLA/qmPnPprkzdAStug5+JXzogcvcZQ+Msk2nku4zprGQlw==} + '@react-aria/collections@3.0.0-beta.1': + resolution: {integrity: sha512-udrHajGknkDioGbuqOdWjQ2P7J6fYGlkVGuIJwLxML+WgrroC+i76A4BBOD4ifJKxVAZ8TMyGSztt4RUdn+jDA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/color@3.0.4': - resolution: {integrity: sha512-enKb+TXAtqP0+UUIxX9Ss/5aLU2i6IF1pmTxsjIYT/RfM52eaP+o088KPDlmVFx3HYQxjK85XmAlBlSwm859Qg==} + '@react-aria/color@3.0.5': + resolution: {integrity: sha512-F+by1SOvH+qr47jhaZUYLCYMjRFxEBiG2UpNyd0iByIOweeXnU9sRHRAjLSWx/nULB6ZrUhNzE3XhI0SoZyHUw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/combobox@3.12.0': - resolution: {integrity: sha512-p4WBfmtigEL+MwAKa4wdTnLl4kTnGvek/WjhUDdSF2vcRJi7NmvN4HwzgE4L4TcGISfbOc+OUh6jGemu1uV4lA==} + '@react-aria/combobox@3.12.1': + resolution: {integrity: sha512-Al43cVQ2XiuPTCZ8jhz5Vmoj5Vqm6GADBtrL+XHZd7lM1gkD3q27GhKYiEt0jrcoBjjdqIiYWEaFLYg5LSQPzA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/datepicker@3.14.0': - resolution: {integrity: sha512-jRyymreuDy6/BbGrLHiaATGjZZhdnkEUujZuolU+8FXmCKkEQwxZKa9KfjK4UA3h2sytypK1vU7cQjQH4b36cA==} + '@react-aria/datepicker@3.14.1': + resolution: {integrity: sha512-77HaB+dFaMu7OpDQqjDiyZdaJlkwMgQHjTRvplBVc3Pau1sfQ1LdFC4+ZAXSbQTVSYt6GaN9S2tL4qoc+bO05w==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1037,20 +1046,20 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/dialog@3.5.22': - resolution: {integrity: sha512-mW1cnfy+mQUKXmyXD27z4S8Yvs1HCmum15yy76UNQv6KVFO26zVZ12jkT7pDeDl3YpR6hCeT+kD47j1lDDX/qg==} + '@react-aria/dialog@3.5.23': + resolution: {integrity: sha512-ud8b4G5vcFEZPEjzdXrjOadwRMBKBDLiok6lIl1rsPkd1qnLMFxsl3787kct1Ex0PVVKOPlcH7feFw+1T7NsLw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/disclosure@3.0.2': - resolution: {integrity: sha512-5+PBPGZkPStMYzz1dQsUHORiOG3vLRdv4Q4kfsd6ZKRIqEsRLKL+lciw8kjb7E9ixt+2r0gjearkqG2vVPf33w==} + '@react-aria/disclosure@3.0.3': + resolution: {integrity: sha512-YMZG6NYugRMTElq4bspstML15KFUwZ+ZVUTSQHLLLLnwxkj+R9NbsDonMkH6lpgC02ru0Kgo2+1NljIGz9a5/Q==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/dnd@3.9.0': - resolution: {integrity: sha512-vQrcNpDlFCjICD3hO7iugDblAw8+n/1Kka2hubRbsrignNIHlMJNs5/TpK2Id6xgz37LmBaf7lEwkH87x1tZmQ==} + '@react-aria/dnd@3.9.1': + resolution: {integrity: sha512-Rg43C+MQSr7IN1wv0iAemW59RANE39TsVs1QX9ryRh0Unc14jnm+GhZ928XNuu/rJ6BMUM8Cb9uQuYcVPgeDxA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1060,8 +1069,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/focus@3.20.0': - resolution: {integrity: sha512-KXZCwWzwnmtUo6xhnyV26ptxlxmqd0Reez7axduqqqeDDgDZOVscoo/5gFg71fdPZmnDC8MyUK1vxSbMhOTrGg==} + '@react-aria/focus@3.20.1': + resolution: {integrity: sha512-lgYs+sQ1TtBrAXnAdRBQrBo0/7o5H6IrfDxec1j+VRpcXL0xyk0xPq+m3lZp8typzIghqDgpnKkJ5Jf4OrzPIw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1071,20 +1080,20 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/form@3.0.13': - resolution: {integrity: sha512-f7zoFMQYBRWhKFX14rlFjSUDbNAvNMLpWRKVP3O0rUYTxh95iF5tcfUk5+lxWkVfmVj8S4O8du0ccv/ZQjPsYg==} + '@react-aria/form@3.0.14': + resolution: {integrity: sha512-UYoqdGetKV+4lwGnJ22sWKywobOWYBcOetiBYTlrrnCI6e5j1Jk5iLkLvesCOoI7yfWIW9Ban5Qpze5MUrXUhQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/grid@3.12.0': - resolution: {integrity: sha512-w1hVZP73QX/9YCc9pXBJzT71m3mKAHcNI68Z25NbQqwr774b5g1fdcO8o7knnlKXZVsM+Vz30kdRP8iG5GqY6A==} + '@react-aria/grid@3.12.1': + resolution: {integrity: sha512-f0Sx/O6VVjNcg5xq0cLhA7QSCkZodV+/Y0UXJTg/NObqgPX/tqh/KNEy7zeVd22FS6SUpXV+fJU99yLPo37rjQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/gridlist@3.11.0': - resolution: {integrity: sha512-B4wt/2t6BD3TEAj4lycpT3On3TeFG+T9bmsdz0jeMVnIu4HLL0XX4owBKaNQ7qkTDhlgKn96VotQV/ZAiTi1bA==} + '@react-aria/gridlist@3.11.1': + resolution: {integrity: sha512-x2lrQO0kC+kdoCH+iUY6VsgoJlZ/x/w10dKc66npXeVC2EHo2InJDINt9VEIaANnh9i7TiTthdQVeePCP22tMQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1094,8 +1103,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/i18n@3.12.6': - resolution: {integrity: sha512-I2Qz1vAlgdeW2GUMLhHucYhk514/BRuEzvH1iih8qeqvv0gEbKdSIjPJUomW+WzYVmJ2/bwKQAr7otr2fNcbrw==} + '@react-aria/i18n@3.12.7': + resolution: {integrity: sha512-eLbYO2xrpeOKIEmLv2KD5LFcB0wltFqS+pUjsOzkKZg6H3b6AFDmJPxr/a0x2KGHtpGJvuHwCSbpPi9PzSSQLg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1105,8 +1114,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/interactions@3.24.0': - resolution: {integrity: sha512-6Zdhp1pswyPgbwEWzvXARdKAWPjP7mACczoIUvlEQiMsX04fuizBiBLAA+W/5mPe17pbJYHA/rxZF5Y5m+M0Ng==} + '@react-aria/interactions@3.24.1': + resolution: {integrity: sha512-OWEcIC6UQfWq4Td5Ptuh4PZQ4LHLJr/JL2jGYvuNL6EgL3bWvzPrRYIF/R64YbfVxIC7FeZpPSkS07sZ93/NoA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1116,28 +1125,28 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/label@3.7.15': - resolution: {integrity: sha512-jbSxijCLHdQ/HX0yyhrsY0ypZled5omAK7Eh+Z6vW0qpoqvM1rR/ChaoUje9tW5FmMDjafbt905RUxy0xnMQ1A==} + '@react-aria/label@3.7.16': + resolution: {integrity: sha512-tPog3rc5pQ9s2/5bIBtmHtbj+Ebqs2yyJgJdFjZ1/HxrjF8HMrgtBPHCn/70YD5XvmuC3OSkua84kLjNX5rBbA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/landmark@3.0.0': - resolution: {integrity: sha512-2rJwAQkk0HeAtvI7b47f4esRt9XYeP7GnMYGaILBBSy5aUi85B57ZyqF6RmrKq0z61ZyH5+zW/YK+9Wb/ZK7aA==} + '@react-aria/landmark@3.0.1': + resolution: {integrity: sha512-rsbpmDfI8wmTcsOCaLdI2WuvM4z4yBZyOhMSdIxzKxxD0XPM03BBlegPqxZ/VisSwvXT8VB38r5STzmpH3ocLg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/link@3.7.7': - resolution: {integrity: sha512-eVBRcHKhNSsATYWv5wRnZXRqPVcKAWWakyvfrYePIKpC3s4BaHZyTGYdefk8ZwZdEOuQZBqLMnjW80q1uhtkuA==} + '@react-aria/link@3.7.10': + resolution: {integrity: sha512-prf7s7O1PHAtA+H2przeGr8Ig4cBjk1f0kO0bQQAC3QvVOOUO7WLNU/N+xgOMNkCKEazDl21QM1o0bDRQCcXZg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/link@3.7.9': - resolution: {integrity: sha512-2LE3p5Gqp1Tl/3JF4CmeJT3RsdDBawBaIMlqiOT7t505z1TZI8ygHHq5FFok8FMwpy2yxpqRNW9jDa3gZj575w==} + '@react-aria/link@3.7.7': + resolution: {integrity: sha512-eVBRcHKhNSsATYWv5wRnZXRqPVcKAWWakyvfrYePIKpC3s4BaHZyTGYdefk8ZwZdEOuQZBqLMnjW80q1uhtkuA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 '@react-aria/listbox@3.13.6': resolution: {integrity: sha512-6hEXEXIZVau9lgBZ4VVjFR3JnGU+fJaPmV3HP0UZ2ucUptfG0MZo24cn+ZQJsWiuaCfNFv5b8qribiv+BcO+Kg==} @@ -1145,8 +1154,8 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/listbox@3.14.1': - resolution: {integrity: sha512-4uiY7HG4ekF37wNX5hHEMhshkXrU1U4593LVNYjUZHizcB1ZahXzo/F0T3qpeNo+/j89ls8qhDHx/bGIWNj1aQ==} + '@react-aria/listbox@3.14.2': + resolution: {integrity: sha512-pIwMNZs2WaH+XIax2yemI2CNs5LVV5ooVgEh7gTYoAVWj2eFa3Votmi54VlvkN937bhD5+blH32JRIu9U8XqVw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1160,20 +1169,20 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/menu@3.18.0': - resolution: {integrity: sha512-UvcGwx5mGWpZF/d1cQsvCzt0gG5NKbrgAe9B5pumzMfWyXpbkRB0v90GnUlPShbemLhYmWCnTXlN9ogEdAV1dw==} + '@react-aria/menu@3.18.1': + resolution: {integrity: sha512-czdJFNBW/B7QodyLDyQ+TvT8tZjCru7PrhUDkJS36ie/pTeQDFpIczgYjmKfJs5pP6olqLKXbwJy1iNTh01WTQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/meter@3.4.20': - resolution: {integrity: sha512-JiDKZMs4W1eqJoUQvhY15pRFluh15JPiU9iNbqKOnV5nXdQSIAfGBe6jXGVVE8yb54v6OHG0Gcltl89iN2oFzQ==} + '@react-aria/meter@3.4.21': + resolution: {integrity: sha512-IjV4RdotPG3QC9Zjc8VaT+rvypB6yh9pUiEAjJEFhga+ORN/EWBLI8LHKhfep+50z8hH6AP3HLaKBUdZu+4WyQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/numberfield@3.11.11': - resolution: {integrity: sha512-LKPU+l4YzZMcfuBs06G3+FIagvW3ZxYy7g5s7VRfktGAQkbCMQt3e8felk2aSdEK0kD6fXh/EiATxSgKNKnNAA==} + '@react-aria/numberfield@3.11.12': + resolution: {integrity: sha512-VQ4dfaf+k7n2tbP8iB1OLFYTLCh9ReyV7dNLrDvH24V7ByaHakobZjwP8tF6CpvafNYaXPUflxnHpIgXvN3QYA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1184,8 +1193,8 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/overlays@3.26.0': - resolution: {integrity: sha512-Rr3yoyGwXzp446QK6CwnjJl9ZfH/Cq2o01XQmMjya2gmk5N4aefRORg7eRoVy5EVfecIH/HJVg0BKEjXQOp4nA==} + '@react-aria/overlays@3.26.1': + resolution: {integrity: sha512-AtQ0mp+H0alFFkojKBADEUIc1AKFsSobH4QNoxQa3V4bZKQoXxga7cRhD5RRYanu3XCQOkIxZJ3vdVK/LVVBXA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1195,8 +1204,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/progress@3.4.20': - resolution: {integrity: sha512-N3X8R5G+/CPMnRqNZ1f68t2d5nGUqJH9GDw67tBUzr2Bti/0hcC6euGTOZWAQw1EDX8rZdkLY7qM7n9sX9GTJQ==} + '@react-aria/progress@3.4.21': + resolution: {integrity: sha512-KNjoJTY2AU3L+3rozwC81lwDWn6Yk2XQbcQaxEs5frRBbuiCD7hEdrerLIgKa/J85e61MDuEel0Onc0kV9kpyw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1206,14 +1215,14 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/radio@3.11.0': - resolution: {integrity: sha512-twaJlT4prn1jSK9Wq5JDX+ywQ6hVnt8eea5cwe33bU87aQxCoz1PZAp5/cqEA8CT7jJUCM3wPQ8eBRtpHnjYNQ==} + '@react-aria/radio@3.11.1': + resolution: {integrity: sha512-plAO5MW+QD9/kMe5NNKBzKf/+b6CywdoZ5a1T/VbvkBQYYcHaYQeBuKQ4l+hF+OY2tKAWP0rrjv7tEtacPc9TA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/searchfield@3.8.1': - resolution: {integrity: sha512-KMY6slZTM940Jk/kimeh0Lw/VxP0PSDBdjoYLzOjQkUDBlvybDj5jSXnT7ZFr/NXX67/lDNulJgCrVxRoYnI6Q==} + '@react-aria/searchfield@3.8.2': + resolution: {integrity: sha512-xOhmzDd04CAl2d5L/g+PPqUSFCN7Ue11M9qTHnjoQ3HDJ4D82vY7Qik/crKGpJ2bV5ZoRxRuFaebqGRKCiJhSQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1224,8 +1233,8 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/select@3.15.2': - resolution: {integrity: sha512-DO8KRopzoBOtbixcXfo7meKTAg4IUyW1lPxo4esfot7OZCNvzbH+Mkx0aDgfQfItd8+7Xj8rhQPL58aauJKw9A==} + '@react-aria/select@3.15.3': + resolution: {integrity: sha512-HNtDZTASz6Zt9cFUK+9rmS3XmTwVz/tx1+7W3NNGy5Xx4J8hua0BymcbKiC+Pp/ibPGJT4b7KYyE2N9J17/95w==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1236,8 +1245,8 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/selection@3.23.0': - resolution: {integrity: sha512-m/sq3UuaTFRiEU9S6K+nkn9ONcpCtFskeJH/IZ9l/583X08KEoW/A3Vehrf3dlL8CNbkKKPfkUdKh1X6gTmHzA==} + '@react-aria/selection@3.23.1': + resolution: {integrity: sha512-z4vVw7Fw0+nK46PPlCV8TyieCS+EOUp3eguX8833fFJ/QDlFp3Ewgw2T5qCIix5U3siXPYU0ZmAMOdrjibdGpQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1247,8 +1256,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/separator@3.4.6': - resolution: {integrity: sha512-V6qVI03vzDhFfj3uDurSxtuEXpAJFntQgvaYXrdZ35lhHJDmuo1iCXqRrXkd4g21wvdidQ6WWeVl650ewxirpA==} + '@react-aria/separator@3.4.7': + resolution: {integrity: sha512-zALorCd1my7AAYjRCgR1RdI/w8usVH4GCD8d8MsNyKhZUSDn+TxeriDioNllfgL51rxFRFtnWFhD3/qYVK/vCg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1258,14 +1267,14 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/slider@3.7.16': - resolution: {integrity: sha512-SBcEbQWv1gDxx6TsNPVMOA4hNAsvPgMC9MuQQrXR1azIDlraU7A8tIMfs7BfEomiSaaZjxBso/xiZMuEJc7trQ==} + '@react-aria/slider@3.7.17': + resolution: {integrity: sha512-B+pdHiuM9G6zLYqvkMWAEiP2AppyC3IU032yUxBUrzh3DDoHPgU8HyFurFKS0diwigzcCBcq0yQ1YTalPzWV5A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/spinbutton@3.6.12': - resolution: {integrity: sha512-MtYYWl6wvUv+sUcEucTiHMoSRs2GsSNh+awEBJ5/boqQKU+bLjZ/9j/qIJO8Iueet2535HtLMKz1IsM0Pltrng==} + '@react-aria/spinbutton@3.6.13': + resolution: {integrity: sha512-phF7WU4mTryPY+IORqQC6eGvCdLItJ41KJ8ZWmpubnLkhqyyxBn8BirXlxWC5UIIvir9c3oohX2Vip/bE5WJiA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1281,26 +1290,26 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/switch@3.7.0': - resolution: {integrity: sha512-TwTKz9qO6FUg/szH/uqODvlXM8BKSXuFQMct3Tp/FsILFqfX9FQcD5jwbclmN5tywCVdeJU/OkICldxMx4gFeA==} + '@react-aria/switch@3.7.1': + resolution: {integrity: sha512-CE7G9pPeltbE5wEVIPlrbjarYoMNS8gsb3+RD4Be/ghKSpwppmQyn12WIs6oQl3YQSBD/GZhfA6OTyOBo0Ro9A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/table@3.17.0': - resolution: {integrity: sha512-x6jW3r0AIIbcGxra0yrecndA0kSnyEQWC16kVXmceLo0F4UCSmRRomWxEtvM3TZoesKlNpDYzipJJLT4HpbPVw==} + '@react-aria/table@3.17.1': + resolution: {integrity: sha512-yRZoeNwg+7ZNdq7kP9x+u9yMBL4spIdWvY9XTrYGq2XzNzl1aUUBNVszOV3hOwiU0DEF2zzUuuc8gc8Wys40zw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/tabs@3.10.0': - resolution: {integrity: sha512-1wGB4CtkP/F0/4YTDoB7XoPr4Ea6dbLTpLHQiS0cxf0kA3NZCxRguIffRbigE/D6fHArzWyKedSo6FzJR/WPZw==} + '@react-aria/tabs@3.10.1': + resolution: {integrity: sha512-9tcmp4L0cCTSkJAVvsw5XkjTs4MP4ajJsWPc9IUXYoutZWSDs2igqx3/7KKjRM4OrjSolNXFf8uWyr9Oqg+vCg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/tag@3.5.0': - resolution: {integrity: sha512-VqYbctlV5Slhy3rT+HVwkyts1z5KTdOvlM/MNzYExMiSbKXq8KkwQNq10gNKLNE5c5BdOAZ5MwWIIfnASf+c1A==} + '@react-aria/tag@3.5.1': + resolution: {integrity: sha512-dFB7bFeCoCZmyiTKwCsXPcQgqPMtqCtdF9B2gn9S/P6esXrPPr5jCvZKyKFZidbKpqiaQnj+SAln5qPBEftoSg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1310,14 +1319,14 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/textfield@3.17.0': - resolution: {integrity: sha512-asvbf0xC17qSQ51OojRELUtbTfVe42YE26KUZ/dtxkj+Ln20nj1F3UWXU3hDCn36hbj3vnJ2Zp8X6aGOfJP0qQ==} + '@react-aria/textfield@3.17.1': + resolution: {integrity: sha512-W/4nBdyXTOFPQXJ8eRK+74QFIpGR+x24SRjdl+y3WO6gFJNiiopWj8+slSK/T8LoD3g3QlzrtX/ooVQHCG3uQw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/toast@3.0.0': - resolution: {integrity: sha512-KDbJy8BFNTjc9ABEVWrgiAFRtGHSkRPv2AK4b7Yv1sQ3ePuZ0BIUtn2DQODNAFbLs/Z/OgoqLYMOORqL3Ti7pQ==} + '@react-aria/toast@3.0.1': + resolution: {integrity: sha512-WDzKvQsroIowe4y/5dsZDakG4g0mDju4ZhcEPY3SFVnEBbAH1k0fwSgfygDWZdwg9FS3+oA1IYcbVt4ClK3Vfg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1327,8 +1336,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/toggle@3.11.0': - resolution: {integrity: sha512-LQcuGxkoHIb79phsGVzLVWlA25Uj14fRMEo4r/DRB9xE+IiOgO8g3gaA5oWNT3kpM898lTxaIv1yVxhWZEksrQ==} + '@react-aria/toggle@3.11.1': + resolution: {integrity: sha512-9SBvSFpGcLODN1u64tQ8aL6uLFnuuJRA2N0Kjmxp5PE1gk8IKG+BXsjZmq7auDAN5WPISBXw1RzEOmbghruBTQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1338,8 +1347,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/toolbar@3.0.0-beta.13': - resolution: {integrity: sha512-aj5lWdk/yp2Tmuuofu1rdkvhiYPCXihuPFbs+9HHz88kyezM7bkhmQRIf0w47tiPIKUA0UuwJucBjDZfl9EQFw==} + '@react-aria/toolbar@3.0.0-beta.14': + resolution: {integrity: sha512-F9wFYhcbVUveo6+JfAjKyz19BnBaXBYG7YyZdGurhn5E1bD+Zrwz/ZCTrrx40xJsbofciCiiwnKiXmzB20Kl5Q==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1349,14 +1358,14 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/tooltip@3.8.0': - resolution: {integrity: sha512-Tal09bWgursZ3v1qUuB/0z4Cz+jcDIfe8G5TECMtr0vbfYh2u7RIjBNZnsRcxZ2syXDxhHrPNeh8mrp4vKCAKg==} + '@react-aria/tooltip@3.8.1': + resolution: {integrity: sha512-g5Vr5HFGfLQRxdYs8nZeXeNrni5YcRGegRjnEDUZwW+Gwvu8KTrD7IeXrBDndS+XoTzKC4MzfvtyXWWpYmT0KQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/tree@3.0.0': - resolution: {integrity: sha512-utWVgR7Tmq7lPDRL+ud2nzNhv3GPtFnCE52ACQOUR8D8YL2EJhVKt8kMzrf92aQgTZPq6zWI6kRkxFJ/HORDvg==} + '@react-aria/tree@3.0.1': + resolution: {integrity: sha512-USYRpbpbUChDFSquCc6eYQ+czTuge5m9XH1F/xfSJD0gEe9BG7dRJ9GB/dy6yBoZoNy3VWpTNrHUfPnmiKpgUw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1366,8 +1375,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/utils@3.28.0': - resolution: {integrity: sha512-FfpvpADk61OvEnFe37k6jF1zr5gtafIPN9ccJRnPCTqrzuExag01mGi+wX/hWyFK0zAe1OjWf1zFOX3FsFvikg==} + '@react-aria/utils@3.28.1': + resolution: {integrity: sha512-mnHFF4YOVu9BRFQ1SZSKfPhg3z+lBRYoW5mLcYTQihbKhz48+I1sqRkP7ahMITr8ANH3nb34YaMME4XWmK2Mgg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1378,8 +1387,8 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - '@react-aria/virtualizer@4.1.2': - resolution: {integrity: sha512-IZyV7yhxcMjzoTgVvQ6gmS8PFiVhwXVQ93X+l87bwR2K/z3z+hvhR4JNuA8qsqK5Lr0yUUlY06iM/h2yZRv7Nw==} + '@react-aria/virtualizer@4.1.3': + resolution: {integrity: sha512-WzxqQa0mVw96EKHWZIJYQlZfmpOJNpj7PX2Bliawm4rkSS1hpw38waQEHyR95Aexk4vTo5OQnO3w8pun0LXfqg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1389,8 +1398,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/visually-hidden@3.8.20': - resolution: {integrity: sha512-Y7JbrpheUhNgnJWogDWxuxxiWAnuaW9MKOUY5vD3KOa+vEWuc2IBOGSzOOUkAGnVP4L2rvaHeZIuR5flqyeskA==} + '@react-aria/visually-hidden@3.8.21': + resolution: {integrity: sha512-iii5qO+cVHrHiOeiBYCnTRUQG2eOgEPFmiMG4dAuby8+pJJ8U4BvffX2sDTYWL6ztLLBYyrsUHPSw1Ld03JhmA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1509,8 +1518,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - '@react-stately/layout@4.2.0': - resolution: {integrity: sha512-qeEEwFqhaESIwimLKSWIDoxw40jUj4DjNjs+g18W4+qBBo8aH/cQQqxYQmemscD41gqirRk3HkdqPkXqMBiFIw==} + '@react-stately/layout@4.2.1': + resolution: {integrity: sha512-8ndL33URRyDm6Z+NUR2gS0eVOZQB2mP4pGyvSaM8W68RKF5+XXaPY4QLBuCo2+TsNlqsBNbI2qAznQW1SPQ3+g==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -1655,8 +1664,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 - '@react-stately/virtualizer@4.3.0': - resolution: {integrity: sha512-iU/nns19Ou2Mxr8OhjCQ+NvkOck4uhUZta/WyZmJZ3ynMY8503IwuEF2n+AHg81LiS83/XK8SXq3NTn61Trpgg==} + '@react-stately/virtualizer@4.3.1': + resolution: {integrity: sha512-yWRR9NhaD9NQezRUm1n0cQAYAOAYLOJSxVrCAKyhz/AYvG5JMMvFk3kzgrX8YZXoZKjybcdvy3YZ+jbCSprR6g==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -2940,6 +2949,14 @@ packages: crelt@1.0.6: resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} + cron-parser@5.1.1: + resolution: {integrity: sha512-xNhwjTUTJcvevF4EvOxB3xYpEKC/qOAmykR+2Qf91ARIfdbjStUwo8qpem6jjzdwFgoo4pnf3sS264xG0G858w==} + engines: {node: '>=18'} + + cronstrue@2.59.0: + resolution: {integrity: sha512-YKGmAy84hKH+hHIIER07VCAHf9u0Ldelx1uU6EBxsRPDXIA1m5fsKmJfyC3xBhw6cVC/1i83VdbL4PvepTrt8A==} + hasBin: true + cross-env@7.0.3: resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} @@ -3874,6 +3891,10 @@ packages: lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + luxon@3.6.1: + resolution: {integrity: sha512-tJLxrKJhO2ukZ5z0gyjY1zPh3Rh88Ej9P7jNrZiHMUXHae1yvI2imgOZtL1TO8TW6biMMKfTtAOoEJANgtWBMQ==} + engines: {node: '>=12'} + lz-string@1.5.0: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} hasBin: true @@ -4334,14 +4355,14 @@ packages: resolution: {integrity: sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==} engines: {node: '>=0.12'} - react-aria-components@1.7.0: - resolution: {integrity: sha512-WE3iZ4Ubkoh6GdqfXAC3f68Q4rvebmHXMtMJL57hJ/ZM+l1my3omigRzZczRwSQS2hOjPbhFGWrulq/rVwCITw==} + react-aria-components@1.7.1: + resolution: {integrity: sha512-kTAlrxcW7n+rQDwlZSz5+o+HknjPGv/pn0OQ1FF92WsjoTaqQMJtWbEAHXrhrQaiW/3T4CANTpdR1soai4uK6g==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - react-aria@3.38.0: - resolution: {integrity: sha512-OsnfXaYR/QaQSgky/95DiwNP5tuDX904Had71cbs48VNBYl7P/VpPQvdZMqrlYRbCupifkPaEEV/tThyRDHNbg==} + react-aria@3.38.1: + resolution: {integrity: sha512-DDdWsAlHPKVQ5E8G0kfDHNs0Lk1Xrs3G7soz6Ew8Ls5vNfp1BusbR2b1wC7ppqq2jDQiyJS816UNmDuGyQVyxA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -4440,8 +4461,8 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-stately@3.36.0: - resolution: {integrity: sha512-xeoGuzZWUf6WjcmfT4x13R/BKVIF7DY/T7wGOfvpG4Pdy0p5eG6vyv1hJjk6ZxiOkwdeWKkRLXoypgZdlCavIQ==} + react-stately@3.36.1: + resolution: {integrity: sha512-H9kiGAylNec/iE5qk7qQLV1cvtSAIVq3mgt87zx2EA+f+/sYy2oBtchFPaDiBf/m7xMEKf0Fr9zSLU6G99xQ8g==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -6107,16 +6128,16 @@ snapshots: dependencies: playwright: 1.48.0 - '@react-aria/autocomplete@3.0.0-beta.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/autocomplete@3.0.0-beta.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/combobox': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/listbox': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/searchfield': 3.8.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/combobox': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/listbox': 3.14.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/searchfield': 3.8.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/autocomplete': 3.0.0-beta.0(react@18.3.1) '@react-stately/combobox': 3.10.3(react@18.3.1) '@react-types/autocomplete': 3.0.0-alpha.29(react@18.3.1) @@ -6136,11 +6157,11 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/breadcrumbs@3.5.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/breadcrumbs@3.5.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/link': 3.7.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/link': 3.7.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/breadcrumbs': 3.7.11(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 @@ -6159,11 +6180,11 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/button@3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/button@3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/toolbar': 3.0.0-beta.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/toolbar': 3.0.0-beta.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/toggle': 3.8.2(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -6171,13 +6192,13 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/calendar@3.7.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/calendar@3.7.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@internationalized/date': 3.7.0 - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.1 - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/calendar': 3.7.1(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/calendar': 3.6.1(react@18.3.1) @@ -6186,13 +6207,13 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/checkbox@3.15.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/checkbox@3.15.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/form': 3.0.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/toggle': 3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/form': 3.0.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/toggle': 3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/checkbox': 3.6.12(react@18.3.1) '@react-stately/form': 3.1.2(react@18.3.1) '@react-stately/toggle': 3.8.2(react@18.3.1) @@ -6202,27 +6223,27 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/collections@3.0.0-beta.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/collections@3.0.0-beta.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/ssr': 3.9.7(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.4.0(react@18.3.1) - '@react-aria/color@3.0.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/color@3.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/numberfield': 3.11.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/slider': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/spinbutton': 3.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/numberfield': 3.11.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/slider': 3.7.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/spinbutton': 3.6.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/color': 3.8.3(react@18.3.1) '@react-stately/form': 3.1.2(react@18.3.1) '@react-types/color': 3.0.3(react@18.3.1) @@ -6231,17 +6252,17 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/combobox@3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/combobox@3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/listbox': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/listbox': 3.14.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.1 - '@react-aria/menu': 3.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/overlays': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/menu': 3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.26.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/collections': 3.12.2(react@18.3.1) '@react-stately/combobox': 3.10.3(react@18.3.1) '@react-stately/form': 3.1.2(react@18.3.1) @@ -6252,18 +6273,18 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/datepicker@3.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/datepicker@3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@internationalized/date': 3.7.0 '@internationalized/number': 3.6.0 '@internationalized/string': 3.2.5 - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/form': 3.0.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/spinbutton': 3.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/form': 3.0.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/spinbutton': 3.6.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/datepicker': 3.13.0(react@18.3.1) '@react-stately/form': 3.1.2(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) @@ -6286,35 +6307,35 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/dialog@3.5.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/dialog@3.5.23(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/overlays': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.26.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/dialog': 3.5.16(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/disclosure@3.0.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/disclosure@3.0.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-aria/ssr': 3.9.7(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/disclosure': 3.0.2(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/dnd@3.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/dnd@3.9.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@internationalized/string': 3.2.5 - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.1 - '@react-aria/overlays': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.26.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/dnd': 3.5.2(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -6331,10 +6352,10 @@ snapshots: clsx: 2.1.1 react: 18.3.1 - '@react-aria/focus@3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/focus@3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 clsx: 2.1.1 @@ -6350,24 +6371,24 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/form@3.0.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/form@3.0.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/form': 3.1.2(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/grid@3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/grid@3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.1 - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/collections': 3.12.2(react@18.3.1) '@react-stately/grid': 3.11.0(react@18.3.1) '@react-stately/selection': 3.20.0(react@18.3.1) @@ -6378,14 +6399,14 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/gridlist@3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/gridlist@3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/grid': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/grid': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/collections': 3.12.2(react@18.3.1) '@react-stately/list': 3.12.0(react@18.3.1) '@react-stately/tree': 3.8.8(react@18.3.1) @@ -6406,14 +6427,14 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/i18n@3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/i18n@3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@internationalized/date': 3.7.0 '@internationalized/message': 3.1.6 '@internationalized/number': 3.6.0 '@internationalized/string': 3.2.5 '@react-aria/ssr': 3.9.7(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 @@ -6427,10 +6448,10 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/interactions@3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/interactions@3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-aria/ssr': 3.9.7(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/flags': 3.1.0 '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 @@ -6444,23 +6465,33 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/label@3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/label@3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/landmark@3.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/landmark@3.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.4.0(react@18.3.1) + '@react-aria/link@3.7.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/link': 3.5.11(react@18.3.1) + '@react-types/shared': 3.28.0(react@18.3.1) + '@swc/helpers': 0.5.12 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + '@react-aria/link@3.7.7(react@18.3.1)': dependencies: '@react-aria/focus': 3.19.0(react@18.3.1) @@ -6471,16 +6502,6 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/link@3.7.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/link': 3.5.11(react@18.3.1) - '@react-types/shared': 3.28.0(react@18.3.1) - '@swc/helpers': 0.5.12 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - '@react-aria/listbox@3.13.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-aria/interactions': 3.22.5(react@18.3.1) @@ -6495,12 +6516,12 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/listbox@3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/listbox@3.14.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/collections': 3.12.2(react@18.3.1) '@react-stately/list': 3.12.0(react@18.3.1) '@react-types/listbox': 3.5.5(react@18.3.1) @@ -6532,14 +6553,14 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/menu@3.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/menu@3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/overlays': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.26.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/collections': 3.12.2(react@18.3.1) '@react-stately/menu': 3.9.2(react@18.3.1) '@react-stately/selection': 3.20.0(react@18.3.1) @@ -6551,22 +6572,22 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/meter@3.4.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/meter@3.4.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/progress': 3.4.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/progress': 3.4.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/meter': 3.4.7(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/numberfield@3.11.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/numberfield@3.11.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/spinbutton': 3.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/spinbutton': 3.6.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/form': 3.1.2(react@18.3.1) '@react-stately/numberfield': 3.9.10(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) @@ -6592,14 +6613,14 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/overlays@3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/overlays@3.26.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/ssr': 3.9.7(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/overlays': 3.6.14(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/overlays': 3.8.13(react@18.3.1) @@ -6618,11 +6639,11 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/progress@3.4.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/progress@3.4.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/progress': 3.5.10(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 @@ -6643,14 +6664,14 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/radio@3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/radio@3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/form': 3.0.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/form': 3.0.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/radio': 3.10.11(react@18.3.1) '@react-types/radio': 3.8.7(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -6658,11 +6679,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/searchfield@3.8.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/searchfield@3.8.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/searchfield': 3.5.10(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/searchfield': 3.6.0(react@18.3.1) @@ -6690,17 +6711,17 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/select@3.15.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/form': 3.0.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/listbox': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/menu': 3.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/select@3.15.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/form': 3.0.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/listbox': 3.14.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/menu': 3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/select': 3.6.11(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/select': 3.9.10(react@18.3.1) @@ -6721,12 +6742,12 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/selection@3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/selection@3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/selection': 3.20.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 @@ -6740,9 +6761,9 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/separator@3.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/separator@3.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 @@ -6761,12 +6782,12 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/slider@3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/slider@3.7.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/slider': 3.6.2(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@react-types/slider': 3.7.9(react@18.3.1) @@ -6774,11 +6795,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/spinbutton@3.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/spinbutton@3.6.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.1 - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 @@ -6799,9 +6820,9 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/switch@3.7.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/switch@3.7.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/toggle': 3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/toggle': 3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/toggle': 3.8.2(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@react-types/switch': 3.5.9(react@18.3.1) @@ -6809,15 +6830,15 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/table@3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/table@3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/grid': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/grid': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.1 - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/collections': 3.12.2(react@18.3.1) '@react-stately/flags': 3.1.0 '@react-stately/table': 3.14.0(react@18.3.1) @@ -6829,12 +6850,12 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/tabs@3.10.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/tabs@3.10.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/tabs': 3.8.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@react-types/tabs': 3.3.13(react@18.3.1) @@ -6842,14 +6863,14 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/tag@3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/tag@3.5.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/gridlist': 3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/gridlist': 3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/list': 3.12.0(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -6870,12 +6891,12 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/textfield@3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/textfield@3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/form': 3.0.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/form': 3.0.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/form': 3.1.2(react@18.3.1) '@react-stately/utils': 3.10.5(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -6884,12 +6905,12 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/toast@3.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/toast@3.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/landmark': 3.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/landmark': 3.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/toast': 3.0.0(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -6908,10 +6929,10 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/toggle@3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/toggle@3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/toggle': 3.8.2(react@18.3.1) '@react-types/checkbox': 3.9.2(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -6928,11 +6949,11 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/toolbar@3.0.0-beta.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/toolbar@3.0.0-beta.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 @@ -6949,10 +6970,10 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/tooltip@3.8.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/tooltip@3.8.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/tooltip': 3.5.2(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@react-types/tooltip': 3.4.15(react@18.3.1) @@ -6960,12 +6981,12 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/tree@3.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/tree@3.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/gridlist': 3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/gridlist': 3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/tree': 3.8.8(react@18.3.1) '@react-types/button': 3.11.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -6982,7 +7003,7 @@ snapshots: clsx: 2.1.1 react: 18.3.1 - '@react-aria/utils@3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/utils@3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-aria/ssr': 3.9.7(react@18.3.1) '@react-stately/flags': 3.1.0 @@ -7004,12 +7025,12 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/virtualizer@4.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/virtualizer@4.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/virtualizer': 4.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/virtualizer': 4.3.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 @@ -7023,10 +7044,10 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-aria/visually-hidden@3.8.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/visually-hidden@3.8.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 @@ -7209,11 +7230,11 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-stately/layout@4.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-stately/layout@4.2.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-stately/collections': 3.12.2(react@18.3.1) '@react-stately/table': 3.14.0(react@18.3.1) - '@react-stately/virtualizer': 4.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/virtualizer': 4.3.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/grid': 3.3.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@react-types/table': 3.11.0(react@18.3.1) @@ -7455,9 +7476,9 @@ snapshots: '@swc/helpers': 0.5.12 react: 18.3.1 - '@react-stately/virtualizer@4.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-stately/virtualizer@4.3.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) '@swc/helpers': 0.5.12 react: 18.3.1 @@ -8951,6 +8972,12 @@ snapshots: crelt@1.0.6: {} + cron-parser@5.1.1: + dependencies: + luxon: 3.6.1 + + cronstrue@2.59.0: {} + cross-env@7.0.3: dependencies: cross-spawn: 7.0.6 @@ -10015,6 +10042,8 @@ snapshots: dependencies: yallist: 3.1.1 + luxon@3.6.1: {} + lz-string@1.5.0: {} maath@0.10.8(@types/three@0.149.0)(three@0.139.2): @@ -10670,25 +10699,25 @@ snapshots: discontinuous-range: 1.0.0 ret: 0.1.15 - react-aria-components@1.7.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-aria-components@1.7.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@internationalized/date': 3.7.0 '@internationalized/string': 3.2.5 - '@react-aria/autocomplete': 3.0.0-beta.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/collections': 3.0.0-beta.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/dnd': 3.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/autocomplete': 3.0.0-beta.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/collections': 3.0.0-beta.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/dnd': 3.9.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.1 - '@react-aria/toolbar': 3.0.0-beta.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/virtualizer': 4.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/toolbar': 3.0.0-beta.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/virtualizer': 4.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/autocomplete': 3.0.0-beta.0(react@18.3.1) - '@react-stately/layout': 4.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/layout': 4.2.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/selection': 3.20.0(react@18.3.1) '@react-stately/table': 3.14.0(react@18.3.1) '@react-stately/utils': 3.10.5(react@18.3.1) - '@react-stately/virtualizer': 4.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/virtualizer': 4.3.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/form': 3.7.10(react@18.3.1) '@react-types/grid': 3.3.0(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) @@ -10696,54 +10725,54 @@ snapshots: '@swc/helpers': 0.5.12 client-only: 0.0.1 react: 18.3.1 - react-aria: 3.38.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-aria: 3.38.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-dom: 18.3.1(react@18.3.1) - react-stately: 3.36.0(react@18.3.1) + react-stately: 3.36.1(react@18.3.1) use-sync-external-store: 1.4.0(react@18.3.1) - react-aria@3.38.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-aria@3.38.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@internationalized/string': 3.2.5 - '@react-aria/breadcrumbs': 3.5.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/button': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/calendar': 3.7.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/checkbox': 3.15.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/color': 3.0.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/combobox': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/datepicker': 3.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/dialog': 3.5.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/disclosure': 3.0.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/dnd': 3.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/focus': 3.20.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/gridlist': 3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.24.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/landmark': 3.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/link': 3.7.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/listbox': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/menu': 3.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/meter': 3.4.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/numberfield': 3.11.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/overlays': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/progress': 3.4.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/radio': 3.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/searchfield': 3.8.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/select': 3.15.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.23.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/separator': 3.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/slider': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/breadcrumbs': 3.5.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/button': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/calendar': 3.7.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/checkbox': 3.15.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/color': 3.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/combobox': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/datepicker': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/dialog': 3.5.23(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/disclosure': 3.0.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/dnd': 3.9.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/gridlist': 3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.24.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/landmark': 3.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/link': 3.7.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/listbox': 3.14.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/menu': 3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/meter': 3.4.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/numberfield': 3.11.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.26.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/progress': 3.4.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/radio': 3.11.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/searchfield': 3.8.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/select': 3.15.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/separator': 3.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/slider': 3.7.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/ssr': 3.9.7(react@18.3.1) - '@react-aria/switch': 3.7.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/table': 3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/tabs': 3.10.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/tag': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/toast': 3.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/tooltip': 3.8.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/tree': 3.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/switch': 3.7.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/table': 3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/tabs': 3.10.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/tag': 3.5.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/toast': 3.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/tooltip': 3.8.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/tree': 3.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-types/shared': 3.28.0(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -10861,7 +10890,7 @@ snapshots: react-dom: 18.3.1(react@18.3.1) react-transition-group: 4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react-stately@3.36.0(react@18.3.1): + react-stately@3.36.1(react@18.3.1): dependencies: '@react-stately/calendar': 3.7.1(react@18.3.1) '@react-stately/checkbox': 3.6.12(react@18.3.1) diff --git a/app/relay.config.js b/app/relay.config.js index f2c88680d8..6ead461e9f 100644 --- a/app/relay.config.js +++ b/app/relay.config.js @@ -11,6 +11,7 @@ module.exports = { DateTime: "string", UUID: "string", Identifier: "string", + CronExpression: "string", }, typescriptExcludeUndefinedFromNullableUnion: true, }; diff --git a/app/schema.graphql b/app/schema.graphql index 74e7761fb8..5d3ebb664b 100644 --- a/app/schema.graphql +++ b/app/schema.graphql @@ -1,5 +1,15 @@ directive @oneOf on INPUT_OBJECT +input AddAnnotationConfigToProjectInput { + projectId: GlobalID! + annotationConfigId: GlobalID! +} + +type AddAnnotationConfigToProjectPayload { + query: Query! + project: Project! +} + input AddExamplesToDatasetInput { datasetId: GlobalID! examples: [DatasetExampleInput!]! @@ -30,9 +40,53 @@ interface Annotation { The annotator's explanation for the annotation result (i.e. score or label, or both) given to the subject. """ explanation: String + + """The date and time when the annotation was created.""" + createdAt: DateTime! + + """The date and time when the annotation was last updated.""" + updatedAt: DateTime! +} + +union AnnotationConfig = CategoricalAnnotationConfig | ContinuousAnnotationConfig | FreeformAnnotationConfig + +interface AnnotationConfigBase { + name: String! + description: String + annotationType: AnnotationType! +} + +"""A connection to a list of items.""" +type AnnotationConfigConnection { + """Pagination data for this connection""" + pageInfo: PageInfo! + + """Contains the nodes in this connection""" + edges: [AnnotationConfigEdge!]! +} + +"""An edge in a connection.""" +type AnnotationConfigEdge { + """A cursor for use in pagination""" + cursor: String! + + """The item at the end of the edge""" + node: AnnotationConfig! +} + +input AnnotationConfigInput @oneOf { + categorical: CategoricalAnnotationConfigInput + continuous: ContinuousAnnotationConfigInput + freeform: FreeformAnnotationConfigInput +} + +enum AnnotationSource { + API + APP } type AnnotationSummary { + name: String! count: Int! labels: [String!]! labelFractions: [LabelFraction!]! @@ -41,9 +95,16 @@ type AnnotationSummary { labelCount: Int! } +enum AnnotationType { + CATEGORICAL + CONTINUOUS + FREEFORM +} + enum AnnotatorKind { LLM HUMAN + CODE } interface ApiKey { @@ -99,6 +160,33 @@ enum CanonicalParameterName { ANTHROPIC_EXTENDED_THINKING } +type CategoricalAnnotationConfig implements Node & AnnotationConfigBase { + """The Globally Unique ID of this object""" + id: GlobalID! + name: String! + description: String + annotationType: AnnotationType! + optimizationDirection: OptimizationDirection! + values: [CategoricalAnnotationValue!]! +} + +input CategoricalAnnotationConfigInput { + name: String! + description: String = null + optimizationDirection: OptimizationDirection! + values: [CategoricalAnnotationConfigValueInput!]! +} + +input CategoricalAnnotationConfigValueInput { + label: String! + score: Float = null +} + +type CategoricalAnnotationValue { + label: String! + score: Float +} + type ChatCompletionFunctionCall { name: String! arguments: String! @@ -263,6 +351,34 @@ input ContentPartInput @oneOf { toolResult: ToolResultContentValueInput } +type ContinuousAnnotationConfig implements Node & AnnotationConfigBase { + """The Globally Unique ID of this object""" + id: GlobalID! + name: String! + description: String + annotationType: AnnotationType! + optimizationDirection: OptimizationDirection! + lowerBound: Float + upperBound: Float +} + +input ContinuousAnnotationConfigInput { + name: String! + description: String = null + optimizationDirection: OptimizationDirection! + lowerBound: Float = null + upperBound: Float = null +} + +input CreateAnnotationConfigInput { + annotationConfig: AnnotationConfigInput! +} + +type CreateAnnotationConfigPayload { + query: Query! + annotationConfig: AnnotationConfig! +} + input CreateApiKeyInput { name: String! description: String @@ -287,6 +403,13 @@ input CreateDatasetInput { metadata: JSON } +input CreateProjectTraceRetentionPolicyInput { + name: String! + cronExpression: CronExpression! + rule: ProjectTraceRetentionRuleInput! + addProjects: [GlobalID!] +} + input CreatePromptLabelInput { name: Identifier! description: String = null @@ -300,6 +423,13 @@ input CreateSpanAnnotationInput { score: Float = null explanation: String = null metadata: JSON! = {} + identifier: String = null + source: AnnotationSource! +} + +input CreateSpanNoteInput { + spanId: GlobalID! + note: String! } type CreateSystemApiKeyMutationPayload { @@ -316,6 +446,8 @@ input CreateTraceAnnotationInput { score: Float = null explanation: String = null metadata: JSON! = {} + identifier: String = null + source: AnnotationSource! } input CreateUserApiKeyInput { @@ -338,6 +470,8 @@ input CreateUserInput { sendWelcomeEmail: Boolean = false } +scalar CronExpression + enum DataQualityMetric { cardinality percentEmpty @@ -518,6 +652,15 @@ type DbTableStats { numBytes: Float! } +input DeleteAnnotationConfigsInput { + ids: [GlobalID!]! +} + +type DeleteAnnotationConfigsPayload { + query: Query! + annotationConfigs: [AnnotationConfig!]! +} + input DeleteAnnotationsInput { annotationIds: [GlobalID!]! } @@ -545,6 +688,10 @@ input DeleteExperimentsInput { experimentIds: [GlobalID!]! } +input DeleteProjectTraceRetentionPolicyInput { + id: GlobalID! +} + input DeletePromptInput { promptId: GlobalID! } @@ -689,6 +836,12 @@ type DocumentEvaluation implements Annotation { """ explanation: String + """The date and time when the annotation was created.""" + createdAt: DateTime! + + """The date and time when the annotation was last updated.""" + updatedAt: DateTime! + """ The zero-based index among retrieved documents, which is collected as a list (even when ordering is not inherently meaningful). """ @@ -1007,6 +1160,19 @@ type FloatInvocationParameter implements InvocationParameterBase { defaultValue: Float } +type FreeformAnnotationConfig implements Node & AnnotationConfigBase { + """The Globally Unique ID of this object""" + id: GlobalID! + name: String! + description: String + annotationType: AnnotationType! +} + +input FreeformAnnotationConfigInput { + name: String! + description: String = null +} + type FunctionCallChunk implements ChatCompletionSubscriptionPayload { datasetExampleId: GlobalID name: String! @@ -1219,6 +1385,11 @@ input ModelsInput { } type Mutation { + createAnnotationConfig(input: CreateAnnotationConfigInput!): CreateAnnotationConfigPayload! + updateAnnotationConfig(input: UpdateAnnotationConfigInput!): UpdateAnnotationConfigPayload! + deleteAnnotationConfigs(input: DeleteAnnotationConfigsInput!): DeleteAnnotationConfigsPayload! + addAnnotationConfigToProject(input: [AddAnnotationConfigToProjectInput!]!): AddAnnotationConfigToProjectPayload! + removeAnnotationConfigFromProject(input: [RemoveAnnotationConfigFromProjectInput!]!): RemoveAnnotationConfigFromProjectPayload! createSystemApiKey(input: CreateApiKeyInput!): CreateSystemApiKeyMutationPayload! createUserApiKey(input: CreateUserApiKeyInput!): CreateUserApiKeyMutationPayload! deleteSystemApiKey(input: DeleteApiKeyInput!): DeleteApiKeyMutationPayload! @@ -1245,6 +1416,9 @@ type Mutation { exportClusters(clusters: [ClusterInput!]!, fileName: String): ExportedFile! deleteProject(id: GlobalID!): Query! clearProject(input: ClearProjectInput!): Query! + createProjectTraceRetentionPolicy(input: CreateProjectTraceRetentionPolicyInput!): ProjectTraceRetentionPolicyMutationPayload! + patchProjectTraceRetentionPolicy(input: PatchProjectTraceRetentionPolicyInput!): ProjectTraceRetentionPolicyMutationPayload! + deleteProjectTraceRetentionPolicy(input: DeleteProjectTraceRetentionPolicyInput!): ProjectTraceRetentionPolicyMutationPayload! createChatPrompt(input: CreateChatPromptInput!): Prompt! createChatPromptVersion(input: CreateChatPromptVersionInput!): Prompt! deletePrompt(input: DeletePromptInput!): DeletePromptMutationPayload! @@ -1258,6 +1432,7 @@ type Mutation { setPromptLabel(input: SetPromptLabelInput!): PromptLabelMutationPayload! unsetPromptLabel(input: UnsetPromptLabelInput!): PromptLabelMutationPayload! createSpanAnnotations(input: [CreateSpanAnnotationInput!]!): SpanAnnotationMutationPayload! + createSpanNote(annotationInput: CreateSpanNoteInput!): SpanAnnotationMutationPayload! patchSpanAnnotations(input: [PatchAnnotationInput!]!): SpanAnnotationMutationPayload! deleteSpanAnnotations(input: DeleteAnnotationsInput!): SpanAnnotationMutationPayload! createTraceAnnotations(input: [CreateTraceAnnotationInput!]!): TraceAnnotationMutationPayload! @@ -1285,6 +1460,12 @@ type NumericRange { end: Float! } +enum OptimizationDirection { + MINIMIZE + MAXIMIZE + NONE +} + """Information to aid in pagination.""" type PageInfo { """When paginating forwards, are there more items?""" @@ -1308,6 +1489,7 @@ input PatchAnnotationInput { score: Float explanation: String metadata: JSON + identifier: String } input PatchDatasetExamplesInput { @@ -1323,6 +1505,15 @@ input PatchDatasetInput { metadata: JSON } +input PatchProjectTraceRetentionPolicyInput { + id: GlobalID! + name: String + cronExpression: CronExpression + rule: ProjectTraceRetentionRuleInput + addProjects: [GlobalID!] + removeProjects: [GlobalID!] +} + input PatchPromptInput { promptId: GlobalID! description: String! @@ -1408,6 +1599,8 @@ type Project implements Node { documentEvaluationSummary(evaluationName: String!, timeRange: TimeRange, filterCondition: String): DocumentEvaluationSummary streamingLastUpdatedAt: DateTime validateSpanFilterCondition(condition: String!): ValidationResult! + annotationConfigs(first: Int = 50, last: Int = null, after: String = null, before: String = null): AnnotationConfigConnection! + traceRetentionPolicy: ProjectTraceRetentionPolicy! } """A connection to a list of items.""" @@ -1475,6 +1668,57 @@ input ProjectSessionSort { dir: SortDir! } +type ProjectTraceRetentionPolicy implements Node { + """The Globally Unique ID of this object""" + id: GlobalID! + name: String! + cronExpression: CronExpression! + rule: TraceRetentionRule! + projects(first: Int = 100, last: Int, after: String, before: String): ProjectConnection! +} + +"""A connection to a list of items.""" +type ProjectTraceRetentionPolicyConnection { + """Pagination data for this connection""" + pageInfo: PageInfo! + + """Contains the nodes in this connection""" + edges: [ProjectTraceRetentionPolicyEdge!]! +} + +"""An edge in a connection.""" +type ProjectTraceRetentionPolicyEdge { + """A cursor for use in pagination""" + cursor: String! + + """The item at the end of the edge""" + node: ProjectTraceRetentionPolicy! +} + +type ProjectTraceRetentionPolicyMutationPayload { + query: Query! + node: ProjectTraceRetentionPolicy! +} + +input ProjectTraceRetentionRuleInput @oneOf { + maxDays: ProjectTraceRetentionRuleMaxDaysInput + maxCount: ProjectTraceRetentionRuleMaxCountInput + maxDaysOrCount: ProjectTraceRetentionRuleMaxDaysOrCountInput +} + +input ProjectTraceRetentionRuleMaxCountInput { + maxCount: Int! +} + +input ProjectTraceRetentionRuleMaxDaysInput { + maxDays: Float! +} + +input ProjectTraceRetentionRuleMaxDaysOrCountInput { + maxDays: Float! + maxCount: Int! +} + type Prompt implements Node { """The Globally Unique ID of this object""" id: GlobalID! @@ -1669,6 +1913,7 @@ type Query { viewer: User prompts(first: Int = 50, last: Int, after: String, before: String): PromptConnection! promptLabels(first: Int = 50, last: Int, after: String, before: String): PromptLabelConnection! + annotationConfigs(first: Int = 50, last: Int = null, after: String = null, before: String = null): AnnotationConfigConnection! clusters(clusters: [ClusterInput!]!): [Cluster!]! hdbscanClustering( """Event ID of the coordinates""" @@ -1689,6 +1934,8 @@ type Query { """HDBSCAN cluster selection epsilon""" clusterSelectionEpsilon: Float! = 0 ): [Cluster!]! + defaultProjectTraceRetentionPolicy: ProjectTraceRetentionPolicy! + projectTraceRetentionPolicies(first: Int = 100, last: Int, after: String, before: String): ProjectTraceRetentionPolicyConnection! """ The allocated storage capacity of the database in bytes. Return None if this information is unavailable. @@ -1697,6 +1944,16 @@ type Query { dbTableStats: [DbTableStats!]! } +input RemoveAnnotationConfigFromProjectInput { + projectId: GlobalID! + annotationConfigId: GlobalID! +} + +type RemoveAnnotationConfigFromProjectPayload { + query: Query! + project: Project! +} + type ResponseFormat { definition: JSON! } @@ -1807,7 +2064,13 @@ type Span implements Node { """ Annotations associated with the span. This encompasses both LLM and human annotations. """ - spanAnnotations(sort: SpanAnnotationSort): [SpanAnnotation!]! + spanAnnotations(sort: SpanAnnotationSort, filter: SpanAnnotationFilter = null): [SpanAnnotation!]! + + """Notes associated with the span.""" + spanNotes: [SpanAnnotation!]! + + """Summarizes each annotation (by name) associated with the span""" + spanAnnotationSummaries(filter: SpanAnnotationFilter = null): [AnnotationSummary!]! """ Evaluations of the documents associated with the span, e.g. if the span is a RETRIEVER with a list of documents in its RETRIEVAL_DOCUMENTS attribute, an evaluation for each document may assess its relevance respect to the input query of the span. Note that RETRIEVAL_DOCUMENTS is a list, and each evaluation is identified by its document's (zero-based) index in that list. @@ -1864,9 +2127,18 @@ type SpanAnnotation implements Node & Annotation { The annotator's explanation for the annotation result (i.e. score or label, or both) given to the subject. """ explanation: String + + """The date and time when the annotation was created.""" + createdAt: DateTime! + + """The date and time when the annotation was last updated.""" + updatedAt: DateTime! annotatorKind: AnnotatorKind! metadata: JSON! + source: AnnotationSource! + identifier: String spanId: GlobalID! + user: User } enum SpanAnnotationColumn { @@ -1874,6 +2146,17 @@ enum SpanAnnotationColumn { name } +input SpanAnnotationFilter { + include: SpanAnnotationFilterCondition + exclude: SpanAnnotationFilterCondition +} + +input SpanAnnotationFilterCondition { + names: [String!] + sources: [AnnotationSource!] + userIds: [GlobalID] +} + type SpanAnnotationMutationPayload { spanAnnotations: [SpanAnnotation!]! query: Query! @@ -2117,7 +2400,7 @@ type Trace implements Node { spans(first: Int = 50, last: Int, after: String, before: String): SpanConnection! """Annotations associated with the trace.""" - spanAnnotations(sort: TraceAnnotationSort = null): [TraceAnnotation!]! + traceAnnotations(sort: TraceAnnotationSort = null): [TraceAnnotation!]! } type TraceAnnotation implements Node { @@ -2129,7 +2412,10 @@ type TraceAnnotation implements Node { score: Float explanation: String metadata: JSON! + identifier: String + source: AnnotationSource! traceId: GlobalID! + user: User } enum TraceAnnotationColumn { @@ -2166,6 +2452,21 @@ type TraceEdge { node: Trace! } +union TraceRetentionRule = TraceRetentionRuleMaxDays | TraceRetentionRuleMaxCount | TraceRetentionRuleMaxDaysOrCount + +type TraceRetentionRuleMaxCount { + maxCount: Int! +} + +type TraceRetentionRuleMaxDays { + maxDays: Float! +} + +type TraceRetentionRuleMaxDaysOrCount { + maxDays: Float! + maxCount: Int! +} + type UMAPPoint { id: GlobalID! @@ -2189,6 +2490,16 @@ input UnsetPromptLabelInput { promptLabelId: GlobalID! } +input UpdateAnnotationConfigInput { + id: GlobalID! + annotationConfig: AnnotationConfigInput! +} + +type UpdateAnnotationConfigPayload { + query: Query! + annotationConfig: AnnotationConfig! +} + type User implements Node { """The Globally Unique ID of this object""" id: GlobalID! diff --git a/app/src/RelayEnvironment.ts b/app/src/RelayEnvironment.ts index 32535a1360..e36d525b96 100644 --- a/app/src/RelayEnvironment.ts +++ b/app/src/RelayEnvironment.ts @@ -113,6 +113,6 @@ export default new Environment({ // navigates around the app. Relay will hold onto the specified number of // query results, allowing the user to return to recently visited pages // and reusing cached data if its available/fresh. - gcReleaseBufferSize: 10, + gcReleaseBufferSize: 20, }), }); diff --git a/app/src/Routes.tsx b/app/src/Routes.tsx index b6cacc0a84..750fc6af46 100644 --- a/app/src/Routes.tsx +++ b/app/src/Routes.tsx @@ -9,6 +9,9 @@ import { RouterProvider } from "react-router/dom"; import { SettingsAIProvidersPage } from "@phoenix/pages/settings/SettingsAIProvidersPage"; import { settingsAIProvidersPageLoader } from "@phoenix/pages/settings/settingsAIProvidersPageLoader"; +import { SettingsAnnotationsPage } from "@phoenix/pages/settings/SettingsAnnotationsPage"; +import { settingsAnnotationsPageLoader } from "@phoenix/pages/settings/settingsAnnotationsPageLoader"; +import { SettingsDataPage } from "@phoenix/pages/settings/SettingsDataPage"; import { SettingsGeneralPage } from "@phoenix/pages/settings/SettingsGeneralPage"; import { datasetLoaderQuery$data } from "./pages/dataset/__generated__/datasetLoaderQuery.graphql"; @@ -28,6 +31,7 @@ import { PromptVersionDetailsPage } from "./pages/prompt/PromptVersionDetailsPag import { promptVersionLoader } from "./pages/prompt/promptVersionLoader"; import { promptVersionsLoader } from "./pages/prompt/promptVersionsLoader"; import { PromptVersionsPage } from "./pages/prompt/PromptVersionsPage"; +import { settingsDataPageLoader } from "./pages/settings/settingsDataPageLoader"; import { sessionLoader } from "./pages/trace/sessionLoader"; import { SessionPage } from "./pages/trace/SessionPage"; import { @@ -320,6 +324,22 @@ const router = createBrowserRouter( crumb: () => "providers", }} /> + } + handle={{ + crumb: () => "annotations", + }} + /> + } + handle={{ + crumb: () => "data retention", + }} + loader={settingsDataPageLoader} + /> diff --git a/app/src/components/ColorSwatch.tsx b/app/src/components/ColorSwatch.tsx index 2a2ae33c2f..b57c780edf 100644 --- a/app/src/components/ColorSwatch.tsx +++ b/app/src/components/ColorSwatch.tsx @@ -1,15 +1,34 @@ import React from "react"; import { css } from "@emotion/react"; -export function ColorSwatch({ color }: { color: string }) { +import { SizingProps } from "@phoenix/components/types"; + +export function ColorSwatch({ + color, + size = "M", +}: { color: string } & SizingProps) { return ( ); diff --git a/app/src/components/FocusHotkey.tsx b/app/src/components/FocusHotkey.tsx new file mode 100644 index 0000000000..2caf859e54 --- /dev/null +++ b/app/src/components/FocusHotkey.tsx @@ -0,0 +1,28 @@ +import { FocusManagerOptions, useFocusManager } from "react-aria"; +import { useHotkeys } from "react-hotkeys-hook"; + +/** + * Place this component inside of a FocusScope, give it a hotkey, and it will + * focus the first element in the FocusScope when the hotkey is pressed. + */ +export const FocusHotkey = ({ + hotkey, + accept, +}: { + hotkey: string; + accept?: FocusManagerOptions["accept"]; +}) => { + const focus = useFocusManager(); + + useHotkeys( + hotkey, + () => { + focus?.focusFirst({ + accept, + }); + }, + { preventDefault: true } + ); + + return null; +}; diff --git a/app/src/components/KeyboardToken.tsx b/app/src/components/KeyboardToken.tsx new file mode 100644 index 0000000000..8bb8031e82 --- /dev/null +++ b/app/src/components/KeyboardToken.tsx @@ -0,0 +1,33 @@ +import React, { forwardRef, Ref } from "react"; +import { css } from "@emotion/react"; + +import { Keyboard, KeyboardProps } from "./content/Keyboard"; + +const keyboardTokenCSS = css` + background-color: var(--ac-global-color-primary-100); + color: var(--ac-global-color-primary-700); + padding: var(--ac-global-dimension-static-size-50) + var(--ac-global-dimension-static-size-100); + font-size: var(--ac-global-dimension-static-font-size-50); + border-radius: var(--ac-global-dimension-static-size-100); + border: 1px solid var(--ac-global-color-primary-200); + box-shadow: 0 2px 0 0 var(--ac-global-color-primary-200); + // Offset the shadow to make it look like it's on the key + margin-top: -1px; + text-transform: uppercase; +`; + +/** + * Keyboard Token represents text that specifies a keyboard command, + * and is styled to look like a keyboard key. + */ +export const KeyboardToken = forwardRef(function KeyboardToken( + { children, ...props }: KeyboardProps, + ref: Ref +) { + return ( + + {children} + + ); +}); diff --git a/app/src/components/ShareLinkButton.tsx b/app/src/components/ShareLinkButton.tsx new file mode 100644 index 0000000000..6e5125cc51 --- /dev/null +++ b/app/src/components/ShareLinkButton.tsx @@ -0,0 +1,49 @@ +import React from "react"; +import { Tooltip, TooltipTrigger } from "react-aria-components"; +import { useLocation } from "react-router"; + +import { Button, Icon, Icons, Text, View } from "@phoenix/components"; +import { useNotifySuccess } from "@phoenix/contexts"; + +export const ShareLinkButton = ({ + successText, + tooltipText = "Copy link to clipboard", + preserveSearchParams = false, +}: { + successText?: string; + tooltipText?: string; + preserveSearchParams?: boolean; +}) => { + const location = useLocation(); + const notifySuccess = useNotifySuccess(); + return ( + + + + + + {({ close }) => ( + + +
{ + e.preventDefault(); + const formData = new FormData(e.target as HTMLFormElement); + const explanation = formData.get(fieldName); + if (typeof explanation === "string") { + onSubmit?.(explanation); + } + close(); + }} + > + + + + + + Why did you give this score? + + + + +
+
+
+ )} +
+
+ + ); +}; diff --git a/app/src/components/annotation/AnnotationInputLabel.tsx b/app/src/components/annotation/AnnotationInputLabel.tsx new file mode 100644 index 0000000000..77dbb58aad --- /dev/null +++ b/app/src/components/annotation/AnnotationInputLabel.tsx @@ -0,0 +1,20 @@ +import React from "react"; +import { LabelProps } from "react-aria-components"; +import { css } from "@emotion/react"; + +import { classNames } from "@arizeai/components"; + +import { Label } from "@phoenix/components"; +import { ANNOTATION_INPUT_LABEL_WIDTH } from "@phoenix/components/annotation/constants"; + +export const AnnotationInputLabel = (props: LabelProps) => { + return ( +