{"_id":"@alitajs/autointl","_rev":"11-a841d39765cdc090d42fd84548fa8936","name":"@alitajs/autointl","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.2":{"name":"@alitajs/autointl","version":"0.0.2","description":"auto intl","main":"./lib/index.js","bin":{"autoIntl":"./lib/index.js"},"scripts":{"test":"node ./lib/index.js test"},"keywords":["i18n","intl"],"license":"MIT","dependencies":{"randomstring":"^1.1.5"},"directories":{"lib":"lib","test":"test"},"repository":{"type":"git","url":"git+https://github.com/alitajs/autoIntl.git"},"author":"","bugs":{"url":"https://github.com/alitajs/autoIntl/issues"},"homepage":"https://github.com/alitajs/autoIntl#readme","gitHead":"ddfb70316e2bda700d022aab21a461239ef5ca89","_id":"@alitajs/autointl@0.0.2","_npmVersion":"6.4.1","_nodeVersion":"10.15.3","_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"dist":{"integrity":"sha512-hf5ZZjkopMx5nevxVCEzOpaW5XrzSsZ45WNjsLFb+85Rhz6KpTHFGeChN8NvgmJimWfwaGNUFrmmancY7aRv7g==","shasum":"fa072cda92b5c5141399be9eae1f81bfb495b53c","tarball":"https://registry.npmjs.org/@alitajs/autointl/-/autointl-0.0.2.tgz","fileCount":5,"unpackedSize":9034,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcrumjCRA9TVsSAnZWagAAHrkP/2r6OQSF6ZmUWx5ERZmz\nRRbdB+H7YS6W/D/FZcpsfkGkor9CR+w9FVxUnxkfskzofqrot6pxeCP4pJpq\nxEHeaD1w1JI9Ay0nD9TqkMz4qZtmboXb9SuR1ia5RL629YmykcoPmeOsRPJN\nX8Fyk0X44Eg06R4YE/Wn+6B/tM4cTYkp8+R9z3CGESGoxisKM4G6pwPcRK/N\nf6xqRwPhG8yV6jQMfxpcWHfC2Sg0j6IM5QkzAlkYUTOXR9Pc5Tst8sfD7HM3\nHy9DKFw7ODOT/5zT5vSf7jLwA009iphZ4/Bv6e0PCs/dYiAr8n9chFWxKg91\nO8lQy7CjvEQqQUhIpX7GJMobSZINijpH0D0Mii9q60CW8gWscPSBNlOOBxFh\nCeCi6dlDiaI0WDWG3+/5xv5dZXqRL9IeW/1vsgv18y1erHabBq7shAEFpZxE\nkiBg3S3ASNULJlcicBEjFvm5Zaa8hfA28dv/xzHIWewNwm0q81o8en/0xIXB\n8zd6iJInmfmb+TWukobqQVQCOpVyCgaL2aj66SCsBW6CF6QPrZ+l+T8Z5bkw\nQ/QnPKdIOd0+mxmqgIuznUjyuQx2YQivozYw2xJCpbRYUQWdAg2OWTGXs0JY\njdUNiI2mLVwCkQJmLjpmfL79Dt/FECnyYTrAua3rMmRh1L6xolTFauSOCUyY\n2HlI\r\n=FitJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIANAZwafHcYSX5EA/eKggN/IEx7hQea+Z1gJr+Pio888AiAz1vNFmQy3cX3jruwdjuoV4f6zXo1qpm79hhyw5q6k2w=="}]},"maintainers":[{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/autointl_0.0.2_1554966946535_0.8477504172422354"},"_hasShrinkwrap":false}},"time":{"created":"2019-04-11T07:15:46.340Z","0.0.2":"2019-04-11T07:15:46.791Z","modified":"2022-06-07T09:42:21.267Z"},"maintainers":[{"email":"pt370390794@126.com","name":"pengyh"},{"email":"savebtc11@gmail.com","name":"ashoka_j"},{"email":"13067111941x@gmail.com","name":"diyc"},{"email":"448627663@qq.com","name":"xiaohuoni"},{"email":"work@imhele.com","name":"imhele"},{"email":"156148958@qq.com","name":"wangxingkang"},{"email":"292973338@qq.com","name":"shawdanon"},{"email":"fanluan058@gmail.com","name":"cjy0208"},{"email":"sorrycc@gmail.com","name":"sorrycc"},{"email":"437132124@qq.com","name":"hang1017"},{"email":"1270253618@qq.com","name":"hammersjs"}],"description":"auto intl","homepage":"https://github.com/alitajs/autoIntl#readme","keywords":["i18n","intl"],"repository":{"type":"git","url":"git+https://github.com/alitajs/autoIntl.git"},"bugs":{"url":"https://github.com/alitajs/autoIntl/issues"},"license":"MIT","readme":"# autoIntl\n\n一键提取项目中的中文，自动引入 `react-intl-universal` 。\n特别适用于一开始项目没有国际化要求，快上线的时候，说要国际化的情景。\n注意不要中英文标点混用，可能会导致程序卡死，请使用`Ctrl+C`退出。\n使用英文标点，会使你的中文被切割成很小的片段。\n## 使用方法\n\n```sh\n$ npm i autoIntl -g\n```\n\n自动提取 src 目录下的所有的 `js|jsx` 文件\n\n```sh\nautoIntl src/\n```\n\n会在根目录下生成 i18n.js\n\n```js\nconst langZh = {\n  test_i18n_Y823: '姓名？',\n  test_i18n_3MK2: '年，龄。',\n  test_i18n_lP1N: '编（号）',\n  test_i18n_NUbK: '哈哈哈！',\n};\nexport default langZh;\n```\n\n例如：\ntest/index.js\n\n```js\nconst cardNum = 123;\nconst ss = [\n  {\n    title: '姓名？',\n  },\n  {\n    age: '年，龄。',\n  },\n  {\n    id: '编（号）',\n  },\n  {\n    job: '哈哈哈！',\n  },\n  {\n    card: `银行卡号是${cardNum}，余额20万`,\n  },\n  {\n    more: `更多信息是${cardNum}，余额20万`,\n  },\n];\n```\n\n运行\n\n```sh\nautoIntl test\n\n ✅ 国际化文件替换成功\n\n ✅ 国际化词条整理成功\n✨  Done in 0.22s.\n```\n\ntest/index.js\n\n```js\nimport intl from 'react-intl-universal';\nconst cardNum = 123;\nconst ss = [\n  {\n    title: intl.get('test_i18n_k4ff'),\n  },\n  {\n    age: intl.get('test_i18n_rXqn'),\n  },\n  {\n    id: intl.get('test_i18n_LINE'),\n  },\n  {\n    job: intl.get('test_i18n_ypGq'),\n  },\n  {\n    card: `${intl.get('test_i18n_XiiD')}${cardNum}${intl.get('test_i18n_X5BP')}20${intl.get(\n      'test_i18n_soPx'\n    )}`,\n  },\n  {\n    more: `${intl.get('test_i18n_8zH3')}${cardNum}${intl.get('test_i18n_X5BP')}20${intl.get(\n      'test_i18n_soPx'\n    )}`,\n  },\n];\n```\n\n生成 i18n.js\n\n```js\nconst langZh = {\n  test_i18n_k4ff: '姓名？',\n  test_i18n_rXqn: '年，龄。',\n  test_i18n_LINE: '编（号）',\n  test_i18n_ypGq: '哈哈哈！',\n  test_i18n_XiiD: '银行卡号是',\n  test_i18n_X5BP: '，余额',\n  test_i18n_soPx: '万',\n  test_i18n_8zH3: '更多信息是',\n};\nexport default langZh;\n```\n\n可以直接通过LocaleProvider,在项目中使用\n```js\nimport { LocaleProvider } from 'antd';\nimport zhCN from 'antd/lib/locale-provider/zh_CN';\nimport intl from 'react-intl-universal';\n\nimport langZh from './i18n';\n// locale data\nconst locales = {\n  'zh-CN': zhlang,\n};\nconst compents = {\n  'zh-CN': zhCN,\n};\n\nconst getLocale = () => {\n  // 服务器应返回当前请求ip所在区域，并设置在cookie里\n  // 优先获取用户选择的语言\n  let locale = getCookie('userLocale');\n  if (!locale) {\n    // 如果用户没有选择语言，获取服务器返回的区域语言\n    locale = getCookie('areaLocale');\n  }\n  if (!locales[locale]) {\n    // 不存在cookie 或者 不支持当前语言\n    locale = 'zh-CN';\n  }\n  window.locale = locale;\n  return locale;\n};\nReactDOM.render(\n  <LocaleProvider locale={compents[getLocale()]}>\n    <Provider store={store}>\n      <CApp />\n    </Provider>\n  </LocaleProvider>,\n  document.getElementById('root')\n);\n```","readmeFilename":"README.md"}