{"_id":"@arcpkg/native-mda-svgicons","name":"@arcpkg/native-mda-svgicons","dist-tags":{"beta":"0.0.1-beta.0.1","latest":"0.0.1-beta.0.1"},"versions":{"0.0.1-beta.0.1":{"name":"@arcpkg/native-mda-svgicons","publishConfig":{"access":"public"},"version":"0.0.1-beta.0.1","description":"NATIVE MDA-SVGICONS fournit les icônes MDA sous forme de composants react-native-svg (variantes solid et outline), avec import par sous-chemin et une taille (size) pouvant être responsive.","main":"index.ts","types":"index.ts","keywords":["icons","svg","react-native","expo","responsive","mda","tree-shaking"],"author":{"name":"INICODE","email":"contact.inicode@gmail.com"},"license":"MIT","scripts":{"init":"npm init --scope=@arcpkg/native-mda-svgicons","build":"node ../mda-icons/build-svgicons.mjs","login":"npm login"},"devDependencies":{},"dependencies":{"react":"^19.1.0","react-native":"^0.81.0","react-native-svg":"^15.12.1"},"_id":"@arcpkg/native-mda-svgicons@0.0.1-beta.0.1","_nodeVersion":"22.18.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-8cfTao54ZkNrY69JxJrMGV1rBW/FjjS1lPf5ZjhZlNDD8ruLo466Fczv45w3akwjeKIH+wXwlUuaIFmoqgkERQ==","shasum":"ecf11921b0b2ecc2a6754792768db5db53d9e59f","tarball":"https://registry.npmjs.org/@arcpkg/native-mda-svgicons/-/native-mda-svgicons-0.0.1-beta.0.1.tgz","fileCount":5185,"unpackedSize":3747071,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHSzbx2LfEVIg1EDVg+rLnWCJOfw2DZ/Bv021Uos/33sAiBHTplBnPQGw5QKjbpnipyMOAGctXd8DP+VRZyhsMbB1g=="}]},"_npmUser":{"name":"inicode12","email":"contact.inicode@gmail.com"},"directories":{},"maintainers":[{"name":"inicode12","email":"contact.inicode@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/native-mda-svgicons_0.0.1-beta.0.1_1789053587058_0.14682997456391256"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-10T15:19:46.848Z","0.0.1-beta.0.1":"2026-09-10T15:19:47.264Z","modified":"2026-09-10T15:19:47.600Z"},"maintainers":[{"name":"inicode12","email":"contact.inicode@gmail.com"}],"description":"NATIVE MDA-SVGICONS fournit les icônes MDA sous forme de composants react-native-svg (variantes solid et outline), avec import par sous-chemin et une taille (size) pouvant être responsive.","keywords":["icons","svg","react-native","expo","responsive","mda","tree-shaking"],"author":{"name":"INICODE","email":"contact.inicode@gmail.com"},"license":"MIT","readme":"# @arcpkg/native-mda-svgicons\n\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n![TypeScript](https://img.shields.io/badge/TypeScript-5.0+-007ACC)\n![React Native](https://img.shields.io/badge/React%20Native-0.7+-61DAFB)\n![Expo](https://img.shields.io/badge/Expo-compatible-000020)\n\n**@arcpkg/native-mda-svgicons** est un jeu d'icônes SVG **React Native** (`react-native-svg`)\noptimisé et tree-shakeable, généré depuis `mda-icons/icons.json`. Jumeau natif de\n`mda-svgicons` — mêmes données, mêmes noms. Publié selon la convention des plugins\n`@arcpkg/*` : source TypeScript à la racine (`main: index.ts`) + miroir compilé `js/`.\n\n## 📦 Installation\n\n### Via npm/yarn/pnpm\n\n```bash\nnpm install @arcpkg/native-mda-svgicons react react-native react-native-svg\n# ou\nyarn add @arcpkg/native-mda-svgicons react react-native react-native-svg\n# ou\npnpm add @arcpkg/native-mda-svgicons react react-native react-native-svg\n```\n\n### Projet Expo\n\n```bash\nnpm install @arcpkg/native-mda-svgicons\nnpx expo install react-native-svg\n```\n\n### Dépendances requises\n- React 18+\n- React Native 0.7+ (Expo 50+ compatible)\n- react-native-svg 13+ (déjà présent dans `native-arcjs-app`)\n- TypeScript 5.0+ (recommandé)\n\n## 🚀 Démarrage rapide\n\n```tsx\nimport { SvgIcon, IconStyle } from '@arcpkg/native-mda-svgicons';\nimport home from '@arcpkg/native-mda-svgicons/icons/home';   // importer seulement l'utile\n\nexport function Demo() {\n  return (\n    <>\n      <SvgIcon icon={home} size={13} color=\"#1976d2\" />\n      <SvgIcon icon={home} variant=\"outline\" />\n\n      {/* Hérite couleur + taille du contexte (≈ currentColor + font-size) */}\n      <IconStyle color=\"#1976d2\" size={28}>\n        <SvgIcon icon={home} />\n      </IconStyle>\n    </>\n  );\n}\n```\n\n### Par nom (tire le registre complet)\n\nMetro n'a pas d'`import.meta.glob`, donc ceci embarque toutes les icônes —\nréservé aux sélecteurs / icônes data-driven :\n\n```tsx\nimport { DynamicIcon } from '@arcpkg/native-mda-svgicons/dynamic';\n\n<DynamicIcon name=\"home\" />\n<DynamicIcon name=\"st-home\" />     {/* préfixe st- → variant outline */}\n\nimport { getIcon } from '@arcpkg/native-mda-svgicons/all';\nimport { ICON_NAMES } from '@arcpkg/native-mda-svgicons/names';\n```\n\n### Props de `SvgIcon`\n\n| Prop | Type | Défaut | Description |\n|------|------|--------|-------------|\n| `icon` | `IconData` | — | Données importées (`import home from '@arcpkg/native-mda-svgicons/icons/home'`) |\n| `size` | `number` | hérité `IconStyle` (15) | Hauteur visuelle (largeur au ratio du glyphe) |\n| `color` | `string` | hérité `IconStyle` | Couleur de remplissage / trait |\n| `variant` | `'solid' \\| 'outline'` | `'solid'` | Plein ou contour (reproduit les jumelles `st-*`) |\n| `strokeWidth` | `number` | `32` | Épaisseur du trait en unités viewBox (outline) |\n\n## ✨ Pourquoi c'est optimisé\n\n- **Un module de données par icône** (`icons/<name>.ts`) : sous Metro (sans\n  tree-shaking), importer un glyphe directement est le seul moyen d'éviter\n  d'embarquer les 2583.\n- **Solid + outline = une seule entrée** : la jumelle contour (`st-*`) est\n  reproduite au rendu via `variant` (`fill:none; stroke; stroke-width:32; round`).\n- **Contexte `IconStyle`** remplaçant `currentColor` + `font-size` : couleur et\n  taille héritent du plus proche `<IconStyle>`.\n\n## 🛠️ (Re)génération\n\n```bash\nnpm run build     # node ../mda-icons/build-svgicons.mjs (écrit les deux packages)\n```\n\n## 📁 Structure (plugin npm)\n\n```\n@arcpkg/native-mda-svgicons/\n  package.json        # main: index.ts, publishConfig.access: public, MIT\n  index.ts            # API publique (SvgIcon, IconStyle, types, noms)\n  SvgIcon.tsx  DynamicIcon.tsx  dynamic.ts  types.ts\n  names.ts  all.ts    # générés\n  icons/<name>.ts     # 2583 modules de données générés\n  js/                 # miroir compilé (esbuild)\n  README.md  tsconfig.json\n```\n\n## 📄 Licence\n\nMIT © INICODE\n","readmeFilename":"README.md","_rev":"1-3cbb6f513d3b8d4b5561d8a9ef4ebbc2"}