From 24ddfe2f89a2ed9f2d24350d5f639ce1b322d6e1 Mon Sep 17 00:00:00 2001 From: Mohamadzadeh <7796733@gmail.com> Date: Thu, 11 Jun 2026 18:34:56 +0330 Subject: [PATCH] first commit --- package.json | 26 ++++++++++++++++++++++++++ src/index.js | 1 + src/utils/numbers.js | 12 ++++++++++++ vite.config.js | 24 ++++++++++++++++++++++++ 4 files changed, 63 insertions(+) create mode 100644 package.json create mode 100644 src/index.js create mode 100644 src/utils/numbers.js create mode 100644 vite.config.js diff --git a/package.json b/package.json new file mode 100644 index 0000000..fe80892 --- /dev/null +++ b/package.json @@ -0,0 +1,26 @@ +{ + "name": "uikit", + "version": "1.0.0", + "type": "module", + "main": "./dist/index.js", + "module": "./dist/index.js", + "exports": { + ".": "./dist/index.js" + }, + "files": [ + "dist" + ], + "scripts": { + "build": "vite build" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0", + "@chakra-ui/react": "^3.0.0", + "react-icons": "^5.0.0" + }, + "devDependencies": { + "@vitejs/plugin-react": "^6.0.2", + "vite": "^7.1.0" + } +} diff --git a/src/index.js b/src/index.js new file mode 100644 index 0000000..e7678bb --- /dev/null +++ b/src/index.js @@ -0,0 +1 @@ +export { toFaNumber, toFaDigits, toEnDigits } from "./utils/numbers.js"; diff --git a/src/utils/numbers.js b/src/utils/numbers.js new file mode 100644 index 0000000..2b08aed --- /dev/null +++ b/src/utils/numbers.js @@ -0,0 +1,12 @@ +export const toFaNumber = (value) => { + return new Intl.NumberFormat("fa-IR").format(Number(value)); +}; + +export const toFaDigits = (value) => { + return String(value).replace(/\d/g, (d) => "۰۱۲۳۴۵۶۷۸۹"[Number(d)]); +}; + +export const toEnDigits = (value) => { + const numberString = String(value); + return numberString.replace(/[۰-۹]/g, (d) => String("۰۱۲۳۴۵۶۷۸۹".indexOf(d))); +}; diff --git a/vite.config.js b/vite.config.js new file mode 100644 index 0000000..06dcbf9 --- /dev/null +++ b/vite.config.js @@ -0,0 +1,24 @@ +import { defineConfig } from "vite"; +import react from "@vitejs/plugin-react"; +import path from "path"; + +export default defineConfig({ + plugins: [react()], + build: { + lib: { + entry: path.resolve(process.cwd(), "src/index.js"), + name: "uikit", + formats: ["es"], + fileName: () => "index.js", + }, + rolldownOptions: { + external: [ + "react", + "react-dom", + "react/jsx-runtime", + "@chakra-ui/react", + "react-icons", + ], + }, + }, +});