UNPKG

@betterstore/react

Version:

E-commerce for Developers

104 lines (100 loc) 2.54 kB
import commonjs from "@rollup/plugin-commonjs"; import json from "@rollup/plugin-json"; import resolve from "@rollup/plugin-node-resolve"; import typescript from "@rollup/plugin-typescript"; import { dirname, resolve as pathResolve } from "path"; import postcss from "rollup-plugin-postcss"; import { fileURLToPath } from "url"; const __dirname = dirname(fileURLToPath(import.meta.url)); // Custom plugin to handle "use client" directives const removeUseClientDirective = { name: "remove-use-client-directive", transform(code) { return { code: code.replace(/^"use client";\n?/gm, ""), map: null, }; }, }; export default { input: "src/index.ts", output: [ { file: "dist/index.cjs.js", format: "cjs", }, { file: "dist/index.mjs", format: "esm", }, ], plugins: [ removeUseClientDirective, resolve({ extensions: [".js", ".jsx", ".ts", ".tsx", ".json"], alias: { "@": pathResolve(__dirname, "src"), }, browser: true, preferBuiltins: false, }), commonjs({ include: /node_modules/, }), typescript(), json({ include: "**/*.json", preferConst: true, }), postcss({ config: { path: "./postcss.config.cjs", }, extract: false, modules: false, minimize: false, inject: false, }), ], external: [ // "@radix-ui/react-radio-group", // "@radix-ui/react-label", // "@radix-ui/react-checkbox", // "@radix-ui/react-select", // "@radix-ui/react-roving-focus", // "@radix-ui/react-presence", // "@radix-ui/react-dismissable-layer", // "@radix-ui/react-focus-guards", // "@radix-ui/react-collection", // "@radix-ui/react-popper", // "@radix-ui/react-portal", // "@radix-ui/react-focus-scope", // "@radix-ui/react-dialog", // "@radix-ui/react-dropdown-menu", // "@radix-ui/react-popover", // "@radix-ui/react-separator", // "@radix-ui/react-slot", "react", "react-dom", "react/jsx-runtime", // "@stripe/react-stripe-js", // "@stripe/stripe-js", // "zustand", // "zod", // "tailwindcss-animate", // "class-variance-authority", // "clsx", // "tailwind-merge", // "lucide-react", // "react-hook-form", // "@hookform/resolvers", // "motion", // "@betterstore/sdk", // "country-data-list", // "cmdk", // "i18next", // "i18next-browser-languagedetector", // "react-i18next", // "sonner", ], };