diff --git a/docs/components/content/ComponentPreview.vue b/docs/components/content/ComponentPreview.vue
index 4022247..a3c9006 100644
--- a/docs/components/content/ComponentPreview.vue
+++ b/docs/components/content/ComponentPreview.vue
@@ -179,6 +179,7 @@ const { data: codeRender } = await useAsyncData(`${componentName}-code-renderer-
:type="prop.type === 'number' ? 'number' : 'text'"
variant="plain"
:padded="false"
+ :ui="{ rounded: 'rounded-none' }"
placeholder="type something..."
@update:model-value="val => componentProps[prop.name] = prop.type === 'number' ? Number(val) : val"
/>
diff --git a/docs/components/content/Prose/ProsePre.vue b/docs/components/content/Prose/ProsePre.vue
index dc51d64..f6a5c36 100644
--- a/docs/components/content/Prose/ProsePre.vue
+++ b/docs/components/content/Prose/ProsePre.vue
@@ -1,12 +1,4 @@
@@ -68,7 +70,7 @@ const resolveIcon = computed(() => {
-
+
{{ filename }}
diff --git a/docs/components/icon/TablerAd2.vue b/docs/components/icon/TablerAd2.vue
deleted file mode 100644
index ec85f6c..0000000
--- a/docs/components/icon/TablerAd2.vue
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
diff --git a/docs/components/icon/TablerFile.vue b/docs/components/icon/TablerFile.vue
deleted file mode 100644
index 5c33180..0000000
--- a/docs/components/icon/TablerFile.vue
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
diff --git a/docs/components/icon/TablerGitMerge.vue b/docs/components/icon/TablerGitMerge.vue
deleted file mode 100644
index 131739e..0000000
--- a/docs/components/icon/TablerGitMerge.vue
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
diff --git a/docs/components/icon/TablerTerminal.vue b/docs/components/icon/TablerTerminal.vue
deleted file mode 100644
index 9b61646..0000000
--- a/docs/components/icon/TablerTerminal.vue
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
diff --git a/docs/components/icon/VscodeIconsFileTypeJsOfficial.vue b/docs/components/icon/VscodeIconsFileTypeJsOfficial.vue
deleted file mode 100644
index 5b1b331..0000000
--- a/docs/components/icon/VscodeIconsFileTypeJsOfficial.vue
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
diff --git a/docs/components/icon/VscodeIconsFileTypeJson.vue b/docs/components/icon/VscodeIconsFileTypeJson.vue
deleted file mode 100644
index 69f5dda..0000000
--- a/docs/components/icon/VscodeIconsFileTypeJson.vue
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
diff --git a/docs/components/icon/VscodeIconsFileTypeNuxt.vue b/docs/components/icon/VscodeIconsFileTypeNuxt.vue
deleted file mode 100644
index 688f2cd..0000000
--- a/docs/components/icon/VscodeIconsFileTypeNuxt.vue
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
diff --git a/docs/components/icon/VscodeIconsFileTypeTypescriptOfficial.vue b/docs/components/icon/VscodeIconsFileTypeTypescriptOfficial.vue
deleted file mode 100644
index 3e8a4cd..0000000
--- a/docs/components/icon/VscodeIconsFileTypeTypescriptOfficial.vue
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
diff --git a/docs/components/icon/VscodeIconsFileTypeVue.vue b/docs/components/icon/VscodeIconsFileTypeVue.vue
deleted file mode 100644
index 17db77b..0000000
--- a/docs/components/icon/VscodeIconsFileTypeVue.vue
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
diff --git a/docs/content/2.components/icon.md b/docs/content/2.components/icon.md
new file mode 100644
index 0000000..c3b1b16
--- /dev/null
+++ b/docs/content/2.components/icon.md
@@ -0,0 +1,24 @@
+---
+description: Add icons to your app. Based on Iconify
+---
+
+## Usage
+
+This component is a wrapper based on the `@nuxt/icon` library, which is based on Iconify. So you can use any icon name available on [icones.js.org](https://icones.js.org/).
+
+::ComponentPreview
+---
+privateProps:
+ class: w-6 h-6
+props:
+ name: tabler:brand-github
+---
+::
+
+## Collections
+
+It's recommended to install the icon collection you want to use locally. You can do this by running:
+
+```bash [Terminal]
+pnpm i @iconify-icons/[collection_name]
+```
diff --git a/docs/nuxt.config.ts b/docs/nuxt.config.ts
index 2ef575e..d35efd3 100644
--- a/docs/nuxt.config.ts
+++ b/docs/nuxt.config.ts
@@ -50,6 +50,7 @@ export default defineNuxtConfig({
componentMeta: {
exclude: [
'@nuxt/content',
+ '@nuxt/icon',
'@nuxtjs/color-mode',
'@nuxtjs/mdc',
'nuxt/dist',
@@ -63,6 +64,11 @@ export default defineNuxtConfig({
exposed: false,
},
},
+ icon: {
+ clientBundle: {
+ scan: true,
+ },
+ },
rayui: {
globalComponents: true,
safeColors: [...excludeColors(colors)],
@@ -78,9 +84,4 @@ export default defineNuxtConfig({
},
},
},
- icon: {
- clientBundle: {
- scan: true
- }
- },
})
diff --git a/docs/pages/[...slug].vue b/docs/pages/[...slug].vue
index bb15946..5517643 100644
--- a/docs/pages/[...slug].vue
+++ b/docs/pages/[...slug].vue
@@ -65,7 +65,7 @@ const { data: surround } = await useAsyncData(`${route.path}-surround`, () => {
class="ring-1 ring-inset ring-primary-200 dark:ring-primary-900 text-primary-500 dark:text-primary-400 rounded-md bg-primary-50 dark:bg-primary-900 font-medium flex items-center gap-1"
:class="[standard.padding['sm'], standard.size['2xs']]"
>
-
+
v{{ page.since }}
diff --git a/src/runtime/components/elements/Icon.vue b/src/runtime/components/elements/Icon.vue
new file mode 100644
index 0000000..616cdaa
--- /dev/null
+++ b/src/runtime/components/elements/Icon.vue
@@ -0,0 +1,31 @@
+
+
+