From 9374e3419b3e51665756e1b5d0a97b6b007a0aae Mon Sep 17 00:00:00 2001 From: Sil Date: Sun, 27 Sep 2026 11:46:38 +0200 Subject: [PATCH 1/6] chore: prepare complete Data Slot 1.0.2 catalog upgrade --- package.json | 41 ++++---- pnpm-lock.yaml | 273 ++++++++++++++++++++++++++++--------------------- registry.json | 44 ++++---- 3 files changed, 203 insertions(+), 155 deletions(-) diff --git a/package.json b/package.json index 678a69a6c..bd4dd26ce 100644 --- a/package.json +++ b/package.json @@ -73,24 +73,29 @@ "dependencies": { "@astrojs/mdx": "^5.0.6", "@astrojs/sitemap": "^3.7.3", - "@data-slot/accordion": "^1.0.1", - "@data-slot/alert-dialog": "^1.0.1", - "@data-slot/collapsible": "^1.0.1", - "@data-slot/combobox": "^1.0.1", - "@data-slot/command": "^1.0.1", - "@data-slot/core": "^1.0.1", - "@data-slot/dialog": "^1.0.1", - "@data-slot/dropdown-menu": "^1.0.1", - "@data-slot/hover-card": "^1.0.1", - "@data-slot/navigation-menu": "^1.0.1", - "@data-slot/popover": "^1.0.1", - "@data-slot/radio-group": "^1.0.1", - "@data-slot/select": "^1.0.1", - "@data-slot/slider": "^1.0.1", - "@data-slot/switch": "^1.0.1", - "@data-slot/tabs": "^1.0.1", - "@data-slot/toggle": "^1.0.1", - "@data-slot/tooltip": "^1.0.1", + "@data-slot/accordion": "^1.0.2", + "@data-slot/alert-dialog": "^1.0.2", + "@data-slot/carousel": "^1.0.2", + "@data-slot/collapsible": "^1.0.2", + "@data-slot/combobox": "^1.0.2", + "@data-slot/command": "^1.0.2", + "@data-slot/core": "^1.0.2", + "@data-slot/dialog": "^1.0.2", + "@data-slot/drawer": "^1.0.2", + "@data-slot/dropdown-menu": "^1.0.2", + "@data-slot/hover-card": "^1.0.2", + "@data-slot/navigation-menu": "^1.0.2", + "@data-slot/popover": "^1.0.2", + "@data-slot/radio-group": "^1.0.2", + "@data-slot/resizable": "^1.0.2", + "@data-slot/select": "^1.0.2", + "@data-slot/slider": "^1.0.2", + "@data-slot/switch": "^1.0.2", + "@data-slot/tabs": "^1.0.2", + "@data-slot/toast": "^1.0.2", + "@data-slot/toggle": "^1.0.2", + "@data-slot/toggle-group": "^1.0.2", + "@data-slot/tooltip": "^1.0.2", "@fontsource-variable/geist": "^5.2.9", "@fontsource-variable/geist-mono": "^5.2.8", "@lexingtonthemes/seo": "^0.2.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ac67d3077..27a0e0ef4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,59 +15,74 @@ importers: specifier: ^3.7.3 version: 3.7.3 '@data-slot/accordion': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/alert-dialog': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 + '@data-slot/carousel': + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/collapsible': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/combobox': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/command': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/core': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/dialog': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 + '@data-slot/drawer': + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/dropdown-menu': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/hover-card': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/navigation-menu': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/popover': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/radio-group': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 + '@data-slot/resizable': + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/select': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/slider': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/switch': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/tabs': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 + '@data-slot/toast': + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/toggle': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 + '@data-slot/toggle-group': + specifier: ^1.0.2 + version: 1.0.2 '@data-slot/tooltip': - specifier: ^1.0.1 - version: 1.0.1 + specifier: ^1.0.2 + version: 1.0.2 '@fontsource-variable/geist': specifier: ^5.2.9 version: 5.3.0 @@ -444,59 +459,74 @@ packages: resolution: {integrity: sha512-GgcWwRCs/xPtaqlMy8qRhPnZf9vlWcWZNHAitnVQ3yk7JmSralSiq5q07yaffYE8SogtDm7zFeKccx1QNVARpw==} engines: {node: '>= 20.12.0'} - '@data-slot/accordion@1.0.1': - resolution: {integrity: sha512-gmg671YTOia+c3zM42FAikylWLpDd84UN0/fg2JvTD821bspm8t7Du+ILX2aJlWoGZEkxk6At/aqOpMEsQMajA==} + '@data-slot/accordion@1.0.2': + resolution: {integrity: sha512-SOs0DBMdU5l8amuRu1MAEGXORmTFhK3wMLrbl12Rj3hdzIQ6DYsoPvRvVUEs2FZ1RB+gT0PB/JWB1vvzAvBiKA==} - '@data-slot/alert-dialog@1.0.1': - resolution: {integrity: sha512-+3oTGvS9gVb35XcAJZRf6yAM5P7Pb/3r9TS4t++DkX0KLSnKjJ21WG8aUS1A42qNDc+twUlqcc3CLGDxtKIl2w==} + '@data-slot/alert-dialog@1.0.2': + resolution: {integrity: sha512-muBiDNPYF3EXvNTC0nMK3qff95vaPdndGARaHsYFKx0tUI++6wkncIOPD0/PbSFng4wpIssVf4Ila7+VeXCxzg==} - '@data-slot/collapsible@1.0.1': - resolution: {integrity: sha512-y0ugQ7+nvB9qWYcwP4fNRew+W0MJYMa+dgqbPZLB9Ga3eGu0KLC7wfA5iGxg592rGN2xjohl5ixGNuhaWvObng==} + '@data-slot/carousel@1.0.2': + resolution: {integrity: sha512-6ElknTlUM8rKp0sk5TN7gamQgXtmQo/9DIpAChOUXsmwa9Rp27sNO2N9OxMV+FSa3qfL7mImt7idJbYNZHe82g==} - '@data-slot/combobox@1.0.1': - resolution: {integrity: sha512-GefwzKOn849DA32laG4QttII1rVdJ+I1sqTi4vAeyHhaK4DnJfJq85T563DCIR1TGTEefSsFZTzxjFlniwZgbg==} + '@data-slot/collapsible@1.0.2': + resolution: {integrity: sha512-aqBQpbbZBfA+1dQJ5MMMpd17pTCdiphqG77KbAuyctVCIUcT0QCtJ8XT/aw2mOrlAzFPuuTYuvQNhqauRyM+9Q==} - '@data-slot/command@1.0.1': - resolution: {integrity: sha512-vkgJvBr4HjSIsILOObtzuXz2A0YujzEqfRJe0dZsbDuSnMxSTVfTk5UuDNMOB3n65Q2dEthKrSYX280x0Q/u0A==} + '@data-slot/combobox@1.0.2': + resolution: {integrity: sha512-Es4k9oe0K5DyccOm/9dVGz4NVlsYo0/3TkJLRC1VplItpfU0nORF71Ze3udMbznz+pz1i7mjpRvkh+SVkOHRWg==} - '@data-slot/core@1.0.1': - resolution: {integrity: sha512-hR5970E+ANJoawzd2LSCxnMYl+pe0VMj1IZVWYlG1UDTS+n55QrvuITMwj35+gLOCCbABhD5IMBnIJp3aVZoJA==} + '@data-slot/command@1.0.2': + resolution: {integrity: sha512-ONZ1HNJBp/fxmiW7AGCb4Samrb0GynFMQyIv4Be2okHwMlfwFfN1VIe9+JxXv8tLWSdjB2GsOQrNQyijLt9QXQ==} - '@data-slot/dialog@1.0.1': - resolution: {integrity: sha512-0xtsy0p3m4082rVK8IBgJjPcav5pXYYemj7VxfTR/1OGcqXL8wu2m05HH+fKYANEPd4iHsULjX5AWbEC9l9Z7A==} + '@data-slot/core@1.0.2': + resolution: {integrity: sha512-x48OCoPuPpZviCBi9tGJXRX05mB/XPb+//2MVlQU6x3kQQVexSZONNfyv791+4WJz+nxi7oxjryiLmTLCFNVEw==} - '@data-slot/dropdown-menu@1.0.1': - resolution: {integrity: sha512-JpB7ZXxpaOrG9rN7Q76xkBJwpToe9b1nc7QMbJpgmDbog03pfpyTUBQFhHjqOEK+sNUkabG3JfVAnGG0xwm75g==} + '@data-slot/dialog@1.0.2': + resolution: {integrity: sha512-Xke0TXqQHYlsW1SGcY/t/bX1Gr3doTq1+fHTngNJ16QThz7xr96VzAXZkTKGJo/bTe4NmO87qpILRSq4QiZfZA==} - '@data-slot/hover-card@1.0.1': - resolution: {integrity: sha512-WQMXfc6RxYmc3t7R0N/Gjz3LkLeWSJqcBQuE4c+SgM4xaVXmoFxc7PEis1BE+JlmMwbLywrGubCWQo1n05yWjg==} + '@data-slot/drawer@1.0.2': + resolution: {integrity: sha512-nCje+U7gCX3OVxrNxvE0VGEOnNWKeGgaq1JSnJ9kwvA5+7K1Ag+P3IYrRFaQaFbYRU2GKE60PlrzY7TaaoEaZA==} - '@data-slot/navigation-menu@1.0.1': - resolution: {integrity: sha512-qSFqHpUN93dui/VPKYgFlHp7s9pNPrEoXofJVPFkZMHnaa9+HAmfoQbPHWn6xHfHplGF6AUIUccEOm3qtpUkZg==} + '@data-slot/dropdown-menu@1.0.2': + resolution: {integrity: sha512-YUQuIRoapwBPlS/2oqES9gsMxyJiRugWRHlvfdtqFKTPUJCBbndsLCO+vJ4t2KDZhWrHqxyhcDMr85WbxiSmdA==} - '@data-slot/popover@1.0.1': - resolution: {integrity: sha512-4/FhCz5w6MRhXVB8hquZO0W5uyrwNTDu/UdUsavzWfNVK9pmFt4Rc7xjK6KH/uMqIu8gvxAYAsVDaFaOFsflHA==} + '@data-slot/hover-card@1.0.2': + resolution: {integrity: sha512-Itf7MvxLVrmXScg+8NG3V0QY+28YPyhmhOlnRLw35d0mKwMBtxkyYFMMpBMxYRxV3WXuv0ZFyhFjzscjDFhgFg==} - '@data-slot/radio-group@1.0.1': - resolution: {integrity: sha512-HCAmwdjBHY69R/q6V1k6Xc88lzfUP4idXQoOUkWwwKqqlP2DXH2NEuk9/p0zSBXDKerY8qg8UI0Ldvff/ydnIA==} + '@data-slot/navigation-menu@1.0.2': + resolution: {integrity: sha512-duGcIWtwjFwurSZZsgUrrbIGgxUVext81cpOIIo2DIVuC/JhtcW5xD+AllPDqXvbyhhsv9fKcLx76WRF2koIIA==} - '@data-slot/select@1.0.1': - resolution: {integrity: sha512-megYWB6aa1OupAFmQeTiRLO0cKmXyvJvS6Tht6P/gc59ioduxGLdU1SjIZS1XVK6ejN2FfXKOgx4dSsqZLwzpA==} + '@data-slot/popover@1.0.2': + resolution: {integrity: sha512-eVDSmfiXHrUlwVdQ0yO0LPkbZJL0R1ygrieAC/LOzsi+ODhCgilnbT2azKlDuKJoPNMOaMOft2FkRz7HIMF4/A==} - '@data-slot/slider@1.0.1': - resolution: {integrity: sha512-1h41stz/cZXk2HStHgAqzH/ymaiNAg6tN51HS62WnL0m4y3MJ3OvKhXKp8hdd8PgXpg5CPxrPj5k57eVzMvF1g==} + '@data-slot/radio-group@1.0.2': + resolution: {integrity: sha512-Pp2clfsNDm2g1JdLhRs3a7c9t2k4gYtEndxBkQ6E9wwcHLs0fXiUiG3JMyenGPGdTdNkAlfq3Y9yY+z73AXycg==} - '@data-slot/switch@1.0.1': - resolution: {integrity: sha512-q5Y0vwuKTro/FbZAjf67CcFK+Bl7MZoA4TOyvPPtlIeRcNmblx1Bn1OQxwpwtAE5nObNCo7l3ily3OcssAk5pw==} + '@data-slot/resizable@1.0.2': + resolution: {integrity: sha512-bEqPmnuD2wNqkuqM+uaku09kw5/0wSBbvtEQb8YM785pxQEa8Rs54hK6whLpP5RZmxH8h5OdT7anRQaftmlHQw==} - '@data-slot/tabs@1.0.1': - resolution: {integrity: sha512-hnr1PJhVbX+yKEAbGgo+/ITAY/Ibegxqb6G5+IFTfukQ5zJOapxrlHr4M0ERlmAKy/nNQGs830DbI5JQbBTNaA==} + '@data-slot/select@1.0.2': + resolution: {integrity: sha512-JWI1G14HsdS6HoTlLqfjqyaMwkfoWKVjwjp1If96UTqFnlyee65pRvVi4h1qEJm/GlRbUR9l4bh9YPvdzUZKow==} - '@data-slot/toggle@1.0.1': - resolution: {integrity: sha512-ktkHGv/E3razY5+LGXyVC9hAwnNHZkXViBE3uyWEaO4leW/0ui4le7Fepg37J6PmK4hQTqhTMDKC1Gfs1ccHTQ==} + '@data-slot/slider@1.0.2': + resolution: {integrity: sha512-NBOsXVtg7l5SDJPK/LFc9WO88P642fGhdfz7edUXPu5VpcKXHkb+TRt4YGcsnNREYKm+2nWgFIzki9Bifn35oQ==} - '@data-slot/tooltip@1.0.1': - resolution: {integrity: sha512-Fmv/KqjnaoreUAbOMy1QsZnwGEFTh5eVFuWtOrp/a7J6NFi2oQNyzuqq3ZTx9lVJqSuSAkjPFk+FID3RDdyVUw==} + '@data-slot/switch@1.0.2': + resolution: {integrity: sha512-m6GUA8XoCWVw08W8GXqo5NGi9qi/1hMxwFcCXFYlHSQnmtvDCIX2U0tr/gFnkP7+y9I7g1Mm1KVKAX+1Rw6Gwg==} + + '@data-slot/tabs@1.0.2': + resolution: {integrity: sha512-2Oc13RY/sMtXTKX3TuUhCJbh+q/g1GjuNOC7wGHC82X2rmJK6Xc+CXd9eIS1imzcRp7hpjJigGichstJ0vVGkw==} + + '@data-slot/toast@1.0.2': + resolution: {integrity: sha512-WOUXTlmFC1j5EwBgo6AAjaEs09HKUOhUFo2vDXBGwgpOIRZo4hOH49B9LvGusMVp43+1rHBv2EfWWvrM21008w==} + + '@data-slot/toggle-group@1.0.2': + resolution: {integrity: sha512-/poEuONG6GM4HkTzvYyWBvwFMR2KLeIVQfOofuFz+hAKw09CY4WkuLqiBOdKjZKmLgA5H+AoHyKVQ5LPYA/EMA==} + + '@data-slot/toggle@1.0.2': + resolution: {integrity: sha512-iJdvqRE1ClFv8uNswUMM7u5edR1uhMkGbnfAO6t3KlB2mAwIxeuX9Y/3seml5qvq89l7CTLZwSaJHYnGHfhlLg==} + + '@data-slot/tooltip@1.0.2': + resolution: {integrity: sha512-B++AfDWpbD8M7TRNs3Md5mF3ztgaDRHvBqBkSVOFti+9dx8xNRBUtficyixnew67Yqdxwu3DXVqEac1342WWnw==} '@dotenvx/dotenvx@1.64.0': resolution: {integrity: sha512-6+xRpZaWuHXEqnhBjae+VmQI9Uaqw5Uzu/ScpO+W7ww9Zp3lHSNBoNjFcUxhrCyc7pRGQzyDjhKzloqrPHERiQ==} @@ -3809,10 +3839,6 @@ packages: tmp-promise@3.0.3: resolution: {integrity: sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==} - tmp@0.2.5: - resolution: {integrity: sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==} - engines: {node: '>=14.14'} - tmp@0.2.7: resolution: {integrity: sha512-e0votIpp4Uo2AJYSzVHV6xCcawuiez3DzqDAbrTc3YxBkplN6e+dM13ZeIcZnDg/QpSuU2zfZ3rzwY8ukEnaXw==} engines: {node: '>=14.14'} @@ -4835,75 +4861,95 @@ snapshots: fast-wrap-ansi: 0.2.0 sisteransi: 1.0.5 - '@data-slot/accordion@1.0.1': + '@data-slot/accordion@1.0.2': + dependencies: + '@data-slot/core': 1.0.2 + + '@data-slot/alert-dialog@1.0.2': + dependencies: + '@data-slot/core': 1.0.2 + + '@data-slot/carousel@1.0.2': + dependencies: + '@data-slot/core': 1.0.2 + + '@data-slot/collapsible@1.0.2': + dependencies: + '@data-slot/core': 1.0.2 + + '@data-slot/combobox@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/alert-dialog@1.0.1': + '@data-slot/command@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/collapsible@1.0.1': + '@data-slot/core@1.0.2': {} + + '@data-slot/dialog@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/combobox@1.0.1': + '@data-slot/drawer@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/command@1.0.1': + '@data-slot/dropdown-menu@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/core@1.0.1': {} + '@data-slot/hover-card@1.0.2': + dependencies: + '@data-slot/core': 1.0.2 - '@data-slot/dialog@1.0.1': + '@data-slot/navigation-menu@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/dropdown-menu@1.0.1': + '@data-slot/popover@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/hover-card@1.0.1': + '@data-slot/radio-group@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/navigation-menu@1.0.1': + '@data-slot/resizable@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/popover@1.0.1': + '@data-slot/select@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/radio-group@1.0.1': + '@data-slot/slider@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/select@1.0.1': + '@data-slot/switch@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/slider@1.0.1': + '@data-slot/tabs@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/switch@1.0.1': + '@data-slot/toast@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/tabs@1.0.1': + '@data-slot/toggle-group@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/toggle@1.0.1': + '@data-slot/toggle@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 - '@data-slot/tooltip@1.0.1': + '@data-slot/tooltip@1.0.2': dependencies: - '@data-slot/core': 1.0.1 + '@data-slot/core': 1.0.2 '@dotenvx/dotenvx@1.64.0': dependencies: @@ -8602,10 +8648,7 @@ snapshots: tmp-promise@3.0.3: dependencies: - tmp: 0.2.5 - optional: true - - tmp@0.2.5: + tmp: 0.2.7 optional: true tmp@0.2.7: {} diff --git a/registry.json b/registry.json index 269e38119..cb03a7206 100644 --- a/registry.json +++ b/registry.json @@ -10,7 +10,7 @@ "description": "A vertically stacked set of interactive headings that each reveal a section of content.", "categories": ["ui"], "docs": "https://ui.full.dev/components/accordion/", - "dependencies": ["@data-slot/accordion@^1.0.1", "@lucide/astro"], + "dependencies": ["@data-slot/accordion@^1.0.2", "@lucide/astro"], "files": [ { "path": "src/components/ui/accordion/accordion.astro", @@ -67,7 +67,7 @@ "description": "A modal dialog for important confirmations that expects a response.", "categories": ["ui"], "docs": "https://ui.full.dev/components/alert-dialog/", - "dependencies": ["@data-slot/alert-dialog@^1.0.1"], + "dependencies": ["@data-slot/alert-dialog@^1.0.2"], "registryDependencies": ["@fulldev/button"], "files": [ { @@ -327,7 +327,7 @@ "description": "An interactive component which expands/collapses a panel.", "categories": ["ui"], "docs": "https://ui.full.dev/components/collapsible/", - "dependencies": ["@data-slot/collapsible@^1.0.1"], + "dependencies": ["@data-slot/collapsible@^1.0.2"], "files": [ { "path": "src/components/ui/collapsible/collapsible.astro", @@ -355,8 +355,8 @@ "categories": ["ui"], "docs": "https://ui.full.dev/components/combobox/", "dependencies": [ - "@data-slot/combobox@^1.0.1", - "@data-slot/core@^1.0.1", + "@data-slot/combobox@^1.0.2", + "@data-slot/core@^1.0.2", "@lucide/astro" ], "registryDependencies": ["@fulldev/input-group"], @@ -419,9 +419,9 @@ "categories": ["ui"], "docs": "https://ui.full.dev/components/command/", "dependencies": [ - "@data-slot/command@^1.0.1", + "@data-slot/command@^1.0.2", "@lucide/astro", - "@data-slot/core@^1.0.1" + "@data-slot/core@^1.0.2" ], "registryDependencies": ["@fulldev/dialog"], "files": [ @@ -474,7 +474,7 @@ "description": "A window overlaid on either the primary window or another dialog window, rendering the content underneath inert.", "categories": ["ui"], "docs": "https://ui.full.dev/components/dialog/", - "dependencies": ["@data-slot/dialog@^1.0.1", "@lucide/astro"], + "dependencies": ["@data-slot/dialog@^1.0.2", "@lucide/astro"], "registryDependencies": ["@fulldev/button"], "files": [ { @@ -530,7 +530,7 @@ "description": "Displays a menu to the user, such as a set of actions or functions, triggered by a button.", "categories": ["ui"], "docs": "https://ui.full.dev/components/dropdown-menu/", - "dependencies": ["@data-slot/dropdown-menu@^1.0.1", "@lucide/astro"], + "dependencies": ["@data-slot/dropdown-menu@^1.0.2", "@lucide/astro"], "files": [ { "path": "src/components/ui/dropdown-menu/dropdown-menu.astro", @@ -725,8 +725,8 @@ "categories": ["ui"], "docs": "https://ui.full.dev/components/hover-card/", "dependencies": [ - "@data-slot/hover-card@^1.0.1", - "@data-slot/core@^1.0.1" + "@data-slot/hover-card@^1.0.2", + "@data-slot/core@^1.0.2" ], "files": [ { @@ -1020,7 +1020,7 @@ "description": "A collection of links for navigating websites.", "categories": ["ui"], "docs": "https://ui.full.dev/components/navigation-menu/", - "dependencies": ["@data-slot/navigation-menu@^1.0.1", "@lucide/astro"], + "dependencies": ["@data-slot/navigation-menu@^1.0.2", "@lucide/astro"], "files": [ { "path": "src/components/ui/navigation-menu/navigation-menu.astro", @@ -1098,7 +1098,7 @@ "description": "Displays rich content in a floating layer, triggered by a button.", "categories": ["ui"], "docs": "https://ui.full.dev/components/popover/", - "dependencies": ["@data-slot/popover@^1.0.1"], + "dependencies": ["@data-slot/popover@^1.0.2"], "files": [ { "path": "src/components/ui/popover/popover.astro", @@ -1167,7 +1167,7 @@ "description": "A set of checkable buttons, known as radio buttons, where no more than one of the buttons can be checked at a time.", "categories": ["ui"], "docs": "https://ui.full.dev/components/radio-group/", - "dependencies": ["@data-slot/radio-group@^1.0.1"], + "dependencies": ["@data-slot/radio-group@^1.0.2"], "files": [ { "path": "src/components/ui/radio-group/radio-group.astro", @@ -1209,7 +1209,7 @@ "description": "Displays a list of options for the user to pick from, triggered by a button.", "categories": ["ui"], "docs": "https://ui.full.dev/components/select/", - "dependencies": ["@data-slot/select@^1.0.1", "@lucide/astro"], + "dependencies": ["@data-slot/select@^1.0.2", "@lucide/astro"], "files": [ { "path": "src/components/ui/select/select.astro", @@ -1304,7 +1304,7 @@ "description": "A sliding panel component that appears from the edge of the screen.", "categories": ["ui"], "docs": "https://ui.full.dev/components/sheet/", - "dependencies": ["@data-slot/dialog@^1.0.1", "@lucide/astro"], + "dependencies": ["@data-slot/dialog@^1.0.2", "@lucide/astro"], "registryDependencies": ["@fulldev/button", "@fulldev/dialog"], "files": [ { @@ -1352,7 +1352,7 @@ "description": "A composable, themeable, and customizable Astro sidebar component.", "categories": ["ui"], "docs": "https://ui.full.dev/components/sidebar/", - "dependencies": ["@data-slot/tooltip@^1.0.1", "@lucide/astro"], + "dependencies": ["@data-slot/tooltip@^1.0.2", "@lucide/astro"], "registryDependencies": [ "@fulldev/layout", "@fulldev/button", @@ -1468,7 +1468,7 @@ "description": "An input where the user selects a value from within a given range.", "categories": ["ui"], "docs": "https://ui.full.dev/components/slider/", - "dependencies": ["@data-slot/slider@^1.0.1"], + "dependencies": ["@data-slot/slider@^1.0.2"], "files": [ { "path": "src/components/ui/slider/slider.astro", @@ -1524,7 +1524,7 @@ "description": "A control that allows the user to toggle between checked and not checked.", "categories": ["ui"], "docs": "https://ui.full.dev/components/switch/", - "dependencies": ["@data-slot/switch@^1.0.1"], + "dependencies": ["@data-slot/switch@^1.0.2"], "files": [ { "path": "src/components/ui/switch/switch.astro", @@ -1589,7 +1589,7 @@ "description": "A set of layered sections of content, known as tabs, that display one panel of content at a time.", "categories": ["ui"], "docs": "https://ui.full.dev/components/tabs/", - "dependencies": ["@data-slot/tabs@^1.0.1"], + "dependencies": ["@data-slot/tabs@^1.0.2"], "files": [ { "path": "src/components/ui/tabs/tabs.astro", @@ -1658,7 +1658,7 @@ "description": "A two-state button that can be either on or off.", "categories": ["ui"], "docs": "https://ui.full.dev/components/toggle/", - "dependencies": ["@data-slot/toggle@^1.0.1"], + "dependencies": ["@data-slot/toggle@^1.0.2"], "files": [ { "path": "src/components/ui/toggle/toggle.astro", @@ -1699,7 +1699,7 @@ "description": "Displays contextual information when a user hovers or focuses a trigger.", "categories": ["ui"], "docs": "https://ui.full.dev/components/tooltip/", - "dependencies": ["@data-slot/tooltip@^1.0.1"], + "dependencies": ["@data-slot/tooltip@^1.0.2"], "files": [ { "path": "src/components/ui/tooltip/tooltip.astro", From 889efc60ceb161bfd9d3b4569b9901e9512fc58a Mon Sep 17 00:00:00 2001 From: Sil Date: Sun, 27 Sep 2026 12:03:59 +0200 Subject: [PATCH 2/6] feat: complete Data Slot catalog and adopt shadcn Typeset --- .changeset/data-slot-catalog-typeset.md | 11 + astro.config.ts | 2 +- package.json | 1 - pnpm-lock.yaml | 8 - public/r/accordion.json | 2 +- public/r/alert-dialog.json | 2 +- public/r/aspect-ratio.json | 23 + public/r/attachment.json | 66 +++ public/r/button-group.json | 41 ++ public/r/carousel.json | 16 +- public/r/collapsible.json | 2 +- public/r/combobox.json | 8 +- public/r/command.json | 4 +- public/r/components.json | 8 + public/r/dialog.json | 2 +- public/r/doc-1.json | 2 +- public/r/drawer.json | 109 +++++ public/r/dropdown-menu.json | 2 +- public/r/hover-card.json | 4 +- public/r/init.json | 2 +- public/r/navigation-menu.json | 4 +- public/r/pagination.json | 59 +++ public/r/popover.json | 2 +- public/r/radio-group.json | 2 +- public/r/registry.json | 438 ++++++++++++++++- public/r/resizable.json | 36 ++ public/r/reviews-3.json | 2 +- public/r/select.json | 4 +- public/r/sheet.json | 2 +- public/r/sidebar.json | 2 +- public/r/slider.json | 4 +- public/r/switch.json | 2 +- public/r/tabs.json | 2 +- public/r/toast.json | 80 ++++ public/r/toggle-group.json | 34 ++ public/r/toggle.json | 2 +- public/r/tooltip.json | 2 +- public/r/typography.json | 37 +- registry.json | 355 +++++++++++++- registry/init/global.css | 2 + src/components/blocks/doc-1.astro | 76 +++ src/components/blocks/reviews-3.astro | 2 +- src/components/live-code.astro | 5 +- .../ui/aspect-ratio/aspect-ratio.astro | 25 + src/components/ui/aspect-ratio/index.ts | 1 + .../ui/attachment/attachment-action.astro | 20 + .../ui/attachment/attachment-actions.astro | 20 + .../ui/attachment/attachment-content.astro | 20 + .../attachment/attachment-description.astro | 20 + .../ui/attachment/attachment-group.astro | 20 + .../ui/attachment/attachment-media.astro | 36 ++ .../ui/attachment/attachment-title.astro | 20 + .../ui/attachment/attachment-trigger.astro | 24 + src/components/ui/attachment/attachment.astro | 52 +++ src/components/ui/attachment/index.ts | 9 + .../button-group/button-group-separator.astro | 29 ++ .../ui/button-group/button-group-text.astro | 20 + .../ui/button-group/button-group-variants.ts | 20 + .../ui/button-group/button-group.astro | 30 ++ src/components/ui/button-group/index.ts | 7 + .../ui/carousel/carousel-content.astro | 24 +- .../ui/carousel/carousel-item.astro | 7 +- .../ui/carousel/carousel-next.astro | 3 - .../ui/carousel/carousel-previous.astro | 3 - src/components/ui/carousel/carousel.astro | 238 +--------- src/components/ui/carousel/index.ts | 6 +- .../ui/combobox/combobox-input.astro | 15 +- .../ui/combobox/combobox-trigger.astro | 14 +- src/components/ui/drawer/drawer-close.astro | 13 + src/components/ui/drawer/drawer-content.astro | 43 ++ .../ui/drawer/drawer-description.astro | 17 + src/components/ui/drawer/drawer-footer.astro | 17 + src/components/ui/drawer/drawer-header.astro | 17 + .../ui/drawer/drawer-indent-background.astro | 11 + src/components/ui/drawer/drawer-indent.astro | 11 + src/components/ui/drawer/drawer-overlay.astro | 21 + src/components/ui/drawer/drawer-popup.astro | 36 ++ src/components/ui/drawer/drawer-portal.astro | 27 ++ .../ui/drawer/drawer-provider.astro | 11 + .../ui/drawer/drawer-swipe-handle.astro | 20 + src/components/ui/drawer/drawer-title.astro | 17 + src/components/ui/drawer/drawer-trigger.astro | 21 + .../ui/drawer/drawer-viewport.astro | 21 + .../drawer-virtual-keyboard-provider.astro | 11 + src/components/ui/drawer/drawer.astro | 60 +++ src/components/ui/drawer/index.ts | 28 ++ .../ui/navigation-menu/navigation-menu.astro | 4 +- src/components/ui/pagination/index.ts | 7 + .../ui/pagination/pagination-content.astro | 17 + .../ui/pagination/pagination-ellipsis.astro | 22 + .../ui/pagination/pagination-item.astro | 11 + .../ui/pagination/pagination-link.astro | 41 ++ .../ui/pagination/pagination-next.astro | 27 ++ .../ui/pagination/pagination-previous.astro | 27 ++ src/components/ui/pagination/pagination.astro | 19 + src/components/ui/resizable/index.ts | 4 + .../ui/resizable/resizable-handle.astro | 32 ++ .../ui/resizable/resizable-panel.astro | 36 ++ src/components/ui/resizable/resizable.astro | 43 ++ src/components/ui/select/select-content.astro | 8 +- src/components/ui/slider/slider.astro | 2 +- src/components/ui/toast/index.ts | 26 ++ src/components/ui/toast/toast-action.astro | 25 + src/components/ui/toast/toast-close.astro | 27 ++ src/components/ui/toast/toast-content.astro | 20 + .../ui/toast/toast-description.astro | 18 + src/components/ui/toast/toast-icon.astro | 37 ++ src/components/ui/toast/toast-item.astro | 28 ++ src/components/ui/toast/toast-template.astro | 11 + src/components/ui/toast/toast-title.astro | 17 + src/components/ui/toast/toast-viewport.astro | 20 + src/components/ui/toast/toast.astro | 51 ++ src/components/ui/toast/toaster.astro | 37 ++ src/components/ui/toggle-group/index.ts | 2 + .../ui/toggle-group/toggle-group-item.astro | 44 ++ .../ui/toggle-group/toggle-group.astro | 74 +++ src/components/ui/typography/typeset.css | 441 ++++++++++++++++++ .../ui/typography/typography-a.astro | 35 +- .../ui/typography/typography-blockquote.astro | 27 +- .../ui/typography/typography-h1.astro | 39 +- .../ui/typography/typography-h2.astro | 44 +- .../ui/typography/typography-h3.astro | 35 +- .../ui/typography/typography-h4.astro | 35 +- .../typography/typography-inline-code.astro | 35 +- .../ui/typography/typography-lead.astro | 30 +- .../ui/typography/typography-list-item.astro | 28 +- .../ui/typography/typography-list.astro | 50 +- .../ui/typography/typography-p.astro | 37 +- .../ui/typography/typography-table-cell.astro | 49 +- .../ui/typography/typography-table-head.astro | 44 +- .../ui/typography/typography-table-row.astro | 27 +- .../ui/typography/typography-table.astro | 36 +- src/components/ui/typography/typography.astro | 293 +----------- src/content/pages/components/aspect-ratio.mdx | 118 +++++ src/content/pages/components/attachment.mdx | 227 +++++++++ src/content/pages/components/button-group.mdx | 166 +++++++ src/content/pages/components/carousel.mdx | 232 ++++----- src/content/pages/components/drawer.mdx | 212 +++++++++ .../pages/components/navigation-menu.mdx | 5 + src/content/pages/components/pagination.mdx | 188 ++++++++ src/content/pages/components/resizable.mdx | 219 +++++++++ src/content/pages/components/select.mdx | 3 +- src/content/pages/components/slider.mdx | 28 +- src/content/pages/components/toast.mdx | 172 +++++++ src/content/pages/components/toggle-group.mdx | 214 +++++++++ src/content/pages/components/typography.mdx | 42 +- src/styles/global.css | 2 + tests/visual.spec.ts | 13 + 148 files changed, 5178 insertions(+), 1239 deletions(-) create mode 100644 .changeset/data-slot-catalog-typeset.md create mode 100644 public/r/aspect-ratio.json create mode 100644 public/r/attachment.json create mode 100644 public/r/button-group.json create mode 100644 public/r/drawer.json create mode 100644 public/r/pagination.json create mode 100644 public/r/resizable.json create mode 100644 public/r/toast.json create mode 100644 public/r/toggle-group.json create mode 100644 src/components/ui/aspect-ratio/aspect-ratio.astro create mode 100644 src/components/ui/aspect-ratio/index.ts create mode 100644 src/components/ui/attachment/attachment-action.astro create mode 100644 src/components/ui/attachment/attachment-actions.astro create mode 100644 src/components/ui/attachment/attachment-content.astro create mode 100644 src/components/ui/attachment/attachment-description.astro create mode 100644 src/components/ui/attachment/attachment-group.astro create mode 100644 src/components/ui/attachment/attachment-media.astro create mode 100644 src/components/ui/attachment/attachment-title.astro create mode 100644 src/components/ui/attachment/attachment-trigger.astro create mode 100644 src/components/ui/attachment/attachment.astro create mode 100644 src/components/ui/attachment/index.ts create mode 100644 src/components/ui/button-group/button-group-separator.astro create mode 100644 src/components/ui/button-group/button-group-text.astro create mode 100644 src/components/ui/button-group/button-group-variants.ts create mode 100644 src/components/ui/button-group/button-group.astro create mode 100644 src/components/ui/button-group/index.ts create mode 100644 src/components/ui/drawer/drawer-close.astro create mode 100644 src/components/ui/drawer/drawer-content.astro create mode 100644 src/components/ui/drawer/drawer-description.astro create mode 100644 src/components/ui/drawer/drawer-footer.astro create mode 100644 src/components/ui/drawer/drawer-header.astro create mode 100644 src/components/ui/drawer/drawer-indent-background.astro create mode 100644 src/components/ui/drawer/drawer-indent.astro create mode 100644 src/components/ui/drawer/drawer-overlay.astro create mode 100644 src/components/ui/drawer/drawer-popup.astro create mode 100644 src/components/ui/drawer/drawer-portal.astro create mode 100644 src/components/ui/drawer/drawer-provider.astro create mode 100644 src/components/ui/drawer/drawer-swipe-handle.astro create mode 100644 src/components/ui/drawer/drawer-title.astro create mode 100644 src/components/ui/drawer/drawer-trigger.astro create mode 100644 src/components/ui/drawer/drawer-viewport.astro create mode 100644 src/components/ui/drawer/drawer-virtual-keyboard-provider.astro create mode 100644 src/components/ui/drawer/drawer.astro create mode 100644 src/components/ui/drawer/index.ts create mode 100644 src/components/ui/pagination/index.ts create mode 100644 src/components/ui/pagination/pagination-content.astro create mode 100644 src/components/ui/pagination/pagination-ellipsis.astro create mode 100644 src/components/ui/pagination/pagination-item.astro create mode 100644 src/components/ui/pagination/pagination-link.astro create mode 100644 src/components/ui/pagination/pagination-next.astro create mode 100644 src/components/ui/pagination/pagination-previous.astro create mode 100644 src/components/ui/pagination/pagination.astro create mode 100644 src/components/ui/resizable/index.ts create mode 100644 src/components/ui/resizable/resizable-handle.astro create mode 100644 src/components/ui/resizable/resizable-panel.astro create mode 100644 src/components/ui/resizable/resizable.astro create mode 100644 src/components/ui/toast/index.ts create mode 100644 src/components/ui/toast/toast-action.astro create mode 100644 src/components/ui/toast/toast-close.astro create mode 100644 src/components/ui/toast/toast-content.astro create mode 100644 src/components/ui/toast/toast-description.astro create mode 100644 src/components/ui/toast/toast-icon.astro create mode 100644 src/components/ui/toast/toast-item.astro create mode 100644 src/components/ui/toast/toast-template.astro create mode 100644 src/components/ui/toast/toast-title.astro create mode 100644 src/components/ui/toast/toast-viewport.astro create mode 100644 src/components/ui/toast/toast.astro create mode 100644 src/components/ui/toast/toaster.astro create mode 100644 src/components/ui/toggle-group/index.ts create mode 100644 src/components/ui/toggle-group/toggle-group-item.astro create mode 100644 src/components/ui/toggle-group/toggle-group.astro create mode 100644 src/components/ui/typography/typeset.css create mode 100644 src/content/pages/components/aspect-ratio.mdx create mode 100644 src/content/pages/components/attachment.mdx create mode 100644 src/content/pages/components/button-group.mdx create mode 100644 src/content/pages/components/drawer.mdx create mode 100644 src/content/pages/components/pagination.mdx create mode 100644 src/content/pages/components/resizable.mdx create mode 100644 src/content/pages/components/toast.mdx create mode 100644 src/content/pages/components/toggle-group.mdx diff --git a/.changeset/data-slot-catalog-typeset.md b/.changeset/data-slot-catalog-typeset.md new file mode 100644 index 000000000..498f91cd8 --- /dev/null +++ b/.changeset/data-slot-catalog-typeset.md @@ -0,0 +1,11 @@ +--- +"fulldev-ui": minor +--- + +Complete Data Slot component coverage with Drawer, Toast, Toggle Group and Resizable, and upgrade all Data Slot packages to 1.0.2. Add Attachment, Button Group, Pagination and Aspect Ratio as Astro components without their own client scripts. + +Replace the Embla Carousel with Data Slot's native scrolling carousel. This is a breaking change: replace `opts` with `defaultIndex`, `orientation`, `drag` and `loop`; use `CarouselController` and `CarouselOptions` instead of Embla types; replace `carousel:init` and `carousel:select` with `carousel:change` and `carousel:set`. Carousel now displays one full-width slide at a time. Remove fractional slide widths and the old content/item spacing pattern. Examples and the reviews block use the new API. + +Adopt shadcn Typeset for rendered prose while preserving the existing Typography component exports. Typography sizes now control the prose rhythm, with updated heading spacing, nested content styling and semantic tables. Keep docs-specific code controls out of installable Typography styles. + +Improve Combobox trigger and clear focus styling, align Select popper placement and Slider thumb positioning with shadcn, and use a consistent 8px default Navigation Menu gap. diff --git a/astro.config.ts b/astro.config.ts index 9a58f5551..f2c12801b 100644 --- a/astro.config.ts +++ b/astro.config.ts @@ -57,6 +57,6 @@ export default defineConfig({ liveCode({ layout: "/src/components/live-code.astro", }), - mdx(), + mdx({ gfm: true }), ], }) diff --git a/package.json b/package.json index bd4dd26ce..d9870a134 100644 --- a/package.json +++ b/package.json @@ -107,7 +107,6 @@ "astro-robots-txt": "^1.0.0", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", - "embla-carousel": "^8.6.0", "lucide-static": "^1.22.0", "shadcn": "^4.12.0", "simple-icons": "^16.24.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 27a0e0ef4..7f988a8e8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -116,9 +116,6 @@ importers: clsx: specifier: ^2.1.1 version: 2.1.1 - embla-carousel: - specifier: ^8.6.0 - version: 8.6.0 lucide-static: specifier: ^1.22.0 version: 1.34.0 @@ -2144,9 +2141,6 @@ packages: electron-to-chromium@1.5.349: resolution: {integrity: sha512-QsWVGyRuY07Aqb234QytTfwd5d9AJlfNIQ5wIOl1L+PZDzI9d9+Fn0FRale/QYlFxt/bUnB0/nLd1jFPGxGK1A==} - embla-carousel@8.6.0: - resolution: {integrity: sha512-SjWyZBHJPbqxHOzckOfo8lHisEaJWmwd23XppYFYVh10bU66/Pn5tkVkbkCMZVdbUE5eTCI2nD8OyIP4Z+uwkA==} - emmet@2.4.11: resolution: {integrity: sha512-23QPJB3moh/U9sT4rQzGgeyyGIrcM+GH5uVYg2C6wZIxAIJq7Ng3QLT79tl8FUwDXhyq9SusfknOrofAKqvgyQ==} @@ -6486,8 +6480,6 @@ snapshots: electron-to-chromium@1.5.349: {} - embla-carousel@8.6.0: {} - emmet@2.4.11: dependencies: '@emmetio/abbreviation': 2.3.3 diff --git a/public/r/accordion.json b/public/r/accordion.json index 1304ffd9c..ac4f81d3a 100644 --- a/public/r/accordion.json +++ b/public/r/accordion.json @@ -4,7 +4,7 @@ "title": "Accordion", "description": "A vertically stacked set of interactive headings that each reveal a section of content.", "dependencies": [ - "@data-slot/accordion@^1.0.1", + "@data-slot/accordion@^1.0.2", "@lucide/astro" ], "files": [ diff --git a/public/r/alert-dialog.json b/public/r/alert-dialog.json index e0fa792c0..3d5694549 100644 --- a/public/r/alert-dialog.json +++ b/public/r/alert-dialog.json @@ -4,7 +4,7 @@ "title": "Alert Dialog", "description": "A modal dialog for important confirmations that expects a response.", "dependencies": [ - "@data-slot/alert-dialog@^1.0.1" + "@data-slot/alert-dialog@^1.0.2" ], "registryDependencies": [ "@fulldev/button" diff --git a/public/r/aspect-ratio.json b/public/r/aspect-ratio.json new file mode 100644 index 000000000..bfdeee85b --- /dev/null +++ b/public/r/aspect-ratio.json @@ -0,0 +1,23 @@ +{ + "$schema": "https://ui.shadcn.com/schema/registry-item.json", + "name": "aspect-ratio", + "title": "Aspect Ratio", + "description": "Displays content within a desired ratio.", + "files": [ + { + "path": "src/components/ui/aspect-ratio/aspect-ratio.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\"> & {\n ratio: number\n}\n\nconst { class: className, ratio, style, ...props } = Astro.props\n\nconst resolvedStyle =\n typeof style === \"string\"\n ? `--ratio: ${ratio}; ${style}`\n : { \"--ratio\": ratio, ...(style ?? {}) }\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/aspect-ratio/index.ts", + "content": "export { default as AspectRatio } from \"./aspect-ratio.astro\"\n", + "type": "registry:ui" + } + ], + "docs": "https://ui.full.dev/components/aspect-ratio/", + "categories": [ + "ui" + ], + "type": "registry:ui" +} \ No newline at end of file diff --git a/public/r/attachment.json b/public/r/attachment.json new file mode 100644 index 000000000..bfbfdb1a5 --- /dev/null +++ b/public/r/attachment.json @@ -0,0 +1,66 @@ +{ + "$schema": "https://ui.shadcn.com/schema/registry-item.json", + "name": "attachment", + "title": "Attachment", + "description": "Displays a file or image attachment with media, metadata, state, and actions.", + "registryDependencies": [ + "@fulldev/button" + ], + "files": [ + { + "path": "src/components/ui/attachment/attachment-action.astro", + "content": "---\nimport type { HTMLTag, Polymorphic } from \"astro/types\"\n\nimport { Button, type ButtonVariantProps } from \"@/components/ui/button\"\n\ntype Props = Polymorphic<{ as: Tag }> &\n ButtonVariantProps\n\nconst { as, variant = \"ghost\", size = \"icon-xs\", ...props } = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/attachment-actions.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/attachment-content.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/attachment-description.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"span\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/attachment-group.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/attachment-media.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst attachmentMediaVariants = cva(\n \"bg-muted text-foreground group-data-[state=error]/attachment:bg-destructive/10 group-data-[state=error]/attachment:text-destructive relative flex aspect-square w-10 shrink-0 items-center justify-center overflow-hidden rounded-lg group-data-[orientation=vertical]/attachment:w-full group-data-[size=sm]/attachment:w-8 group-data-[size=xs]/attachment:w-7 group-data-[size=xs]/attachment:rounded-md group-data-[orientation=vertical]/attachment:*:data-[slot=spinner]:size-6! [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 group-data-[orientation=vertical]/attachment:[&_svg:not([class*='size-'])]:size-6 group-data-[size=xs]/attachment:[&_svg:not([class*='size-'])]:size-3.5\",\n {\n variants: {\n variant: {\n icon: \"\",\n image:\n \"opacity-60 group-data-[state=done]/attachment:opacity-100 group-data-[state=idle]/attachment:opacity-100 *:[img]:aspect-square *:[img]:w-full *:[img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"icon\",\n },\n }\n)\n\ntype Props = HTMLAttributes<\"div\"> &\n VariantProps\n\nconst { class: className, variant = \"icon\", ...props } = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/attachment-title.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"span\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/attachment-trigger.astro", + "content": "---\nimport type { HTMLTag, Polymorphic } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = Polymorphic<{ as: Tag }>\n\nconst {\n as: Tag = \"href\" in Astro.props ? \"a\" : \"button\",\n class: className,\n ...props\n} = Astro.props\n\nconst attributes: Record = { ...props }\nif (Tag === \"button\") attributes.type ??= \"button\"\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/attachment.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst attachmentVariants = cva(\n \"group/attachment bg-card text-card-foreground focus-within:ring-ring/50 has-[>a,>button]:hover:bg-muted/50 data-[state=error]:border-destructive/30 relative flex w-fit max-w-full min-w-0 shrink-0 flex-wrap rounded-xl border transition-colors focus-within:ring-1 data-[state=idle]:border-dashed\",\n {\n variants: {\n size: {\n default:\n \"gap-2 text-sm has-data-[slot=attachment-content]:px-2.5 has-data-[slot=attachment-content]:py-2 has-data-[slot=attachment-media]:p-2\",\n sm: \"gap-2.5 text-xs has-data-[slot=attachment-content]:px-2 has-data-[slot=attachment-content]:py-1.5 has-data-[slot=attachment-media]:p-1.5\",\n xs: \"gap-1.5 rounded-lg text-xs has-data-[slot=attachment-content]:px-1.5 has-data-[slot=attachment-content]:py-1 has-data-[slot=attachment-media]:p-1\",\n },\n orientation: {\n horizontal: \"min-w-40 items-center\",\n vertical: \"w-24 flex-col has-data-[slot=attachment-content]:w-30\",\n },\n },\n defaultVariants: {\n size: \"default\",\n orientation: \"horizontal\",\n },\n }\n)\n\ntype Props = HTMLAttributes<\"div\"> &\n VariantProps & {\n state?: \"idle\" | \"uploading\" | \"processing\" | \"error\" | \"done\"\n }\n\nconst {\n class: className,\n state = \"done\",\n size = \"default\",\n orientation = \"horizontal\",\n ...props\n} = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/attachment/index.ts", + "content": "export { default as Attachment } from \"./attachment.astro\"\nexport { default as AttachmentAction } from \"./attachment-action.astro\"\nexport { default as AttachmentActions } from \"./attachment-actions.astro\"\nexport { default as AttachmentContent } from \"./attachment-content.astro\"\nexport { default as AttachmentDescription } from \"./attachment-description.astro\"\nexport { default as AttachmentGroup } from \"./attachment-group.astro\"\nexport { default as AttachmentMedia } from \"./attachment-media.astro\"\nexport { default as AttachmentTitle } from \"./attachment-title.astro\"\nexport { default as AttachmentTrigger } from \"./attachment-trigger.astro\"\n", + "type": "registry:ui" + } + ], + "docs": "https://ui.full.dev/components/attachment/", + "categories": [ + "ui" + ], + "type": "registry:ui" +} \ No newline at end of file diff --git a/public/r/button-group.json b/public/r/button-group.json new file mode 100644 index 000000000..706a31d1c --- /dev/null +++ b/public/r/button-group.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://ui.shadcn.com/schema/registry-item.json", + "name": "button-group", + "title": "Button Group", + "description": "Groups related controls with connected edges and consistent focus behavior.", + "registryDependencies": [ + "@fulldev/separator" + ], + "files": [ + { + "path": "src/components/ui/button-group/button-group-separator.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Separator } from \"@/components/ui/separator\"\n\ntype Props = HTMLAttributes<\"div\"> & {\n orientation?: \"horizontal\" | \"vertical\"\n decorative?: boolean\n}\n\nconst {\n class: className,\n orientation = \"vertical\",\n decorative = true,\n ...props\n} = Astro.props\n---\n\n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/button-group/button-group-text.astro", + "content": "---\nimport type { HTMLTag, Polymorphic } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = Polymorphic<{ as: Tag }>\n\nconst { as: Tag = \"div\", class: className, ...props } = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/button-group/button-group-variants.ts", + "content": "import { cva, type VariantProps } from \"class-variance-authority\"\n\nexport const buttonGroupVariants = cva(\n \"flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1\",\n {\n variants: {\n orientation: {\n horizontal:\n \"*:data-slot:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-md! [&>[data-slot]~[data-slot]]:rounded-l-none [&>[data-slot]~[data-slot]]:border-l-0\",\n vertical:\n \"flex-col *:data-slot:rounded-b-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-md! [&>[data-slot]~[data-slot]]:rounded-t-none [&>[data-slot]~[data-slot]]:border-t-0\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n }\n)\n\nexport type ButtonGroupVariantProps = VariantProps\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/button-group/button-group.astro", + "content": "---\nimport type { HTMLTag, Polymorphic } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\nimport {\n buttonGroupVariants,\n type ButtonGroupVariantProps,\n} from \"./button-group-variants\"\n\ntype Props = Polymorphic<{ as: Tag }> &\n ButtonGroupVariantProps\n\nconst {\n as: Tag = \"div\",\n class: className,\n orientation = \"horizontal\",\n ...props\n} = Astro.props\n---\n\n\n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/button-group/index.ts", + "content": "export { default as ButtonGroup } from \"./button-group.astro\"\nexport { default as ButtonGroupSeparator } from \"./button-group-separator.astro\"\nexport { default as ButtonGroupText } from \"./button-group-text.astro\"\nexport {\n buttonGroupVariants,\n type ButtonGroupVariantProps,\n} from \"./button-group-variants\"\n", + "type": "registry:ui" + } + ], + "docs": "https://ui.full.dev/components/button-group/", + "categories": [ + "ui" + ], + "type": "registry:ui" +} \ No newline at end of file diff --git a/public/r/carousel.json b/public/r/carousel.json index ae6989572..8586df5fd 100644 --- a/public/r/carousel.json +++ b/public/r/carousel.json @@ -2,9 +2,9 @@ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "carousel", "title": "Carousel", - "description": "A carousel with motion and swipe built using Embla.", + "description": "An accessible carousel built on native scrolling with Data Slot.", "dependencies": [ - "embla-carousel", + "@data-slot/carousel@^1.0.2", "@lucide/astro" ], "registryDependencies": [ @@ -13,32 +13,32 @@ "files": [ { "path": "src/components/ui/carousel/carousel.astro", - "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport type { EmblaOptionsType } from \"embla-carousel\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\"> & {\n opts?: EmblaOptionsType\n orientation?: \"horizontal\" | \"vertical\"\n}\n\nconst {\n class: className,\n opts,\n orientation = \"horizontal\",\n ...props\n} = Astro.props\n\nconst resolvedOpts: EmblaOptionsType = {\n ...opts,\n axis: orientation === \"horizontal\" ? \"x\" : \"y\",\n}\n---\n\n\n \n\n\n\n", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\"> & {\n defaultIndex?: number\n orientation?: \"horizontal\" | \"vertical\"\n drag?: boolean\n loop?: boolean\n}\n\nconst {\n class: className,\n defaultIndex,\n orientation = \"horizontal\",\n drag,\n loop,\n ...props\n} = Astro.props\n---\n\n\n \n\n\n\n", "type": "registry:ui" }, { "path": "src/components/ui/carousel/carousel-content.astro", - "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n
\n \n \n
\n\n", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n\n", "type": "registry:ui" }, { "path": "src/components/ui/carousel/carousel-item.astro", - "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n\n", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n\n", "type": "registry:ui" }, { "path": "src/components/ui/carousel/carousel-next.astro", - "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport ChevronRightIcon from \"@lucide/astro/icons/chevron-right\"\n\nimport { cn } from \"@/lib/utils\"\nimport { buttonVariants, type ButtonVariantProps } from \"@/components/ui/button\"\n\ntype Props = Omit, \"type\"> & ButtonVariantProps\n\nconst {\n class: className,\n variant = \"outline\",\n size = \"icon-sm\",\n disabled,\n ...props\n} = Astro.props\n---\n\n\n \n \n Next slide\n \n\n", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport ChevronRightIcon from \"@lucide/astro/icons/chevron-right\"\n\nimport { cn } from \"@/lib/utils\"\nimport { buttonVariants, type ButtonVariantProps } from \"@/components/ui/button\"\n\ntype Props = Omit, \"type\"> & ButtonVariantProps\n\nconst {\n class: className,\n variant = \"outline\",\n size = \"icon-sm\",\n ...props\n} = Astro.props\n---\n\n\n \n \n Next slide\n \n\n", "type": "registry:ui" }, { "path": "src/components/ui/carousel/carousel-previous.astro", - "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport ChevronLeftIcon from \"@lucide/astro/icons/chevron-left\"\n\nimport { cn } from \"@/lib/utils\"\nimport { buttonVariants, type ButtonVariantProps } from \"@/components/ui/button\"\n\ntype Props = Omit, \"type\"> & ButtonVariantProps\n\nconst {\n class: className,\n variant = \"outline\",\n size = \"icon-sm\",\n disabled,\n ...props\n} = Astro.props\n---\n\n\n \n \n Previous slide\n \n\n", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport ChevronLeftIcon from \"@lucide/astro/icons/chevron-left\"\n\nimport { cn } from \"@/lib/utils\"\nimport { buttonVariants, type ButtonVariantProps } from \"@/components/ui/button\"\n\ntype Props = Omit, \"type\"> & ButtonVariantProps\n\nconst {\n class: className,\n variant = \"outline\",\n size = \"icon-sm\",\n ...props\n} = Astro.props\n---\n\n\n \n \n Previous slide\n \n\n", "type": "registry:ui" }, { "path": "src/components/ui/carousel/index.ts", - "content": "export type {\n EmblaCarouselType as CarouselApi,\n EmblaOptionsType as CarouselOptions,\n EmblaPluginType as CarouselPlugin,\n} from \"embla-carousel\"\n\nexport { default as Carousel } from \"./carousel.astro\"\nexport { default as CarouselContent } from \"./carousel-content.astro\"\nexport { default as CarouselItem } from \"./carousel-item.astro\"\nexport { default as CarouselPrevious } from \"./carousel-previous.astro\"\nexport { default as CarouselNext } from \"./carousel-next.astro\"\n", + "content": "export type { CarouselController, CarouselOptions } from \"@data-slot/carousel\"\n\nexport { default as Carousel } from \"./carousel.astro\"\nexport { default as CarouselContent } from \"./carousel-content.astro\"\nexport { default as CarouselItem } from \"./carousel-item.astro\"\nexport { default as CarouselPrevious } from \"./carousel-previous.astro\"\nexport { default as CarouselNext } from \"./carousel-next.astro\"\n", "type": "registry:ui" } ], diff --git a/public/r/collapsible.json b/public/r/collapsible.json index e1cc26faf..2377a7429 100644 --- a/public/r/collapsible.json +++ b/public/r/collapsible.json @@ -4,7 +4,7 @@ "title": "Collapsible", "description": "An interactive component which expands/collapses a panel.", "dependencies": [ - "@data-slot/collapsible@^1.0.1" + "@data-slot/collapsible@^1.0.2" ], "files": [ { diff --git a/public/r/combobox.json b/public/r/combobox.json index 779c7f22c..f00b41e8b 100644 --- a/public/r/combobox.json +++ b/public/r/combobox.json @@ -4,8 +4,8 @@ "title": "Combobox", "description": "Autocomplete input with a list of suggestions.", "dependencies": [ - "@data-slot/combobox@^1.0.1", - "@data-slot/core@^1.0.1", + "@data-slot/combobox@^1.0.2", + "@data-slot/core@^1.0.2", "@lucide/astro" ], "registryDependencies": [ @@ -34,7 +34,7 @@ }, { "path": "src/components/ui/combobox/combobox-input.astro", - "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport XIcon from \"@lucide/astro/icons/x\"\n\nimport { cn } from \"@/lib/utils\"\nimport InputGroupAddon from \"@/components/ui/input-group/input-group-addon.astro\"\nimport InputGroupInput from \"@/components/ui/input-group/input-group-input.astro\"\nimport InputGroup from \"@/components/ui/input-group/input-group.astro\"\n\nimport ComboboxTrigger from \"./combobox-trigger.astro\"\n\ntype Props = HTMLAttributes<\"input\"> & {\n showTrigger?: boolean\n showClear?: boolean\n}\n\nconst {\n class: className,\n type = \"text\",\n disabled = false,\n showTrigger = true,\n showClear = false,\n ...props\n} = Astro.props\n---\n\n\n \n \n {\n showTrigger && (\n \n )\n }\n {\n showClear && (\n \n \n \n )\n }\n \n \n\n", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport XIcon from \"@lucide/astro/icons/x\"\n\nimport { cn } from \"@/lib/utils\"\nimport InputGroupAddon from \"@/components/ui/input-group/input-group-addon.astro\"\nimport InputGroupButton from \"@/components/ui/input-group/input-group-button.astro\"\nimport InputGroupInput from \"@/components/ui/input-group/input-group-input.astro\"\nimport InputGroup from \"@/components/ui/input-group/input-group.astro\"\n\nimport ComboboxTrigger from \"./combobox-trigger.astro\"\n\ntype Props = HTMLAttributes<\"input\"> & {\n showTrigger?: boolean\n showClear?: boolean\n}\n\nconst {\n class: className,\n type = \"text\",\n disabled = false,\n showTrigger = true,\n showClear = false,\n ...props\n} = Astro.props\n---\n\n\n \n \n {\n showTrigger && (\n \n )\n }\n {\n showClear && (\n \n \n \n )\n }\n \n \n\n", "type": "registry:ui" }, { @@ -59,7 +59,7 @@ }, { "path": "src/components/ui/combobox/combobox-trigger.astro", - "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport ChevronDownIcon from \"@lucide/astro/icons/chevron-down\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"button\"> & {\n showIcon?: boolean\n}\n\nconst {\n class: className,\n type = \"button\",\n showIcon = true,\n ...props\n} = Astro.props\n---\n\n\n \n {\n showIcon && (\n \n )\n }\n\n", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\nimport ChevronDownIcon from \"@lucide/astro/icons/chevron-down\"\n\nimport { cn } from \"@/lib/utils\"\nimport InputGroupButton from \"@/components/ui/input-group/input-group-button.astro\"\n\ntype Props = HTMLAttributes<\"button\"> & {\n showIcon?: boolean\n}\n\nconst {\n class: className,\n type = \"button\",\n showIcon = true,\n ...props\n} = Astro.props\n---\n\n\n \n {\n showIcon && (\n \n )\n }\n\n", "type": "registry:ui" }, { diff --git a/public/r/command.json b/public/r/command.json index 7c998ba23..be0a872ee 100644 --- a/public/r/command.json +++ b/public/r/command.json @@ -4,9 +4,9 @@ "title": "Command", "description": "Command menu for search and quick actions.", "dependencies": [ - "@data-slot/command@^1.0.1", + "@data-slot/command@^1.0.2", "@lucide/astro", - "@data-slot/core@^1.0.1" + "@data-slot/core@^1.0.2" ], "registryDependencies": [ "@fulldev/dialog" diff --git a/public/r/components.json b/public/r/components.json index 4d4050ca0..90872f412 100644 --- a/public/r/components.json +++ b/public/r/components.json @@ -7,11 +7,14 @@ "@fulldev/accordion", "@fulldev/alert", "@fulldev/alert-dialog", + "@fulldev/aspect-ratio", + "@fulldev/attachment", "@fulldev/avatar", "@fulldev/badge", "@fulldev/banner", "@fulldev/breadcrumb", "@fulldev/button", + "@fulldev/button-group", "@fulldev/card", "@fulldev/carousel", "@fulldev/checkbox", @@ -19,6 +22,7 @@ "@fulldev/combobox", "@fulldev/command", "@fulldev/dialog", + "@fulldev/drawer", "@fulldev/dropdown-menu", "@fulldev/empty", "@fulldev/field", @@ -36,10 +40,12 @@ "@fulldev/marquee", "@fulldev/native-select", "@fulldev/navigation-menu", + "@fulldev/pagination", "@fulldev/popover", "@fulldev/price", "@fulldev/radio-group", "@fulldev/rating", + "@fulldev/resizable", "@fulldev/section", "@fulldev/select", "@fulldev/separator", @@ -53,8 +59,10 @@ "@fulldev/tabs", "@fulldev/textarea", "@fulldev/theme-toggle", + "@fulldev/toast", "@fulldev/toc", "@fulldev/toggle", + "@fulldev/toggle-group", "@fulldev/tooltip", "@fulldev/typography", "@fulldev/video" diff --git a/public/r/dialog.json b/public/r/dialog.json index 7efc1928a..3db40b95f 100644 --- a/public/r/dialog.json +++ b/public/r/dialog.json @@ -4,7 +4,7 @@ "title": "Dialog", "description": "A window overlaid on either the primary window or another dialog window, rendering the content underneath inert.", "dependencies": [ - "@data-slot/dialog@^1.0.1", + "@data-slot/dialog@^1.0.2", "@lucide/astro" ], "registryDependencies": [ diff --git a/public/r/doc-1.json b/public/r/doc-1.json index c83d79bea..1a40cc41f 100644 --- a/public/r/doc-1.json +++ b/public/r/doc-1.json @@ -18,7 +18,7 @@ "files": [ { "path": "src/components/blocks/doc-1.astro", - "content": "---\nimport ArrowLeft from \"@lucide/astro/icons/arrow-left\"\nimport ArrowRight from \"@lucide/astro/icons/arrow-right\"\nimport Check from \"@lucide/astro/icons/check\"\nimport ChevronDown from \"@lucide/astro/icons/chevron-down\"\nimport Copy from \"@lucide/astro/icons/copy\"\nimport ExternalLink from \"@lucide/astro/icons/external-link\"\nimport Claude from \"simple-icons-astro/Claude\"\nimport Cursor from \"simple-icons-astro/Cursor\"\nimport Markdown from \"simple-icons-astro/Markdown\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/ui/button\"\nimport { buttonVariants } from \"@/components/ui/button/button-variants\"\nimport {\n Card,\n CardDescription,\n CardFooter,\n CardHeader,\n} from \"@/components/ui/card\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/components/ui/dropdown-menu\"\nimport { SectionContainer } from \"@/components/ui/section\"\nimport {\n Toc,\n TocMenu,\n TocMenuItem,\n TocMenuLink,\n TocTitle,\n} from \"@/components/ui/toc\"\nimport {\n Typography,\n TypographyH1,\n TypographyLead,\n} from \"@/components/ui/typography\"\n\ntype Props = {\n class?: string\n title: string\n description?: string\n copyButton?: {\n id: string\n source: string\n }\n markdownUrl?: string\n tocItems: {\n depth: number\n href: string\n label: string\n }[]\n callout?: {\n description: string\n button: {\n label: string\n href: string\n variant?: \"default\" | \"outline\" | \"secondary\" | \"ghost\"\n }\n }\n previousPage?: {\n href: string\n title: string\n }\n nextPage?: {\n href: string\n title: string\n }\n labels: {\n copyMarkdown: string\n openIn: string\n openInMarkdown: string\n openInChatGPT: string\n openInClaude: string\n openInCursor: string\n pagination: {\n previous: string\n next: string\n ariaLabel: string\n }\n toc: string\n }\n}\n\nconst {\n class: className,\n title,\n description,\n copyButton,\n markdownUrl,\n tocItems,\n callout,\n previousPage,\n nextPage,\n labels,\n} = Astro.props\nconst showCopyButton = Boolean(copyButton)\nconst showOpenButton = Boolean(markdownUrl)\nconst showPagination = Boolean(previousPage || nextPage)\nconst assistantPrompt = markdownUrl\n ? `Read ${new URL(markdownUrl, Astro.site ?? Astro.url.origin).href}, I want to ask questions about it.`\n : \"\"\nconst openLinks = markdownUrl\n ? [\n {\n label: labels.openInMarkdown,\n href: markdownUrl,\n icon: \"markdown\",\n },\n {\n label: labels.openInChatGPT,\n href: `https://chatgpt.com/?hints=search&q=${encodeURIComponent(assistantPrompt)}`,\n icon: \"chatgpt\",\n },\n {\n label: labels.openInClaude,\n href: `https://claude.ai/new?q=${encodeURIComponent(assistantPrompt)}`,\n icon: \"claude\",\n },\n {\n label: labels.openInCursor,\n href: `https://cursor.com/link/prompt?text=${encodeURIComponent(assistantPrompt)}`,\n icon: \"cursor\",\n },\n ]\n : []\n---\n\n\n
\n \n
\n \n {title}\n \n {\n description && (\n \n {description}\n \n )\n }\n
\n
\n {\n showCopyButton && (\n \n \n
\n \n\n \n \n \n\n {\n showPagination && (\n \n {previousPage ? (\n \n \n \n {previousPage.title}\n \n \n ) : (\n
\n )}\n\n {nextPage ? (\n \n {nextPage.title}\n \n \n ) : (\n
\n )}\n \n )\n }\n
\n\n {\n (tocItems.length > 0 || callout) && (\n \n )\n }\n\n\n\n", + "content": "---\nimport ArrowLeft from \"@lucide/astro/icons/arrow-left\"\nimport ArrowRight from \"@lucide/astro/icons/arrow-right\"\nimport Check from \"@lucide/astro/icons/check\"\nimport ChevronDown from \"@lucide/astro/icons/chevron-down\"\nimport Copy from \"@lucide/astro/icons/copy\"\nimport ExternalLink from \"@lucide/astro/icons/external-link\"\nimport Claude from \"simple-icons-astro/Claude\"\nimport Cursor from \"simple-icons-astro/Cursor\"\nimport Markdown from \"simple-icons-astro/Markdown\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/ui/button\"\nimport { buttonVariants } from \"@/components/ui/button/button-variants\"\nimport {\n Card,\n CardDescription,\n CardFooter,\n CardHeader,\n} from \"@/components/ui/card\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/components/ui/dropdown-menu\"\nimport { SectionContainer } from \"@/components/ui/section\"\nimport {\n Toc,\n TocMenu,\n TocMenuItem,\n TocMenuLink,\n TocTitle,\n} from \"@/components/ui/toc\"\nimport {\n Typography,\n TypographyH1,\n TypographyLead,\n} from \"@/components/ui/typography\"\n\ntype Props = {\n class?: string\n title: string\n description?: string\n copyButton?: {\n id: string\n source: string\n }\n markdownUrl?: string\n tocItems: {\n depth: number\n href: string\n label: string\n }[]\n callout?: {\n description: string\n button: {\n label: string\n href: string\n variant?: \"default\" | \"outline\" | \"secondary\" | \"ghost\"\n }\n }\n previousPage?: {\n href: string\n title: string\n }\n nextPage?: {\n href: string\n title: string\n }\n labels: {\n copyMarkdown: string\n openIn: string\n openInMarkdown: string\n openInChatGPT: string\n openInClaude: string\n openInCursor: string\n pagination: {\n previous: string\n next: string\n ariaLabel: string\n }\n toc: string\n }\n}\n\nconst {\n class: className,\n title,\n description,\n copyButton,\n markdownUrl,\n tocItems,\n callout,\n previousPage,\n nextPage,\n labels,\n} = Astro.props\nconst showCopyButton = Boolean(copyButton)\nconst showOpenButton = Boolean(markdownUrl)\nconst showPagination = Boolean(previousPage || nextPage)\nconst assistantPrompt = markdownUrl\n ? `Read ${new URL(markdownUrl, Astro.site ?? Astro.url.origin).href}, I want to ask questions about it.`\n : \"\"\nconst openLinks = markdownUrl\n ? [\n {\n label: labels.openInMarkdown,\n href: markdownUrl,\n icon: \"markdown\",\n },\n {\n label: labels.openInChatGPT,\n href: `https://chatgpt.com/?hints=search&q=${encodeURIComponent(assistantPrompt)}`,\n icon: \"chatgpt\",\n },\n {\n label: labels.openInClaude,\n href: `https://claude.ai/new?q=${encodeURIComponent(assistantPrompt)}`,\n icon: \"claude\",\n },\n {\n label: labels.openInCursor,\n href: `https://cursor.com/link/prompt?text=${encodeURIComponent(assistantPrompt)}`,\n icon: \"cursor\",\n },\n ]\n : []\n---\n\n\n
\n \n
\n \n {title}\n \n {\n description && (\n \n {description}\n \n )\n }\n
\n
\n {\n showCopyButton && (\n \n \n
\n \n\n \n \n \n\n {\n showPagination && (\n \n {previousPage ? (\n \n \n \n {previousPage.title}\n \n \n ) : (\n
\n )}\n\n {nextPage ? (\n \n {nextPage.title}\n \n \n ) : (\n
\n )}\n \n )\n }\n
\n\n {\n (tocItems.length > 0 || callout) && (\n \n )\n }\n\n\n\n\n\n", "type": "registry:block" } ], diff --git a/public/r/drawer.json b/public/r/drawer.json new file mode 100644 index 000000000..ea098d161 --- /dev/null +++ b/public/r/drawer.json @@ -0,0 +1,109 @@ +{ + "$schema": "https://ui.shadcn.com/schema/registry-item.json", + "name": "drawer", + "title": "Drawer", + "description": "A swipeable panel that opens from an edge of the screen.", + "dependencies": [ + "@data-slot/drawer@^1.0.2" + ], + "registryDependencies": [ + "@fulldev/button" + ], + "files": [ + { + "path": "src/components/ui/drawer/drawer-close.astro", + "content": "---\nimport type { ComponentProps } from \"astro/types\"\n\nimport { Button } from \"@/components/ui/button\"\n\ntype Props = ComponentProps\n\nconst { ...props } = Astro.props\n---\n\n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/drawer/drawer-content.astro", + "content": "---\nimport type { ComponentProps } from \"astro/types\"\n\nimport DrawerOverlay from \"./drawer-overlay.astro\"\nimport DrawerPopup from \"./drawer-popup.astro\"\nimport DrawerPortal from \"./drawer-portal.astro\"\nimport DrawerSwipeHandle from \"./drawer-swipe-handle.astro\"\nimport DrawerViewport from \"./drawer-viewport.astro\"\n\ntype Props = ComponentProps & {\n showOverlay?: boolean\n showSwipeHandle?: boolean\n container?: string\n keepMounted?: boolean\n overlayClass?: string\n viewportClass?: string\n}\n\nconst {\n showOverlay = true,\n showSwipeHandle = false,\n container,\n keepMounted,\n overlayClass,\n viewportClass,\n ...props\n} = Astro.props\n---\n\n\n {showOverlay && }\n \n \n {showSwipeHandle && }\n \n \n
\n \n \n\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/drawer/drawer-description.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"p\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n

\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/drawer/drawer-footer.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n
\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/drawer/drawer-header.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n\n \n
\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/drawer/drawer-indent-background.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n
\n \n
\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/drawer/drawer-indent.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n
\n \n
\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/drawer/drawer-overlay.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, hidden = true, ...props } = Astro.props\n---\n\n
\n", + "type": "registry:ui" + }, + { + "path": "src/components/ui/drawer/drawer-popup.astro", + "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\"> & {\n initialFocus?: boolean | string\n finalFocus?: boolean | string\n}\n\nconst {\n class: className,\n initialFocus,\n finalFocus,\n hidden = true,\n ...props\n} = Astro.props\n---\n\n