diff --git a/apps/docs/content/components/checkbox/colors.raw.jsx b/apps/docs/content/components/checkbox/colors.raw.jsx
new file mode 100644
index 0000000000..1444356a3b
--- /dev/null
+++ b/apps/docs/content/components/checkbox/colors.raw.jsx
@@ -0,0 +1,26 @@
+import {Checkbox} from "@nextui-org/react";
+
+export default function App() {
+ return (
+
+
+ Default
+
+
+ Primary
+
+
+ Secondary
+
+
+ Success
+
+
+ Warning
+
+
+ Danger
+
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/colors.ts b/apps/docs/content/components/checkbox/colors.ts
index a7d318f734..d5bef810aa 100644
--- a/apps/docs/content/components/checkbox/colors.ts
+++ b/apps/docs/content/components/checkbox/colors.ts
@@ -1,17 +1,4 @@
-const App = `import {Checkbox} from "@nextui-org/react";
-
-export default function App() {
- return (
-
- Default
- Primary
- Secondary
- Success
- Warning
- Danger
-
- );
-}`;
+import App from "./colors.raw.jsx?raw";
const react = {
"/App.jsx": App,
diff --git a/apps/docs/content/components/checkbox/controlled.raw.jsx b/apps/docs/content/components/checkbox/controlled.raw.jsx
new file mode 100644
index 0000000000..4d81052b0e
--- /dev/null
+++ b/apps/docs/content/components/checkbox/controlled.raw.jsx
@@ -0,0 +1,14 @@
+import {Checkbox} from "@nextui-org/react";
+
+export default function App() {
+ const [isSelected, setIsSelected] = React.useState(false);
+
+ return (
+
+
+ Subscribe (controlled)
+
+
Selected: {isSelected ? "true" : "false"}
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/controlled.ts b/apps/docs/content/components/checkbox/controlled.ts
index 61c09eb3ae..2c3f0cacb4 100644
--- a/apps/docs/content/components/checkbox/controlled.ts
+++ b/apps/docs/content/components/checkbox/controlled.ts
@@ -1,19 +1,4 @@
-const App = `import {Checkbox} from "@nextui-org/react";
-
-export default function App() {
- const [isSelected, setIsSelected] = React.useState(false);
-
- return (
-
-
- Subscribe (controlled)
-
-
- Selected: {isSelected ? "true" : "false"}
-
-
- );
-}`;
+import App from "./controlled.raw.jsx?raw";
const react = {
"/App.jsx": App,
diff --git a/apps/docs/content/components/checkbox/custom-check-icon.raw.jsx b/apps/docs/content/components/checkbox/custom-check-icon.raw.jsx
new file mode 100644
index 0000000000..bea37878e1
--- /dev/null
+++ b/apps/docs/content/components/checkbox/custom-check-icon.raw.jsx
@@ -0,0 +1,68 @@
+import {Checkbox} from "@nextui-org/react";
+
+export const HeartIcon = ({size, height, width, ...props}) => {
+ // avoid passing non-DOM attributes to svg
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ const {isSelected, isIndeterminate, disableAnimation, ...otherProps} = props;
+
+ return (
+
+ );
+};
+
+export const PlusIcon = ({size, height, width, ...props}) => {
+ // avoid passing non-DOM attributes to svg
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ const {isSelected, isIndeterminate, disableAnimation, ...otherProps} = props;
+
+ return (
+
+ );
+};
+
+export default function App() {
+ return (
+
+ }>
+ Option
+
+ }>
+ Option
+
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/custom-check-icon.ts b/apps/docs/content/components/checkbox/custom-check-icon.ts
index 5bd83fa324..6f2bd3d139 100644
--- a/apps/docs/content/components/checkbox/custom-check-icon.ts
+++ b/apps/docs/content/components/checkbox/custom-check-icon.ts
@@ -1,73 +1,7 @@
-const HeartIcon = `export const HeartIcon = ({ size, height, width, ...props }) => {
- // avoid passing non-DOM attributes to svg
- const {isSelected, isIndeterminate, disableAnimation, ...otherProps} = props;
-
- return (
-
- );
-};
-`;
-
-const PlusIcon = `export const PlusIcon = ({ size, height, width, ...props }) => {
- // avoid passing non-DOM attributes to svg
- const {isSelected, isIndeterminate, disableAnimation, ...otherProps} = props;
-
- return (
-
- );
-};`;
-
-const App = `import {Checkbox} from "@nextui-org/react";
-import {HeartIcon} from './HeartIcon.jsx';
-import {PlusIcon} from './PlusIcon.jsx';
-
-export default function App() {
- return (
-
- }>Option
- } color="warning">Option
-
- );
-}`;
+import App from "./custom-check-icon.raw.jsx?raw";
const react = {
"/App.jsx": App,
- "/HeartIcon.jsx": HeartIcon,
- "/PlusIcon.jsx": PlusIcon,
};
export default {
diff --git a/apps/docs/content/components/checkbox/custom-implementation.raw.jsx b/apps/docs/content/components/checkbox/custom-implementation.raw.jsx
new file mode 100644
index 0000000000..4023c28365
--- /dev/null
+++ b/apps/docs/content/components/checkbox/custom-implementation.raw.jsx
@@ -0,0 +1,68 @@
+import {useCheckbox, Chip, VisuallyHidden, tv} from "@nextui-org/react";
+
+export const CheckIcon = (props) => (
+
+);
+
+const checkbox = tv({
+ slots: {
+ base: "border-default hover:bg-default-200",
+ content: "text-default-500",
+ },
+ variants: {
+ isSelected: {
+ true: {
+ base: "border-primary bg-primary hover:bg-primary-500 hover:border-primary-500",
+ content: "text-primary-foreground pl-1",
+ },
+ },
+ isFocusVisible: {
+ true: {
+ base: "outline-none ring-2 ring-focus ring-offset-2 ring-offset-background",
+ },
+ },
+ },
+});
+
+export default function App() {
+ const {children, isSelected, isFocusVisible, getBaseProps, getLabelProps, getInputProps} =
+ useCheckbox({
+ defaultSelected: true,
+ });
+
+ const styles = checkbox({isSelected, isFocusVisible});
+
+ return (
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/custom-implementation.ts b/apps/docs/content/components/checkbox/custom-implementation.ts
index 6c73006698..cf79f4d84e 100644
--- a/apps/docs/content/components/checkbox/custom-implementation.ts
+++ b/apps/docs/content/components/checkbox/custom-implementation.ts
@@ -1,83 +1,7 @@
-const CheckIcon = `export const CheckIcon = (props) =>
- (
-
- );`;
-
-const App = `import {useCheckbox, Chip, VisuallyHidden, tv} from "@nextui-org/react";
-import {CheckIcon} from './CheckIcon.jsx'
-
-const checkbox = tv({
- slots: {
- base: "border-default hover:bg-default-200",
- content: "text-default-500"
- },
- variants: {
- isSelected: {
- true: {
- base: "border-primary bg-primary hover:bg-primary-500 hover:border-primary-500",
- content: "text-primary-foreground pl-1"
- }
- },
- isFocusVisible: {
- true: {
- base: "outline-none ring-2 ring-focus ring-offset-2 ring-offset-background",
- }
- }
- }
-})
-
-export default function App() {
- const {
- children,
- isSelected,
- isFocusVisible,
- getBaseProps,
- getLabelProps,
- getInputProps,
- } = useCheckbox({
- defaultSelected: true,
- })
-
- const styles = checkbox({ isSelected, isFocusVisible })
-
- return (
-
- );
-}`;
+import App from "./custom-implementation.raw.jsx?raw";
const react = {
"/App.jsx": App,
- "./CheckIcon.jsx": CheckIcon,
};
export default {
diff --git a/apps/docs/content/components/checkbox/custom-styles.raw.jsx b/apps/docs/content/components/checkbox/custom-styles.raw.jsx
new file mode 100644
index 0000000000..d3e98200e4
--- /dev/null
+++ b/apps/docs/content/components/checkbox/custom-styles.raw.jsx
@@ -0,0 +1,49 @@
+import {Checkbox, Link, User, Chip, cn} from "@nextui-org/react";
+
+export default function App() {
+ const [isSelected, setIsSelected] = React.useState(false);
+
+ const user = {
+ name: "Junior Garcia",
+ avatar: "https://avatars.githubusercontent.com/u/30373425?v=4",
+ username: "jrgarciadev",
+ url: "https://x.com/jrgarciadev",
+ role: "Software Developer",
+ status: "Active",
+ };
+
+ return (
+
+
+
+ @{user.username}
+
+ }
+ name={user.name}
+ />
+
+ {user.role}
+
+ {user.status}
+
+
+
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/custom-styles.ts b/apps/docs/content/components/checkbox/custom-styles.ts
index 7484b1c453..da3ea9093a 100644
--- a/apps/docs/content/components/checkbox/custom-styles.ts
+++ b/apps/docs/content/components/checkbox/custom-styles.ts
@@ -1,52 +1,4 @@
-const App = `import {Checkbox, Link, User, Chip, cn} from "@nextui-org/react";
-
-export default function App() {
- const [isSelected, setIsSelected] = React.useState(false);
-
- const user = {
- name: "Junior Garcia",
- avatar: "https://avatars.githubusercontent.com/u/30373425?v=4",
- username: "jrgarciadev",
- url: "https://x.com/jrgarciadev",
- role: "Software Developer",
- status: "Active",
- }
-
- return (
-
-
-
- @{user.username}
-
- }
- name={user.name}
- />
-
- {user.role}
-
- {user.status}
-
-
-
-
- );
-}`;
+import App from "./custom-styles.raw.jsx?raw";
const react = {
"/App.jsx": App,
diff --git a/apps/docs/content/components/checkbox/disabled.raw.jsx b/apps/docs/content/components/checkbox/disabled.raw.jsx
new file mode 100644
index 0000000000..c92dd3711e
--- /dev/null
+++ b/apps/docs/content/components/checkbox/disabled.raw.jsx
@@ -0,0 +1,12 @@
+import {Checkbox} from "@nextui-org/react";
+
+export default function App() {
+ return (
+
+ Option
+
+ Option
+
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/disabled.ts b/apps/docs/content/components/checkbox/disabled.ts
index 23f637e682..1a215cc91f 100644
--- a/apps/docs/content/components/checkbox/disabled.ts
+++ b/apps/docs/content/components/checkbox/disabled.ts
@@ -1,13 +1,4 @@
-const App = `import {Checkbox} from "@nextui-org/react";
-
-export default function App() {
- return (
-
- Option
- Option
-
- );
-}`;
+import App from "./disabled.raw.jsx?raw";
const react = {
"/App.jsx": App,
diff --git a/apps/docs/content/components/checkbox/indeterminate.raw.jsx b/apps/docs/content/components/checkbox/indeterminate.raw.jsx
new file mode 100644
index 0000000000..0bc1851041
--- /dev/null
+++ b/apps/docs/content/components/checkbox/indeterminate.raw.jsx
@@ -0,0 +1,5 @@
+import {Checkbox} from "@nextui-org/react";
+
+export default function App() {
+ return Option;
+}
diff --git a/apps/docs/content/components/checkbox/indeterminate.ts b/apps/docs/content/components/checkbox/indeterminate.ts
index bc9ad778aa..7094e42950 100644
--- a/apps/docs/content/components/checkbox/indeterminate.ts
+++ b/apps/docs/content/components/checkbox/indeterminate.ts
@@ -1,10 +1,4 @@
-const App = `import {Checkbox} from "@nextui-org/react";
-
-export default function App() {
- return (
- Option
- );
-}`;
+import App from "./indeterminate.raw.jsx?raw";
const react = {
"/App.jsx": App,
diff --git a/apps/docs/content/components/checkbox/line-through.raw.jsx b/apps/docs/content/components/checkbox/line-through.raw.jsx
new file mode 100644
index 0000000000..4e4408c213
--- /dev/null
+++ b/apps/docs/content/components/checkbox/line-through.raw.jsx
@@ -0,0 +1,9 @@
+import {Checkbox} from "@nextui-org/react";
+
+export default function App() {
+ return (
+
+ Option
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/line-through.ts b/apps/docs/content/components/checkbox/line-through.ts
index ce5f7e3d22..f4c8aaa857 100644
--- a/apps/docs/content/components/checkbox/line-through.ts
+++ b/apps/docs/content/components/checkbox/line-through.ts
@@ -1,10 +1,4 @@
-const App = `import {Checkbox} from "@nextui-org/react";
-
-export default function App() {
- return (
- Option
- );
-}`;
+import App from "./line-through.raw.jsx?raw";
const react = {
"/App.jsx": App,
diff --git a/apps/docs/content/components/checkbox/radius.raw.jsx b/apps/docs/content/components/checkbox/radius.raw.jsx
new file mode 100644
index 0000000000..cabb65bcde
--- /dev/null
+++ b/apps/docs/content/components/checkbox/radius.raw.jsx
@@ -0,0 +1,23 @@
+import {Checkbox} from "@nextui-org/react";
+
+export default function App() {
+ return (
+
+
+ Full
+
+
+ Large
+
+
+ Medium
+
+
+ Small
+
+
+ None
+
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/radius.ts b/apps/docs/content/components/checkbox/radius.ts
index a8446ab909..7b78db1ce0 100644
--- a/apps/docs/content/components/checkbox/radius.ts
+++ b/apps/docs/content/components/checkbox/radius.ts
@@ -1,16 +1,4 @@
-const App = `import {Checkbox} from "@nextui-org/react";
-
-export default function App() {
- return (
-
- Full
- Large
- Medium
- Small
- None
-
- );
-}`;
+import App from "./radius.raw.jsx?raw";
const react = {
"/App.jsx": App,
diff --git a/apps/docs/content/components/checkbox/sizes.raw.jsx b/apps/docs/content/components/checkbox/sizes.raw.jsx
new file mode 100644
index 0000000000..3e3c51a9e2
--- /dev/null
+++ b/apps/docs/content/components/checkbox/sizes.raw.jsx
@@ -0,0 +1,17 @@
+import {Checkbox} from "@nextui-org/react";
+
+export default function App() {
+ return (
+
+
+ Small
+
+
+ Medium
+
+
+ Large
+
+
+ );
+}
diff --git a/apps/docs/content/components/checkbox/sizes.ts b/apps/docs/content/components/checkbox/sizes.ts
index 7dc596b4ec..85a2f5b30b 100644
--- a/apps/docs/content/components/checkbox/sizes.ts
+++ b/apps/docs/content/components/checkbox/sizes.ts
@@ -1,14 +1,4 @@
-const App = `import {Checkbox} from "@nextui-org/react";
-
-export default function App() {
- return (
-
- Small
- Medium
- Large
-
- );
-}`;
+import App from "./sizes.raw.jsx?raw";
const react = {
"/App.jsx": App,
diff --git a/apps/docs/content/components/checkbox/usage.raw.jsx b/apps/docs/content/components/checkbox/usage.raw.jsx
new file mode 100644
index 0000000000..050e56a5a7
--- /dev/null
+++ b/apps/docs/content/components/checkbox/usage.raw.jsx
@@ -0,0 +1,5 @@
+import {Checkbox} from "@nextui-org/react";
+
+export default function App() {
+ return Option;
+}
diff --git a/apps/docs/content/components/checkbox/usage.ts b/apps/docs/content/components/checkbox/usage.ts
index e7b4a84d96..1118304c37 100644
--- a/apps/docs/content/components/checkbox/usage.ts
+++ b/apps/docs/content/components/checkbox/usage.ts
@@ -1,10 +1,4 @@
-const App = `import {Checkbox} from "@nextui-org/react";
-
-export default function App() {
- return (
- Option
- );
-}`;
+import App from "./usage.raw.jsx?raw";
const react = {
"/App.jsx": App,