diff --git a/scripts/generate-editor-fonts.mjs b/scripts/generate-editor-fonts.mjs new file mode 100644 index 0000000..1b1b8b8 --- /dev/null +++ b/scripts/generate-editor-fonts.mjs @@ -0,0 +1,398 @@ +import fs from "fs"; +import path from "path"; +import { fileURLToPath } from "url"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const ROOT = path.join(__dirname, "../src/assets/fonts/irancell/fonts-editor"); +const OUT_JSON = path.join(ROOT, "fonts.json"); +const OUT_CSS = path.join(ROOT, "fonts.css"); + +const WEIGHT_LABELS = { + 100: "Thin", + 200: "Extra Light", + 300: "Light", + 400: "Regular", + 500: "Medium", + 600: "Semi Bold", + 700: "Bold", + 800: "Extra Bold", + 900: "Black", +}; + +/** @type {Array<{ id: string; label: string; cssFamily: string; category: "persian" | "english"; faces: Array<{ weight: number; src: string; format?: string }> }>} */ +const FONT_FAMILIES = [ + { + id: "irancell", + label: "ایرانسل", + cssFamily: "editor-irancell", + category: "persian", + defaultWeight: "300", + faces: [ + { weight: 200, src: "../irancell-extralight.ttf" }, + { weight: 300, src: "../irancell-light.ttf" }, + { weight: 600, src: "../irancell-bold.ttf" }, + { weight: 700, src: "../irancell-bold.ttf" }, + ], + }, + { + id: "peyda", + label: "پیدا", + cssFamily: "editor-peyda", + category: "persian", + faces: [ + { weight: 100, src: "Persian Font/peyda/woff2/PeydaWeb-Thin.woff2", format: "woff2" }, + { weight: 200, src: "Persian Font/peyda/woff2/peydaWeb-extralight.woff2", format: "woff2" }, + { weight: 300, src: "Persian Font/peyda/woff2/peydaWeb-light.woff2", format: "woff2" }, + { weight: 400, src: "Persian Font/peyda/woff2/PeydaWeb-Regular.woff2", format: "woff2" }, + { weight: 500, src: "Persian Font/peyda/woff2/PeydaWeb-Medium.woff2", format: "woff2" }, + { weight: 600, src: "Persian Font/peyda/woff2/PeydaWeb-SemiBold.woff2", format: "woff2" }, + { weight: 700, src: "Persian Font/peyda/woff2/PeydaWeb-Bold.woff2", format: "woff2" }, + { weight: 800, src: "Persian Font/peyda/woff2/PeydaWeb-ExtraBold.woff2", format: "woff2" }, + { weight: 900, src: "Persian Font/peyda/woff2/PeydaWeb-Black.woff2", format: "woff2" }, + ], + }, + { + id: "iransans-fanum", + label: "ایران‌سنس (اعداد فارسی)", + cssFamily: "editor-iransans-fanum", + category: "persian", + faces: [ + { weight: 200, src: "Persian Font/IRANSansWeb(FaNum)_UltraLight.ttf" }, + { weight: 300, src: "Persian Font/IRANSansWeb(FaNum)_Light.ttf" }, + { weight: 400, src: "Persian Font/IRANSansWeb(FaNum).ttf" }, + { weight: 500, src: "Persian Font/IRANSansWeb(FaNum)_Medium.ttf" }, + { weight: 700, src: "Persian Font/IRANSansWeb(FaNum)_Bold.ttf" }, + ], + }, + { + id: "sahel", + label: "ساحل", + cssFamily: "editor-sahel", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/Sahel-VF.ttf" }], + }, + { + id: "yekan", + label: "یکان", + cssFamily: "editor-yekan", + category: "persian", + faces: [ + { weight: 400, src: "Persian Font/Yekan.ttf" }, + { weight: 700, src: "Persian Font/BYekan.ttf" }, + ], + }, + { + id: "btehran", + label: "تهران", + cssFamily: "editor-btehran", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/BTehran.ttf" }], + }, + { + id: "byagut", + label: "یاقوت", + cssFamily: "editor-byagut", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/BYagut.ttf" }], + }, + { + id: "byas", + label: "یاس", + cssFamily: "editor-byas", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/BYas.ttf" }], + }, + { + id: "bzar", + label: "زر", + cssFamily: "editor-bzar", + category: "persian", + faces: [{ weight: 700, src: "Persian Font/BZarBd.ttf" }], + }, + { + id: "bkoodak", + label: "کودک", + cssFamily: "editor-bkoodak", + category: "persian", + faces: [{ weight: 700, src: "Persian Font/BKoodakBold.ttf" }], + }, + { + id: "bbaran", + label: "باران", + cssFamily: "editor-bbaran", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/BBaran.ttf" }], + }, + { + id: "broya", + label: "رویا", + cssFamily: "editor-broya", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/BRoya.ttf" }], + }, + { + id: "bmahsa", + label: "مهسا", + cssFamily: "editor-bmahsa", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/BMahsa.ttf" }], + }, + { + id: "bmorvarid", + label: "مروارید", + cssFamily: "editor-bmorvarid", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/BMorvarid.ttf" }], + }, + { + id: "bbc-nassim", + label: "نسیم", + cssFamily: "editor-bbc-nassim", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/BBCNassim.ttf" }], + }, + { + id: "far-titr", + label: "تیتر", + cssFamily: "editor-far-titr", + category: "persian", + faces: [{ weight: 400, src: "Persian Font/Far_TitrDF.ttf" }], + }, + { + id: "roboto", + label: "Roboto", + cssFamily: "editor-roboto", + category: "english", + faces: [ + { weight: 100, src: "English Font/Roboto-Thin-webfont.ttf" }, + { weight: 300, src: "English Font/Roboto-Light-webfont.ttf" }, + { weight: 400, src: "English Font/Roboto-Regular-webfont.ttf" }, + { weight: 500, src: "English Font/Roboto-Medium-webfont.ttf" }, + { weight: 700, src: "English Font/Roboto-Bold-webfont.ttf" }, + { weight: 900, src: "English Font/Roboto-Black-webfont.ttf" }, + ], + }, + { + id: "roboto-condensed", + label: "Roboto Condensed", + cssFamily: "editor-roboto-condensed", + category: "english", + faces: [ + { weight: 400, src: "English Font/Roboto-Condensed-webfont.ttf" }, + { weight: 700, src: "English Font/Roboto-BoldCondensed-webfont.ttf" }, + ], + }, + { + id: "vollkorn", + label: "Vollkorn", + cssFamily: "editor-vollkorn", + category: "english", + faces: [ + { weight: 400, src: "English Font/Vollkorn-Regular.ttf" }, + { weight: 500, src: "English Font/Vollkorn-Medium.ttf" }, + { weight: 600, src: "English Font/Vollkorn-Semibold.ttf" }, + { weight: 700, src: "English Font/Vollkorn-Bold.ttf" }, + ], + }, + { + id: "caviar-dreams", + label: "Caviar Dreams", + cssFamily: "editor-caviar-dreams", + category: "english", + faces: [ + { weight: 400, src: "English Font/CaviarDreams.ttf" }, + { weight: 700, src: "English Font/CaviarDreams_Bold.ttf" }, + ], + }, + { + id: "raleway", + label: "Raleway", + cssFamily: "editor-raleway", + category: "english", + faces: [ + { weight: 200, src: "English Font/raleway-extralight-webfont.ttf" }, + { weight: 400, src: "English Font/raleway-regular-webfont.ttf" }, + { weight: 500, src: "English Font/raleway-medium-webfont.ttf" }, + { weight: 600, src: "English Font/raleway-semibold-webfont.ttf" }, + { weight: 700, src: "English Font/raleway-bold-webfont.ttf" }, + { weight: 800, src: "English Font/raleway-extrabold-webfont.ttf" }, + ], + }, + { + id: "proxima-nova", + label: "Proxima Nova", + cssFamily: "editor-proxima-nova", + category: "english", + faces: [ + { weight: 300, src: "English Font/proximanova-light-webfont.ttf" }, + { weight: 400, src: "English Font/proximanova-reg-webfont.ttf" }, + { weight: 600, src: "English Font/proximanova-semibold-webfont.ttf" }, + { weight: 700, src: "English Font/proximanova-bold-webfont.ttf" }, + { weight: 800, src: "English Font/proximanova-extrabold-webfont.ttf" }, + { weight: 900, src: "English Font/proximanova-black-webfont.ttf" }, + ], + }, + { + id: "proxima-nova-condensed", + label: "Proxima Nova Condensed", + cssFamily: "editor-proxima-nova-condensed", + category: "english", + faces: [ + { weight: 300, src: "English Font/proximanovacond-light-webfont.ttf" }, + { weight: 600, src: "English Font/proximanovacond-semiboldit-webfont.ttf" }, + ], + }, + { + id: "din-pro", + label: "DIN Pro", + cssFamily: "editor-din-pro", + category: "english", + faces: [ + { weight: 400, src: "English Font/dinpro-regular.ttf" }, + { weight: 500, src: "English Font/dinpro-medium.ttf" }, + { weight: 700, src: "English Font/dinpro-bold.ttf" }, + { weight: 900, src: "English Font/dinpro-black.ttf" }, + ], + }, + { + id: "din-alternate", + label: "DIN Alternate", + cssFamily: "editor-din-alternate", + category: "english", + faces: [ + { weight: 300, src: "English Font/din-lightalternate.ttf" }, + { weight: 400, src: "English Font/din-regularalternate.ttf" }, + { weight: 500, src: "English Font/din-mediumalternate.ttf" }, + { weight: 700, src: "English Font/din-boldalternate.ttf" }, + { weight: 900, src: "English Font/din-blackalternate.ttf" }, + ], + }, + { + id: "abril-fatface", + label: "Abril Fatface", + cssFamily: "editor-abril-fatface", + category: "english", + faces: [{ weight: 400, src: "English Font/AbrilFatface-Regular.otf", format: "opentype" }], + }, + { + id: "anton", + label: "Anton", + cssFamily: "editor-anton", + category: "english", + faces: [{ weight: 400, src: "English Font/Anton.ttf" }], + }, + { + id: "bebas-neue", + label: "Bebas Neue", + cssFamily: "editor-bebas-neue", + category: "english", + faces: [{ weight: 400, src: "English Font/Bebas Neue.ttf" }], + }, + { + id: "kepler-std", + label: "Kepler Std", + cssFamily: "editor-kepler-std", + category: "english", + faces: [{ weight: 400, src: "English Font/kepler-std.ttf" }], + }, + { + id: "playfair-display", + label: "Playfair Display", + cssFamily: "editor-playfair-display", + category: "english", + faces: [{ weight: 900, src: "English Font/playfairdisplay-black-webfont.ttf" }], + }, +]; + +function encodeUrlSegment(segment) { + return segment + .split("/") + .map((part) => encodeURIComponent(part)) + .join("/"); +} + +function buildCss(families) { + const blocks = families.flatMap((family) => + family.faces.map((face) => { + const formatSuffix = face.format ? ` format("${face.format}")` : ""; + const url = encodeUrlSegment(face.src); + return `@font-face { + font-family: "${family.cssFamily}"; + font-style: normal; + font-weight: ${face.weight}; + src: url("${url}")${formatSuffix}; +}`; + }), + ); + + return `/* Auto-generated by scripts/generate-editor-fonts.mjs — do not edit manually */\n\n${blocks.join("\n\n")}\n`; +} + +function buildJson(families) { + const fonts = families.map((family) => { + const srcToFace = new Map(); + for (const face of family.faces) { + const existing = srcToFace.get(face.src); + if (!existing || face.weight > existing.weight) { + srcToFace.set(face.src, face); + } + } + + const uniqueWeightFaces = [...srcToFace.values()].sort( + (a, b) => a.weight - b.weight, + ); + + const uniqueWeights = uniqueWeightFaces.map((f) => f.weight); + + return { + id: family.id, + label: family.label, + cssFamily: family.cssFamily, + category: family.category, + defaultWeight: family.defaultWeight + ? String(family.defaultWeight) + : uniqueWeights.includes(400) + ? "400" + : String(uniqueWeights[0]), + weights: uniqueWeightFaces.map((face) => ({ + value: String(face.weight), + label: WEIGHT_LABELS[face.weight] || String(face.weight), + })), + }; + }); + + return { + version: 1, + fonts, + }; +} + +function verifySources(families) { + const missing = []; + for (const family of families) { + for (const face of family.faces) { + const resolved = face.src.startsWith("../") + ? path.join(ROOT, face.src) + : path.join(ROOT, face.src); + if (!fs.existsSync(resolved)) { + missing.push(resolved); + } + } + } + if (missing.length) { + console.error("Missing font files:\n" + missing.map((m) => ` - ${m}`).join("\n")); + process.exit(1); + } +} + +verifySources(FONT_FAMILIES); + +const json = buildJson(FONT_FAMILIES); +const css = buildCss(FONT_FAMILIES); + +fs.writeFileSync(OUT_JSON, JSON.stringify(json, null, 2) + "\n"); +fs.writeFileSync(OUT_CSS, css); + +console.log(`Wrote ${OUT_JSON}`); +console.log(`Wrote ${OUT_CSS}`); +console.log(`Fonts: ${json.fonts.length}`); diff --git a/src/App.tsx b/src/App.tsx index 9077870..d5ae344 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -7,6 +7,7 @@ import { I18nextProvider } from "react-i18next"; import "react-multi-date-picker/styles/layouts/mobile.css"; import { BrowserRouter } from "react-router-dom"; import "./assets/fonts/irancell/style.css"; +import "./assets/fonts/irancell/fonts-editor/fonts.css"; import ToastContainer from "./components/Toast"; import MainRouter from "./router/MainRouter"; diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/AbrilFatface-Regular.otf b/src/assets/fonts/irancell/fonts-editor/English Font/AbrilFatface-Regular.otf new file mode 100755 index 0000000..af5e20a Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/AbrilFatface-Regular.otf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Anton.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Anton.ttf new file mode 100755 index 0000000..d8dad25 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Anton.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Bebas Neue.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Bebas Neue.ttf new file mode 100755 index 0000000..e3e18ef Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Bebas Neue.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams.ttf new file mode 100755 index 0000000..852f454 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_Bold.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_Bold.ttf new file mode 100755 index 0000000..0a3fe6d Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_Bold.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_BoldItalic.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_BoldItalic.ttf new file mode 100755 index 0000000..35117f0 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_BoldItalic.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_Italic.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_Italic.ttf new file mode 100755 index 0000000..d751ec1 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/CaviarDreams_Italic.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Kepler-Std (1).ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Kepler-Std (1).ttf new file mode 100755 index 0000000..3c70dd6 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Kepler-Std (1).ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Black-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Black-webfont.ttf new file mode 100755 index 0000000..a53bb35 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Black-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BlackItalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BlackItalic-webfont.ttf new file mode 100755 index 0000000..7bab132 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BlackItalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Bold-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Bold-webfont.ttf new file mode 100755 index 0000000..20f2c40 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Bold-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldCondensed-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldCondensed-webfont.ttf new file mode 100755 index 0000000..7fad74e Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldCondensed-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldCondensedItalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldCondensedItalic-webfont.ttf new file mode 100755 index 0000000..661bf7b Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldCondensedItalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldItalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldItalic-webfont.ttf new file mode 100755 index 0000000..abe6d34 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-BoldItalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Condensed-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Condensed-webfont.ttf new file mode 100755 index 0000000..0617758 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Condensed-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-CondensedItalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-CondensedItalic-webfont.ttf new file mode 100755 index 0000000..44405d9 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-CondensedItalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Italic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Italic-webfont.ttf new file mode 100755 index 0000000..5805eee Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Italic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Light-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Light-webfont.ttf new file mode 100755 index 0000000..70476da Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Light-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-LightItalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-LightItalic-webfont.ttf new file mode 100755 index 0000000..0ec43ae Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-LightItalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Medium-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Medium-webfont.ttf new file mode 100755 index 0000000..24a0730 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Medium-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-MediumItalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-MediumItalic-webfont.ttf new file mode 100755 index 0000000..319e0a9 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-MediumItalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Regular-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Regular-webfont.ttf new file mode 100755 index 0000000..32634bd Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Regular-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Thin-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Thin-webfont.ttf new file mode 100755 index 0000000..766bc49 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-Thin-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-ThinItalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-ThinItalic-webfont.ttf new file mode 100755 index 0000000..74be398 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Roboto-ThinItalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Bold.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Bold.ttf new file mode 100755 index 0000000..7d5515f Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Bold.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-BoldItalic.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-BoldItalic.ttf new file mode 100755 index 0000000..5c19ef5 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-BoldItalic.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Italic.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Italic.ttf new file mode 100755 index 0000000..a180856 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Italic.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Medium.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Medium.ttf new file mode 100755 index 0000000..96c3512 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Medium.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-MediumItalic.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-MediumItalic.ttf new file mode 100755 index 0000000..3690dae Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-MediumItalic.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Regular.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Regular.ttf new file mode 100755 index 0000000..f369528 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Regular.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Semibold.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Semibold.ttf new file mode 100755 index 0000000..2db528d Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-Semibold.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-SemiboldItalic.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-SemiboldItalic.ttf new file mode 100755 index 0000000..63526ac Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/Vollkorn-SemiboldItalic.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/din-blackalternate.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/din-blackalternate.ttf new file mode 100755 index 0000000..baa79dd Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/din-blackalternate.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/din-boldalternate.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/din-boldalternate.ttf new file mode 100755 index 0000000..1efa6db Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/din-boldalternate.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/din-lightalternate.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/din-lightalternate.ttf new file mode 100755 index 0000000..6793627 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/din-lightalternate.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/din-mediumalternate.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/din-mediumalternate.ttf new file mode 100755 index 0000000..021a7dd Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/din-mediumalternate.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/din-regularalternate.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/din-regularalternate.ttf new file mode 100755 index 0000000..7c50f22 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/din-regularalternate.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-black.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-black.ttf new file mode 100755 index 0000000..ef1d9da Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-black.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-bold.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-bold.ttf new file mode 100755 index 0000000..1377442 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-bold.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-medium.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-medium.ttf new file mode 100755 index 0000000..56135ed Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-medium.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-regular.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-regular.ttf new file mode 100755 index 0000000..c01fc94 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/dinpro-regular.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/kepler-std.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/kepler-std.ttf new file mode 100755 index 0000000..049f238 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/kepler-std.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/playfairdisplay-black-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/playfairdisplay-black-webfont.ttf new file mode 100755 index 0000000..a5d52a3 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/playfairdisplay-black-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-black-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-black-webfont.ttf new file mode 100755 index 0000000..68fe858 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-black-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-bold-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-bold-webfont.ttf new file mode 100755 index 0000000..362014f Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-bold-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-extrabold-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-extrabold-webfont.ttf new file mode 100755 index 0000000..05c4a2b Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-extrabold-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-light-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-light-webfont.ttf new file mode 100755 index 0000000..0794f40 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-light-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-lightitalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-lightitalic-webfont.ttf new file mode 100755 index 0000000..ec7cfe9 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-lightitalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-reg-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-reg-webfont.ttf new file mode 100755 index 0000000..2019ba4 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-reg-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-regitalic-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-regitalic-webfont.ttf new file mode 100755 index 0000000..3846a4c Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-regitalic-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-sbold-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-sbold-webfont.ttf new file mode 100755 index 0000000..1c5ed30 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-sbold-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-semibold-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-semibold-webfont.ttf new file mode 100755 index 0000000..45162a4 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanova-semibold-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanovacond-light-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanovacond-light-webfont.ttf new file mode 100755 index 0000000..1de5270 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanovacond-light-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/proximanovacond-semiboldit-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/proximanovacond-semiboldit-webfont.ttf new file mode 100755 index 0000000..1c29563 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/proximanovacond-semiboldit-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/raleway-bold-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-bold-webfont.ttf new file mode 100755 index 0000000..5247ed9 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-bold-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/raleway-extrabold-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-extrabold-webfont.ttf new file mode 100755 index 0000000..8d060c0 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-extrabold-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/raleway-extralight-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-extralight-webfont.ttf new file mode 100755 index 0000000..c1bd95e Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-extralight-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/raleway-medium-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-medium-webfont.ttf new file mode 100755 index 0000000..c680013 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-medium-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/raleway-regular-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-regular-webfont.ttf new file mode 100755 index 0000000..8531363 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-regular-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/English Font/raleway-semibold-webfont.ttf b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-semibold-webfont.ttf new file mode 100755 index 0000000..a8ecea8 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/English Font/raleway-semibold-webfont.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BBCNassim.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BBCNassim.ttf new file mode 100755 index 0000000..1319169 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BBCNassim.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BBaran.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BBaran.ttf new file mode 100755 index 0000000..7385282 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BBaran.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BKoodakBold.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BKoodakBold.ttf new file mode 100755 index 0000000..35ae332 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BKoodakBold.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BMahsa.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BMahsa.ttf new file mode 100755 index 0000000..23d2403 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BMahsa.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BMorvarid.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BMorvarid.ttf new file mode 100755 index 0000000..0706baf Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BMorvarid.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BRoya.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BRoya.ttf new file mode 100755 index 0000000..b9ae3c5 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BRoya.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BTehran.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BTehran.ttf new file mode 100755 index 0000000..064564f Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BTehran.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BYagut.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BYagut.ttf new file mode 100755 index 0000000..dd3aac8 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BYagut.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BYas.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BYas.ttf new file mode 100755 index 0000000..16af1d5 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BYas.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BYekan.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BYekan.ttf new file mode 100755 index 0000000..c806a22 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BYekan.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/BZarBd.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/BZarBd.ttf new file mode 100755 index 0000000..0a0ee32 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/BZarBd.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/Far_TitrDF.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/Far_TitrDF.ttf new file mode 100755 index 0000000..62604a0 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/Far_TitrDF.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum).ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum).ttf new file mode 100755 index 0000000..168a908 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum).ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Bold.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Bold.ttf new file mode 100755 index 0000000..2f918ef Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Bold.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Light.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Light.ttf new file mode 100755 index 0000000..9b84e2d Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Light.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Medium.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Medium.ttf new file mode 100755 index 0000000..e52d253 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_Medium.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_UltraLight.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_UltraLight.ttf new file mode 100755 index 0000000..2ac1213 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/IRANSansWeb(FaNum)_UltraLight.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/Sahel-VF.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/Sahel-VF.ttf new file mode 100755 index 0000000..d792236 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/Sahel-VF.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/Yekan.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/Yekan.ttf new file mode 100755 index 0000000..e7aae76 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/Yekan.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular-1.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular-1.ttf new file mode 100755 index 0000000..1319169 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular-1.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular-2.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular-2.ttf new file mode 100755 index 0000000..1319169 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular-2.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular.ttf b/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular.ttf new file mode 100755 index 0000000..1319169 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/bbc-nassim-regular.ttf differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Black.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Black.eot new file mode 100755 index 0000000..49228d7 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Black.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Bold.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Bold.eot new file mode 100755 index 0000000..d50609e Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Bold.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-ExtraBold.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-ExtraBold.eot new file mode 100755 index 0000000..b104052 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-ExtraBold.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Medium.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Medium.eot new file mode 100755 index 0000000..71c61ec Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Medium.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Regular.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Regular.eot new file mode 100755 index 0000000..3184dfd Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Regular.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-SemiBold.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-SemiBold.eot new file mode 100755 index 0000000..41ce943 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-SemiBold.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Thin.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Thin.eot new file mode 100755 index 0000000..ed9b41a Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/PeydaWeb-Thin.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/peydaWeb-extralight.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/peydaWeb-extralight.eot new file mode 100755 index 0000000..915371a Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/peydaWeb-extralight.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/peydaWeb-light.eot b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/peydaWeb-light.eot new file mode 100755 index 0000000..3aa8bc8 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/eot/peydaWeb-light.eot differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Black.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Black.woff new file mode 100755 index 0000000..eb34afc Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Black.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Bold.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Bold.woff new file mode 100755 index 0000000..4f5568f Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Bold.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-ExtraBold.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-ExtraBold.woff new file mode 100755 index 0000000..27bf42c Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-ExtraBold.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Medium.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Medium.woff new file mode 100755 index 0000000..9412e73 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Medium.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Regular.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Regular.woff new file mode 100755 index 0000000..43b6b27 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Regular.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-SemiBold.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-SemiBold.woff new file mode 100755 index 0000000..f8bb6b7 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-SemiBold.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Thin.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Thin.woff new file mode 100755 index 0000000..9d6751c Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/PeydaWeb-Thin.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/peydaWeb-extralight.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/peydaWeb-extralight.woff new file mode 100755 index 0000000..da569e8 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/peydaWeb-extralight.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/peydaWeb-light.woff b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/peydaWeb-light.woff new file mode 100755 index 0000000..40a357c Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff/peydaWeb-light.woff differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Black.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Black.woff2 new file mode 100755 index 0000000..6e55558 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Black.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Bold.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Bold.woff2 new file mode 100755 index 0000000..3c542cc Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Bold.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-ExtraBold.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-ExtraBold.woff2 new file mode 100755 index 0000000..c76a44e Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-ExtraBold.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Medium.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Medium.woff2 new file mode 100755 index 0000000..82b5280 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Medium.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Regular.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Regular.woff2 new file mode 100755 index 0000000..8c3fee2 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Regular.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-SemiBold.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-SemiBold.woff2 new file mode 100755 index 0000000..f5a51e7 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-SemiBold.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Thin.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Thin.woff2 new file mode 100755 index 0000000..df6180d Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/PeydaWeb-Thin.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/peydaWeb-extralight.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/peydaWeb-extralight.woff2 new file mode 100755 index 0000000..cb70203 Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/peydaWeb-extralight.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/peydaWeb-light.woff2 b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/peydaWeb-light.woff2 new file mode 100755 index 0000000..855ab5a Binary files /dev/null and b/src/assets/fonts/irancell/fonts-editor/Persian Font/peyda/woff2/peydaWeb-light.woff2 differ diff --git a/src/assets/fonts/irancell/fonts-editor/fonts.css b/src/assets/fonts/irancell/fonts-editor/fonts.css new file mode 100644 index 0000000..e8ca1b8 --- /dev/null +++ b/src/assets/fonts/irancell/fonts-editor/fonts.css @@ -0,0 +1,519 @@ +/* Auto-generated by scripts/generate-editor-fonts.mjs — do not edit manually */ + +@font-face { + font-family: "editor-irancell"; + font-style: normal; + font-weight: 200; + src: url("../irancell-extralight.ttf"); +} + +@font-face { + font-family: "editor-irancell"; + font-style: normal; + font-weight: 300; + src: url("../irancell-light.ttf"); +} + +@font-face { + font-family: "editor-irancell"; + font-style: normal; + font-weight: 600; + src: url("../irancell-bold.ttf"); +} + +@font-face { + font-family: "editor-irancell"; + font-style: normal; + font-weight: 700; + src: url("../irancell-bold.ttf"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 100; + src: url("Persian%20Font/peyda/woff2/PeydaWeb-Thin.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 200; + src: url("Persian%20Font/peyda/woff2/peydaWeb-extralight.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 300; + src: url("Persian%20Font/peyda/woff2/peydaWeb-light.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/peyda/woff2/PeydaWeb-Regular.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 500; + src: url("Persian%20Font/peyda/woff2/PeydaWeb-Medium.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 600; + src: url("Persian%20Font/peyda/woff2/PeydaWeb-SemiBold.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 700; + src: url("Persian%20Font/peyda/woff2/PeydaWeb-Bold.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 800; + src: url("Persian%20Font/peyda/woff2/PeydaWeb-ExtraBold.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-peyda"; + font-style: normal; + font-weight: 900; + src: url("Persian%20Font/peyda/woff2/PeydaWeb-Black.woff2") format("woff2"); +} + +@font-face { + font-family: "editor-iransans-fanum"; + font-style: normal; + font-weight: 200; + src: url("Persian%20Font/IRANSansWeb(FaNum)_UltraLight.ttf"); +} + +@font-face { + font-family: "editor-iransans-fanum"; + font-style: normal; + font-weight: 300; + src: url("Persian%20Font/IRANSansWeb(FaNum)_Light.ttf"); +} + +@font-face { + font-family: "editor-iransans-fanum"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/IRANSansWeb(FaNum).ttf"); +} + +@font-face { + font-family: "editor-iransans-fanum"; + font-style: normal; + font-weight: 500; + src: url("Persian%20Font/IRANSansWeb(FaNum)_Medium.ttf"); +} + +@font-face { + font-family: "editor-iransans-fanum"; + font-style: normal; + font-weight: 700; + src: url("Persian%20Font/IRANSansWeb(FaNum)_Bold.ttf"); +} + +@font-face { + font-family: "editor-sahel"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/Sahel-VF.ttf"); +} + +@font-face { + font-family: "editor-yekan"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/Yekan.ttf"); +} + +@font-face { + font-family: "editor-yekan"; + font-style: normal; + font-weight: 700; + src: url("Persian%20Font/BYekan.ttf"); +} + +@font-face { + font-family: "editor-btehran"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/BTehran.ttf"); +} + +@font-face { + font-family: "editor-byagut"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/BYagut.ttf"); +} + +@font-face { + font-family: "editor-byas"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/BYas.ttf"); +} + +@font-face { + font-family: "editor-bzar"; + font-style: normal; + font-weight: 700; + src: url("Persian%20Font/BZarBd.ttf"); +} + +@font-face { + font-family: "editor-bkoodak"; + font-style: normal; + font-weight: 700; + src: url("Persian%20Font/BKoodakBold.ttf"); +} + +@font-face { + font-family: "editor-bbaran"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/BBaran.ttf"); +} + +@font-face { + font-family: "editor-broya"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/BRoya.ttf"); +} + +@font-face { + font-family: "editor-bmahsa"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/BMahsa.ttf"); +} + +@font-face { + font-family: "editor-bmorvarid"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/BMorvarid.ttf"); +} + +@font-face { + font-family: "editor-bbc-nassim"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/BBCNassim.ttf"); +} + +@font-face { + font-family: "editor-far-titr"; + font-style: normal; + font-weight: 400; + src: url("Persian%20Font/Far_TitrDF.ttf"); +} + +@font-face { + font-family: "editor-roboto"; + font-style: normal; + font-weight: 100; + src: url("English%20Font/Roboto-Thin-webfont.ttf"); +} + +@font-face { + font-family: "editor-roboto"; + font-style: normal; + font-weight: 300; + src: url("English%20Font/Roboto-Light-webfont.ttf"); +} + +@font-face { + font-family: "editor-roboto"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/Roboto-Regular-webfont.ttf"); +} + +@font-face { + font-family: "editor-roboto"; + font-style: normal; + font-weight: 500; + src: url("English%20Font/Roboto-Medium-webfont.ttf"); +} + +@font-face { + font-family: "editor-roboto"; + font-style: normal; + font-weight: 700; + src: url("English%20Font/Roboto-Bold-webfont.ttf"); +} + +@font-face { + font-family: "editor-roboto"; + font-style: normal; + font-weight: 900; + src: url("English%20Font/Roboto-Black-webfont.ttf"); +} + +@font-face { + font-family: "editor-roboto-condensed"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/Roboto-Condensed-webfont.ttf"); +} + +@font-face { + font-family: "editor-roboto-condensed"; + font-style: normal; + font-weight: 700; + src: url("English%20Font/Roboto-BoldCondensed-webfont.ttf"); +} + +@font-face { + font-family: "editor-vollkorn"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/Vollkorn-Regular.ttf"); +} + +@font-face { + font-family: "editor-vollkorn"; + font-style: normal; + font-weight: 500; + src: url("English%20Font/Vollkorn-Medium.ttf"); +} + +@font-face { + font-family: "editor-vollkorn"; + font-style: normal; + font-weight: 600; + src: url("English%20Font/Vollkorn-Semibold.ttf"); +} + +@font-face { + font-family: "editor-vollkorn"; + font-style: normal; + font-weight: 700; + src: url("English%20Font/Vollkorn-Bold.ttf"); +} + +@font-face { + font-family: "editor-caviar-dreams"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/CaviarDreams.ttf"); +} + +@font-face { + font-family: "editor-caviar-dreams"; + font-style: normal; + font-weight: 700; + src: url("English%20Font/CaviarDreams_Bold.ttf"); +} + +@font-face { + font-family: "editor-raleway"; + font-style: normal; + font-weight: 200; + src: url("English%20Font/raleway-extralight-webfont.ttf"); +} + +@font-face { + font-family: "editor-raleway"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/raleway-regular-webfont.ttf"); +} + +@font-face { + font-family: "editor-raleway"; + font-style: normal; + font-weight: 500; + src: url("English%20Font/raleway-medium-webfont.ttf"); +} + +@font-face { + font-family: "editor-raleway"; + font-style: normal; + font-weight: 600; + src: url("English%20Font/raleway-semibold-webfont.ttf"); +} + +@font-face { + font-family: "editor-raleway"; + font-style: normal; + font-weight: 700; + src: url("English%20Font/raleway-bold-webfont.ttf"); +} + +@font-face { + font-family: "editor-raleway"; + font-style: normal; + font-weight: 800; + src: url("English%20Font/raleway-extrabold-webfont.ttf"); +} + +@font-face { + font-family: "editor-proxima-nova"; + font-style: normal; + font-weight: 300; + src: url("English%20Font/proximanova-light-webfont.ttf"); +} + +@font-face { + font-family: "editor-proxima-nova"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/proximanova-reg-webfont.ttf"); +} + +@font-face { + font-family: "editor-proxima-nova"; + font-style: normal; + font-weight: 600; + src: url("English%20Font/proximanova-semibold-webfont.ttf"); +} + +@font-face { + font-family: "editor-proxima-nova"; + font-style: normal; + font-weight: 700; + src: url("English%20Font/proximanova-bold-webfont.ttf"); +} + +@font-face { + font-family: "editor-proxima-nova"; + font-style: normal; + font-weight: 800; + src: url("English%20Font/proximanova-extrabold-webfont.ttf"); +} + +@font-face { + font-family: "editor-proxima-nova"; + font-style: normal; + font-weight: 900; + src: url("English%20Font/proximanova-black-webfont.ttf"); +} + +@font-face { + font-family: "editor-proxima-nova-condensed"; + font-style: normal; + font-weight: 300; + src: url("English%20Font/proximanovacond-light-webfont.ttf"); +} + +@font-face { + font-family: "editor-proxima-nova-condensed"; + font-style: normal; + font-weight: 600; + src: url("English%20Font/proximanovacond-semiboldit-webfont.ttf"); +} + +@font-face { + font-family: "editor-din-pro"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/dinpro-regular.ttf"); +} + +@font-face { + font-family: "editor-din-pro"; + font-style: normal; + font-weight: 500; + src: url("English%20Font/dinpro-medium.ttf"); +} + +@font-face { + font-family: "editor-din-pro"; + font-style: normal; + font-weight: 700; + src: url("English%20Font/dinpro-bold.ttf"); +} + +@font-face { + font-family: "editor-din-pro"; + font-style: normal; + font-weight: 900; + src: url("English%20Font/dinpro-black.ttf"); +} + +@font-face { + font-family: "editor-din-alternate"; + font-style: normal; + font-weight: 300; + src: url("English%20Font/din-lightalternate.ttf"); +} + +@font-face { + font-family: "editor-din-alternate"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/din-regularalternate.ttf"); +} + +@font-face { + font-family: "editor-din-alternate"; + font-style: normal; + font-weight: 500; + src: url("English%20Font/din-mediumalternate.ttf"); +} + +@font-face { + font-family: "editor-din-alternate"; + font-style: normal; + font-weight: 700; + src: url("English%20Font/din-boldalternate.ttf"); +} + +@font-face { + font-family: "editor-din-alternate"; + font-style: normal; + font-weight: 900; + src: url("English%20Font/din-blackalternate.ttf"); +} + +@font-face { + font-family: "editor-abril-fatface"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/AbrilFatface-Regular.otf") format("opentype"); +} + +@font-face { + font-family: "editor-anton"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/Anton.ttf"); +} + +@font-face { + font-family: "editor-bebas-neue"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/Bebas%20Neue.ttf"); +} + +@font-face { + font-family: "editor-kepler-std"; + font-style: normal; + font-weight: 400; + src: url("English%20Font/kepler-std.ttf"); +} + +@font-face { + font-family: "editor-playfair-display"; + font-style: normal; + font-weight: 900; + src: url("English%20Font/playfairdisplay-black-webfont.ttf"); +} diff --git a/src/assets/fonts/irancell/fonts-editor/fonts.json b/src/assets/fonts/irancell/fonts-editor/fonts.json new file mode 100644 index 0000000..2d4b5db --- /dev/null +++ b/src/assets/fonts/irancell/fonts-editor/fonts.json @@ -0,0 +1,567 @@ +{ + "version": 1, + "fonts": [ + { + "id": "irancell", + "label": "ایرانسل", + "cssFamily": "editor-irancell", + "category": "persian", + "defaultWeight": "300", + "weights": [ + { + "value": "200", + "label": "Extra Light" + }, + { + "value": "300", + "label": "Light" + }, + { + "value": "700", + "label": "Bold" + } + ] + }, + { + "id": "peyda", + "label": "پیدا", + "cssFamily": "editor-peyda", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "100", + "label": "Thin" + }, + { + "value": "200", + "label": "Extra Light" + }, + { + "value": "300", + "label": "Light" + }, + { + "value": "400", + "label": "Regular" + }, + { + "value": "500", + "label": "Medium" + }, + { + "value": "600", + "label": "Semi Bold" + }, + { + "value": "700", + "label": "Bold" + }, + { + "value": "800", + "label": "Extra Bold" + }, + { + "value": "900", + "label": "Black" + } + ] + }, + { + "id": "iransans-fanum", + "label": "ایران‌سنس (اعداد فارسی)", + "cssFamily": "editor-iransans-fanum", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "200", + "label": "Extra Light" + }, + { + "value": "300", + "label": "Light" + }, + { + "value": "400", + "label": "Regular" + }, + { + "value": "500", + "label": "Medium" + }, + { + "value": "700", + "label": "Bold" + } + ] + }, + { + "id": "sahel", + "label": "ساحل", + "cssFamily": "editor-sahel", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "yekan", + "label": "یکان", + "cssFamily": "editor-yekan", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + }, + { + "value": "700", + "label": "Bold" + } + ] + }, + { + "id": "btehran", + "label": "تهران", + "cssFamily": "editor-btehran", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "byagut", + "label": "یاقوت", + "cssFamily": "editor-byagut", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "byas", + "label": "یاس", + "cssFamily": "editor-byas", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "bzar", + "label": "زر", + "cssFamily": "editor-bzar", + "category": "persian", + "defaultWeight": "700", + "weights": [ + { + "value": "700", + "label": "Bold" + } + ] + }, + { + "id": "bkoodak", + "label": "کودک", + "cssFamily": "editor-bkoodak", + "category": "persian", + "defaultWeight": "700", + "weights": [ + { + "value": "700", + "label": "Bold" + } + ] + }, + { + "id": "bbaran", + "label": "باران", + "cssFamily": "editor-bbaran", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "broya", + "label": "رویا", + "cssFamily": "editor-broya", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "bmahsa", + "label": "مهسا", + "cssFamily": "editor-bmahsa", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "bmorvarid", + "label": "مروارید", + "cssFamily": "editor-bmorvarid", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "bbc-nassim", + "label": "نسیم", + "cssFamily": "editor-bbc-nassim", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "far-titr", + "label": "تیتر", + "cssFamily": "editor-far-titr", + "category": "persian", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "roboto", + "label": "Roboto", + "cssFamily": "editor-roboto", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "100", + "label": "Thin" + }, + { + "value": "300", + "label": "Light" + }, + { + "value": "400", + "label": "Regular" + }, + { + "value": "500", + "label": "Medium" + }, + { + "value": "700", + "label": "Bold" + }, + { + "value": "900", + "label": "Black" + } + ] + }, + { + "id": "roboto-condensed", + "label": "Roboto Condensed", + "cssFamily": "editor-roboto-condensed", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + }, + { + "value": "700", + "label": "Bold" + } + ] + }, + { + "id": "vollkorn", + "label": "Vollkorn", + "cssFamily": "editor-vollkorn", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + }, + { + "value": "500", + "label": "Medium" + }, + { + "value": "600", + "label": "Semi Bold" + }, + { + "value": "700", + "label": "Bold" + } + ] + }, + { + "id": "caviar-dreams", + "label": "Caviar Dreams", + "cssFamily": "editor-caviar-dreams", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + }, + { + "value": "700", + "label": "Bold" + } + ] + }, + { + "id": "raleway", + "label": "Raleway", + "cssFamily": "editor-raleway", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "200", + "label": "Extra Light" + }, + { + "value": "400", + "label": "Regular" + }, + { + "value": "500", + "label": "Medium" + }, + { + "value": "600", + "label": "Semi Bold" + }, + { + "value": "700", + "label": "Bold" + }, + { + "value": "800", + "label": "Extra Bold" + } + ] + }, + { + "id": "proxima-nova", + "label": "Proxima Nova", + "cssFamily": "editor-proxima-nova", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "300", + "label": "Light" + }, + { + "value": "400", + "label": "Regular" + }, + { + "value": "600", + "label": "Semi Bold" + }, + { + "value": "700", + "label": "Bold" + }, + { + "value": "800", + "label": "Extra Bold" + }, + { + "value": "900", + "label": "Black" + } + ] + }, + { + "id": "proxima-nova-condensed", + "label": "Proxima Nova Condensed", + "cssFamily": "editor-proxima-nova-condensed", + "category": "english", + "defaultWeight": "300", + "weights": [ + { + "value": "300", + "label": "Light" + }, + { + "value": "600", + "label": "Semi Bold" + } + ] + }, + { + "id": "din-pro", + "label": "DIN Pro", + "cssFamily": "editor-din-pro", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + }, + { + "value": "500", + "label": "Medium" + }, + { + "value": "700", + "label": "Bold" + }, + { + "value": "900", + "label": "Black" + } + ] + }, + { + "id": "din-alternate", + "label": "DIN Alternate", + "cssFamily": "editor-din-alternate", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "300", + "label": "Light" + }, + { + "value": "400", + "label": "Regular" + }, + { + "value": "500", + "label": "Medium" + }, + { + "value": "700", + "label": "Bold" + }, + { + "value": "900", + "label": "Black" + } + ] + }, + { + "id": "abril-fatface", + "label": "Abril Fatface", + "cssFamily": "editor-abril-fatface", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "anton", + "label": "Anton", + "cssFamily": "editor-anton", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "bebas-neue", + "label": "Bebas Neue", + "cssFamily": "editor-bebas-neue", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "kepler-std", + "label": "Kepler Std", + "cssFamily": "editor-kepler-std", + "category": "english", + "defaultWeight": "400", + "weights": [ + { + "value": "400", + "label": "Regular" + } + ] + }, + { + "id": "playfair-display", + "label": "Playfair Display", + "cssFamily": "editor-playfair-display", + "category": "english", + "defaultWeight": "900", + "weights": [ + { + "value": "900", + "label": "Black" + } + ] + } + ] +} diff --git a/src/pages/editor/components/sidebar/instructions/TextInstruction.tsx b/src/pages/editor/components/sidebar/instructions/TextInstruction.tsx index fd83c45..7471a98 100644 --- a/src/pages/editor/components/sidebar/instructions/TextInstruction.tsx +++ b/src/pages/editor/components/sidebar/instructions/TextInstruction.tsx @@ -4,17 +4,15 @@ import Select from "@/components/Select"; import ColorPicker from "@/components/ColorPicker"; import { useEditorStore } from "@/pages/editor/store/editorStore"; import { useTextDefaultsStore } from "@/pages/editor/store/textDefaultsStore"; +import { + getDefaultFontWeight, + getFontFamilyOptions, + getFontWeightOptions, + hasMultipleFontWeights, +} from "@/pages/editor/utils/fonts"; +import { getFontFamily } from "@/pages/editor/utils/fontFamily"; -const fontOptions = [ - { label: "ایرانسل", value: "1" }, - { label: "فونت 2", value: "2" }, -]; - -const fontWeightOptions = [ - { label: "Bold", value: "bold" }, - { label: "Normal", value: "normal" }, - { label: "Light", value: "300" }, -]; +const fontOptions = getFontFamilyOptions(); type TextFormState = { @@ -55,11 +53,45 @@ const TextInstruction: FC = () => { const [formState, setFormState] = useState(baseValues); + const fontWeightOptions = useMemo( + () => getFontWeightOptions(formState.fontFamily), + [formState.fontFamily], + ); + + const selectedFontFamily = useMemo( + () => getFontFamily(formState.fontFamily), + [formState.fontFamily], + ); + + const showWeightSelect = hasMultipleFontWeights(formState.fontFamily); + useEffect(() => { setFormState(baseValues); }, [baseValues]); const handleChange = (field: keyof TextFormState, value: string | number) => { + if (field === "fontFamily") { + const nextFontId = String(value); + const nextWeightOptions = getFontWeightOptions(nextFontId); + const nextWeight = nextWeightOptions.some((w) => w.value === formState.fontWeight) + ? formState.fontWeight + : getDefaultFontWeight(nextFontId); + + if (isEditing && selectedObject) { + const newState = { ...formState, fontFamily: nextFontId, fontWeight: nextWeight }; + setFormState(newState); + useEditorStore.getState().commitObjectHistoryBeforeChange(); + updateObject(selectedObject.id, { + fontFamily: nextFontId, + fontWeight: nextWeight, + }); + } else { + setFormState((prev) => ({ ...prev, fontFamily: nextFontId, fontWeight: nextWeight })); + updateDefaults({ fontFamily: nextFontId, fontWeight: nextWeight }); + } + return; + } + if (isEditing && selectedObject) { // اعمال تغییرات به صورت لایو const newState = { ...formState, [field]: value }; @@ -105,20 +137,24 @@ const TextInstruction: FC = () => { label="فونت" value={formState.fontFamily} onChange={(e) => handleChange("fontFamily", e.target.value)} + style={{ fontFamily: selectedFontFamily }} />
- handleChange("fontWeight", e.target.value)} + /> + )} { const numValue = parseInt(e.target.value) || 0; diff --git a/src/pages/editor/store/textDefaultsStore.ts b/src/pages/editor/store/textDefaultsStore.ts index 5a3ce4e..60059f7 100644 --- a/src/pages/editor/store/textDefaultsStore.ts +++ b/src/pages/editor/store/textDefaultsStore.ts @@ -17,8 +17,8 @@ type TextDefaultsStoreType = { export const useTextDefaultsStore = create((set) => ({ defaults: { - fontFamily: "1", - fontWeight: "bold", + fontFamily: "irancell", + fontWeight: "600", fontSize: 16, fill: "#000000", opacity: 100, diff --git a/src/pages/editor/utils/fontFamily.ts b/src/pages/editor/utils/fontFamily.ts index 1e915f2..24d75ff 100644 --- a/src/pages/editor/utils/fontFamily.ts +++ b/src/pages/editor/utils/fontFamily.ts @@ -1,9 +1,7 @@ -const FONT_FAMILY_MAP: Record = { - "1": "irancell", - "2": "irancell", -}; +import { getEditorFont } from "@/pages/editor/utils/fonts"; -/** Maps editor font option ids to CSS font-family names. */ +/** Maps editor font ids to CSS font-family names. */ export const getFontFamily = (fontFamily?: string): string => { - return FONT_FAMILY_MAP[fontFamily || "1"] || fontFamily || "irancell"; + const font = getEditorFont(fontFamily); + return font?.cssFamily ?? fontFamily ?? "editor-irancell"; }; diff --git a/src/pages/editor/utils/fonts.ts b/src/pages/editor/utils/fonts.ts new file mode 100644 index 0000000..765ca06 --- /dev/null +++ b/src/pages/editor/utils/fonts.ts @@ -0,0 +1,52 @@ +import fontsCatalog from "@/assets/fonts/irancell/fonts-editor/fonts.json"; + +export type FontWeightOption = { + value: string; + label: string; +}; + +export type EditorFont = { + id: string; + label: string; + cssFamily: string; + category: "persian" | "english"; + defaultWeight: string; + weights: FontWeightOption[]; +}; + +const LEGACY_FONT_ID_MAP: Record = { + "1": "irancell", + "2": "irancell", + byekan: "yekan", + bzarbd: "bzar", + "bkoodak-bold": "bkoodak", +}; + +const fonts = fontsCatalog.fonts as EditorFont[]; +const fontById = new Map(fonts.map((font) => [font.id, font])); + +export const EDITOR_FONTS = fonts; + +export const getEditorFont = (fontId?: string): EditorFont | undefined => { + const normalizedId = LEGACY_FONT_ID_MAP[fontId || ""] || fontId; + return fontById.get(normalizedId || "irancell") ?? fontById.get("irancell"); +}; + +export const getFontFamilyOptions = () => + fonts.map((font) => ({ + label: font.label, + value: font.id, + })); + +export const getFontWeightOptions = (fontId?: string): FontWeightOption[] => { + const font = getEditorFont(fontId); + return font?.weights ?? [{ value: "400", label: "Regular" }]; +}; + +export const getDefaultFontWeight = (fontId?: string): string => { + const font = getEditorFont(fontId); + return font?.defaultWeight ?? "400"; +}; + +export const hasMultipleFontWeights = (fontId?: string): boolean => + getFontWeightOptions(fontId).length > 1; diff --git a/src/pages/editor/utils/textStyle.ts b/src/pages/editor/utils/textStyle.ts index 1fd6db6..1bd552e 100644 --- a/src/pages/editor/utils/textStyle.ts +++ b/src/pages/editor/utils/textStyle.ts @@ -1,18 +1,14 @@ import { getFontFamily } from "@/pages/editor/utils/fontFamily"; -/** CSS font-weight values that match irancell @font-face declarations. */ +/** CSS font-weight values for canvas/Konva text rendering. */ export const getCssFontWeight = (fontWeight?: string): number => { - if (!fontWeight || fontWeight === "normal") return 300; - if (fontWeight === "bold" || fontWeight === "bolder") return 600; + if (!fontWeight || fontWeight === "normal") return 400; + if (fontWeight === "bold" || fontWeight === "bolder") return 700; const n = parseInt(fontWeight, 10); - if (!Number.isNaN(n)) { - if (n >= 600) return 600; - if (n <= 200) return 200; - return 300; - } + if (!Number.isNaN(n)) return n; - return 300; + return 400; }; /** Konva.Text uses `fontStyle: bold` (canvas keyword), not numeric weight. */